Ошибочка при исполнении этой команды:
HDD COMMAND 20 (READ MULT): C=0, H=3, SN=26, SC=33
Здесь запрашивается чтение файла операционной системы : читается с блока 0176(8) 020142(8) слов по адресу 0117270(8). Соответственно с адреса 117270 по 130267 данные расположены на 0-м цилиндре 3-й стороны, с адреса 130270 должно читаться с 1-го сектора 4-й стороны 0-го цилиндра, а фактически начинает читаться с 34-го сектора 3-й стороны 0-го цилиндра, т.е. неправильно осуществляется переход на следующую сторону/цилиндр.

Нашел ошибку в void CHardDrive::NextSector() : при переходе на следующую сторону надо m_cursector = 1;, а не 0. Загрузилась система, но эмулятор вылетел по ошибке - нет отработки команды с кодом 30 (собирал как Release, а не Debug).