No, they aren't, the BIOS simply looks for a valid bootsector on the disk which is in the process of being booted. That bootsector contains the code needed to continue booting the operating system.Those particular instructions are burned into cmos - they read (in plain english)
Anyway, that doesn't matter anymore as I have accomplished my purpose, I have written a bootsector and raw written it to a floppy.
How come it only displays a 'B' instead of the entire string I want to print?Code:[BITS 16] [ORG 0] jmp start msg db 'Booting a shitty program$' start: mov ax,0x7c0 mov ds,ax mov si, msg lodsb mov ah,0eh ; output character on screen function mov bx,0007 ; bl value = attribute (back/foreground colour), not sure what bh does though...lol int 10h ;BIOS interrupt ret times 510-($-$$) db 0 ;we need to fill so the binary image will be 512 bytes ;$ = start of instruction ;$$ = start of program dw 0xAA55 ;fills last 2 bytes with 0xAA55 which makes this a valid bootsector ;(the BIOS checks whether it ends with 0xAA55)




Reply With Quote