INCLUDE "hardware.inc"
|
|
|
|
SECTION "Header", ROM0[$100]
|
|
|
|
_entry:
|
|
di
|
|
jp start
|
|
|
|
rept $150 - _entry
|
|
db 0
|
|
endr
|
|
|
|
SECTION "Frame", WRAM0
|
|
|
|
frame:: db
|
|
|
|
SECTION "Code", ROM0
|
|
|
|
start:
|
|
ld hl, rLCDC
|
|
res 7, [hl]
|
|
res 2, [hl]
|
|
|
|
call BG_Init
|
|
call OAM_Init
|
|
call Keys_Init
|
|
call Player_Init
|
|
|
|
; set palette
|
|
ld a, %11100100
|
|
ld hl, rOBP0
|
|
ld [hl], a
|
|
ld hl, rBGP
|
|
ld [hl], a
|
|
|
|
; enable lcd, sprites and interrupts
|
|
ld hl, rLCDC
|
|
set 7, [hl]
|
|
set 1, [hl]
|
|
ei
|
|
|
|
.loop:
|
|
ld hl, frame
|
|
inc [hl]
|
|
|
|
call Keys_Update
|
|
call Player_Update
|
|
|
|
call wait_for_vblank
|
|
|
|
ld a, HIGH(_OAM)
|
|
call DMA_Start
|
|
|
|
jp .loop
|