Вчера проанализировал все и вся и вот в чем корень зла: TR-DOS в турбо-режиме. Есть два способа исправления: либо DDp вернет отключение турбы либо поправить код TR-DOS, увеличив таймауты.
Ниже копия сообщения, отправленного на форум dlcorp (похоже из нормальных людей его никто не читает ):

Вчера поэкспериментировал... Да, это именно эта проблема. Турба в TR-DOS.
Кстати с официальной прошивкой от KOE грабл тоже есть, но диск распознается после 3-4 попыток. После этого все нормально. А вот видеосигнал там действительно поганый - моя карточка AVerTVStudio теряет кадровую синхру при белом фоне. С DDp-шной прошивкой такого нет.
Я догадываюсь что грабл лежит здесь:
--- cut ---
Адрес 15789. Проверка наличия диска в дисководе. Никаких устано-
вок не требуется.

15789 LD A,8 ;команда восстановления
CALL 15770 ;выдача команды и ожидание INTRQ
LD DE,0 ;за 65536 проходов индексный сигнал должен измениться
IN A,(31) ;берем индексный сигнал для образца
AND 2
LD B,A ;запоминаем его
15802 IN A,(31) ;берем его снова
AND 2
CP B ;он изменился ?
RET NZ ;если да, то возврат
INC DE ;следующая попытка
LD A,E ;попытки кончились
OR D
JR NZ,15802;если нет, то повтор
JP 16103 ;обработка ошибки NO DISC
--- cut ---
При включенной турбе таймаут пролетает слишком быстро. Видимо у 3.5" приводов скорость вращения меньше. А вот судя по дальнейшему поведению (после инициализации привода) функция чтения данных в TR-DOS v6 изменена. В оригинале (v5.04T) :
--- cut ---
Адрес 16314. Запись данных на диск. Установите в HL адрес блока
данных, в DE - число, определяющее количество циклов, за которое
должна начаться запись, в C - адрес регистра данных контроллера
и отдайте команду записи. Используется также с адреса 16330 (то
же, что и 16314, но без обработки NO DISC).

16314 LD B,4 ;установка количества попыток
16316 IN A,(255) ;поступил какой-нибудь сигнал ?
AND 192
JR NZ,16337;если да, то начинаем запись
INC DE ;следующая попытка
LD A,E
OR D
JR NZ,16316
DJNZ 16316
RET ;если попытки кончились, то возврат
16330 IN A,(255) ;поступил какой-нибудь сигнал ?
AND 192
JR Z,16330 ;если нет, то ожидание его
RET M ;если поступил INTRQ, то возврат
16337 OUTI ;вывод байта из вашей области в регистр данных
JR 16330 ;повтор
--- cut ---
Я не смотрел v6, но такое впечатление что начальный таймаут убран. После первого обращения к дисководу если из него вытащить диск, то он будет сколь угодно долго крутиться, пока диск не вставят. No Disc не выдается.
AlCo, ваши комментарии по вопросу? Я могу поучаствовать в исправлении прошивки, но не сейчас (времени нет ваще плюс еще свой Пент-128 чинить буду).