foo
[ld45_start_nothing] / src / main.asm
index c0af0ad..ce5e5ad 100644 (file)
@@ -1,21 +1,45 @@
 ; vi:filetype=nasm ts=8 sts=8 sw=8:
-       bits 16
-       org 7e00h ; that's where our boot loader puts us (see src/boot/boot.asm)
+       bits 32
+%include "gfx.inc"
+%include "keyb.inc"
+%include "intr.inc"
+%include "dbglog.inc"
 
+       ; this is placed at the beginning of our binary at 1mb (see game.ld)
+       ; and it's what gets executed directly by the boot loader
+       section .startup
+       jmp main
+
+       ; start of main
+       section .text
+main:
+       call init_intr
+       call kb_init
        call init_gfx
 
+       dbglog `hello\n`
+
+       sti
 main_loop:
+       call update
+
        call clear
 
-       push word 100
-       push word 160
-       push word 0
-       call slow_sprite
+       push dword 0
+       push dword [ship_y]
+       push dword [ship_x]
+       push dword FRAMEBUF_ADDR
+       call sprsheet
+       add esp, 16
 
        call wait_vsync
        call swap_buffers
        jmp main_loop
 
-%include "gfx.asm"
+update:
+       ret
 
-%include "data/sprsheet.inc"
+       section .data
+       align 4
+ship_x: dd 160
+ship_y: dd 100