; Tell the compiler that this is the 0 address [ORG 0] jmp 07C0h:start ; Jump to start msg db "Hello boot world ", 2, 0 ; My string ; the 2 byte should provide some fun start: ; Setting up the segment registers mov ax, cs mov ds, ax mov es, ax ; Writing the string mov si, msg print: lodsb cmp al, 0 je hang mov ah, 0Eh mov bx, 7 int 010h ; BIOS video service interrupt jmp print hang: jmp hang times 510-($-$$) db 0 dw 0AA55h.
I saw this here, so is not my merit..
to run:
copy this to a .asm file, e.g. b.asm, then assemble it with
$ nasm -o b.bin b.asm
and finaly write it to some pendrive with
dd if=b.bin of=/dev/YOURPENDRIVE
e.g $ dd if=b.bin of=/dev/sdc
Boot the pendrive and you should get a funny message on screen =)
if you have qemu installed you can boot directly the binary
$ qemu -hda b.bin