]> git.dujemihanovic.xyz Git - nameless-os.git/blobdiff - boot/x86/vbr-fat32.s
Fix various warnings
[nameless-os.git] / boot / x86 / vbr-fat32.s
index 7ec3739a8aa80ae7ddd650015a27ae99052c3616..7af11562331bec8bd2727fd14418addd251f8da2 100644 (file)
@@ -2,10 +2,10 @@
 ; This is what's going to be on most USB sticks and HDDs, for now
 
 bits 16
-org 0x7c00
+org 0xfe00
 cpu 686
 
-STAGE3_ADDRESS equ 0x8000
+STAGE3_ADDRESS equ 0x1800
 STAGE3_SEGMENT equ STAGE3_ADDRESS >> 4
 STAGE3_OFFSET equ STAGE3_ADDRESS & 0xf
 
@@ -25,7 +25,7 @@ times 0x57 db 0 ; skip past BPB
 real_start:
        sti
        ; no need to set up segments and stack again, because MBR did it for us
-       mov bp, 0x7c00
+       mov bp, 0xfe00
 
        ; we expect the boot drive to be in DL and our partition table entry in DS:SI
        mov [BOOT_DRIVE], dl
@@ -72,8 +72,8 @@ real_start:
        mov di, STAGE3_OFFSET
        call read_cluster_chain ; read stage 3
        mov dl, [BOOT_DRIVE]
-       call STAGE3_ADDRESS ; call stage 3
-       jmp .halt ; halt in case we return, which should never happen
+       jmp 0:STAGE3_ADDRESS ; call stage 3
+       nop
 
 .stage3_missing:
        print stage3_missing