С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Если номера портов известны, задача упрощается
Читать можно как-то так:
в CX указываем размер буфера
в ES: DI указываем адрес буфера
...и поехали:
Код:mov al, <номер дорожки> out 10Dh, al mov al, E0h ;команда чтения дорожки out 102h, al next_byte: in al, 10Fh stosb dec cx jnz next_byte
Поиск-1, Поиск-2, Парус ВИ-201, Олимпик-С, Электроника МК61
sergei, вот ещё игра Karateka. Она должна работать на МС1502.
Форматирование - это как раз запись на дискету всех тех служебных областей. А производится она с помощью "сырой записи", в этом случае ВГшка просто пишет на диск всё подряд, начиная от обнаружения индексного отверстия. Т.е. код в BIOS формирует структуру заголовков дорожки, секторов, контрольные суммы, и всё это одним потоком скармливает контроллеру, который переносит его на диск.
Соответственно, сделать точную копию защищенной дискеты - да, можно.
Поиск-1, Поиск-2, Парус ВИ-201, Олимпик-С, Электроника МК61
DrPass, было бы лучше, если бы в буфер прочиталась дорожка полностью. То есть надо как-то определить конец дорожки. То ли по индексному отверстию, то ли по повторению последовательности байтов.
---------- Post added at 21:11 ---------- Previous post was at 21:02 ----------
Кстати, программа FDA умудряется как-то хитрым путём читать дорожку полностью на ВГ72. Она как-то хитро область данных "двигает" вдоль дорожки, а потом собирает результат по кусочкам.
Последний раз редактировалось SoftCat; 15.02.2014 в 21:13.
Поиск-1, Поиск-2, Парус ВИ-201, Олимпик-С, Электроника МК61
Кстати, интересный факт из документации к 1502
Т.е. пока нет данных от ВГ93, процессор не исполняет команды вообще.Схема управления обменом синхронизирует прием/передачу данных между ЦП и накопителем с помощью сигналов RDY и DRQ. При обращении ЦП к порту состояния DRQ происходит снятие готовности [RDY] и процессор ожидает прихода сигнала DRQ. При появлении (запросе) очередного байта данных готовность подставляется и процессор продолжает выполнение команд. В случае отсутствия данных готовность будет подставлена сигналом INTRQ или MOTOR ON.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)