Корвет/Техническая документация
< Корвет
Данный материал защищён авторскими правами!
Использование материала заявлено как добросовестное, исключительно для образовательных некоммерческих целей. Источник: http://www.emu80.org/dev/dev_k.html |
; Москва, НИИСЧЕТМАШ, 10 декабря 1986 г. ; ; ОПИСАНИЕ ПРОГРАММНО-ДОСТУПНЫХ ЭЛЕМЕНТОВ ПЭВМ ПК8020 ; ; Для программиста ПЭВМ представляется совокупностью про- ; граммно доступных узлов, в число которых входят: ; - центральный процессор КР580ВМ80А; ; - узел дешифрации адресов и задания конфигураций памяти ; (системный регистр); ; - клавиатура; ; - контроллер отображения алфавитно-цифровой информации; ; - контроллер отображения графической информации; ; - системный таймер; ; - контроллер прерываний; ; - адаптер локальной сети; ; - адаптер магнитофона; ; - программируемый генератор звука; ; - адаптер печатающего устройства; ; - адаптер последовательного интерфейса ИРПС; ; - контроллер внешнего ЗУ на гибких магнитных дисках. ; СИСТЕМНЫЙ РЕГИСТР И КОНФИГУРАЦИИ ПАМЯТИ ; Все узлы ПЭВМ адресуются как ячейки памяти. Различные типы ; памяти (ПЗУ, ОЗУ и т.д.) могут логически подключаться, от- ; ключаться и перемещаться, образуя различные конфигурации ; для разных системных и прикладных программ. Область ПЗУ ; всегда начинается с 0 адреса. Клавиатура, регистры адаптеров ; и контроллеров внешних устройств, а также отображаемое на ; экране алфавитно-цифровое ЗУ сведены в единую область ; адресов размером 2 кбайта (область УВВ), подключаемую, от- ; ключаемую и перемещаемую как единое целое. В некоторых конфи- ; гурациях используются сокращенные варианты области УВВ, сос- ; тоящие только из едресов регистров и портов периферийных БИС. ; Поскольку на дешифратор адресов поступает только старший ; байт адреса, конфигурации могут задаваться с точностью до ; одной страницы, при этом относительное расположение адресов ; внутри каждой страницы постоянно. ; Ниже определяются относительные адреса различных элемен- ; тов ПЭВМ в соответствующих страницах и начальные смещения ; этих страниц для различных конфигураций памяти. Адрес каж- ; дого элемента в программе должен задаваться в виде суммы ; относительного адреса и начального смещения. ; Выбор одной из 9 имеющихся конфигураций осуществляется ; путем задания содержимого специального пятиразрядного ре- ; гистра, называемого системным регистром. Адрес этого ре- ; гистра располагается в текущей области УВВ. ; ; Условные названия конфигураций памяти и соответствующие им ; константы для записи в системный регистр: TRS80 EQU 00H ; ПЗУ 14к, область УВВ с 3800 по 3FFF, ; ОЗУ с 4000 по FFFF ROMB1 EQU 18H ; ПЗУ 16к, область УВВ с F800 по FFFF, ; ОЗУ с 4000 по F7FF ROMB2 EQU 20H ; ПЗУ 14к, область УВВ с 3800 по FFFF, ; ОЗУ с 4000 по BFFF, граф. ЗУ (ГЗУ) ; с C000 по FFFF ODOSA EQU 1CH ; Конфигурация для ОС CP/M: ; ОЗУ с 0 по F7FF, область УВВ ; с F800 по FFFF NDOS EQU 14H ; ПЗУ 8к, ОЗУ с 2000 по F7FF, ; область УВВ с F800 по FFFF BASIC EQU 40H ; ПЗУ 24к, ОЗУ с 6000 по F7FF, ; область УВВ с F800 по FFFF BASG EQU 60H ; ПЗУ 24к, ОЗУ с 6000 по BEFF, ; регистры ВВ с BF00 по BFFF, ; ГЗУ с C000 по FFFF DOSA EQU 5CH ; ОЗУ с 0 по FDFF, регистры ; с FE00 по FFFF DOSG1 EQU 3CH ; ОЗУ с 0 по 3FFF и с 8000 по ; FDFF, ГЗУ с 4000 по 7FFF, ; регистры с FE00 по FFFF ; Системный регистр вместе с регистром цвета и ; цветовой таблицей (см. ниже) располагается в стра- ; нице, начальное смещение которой определяется па- ; раметром RGBASE, способным принимать одно из 4 ; значений: RGBASE1 EQU 3A00H ; в TRS80 и ROMB2 RGBASE2 EQU 0FA00H ; в ROMB1, ODOSA, NDOS и BASIC RGBASE3 EQU 0FF00H ; в DOSA и DOSG1 RGBASE4 EQU 0BF00H ; в BASG SYSREG EQU 7FH ; Относительный адрес ; системного регистра ; Адреса остальных регистров, представляющих собой ; порты периферийных БИС, сведены в одну страницу, ; начальный адрес которой PBASE может принимать одно ; из 3 значений: PBASE1 EQU 3B00H ; в TRS80 и ROMB2 PBASE2 EQU 0FB00H ; в ROMB1, ODOSA, NDOS и BASIC PBASE3 EQU 0FE00H ; в DOSA и DOSG1 ;------------------------------------------------------------ ; КЛАВИАТУРА ; Состояние клавишных переключателей клавиатуры доступно ; программе при опросе групп клавишей или всей клавиатуры ; целиком как ячеек памяти. Ниже приводятся адреса ячеек, ; соответствующие группам по 8 клавишей. Нажатое состояние ; клавиши дает '1' в соответствующем разряде считанного ; байта данных. Опрос одновременно нескольких групп с ; целью выявления хотя бы одной нажатой клавиши можно ; производить путем объединения их адресов лог. ИЛИ. ; D7 D6 D5 D4 D3 D2 D1 D0 ; |---|---|---|---|---|---|---|---| ; основное поле KB00 EQU 01H ; Г Ф Е Д Ц Б А Ю KB01 EQU 02H ; О Н М Л К Й И Х KB02 EQU 04H ; В Ж У Т С Р Я П KB03 EQU 08H ; ъ Ч Щ Э Ш З Ы Ь KB04 EQU 10H ; 7 6 5 4 3 2 1 0 KB05 EQU 20H ; ? > = < + * 9 8 KB06 EQU 40H ; ПРОБЕЛ ТАБ ВШ ВЗ ИЗ СТП СТР ВК KB07 EQU 80H ; РГП ФКС УПР СЕЛ ПРФ ГРФ АЛФ РГЛ ; дополнительные поля KB08 EQU 101H ; 7 6 5 4 3 2 1 0 KB09 EQU 102H ; . 9 8 KB10 EQU 104H ; F5 F4 F3 F2 F1 ; Начальное смещение области адресов клавиатуры KBBASE ; может принимать одно из двух значений: KBBASE1 EQU 3800H ; в TRS80 и ROMB2 KBBASE2 EQU 0F800H ; в ROMB1, ODOSA, NDOS и BASIC ; КОНТРОЛЛЕР ОТОБРАЖЕНИЯ АЛФАВИТНО-ЦИФРОВОЙ ИНФОРМАЦИИ ; Этот узел состоит из 9-разрядного статического ОЗУ (АЦЗУ) ; объемом 1 кбайт, регистра управления и регистра атрибута. ; АЦЗУ располагается в конце текущей области адресов УВВ (XC00- ; XFFF), каждая ячейка отображается на экране в виде одного ; символа, начиная с левого верхнего угла, всего 16 строк по ; 64 символа. Коды и начертания символов определяются знакоге- ; нератором, причем за основу взят код КОИ-8, дополненный эле- ; ментами псевдографики. Регистр управления, реализованный в ; виде порта одной из микросхем КР580ВВ55А, устанавливает режим ; отображения и позволяет управлять состоянием атрибута инвер- ; сии изображения в 9-м разряде АЦЗУ, в частности, формировать ; на экране курсор. Этот регистр работает на вывод, но доступен ; и для чтения. Одноразрядный регистр атрибута позволяет прог- ; раммно анализировать состояние атрибута в 9-м разряде АЦЗУ. VIBASE1 EQU 3C00H ; Начальный адрес АЦЗУ в конфигурациях ; TRS80 и ROMB2 VIBASE2 EQU 0FC00H ; Начальный адрес АЦЗУ в конфигурациях ; ROMB1, ODOSA, NDOS и BASIC VIREG EQU 3AH ; Относительный адрес регистра управления ; отображением VISTS EQU 38H ; Относительный адрес регистра состояния ; атрибута видеоинверсии ; Константы для работы с регистрами ATRMSK EQU 8 ; Маска атрибута видеоинверсии VBLMSK EQU 2 ; Маска кадрового гасящего импульса FONT1 EQU 4 ; Выбор альтернативного набора ; символов в знакогенераторе LARGE EQU 8 ; Режим отображения расширенных ; символов (32 символа в строке) ATRSET EQU 10H ; Установка бита атрибута ATRRES EQU 20H ; Сброс бита атрибута ATRFRE EQU 30H ; Сохранение состояния атрибута ; и условие чтения атрибута ; КОНТРОЛЛЕР ОТОБРАЖЕНИЯ ГРАФИЧЕСКОЙ ИНФОРМАЦИИ ; Состоит из двух или трех слоев (банков) динамического ОЗУ, ; содержимое которых отображается на экране в виде карты бит, ; регистра цвета, регистра выбора страниц, таблицы присвоения ; цветов и логической матрицы для анализа содержимого ГЗУ. ; Объем каждого слоя может быть 16 или 64 к, но отображается ; всегда только 16 к из каждого слоя. ; Четырехразрядный регистр выбора страницы при объеме 64 к ; определяет, какая часть (страница) каждого слоя отображается ; в текущий момент на экране и какая открыта для доступа ; процессору. ; Байты информации одновременно из всех слоев выводятся на ; экран начиная с верхнего левого угла таким образом, что ; одноименные биты совмещаются и определяют логический цвет ; соответствующей точки на экране. ; Старший бит каждого байта отображается слева, младший - ; справа. Окончательный (физический) цвет точки определяется ; содержимым программируемой таблицы присвоения цветов, ; причем учитывается также информация из АЦЗУ. Таблица ; присвоения цветов расположена в области УВВ и адресуется ; как одна ячейка памяти, работающая только на запись, при ; этом выбор строки таблицы определяется содержимым запи- ; сываемого байта. PAGREG EQU VIREG ; Адрес регистра выбора страниц VPAGE0 EQU 00000000B ; Выбор 0 страницы отображения VPAGE1 EQU 00000001B ; Выбор 1 страницы отображения VPAGE2 EQU 00000010B ; Выбор 2 страницы отображения VPAGE3 EQU 00000011B ; Выбор 3 страницы отображения RWPAG0 EQU 00000000B ; Выбор 0 страницы чтения/записи RWPAG1 EQU 01000000B ; Выбор 1 страницы чтения/записи RWPAG2 EQU 10000000B ; Выбор 2 страницы чтения/записи RWPAG3 EQU 11000000B ; Выбор 3 страницы чтения/записи ; Если объем слоя ограничен 16 к, состояние битов PAGREG ; безразлично. LUT EQU 0FBH ; Адрес таблицы присвоения цветов ; (относительный) ; При записи в LUT биты D0...D3 задают номер одной из 16 ; строк таблицы, а D4...D7 - содержимое этой строки. ; D3 соответствует АЦЗУ, D2 - слою ГЗУ #2, D1 - слою #1, ; D0 - слою #0; D7 задает интенсивность (яркость), ; D6 - наличие красного цвета, D5 - зеленого цвета, D4 - ; синего цвета. ; ; Регистр цвета задает маски логических цветов и режимы ; записи и считывания ГЗУ. Имеются два основных режима - ; послойный и цветовой. Этот регистр работает только на ; запись. NCREG EQU 0BFH ; Относительный адрес регистра цвета ; Константы для программирования регистра цвета BANKMD EQU 0 ; Послойный режим чтения/записи WSEL0 EQU 11111101B ; Выбор слоя 0 при записи WSEL1 EQU 11111011B ; Выбор слоя 1 при записи WSEL2 EQU 11110111B ; Выбор слоя 2 при записи RSEL0 EQU 00010000B ; Выбор слоя 0 при чтении RSEL1 EQU 00100000B ; Выбор слоя 1 при чтении RSEL2 EQU 01000000B ; Выбор слоя 2 при чтении WBIT EQU 00000001B ; Маска значения бита, записы- ; ваемого в биты ГЗУ в послой- ; ном режиме COLORMD EQU 80H ; Цветовой режим чтения/записи ; (выбраны все три слоя) WRMSK EQU 00001110B ; маска битов, задающих логи- ; ческий цвет при записи RDMSK EQU 01110000B ; маска битов, задающих логи- ; ческий цвет при чтении ; При записи в ГЗУ записываемый байт данных определяет, ; какие биты ГЗУ изменятся (примут значение WBIT или ; WRMSK), а какие сохранят свое значение. Признаком ; изменения является соответствие битов записываемого ; байта значению BITWR, признаком сохранения - противо- ; положное значение. BITWR SET 1 ; Изменяются биты, заданные единицами ; При чтении ГЗУ в послойном режиме в считываемом байте ; получается содержимое ячейки выбранного слоя. ; При чтении в цветовом режиме в считанном байте содер- ; жатся признаки совпадения цвета в каждой точке с задан- ; ной маской. В случае совпадения в соответствующих битах ; читаются нули. ; СИСТЕМНЫЙ ТАЙМЕР ; Функции системного таймера выполняет канал # 2 ; микросхемы КР580ВИ53. Таймер формирует запросы прерывания ; однократно или многократно через заданные интервалы ; времени. На вход таймера поступает частота 50 Гц, которую ; он делит в заданное число раз. Режим работы канала ; микросхемы задается в регистре режима, а коэффициент ; пересчета - в регистре счета. STMRM EQU 03H ; Относит. адрес регистра режима STMRD EQU 02H ; Относит. адрес регистра счета ; Константы для программирования режимов таймера CTR0S EQU 00000000B ;Выбор счетчика 0 CTR1S EQU 01000000B ;Выбор счетчика 1 CTR2S EQU 10000000B ;Выбор счетчика 2 LCTR EQU 00000000B ;Стробирование счетчика RLMB EQU 00100000B ;Чтение/загрузка старшего байта RLLB EQU 00010000B ;Чтение/загрузка младшего байта RLLM EQU 00110000B ;Чтение/загрузка мл. и ст. байта MODE0 EQU 00000000B ;Режим 0 (датчик прерывания) MODE1 EQU 00000010B ;Режим 1 (одновибратор) MODE2 EQU 00000100B ;Режим 2 (делитель частоты) MODE3 EQU 00000110B ;Режим 3 (делитель частоты) MODE4 EQU 00001000B ;Режим 4 (прогр.формирователь строба) MODE5 EQU 00001010B ;Режим 5 (аппар формирователь строба) BCDC EQU 00000001B ;Двоично-десятичный счет ; Работа 2 канала в режиме периодического прерывания с ; заданием коэффициента пересчета в десятичной форме: STMD SET CTR2S OR RLLM OR MODE2 OR BCDC ; Номер запроса прерывания от системного таймера: TMRINT SET 5 ; КОНТРОЛЛЕР ПРЕРЫВАНИЙ ; Этот узел реализован на основе микросхемы КР580ВН59 ; и обслуживает 8 запросов (уровней ) прерывания от ; контроллеров и адаптеров внешних устройств. В системе ; контроллер имеет два адреса для обращения со стороны ; процессора, а его внутренние регистры выбира- ; ются дополнительно разрядами данных при записи или ; их выбор определяется порядком обращения. Регистры ; делятся на регистры инициализации, регистры управ- ; ления и регистры ввода. После инициализации контрол- ; ер готов к работе с фиксированными приоритетами ; запросов ( 0 - высший, 7 - низший). Контроллер при ; возникновении прерывания генерирует код команды CALL ; с адресом, соответствующим обрабатываемому запросу. ; Адреса всех 8 команд CALL попадают в одну область ; памяти, заданную программистом, где с шагом 4 или 8 ; ячеек должны располагаться команды переходов к подпро- ; граммам обслуживания запросов. ; Параметры для инициализации SICP0 EQU 28H ; Относительный адрес ; первого регистра инициализации ICW1 SET 00010010B ; Основная часть первого слова ; инициализации LADR EQU 11100000B ; Маска разрядов A5...A7 адреса ; таблицы переходов SHORT EQU 00000100B ; Интервал 4 байта SICP1 EQU 29H ; Относительный адрес ; второго регистра инициализации ICW2 SET 00000000B ; Второе слово инициализации ; ( Старший байт адреса таблицы ; переходов ) ; Параметры для управления ; Любой запрос прерывания можно запретить путем установки ; разрядов специального регистра маски (первого регистра ; управления ). Этот регистр доступен для чтения. MSKREG EQU 29H ; Относит. адрес регистра маски ;Маски для уровней прерывания INT0 EQU 00000001B ; Запрет прерывания уровня 0 INT1 EQU 00000010B ; Запрет прерываний уровня 1 INT2 EQU 00000100B ; Запрет прерываний уровня 2 INT3 EQU 00001000B ; Запрет прерываний уровня 3 INT4 EQU 00010000B ; Запрет прерываний уровня 4 INT5 EQU 00100000B ; Запрет прерываний уровня 5 INT6 EQU 01000000B ; Запрет прерываний уровня 6 INT7 EQU 10000000B ; Запрет прерываний уровня 7 INTA EQU 00000000B ; Разрешение всех прерываний ; Второй регистр управления позволяет задавать различные ; условия окончания обработки прерываний. EIOREG EQU 28H ; Адрес регистра конца прерывания ; Константы условий окончания обработки прерываний PRSHF EQU 10000000B ; Циклический сдвиг приоритетов SEOI EQU 01000000B ; Признак указания сбрасываемого ; уровня прерывания EOI EQU 00100000B ; Конец прерывания LEVEL EQU 00000111B ; Маска битов, указывающих ; уровень, которому присва- ; ивается низший приоритет ; Третий регистр управления позволяет задавать особые ; условия маскирования и осуществлять выбор одного из ; регистров ввода. SELREG EQU 28H ; Адрес регистра выбора SELRID EQU 00001000B ; Признак адресации (идентифи- ; катор) регистра выбора SMEN EQU 01000000B ; Разрешение управления спец. ; маскированием SMSET EQU 00100000B ; Установка спецмаскирования POLL EQU 00000100B ; Режим опроса SELEN EQU 00000010B ; Разрешение выбора регистра SELIRR EQU 00000000B ; Выбор регистра запросов SELISR EQU 00000001B ; Выбор регистра обрабатываемых ; прерываний IRISRG EQU 28H ; Адрес регистров опроса, входных ; запросов и обрабатываемых пре- ; рываний ; АДАПТЕР МАГНИТОФОНА ; В состав этого узла входят регистр записи и регистр ; чтения, функции которых выполняют отдельные цепи ; портов микросхемы КР580ВВ55А. В ПЭВМ ПК8010 и ПК8020 ; имеется возможность прямого управления битами. ; Разряды регистров чтения и записи отражают только ; состояние входных и выходных сигналов, а кодирование ; и декодирование информации должны осуществляться ; программно. CASOUT EQU 32H ; Адрес регистра записи CASIN EQU 38H ; Адрес регистра чтения CASMSK EQU 01H ; Маска входного сигнала SETLOW EQU 00B ; Посылка сигнала низкого уровня SETMID EQU 01B ; Посылка сигнала среднего уровня SETHIGH EQU 11B ; Посылка сигнала высокого уровня STOP EQU 4 ; Временный останов ленты (пауза) ; ПРОГРАММИРУЕМЫЙ ГЕНЕРАТОР ЗВУКА ; Генератор звука построен на основе канала #0 ; микросхемы КР580ВИ53. На вход счетчика подана частота ; 2000 кГц. Генератор дополнительно управляется ; одноразрядным регистром разрешения, доступным также ; для чтения. SOUNDD EQU 00H ; Адрес регистра счета SOUNDM EQU 03H ; Адрес регистра режима SOUNDC EQU 32H ; Адрес регистра разрешения SNDEN EQU 8 ; Разрешение формирования звука ; Константа для задания режима работы счетчика SNDMD SET CTR0S OR RLLM OR MODE3 ; АДАПТЕР ЛОКАЛЬНОЙ СЕТИ ; Этот адаптер построен на основе микросхемы КР580ВВ51А, ; работающей в асинхронном режиме на общую сигнальную ; линию локальной сети класса. В указанной микросхеме ; используются только цепи принимаемых и передаваемых ; данных. На вход синхронизации подана частота 312 кГц, ; что позволяет вести прием и передачу со скоростью ; около 19500 бит/с. Адаптер способен генерировать ; запрос прерывания при приеме байта данных из канала. ; Адрес (номер) рабочего места в локальной сети задается ; 4 перемычками на разъеме локальной сети. Адрес может ; быть прочитан через регистр LANADR (порт A первой ; микросхемы типа КР580ВВ55А). ; Адреса регистров адаптера локальной сети LAND EQU 20H ; Регистр данных LANC EQU 21H ; Регистр управления LANS EQU 21H ; Регистр состояния LANADR EQU 38H ; Регистр адреса рабочего места ADRMSK EQU 0F0H ; Маска адреса раб. места ; Константы для программирования режима ; Коэффициент деления ; частоты синхронизации: R64X EQU 00000011B ; 64 R16X EQU 00000010B ; 16 R1X EQU 00000001B ; 1 CL8 EQU 00001100B ;Длина символа = 8 бит CL7 EQU 00001000B ; = 7 бит CL6 EQU 00000100B ; = 6 бит CL5 EQU 00000000B ; = 5 бит PEHB EQU 00010000B ; Разрешение контроля PEVEH EQU 00100000B ; Контроль на четность ; Пауза при передаче: ST2 EQU 11000000B ;2 стоповых бита ST15 EQU 10000000B ;1.5 стоповых бита ST1 EQU 01000000B ;1 стоповый бит ; Устанавливаемый режим работы: LANMD SET R16X OR CL8 OR PEHB OR ST1 ; Отдельные биты команды TXEN EQU 00000001B ; Разршение работы передатчика RXEN EQU 00000100B ; Разрешение работы приемника SBCH EQU 00001000B ; Посылка признака обрыва CLERR EQU 00010000B ; Сброс признаков ошибок USRST EQU 01000000B ; Программный сброс ; Маски отдельных признаков в регистре состояния TRDY EQU 00000001B ; Признак готовности передатчика RRDY EQU 00000010B ; Признак готовности приемника TXBE EQU 00000100B ; Передающий буфер пуст RPAR EQU 00001000B ; Признак ошибки по четности ROV EQU 00010000B ; Признак ошибки переполнения RFR EQU 00100000B ; Признак ошибки формата байта LANINT EQU 3 ; Используемый уровень прерывания ; АДАПТЕР ИНТЕРФЕЙСА ИРПС ; Данный узел построен на основе микросхемы КР580ВВ51А и ; одного из каналов КР580ВИ53 и реализует последовательный ; интерфейс типа 'Токовая петля' с дополнительными ; цепями для сигнализации о состоянии устройств, участву- ; ющих в обмене. Скорость передачи задается путем установки ; соответствующего коэффициента деления счетчика микросхемы ; КР580ВИ53, на вход которого подана частота 2000 кГц. ; Выделены отдельные уровни прерывания для приемника и ; передатчика. ; Адреса регистров микросхемы КР580ВВ51А: SERD EQU 10H ;Регистр данных SERC EQU 11H ;Регистр управления SERS EQU 11H ;Регистр состояния ; Предполагаемый режим работы SERMD SET R16X OR CL8 OR ST1 ; Дополнительные биты команды DTR EQU 00000010B ; Сигнал 'Готовность ПК' ; Дополнительные признаки в регистре состояния DSR EQU 10000000B ; Сигнал 'Готовность УВВ' ; Адреса регистров канала БИС КР580ВИ53 BCNTC EQU 03H ; Регистр управления BCNTD EQU 01H ; Регистр счета ; Константы для программирования счетчика BCMD SET CTR1S OR RLLM OR MODE3 ; Режим работы ; Коэффициенты деления для скоростей обмена: B9600 EQU 13 ; 9600 бод B4800 EQU 26 ; 4800 бод B2400 EQU 52 ; 2400 бод B1200 EQU 104 ; 1200 бод SERINT1 EQU 1 ; прерывание от приемника SERINT2 EQU 2 ; прерывание от передатчика ; АДАПТЕР ПЕЧАТАЮЩЕГО УСТРОЙСТВА ; В состав этого узла входят регистр данных, регистр ; управления и регистр состояния, реализованные в виде ; портов параллельного адаптера КР580ВВ55А, причем ; регистр управления обеспечивает непосредственное ; управление битами (сброс и установку). Передача байта ; данных осуществляется при наличии признака готовности ; принтера в регистре состояния путем записи кода ; символа в регистр данных с последующей установкой и ; сбросом бита стробирующего сигнала в регистре управления. ; В драйверы печатающего устройства в некоторых случаях ; необходимо вводить инвертирование передаваемого ; байта и байта состояния (условное ассемблирование ; в зависимости от значения параметра LSTINV). LSTDAT EQU 30H ; Регистр данных принтера LSTSTS EQU 38H ; Регистр состояния LSTCTL EQU 33H ; Регистр управления LSTINV SET 1 ; Признак инверсии ; данных и состояния LSTRDY EQU 4 ; Маска признака готовности ; принтера STBSET EQU 0BH ; Установка строба данных STBRST EQU 0AH ; Сброс строба данных LSTINT EQU 6 ; уровень прерывания по готовности ; принтера ; Программируемые параллельные адаптеры КР580ВВ55А, ; упомянутые выше в составе адаптеров внешних уст- ; ройств, имеют следующие адреса портов и регистров ; для установки режимов: ; ППР#1 : PIA1 EQU 38H ; Порт А (LANADR, VISTS, LSTSTS, ; CASIN ) PIB1 EQU 39H ;Порт В (DRVREG ) PIC1 EQU 3AH ;Порт С (VIREG ) PIMC1 EQU 3BH ;Регистр режима и управления PI1MD EQU 90H ; Байт задания режима ; ППР#2 : PIA2 EQU 30H ; Порт А ( LSTDAT ) PIB2 EQU 31H ; Порт В ( резерв ) PIC2 EQU 32H ; Порт С (CASOUT, LSTCTL, SOUNDC) PIMC2 EQU 33H ; Регистр режима и управления PI2MD EQU 82H ;Байт задания режима ; ППР#3 ( порт расширения системы ) PIA3 EQU 08H ; Порт А PIB3 EQU 09H ; Порт В PIC3 EQU 0AH ; Порт С PIMC3 EQU 0BH ; Регистр управления ; УЗЕЛ СОПРЯЖЕНИЯ С НГМД ; В состав этого узла входят БИС контроллера НГМД КР1818ВГ93, ; регистр выбора и управления НГМД и одновибратор включения ; двигателя НГМД. ; Регистр выбора и управления НГМД DRVREG EQU 39H ; (порт B КР580ВВ55 #1) ; Этот регистр работает на вывод, но доступен программно и ; для чтения, поэтому состояние его разрядов можно изменять ; с помощью логических операций И, ИЛИ, ИСКЛЮЧАЮЩЕЕ ИЛИ. ; Разряды регистра выбора и управления DS0 EQU 00000001B ; выбор НГМД #0 DS1 EQU 00000010B ; выбор НГМД #1 DS2 EQU 00000100B ; выбор НГМД #2 DS3 EQU 00001000B ; выбор НГМД #3 SIDE1 EQU 00010000B ; выбор стороны диска #1 MOTOR EQU 00100000B ; запуск одновибратора ; включения двигателя SDEN EQU 01000000B ; режим работы с одинарной ; плотностью записи D200 EQU 10000000B ; работа с диском 203 мм ; Одновибратор включения двигателя запускается на время 3 с ; при переходе сигнала (бита) MOTOR из 0 в 1. Для разгона ; двигателя требуется время около 0,5 с, после этого можно ; инициировать операции контроллера НГМД. Если двигатель ; уже был включен, время на разгон не требуется. Опрос ; состояния одновибратора включения двигателя производится ; через регистр запросов контроллера прерываний. MOTINT EQU 7 ; Прерывание от одновибратора ; управления двигателем ; Контроллер НГМД ; Регистры контроллера CMDREG EQU 18H ; Регистр команд STSREG EQU 18H ; Регистр состояния TRKREG EQU 19H ; Регистр текущей дорожки SECREG EQU 1AH ; Регистр сектора DATREG EQU 1BH ; Регистр данных ; Команды контроллера НГМД ; (команды записываются в регистр команд при наличии ; разрешения, т.е. при отсутствии признака BUSY ; в регистре состояния). Опрос регистра состояния можно ; производить не ранее, чем через 30 мкс после записи ; команды в регистр команд. ; Команды позиционирования (команды I типа). Основные коды RESTORE SET 00000000B ; позиционирование на 0 дорожку SEEK SET 00010000B ; позиционирование на дорожку, ; заданную в регистре данных STEP SET 00100000B ; позиционирование на одну ; дорожку в направлении, задан- ; ном предыдущей командой STEPIN SET 01000000B ; позиционирование к центру ; на одну дорожку STEPOUT SET 01100000B ; позиционирование от центра ; на одну дорожку ; Модификаторы команд позиционирования UPDATE EQU 00010000B ; отслеживание перемещения ; головки в регистре дорожки HLD EQU 00001000B ; прижим головки при движении VERIFY EQU 00000100B ; проверка установки головки ; после перемещения RATE SET 00000011B ; коэффициент скорости позици- ; онирования (для мини-дисков ; время перехода с дорожки на ; дорожку при 00 будет 6 мс, ; 01 - 12 мс, 10 - 20 мс, ; 11 - 30 мс ) ; Модификаторы HLD, UPDATE и VERIFY могут использоваться ; по усмотрению системного программиста. ; Использование модификатора RATE является обязательным, ; причем для дисководов типа FD55FV его значение может ; быть установлено равным 00. ; Команды чтения/записи (команды II типа) ; Основные коды RDSEC SET 10000000B ; чтение сектора WRSEC SET 10100000B ; запись сектора ; Модификаторы MULTI EQU 00010000B ; операция с несколькими ; секторами DELAY EQU 00000100B ; включение задержки опе- ; рации на время подвода ; головки ; использование модификатора DELAY для используемых ; в КУВТ НГМД является обязательным. ; Команды форматирования (команды III типа) ; Основные коды RDADR EQU 11000000B ; чтение идентификатора RDTRK EQU 11100000B ; чтение дорожки WRTRK EQU 11110000B ; запись дорожки ; Модификатор - DELAY (см. выше) ; Команды прерывания (команды IV типа) ; Основные коды FORCE EQU 11010000B ; прекращение операции ; и/или генерация зап- ; роса прерывания на ЦП ; Модификаторы (используются по усмотрению программиста) ONRDY EQU 00000001B ; прерывание по готов- ; ности НГМД ONNRDY EQU 00000010B ; прерывание по неготов- ; ности НГМД ONINDX EQU 00000100B ; прерывание по индекс- ; ному импульсу IMMID EQU 00001000B ; немедленное прерывание ; Признаки состояния контроллера НГМД ; Эти признаки могут быть получены путем чтения регистра ; состояния контроллера НГМД с последующим выделением их ; путем логического умножения на соответствующую маску. ; Маски признаков (флагов ) состояния контроллера НГМД BUSY EQU 00000001B ; признак неготовности конт- ; роллера к приему команд DRQ EQU 00000010B ; запрос на передачу очеред- ; ного байта данных (кроме ; команд I типа) INDX EQU 00000010B ; индексный маркер, т.е. ; начальная позиция диска ; (только для команд I типа) LOST EQU 00000100B ; признак потери данных ; (кроме команд I типа) TRK00 EQU 00000100B ; признак 0 дорожки ; (для команд I типа) CRCERR EQU 00001000B ; признак ошибки по ; циклическому конт- ; рольному коду RECNF EQU 00010000B ; признак ненахождения ; заданного сектора ; (кроме команд I типа) SEEKER EQU 00010000B ; ошибка позиционирования ; (для команд I типа) FAULT EQU 00100000B ; ошибка при записи ; (для команд II и III типа) HLDD EQU 00100000B ; признак прижима головки ; (для команд I типа) WPRTD EQU 01000000B ; признак диска, защищенного ; от записи и стирания NOTRDY EQU 10000000B ; признак отсутствия ; готовности НГМД ;------------------------------------------------------ ; Кроме перечисленных выше, в ПЭВМ ПК8020 имеются ; следующие уровни прерывания: AUXINT EQU 0 ; Прерывание от внешних адаптеров ; (через разъем расширения) PERINT EQU 4 ; Прерывание от кадровых импульсов ; с частотой 50 Гц