Прерывания разрешают функции чтения и записи сектора на диск в конце своего выполнения. Там на входе стоит DI, на выходе EI.
Функции обслуживания Magic прерываний не разрешают, но у них есть недостаток: при возникновении любой ошибки на диске они тупо делают 20 попыток затем зависают (HALT). Никаких запросов, ничего.
Возможно забыл еще какие-то места, но вроде нет.
Проблема решается просто: регистром I указываем на ПЗУ. Получаем два различных обработчика прерывания. Один из них вызывается из ПЗУ бейсика-48, второй из TR-DOS. Второй должен возвращаться по EI: JP #3D2F.
На старых машинах с нестабильной шиной данных (на которой в пассивном состоянии не #FF) к сожалению это работать не будет.




Ответить с цитированием
Размещение рекламы на форуме способствует его дальнейшему развитию 
