Эту версию я планирую именно на замену 5.04T. Т.е. по сути это оно же, но с исправленными ошибками. Пока весь протестированный софт работает, всё что было указано выше идёт. Я пересмотрел весь код на предмет не соотвествий, вернул назад то, что можно было не менять (в части мест для печати строк используется прямой call вместо rst 24, хотя понятно, что rst сделали для уменьшения объёма кода).
А вот уже в следущей версии, в которой я хочу сделать поддержку винта - придётся выпилить всё что можно. Тестовые варианты я уже делал, становилось свободными с учетом того что уже было свободно - 8К. Магик выпилил тоже. Конечно весь софт, который в него лез - уже перестает работать. Да, надо сделать функции для определения версии, функции для прямого чтения секторов и т.д. и т.п. всё то, зачем лазили программы. Самый необходимый софт можно будет адаптировать в эту новую прошивку. Часть программ есть в исходниках.
Для проверки на реале я так и сделал. Записываю во флешку 2 прошивки по 64К. С разными вариантами trdos. переключение кнопкой.
Конечно. Ведь по приходу NMI в стек как минимум занесётся адрес возврата. А вот если сделать аппаратные изменения (например подменив все 64К на статик ОЗУ, в который сохранится PC, потом подключить ПЗУ с 0 адреса и запустить обработчик, он уже может снять адрес возврата из статик ОЗУ) - то вполне можно сделать чистый z80. Всё это слишком сложно, да и нужны такие модификации. Если пойти более простым путем - да получим не совсем чистый z80, ну и что? И работать он будет далеко не всегда (достаточно иметь SP=0000..3FFF), но вполне юзабельно будет.







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