diff --git a/01_day/helloos.nas b/01_day/helloos.nas index d44b3d1..16877c7 100644 --- a/01_day/helloos.nas +++ b/01_day/helloos.nas @@ -1,29 +1,29 @@ ; hello-os ; TAB=4 -; Stand FAT12 format floppy code ?�yFAT12ŠiŽ®???—p‘ã? +; 标准FAT12æ ¼å¼�软盘专用的代ç � Stand FAT12 format floppy code DB 0xeb, 0x4e, 0x90 - DB "HELLOIPL" ; ƒu�[ƒgƒZƒNƒ^‚Ì–¼‘O‚ðŽ©—R‚É�‘‚¢‚Ă悢�i8ƒoƒCƒg�j - DW 512 ; 1ƒZƒNƒ^‚̑傫‚³�i512‚É‚µ‚È‚¯‚ê‚΂¢‚¯‚È‚¢�j - DB 1 ; ƒNƒ‰ƒXƒ^‚̑傫‚³�i1ƒZƒNƒ^‚É‚µ‚È‚¯‚ê‚΂¢‚¯‚È‚¢�j - DW 1 ; FAT‚ª‚Ç‚±‚©‚çŽn‚܂邩�i•�’Ê‚Í1ƒZƒNƒ^–Ú‚©‚ç‚É‚·‚é�j - DB 2 ; FAT‚ÌŒÂ�”�i2‚É‚µ‚È‚¯‚ê‚΂¢‚¯‚È‚¢�j - DW 224 ; ƒ‹�[ƒgƒfƒBƒŒƒNƒgƒŠ—̈æ‚̑傫‚³�i•�’Ê‚Í224ƒGƒ“ƒgƒŠ‚É‚·‚é�j - DW 2880 ; ‚±‚̃hƒ‰ƒCƒu‚̑傫‚³�i2880ƒZƒNƒ^‚É‚µ‚È‚¯‚ê‚΂¢‚¯‚È‚¢�j - DB 0xf0 ; ƒ�ƒfƒBƒA‚̃^ƒCƒv�i0xf0‚É‚µ‚È‚¯‚ê‚΂¢‚¯‚È‚¢�j - DW 9 ; FAT—̈æ‚Ì’·‚³�i9ƒZƒNƒ^‚É‚µ‚È‚¯‚ê‚΂¢‚¯‚È‚¢�j - DW 18 ; 1ƒgƒ‰ƒbƒN‚É‚¢‚­‚‚̃ZƒNƒ^‚ª‚ ‚é‚©�i18‚É‚µ‚È‚¯‚ê‚΂¢‚¯‚È‚¢�j - DW 2 ; ƒwƒbƒh‚Ì�”�i2‚É‚µ‚È‚¯‚ê‚΂¢‚¯‚È‚¢�j - DD 0 ; ƒp�[ƒeƒBƒVƒ‡ƒ“‚ðŽg‚Á‚ĂȂ¢‚̂ł±‚±‚Í•K‚¸0 - DD 2880 ; ‚±‚̃hƒ‰ƒCƒu‘å‚«‚³‚ð‚à‚¤ˆê“x�‘‚­ - DB 0,0,0x29 ; ‚æ‚­‚í‚©‚ç‚È‚¢‚¯‚Ç‚±‚Ì’l‚É‚µ‚Ä‚¨‚­‚Æ‚¢‚¢‚炵‚¢ - DD 0xffffffff ; ‚½‚Ô‚ñƒ{ƒŠƒ…�[ƒ€ƒVƒŠƒAƒ‹”Ô�† - DB "HELLO-OS " ; ƒfƒBƒXƒN‚Ì–¼‘O�i11ƒoƒCƒg�j - DB "FAT12 " ; ƒtƒH�[ƒ}ƒbƒg‚Ì–¼‘O�i8ƒoƒCƒg�j - RESB 18 ; ‚Ƃ肠‚¦‚¸18ƒoƒCƒg‚ ‚¯‚Ä‚¨‚­ + DB "HELLOIPL" ; å�¯åŠ¨æ‰‡åŒºå��称(8字节) + DW 512 ; æ¯�个扇区(sector)大å°�(必须512字节) + DB 1 ; 簇(cluster)大å°�(必须为1个扇区) + DW 1 ; FATèµ·å§‹ä½�置(一般为第一个扇区) + DB 2 ; FAT个数(必须为2) + DW 224 ; 根目录大å°�(一般为224项) + DW 2880 ; 该ç£�盘大å°�(必须为2880扇区1440*1024/512) + DB 0xf0 ; ç£�盘类型(必须为0xf0) + DW 9 ; FAT的长度(必??9扇区) + DW 18 ; 一个ç£�é�“(track)有几个扇区(必须为18) + DW 2 ; ç£�头数(必??2) + DD 0 ; ä¸�使用分区,必须是0 + DD 2880 ; é‡�写一次ç£�盘大å°� + DB 0,0,0x29 ; æ„�义ä¸�明(固定) + DD 0xffffffff ; (å�¯èƒ½æ˜¯ï¼‰å�·æ ‡å�·ç � + DB "HELLO-OS " ; ç£�盘的å��称(必须为11å­—?,ä¸�足填空格) + DB "FAT12 " ; ç£�盘格å¼�å��称(必??8å­—?,ä¸�足填空格) + RESB 18 ; 先空出18字节 -; ƒvƒ�ƒOƒ‰ƒ€–{‘Ì +; 程åº�主体 DB 0xb8, 0x00, 0x00, 0x8e, 0xd0, 0xbc, 0x00, 0x7c DB 0x8e, 0xd8, 0x8e, 0xc0, 0xbe, 0x74, 0x7c, 0x8a @@ -31,20 +31,20 @@ DB 0xb4, 0x0e, 0xbb, 0x0f, 0x00, 0xcd, 0x10, 0xeb DB 0xee, 0xf4, 0xeb, 0xfd -; ƒ�ƒbƒZ�[ƒW•”•ª +; ä¿¡æ�¯æ˜¾ç¤ºéƒ¨åˆ† - DB 0x0a, 0x0a ; ‰ü�s‚ð2‚ + DB 0x0a, 0x0a ; ?个?行 DB "hello, world" - DB 0x0a ; ‰ü�s + DB 0x0a ; ?行 DB 0 - RESB 0x1fe-$ ; 0x001fe‚܂łð0x00‚Å–„‚߂閽—ß + RESB 0x1fe-$ ; 填写0x00直到0x001fe DB 0x55, 0xaa -; ˆÈ‰º‚̓u�[ƒgƒZƒNƒ^ˆÈŠO‚Ì•”•ª‚Ì‹L�q +; å�¯åŠ¨æ‰‡åŒºä»¥å¤–éƒ¨åˆ†è¾“å‡º DB 0xf0, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00 RESB 4600 DB 0xf0, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00 - RESB 1469432 + RESB 1469432 \ No newline at end of file