Вывод часов на экран можно отключить в config.sys заменив
ECHO 27,'Z',3,11
на
ECHO 27,'Z',3,0
(подробности смотри тут: https://github.com/serge-404/AltairD...rof_cp1251.txt в конце файла в разделе ESC-коды драйвера)
Это выключит вывод на экран часов, но все остальное связанное с Int50Hz останется работать.
Прерывания работают обычно - используется режим IM2, вектора ТОЛЬКО адресные - FF для Int50Hz, FD для RS-232 и т.п. (т.е. не используется заполнение всего блока из 257 байт константой для неподтянутых шин как делают игры, для этого в F-области уже нет места - шина данных ВСЕГДА должна быть подтянута к +5 резисторами).
По прерываннию драйвер обновляет значения счетчиков читая из RTC и периодически выводит на экран в настраиваемой по ESC позиции дополнительным знакогенератором и (вот тут не помню) не Монитором ли (т.к. делать это основным драйвером системы внутри прерывания нельзя). Также, в области F3C0..F3FF на месте каких-то неиспользуемых древнючих переменных Монитора (типа магнитофонных) хранится текущее время - 4 байта в формате даты MS-DOS, обновляемое по прерыванию (это было нужно мне для UZIX). Поэтому наверное зависит и от типа Монитора F800, на мониторах отличных от М3 (переменные которого использовались как ориентир) вполне может глючить.
Также, замечено такое: на ОрионеПРО (его штатном Нортоне) и в АльтаирДОС используется не совпадающий между собой режим ВИ1 - ЕМНИП у ПРО двоично-десятичный, а у АльтаирДОС - двоичный, и они друг другу переустанавливают настройки ВИ1.
Пишите больше про исходные вводные, зависимостей одного от другого много, а я таки не телепат.
Что я бы сделал впервую очередь (если ШД подтянута, часы ВИ1 исправны и вообще аппаратура не вызывает сомнений): всё что используеутся на реале (в .ч. и Монитор) запустить в эмуляторе и проверить будет ли глюк воспроизводиться там.
Кстати, получилось ли с HDD?






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