https://zx-pk.ru/threads/15587-progr...l=1#post441175
Вид для печати
Уважаемые Гуру УКНЦ, подскажите - как ЦП работает с регистрами терминала 177560 в режиме "пульт" - через команды спецрежима ВМ2 - для доступа к основному массиву памяти ( из пульта ), или в АП 160000-177777 режима "пульт" есть аппаратные окна для регистров терминала 177560 ?
через спецкоманды режима halt с кодами 21 31 так как в halt моде страница ввода-вывода в адресном пространстве отсутствует, только в усер.
в халт в том месте где обычно страница ввода вывода только пультовое озу с кодами
смотреть тут
http://www.emuverse.ru/wiki/%D0%A3%D...BD%D0%B8%D0%B5
http://www.emuverse.ru/wiki/%D0%A3%D...6_ROM_disasm_6
Пример кода
Код:; Подпрограмма ввода символа с ожиданием (для ЦП). Адрес в СОЗУ ЦП - 172614.
173360$:MOV #177560,R5 ; R5 = адрес регистра сост. К0 (клавиатура)
$MFPM$ ; Чтение регистра состояния
TSTB R0 ; Есть символ для чтения ?
BPL 173360$ ; Нет
$MFPM$ ; Чтение символа
RETURN
; Подпрограмма вывода символа на экран (для ЦП). Адрес в СОЗУ ЦП - 172632.
173376$:MOV R0,-(SP) ; Сохранить код символа в стеке
173400$:MOV #177564,R5 ; R5 = адрес регистра сост. К0 (терминал)
$MFPM$ ; Чтение регистра состояния
TSTB R0 ; Можно посылать данные ?
BPL 173400$ ; Нет
MOV (SP)+,R0 ; R0 = код символа
MOV #177566+2,R5 ; R5 = адрес рег. данных (терминал) + 2
$MTPM$ ; Посылка кода символа по К0
RETURN
I вариант - это когда кремлевские военные аналитики посмотрели на БК0010 ( 1985 г. ), и сказали - "или как в ДВК, или пошлем в Лес ".
Причем дали сроку 1 год. ( Разработчик БК0010 и УКНЦ - один и тот же человек ).
В конце 1986 г. была готова редакция УКНЦ - с 097 КНГМД, с ранними ПЗУ - вот она и выпускалась ~2 года.
Как работала в КУВТах - цензурных слов нет.
По непроверенным слухам, стуканули самому Пятнистому - "Зеленоград гонит массовый брак в школы". Он распорядился "навести порядок".
Порядок был наведен - II вариант почти не вис ( проверял лично 1 час 1990 г.в. - на замену в ДВК в ЧПУ ).
*
Как-то в 1988 г. привезли 2 шт. УКНЦ-I в ОКБ Э., 21-й отдел. Через некотрое время я решил включить одну машинку - для начала полдня сокращал размах строчной развертки в МС6105, потом мне посоветовали ( так осторожно - из др. угла кабинета, шопотом ) "проверь её на непрерывном тесте". Проверил. На ~10 проходе - висяк. Я пожаловался начлабу - "***** привезли". Руководитель сказал "помой руки с мылом".
Потом, году так в 1994-м, т.к. по материальной ценности машинки были слабы - выменяли на бухло одному П-Посадскому БКшнику. Он машинку продал в Митино. Но в сл. выходные ему её в рожу запихнули ( челюсть сломали ), и денег не потребовали назад. С тех пор этот БКшник Митино не посещал ( по состоянию на 2000 г., когда съехал в Москву на ПМЖ ).
А как отличить первый вариант УКНЦ от второго? По нашлёпке с годом выпуска на корпусе?
Еще хитрый вопрос по УКНЦ :
в момент запуска ЦП терминал УКНЦ 177560 уже может работать, или ЦП его как-то подготавливает ( ну, например, пересылает данные в планы ОЗУ ) ?
Как проверить - перевести ЦП в ДМА, перезапустить УКНЦ, и с внешнего проца ( стенда ) обратиться к 177560/177566. При этом сигнал SEL ЦП надо перевести в уровень +5в.
в момент запуска ЦП терминальный порт 177560 на шине ЦП уже может работать, так как сначала все подготавливает ПП потом запускает ЦП