summaryrefslogtreecommitdiff
path: root/home/init.asm
diff options
context:
space:
mode:
Diffstat (limited to 'home/init.asm')
-rw-r--r--home/init.asm59
1 files changed, 34 insertions, 25 deletions
diff --git a/home/init.asm b/home/init.asm
index b06820f0..82b3cf7e 100644
--- a/home/init.asm
+++ b/home/init.asm
@@ -1,25 +1,33 @@
-Reset:: ; 5b0 (0:05b0)
- call MapSetup_Sound_Off
+Reset::
+ call InitSound
xor a
ldh [hMapAnims], a
call ClearPalettes
ei
+
ld hl, wd8ba
set 7, [hl]
+
ld c, 32
call DelayFrames
+
jr Init
-_Start:: ; 5c6 (0:05c6)
+
+_Start::
cp $11
jr z, .cgb
xor a
jr .load
+
.cgb
ld a, $1
+
.load
ldh [hCGB], a
-Init:: ; 5d1 (0:05d1)
+
+Init::
di
+
xor a
ldh [rIF], a
ldh [rIE], a
@@ -36,21 +44,23 @@ Init:: ; 5d1 (0:05d1)
ldh [rTMA], a
ldh [rTAC], a
ld [wceeb], a
- ld a, $4
+
+ ld a, %100 ; Start timer at 4096Hz
ldh [rTAC], a
+
.wait
ldh a, [rLY]
- cp 145
+ cp LY_VBLANK + 1
jr nz, .wait
xor a
ldh [rLCDC], a
-; Clear WRAM
- ld hl, wMusicPlaying
+; Clear WRAM bank 0
+ ld hl, WRAM0_Begin
ld bc, $2000
-.ByteFill
- ld [hl], $0
+.ByteFill:
+ ld [hl], 0
inc hl
dec bc
ld a, b
@@ -71,10 +81,10 @@ Init:: ; 5d1 (0:05d1)
call ClearSprites
- ld a, BANK(LoadPushOAM)
+ ld a, BANK(WriteOAMDMACodeToHRAM)
rst Bankswitch
- call LoadPushOAM
+ call WriteOAMDMACodeToHRAM
xor a
ldh [hMapAnims], a
@@ -89,11 +99,11 @@ Init:: ; 5d1 (0:05d1)
ldh [hWY], a
ldh [rWY], a
- ld a, $7
+ ld a, 7
ldh [hWX], a
ldh [rWX], a
- ld a, -1
+ ld a, CONNECTION_NOT_ESTABLISHED
ldh [hLinkPlayerNumber], a
ld h, $98
@@ -103,9 +113,9 @@ Init:: ; 5d1 (0:05d1)
callfar InitCGBPals
- ld a, $9c
+ ld a, HIGH(vBGMap1)
ldh [hBGMapAddress + 1], a
- xor a
+ xor a ; LOW(vBGMap1)
ldh [hBGMapAddress], a
farcall StartClock
@@ -116,7 +126,7 @@ Init:: ; 5d1 (0:05d1)
ld [MBC3LatchClock], a
ld [MBC3SRamEnable], a
- ld a, %11100011
+ ld a, LCDC_DEFAULT ; %11100011
; LCD on
; Win tilemap 1
; Win on
@@ -133,26 +143,25 @@ Init:: ; 5d1 (0:05d1)
call DelayFrame
- ld a, $30
- call Predef
+ predef InitSGBBorder ; SGB init
- call MapSetup_Sound_Off
+ call InitSound
xor a
ld [wMapMusic], a
jp GameInit
-ClearVRAM:: ; 68e (0:068e)
- ld hl, $8000
- ld bc, $2000
+ClearVRAM::
+ ld hl, VRAM_Begin
+ ld bc, VRAM_End - VRAM_Begin
xor a
call ByteFill
ret
-BlankBGMap:: ; 699 (0:0699)
+BlankBGMap::
ld a, $7f
jr asm_69e
-FillBGMap:: ; 69d
+FillBGMap::
ld a, l
asm_69e
ld de, $400