我有一个用汇编语言编写的第一阶段引导加载程序。我需要它从 DVD(或 CD)加载第二阶段引导加载程序。我只找到了从软盘或硬盘读取的示例。那里使用的中断是13h。在中断描述中它说它可以读取软盘和硬盘。我尝试使用 13h 来读取 CD,就好像它是软盘一样,但它不起作用。
问题:软盘和 DVD 之间有区别吗(在访问它们的意义上),我可以使用 CHS(磁头,磁头,扇区),扇区大小是多少,我可以使用 13h 指令正确读取 DVD。也许一些例子。我查看了 LILO 的源代码,发现只有 13 小时,所以它一定可以工作。谢谢。
您可以使用以下命令从可启动软盘映像文件制作可启动 CDmkisofs工具。
下面是我在 Windows 下的操作方法:
- 创建一个子目录,
CdFiles
,包含可启动软盘映像
文件,floppy.img
(1474560 字节长),以及我发现的任何其他文件
想要在CD上。
mkisofs.exe -b floppy.img -v -r -l -o cd.iso CdFiles
它将创建一个 CD ISO 映像文件,cd.iso
,您可以将其刻录在 CD 上并从磁盘启动,也可以在任何 PC 模拟器中使用并直接从映像启动。
BIOS 将模拟 CD 上的软盘驱动器,其内容为floppy.img
并且它将能够使用驱动器号 0 通过 int 13h 正常访问自身。为了通过 int 13h 访问整个 CD,您将需要创建一个硬盘驱动器映像(可引导)并指定不同的模拟方法(不知道如何用 mkisofs 来做,从来没有尝试过硬盘图像)。同样的情况也会发生,但现在将在 CD 顶部模拟一个硬盘驱动器,并且对于 int 13h,驱动器号将是 80h。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)