Вчера поэкспериментировал... Да, это именно эта проблема. Турба в 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 чинить буду).
Добавлено (2007-11-23, 10:02:53)
---------------------------------------------
И вопрос вдогонку. Как на П1024 отключить/включить турбу в Глюке? Когда я экспериментировал, я делал это OUTом из бейсика.
Добавлено (2007-11-23, 10:10:51)
---------------------------------------------
нолька wrote:хотя кроме увеличения объема имеем и более высокую скорость доступа.
Нет. Скорость доступа к флопику зависит от того, с какой скоростью идет обмен данными. А одна и та же хоть на 3.5 мГц хоть на 3000.
Добавлено (2007-11-23, 10:15:22)
---------------------------------------------
DDp wrote:3,5" у меня подключен, ничего такого не замечал. (gnusmaS SFD-321B) (Проверить, что ли другие дисководы)
Проверь, Марку своих скажу. Если очень интересно - подъезжай вечером в Текстильщики, я тебе привезу ВГ93 из одной платы и дисковод (у меня два, грабл на обоих). Только ты мне свою ВГ93 отдай тогда.