]> wirehaze git hosting - BOS.git/blobdiff - kernel/16bit/init16bit.asm

wirehaze git hosting

fat12 structures, constants and general framework done
[BOS.git] / kernel / 16bit / init16bit.asm
index 4815455af1b8a265ecd71388ffd901aaa79dc654..ac3793685eeee292f10e3ba6b5017a4621bc7f9d 100755 (executable)
@@ -15,7 +15,7 @@ init16bit:
 \r
         xor    eax, eax                               ; clear mem for IDT and GDT\r
         mov    edi, [idtr.address]                    ; IDT address\r
 \r
         xor    eax, eax                               ; clear mem for IDT and GDT\r
         mov    edi, [idtr.address]                    ; IDT address\r
-        mov    ecx, ([idtr.size] + [idtr.size])/4\r
+        mov    ecx, (0x800 + 0x800)/4\r
         rep    stosd\r
 \r
         mov    eax, cs\r
         rep    stosd\r
 \r
         mov    eax, cs\r
@@ -29,7 +29,7 @@ init16bit:
         mov    [gdt.BOS_16data + 7], ah\r
 \r
         lea    esi, [gdt]\r
         mov    [gdt.BOS_16data + 7], ah\r
 \r
         lea    esi, [gdt]\r
-        mov    edi, [gdtr.address]                    ; GDT address\r
+        mov    edi, 0x7400                            ; GDT address\r
         mov    ecx, (gdt_end - gdt)/4\r
         rep    movsd                                  ; Move it to final pos.\r
 \r
         mov    ecx, (gdt_end - gdt)/4\r
         rep    movsd                                  ; Move it to final pos.\r
 \r