Цитата Сообщение от zebest Посмотреть сообщение
это я понимаю. Тут важен сам факт, что эмуль висит при переходе в ТРДОС, даже без образа диЦкеты. Или мы разные эмуули запускаем, вот в чОм вопрос....
при переходе в трдос у скорпиона несколько необычная процедура для вг93 выполняется, без задержек (nodelay) она зависает...

---------- Post added at 23:30 ---------- Previous post was at 23:26 ----------

Цитата Сообщение от Faster Посмотреть сообщение
Сейчас более досконально проанализировал работу загрузчика. В общем, в процедуре гашения лампочки дисковода (торможение диска) используется вот такой вот алгоритм:
Код:
xor a - гасим лампочку, bit 3 загрузки головки выставляем в 0
out (#1f),a
ld a,#d0 - принудительно прерываем выполнение команды
out (#1f),a
ret
Далее, когда загрузчик пытается загрузить новую часть демо, то turbo loader виснет на процедуре #3fe5 при чтении порта #ff в ожидании сигнала intrq, судя по всему. Вроде бы так. Это актуально для эмулятора Unreal, но, судя по всему и для ZXMAK2 тоже.
скорей всего загрузчик расчитывает на приход прерывания индексного отверстия, т.к. после отключения мотора диск все-еще крутится по инерции. нужно проверить, но похоже в эмуляторе вг93 эта инерция при отключении двигателя не предусмотрена и получается что индексное прерывание после отключения двигателя уже никогда не приходит...