Собственно только сам биос (b52m) выполняет системную загрузку и обслуживание минимального набора функций (та же печать строк в окне терминалки ПК)...
Для практического применения и разработок программ пользователя надо еще одну системную прокладку добавить...
Та драйверюка обеспечивает уже загрузку как файлов данных, так и программ пользователя/командных блоков.
Загружается этот файлик - kotios.hex с помощью загрузчика биос вручную пользователем при помощи терминала как любой иной файлик.
А далее именно kotios принимает на себя роль диспетчера загрузки.
Собственно примерно так и в DOS делается.
Исходник kotios в папке librus содержит файлик ldu_ios.txt, содержимое которого должно или добавляться в конец файла программы пользователя или использоваться как главная заготовка в командном файле.
Программа пользователя должна включать в себя еще и содержимое файлов описания ресурсов с учетом биос и kotios - это файлики
dfn_ios.txt и mac_ios.txt с дополнительно раскомментированным в таком случае участком в начале dfn_ios.txt
Собственно kotios предназначен для случая, когда системная карта ресурсов определена следующим образом:
0x0000-0x1FFF = bios b52m в Резидентной Памяти Программ
0x0000-0x1FFF = исключительно Внешняя Память Данных (режим автопереключения РПП/ВПП)
0x2000-0xFBFF = совмещенная область Внешней Памяти Программ/Данных - программы пользователя
0xFC00-0xFEFF = совмещенная ВПП/ВПД - область размещения kotios
0xFF00-0xFFEF = совмещенная ВПП/ВПД - область переназначаемых векторов прерываний для неиспользуемых b52m аппаратных ресурсов
0xFFF0-0xFFFF = совмещенная ВПП/ВПД - область системного переключателя key_proc (обеспечивает режим полной ВПП/ВПД при загрузке из b52m)
Для того, чтобы компилятор c51asm разрешил использовать память программ в диапазоне 0x0000-0xFFFF и сохранил специфику AT89S52 в папке baseinc добавлен файлик kotuinko.inc, который и следует использовать при написании программ пользователя.
Собственно текущая версия проекта:
схема основного модуля
https://img.radiokot.ru/files/20529/2isv0psq7y.JPGдополнительная периферия
https://img.radiokot.ru/files/20529/2isualz5za.GIFпреобразователь для RS232 (избыточный - достаточно простого, но использовано то, что уже было ибо имелась возможность воткнуть кнопу программной перезагрузки без лишних монтажных работ)
https://img.radiokot.ru/files/20529/2isuacqsdn.GIFобщая схема межблочных соединений:
https://img.radiokot.ru/files/20529/2isuu7kb9k.JPGбиос b52m
его прошивайка на ардуино-нано
прошивка монитора питания и сброса на аттини13
блок системного ввода/вывода kotios
Для проекта upgm_mx (чуток ранее выложенного в
https://radiokot.ru/forum/viewtopic.php ... 7#p4033937) изменений не имеется - там прототип котиуса встроен в состав PGX051mx, правда в двух разных файлах и в другой зоне адресов - то уж останется пока как было.
Примеры применения будут чуток позже.