Давай сделаем по этапам.
Для начала надо реализовать команду IDENTIFY DEVICE (0xEC)
Она должна возвращать один блок 512байт. Который содержит информацию о диске и самое главное его геометрию. Лучше конечно сделать что-бы она генерировалась динамически в зависимости от размера образа диска. Примеры можно посмотреть у nzeemin, класс CHardDrive::IdentifyDrive() в его ссылке или функция IdentifyDevice здесь: https://github.com/mist-devel/mist-f...b/master/hdd.c
И проверить ее работу можно на Неоне утилитой.
https://github.com/troosh/pk11-16/bl.../HDD/IDENT.MAC
Когда это заработает можно начать делать команду чтения блока.
Готового образа диска нету в принципе, но он и ненужен пока.





Ответить с цитированием