Можно в спецификации посмотреть: ATA-3
Или у Кулакова в "Программирование на аппаратном уровне" и "Программирование дисковых подсистем". Там же есть хорошее описание MBR и различных типов FAT.

---------- Post added at 13:16 ---------- Previous post was at 13:04 ----------

Цитата Сообщение от ivagor Посмотреть сообщение
Опрос HDD из бейсика - прикольно. На векторе я разве что головами fdd двигал из под бейсика.
Кстати, тот редкий случай, когда васик оказался полезней асма
Уже не знал что думать, почему винт выдает липу. От нечего делать прямо на "суре" накрапал простой опрос портов 50h-57h, да вывод на экран. Гляжу, значения вроде нормальные. Послал команду out &H57, &HEC и считал несколько десятков слов из 50h и 58h. Вроде совпадают с ожидаемыми, только почему то явно не на своих местах, то есть как будто часть данных пропущена. Так и допер, что дело в помехах и что нужно поставить кондеров по питанию микрух. И ведь помогло!
Сейчас вот думаю, может платку развести под это дело? А затем уж к подпрограммам чтения/записи переходить?