找出在 x86 引导加载程序中引导的驱动器

Gui*_*ido 1 x86 interrupt bios drive bootloader

我正在为 x86 编写游戏引导程序。有一次,在启动初期,我需要将启动驱动器中的一些扇区加载到内存中。我用中断 0x13 (ah=02) 来做到这一点,当我在我的虚拟机中尝试它时,它就像一个魅力。但是,当我将映像刻录到 USB 驱动器时,机器无法启动,我将其固定到扇区加载指令,显然我的 USB 驱动器不是驱动器 0(软盘 A),因此读取失败。

如何确定用于启动的驱动器?

谢谢!

Paw*_*pak 5

BIOS 加载驱动器引导加载程序的数量从注册加载dl。来源:OSDev WikiMBR Bootstrap部分。