; vi:filetype=nasm ts=8 sts=8 sw=8:
bits 32
- section .text
+%include "gfx.inc"
- extern init_gfx
- extern clear
- extern slow_sprite
- extern wait_vsync
- extern swap_buffers
+ ; 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_gfx
main_loop:
call clear
- push word 100
- push word 160
- push word 0
- call slow_sprite
- add esp, 6
+ push dword 0
+ push dword 100
+ push dword 160
+ push dword FRAMEBUF_ADDR
+ call sprsheet
+ add esp, 16
call wait_vsync
call swap_buffers