
Сообщение от
barsik
Вообще-то до этого был цикл ожидания RDY с ограничением времени в 2 секунды, чтобы спустя 2 секунды неготовности выдать надпись BAD SECTOR (или что-то подобное).
Вообще-то я так и написал :-

Сообщение от
barsik
до этого был цикл опроса RDY,
, что и есть ожидание RDY, и не 2 сек, а от FFFFh до 0000h в цикле(в сторону уменьшения), длительость цикла и такты не считал, но явно по ощущениям меньше 2-х сек.
вот фрагмет из ваших текстов:
Код:
READY:
LD HL,0
RDYLOO:
IN A,(0F1H) ; *****
LD A,(PORT+1)
AND RDYMSK
RET Z
DEC HL
LD A,H
OR L
JR NZ,RDYLOO
LD A,3
JP PR_ERN
;────────────────────────────────────────────
Т.к. RDY припаян к земле, то из цикла выскакивает при первом проходе, а дисковод еще не готов !
Что я сделал :
Код:
READY:
LD HL,1FFFh
RDYLOO:
DEC HL
LD A,H
OR L
JR NZ,RDYLOO
IN A,(0F1H) ; *****
LD A,(PORT+1)
AND RDYMSK
RET Z
LD A,3
JP PR_ERN
;────────────────────────────────────────────
Все тоже самое, только местами поменял и вместо 0000h-1 поставил 1FFFh

Сообщение от
barsik
Вы ввели просто паузу, удлинив п/п-мму READY до секунды.
Я просто дал время дисководу равное циклу 1FFFh для того что бы он был готов, и потом запрашиваю RDY и т.к. он на земле т.е. всегда готов и дисковод уже готов, то все работает и так же есть возможность аппаратной доработки сигнала(если не на земле а через хитрую схемку)
На счет раскрутки все равно надо 500мс, какая разница дос будет ждать раскрутки 500мс или просто ждать 500мс и потом читать RDY ?
Сигнал опрашивается один раз за сеанс , потом другие запросы , INDEX и тд. У меня все работает без тормозов, я не собираюсь тиражировать диски на микроше, что бы раз в сек опрашивать RDY, да и во всех программах что я просмотрел сигнал опрашивается один раз за сеанс при инициализации дисковода
- - - Добавлено - - -

Сообщение от
barsik
чтобы спустя 2 секунды неготовности выдать надпись BAD SECTOR (или что-то подобное)
Не правда. Причем тут RDY и BAD SECTOR. Здесь пишут,и у меня раньше было I/O ERR

Сообщение от
barsik
А чем Вас не устроил вариант с эмуляцией READY из сигнала INDEX?
Работа ,
не успел еще проверить ваш вариант.
Параллельно орион собираю.
И я вообще думал заменить проверку флага RDY на флаг INDEX
Но времени нет особо для отработки мыслей. Как время будет,попробую Ваш вариант и отпишусь.