繁体   English   中英

如何在软盘上测试我的引导程序

[英]How do I test my bootloader on a floppy disk

这是我的代码: http : //pastebin.com/pSncVNPK

    [BITS 16]           ;Tells the assembler that its a 16 bit code
    [ORG 0x7C00]        ;Origin, tell the assembler that where the code will
                        ;be in memory after it is been loaded

    MOV SI, HelloString ;Store string pointer to SI
    CALL PrintString    ;Call print string procedure
    JMP $       ;Infinite loop, hang it here.


PrintCharacter: ;Procedure to print character on screen     
                ;Assume that ASCII value is in register
    AL MOV AH, 0x0E ;Tell BIOS that we need to print one charater on screen.
    MOV BH, 0x00    ;Page no.
    MOV BL, 0x07    ;Text attribute 0x07 is lightgrey font on black background

    INT 0x10    ;Call video interrupt RET       ;Return to calling procedure



PrintString:    ;Procedure to print string on screen
                ;Assume that string starting pointer is in register SI

next_character: ;Label to fetch next character from string
    MOV AL, [SI]    ;Get a byte from string and store in AL register
    INC SI      ;Increment SI pointer
    OR AL, AL   ;Check if value in AL is zero (end of string)
    JZ exit_function ;If end then return
    CALL PrintCharacter ;Else print the character which is in AL register
    JMP next_character  ;Fetch next character from string
exit_function:  ;End label
    RET     ;Return from procedure


    ;Data
    HelloString db 'Hello World', 0 ;HelloWorld string ending with 0

    TIMES 510 - ($ - $$) db 0   ;Fill the rest of sector with 0
    DW 0xAA55           ;Add boot signature at the end of bootloader

如您所见,语法似乎是正确的,将其编译为.bin文件,但我试图弄清楚如何对其进行测试。 请把我当做我有点慢,因为我花了HOURS来搜索这个主题,而且似乎没有任何效果,我甚至按照某些教程尝试使用了十六进制编辑器,但没有用。 这似乎是我使用这些说明最接近的方法: http : //puu.sh/6KzUo.png

从此链接: 如何制作可引导的iso(非cd或闪存驱动器)以测试您自己的引导加载程序?

除非我不太了解步骤6,否则因为VM框不允许我选择img文件作为可引导磁盘。

谢谢!

如果您只需要在磁盘控制器中添加软盘,这是这样做的方法:

单击软盘控制器。 选择的左侧应该出现带有绿色加号的软盘图标。 单击此小图标。

在此处输入图片说明


现在应该出现一个对话框:

在此处输入图片说明

选择“选择磁盘”

将出现文件选择框-此时,从文件选择框中选择您的.img文件。

在此处输入图片说明

从这一点开始,您应该能够从软盘引导虚拟机并测试引导程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM