romROMx0073 equ #0073 ;загрузка блока из ROM-Disk rom0_x1B11 equ #1B11 ;автостарт с диска rom0_x259F equ #259F ; rom2_x0000 equ #0000 ;запись байта в память пользователя (rst #00) rom2_x0028 equ #0028 ;чтение байта из памяти пользователя rom2_x001B equ #001B ;для провреки размера ПЗУ: выдаст A=0 rom2_x013A equ #013A ;выход из монитора rom2_x03A7 equ #03A7 ;Запись регистра AY rom2_x03B6 equ #03B6 ;чтение регистра AY rom2_x04CE equ #04CE ;восстановление Турбо-режима rom2_x04D5 equ #04D5 ;включение Турбо-режима rom2_x05A1 equ #05A1 ;????????? rom2_x0603 equ #0603 ;копирование памяти с #8000 в страницу пользователя rom2_x0606 equ #0606 ;копирование страницы пользователя в #8000 rom2_x0665 equ #0665 ;включение режима 48k only rom2_x0749 equ #0749 ;восстановление области памяти из ram 8 rom2_x0753 equ #0753 ;сохранение области памяти в ram 8 rom2_x08D7 equ #08D7 ; печать текущего меню монитора rom2_x0B06 equ #0B06 ;ввод и обработка команды отладчика rom2_x0D42 equ #0D42 ;проверка символа в (hl) #20/#2C/#3B/#00/#0D rom2_x0D46 equ #0D46 ;проверка символа в (hl) #2C/#3B/#00/#0D rom2_x0DF4 equ #0DF4 ;преобразование строки в число rom2_x0E73 equ #0E73 ;деление bc=hl/de с проверкой de на ноль rom2_x0E85 equ #0E85 ;умножение ahl=hl*de (0,(iy+#0E)=1 результат более 16 бит) rom2_x0EE3 equ #0EE3 ;поиск в буфере ввода строки первого печатного символа rom2_x15B3 equ #15B3 ;печать сообщения из hl длиной b rom2_x15B9 equ #15B9 ;печать сообщения из hl с заменой непечатных символов на ? rom2_x15D0 equ #15D0 ;печать сообщения по номеру (на экран/в буфер) rom2_x15DB equ #15DB ;печать сообщения из hl rom2_x15F3 equ #15F3 ;печать нескольких пробелов (в B) rom2_x1612 equ #1612 ;печать числа в hl (dec/hex) с префиксом rom2_x1629 equ #1629 ;печать числа в bc (bin/oct/dec/hex) с префиксом rom2_x162C equ #162C ;печать числа в заданной системе счисления rom2_x165E equ #165E ;печать десятичного числа bc [0..65535] без ведущих пробелов, с предварительным пробелом rom2_x1661 equ #1661 ;печать десятичного числа bc [0..65535] с ведущими пробелами, с предварительным пробелом rom2_x1669 equ #1669 ;печать десятичного числа bc [0..65535] с ведущими пробелами rom2_x166E equ #166E ;печать десятичного числа bc [0..65535] с ведущими пробелами rom2_x1673 equ #1673 ;печать числа bc (на экран/в буфер) rom2_x16AA equ #16AA ;деление bc=ac/de rom2_x16DE equ #16DE ;печать числа hl=[#0000..#FFFF] rom2_x16E3 equ #16E3 ;печать числа a=[#00..#FF] rom2_x16EC equ #16EC ;печать числа a=[#0..#F] rom2_x2800 equ #2800 ;печать символа в окне rom2_x28F6 equ #28F6 ;мигание текстового курсора в строке ввода rom2_x28B8 equ #28B8 ;восстановление экрана под курсором, если нужно (6 пикселей символ) rom2_x28E8 equ #28E8 ;печать/удаление курсора в окне rom2_x2969 equ #2969 ;расчет адреса курсора в области атрибутов для символов 8 пикселей rom2_x298E equ #298E ;скроллинг окна вверх rom2_x2A1B equ #2A1B ;обработка управляющего кода #1E (скроллинг окна ввниз) rom2_x2A5E equ #2A5E ;обработка управляющего кода #0C (очистка текущего окна) rom2_x2A85 equ #2A85 ;очистка знакоместной строки по координатам курсора rom2_x2B0B equ #2B0B ;печать символа со сбросом 7го бита (rst #10) rom2_x2B10 equ #2B10 ;печать пробела (rst #10) rom2_x2B12 equ #2B12 ;печать символа (rst #10) rom2_x2C4D equ #2C4D ;копирование дескриптора дисковода в буфер xE590, если к нему примонтирован образ rom2_x2E3D equ #2E3D ;печать дампа памяти в окне rom2_x2E76 equ #2E76 ;удаление курсора на предыдущей ячейке дампа rom2_x2EBA equ #2EBA ;печать одной строки дампа памяти (8 байт) rom2_x2F74 equ #2F74 ;вывод дисасма памяти по адресу в de rom2_x2FED equ #2FED ;печать пробелов до правого края окна rom2_x2FF1 equ #2FF1 ;печать пробелов до заданной координаты X rom2_x2FFB equ #2FFB ;установка текущим окна: ввод числа rom2_x3005 equ #3005 ;установка текущим окна: main menu rom2_x300F equ #300F ;чтение содержимого регистра ix основной программы rom2_x3014 equ #3014 ;ix = адрес дескриптора окна монитора: ввод строки внизу экрана rom2_x3019 equ #3019 ;ix = адрес дескриптора окна монитора: дамп памяти rom2_x301C equ #301C ;ix = адрес дескриптора окна монитора из hl rom2_x3107 equ #3107 ;запись области памяти в файл rom2_x3201 equ #3201 ;печать ON/OFF от флага nz-ON/z-OFF rom2_x3210 equ #3210 ;определение адреса ловушки rom2_x35D3 equ #35D3 ;сравнение ix=xE075 rom2_x35E0 equ #35E0 ;сохранение переменной с состоянием портов #1FFD/#7FFD пользователя rom2_x36C3 equ #36C3 ;запись стандартного Magic-файла rom2_x36F9 equ #36F9 ;получение номера логической страницы пользователя a=[#0..#F] rom2_x3707 equ #3707 ;сравнение страницы пользователя с заданной rom2_x3732 equ #3732 ;установка страницы пользователя равной номеру страницы в L rom2_x37B9 equ #37B9 ;управление выводиммым листингом (опрос клавиш space, s, cs+1) rom2_x3807 equ #3807 ;пауза 40416t rom2_x382E equ #382E ;ожидание отжатия всех клавиш rom2_x3870 equ #3870 ;печать сообщения и продолжение работы текущего меню монитора rom2_x3A21 equ #3A21 ;копирование активного экрана пользователя в #4000 rom2_x3A4E equ #3A4E ;восстановление переменной с состоянием портов #1FFD/#7FFD пользователя rom2_x3A95 equ #3A95 ;подготовка переменных к выводу на экран/принтер rom2_x3B75 equ #3B75 ;определение типа прерываний im 1/2 rom2_x3EE6 equ #3EE6 ;названия месяцев rom2_x3F0A equ #3F0A ;Названия дней недели rom3_x0FF3 equ #0FF3 ;Запись памяти на диск rom3_x3D30 equ #3D30 ;вызов страницы tr-dos rom3_x3FF0 equ #3FF0 ;вывод в порт rom3_x3FF3 equ #3FF3 ;чтение порта rom4_x0122 equ #0122 ;копирование переменных монитора и проверка чтения портов #7FFD/#1FFD rom4_x02E8 equ #02E8 ;проверка оригинальный/совместимый компьютер rom4_x0305 equ #0305 ;установка переменных из NVRAM/CMOS128 rom4_x0312 equ #0312 ;установка переменных по данным в CMOS rom4_x0315 equ #0315 ;установка переменных по данным в CMOS rom4_x036C equ #036C ;запись переменных в CMOS и в NVRAM rom4_x0378 equ #0378 ;запись переменных в NVRAM rom4_x0398 equ #0398 ;запись переменных в CMOS rom4_x0512 equ #0512 ;запись на диск сектора с конфигурацией (C. save Set Up to disk) rom4_x057F equ #057F ;распаковка шрифта в rom 8 rom4_x0A5A equ #0A5A ;инициализация системы и печать сооветствующих сообщений rom5_x0110 equ #0110 ;опрос Break. cy=1 не нажата rom5_x011C equ #011C ;опрос манипуляторов и печать курсора rom5_x0176 equ #0176 ;восстановление экрана под курсором мыши rom5_x0381 equ #0381 ;ожидание нажатия клавиш и обработка реакции на них rom5_x043B equ #043B ;ОШИБКА!!!! вызов процедуры по номеру в C rom5_x08EF equ #08EF ;доступность опции K. kempston joystick rom5_x0C22 equ #0C22 ;установка параметров окна для ввода строки в меню монитора rom5_x0EB5 equ #0EB5 ;печать текущего меню монитора rom5_x1061 equ #1061 ;печать закодированного сообщения из hl rom5_x1095 equ #1095 ;заксоренное сообщение rom5_x10AB equ #10AB ;заксоренное сообщение rom5_x11CD equ #11CD ;печать сообщения по номеру в BC rom5_x1A4C equ #1A4C ;печать даты и времени в окне монитора rom5_x1AA6 equ #1AA6 ;читаем время в строку в формате ASCII rom5_x1B18 equ #1B18 ;читаем дату в строку в формате ASCII rom5_x1C0D equ #1C0D rom5_x1C73 equ #1C73 ;ввод текстовой строки в нижней строке экрана rom5_x1C84 equ #1C84 ;инициализация окна ввода rom5_x1CB3 equ #1CB3 ;продолжение ввода строки (вых: hl адрес введенной строки) rom5_x1CB8 equ #1CB8 ;ввод строки (вых: hl адрес введенной строки) rom5_x2054 equ #2054 ;печать рамки вокруг окна rom5_x2278 equ #2278 ;редактирование дампа памяти в окне монитора rom5_x2503 equ #2503 ;монтирование всех образов с винчестера rom5_x25EB equ #25EB ;формирование в буфере xEBF5 списка образов коллекции rom5_x2620 equ #2620 ;формирование в буфере xEBF5 списка подразделов MFS rom5_x271A equ #271A ;подсчет количества подразделов в MFS rom5_x2AA4 equ #2AA4 ;преобразование количества секторов в мегабайты rom5_x302A equ #302A ;декремент (hl)=(hl)-1 rom5_x3052 equ #3052 ;сложение двух 4х байтных чисел rom5_x30B9 equ #30B9 ;идентификация жесткого диска rom5_x30C6 equ #30C6 ;печать окна для тестирования HDD rom5_x30F3 equ #30F3 ;печать кода ошибки винчестера rom5_x3135 equ #3135 ;печать сообщения об ошибке несовпадения данных при чтении/записи на HDD rom5_x3163 equ #3163 ;печать текущего номера цилиндра rom5_x31AA equ #31AA ;удаление всех разделов MBR rom6_x0156 equ #0156 ;печать информации о ловушке rom6_x01E4 equ #01E4 ;установка новой ловушки в отладчике rom6_x0249 equ #0249 ;вывод каталога текущего дисковода (на экран/принтер) rom6_x03A1 equ #03A1 ;печать числа в десятичной системе счисления rom6_x03A9 equ #03A9 ;форматирование/проверка текущей дискеты rom6_x04E5 equ #04E5 ;быстрое форматирование текущей дискеты (очистка каталога) rom6_x064D equ #064D ;установка дескриптора окна: запрос на запись MBR rom6_x066C equ #066C ;установка код дисковой ошибки в переменной для печати числа rom6_x067F equ #067F ;сохранение экрана пользователя на диск rom6_x06A6 equ #06A6 ;печать сообщения об ошибке и продолжение работы монитора rom6_x06AD equ #06AD ;ввод текстовой строки внизу экрана rom6_x074A equ #074A ;ожидание действий пользователя (опрос управления, вывод часов) rom6_x093F equ #093F ;rst 8:db #8B загрузка zs-snap с диска rom6_x0976 equ #0976 ;загрузка zs-snap (S. load ... snap) rom6_x097E equ #097E ;сохранение zs-snap (S. save ... snap) rom6_x0D60 equ #0D60 ;установка п/п jp #addr по адресу xE338 rom6_x0E3B equ #0E3B ;загрузка из ROM-disk rom6_x1108 equ #1108 ;распаковка блока rom7_x01AF equ #01AF ;автостарт с дискеты rom7_x0229 equ #0229 ;вызов функции R8DOS rom7_x0394 equ #0394 ;проверка bit 7,(xFFDC) наличие подключенного образа к текущему дисководу rom7_x0CFF equ #0CFF ;усттановка переменных дисковой BIOS rom7_x0D62 equ #0D62 ;определение наличия NVRAM rom7_x0DAD equ #0DAD ;чтение всей памяти NVRAM в память #7530 rom7_x0DB6 equ #0DB6 ;чтение данных из NVRAM rom7_x0DC7 equ #0DC7 ;запись всей памяти NVRAM из памяти #7530 rom7_x0DD0 equ #0DD0 ;запись данных в NVRAM rom7_x0E72 equ #0E72 ;что-то пишет в NVRAM rom7_x0F55 equ #0F55 ;для сравнения чисел rom7_x0F59 equ #0F59 ;для сравнения чисел rom7_x0F5D equ #0F5D ;деление hl=dehl'/bc rom7_x0FB7 equ #0FB7 ;умножение dehl=de'hl' * bc rom7_x1003 equ #1003 ;копирование из (hl) в (de) 4х байт rom7_x1035 equ #1035 ;сравнение двух чисел в памяти по адресам в de и hl rom7_x1065 equ #1065 ;инициализация дисковода rom7_x107B equ #107B ;инициализация дисковода и настройка на дискету rom7_x1166 equ #1166 ;загрузка очередного дескриптора файла в буфер rom7_x11B0 equ #11B0 ;R8DOS #1B(27) разбор спецификации файла и построение на ее основе блока управления (fcb) rom7_x11D4 equ #11D4 ;открытие файла для внутренних нужд rom7_x11DF equ #11DF ;открыть файл для последующих операций с ним rom7_x1240 equ #1240 ;R8DOS #16(22) чтение очередного байта из файла. файл должен быть открыт как "логический". rom7_x128C equ #128C ;R8DOS #17(23) запись байта в файл. Файл должен быть открыт как "логический" rom7_x1307 equ #1307 ;R8DOS #15(21) закрыть файл, открытый функцией 20 rom7_x1360 equ #1360 ;R8DOS #1E(30) последовательное считывание заданного количества секторов rom7_x1365 equ #1365 ;R8DOS #1C(28) последовательное чтение очередного сектора из файла rom7_x1390 equ #1390 ;R8DOS #1F(31) последовательная запись заданного количества секторов rom7_x1395 equ #1395 ;R8DOS #1D(29) последовательная запись одного сектора из памяти rom7_x1405 equ #1405 ;новое значение указателя в файле R8DOS #22 rom7_x14C0 equ #14C0 ;R8DOS #18(24) удаление файла, адрес спецификации которого задан в регистрах hl rom7_x155A equ #155A ;чтение заголовка первого попавшегося сектора дисковода A rom7_x1572 equ #1572 ;определение наличия interrupt controller rom7_x15C7 equ #15C7 ;определение наличия последовательного порта/модема rom7_x16B9 equ #16B9 ;работа с контроллером прерываний rom7_x1768 equ #1768 ;поиск раздела MFS rom7_x17BB equ #17BB ;чтение в буфер xEBF5 двух первых секторов раздела MFS/подраздела rom7_x17EF equ #17EF ;запись 2х секторов из буфера xEBF5 rom7_x18C0 equ #18C0 ;R8DOS #28(40) подключение раздела к драйверу HDD rom7_x1AB1 equ #1AB1 ;определение адреса начала записи для заданного дисковода в буфере xE5A9 rom7_x1B04 equ #1B04 ;расчет адреса блока описателя заданного дисковода rom7_x1D2A equ #1D2A ;подсчет контрольной суммы и запись сектора из буфера xE5A9 на винчестер rom7_x1D45 equ #1D45 ;запись сектора из буфера xE5A9 на винчестер по адресу в dehl rom7_x1D73 equ #1D73 ;чтение сектора с винчестера в буфер xE5A9 rom7_x1DDF equ #1DDF ;расчет и установка в переменных адреса LBA/CHS в зависимости от настроек rom7_x1E3D equ #1E3D ;чтение сектора 3 в буфер xE5A9 и проверка контрольной суммы rom7_x1E74 equ #1E74 ;R8DOS #22(34) идентификация жесткого диска rom7_x1F08 equ #1F08 ;проверка геометрии винчестера rom7_x1F2D equ #1F2D ;расчет произведения головок и секторов rom7_x1F41 equ #1F41 ;ошибка HDD. вывод сообщения об ошибке в нижней строке монитора rom7_x1F59 equ #1F59 ;чтение ячейки CMOS rom7_x1F76 equ #1F76 ;чтение из CMOS времени и даты, в случае готовности CMOS rom7_x1F93 equ #1F93 rom7_x1FB2 equ #1FB2 ;запись в CMOS времени и даты rom7_x2023 equ #2023 ;запись данных в ячейку CMOS. и запись контрольной суммы в ячейку #3F rom7_x2047 equ #2047 ;определение наличия CMOS rom7_x20F1 equ #20F1 ;тестирование HDD (2. test) (тест на чтение/запись) rom7_x2105 equ #2105 ;тестирование HDD (1. test) (тест только на чтение) rom7_x2422 equ #2422 ;определение наличия SMUC romA_x001B equ #001B ;для провреки размера ПЗУ: выдаст A=2