projects
/
ld45_start_nothing
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
foo
[ld45_start_nothing]
/
src
/
main.asm
diff --git
a/src/main.asm
b/src/main.asm
index
4b2a11a
..
ce5e5ad
100644
(file)
--- a/
src/main.asm
+++ b/
src/main.asm
@@
-1,24
+1,45
@@
; vi:filetype=nasm ts=8 sts=8 sw=8:
bits 32
; vi:filetype=nasm ts=8 sts=8 sw=8:
bits 32
- section .text
+%include "gfx.inc"
+%include "keyb.inc"
+%include "intr.inc"
+%include "dbglog.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_intr
+ call kb_init
call init_gfx
call init_gfx
+ dbglog `hello\n`
+
+ sti
main_loop:
main_loop:
+ call update
+
call clear
call clear
- push word 100
- push word 160
- push word 0
- call slow_sprite
- add esp, 6
+ 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
call wait_vsync
call swap_buffers
jmp main_loop
+
+update:
+ ret
+
+ section .data
+ align 4
+ship_x: dd 160
+ship_y: dd 100