![](http://www.nedopc.org/nedopc/image/nedobanner3.gif) |
nedoPC.orgElectronics hobbyists community established in 2002 |
![](http://www.nedopc.org/nedopc/image/nedobanner4.gif) |
|
Page 1 of 1
|
[ 11 posts ] |
|
Author |
Message |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Во многих описаниях ранних IBM PС упоминается порт кассетного
магнитофона и даже есть примеры программирования...
Канешна - это атавизм, но вопрос вот в чем - какая схемотехника
этого порта ?
И книжки я читал... и гуглил и яндексил... но ответа не нашел,
может кто знает ?
|
17 May 2010 00:28 |
|
![](./styles/getaway/theme/images/spacer.gif) |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22599 Location: Silicon Valley
|
А это не про провальный IBM PCjr?
P.S. На советском клоне IBM PC под названием "Поиск" помнится тоже был магнитофонный вход - мы через него грузили CGA-шные Popcorn (арканоид) и Tapper (там где пиво надо по столам кидать)...
|
17 May 2010 06:52 |
|
![](./styles/getaway/theme/images/spacer.gif) |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
В IBM PCjr он тоже был...
И я сильно подозреваю, что в схемотехнике ,,Ириши,, это аппаратное решение использовано.
Но точно не знаю... мож Кроакер знает...
Лично меня этот вопрос давно и принципиально мучает - как заноза...
Почему я не знаю схемотехнику этого порта... хоть догадки и имеются.
|
17 May 2010 08:56 |
|
![](./styles/getaway/theme/images/spacer.gif) |
d_wanderer
Senior
Joined: 28 Feb 2006 21:34 Posts: 180
|
![Reply with quote Reply with quote](./styles/getaway/imageset/en/icon_post_quote.gif)
Магнитофонный порт был у первых IBM PC.
Цитирую
![](images/spacer.gif) | ![](images/spacer.gif) | ![](images/spacer.gif) | ![](images/spacer.gif) | Code: Другой порт ввода микросхемы 8255, порт 62H, обслуживает другие входы. Четыре его бита непосредственно соответствуют переключателям, показывающим объем памяти, подсоединенной к системному каналу ввода-вывода. Другие четыре бита имеют индивидуальное назначение. Два из них показывают тип системной ошибки. Программа обслуживания немаскируемого прерывания NMI использует эти биты для определения причины системной аварии. Бит 5 порта 62H используется для обратной связи с одним из каналов таймера-счетчика. Этот бит служит индикатором текущего выхода второго канала микросхемы 8253. Бит 4 порта 62H отражает текущее состояние ввода с кассетного магнитофона. Сзади у IBM PC, рядом с разъемом для подключения клавиатуры, имеется разъем для подключения кассетного магнитофона. При чтении данных с кассеты, этот бит используется для определения текущего значения, вводимого с кассеты.
Порт 61H - это порт вывода микросхемы 8255 в машине фирмы IBM. Всякий выходной порт захватывает (временно запоминает) данные, выводимые программой. Если бы аппаратура не запоминала данные, они бы пропали в течение микросекунды или около этого. Такое запоминание данных позволяет сохранять их значение в порте до тех пор, пока они снова не будут изменены программой. То есть, когда мы выводим значение, меняющее положение диффузора динамика, оно остается неизменными до тех пор, пока его не изменит программа.
На Фиг.8.2 показано значение битов порта 61H. Эти данные взяты из из технического описания.
При изучении управления динамиком имеют значение только биты 0 и 1. Из всех других - только бит 3 - управление двигателем кассетного магнитофона - и бит 7 - сброс ввода с клавиатуры - имеют какое-то значение для наших программ. Остальные биты предназначены только для инициализации и диагностики. Чтобы полностью разобраться в них, нужно детально изучить принципиальные схемы системы.
Возвращаясь к обсуждению управления динамиком, мы можем заметить, что биты 0 и 1 используются для непосредственного управления. Как показано на Фиг. 8.1, установка бита 0 в положение 0 включает прямое управление динамиком, блокируя механизм генерации звука микросхемой 8253. Этот метод используется во второй части програмы. Бит Значение 0 Порт 2 таймера (упраление динамиком) 1 Прямое управление динамиком 2 Мультиплексный порт 62H 3 Управление мотором кассетного магнитофона 4 Включение контроля доступа на системной плате памяти 5 Включение контроля доступа в памяти каналов ввода-вывода 6 Временной контроль клавиатуры 7 Мультиплексный/сброса ввода с клавиатуры порт 60H
| ![](images/spacer.gif) | ![](images/spacer.gif) | ![](images/spacer.gif) | ![](images/spacer.gif) |
Можно посмотреть вот здесь - http://www.retroarchive.org/dos/docs/ibm_techref_v202_1.pdf
|
17 May 2010 10:04 |
|
![](./styles/getaway/theme/images/spacer.gif) |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Вот, вот...
Вот про это я и говорю... и много где это написано, начиная, скажем,
с Джордейна или ,,Библии по IBM...,, и Марголиса - ,,Ремонт ЭВМ...,,
а схему кто-нибуть где-нибуть видел ?
|
19 May 2010 01:09 |
|
![](./styles/getaway/theme/images/spacer.gif) |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
![Reply with quote Reply with quote](./styles/getaway/imageset/en/icon_post_quote.gif)
Я тут злобно даже по-Альтавистил и нашел вот что.
http://www.uncreativelabs.net/hwinfo/5150.htm
Описалово на IBM PC cassette adapter, правда, только словесное:
![](images/spacer.gif) | ![](images/spacer.gif) | ![](images/spacer.gif) | ![](images/spacer.gif) | Code: I don't know if IBM ever sold a cassette recorder for the PC, but the=20 port certainly existed. I believe the original idea was for the owner to = pop down to a Radio Shack store and buy a cas-sette recorder (more = details=20 below).
I've got a PC techref here...
OK, this what the port consists of :=20 Most of the work was done in software. I don't know if IBM ever sold a cassette recorder for the PC, but the=20 port certainly existed. I believe the original idea was for the owner to = pop down to a Radio Shack store and buy a cas-sette recorder (more = details=20 below).
I've got a PC techref here...
OK, this what the port consists of :=20. Most of the work was done in software.
Write : The output of the 8253 channel 2 (the one used for the speaker = as=20 well) was in-verted and put on a voltage divider. The output of said = voltage=20 divider went to the micro-phone or aux input of the cassette recorder.
Read. The earphone output of the cassette recorder went to an 741-based=20 amplifier. The output of that was clipped to TTL levels and went to port =
PC4 on the 8255. You read it at bit 4 of port 0x62.
Bit PB3 of the 8255 (port 0x61, bit 3) is bufferd and used to drive a=20 relay coil. _Clearing_ this bit turns the relay on. The relay contacts=20 control the cassette motor. In typical IBM self-diagnostic style, = another=20 set of contacts on the relay disconnects the input of the read amplifier = from the cassette earphone socket and connects it to the output votlage=20 divder, allowing the system to check the read amplifer, when the = cassette=20 motor is turned off.
You use the cassette via BIOS interrupt 0x15.
AH=3D0 turns on the cassette motor.=20
AH=3D1 turns it off.=20
AH=3D2 reads a tape block. Number of bytes to read is passed in CX, = start=20 address of the buffer to read them into in ES:BX. It returns with the=20 actual number of bytes read in DX, carry set if error occured, status in =
AH, ES:BX =3D last byte trasnfered + 1.=20 The status is given by AH=3D1 for CRC error, AH=3D2 for lost data, = AH=3D4 if no=20 data found.
AH=3D3 writes a tape clock of CX bytes starting from ES:BX. On exit, = CX=3D0,=20 ES:BX =3D last byte transfered + 1
AH=3D anything else returns AH=3D0x80 - illegal command.
I can provide the format of the data on the tape if you want it.
The port was useable from BASIC. There were commands MOTOR ON and MOTOR=20 OFF to operate the relay and SAVE and LOAD to transfer programs in ROM=20 BASIC. I can't re-member how you used the cassette from disk BASIC.
One other interesting thing is the pinout of the cassette port = (numbering=20 the pins conven-tionally ) :=20
1 Motor Control 2 Ground 3 Motor Control 4 Data In (to PC) 5 DAta Out (from PC)=20
That's _exactly_ the same as the pinout of a TRS-80 cassette port. I'm=20 pretty sure the origi-nal intention was to use a Radio Shack cable. Write : The output of the 8253 channel 2 (the one used for the speaker =
as=20 well) was inverted and put on a voltage divider. The output of said =
voltage=20 divider went to the microphone or aux input of the cassette recorder.
Read. The earphone output of the cassette recorder went to an 741-based=20 amplifier. The output of that was clipped to TTL levels and went to port =
PC4 on the 8255. You read it at bit 4 of port 0x62.
Bit PB3 of the 8255 (port 0x61, bit 3) is bufferd and used to drive a=20 relay coil. _Clearing_ this bit turns the relay on. The relay contacts=20 control the cassette motor. In typical IBM self-diagnostic style, =
another=20 set of contacts on the relay disconnects the input of the read amplifier =
from the cassette earphone socket and connects it to the output votlage=20 divder, allowing the system to check the read amplifer, when the = cassette=20 motor is turned off.
You use the cassette via BIOS interrupt 0x15.
AH=3D0 turns on the cassette motor.=20
AH=3D1 turns it off.=20
AH=3D2 reads a tape block. Number of bytes to read is passed in CX, = start=20 address of the buffer to read them into in ES:BX. It returns with the=20 actual number of bytes read in DX, carry set if error occured, status in =
AH, ES:BX =3D last byte trasnfered + 1.=20 The status is given by AH=3D1 for CRC error, AH=3D2 for lost data, = AH=3D4 if no=20 data found.
AH=3D3 writes a tape clock of CX bytes starting from ES:BX. On exit, = CX=3D0,=20 ES:BX =3D last byte transfered + 1 AH=3D anything else returns AH=3D0x80 - illegal command.
I can provide the format of the data on the tape if you want it.
The port was useable from BASIC. There were commands MOTOR ON and MOTOR=20 OFF to operate the relay and SAVE and LOAD to transfer programs in ROM=20 BASIC. I can't re-member how you used the cassette from disk BASIC.
One other interesting thing is the pinout of the cassette port = (numbering=20 the pins conven-tionally ) :=20 1 Motor Control 2 Ground 3 Motor Control 4 Data In (to PC) 5 DAta Out (from PC)=20 That's _exactly_ the same as the pinout of a TRS-80 cassette port. I'm=20 pretty sure the origi-nal intention was to use a Radio Shack cable.
> port accessed ? Does anyone know what " hacks" were done or = possible on > this I/O ?
The most trivial hack was to use the motor relay to switch some other=20 low-voltage device - like a small lamp. I've done that.
| ![](images/spacer.gif) | ![](images/spacer.gif) | ![](images/spacer.gif) | ![](images/spacer.gif) |
За правду не ручаюсь, поскольку её сам не знаю... - всё AS IS...
P.S. ...хотя на Блок-Диаграмму кассетного порта (стр. 28 : http://www.retroarchive.org/dos/docs/ibm_techref_v202_1.pdf)
описание очень даже походит...
|
20 May 2010 02:32 |
|
![](./styles/getaway/theme/images/spacer.gif) |
d_wanderer
Senior
Joined: 28 Feb 2006 21:34 Posts: 180
|
Там вроде в этой части принципиальная схема была... И фото материнской платы, на которой рядом с разъемом клавиатуры разъем магнитофонного порта... посмотри по этому же пути файлы ibm_techref_v202_2.pdf и ibm_techref_v202_3.pdf
|
20 May 2010 06:14 |
|
![](./styles/getaway/theme/images/spacer.gif) |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
![Reply with quote Reply with quote](./styles/getaway/imageset/en/icon_post_quote.gif)
Сегодня мне пришло письмо, что я подписан на обновления этого топика, и тут появилась новая информация... Я был очень удивлен, поскольку считал для себя этот вопрос закрытым... но рекламный бот напомнил мне, что и другие люди могут интересоваться этой информацией и не находить ответа, как и я сам на старте топика... Ну и раз уж на нас даже ссылаются, то восполню этот пробел в схемотехнике кассетного порта IBM: Вот так он располагался с тылу IBM РС: Это схемотехника входной цепи: А дальше я перерисовывать заленился и оставил схемы как есть... Видимо, поэтому я их сюда раньше и не выложил, но всё просто:Это схемотехника вЫходной цепи: Схемотехника управления мотором кассетного магнитофона: ![Image](http://sgu-wap.narod.ru/DIFF/Casset/Cassette_port2.jpg) А вот в "Ирише", судя по всему, интерфейс несколько отличался: ![Image](http://sgu-wap.narod.ru/DIFF/Casset/Cassette_port3.jpg) Схемы эти вряд ли имеют сейчас какое-либо практическое значение, кроме удовлетворения собственного схемотехнического любопытства. Но вот восстановить кассетные функции INT15 и заставить их работать через LPT постарались коллеги с ПОЛИГОНа ПРИЗРАКОВ, которые наши материалы тоже приняли к сведению: СТАРОЕ ЖЕЛЕЗО. IBM PC » Кассетный интерфейс
_________________ iLavr
|
03 Oct 2015 03:33 |
|
![](./styles/getaway/theme/images/spacer.gif) |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22599 Location: Silicon Valley
|
|
05 Dec 2020 02:48 |
|
![](./styles/getaway/theme/images/spacer.gif) |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Про загрузку программ с грамафонной пластинки мы тут тоже давненько обсуждали: http://www.nedopc.org/forum/viewtopic.php?f=82&t=9832&start=15![Image](http://www.nedopc.org/nedopc/upload/FloppyRom_Magazine.jpg) Правда, тогда еще не загружали с них ОС DOS... но "новое" - это всегда хорошо забытое старое... ![:wink:](./images/smilies/icon_wink.gif)
_________________ iLavr
|
05 Dec 2020 06:01 |
|
![](./styles/getaway/theme/images/spacer.gif) |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
![Reply with quote Reply with quote](./styles/getaway/imageset/en/icon_post_quote.gif)
Еще один интерфейс, который является ныне анахронизмом и атавизмом - световое перо. Как-то его ностальгично упомянули вот в этом топике, и я вспомнил, что со световым пером в приложении к EGA-видео-карте я в своё время справиться не смог... ![:(](./images/smilies/icon_frown.gif) Я подумал, что много лет спустя все уже точно знают, как оно подключалось к видеокарте, но, оказалось, судя по поиску, это совсем не так! Более того, на некоторых форумах врут по сей день, " как очевидцы"... Схема светового пера может иметь массу вариантов исполнения, но привожу рекомендованную для сопряжения с IBM РС: А вот дальше начинается самое забавное - куда подключать световое перо, и много где дезинформируют: Это полная неправда, световое перо подключают к 6-контактному коннектору, выделенному красным. И распиновка его следующая: И я, кстати, не разобрался тогда что же такое " Строб светового пера". Подробно о взаимодействии с этим анахронизмом можно прочесть вот в этой книге: ![Image](http://www.nedopc.org/forum/download/file.php?id=9136) Ссылка есть в нашей библиотеке, и судя по поиску, книгу вполне можно найти. Тёплый ламповый Basic там кошерно управляется со световым пером... На всякий случай: СОВРЕМЕННЫЕ ДИСПЛЕИ С ЭТИМ ПЕРОМ НЕ РАБОТАЮТ! ТОЛЬКО ЭЛТ! Но зато со световым пером может работать любой видеоконтроллер на основе БИС 6845. И CGA мог... только я об этом тогда не знал! Ну и зачем я засунул световое перо в " Кассетный порт IBM"? А потому как многие ходят посмотреть его сюда и ссылаются на нас... Пусть два анахронизма будут вместе! ![8)](./images/smilies/icon_cool.gif)
_________________ iLavr
|
15 Mar 2021 14:32 |
|
|
|
Page 1 of 1
|
[ 11 posts ] |
|
Who is online |
Users browsing this forum: No registered users and 27 guests |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|