init
This commit is contained in:
commit
38fd0cd943
6
Makefile
Normal file
6
Makefile
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
all:
|
||||||
|
as -o boot.o boot.s
|
||||||
|
ld -o boot.bin --oformat binary -e init boot.o
|
||||||
|
|
||||||
|
run:
|
||||||
|
qemu-system-x86_64 boot.bin
|
10
boot.s
Normal file
10
boot.s
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
.code16 # tell the assembler that we're using 16 bit mode
|
||||||
|
.global init # makes our label "init" available to the outside
|
||||||
|
|
||||||
|
init: # this is the beginning of our binary later.
|
||||||
|
jmp init # jump to "init"
|
||||||
|
|
||||||
|
.fill 510-(.-init), 1, 0 # add zeroes to make it 510 bytes long
|
||||||
|
# . is current position - start position
|
||||||
|
.word 0xaa55 # magic bytes that tell BIOS that this is bootable
|
||||||
|
# x86 is little endian - so bytes are swapped in memory!
|
Loading…
Reference in New Issue
Block a user