When I am debugging boot.bin through the nasm it returns the following error:
boot.asm:
BITS16;Themodewearerunningin(defaultforeverymoderncomputer)ORG0x7c00;theorigin,thebootloaderisalwaysloadedat7C00bytheBIOSjmpMain;Jumpthealabelcalled"Main"
;IN: si=string, OUT:-
Print:
lodsb ; Load string byte (Load a character that's in si into al)
cmp al, 0 ; If that character is equal to "0" jump to done
je Done
mov ah, 0eh ; Set parameters for interrupt 10
int 10h ; Call the interrupt
jmp Print ; Loop back in Print to print the next character
Done:
ret ; return back to the place we where called
Main:
mov si, msg ; Move the data of msg into si
call Print ; Call the Print label
cli
hlt ; Halt the system
msg db 'Hello World!',0 ; Define the variable msg to a string
times 510 - ($-$$) db 0 ; make sure the file is 512 bytes
dw 0xAA55 ; Last 2 bytes need to be AA55
How do I solve it? Syntax I am using: debug boot.bin