Это когда:
Но, сути это да, не меняет. Хотя, это урок форумодельцам, что не надо ссылки на аттачи закрывать логином, надо сеять доброе, вечное, хотя бы занедолго до смерти форума.Время ожидания ответа от сервера www.vcfed.org истекло.
Это когда:
Но, сути это да, не меняет. Хотя, это урок форумодельцам, что не надо ссылки на аттачи закрывать логином, надо сеять доброе, вечное, хотя бы занедолго до смерти форума.Время ожидания ответа от сервера www.vcfed.org истекло.
"Во времена всеобщей лжи говорить правду - это экстремизм" - афоризм.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Я делал вот такой контроллер
https://github.com/cr1901/AT2XT
Работает идеально.
Вот про него тема на VCFED
http://www.vcfed.org/forum/showthrea...ighlight=AT2XT
- - - Добавлено - - -
А вообще уже не раз обсуждалось это тут
Поиск рулит
Вот:
https://zx-pk.ru/threads/26636-poisk...l=1#post874588
С Уважением, Андрей!
creator(21.07.2020)
Зверинецъ
Специалист (был когда-то "совсем стандарт") - 1988-2023
Ленинград1 +256К +AY+BDI+VGA выход +Ethernet (Speccyboot) +Xmodem (115200)+divmmc
Ленинград2 + CF карта
Платформа 8085+Z80+CPLD (Специалист МХ2 +SD +FDD +PS/2kbd)
БК0010-01 стоковый[свернуть]
Я не компилировал. Взял готовые HEX файлы.
С Уважением, Андрей!
Вроде ничего не пропустил: https://www.dropbox.com/s/5geyt7cv6v...ATKEY.zip?dl=0
Теоретически излечимо, полной подменой карты памяти на время nmi
(а в демках клавиши можно и не трогать))
Последний раз редактировалось UncleDim; 17.10.2023 в 19:17.
Profi v3.2 512K+color; Profi 6.2B; МС-0511
Тут возникает проблема детекта момента, когда Z80 прореагировал на NMI и начал выполнять обработчик. Проблема не так проста, как кажется.
Если подменять просто по низкому уровню сигнала NMI - то текущая исполняющаяся команда будет писать/читать не ту память.
Выходит надо дожидаться окончания этой команды, и только потом подменять. Но как это понять?
(стёр)
надо однозначно выделить подтверждение nmi (выглядит как чтение из памяти), т.е. по идее достаточно будет простробировать nmi например чтением порта (любого) - юзер со своими нажатиями вряд ли заметит какую-либо задержку -тогда, после появления nmi, первая же запись в память после чтения из памяти должна будет отправляться уже в новую раскладку памяти (если не путаю, нигде в командах после iord не наступает memrd).
Последний раз редактировалось UncleDim; 19.10.2023 в 15:36. Причина: Поторопился)
Profi v3.2 512K+color; Profi 6.2B; МС-0511
Иными словами - когда нужно сделать NMI:
1. ждём IORQ=0 (при M1=1, чтобы не спутать чтение порта с подтверждением INT)
2. Выставляем NMI=0 на 1 такт
3. Ждём MREQ=0 - как дождались - подменяем память на запись
В целом должно сработать, кажется.
Не подойдет для приложений, где нет чтения из портов, но в случае с клавиатурой это не проблема
3. Mreq+Rd
(1. M1 можно и игнорить, не помешает)
Profi v3.2 512K+color; Profi 6.2B; МС-0511
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)