
Сообщение от
form
Вообще-то микрокод и ПЗУ совсем не обязательно разнные вещи

Но взаимосвязанные.
Как я понял, при автостарте системы Э-85 из БУТ-рома ПЗУ определяется доступны ли порты терминала подключенного к порту принтера,
Был написал это как-то извратно...
Как я понял, при автостарте системы Э-85 подпрограммой из своего БУТ-рома ПЗУ определяет доступны ли порты, становящимся "видимыми" аппаратно если терминал подключен к порту принтера правильным "терминальным" (с закороткой) кабелем, и даётся общий потенциальный на работу с ним одобрямс, но сам обработчик (тот что выводит "@", etc.) хранится уже не в диагностическом ПЗУ.
Код:
;ПОДПРОГРАММА ПРОВЕРКИ ИНТЕРФЕЙСА ПЕЧАТАЮЩЕГО УСТРОЙСТВА
;В РЕЖИМЕ "КОРОТКАЯ ПЕТЛЯ"
MOV #340,@#177776 ;УСТАНОВИТЬ ПРИОРИТЕТ ЦП = 7
MOV #17,177666(R4) ;ЗАПИСАТЬ В ТАБЛИЦУ КОНФИГУРАЦИИ ПВК ИДЕНТИФИКАЦИОНЫЙ
;КОД ИНТЕРФЕЙСА ПЕЧАТАЮЩЕГО УСТРОЙСТВА
MOV #173400,R0 ;ВЫБРАТЬ АДРЕС ИНТЕРФЕЙСА ПЕЧАТАЮЩЕГО УСТРОЙСТВА
MOV #5,R1 ;УСТАНОВИТЬ В R1 ПРИЗНАК ПРОВЕРКИ ИНТЕРФЕЙСА ПЕЧАТАЮЩЕГО
;УСТРОЙСТВА
BIC #200,@#173700 ;ЗАПРЕТИТЬ ОСТАНОВ ЭВМ
MOV R5,-(SP)
JSR PC,@#132036 ;ПРОВЕРИТЬ ИНТЕРФЕЙС ПЕЧАТАЮЩЕГО УСТРОЙСТВА В РЕЖИМЕ
;"КОРОТКАЯ ПЕТЛЯ"
MOV R5,177664(R4) ;ЗАПИСАТЬ В ТАБЛИЦУ КОНФИГУРАЦИИ ПВК КОД ОШИБКИ ИЛИ
;0, ЕСЛИ ОШИБОК НЕТ
MOV (SP)+,R5
TST 177664(R4) ;БЫЛИ ОШИБКИ?
BNE 131742 ;ПЕРЕЙТИ, ЕСЛИ ДА
TST 6(R0)
MOV #116,4(R0) ;ЗАДАТЬ АССИНХРОННЫЙ РЕЖИМ РАБОТЫ С 8-Ю ИНФОРМАЦИОННЫМИ
;И 1 СТОПОВЫМ БИТАМИ
MOV #274,4(R0) ;ЗАДАТЬ СКОРОСТЬ ОБМЕНА - 4800 БИТ/С
MOV #47,6(R0) ;РАЗРЕШИТЬ ПРИЕМ И ПЕРЕДАЧУ В НОРМАЛЬНОМ РЕЖИМЕ
BIS #200,@#173700 ;РАЗРЕШИТЬ ОСТАНОВ ЭВМ
RTS PC
;ПОДПРОГРАММА ПРОВЕРКИ НАЛИЧИЯ И ГОТОВНОСТИ ПУЛЬТОВОГО ТЕРМИНАЛА
;ПРИ НАЛИЧИИ И ГОТОВНОСТИ ПУЛЬТОВОГО ТЕРМИНАЛА ПЕРЕПРОГРАММИРУЕТСЯ
;СКОРОСТЬ ОБМЕНА ИНТЕРФЕЙСА НА 9600 БИТ/С
MOV #132030,@#4 ;СФОРМИРОВАТЬ ВЕКТОР С АДРЕСОМ 000004
TST @#177564 ;ПУЛЬТОВОЙ ТЕРМИНАЛ ГОТОВ?
;(ПРЕРЫВАНИЕ, ЕСЛИ АДРЕС НЕ ОТВЕЧАЕТ)
BEQ 132026 ;ПЕРЕЙТИ, ЕСЛИ НЕТ
MOV #173400,R0 ;ВЫБРАТЬ АДРЕС ИНТЕРФЕЙСА ПЕЧАТАЮЩЕГО УСТРОЙСТВА
MOV #27,177662(R4) ;ЗАПИСАТЬ ИДЕНТИФИКАЦИОННЫЙ КОД ПУЛЬТОВОГО ТЕРМИНАЛА
;В ТАБЛИЦУ КОНФИГУРАЦИИ ПВК
TST 6(R0) ;ПЕРЕПРОГРАММИРОВАТЬ ИНТЕРФЕЙС ДЛЯ РАБОТЫ С ПУЛЬТОВЫМ
MOV #116,4(R0) ;ТЕРМИНАЛОМ:ЗАДАТЬ АССИНХРОННЫЙ РЕЖИМ РАБОТЫ С 8-Ю
;ИНФОРМАЦИОННЫМИ И 1 СТОПОВЫМ БИТАМИ
MOV #276,4(R0) ;ЗАДАТЬ СКОРОСТЬ ОБМЕНА - 9600 БИТ/С
MOV #47,6(R0) ;РАЗРЕШИТЬ ПРИЕМ И ПЕРЕДАЧУ В НОРМАЛЬНОМ РЕЖИМЕ
BIS #200,@#173700 ;РАЗРЕШИТЬ ОСТАНОВ ЭВМ
RTS PC