
При включении питания с ПЗУ из вложения (М37ZRKR.BIN) имеем пошагово:

1. Проверяется нажатие любой кнопки, если нажато - переход в командный режим.
   В командном режиме действуют диррективы:
[CODE]
R<address> - загрузить по XMODEM файл на указанный адрес (от 0000 до EFFF)
G<address> - передать уравление по указанному адресу 
директивы без параметров по умолчанию работают с адресом 0
[/CODE]

    Прочие директивы реализованы в стародавнем ленинградском Мониторе-Ext 
(см. во вложении, там же описание от В.Чистякова, раритет, датировано 1991 годом :) ).
Кому нужен расширенный режим директив Монитора, тот первым подгрузит Монитор-Ext по 
RS-232 и получит за счет "расширителя" множество "встроенных" директив (и даже лишку :) ).
.
2. Если кнопка не была нажата, то в ROM-диске проверяется наличие ORDOS или ROM-программы:
2.1. Если первый байт "0С3h" - значит в ПЗУ ОРДОС V4.x : запускаем ORDOS. 
2.2. Если первый байт "FF" - ПЗУ пустое: переход на RS232-BOOT. 
2.3. Если в ПЗУ любой другой байт (не 0С3h и не 0FFh), то он расценивается как наличие в
     ПЗУ ROM-диска новых параметров загрузки (8-байтового описателя ROM-программы), где: 
[CODE]
 {0..1} 2 байта - адрес передачи управления после загрузки ROM-программы в ОЗУ
 {2..3} 2 байта - адрес начала ROM-программы в ПЗУ (параметр "откуда копировать")
 {4..5} 2 байта - адрес загрузки в ОЗУ (параметр "куда копировать")
 {6..7} 2 байта - количество загружаемых байт (параметр "сколько копировать")
 {с адреса (2..3) и далее} собственно исполняемый/загружаемый код
[/CODE]
.
3. Если первый байт ПЗУ "FF" (ПЗУ пустое, п.2.2), то запускается загрузчик по RS-232,
   который ожидает начало передачи (тут ожидание можно прервать по любой символьной
   кнопке), затем загружает файл по XMODEM на адрес 0 и выше (но не более чем до 0EFFFh)
   и передает управление на 0. Загрузка по нажатию кнопки не прерывается.
.
Если необходимо прогрузить файл или передать управление по отличающимся от 0
адресам, то нужно выйти в командный режим (п.1) и выполнить команды R и G Монитора.
Пример: для загрузки Mонитора-расширителя (EXT-13.BIN во вложении) нужно выполнить
команды  "RB800", "GBFFD". Они выполнят загрузку файла на адрес 0B800h и передачу
управления на адрес 0BFFDh.
.
Скорость порта в Мониторе всегда 9600 бод. Если нужно отличное от этого значение,
то надо перекомпилировать Монитор, предварительно соответственно исправив константу 
UART_SPEED.
.
В Мониторе есть доп. точка входа: 0F834h - загрузка файла по XMODEM, входной
параметры - начальный адрес загрузки в регистре HL, в регистре A - символ 
"прогрессбара", подпрограмма нарисует его если A<>0. Подпрограмма не перепрограммирует
порт управления RS-232, т.е. перед ее вызовом можно установить любую скорость порта.
Примечание (может быть неудобством): подпрограмма рисует "прогрессбар" символами #.  
.
Монитору присвоен индекс (версия) V3.7 (содержится в ячейках 0F842h..0F845h).
Это нужно проверять перед вызовом подпрограммы 0F834h для того, чтобы отличать
версии, содержащие по адресу 0F834h другие подпрограммы (например, чтение
сектора с IDE/SD в мониторах V3.5, V3.6)
.
О неприятном: при добавлении функционала несколько подрезался знакогенератор 
(в части русских букв). Что не видится проблемой, ибо KOI7 все равно малопригоден
для чего либо кроме начальной загрузки. Также, можно иметь в ОРДОС (например,
из ROM-ДИСКа) файлик с полным знакогенератором. Он займет в ROM-ДИСКе всего
784 байт (см. во вложении koi7-fnt.ord), подгружать его по необходимости очень
просто - одно нажатие Enter в оболочке Ордос VC$ или через механизм EXT$.
