操作系统加载相关
; FAT12 软盘标准 DB 0xeb, 0x4e, 0x90 DB "BerBer" ; 启动区的名称可以任意 8字节 DW 512 ; 每个扇区的大小 512字节 DB 1 ; 簇的大续爱 1个扇区 DW 1 ; FAT起始位置 第一个扇区 DB 2 ; FAT个数 2 DW 224 ; 根目录大小 DW 2880 ; 该磁盘大小 2880 DB 0xf0 ; 磁盘种类 DW 9 ; FAT长度 DW 18 ; 1个磁道有几个扇区 DW 2 ; 磁头数 DD 0 ; 不使用分区 DD 2880 ; 重写一次磁盘大小 DB 0,0,0x29 ; 固定 DD 0xffffffff ; 卷标号码 DB "BerBer-OS " ; 磁盘名称 DB "FAT12 " ; 磁盘格式名称 RESB 18 ; 先空出18字节 ; 程序主体 DB 0xb8, 0x00, 0x00, 0x8e, 0xd0, 0xbc, 0x00, 0x7c DB 0x8e, 0xd8, 0x8e, 0xc0, 0xbe, 0x74, 0x7c, 0x8a DB 0x04, 0x83, 0xc6, 0x01, 0x3c, 0x00, 0x74, 0x09 DB 0xb4, 0x0e, 0xbb, 0x0f, 0x00, 0xcd, 0x10, 0xeb DB 0xee, 0xf4, 0xeb, 0xfd ; 信息显示部分 DB 0x0a, 0x0a ; 2个换行 DB "hello, world" DB 0x0a ; 换行 DB 0 RESB 0x1fe-$ ; 填写0x00,直到0x001fe DB 0x55, 0xaa ; 以下是启动区以外部分的输出 DB 0xf0, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00 RESB 4600 DB 0xf0, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00 RESB 1469432
FAT12有很好的格式兼容性,将软盘格式化(不要使用快速格式化)之后,将这段代码写入。再使用这张操作系统软盘重启电脑,就可以看到这个只有一行输出的操作系统了。
作者: AntzUhl
首发地址博客园:http://www.cnblogs.com/LexMoon/
代码均可在Github上找到(求Star) : Github
个人博客 : http://antzuhl.cn/
公众号 |
赞助
支付宝 |
微信 |