PDA

Просмотр полной версии : Помогите схемой чтения порта 7FFD



John North
06.12.2015, 19:54
сабж.
когда то собирал такую. помню на мс ТМ9.
а щас не могу найти(
поделитесь плиз.

Gutten
06.12.2015, 20:27
Под рукой нет, но это не та, что из Скорпиона зелёного через AY?
Если нет, то по какому стандарту и где используется?

Djoni
06.12.2015, 20:32
Тут http://zxpress.ru/article.php?id=3753

solegstar
06.12.2015, 20:41
Тут http://zxpress.ru/article.php?id=3753
спс, надо будет чуть доделать прошиву профи, чтобы доступно было только в досе. тест 4.30 конечно показывает чтение порта, но наверное это не совсем верно. доделаю. хотя, на самом деле, удобно было проверять прошивку в бейсике 48...

Djoni
06.12.2015, 20:49
Была помню доработка для включения расширенной памяти в TR-DOS для работы рам диска.
https://yadi.sk/d/2vPjvXkpm3CzW

Barmaley_m
09.01.2016, 20:14
Порт 7FFD обычно реализуется на регистре типа ТМ9 (6 бит), иногда - ИР22/23/27/33 (8 бит - для Пентагон-512 и т.д.). В этом регистре запоминается информация, которая была записана в порт. Своими входами регистр подключен к шине данных, а выходы используются в схеме расширения.

Так вот, обмен информацией между процессором и портами осуществляется через шину данных. Данные с шины попадают в регистр - произошла запись. Чтобы считать данные из регистра - надо их подать обратно на шину данных в тот момент, когда процессор выполняет команду IN 7FFD. В остальное время на шину данных ничего подавать нельзя - она используется для обмена информацией с памятью и другими портами.

Соответственно, для подачи информации на шину данных необходим буфер с тремя состояниями на выходе. Подойдут микросхемы типа 555АП5, 555АП6, 155ЛП11 и даже 555ИР22 - тысячи их. Буфера обычно имеют входы - на них необходимо подать сигналы с регистра 7FFD. Выходы буфера подключаются к шине данных. Еще у буфера есть вход разрешения - на него необходимо подать сигнал, разрешающий включение выходов тогда и только тогда, когда процессор исполняет команду IN 7FFD. В этот момент на сигналах /IORQ, /RD, A1, A15 присутствует лог. 0, на линии /M1 и прочих линиях адреса - лог. 1. Так что нужна логическая схема, выход которой равен лог. 0 (обычно активный уровень сигнала разрешения буфера - 0), когда /IORQ, /RD, A1, A15=0, /M1=1, A14..A2, A0=1. Обычно линии адреса A12..A2, A0 не используются для выборки порта 7FFD, поэтому их можно не включать в схему, тем самым достигается ее упрощение. Вот и всё!

- - - Добавлено - - -

Удобно совместить логическую схему для чтения 7FFD с логической схемой для записи в 7FFD и формирования сигналов BDIR, BC1 для AY. Привожу фрагмент схемы с портом 7FFD и формированием управляющих сигналов.