Sync with trunk (48237)
[reactos.git] / boot / freeldr / bootsect / fat.asm
index 79aac6a..0e803a5 100644 (file)
@@ -208,8 +208,12 @@ FoundFreeLoader:
                ; to the helper code. Skip the first three bytes
                ; because they contain a jump instruction to skip
                ; over the helper code in the FreeLoader image.
-               ;jmp  0000:8003h
-               jmp  8003h
+               ;jmp  0000:9003h
+               push 0                                          ; push segment (0x0000)
+               mov bx, [0x8000 + 0xA8]         ; load the RVA of the EntryPoint into eax
+               add bx, 0x8003                          ; RVA -> VA and skip 3 bytes (jump to fathelper code)
+               push bx                                         ; push offset
+               retf                                            ; Transfer control to FreeLoader
 
 
 
@@ -387,10 +391,10 @@ NoCarryCHS:
 
 
 msgDiskError db 'Disk error',0dh,0ah,0
-msgFreeLdr   db 'freeldr.sys not found',0dh,0ah,0
+msgFreeLdr   db 'ldr not found',0dh,0ah,0
 ; Sorry, need the space...
 ;msgAnyKey    db 'Press any key to restart',0dh,0ah,0
-msgAnyKey    db 'Press any key',0dh,0ah,0
+msgAnyKey    db 'Press a key',0dh,0ah,0
 filename     db 'FREELDR SYS'
 
         times 509-($-$$) db 0   ; Pad to 509 bytes