С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
За 2 дня терзаний и поисков так и не смог разобраться с одной проблемой.
Итак. Имею написаный (точнее недописанный) мною эмуль TRDOS на AVR и SD-card.
После нескольких команд поиска дорожки следуют 2 раза команды чтения адреса.
Потом спек пытается прочитать 9 сектор 0 дорожки стороны 0.
И вот тут проблема: после принятия спеком 256 байтов сектора спек читает
из порта #1F значение 0x00 (ошибок нет) и TRDOS вываливает ошибку "Disc Error"
Спектрумисты! Писатели эмулей! Кто нибудь, кто в теме....
В чем может быть проблема?
Подробный лог выполнения команды "LIST" и TRD-файл, с которым была
работа, прилагаются.
TRD-файл легко проверяется в любом эмуляторе, к нему никаких претензий нет.Сообщение от ILoveSpeccy
LOG-файл, тут я не понял как он получен, если в эмуляторе, то почему система выдает ошибку?
Было бы лучше, если бы ты привел содержимое 256-ти байтного буфера после выполнения команды чтения 9-го сектора.
"Disc Error" похоже выдается именно из-за ошибки в структуре этого сектора.
TRD-файл проверен. В эмуляторе нормально работает (Spectaculator и UnrealSpeccy)
LOG получен от микроконтроллера, через RS232.
Контроллер выплёвывает все обращения спека к портам TRDOS.
Итак. Просмотрел все 256 байт 9 сектора.
Контроллер передал в спек всё как надо.
Тоесть именно 9 сектор. именно байты с 0 до 255.
Скорее всего проблема в чём-то другом.
p.S... моё устройство состоит из микроконтроллера AVR ATMega32 и SD-карты...
Тоесть мега эмулирует ВГ93, а данные берутся из TRD-файла на SD-карте
Последний раз редактировалось ILoveSpeccy; 24.01.2008 в 21:28. Причина: Добавлено сообщение
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)