Огромное спасибо!
Тперь все стало понятно!
Для тех кого тоже задела эта тема привожу данные!
+++++++++++++++++++++++++++++++++++++
Это обычный бинарник (любой), содержащий программу для Z80. Автозагрузчик в
ПЗУ (или в COM-файле в TASiS) загружает его по адрему #6000 и
запускает его (следовательно, эта программа должна быть
откомпилирована под адрес #6000). Все дальнейшее - дело самой
программы. Что в нее вложит программист, то и получится.
программное
содержимое файла autorun.zx может быть любым,
при условии автостарта с
адреса #6000 и учета текущей запрограммированной архитектуры компа. А
она в момент запуска следующая:
Диспетчер памяти настроен за стандартную ZX-конфигурацию. Текущее ПЗУ
- бейсик-48 (в порт #7FFD записано число #10).
Режим прерываний - IM 1. Сами прерывания запрещены. Регистр I=3F.
стек: SP=#6000 (загрузчик передает управление "авторану" так:
устанавливает SP=#6000, кладет на него число #6000 и делает RET).
Экран - стандартный, спектрумовский (атрибуты сброшены в ноль).
PC-клавиатура принудительно переведена в режим эмуляции механической
клавиатуры ZX (так что смело использую стандартные методы опроса
клавы через порты #xxFE). Правда, не установлена область системных
переменных бейсика и TR-DOS. Так что если они очень сильно
понадобятся, то неплохо бы иметь их копию (315 байт) в своем
AUTORUN.ZX и устанавливать по ходу дела на свои законные адреса.
Расширенные порты ATM закрыты.
Кроме того, в ряд регистров предаврительно записаны входные данные,
абсолютно не обязательные для работы программы, но могущие пригодится
по усмотрению программиста. Вот они:
A= #B0 (slave)
HL= #0008 доступные видеорежимы (EGA 320х200)
DE=#00fb ;звук и язык
BC=#0101 ;контроллер и клон (ATM IDE/Turbo 2+ (v7.xx))




Ответить с цитированием