Я отлаживаю необычное загрузочное устройство в режиме MBR (без EFI) на x86 P C.
IPL
в MBR -> exoti c BootManager
* -> Partiton Boot Sector
-> экспериментальный OS
Я написал примитивный 512-байтовый загрузочный сектор раздела (PBR) в 16-битной реальной сборке x86
, в которой для отображения используются сервисы int 10h
B IOS 16-битные регистры, которые передаются ему. Он хорошо работает для отладки.
Я хотел бы улучшить свой отладочный PBR, чтобы он также отображал информацию о режиме ЦП, т.е. о том, переключил ли BootManager ЦП в защищенный режим (32-разрядный или 64-разрядный). Мне нужна эта информация для целей отладки.
Как надежно определить Protected Mode
(и его тип) в этом сценарии?
- BootManger расположен в секторах между MBR и 1-м разделом и перехватывает / эмулирует B / 1028 * службы / прерывания - я видел, что он указывает
int 13h
вектор к себе в отладчике