diff options
Diffstat (limited to 'engine')
93 files changed, 809 insertions, 7859 deletions
diff --git a/engine/copyright_screen.asm b/engine/copyright_screen.asm index 35a5329..35a5329 100755..100644 --- a/engine/copyright_screen.asm +++ b/engine/copyright_screen.asm diff --git a/engine/erase_all_data_menu.asm b/engine/erase_all_data_menu.asm index 7504cf5..7504cf5 100755..100644 --- a/engine/erase_all_data_menu.asm +++ b/engine/erase_all_data_menu.asm diff --git a/engine/field_select_screen.asm b/engine/field_select_screen.asm index 0033488..0033488 100755..100644 --- a/engine/field_select_screen.asm +++ b/engine/field_select_screen.asm diff --git a/engine/high_scores_screen.asm b/engine/high_scores_screen.asm index 9823d67..9823d67 100755..100644 --- a/engine/high_scores_screen.asm +++ b/engine/high_scores_screen.asm diff --git a/engine/options_screen.asm b/engine/options_screen.asm index e29c96f..e29c96f 100755..100644 --- a/engine/options_screen.asm +++ b/engine/options_screen.asm diff --git a/engine/pinball_game.asm b/engine/pinball_game.asm index 766f900..c0da4a9 100755..100644 --- a/engine/pinball_game.asm +++ b/engine/pinball_game.asm @@ -150,7 +150,7 @@ GameScreenFunction_HandleBallPhysics: ; 0xd909 and a
jr nz, .asm_d9e9
callba Func_85c7
- callba Func_8650
+ callba HideScoreIfBallLow
callba Func_8645
call Func_dba9
call Func_dc7c
@@ -206,9 +206,9 @@ GameScreenFunction_HandleBallLoss: ; 0xda36 ld [wDrawBottomMessageBox], a
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5dc
+ ld hl, wScrollingText3
ld de, ShootAgainText
- call LoadTextHeader
+ call LoadScrollingText
ret
.asm_daa9
diff --git a/engine/pinball_game/ball_gfx.asm b/engine/pinball_game/ball_gfx.asm index 2aff0d3..2aff0d3 100755..100644 --- a/engine/pinball_game/ball_gfx.asm +++ b/engine/pinball_game/ball_gfx.asm diff --git a/engine/pinball_game/ball_init/ball_init.asm b/engine/pinball_game/ball_init/ball_init.asm index e7a13c7..e7a13c7 100755..100644 --- a/engine/pinball_game/ball_init/ball_init.asm +++ b/engine/pinball_game/ball_init/ball_init.asm diff --git a/engine/pinball_game/ball_init/ball_init_blue_field.asm b/engine/pinball_game/ball_init/ball_init_blue_field.asm index b265880..e2303c8 100755..100644 --- a/engine/pinball_game/ball_init/ball_init_blue_field.asm +++ b/engine/pinball_game/ball_init/ball_init_blue_field.asm @@ -25,14 +25,14 @@ InitBallBlueField: ; 0x1c08d ld [wPikachuSaverSlotRewardActive], a
ld [wd51e], a
ld [wPikachuSaverCharge], a
- ld hl, wd50f
+ ld hl, wCAVELightStates
ld [hli], a
ld [hli], a
ld [hli], a
ld [hli], a
ld [wLeftMapMoveCounter], a
ld [wRightMapMoveCounter], a
- ld hl, wd5f9
+ ld hl, wBallUpgradeTriggerStates
ld [hli], a
ld [hli], a
ld [hli], a
@@ -52,12 +52,12 @@ InitBallBlueField: ; 0x1c08d ld [wNumPikachuSaves], a
ld [wd613], a
inc a
- ld [wd482], a
+ ld [wCurBonusMultiplier], a
ld [wd4ef], a
ld [wd4f1], a
ld a, $3
ld [wd610], a
- call Func_1d65f
+ call GetBCDForNextBonusMultiplier_BlueField
ld a, $10
call SetSongBank
ld de, $0001
diff --git a/engine/pinball_game/ball_init/ball_init_diglett_bonus.asm b/engine/pinball_game/ball_init/ball_init_diglett_bonus.asm index ef12950..ef12950 100755..100644 --- a/engine/pinball_game/ball_init/ball_init_diglett_bonus.asm +++ b/engine/pinball_game/ball_init/ball_init_diglett_bonus.asm diff --git a/engine/pinball_game/ball_init/ball_init_gengar_bonus.asm b/engine/pinball_game/ball_init/ball_init_gengar_bonus.asm index 065a1ca..065a1ca 100755..100644 --- a/engine/pinball_game/ball_init/ball_init_gengar_bonus.asm +++ b/engine/pinball_game/ball_init/ball_init_gengar_bonus.asm diff --git a/engine/pinball_game/ball_init/ball_init_meowth_bonus.asm b/engine/pinball_game/ball_init/ball_init_meowth_bonus.asm index e452ecb..e452ecb 100755..100644 --- a/engine/pinball_game/ball_init/ball_init_meowth_bonus.asm +++ b/engine/pinball_game/ball_init/ball_init_meowth_bonus.asm diff --git a/engine/pinball_game/ball_init/ball_init_mewtwo_bonus.asm b/engine/pinball_game/ball_init/ball_init_mewtwo_bonus.asm index c95d283..c95d283 100755..100644 --- a/engine/pinball_game/ball_init/ball_init_mewtwo_bonus.asm +++ b/engine/pinball_game/ball_init/ball_init_mewtwo_bonus.asm diff --git a/engine/pinball_game/ball_init/ball_init_red_field.asm b/engine/pinball_game/ball_init/ball_init_red_field.asm index 4ae79bf..cb48865 100755..100644 --- a/engine/pinball_game/ball_init/ball_init_red_field.asm +++ b/engine/pinball_game/ball_init/ball_init_red_field.asm @@ -34,14 +34,14 @@ InitBallRedField: ; 0x3007d ld [wPikachuSaverSlotRewardActive], a
ld [wPikachuSaverCharge], a
ld [wd51e], a
- ld hl, wd50f
+ ld hl, wCAVELightStates
ld [hli], a
ld [hli], a
ld [hli], a
ld [hli], a
ld [wLeftMapMoveCounter], a
ld [wRightMapMoveCounter], a
- ld hl, wd5f9
+ ld hl, wBallUpgradeTriggerStates
ld [hli], a
ld [hli], a
ld [hli], a
@@ -57,12 +57,12 @@ InitBallRedField: ; 0x3007d ld [wNumPikachuSaves], a
ld [wd613], a
inc a
- ld [wd482], a
+ ld [wCurBonusMultiplier], a
ld [wd4ef], a
ld [wd4f1], a
ld a, $3
ld [wd610], a
- callba Func_16f95
+ callba GetBCDForNextBonusMultiplier_RedField
ld a, $f
call SetSongBank
ld de, $0001
diff --git a/engine/pinball_game/ball_init/ball_init_seel_bonus.asm b/engine/pinball_game/ball_init/ball_init_seel_bonus.asm index 84343d1..84343d1 100755..100644 --- a/engine/pinball_game/ball_init/ball_init_seel_bonus.asm +++ b/engine/pinball_game/ball_init/ball_init_seel_bonus.asm diff --git a/engine/pinball_game/ball_init/ball_init_unused_stage.asm b/engine/pinball_game/ball_init/ball_init_unused_stage.asm index 656ce44..656ce44 100755..100644 --- a/engine/pinball_game/ball_init/ball_init_unused_stage.asm +++ b/engine/pinball_game/ball_init/ball_init_unused_stage.asm diff --git a/engine/pinball_game/ball_loss/ball_loss.asm b/engine/pinball_game/ball_loss/ball_loss.asm index 06b0cda..06b0cda 100755..100644 --- a/engine/pinball_game/ball_loss/ball_loss.asm +++ b/engine/pinball_game/ball_loss/ball_loss.asm diff --git a/engine/pinball_game/ball_loss/ball_loss_blue_field.asm b/engine/pinball_game/ball_loss/ball_loss_blue_field.asm index e9a83fb..bdde203 100755..100644 --- a/engine/pinball_game/ball_loss/ball_loss_blue_field.asm +++ b/engine/pinball_game/ball_loss/ball_loss_blue_field.asm @@ -35,11 +35,11 @@ HandleBallLossBlueField: ; 0xde4f ld [wPinballLaunched], a
ld [wd4df], a
call Func_ded6
- ld a, [wCurBonusMultiplier]
+ ld a, [wCurBonusMultiplierFromFieldEvents]
and a
jr z, .asm_deb6
dec a
- ld [wCurBonusMultiplier], a
+ ld [wCurBonusMultiplierFromFieldEvents], a
ld a, $1
ld [wd49c], a
ld de, EndOfBallBonusText
diff --git a/engine/pinball_game/ball_loss/ball_loss_diglett_bonus.asm b/engine/pinball_game/ball_loss/ball_loss_diglett_bonus.asm index 2771d00..2dd8117 100755..100644 --- a/engine/pinball_game/ball_loss/ball_loss_diglett_bonus.asm +++ b/engine/pinball_game/ball_loss/ball_loss_diglett_bonus.asm @@ -18,7 +18,7 @@ HandleBallLossDiglettBonus: ; 0xe056 ret nz
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5dc
+ ld hl, wScrollingText3
ld de, EndDiglettStageText
- call LoadTextHeader
+ call LoadScrollingText
ret
diff --git a/engine/pinball_game/ball_loss/ball_loss_gengar_bonus.asm b/engine/pinball_game/ball_loss/ball_loss_gengar_bonus.asm index c2cff1f..59a40da 100755..100644 --- a/engine/pinball_game/ball_loss/ball_loss_gengar_bonus.asm +++ b/engine/pinball_game/ball_loss/ball_loss_gengar_bonus.asm @@ -44,7 +44,7 @@ HandleBallLossGengarBonus: ; 0xdf1a ret nz
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5dc
+ ld hl, wScrollingText3
ld de, EndGengarStageText
- call LoadTextHeader
+ call LoadScrollingText
ret
diff --git a/engine/pinball_game/ball_loss/ball_loss_meowth_bonus.asm b/engine/pinball_game/ball_loss/ball_loss_meowth_bonus.asm index ae24dd3..f80e758 100755..100644 --- a/engine/pinball_game/ball_loss/ball_loss_meowth_bonus.asm +++ b/engine/pinball_game/ball_loss/ball_loss_meowth_bonus.asm @@ -51,7 +51,7 @@ HandleBallLossMeowthBonus: ; 0xdfe2 ret nz
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5dc
+ ld hl, wScrollingText3
ld de, EndMeowthStageText
- call LoadTextHeader
+ call LoadScrollingText
ret
diff --git a/engine/pinball_game/ball_loss/ball_loss_mewtwo_bonus.asm b/engine/pinball_game/ball_loss/ball_loss_mewtwo_bonus.asm index 4cafb02..2cd165e 100755..100644 --- a/engine/pinball_game/ball_loss/ball_loss_mewtwo_bonus.asm +++ b/engine/pinball_game/ball_loss/ball_loss_mewtwo_bonus.asm @@ -44,7 +44,7 @@ HandleBallLossMewtwoBonus: ; 0xdf7e ret nz
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5dc
+ ld hl, wScrollingText3
ld de, EndMewtwoStageText
- call LoadTextHeader
+ call LoadScrollingText
ret
diff --git a/engine/pinball_game/ball_loss/ball_loss_red_field.asm b/engine/pinball_game/ball_loss/ball_loss_red_field.asm index e219fbc..31f6b4c 100755..100644 --- a/engine/pinball_game/ball_loss/ball_loss_red_field.asm +++ b/engine/pinball_game/ball_loss/ball_loss_red_field.asm @@ -35,11 +35,11 @@ HandleBallLossRedField: ; 0xdd76 ld [wPinballLaunched], a
ld [wd4df], a
call Func_ddfd
- ld a, [wCurBonusMultiplier]
+ ld a, [wCurBonusMultiplierFromFieldEvents]
and a
jr z, .asm_dddd
dec a
- ld [wCurBonusMultiplier], a
+ ld [wCurBonusMultiplierFromFieldEvents], a
ld a, $1
ld [wd49c], a
ld de, EndOfBallBonusText
diff --git a/engine/pinball_game/ball_loss/ball_loss_seel_bonus.asm b/engine/pinball_game/ball_loss/ball_loss_seel_bonus.asm index a5204d4..0c86084 100755..100644 --- a/engine/pinball_game/ball_loss/ball_loss_seel_bonus.asm +++ b/engine/pinball_game/ball_loss/ball_loss_seel_bonus.asm @@ -50,7 +50,7 @@ HandleBallLossSeelBonus: ; 0xe08b ret nz
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5dc
+ ld hl, wScrollingText3
ld de, EndSeelStageText
- call LoadTextHeader
+ call LoadScrollingText
ret
diff --git a/engine/pinball_game/ball_saver/ball_saver_20.asm b/engine/pinball_game/ball_saver/ball_saver_20.asm index 78dd4ff..78dd4ff 100755..100644 --- a/engine/pinball_game/ball_saver/ball_saver_20.asm +++ b/engine/pinball_game/ball_saver/ball_saver_20.asm diff --git a/engine/pinball_game/ball_saver/ball_saver_30.asm b/engine/pinball_game/ball_saver/ball_saver_30.asm index 8df9643..8df9643 100755..100644 --- a/engine/pinball_game/ball_saver/ball_saver_30.asm +++ b/engine/pinball_game/ball_saver/ball_saver_30.asm diff --git a/engine/pinball_game/ball_saver/ball_saver_60.asm b/engine/pinball_game/ball_saver/ball_saver_60.asm index e26934f..e26934f 100755..100644 --- a/engine/pinball_game/ball_saver/ball_saver_60.asm +++ b/engine/pinball_game/ball_saver/ball_saver_60.asm diff --git a/engine/pinball_game/ball_saver/ball_saver_90.asm b/engine/pinball_game/ball_saver/ball_saver_90.asm index 6f5dc25..6f5dc25 100755..100644 --- a/engine/pinball_game/ball_saver/ball_saver_90.asm +++ b/engine/pinball_game/ball_saver/ball_saver_90.asm diff --git a/engine/pinball_game/ball_saver/ball_saver_catchem_mode.asm b/engine/pinball_game/ball_saver/ball_saver_catchem_mode.asm index 5e308d8..5e308d8 100755..100644 --- a/engine/pinball_game/ball_saver/ball_saver_catchem_mode.asm +++ b/engine/pinball_game/ball_saver/ball_saver_catchem_mode.asm diff --git a/engine/pinball_game/billboard.asm b/engine/pinball_game/billboard.asm index 33975b7..33975b7 100755..100644 --- a/engine/pinball_game/billboard.asm +++ b/engine/pinball_game/billboard.asm diff --git a/engine/pinball_game/billboard_tiledata.asm b/engine/pinball_game/billboard_tiledata.asm index 8af3568..8af3568 100755..100644 --- a/engine/pinball_game/billboard_tiledata.asm +++ b/engine/pinball_game/billboard_tiledata.asm diff --git a/engine/pinball_game/bonus_multiplier.asm b/engine/pinball_game/bonus_multiplier.asm index dfd4a20..d286be3 100755..100644 --- a/engine/pinball_game/bonus_multiplier.asm +++ b/engine/pinball_game/bonus_multiplier.asm @@ -1,9 +1,13 @@ -IncrementBonusMultiplier: ; 0x30164
- ld a, [wCurBonusMultiplier]
+IncrementBonusMultiplierFromFieldEvent: ; 0x30164
+; Increments the bonus multiplier count received from game object actions.
+; This is a separate counter than hitting the bonus multiplier railings.
+; I guess they wanted hitting the bonus multiplier railings to be the primary
+; way of racking up the End-of-Ball Bonus Multiplier.
+ ld a, [wCurBonusMultiplierFromFieldEvents]
inc a
- cp MAX_BONUS_MULTIPLIER
+ cp MAX_BONUS_MULTIPLIER_FIELD_EVENTS
jr z, .maxed
- ld [wCurBonusMultiplier], a
+ ld [wCurBonusMultiplierFromFieldEvents], a
ld a, $1
ld [wd4ca], a
ret
diff --git a/engine/pinball_game/catchem_mode.asm b/engine/pinball_game/catchem_mode.asm index 7dbe8f9..095a877 100755..100644 --- a/engine/pinball_game/catchem_mode.asm +++ b/engine/pinball_game/catchem_mode.asm @@ -6,35 +6,35 @@ StartCatchEmMode: ; 0x1003f ld [wInSpecialMode], a ; set special mode flag
xor a
ld [wSpecialMode], a
- ld [wd54d], a
+ ld [wd54d], a ;set ??? to 0
ld a, [wCurrentStage]
sla a
- ld c, a
+ ld c, a ;store twice current stage to use a pointer offset
ld b, $0
push bc
ld hl, WildMonOffsetsPointers
add hl, bc
- ld a, [hli]
+ ld a, [hli] ;hl = pointer to wild mon pointer table
ld h, [hl]
ld l, a
ld a, [wCurrentMap]
sla a
ld c, a
- add hl, bc
+ add hl, bc ;go to correct location in table
ld a, [hli]
ld c, a
ld a, [hl]
- ld b, a
- pop de
+ ld b, a ;bc = offset needed to reach correct wild table
+ pop de ;pop current stage offset
ld hl, WildMonPointers
add hl, de
- ld a, [hli]
+ ld a, [hli] ;fetch start od correct wilds table, place in hl
ld h, [hl]
ld l, a
add hl, bc
call GenRandom
and $f
- call CheckForMew
+ call CheckForMew ;a = $10 if mew, else is less
ld c, a
ld b, $0
add hl, bc
@@ -42,20 +42,20 @@ StartCatchEmMode: ; 0x1003f sla a
ld c, a
add hl, bc
- ld a, [hl] ; a contains mon id
+ ld a, [hl] ; a contains mon id. overshoots by 1 if mew, causing mew to be loaded
dec a
- ld [wCurrentCatchEmMon], a
- ld a, [wCurrentCatchEmMon]
+ ld [wCurrentCatchEmMon], a ;stores 1 less than ID
+ ld a, [wCurrentCatchEmMon] ;wow gamefreak
ld c, a
ld b, $0
- ld hl, EvolutionLineIds
+ ld hl, EvolutionLineIds ;fetch the mon's evolution line
add hl, bc
ld c, [hl]
ld h, b
ld l, c
add hl, bc
- add hl, bc ; multiply the evolution line id by 3
- ld bc, Data_13685
+ add hl, bc ; multiply the evolution line id by 3, add it to pointer to ???
+ ld bc, Data_13685 ;mystery data
add hl, bc
ld a, [hli]
ld [wd5c1], a
@@ -63,25 +63,25 @@ StartCatchEmMode: ; 0x1003f ld a, [hli]
ld [wd5c2], a
ld a, [hli]
- ld [wd5c3], a
+ ld [wd5c3], a ;load the 3 bytes into ????
ld hl, wd586
ld a, [wd5b6]
ld c, a
and a
ld b, $18
- jr z, .asm_100c7
+ jr z, .asm_100c7 ;if ?? = 0, jump with b = 24 (2 seperate loops?
.asm_100ba
ld a, $1
- ld [hli], a
+ ld [hli], a ;load 1 then 0 into data from wd5b6 C times, where C is the contents of wd5b6
xor a
ld [hli], a
dec b
dec c
jr nz, .asm_100ba
- ld a, b
+ ld a, b ;load 24 - times looped into a, if 0: skip
and a
jr z, .asm_100ce
-.asm_100c7
+.asm_100c7 ;loop 0 then 1 into the rest of the data from wd5b6
xor a
ld [hli], a
inc a
@@ -94,12 +94,12 @@ StartCatchEmMode: ; 0x1003f ld b, $0
sla c
rl b
- ld hl, CatchEmTimerData
+ ld hl, CatchEmTimerData ;contains how long each mon stays on screen, all are 2 minutes by default
add hl, bc
ld a, [hli]
ld c, a
ld a, [hl]
- ld b, a
+ ld b, a ;bc = timer legnth. b = secons c = minutes
callba StartTimer
callba InitBallSaverForCatchEmMode
call Func_10696
@@ -136,27 +136,27 @@ CheckForMew: ; 3. The right alley has been hit three times
; 4. The Mewtwo Bonus Stage completion counter equals 2.
push af
- cp $f ; random number equals $f
- jr nz, .asm_10155
+ cp $f ; random number equals $f (1 in 16)
+ jr nz, .NotMew
ld a, c
cp (BlueStageIndigoPlateauWildMons - BlueStageWildMons) & $ff ; check if low-byte of map mons offset is Indigo Plateau
- jr nz, .asm_10155
+ jr nz, .NotMew
ld a, b
cp (BlueStageIndigoPlateauWildMons - BlueStageWildMons) >> 8 ; check if high-byte of map mons offset is Indigo Plateau
- jr nz, .asm_10155
+ jr nz, .NotMew
ld a, [wRareMonsFlag]
cp $8
- jr nz, .asm_10155
+ jr nz, .NotMew
ld a, [wNumMewtwoBonusCompletions]
cp NUM_MEWTWO_COMPLETIONS_FOR_MEW
- jr nz, .asm_10155
+ jr nz, .NotMew
pop af
xor a
ld [wNumMewtwoBonusCompletions], a
ld a, $10
ret
-.asm_10155
+.NotMew
pop af
ret
@@ -799,7 +799,7 @@ CapturePokemon: ; 0x1052d jr nc, .notMaxed
ld c, $a
call Modulo_C
- callba z, IncrementBonusMultiplier ; increments bonus multiplier every 10 pokemon caught
+ callba z, IncrementBonusMultiplierFromFieldEvent ; increments bonus multiplier every 10 pokemon caught
.notMaxed
call SetPokemonOwnedFlag
ld a, [wPreviousNumPokeballs]
@@ -930,17 +930,17 @@ ShowAnimatedWildMon: ; 0x10678 Func_10696: ; 0x10696
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5cc
+ ld hl, wScrollingText1
ld de, LetsGetPokemonText
- call LoadTextHeader
+ call LoadScrollingText
ret
Func_106a6: ; 0x106a6
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5cc
+ ld hl, wScrollingText1
ld de, PokemonRanAwayText
- call LoadTextHeader
+ call LoadScrollingText
ret
Func_106b6: ; 0x106b6
@@ -979,12 +979,12 @@ Func_106b6: ; 0x106b6 push de
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5cc
+ ld hl, wScrollingText1
pop de
- call LoadTextHeader
- ld hl, wd5d4
+ call LoadScrollingText
+ ld hl, wScrollingText2
pop de
- call LoadTextHeader
+ call LoadScrollingText
pop hl
ld de, wBottomMessageText + $20
ld b, $0 ; count the number of letters in mon's name in register b
@@ -1003,16 +1003,16 @@ Func_106b6: ; 0x106b6 inc de
xor a
ld [de], a
- ld a, [wd5db]
+ ld a, [wScrollingText2ScrollStepsRemaining]
add b
- ld [wd5db], a
+ ld [wScrollingText2ScrollStepsRemaining], a
ld a, $14
sub b
srl a
ld b, a
- ld a, [wd5d8]
+ ld a, [wScrollingText2StopOffset]
add b
- ld [wd5d8], a
+ ld [wScrollingText2StopOffset], a
ret
Func_10732: ; 0x10732
@@ -1178,12 +1178,12 @@ Func_10848: ; 0x10848 callba AddBigBCD6FromQueue
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5d4
+ ld hl, wScrollingText2
ld de, OneBillionText
- call LoadTextHeader
- ld hl, wd5cc
+ call LoadScrollingText
+ ld hl, wScrollingText1
ld de, PokemonCaughtSpecialBonusText
- call LoadTextHeader
+ call LoadScrollingText
call Func_3475
ret
diff --git a/engine/pinball_game/catchem_mode/catchem_mode_blue_field.asm b/engine/pinball_game/catchem_mode/catchem_mode_blue_field.asm index c4b90fa..c4b90fa 100755..100644 --- a/engine/pinball_game/catchem_mode/catchem_mode_blue_field.asm +++ b/engine/pinball_game/catchem_mode/catchem_mode_blue_field.asm diff --git a/engine/pinball_game/catchem_mode/catchem_mode_red_field.asm b/engine/pinball_game/catchem_mode/catchem_mode_red_field.asm index b34f93d..b34f93d 100755..100644 --- a/engine/pinball_game/catchem_mode/catchem_mode_red_field.asm +++ b/engine/pinball_game/catchem_mode/catchem_mode_red_field.asm diff --git a/engine/pinball_game/draw_sprites/draw_blue_field_sprites.asm b/engine/pinball_game/draw_sprites/draw_blue_field_sprites.asm index 5354a51..5354a51 100755..100644 --- a/engine/pinball_game/draw_sprites/draw_blue_field_sprites.asm +++ b/engine/pinball_game/draw_sprites/draw_blue_field_sprites.asm diff --git a/engine/pinball_game/draw_sprites/draw_diglett_bonus_sprites.asm b/engine/pinball_game/draw_sprites/draw_diglett_bonus_sprites.asm index a0dded5..a0dded5 100755..100644 --- a/engine/pinball_game/draw_sprites/draw_diglett_bonus_sprites.asm +++ b/engine/pinball_game/draw_sprites/draw_diglett_bonus_sprites.asm diff --git a/engine/pinball_game/draw_sprites/draw_gengar_bonus_sprites.asm b/engine/pinball_game/draw_sprites/draw_gengar_bonus_sprites.asm index 212279d..212279d 100755..100644 --- a/engine/pinball_game/draw_sprites/draw_gengar_bonus_sprites.asm +++ b/engine/pinball_game/draw_sprites/draw_gengar_bonus_sprites.asm diff --git a/engine/pinball_game/draw_sprites/draw_meowth_bonus_sprites.asm b/engine/pinball_game/draw_sprites/draw_meowth_bonus_sprites.asm index 5d54a08..5d54a08 100755..100644 --- a/engine/pinball_game/draw_sprites/draw_meowth_bonus_sprites.asm +++ b/engine/pinball_game/draw_sprites/draw_meowth_bonus_sprites.asm diff --git a/engine/pinball_game/draw_sprites/draw_mewtwo_bonus_sprites.asm b/engine/pinball_game/draw_sprites/draw_mewtwo_bonus_sprites.asm index a4397a0..a4397a0 100755..100644 --- a/engine/pinball_game/draw_sprites/draw_mewtwo_bonus_sprites.asm +++ b/engine/pinball_game/draw_sprites/draw_mewtwo_bonus_sprites.asm diff --git a/engine/pinball_game/draw_sprites/draw_red_field_sprites.asm b/engine/pinball_game/draw_sprites/draw_red_field_sprites.asm index 2e34743..2e34743 100755..100644 --- a/engine/pinball_game/draw_sprites/draw_red_field_sprites.asm +++ b/engine/pinball_game/draw_sprites/draw_red_field_sprites.asm diff --git a/engine/pinball_game/draw_sprites/draw_seel_bonus_sprites.asm b/engine/pinball_game/draw_sprites/draw_seel_bonus_sprites.asm index 261de5b..261de5b 100755..100644 --- a/engine/pinball_game/draw_sprites/draw_seel_bonus_sprites.asm +++ b/engine/pinball_game/draw_sprites/draw_seel_bonus_sprites.asm diff --git a/engine/pinball_game/draw_sprites/draw_sprites.asm b/engine/pinball_game/draw_sprites/draw_sprites.asm index e9dc693..e9dc693 100755..100644 --- a/engine/pinball_game/draw_sprites/draw_sprites.asm +++ b/engine/pinball_game/draw_sprites/draw_sprites.asm diff --git a/engine/pinball_game/draw_sprites/draw_unused_stage_sprites.asm b/engine/pinball_game/draw_sprites/draw_unused_stage_sprites.asm index 473a8c2..473a8c2 100755..100644 --- a/engine/pinball_game/draw_sprites/draw_unused_stage_sprites.asm +++ b/engine/pinball_game/draw_sprites/draw_unused_stage_sprites.asm diff --git a/engine/pinball_game/end_of_ball_bonus.asm b/engine/pinball_game/end_of_ball_bonus.asm index 8afdf54..5d312ef 100755..100644 --- a/engine/pinball_game/end_of_ball_bonus.asm +++ b/engine/pinball_game/end_of_ball_bonus.asm @@ -61,10 +61,10 @@ Func_f57f: ; 0xf57f ShowBallBonusSummary: ; 0xf5a0
ld de, wBottomMessageText + $40
ld hl, BonusPointsText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld de, wBottomMessageText + $80
ld hl, SubtotalPointsText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wd489
call ClearBCD6Buffer
ld hl, wd48f
@@ -90,7 +90,7 @@ ShowBallBonusSummary: ; 0xf5a0 call Func_f81b
ld de, wBottomMessageText + $20
ld hl, GameOverText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld bc, $0040
ld de, $0000
call Func_f80d
@@ -121,7 +121,7 @@ CallTable_f60d: ; 0xf60d HandleNumPokemonCaughtBallBonus: ; 0xf626
ld de, wBottomMessageText + $01
ld hl, NumPokemonCaughtText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wBottomMessageText + $01
ld a, [wNumPokemonCaughtInBallBonus]
call Func_f78e
@@ -137,7 +137,7 @@ HandleNumPokemonCaughtBallBonus: ; 0xf626 HandleNumPokemonEvolvedBallBonus: ; 0xf64e
ld de, wBottomMessageText
ld hl, NumPokemonEvolvedText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wBottomMessageText
ld a, [wNumPokemonEvolvedInBallBonus]
call Func_f78e
@@ -176,12 +176,12 @@ Func_f676: ; 0xf676 jr nz, .asm_f678
ld de, wBottomMessageText + $40
ld hl, MultiplierPointsText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld de, wBottomMessageText + $80
ld hl, TotalPointsText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wBottomMessageText + $50
- ld a, [wd482]
+ ld a, [wCurBonusMultiplier]
call Func_f78e
ld bc, $0040
ld de, $0040
@@ -209,11 +209,11 @@ Func_f676: ; 0xf676 .asm_f6f2
pop hl
pop de
- ld a, [wd482]
+ ld a, [wCurBonusMultiplier]
and a
jr z, .asm_f709
dec a
- ld [wd482], a
+ ld [wCurBonusMultiplier], a
ld hl, wd48f
ld de, wd489
call AddBigBCD6
@@ -249,7 +249,7 @@ Func_f70d: ; 0xf70d jr nz, .asm_f70f
ld de, wBottomMessageText + $60
ld hl, ScoreText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wScore + $5
ld de, wBottomMessageText + $66
call Func_f8bd
@@ -308,43 +308,43 @@ Func_f78e: ; 0xf78e ld c, $0
ret
-PrintTextNoHeader: ; 0xf7b1
- ld a, [wd805]
+PlaceTextAlphanumericOnly: ; 0xf7b1 seems to filter out punctuation and other misc characters
+ ld a, [wd805] ;id unusedTextFlag is set, take olther path
and a
- jr nz, .asm_f7e0
+ jr nz, .UnusedBranch
.loop
ld a, [hli]
and a
- ret z
+ ret z ;if end of text, ret
cp "0"
- jr c, .asm_f7c6
+ jr c, .NotADigit ;if a digit, add $56 and skip letter check
cp "9" + 1
- jr nc, .asm_f7c6
+ jr nc, .NotADigit
add $56
- jr .asm_f7dc
+ jr .IsValidChar
-.asm_f7c6
+.NotADigit
cp "A"
- jr c, .asm_f7d2
+ jr c, .NotALetter ;if a letter, add $56 and skip letter check
cp "Z" + 1
- jr nc, .asm_f7d2
+ jr nc, .NotALetter
add $bf
- jr .asm_f7dc
+ jr .IsValidChar
-.asm_f7d2
- cp "e"
- jr nz, .asm_f7da
+.NotALetter
+ cp "e" ;check if acute e
+ jr nz, .NotAcuteE
ld a, $83
- jr .asm_f7dc
+ jr .IsValidChar
-.asm_f7da
- ld a, $81
-.asm_f7dc
- ld [de], a
+.NotAcuteE
+ ld a, $81 ;if none of the above groups, replace with a space
+.IsValidChar
+ ld [de], a ;load result into de
inc de
jr .loop
-.asm_f7e0
+.UnusedBranch
ld a, [hli]
and a
ret z
@@ -376,7 +376,7 @@ PrintTextNoHeader: ; 0xf7b1 .asm_f809
ld [de], a
inc de
- jr .asm_f7e0
+ jr .UnusedBranch
Func_f80d: ; 0xf80d
hlCoord 0, 0, vBGWin
@@ -590,7 +590,7 @@ HandleBallBonusRedField: ; 0xf945 HandleBellsproutEntriesBallBonus: ; 0xf952
ld de, wBottomMessageText + $03
ld hl, BellsproutCounterText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wBottomMessageText + $03
ld a, [wNumBellsproutEntries]
call Func_f78e
@@ -606,7 +606,7 @@ HandleBellsproutEntriesBallBonus: ; 0xf952 HandleDugtrioTriplesBallBonus: ; 0xf97a
ld de, wBottomMessageText + $04
ld hl, DugtrioCounterText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wBottomMessageText + $04
ld a, [wNumDugtrioTriples]
call Func_f78e
@@ -622,7 +622,7 @@ HandleDugtrioTriplesBallBonus: ; 0xf97a HandleCAVECompletionsBallBonus_RedField: ; 0xf9a2
ld de, wBottomMessageText + $03
ld hl, CaveShotCounterText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wBottomMessageText + $03
ld a, [wNumCAVECompletions]
call Func_f78e
@@ -638,7 +638,7 @@ HandleCAVECompletionsBallBonus_RedField: ; 0xf9a2 HandleSpinnerTurnsBallBonus_RedField: ; 0xf9ca
ld de, wBottomMessageText + $01
ld hl, SpinnerTurnsCounterText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wBottomMessageText + $01
ld a, [wNumSpinnerTurns]
call Func_f78e
@@ -666,7 +666,7 @@ HandleBallBonusBlueField: ; 0xf9f3 HandleCloysterEntriesBallBonus: ; 0xfa06
ld de, wBottomMessageText + $04
ld hl, CloysterCounterText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wBottomMessageText + $04
ld a, [wNumCloysterEntries]
call Func_f78e
@@ -682,7 +682,7 @@ HandleCloysterEntriesBallBonus: ; 0xfa06 HandleSlowpokeEntriesBallBonus: ; 0xfa2e
ld de, wBottomMessageText + $04
ld hl, SlowpokeCounterText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wBottomMessageText + $04
ld a, [wNumSlowpokeEntries]
call Func_f78e
@@ -698,7 +698,7 @@ HandleSlowpokeEntriesBallBonus: ; 0xfa2e HandlePoliwagTriplesBallBonus: ; 0xfa56
ld de, wBottomMessageText + $04
ld hl, PoliwagCounterText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wBottomMessageText + $04
ld a, [wNumPoliwagTriples]
call Func_f78e
@@ -714,7 +714,7 @@ HandlePoliwagTriplesBallBonus: ; 0xfa56 HandlePsyduckTriplesBallBonus: ; 0xfa7e
ld de, wBottomMessageText + $04
ld hl, PsyduckCounterText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wBottomMessageText + $04
ld a, [wNumPsyduckTriples]
call Func_f78e
@@ -730,7 +730,7 @@ HandlePsyduckTriplesBallBonus: ; 0xfa7e HandleCAVECompletionsBallBonus_BlueField: ; 0xfaa6
ld de, wBottomMessageText + $03
ld hl, CaveShotCounterText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wBottomMessageText + $03
ld a, [wNumCAVECompletions]
call Func_f78e
@@ -746,7 +746,7 @@ HandleCAVECompletionsBallBonus_BlueField: ; 0xfaa6 HandleSpinnerTurnsBallBonus_BlueField: ; 0xface :)
ld de, wBottomMessageText + $01
ld hl, SpinnerTurnsCounterText
- call PrintTextNoHeader
+ call PlaceTextAlphanumericOnly
ld hl, wBottomMessageText + $01
ld a, [wNumSpinnerTurns]
call Func_f78e
diff --git a/engine/pinball_game/evolution_mode/evolution_mode_blue_field.asm b/engine/pinball_game/evolution_mode/evolution_mode_blue_field.asm index a1af8f5..efdbe83 100755..100644 --- a/engine/pinball_game/evolution_mode/evolution_mode_blue_field.asm +++ b/engine/pinball_game/evolution_mode/evolution_mode_blue_field.asm @@ -72,8 +72,8 @@ Func_20c08: ; 0x20c08 call FillBottomMessageBufferWithBlackTile
call Func_30db
ld de, YeahYouGotItText
- ld hl, wd5cc
- call LoadTextHeader
+ ld hl, wScrollingText1
+ call LoadScrollingText
ld a, [hGameBoyColorFlag]
and a
jr z, .asm_20c74
@@ -257,9 +257,9 @@ Func_20da0: ; 0x20da0 callba StopTimer
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5cc
+ ld hl, wScrollingText1
ld de, EvolutionFailedText
- call LoadTextHeader
+ call LoadScrollingText
ret
Func_20e34: ; 0x20e34
@@ -494,8 +494,8 @@ Func_20f75: ; 0x20f75 ld e, a
ld a, [hl]
ld d, a
- ld hl, wd5cc
- call LoadTextHeader
+ ld hl, wScrollingText1
+ call LoadScrollingText
scf
ret
@@ -527,14 +527,14 @@ Func_20fef: ; 0x20fef callba AddBigBCD6FromQueue
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5cc
+ ld hl, wScrollingText1
ld a, [wCurrentEvolutionType]
cp EVO_EXPERIENCE
ld de, PokemonIsTiredText
jr z, .asm_21057
ld de, ItemNotFoundText
.asm_21057
- call LoadTextHeader
+ call LoadScrollingText
scf
ret
@@ -631,8 +631,8 @@ asm_210c7: jr z, .asm_21115
ld de, TryNextPlaceText
.asm_21115
- ld hl, wd5cc
- call LoadTextHeader
+ ld hl, wScrollingText1
+ call LoadScrollingText
scf
ret
diff --git a/engine/pinball_game/evolution_mode/evolution_mode_red_field.asm b/engine/pinball_game/evolution_mode/evolution_mode_red_field.asm index a1149c1..384e958 100755..100644 --- a/engine/pinball_game/evolution_mode/evolution_mode_red_field.asm +++ b/engine/pinball_game/evolution_mode/evolution_mode_red_field.asm @@ -75,8 +75,8 @@ Func_205e0: ; 0x205e0 call FillBottomMessageBufferWithBlackTile
call Func_30db
ld de, YeahYouGotItText
- ld hl, wd5cc
- call LoadTextHeader
+ ld hl, wScrollingText1
+ call LoadScrollingText
ld a, [hGameBoyColorFlag]
and a
jr z, .asm_2064f
@@ -260,9 +260,9 @@ Func_2077b: ; 0x2077b callba StopTimer
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5cc
+ ld hl, wScrollingText1
ld de, EvolutionFailedText
- call LoadTextHeader
+ call LoadScrollingText
ret
Func_2080f: ; 0x2080f
@@ -517,8 +517,8 @@ Func_20977: ; 0x20977 ld e, a
ld a, [hl]
ld d, a
- ld hl, wd5cc
- call LoadTextHeader
+ ld hl, wScrollingText1
+ call LoadScrollingText
scf
ret
@@ -549,14 +549,14 @@ Func_209eb: ; 0x209eb callba AddBigBCD6FromQueue
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5cc
+ ld hl, wScrollingText1
ld a, [wCurrentEvolutionType]
cp EVO_EXPERIENCE
ld de, PokemonIsTiredText
jr z, .asm_20a50
ld de, ItemNotFoundText
.asm_20a50
- call LoadTextHeader
+ call LoadScrollingText
scf
ret
@@ -633,8 +633,8 @@ asm_20a9f: jr z, .asm_20aed
ld de, TryNextPlaceText
.asm_20aed
- ld hl, wd5cc
- call LoadTextHeader
+ ld hl, wScrollingText1
+ call LoadScrollingText
scf
ret
diff --git a/engine/pinball_game/extra_ball.asm b/engine/pinball_game/extra_ball.asm index babec0a..2436763 100755..100644 --- a/engine/pinball_game/extra_ball.asm +++ b/engine/pinball_game/extra_ball.asm @@ -10,9 +10,9 @@ HandleExtraBall: ; 0x30188 jr nz, .asm_301a7
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5cc
+ ld hl, wScrollingText1
ld de, ExtraBallText
- call LoadTextHeader
+ call LoadScrollingText
jr .asm_301c9
.asm_301a7
@@ -22,14 +22,14 @@ HandleExtraBall: ; 0x30188 push de
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5d4
+ ld hl, wScrollingText2
ld de, DigitsText1to9
call Func_32cc
pop de
pop bc
- ld hl, wd5cc
+ ld hl, wScrollingText1
ld de, ExtraBallSpecialBonusText
- call LoadTextHeader
+ call LoadScrollingText
.asm_301c9
xor a
ld [wd4ca], a
diff --git a/engine/pinball_game/flippers.asm b/engine/pinball_game/flippers.asm index 466975e..466975e 100755..100644 --- a/engine/pinball_game/flippers.asm +++ b/engine/pinball_game/flippers.asm diff --git a/engine/pinball_game/load_stage_data/load_blue_field.asm b/engine/pinball_game/load_stage_data/load_blue_field.asm index 1413bd4..67dd0f2 100755..100644 --- a/engine/pinball_game/load_stage_data/load_blue_field.asm +++ b/engine/pinball_game/load_stage_data/load_blue_field.asm @@ -1,5 +1,5 @@ _LoadStageDataBlueFieldTop: ; 0x1c165
- call asm_1e475
+ call LoadPinballUpgradeTriggersGraphics_BlueField
call UpdateSpinnerChargeGraphics_BlueField
call Func_1c3ee
call Func_1e8f6
@@ -15,7 +15,7 @@ _LoadStageDataBlueFieldBottom: ; 0x1c191 call Func_1c1db
call Func_1c4b6
call Func_1c2cb
- call Func_1e627
+ call LoadCAVELightsGraphics_BlueField
call Func_1c43c
call Func_1c305
call Func_1c3ee
@@ -65,11 +65,11 @@ Func_1c21e: ; 0x1c21e ld a, $ff
ld [wd60e], a
ld [wd60f], a
- ld a, [wd60c]
- call Func_1d5f2
- ld a, [wd60d]
+ ld a, [wBonusMultiplierTensDigit]
+ call LoadBonusMultiplierRailingGraphics_BlueField
+ ld a, [wBonusMultiplierOnesDigit]
add $14
- call Func_1d5f2
+ call LoadBonusMultiplierRailingGraphics_BlueField
ret
Func_1c235: ; 0x1c235
@@ -86,9 +86,9 @@ Func_1c235: ; 0x1c235 .asm_1c249
xor a
.asm_1c24a
- call Func_1de4b
+ call LoadPsyduckOrPoliwagGraphics
ld a, [wLeftMapMoveCounter]
- call Func_1de6f
+ call LoadPsyduckOrPoliwagNumberGraphics
ld a, [hGameBoyColorFlag]
and a
jr z, .asm_1c267
@@ -106,7 +106,7 @@ Func_1c235: ; 0x1c235 .asm_1c267
ld a, $8
.asm_1c269
- call Func_1de6f
+ call LoadPsyduckOrPoliwagNumberGraphics
ld a, [wRightMapMoveDiglettFrame]
and a
jr z, .asm_1c295
@@ -134,10 +134,10 @@ Func_1c235: ; 0x1c235 .asm_1c295
ld a, $2
.asm_1c297
- call Func_1de4b
+ call LoadPsyduckOrPoliwagGraphics
ld a, [wRightMapMoveCounter]
add $4
- call Func_1de6f
+ call LoadPsyduckOrPoliwagNumberGraphics
ld a, [hGameBoyColorFlag]
and a
jr z, .asm_1c2b7
@@ -155,15 +155,15 @@ Func_1c235: ; 0x1c235 .asm_1c2b7
ld a, $9
.asm_1c2b9
- call Func_1de6f
+ call LoadPsyduckOrPoliwagNumberGraphics
ret
.asm_1c2bd
ld a, $6
- call Func_1de4b
+ call LoadPsyduckOrPoliwagGraphics
ld a, [wRightMapMoveCounter]
add $4
- call Func_1de6f
+ call LoadPsyduckOrPoliwagNumberGraphics
ret
Func_1c2cb: ; 0x1c2cb
diff --git a/engine/pinball_game/load_stage_data/load_diglett_bonus.asm b/engine/pinball_game/load_stage_data/load_diglett_bonus.asm index 6be87a9..6be87a9 100755..100644 --- a/engine/pinball_game/load_stage_data/load_diglett_bonus.asm +++ b/engine/pinball_game/load_stage_data/load_diglett_bonus.asm diff --git a/engine/pinball_game/load_stage_data/load_gengar_bonus.asm b/engine/pinball_game/load_stage_data/load_gengar_bonus.asm index 767d37d..767d37d 100755..100644 --- a/engine/pinball_game/load_stage_data/load_gengar_bonus.asm +++ b/engine/pinball_game/load_stage_data/load_gengar_bonus.asm diff --git a/engine/pinball_game/load_stage_data/load_meowth_bonus.asm b/engine/pinball_game/load_stage_data/load_meowth_bonus.asm index 01a49ba..01a49ba 100755..100644 --- a/engine/pinball_game/load_stage_data/load_meowth_bonus.asm +++ b/engine/pinball_game/load_stage_data/load_meowth_bonus.asm diff --git a/engine/pinball_game/load_stage_data/load_mewtwo_bonus.asm b/engine/pinball_game/load_stage_data/load_mewtwo_bonus.asm index 47bbfc4..47bbfc4 100755..100644 --- a/engine/pinball_game/load_stage_data/load_mewtwo_bonus.asm +++ b/engine/pinball_game/load_stage_data/load_mewtwo_bonus.asm diff --git a/engine/pinball_game/load_stage_data/load_red_field.asm b/engine/pinball_game/load_stage_data/load_red_field.asm index 63a7e54..c194aa6 100755..100644 --- a/engine/pinball_game/load_stage_data/load_red_field.asm +++ b/engine/pinball_game/load_stage_data/load_red_field.asm @@ -1,7 +1,7 @@ _LoadStageDataRedFieldTop: ; 0x14000
call Func_14091
call Func_159f4
- call Func_15450
+ call LoadPinballUpgradeTriggersGraphics_RedField
call Func_16859
call UpdateSpinnerChargeGraphics_RedField
call Func_14234
@@ -14,7 +14,7 @@ _LoadStageDataRedFieldBottom: ; 0x1401c call Func_14091
call Func_14377
call Func_14135
- call Func_asm_1522d
+ call LoadCAVELightsGraphics_RedField
call Func_14282
call Func_1414b
call Func_14234
@@ -102,11 +102,11 @@ Func_140e2: ; 0x140e2 ld a, $ff
ld [wd60e], a
ld [wd60f], a
- ld a, [wd60c]
- call Func_16f28
- ld a, [wd60d]
+ ld a, [wBonusMultiplierTensDigit]
+ call LoadBonusMultiplierRailingGraphics_RedField
+ ld a, [wBonusMultiplierOnesDigit]
add $14
- call Func_16f28
+ call LoadBonusMultiplierRailingGraphics_RedField
ret
Func_140f9: ; 0x140f9
@@ -120,9 +120,9 @@ Func_140f9: ; 0x140f9 ld [wStageCollisionMap + $103], a
ld a, $2
.asm_1410c
- call Func_149d9
+ call LoadDiglettGraphics
ld a, [wLeftMapMoveCounter]
- call Func_149f5
+ call LoadDiglettNumberGraphics
ld a, [wd4f1]
and a
jr z, .asm_14127
@@ -133,10 +133,10 @@ Func_140f9: ; 0x140f9 ld a, $2
.asm_14127
add $3
- call Func_149d9
+ call LoadDiglettGraphics
ld a, [wRightMapMoveCounter]
add $4
- call Func_149f5
+ call LoadDiglettNumberGraphics
ret
Func_14135: ; 0x14135
diff --git a/engine/pinball_game/load_stage_data/load_seel_bonus.asm b/engine/pinball_game/load_stage_data/load_seel_bonus.asm index e72b9a7..e72b9a7 100755..100644 --- a/engine/pinball_game/load_stage_data/load_seel_bonus.asm +++ b/engine/pinball_game/load_stage_data/load_seel_bonus.asm diff --git a/engine/pinball_game/load_stage_data/load_stage_data.asm b/engine/pinball_game/load_stage_data/load_stage_data.asm index 957c009..957c009 100755..100644 --- a/engine/pinball_game/load_stage_data/load_stage_data.asm +++ b/engine/pinball_game/load_stage_data/load_stage_data.asm diff --git a/engine/pinball_game/load_stage_data/load_unused_stage.asm b/engine/pinball_game/load_stage_data/load_unused_stage.asm index 89d1128..89d1128 100755..100644 --- a/engine/pinball_game/load_stage_data/load_unused_stage.asm +++ b/engine/pinball_game/load_stage_data/load_unused_stage.asm diff --git a/engine/pinball_game/menu.asm b/engine/pinball_game/menu.asm index a31ff1f..a31ff1f 100755..100644 --- a/engine/pinball_game/menu.asm +++ b/engine/pinball_game/menu.asm diff --git a/engine/pinball_game/object_collision/blue_stage_object_collision.asm b/engine/pinball_game/object_collision/blue_stage_object_collision.asm index 8252802..8252802 100755..100644 --- a/engine/pinball_game/object_collision/blue_stage_object_collision.asm +++ b/engine/pinball_game/object_collision/blue_stage_object_collision.asm diff --git a/engine/pinball_game/object_collision/blue_stage_resolve_collision.asm b/engine/pinball_game/object_collision/blue_stage_resolve_collision.asm index cd13316..fe31309 100755..100644 --- a/engine/pinball_game/object_collision/blue_stage_resolve_collision.asm +++ b/engine/pinball_game/object_collision/blue_stage_resolve_collision.asm @@ -1,9 +1,9 @@ ResolveBlueFieldTopGameObjectCollisions: ; 0x1c715
call ResolveShellderCollision
call ResolveBlueStageSpinnerCollision
- call ResolveBlueStagePinballUpgradeTriggersCollision
- call HandleBlueStageBallTypeUpgradeCounter
- call Func_1e66a
+ call ResolveBallUpgradeTriggersCollision_BlueField
+ call UpdateBallTypeUpgradeCounter_BlueField
+ call UpdateCAVELightsBlinking_BlueField
call ResolveBlueStageBoardTriggerCollision
call ResolveBlueStagePikachuCollision
call ResolveSlowpokeCollision
@@ -16,7 +16,7 @@ ResolveBlueFieldTopGameObjectCollisions: ; 0x1c715 call Func_1f18a
callba UpdateBallSaverState
call Func_1f27b
- call Func_1df15
+ call UpdateMapMoveCounters_BlueFieldTop
callba HandleExtraBall
ld a, $0
callba Func_10000
@@ -27,9 +27,9 @@ ResolveBlueFieldBottomGameObjectCollisions: ; 0x1c769 call ResolveBlueStageBumperCollision
call ResolvePsyduckPoliwagCollision
call UpdateBlueStageSpinner
- call Func_1e4b8
- call HandleBlueStageBallTypeUpgradeCounter
- call Func_1e5c5
+ call UpdatePinballUpgradeBlinkingAnimation_BlueField
+ call UpdateBallTypeUpgradeCounter_BlueField
+ call ResolveCAVELightCollision_BlueField
call ResolveBlueStagePinballLaunchCollision
call ResolveBlueStagePikachuCollision
call Func_1ead4
@@ -41,7 +41,7 @@ ResolveBlueFieldBottomGameObjectCollisions: ; 0x1c769 callba Func_14733
callba UpdateBallSaver
call Func_1f261
- call Func_1de93
+ call UpdateMapMoveCounters_BlueFieldBottom
callba HandleExtraBall
ld a, $0
callba Func_10000
@@ -524,665 +524,7 @@ UpdateSpinnerChargeGraphics_BlueField: ; 0x1cb43 call Func_10aa
ret
-TileDataPointers_1cb60:
- dw TileData_1cb80
- dw TileData_1cb85
- dw TileData_1cb8a
- dw TileData_1cb8f
- dw TileData_1cb94
- dw TileData_1cb99
- dw TileData_1cb9e
- dw TileData_1cba3
- dw TileData_1cba8
- dw TileData_1cbad
- dw TileData_1cbb2
- dw TileData_1cbb7
- dw TileData_1cbbc
- dw TileData_1cbc1
- dw TileData_1cbc6
- dw TileData_1cbcb
-
-TileData_1cb80: ; 0x1cb80
- db $02
- dw TileData_1cbd0
- dw TileData_1cbda
-
-TileData_1cb85: ; 0x1cb85
- db $02
- dw TileData_1cbe4
- dw TileData_1cbee
-
-TileData_1cb8a: ; 0x1cb8a
- db $02
- dw TileData_1cbf8
- dw TileData_1cc02
-
-TileData_1cb8f: ; 0x1cb8f
- db $02
- dw TileData_1cc0c
- dw TileData_1cc16
-
-TileData_1cb94: ; 0x1cb94
- db $02
- dw TileData_1cc20
- dw TileData_1cc2a
-
-TileData_1cb99: ; 0x1cb99
- db $02
- dw TileData_1cc34
- dw TileData_1cc3e
-
-TileData_1cb9e: ; 0x1cb9e
- db $02
- dw TileData_1cc48
- dw TileData_1cc52
-
-TileData_1cba3: ; 0x1cba3
- db $02
- dw TileData_1cc5c
- dw TileData_1cc66
-
-TileData_1cba8: ; 0x1cba8
- db $02
- dw TileData_1cc70
- dw TileData_1cc7a
-
-TileData_1cbad: ; 0x1cbad
- db $02
- dw TileData_1cc84
- dw TileData_1cc8e
-
-TileData_1cbb2: ; 0x1cbb2
- db $02
- dw TileData_1cc98
- dw TileData_1cca2
-
-TileData_1cbb7: ; 0x1cbb7
- db $02
- dw TileData_1ccac
- dw TileData_1ccb6
-
-TileData_1cbbc: ; 0x1cbbc
- db $02
- dw TileData_1ccc0
- dw TileData_1ccca
-
-TileData_1cbc1: ; 0x1cbc1
- db $02
- dw TileData_1ccd4
- dw TileData_1ccde
-
-TileData_1cbc6: ; 0x1cbc6
- db $02
- dw TileData_1cce8
- dw TileData_1ccf2
-
-TileData_1cbcb: ; 0x1cbcb
- db $02
- dw TileData_1ccfc
- dw TileData_1cd06
-
-TileData_1cbd0: ; 0xcbd0
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageBlueFieldTopBaseGameBoyGfx + $c20
- db Bank(StageBlueFieldTopBaseGameBoyGfx)
- db $00 ; terminator
-
-TileData_1cbda: ; 0xcbda
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageBlueFieldTopBaseGameBoyGfx + $c40
- db Bank(StageBlueFieldTopBaseGameBoyGfx)
- db $00 ; terminator
-
-TileData_1cbe4: ; 0xcbe4
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1800
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cbee: ; 0xcbee
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1820
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cbf8: ; 0xcbf8
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1840
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc02: ; 0xcc02
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1860
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc0c: ; 0xcc0c
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1880
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc16: ; 0xcc16
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $18A0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc20: ; 0xcc20
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $18C0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc2a: ; 0xcc2a
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $18E0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc34: ; 0xcc34
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1900
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc3e: ; 0xcc3e
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1920
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc48: ; 0xcc48
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1940
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc52: ; 0xcc52
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1960
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc5c: ; 0xcc5c
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1980
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc66: ; 0xcc66
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $19A0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc70: ; 0xcc70
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $19C0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc7a: ; 0xcc7a
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $19E0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc84: ; 0xcc84
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1A00
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc8e: ; 0xcc8e
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1A20
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cc98: ; 0xcc98
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1A40
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cca2: ; 0xcca2
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1A60
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1ccac: ; 0xccac
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1A80
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1ccb6: ; 0xccb6
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1AA0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1ccc0: ; 0xccc0
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1AC0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1ccca: ; 0xccca
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1AE0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1ccd4: ; 0xccd4
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1B00
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1ccde: ; 0xccde
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1B20
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cce8: ; 0xcce8
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1B40
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1ccf2: ; 0xccf2
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1B60
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1ccfc: ; 0xccfc
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1B80
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1cd06: ; 0xcd06
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $6E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1BA0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileDataPointers_1cd10:
- dw TileData_1cd30
- dw TileData_1cd33
- dw TileData_1cd36
- dw TileData_1cd39
- dw TileData_1cd3c
- dw TileData_1cd3f
- dw TileData_1cd42
- dw TileData_1cd45
- dw TileData_1cd48
- dw TileData_1cd4b
- dw TileData_1cd4e
- dw TileData_1cd51
- dw TileData_1cd54
- dw TileData_1cd57
- dw TileData_1cd5a
- dw TileData_1cd5d
-
-TileData_1cd30: ; 0x1cd30
- db $01
- dw TileData_1cd60
-
-TileData_1cd33: ; 0x1cd33
- db $01
- dw TileData_1cd6e
-
-TileData_1cd36: ; 0x1cd36
- db $01
- dw TileData_1cd7c
-
-TileData_1cd39: ; 0x1cd39
- db $01
- dw TileData_1cd8a
-
-TileData_1cd3c: ; 0x1cd3c
- db $01
- dw TileData_1cd98
-
-TileData_1cd3f: ; 0x1cd3f
- db $01
- dw TileData_1cda6
-
-TileData_1cd42: ; 0x1cd42
- db $01
- dw TileData_1cdb4
-
-TileData_1cd45: ; 0x1cd45
- db $01
- dw TileData_1cdc2
-
-TileData_1cd48: ; 0x1cd48
- db $01
- dw TileData_1cdd0
-
-TileData_1cd4b: ; 0x1cd4b
- db $01
- dw TileData_1cdde
-
-TileData_1cd4e: ; 0x1cd4e
- db $01
- dw TileData_1cdec
-
-TileData_1cd51: ; 0x1cd51
- db $01
- dw TileData_1cdfa
-
-TileData_1cd54: ; 0x1cd54
- db $01
- dw TileData_1ce08
-
-TileData_1cd57: ; 0x1cd57
- db $01
- dw TileData_1ce16
-
-TileData_1cd5a: ; 0x1cd5a
- db $01
- dw TileData_1ce24
-
-TileData_1cd5d: ; 0x1cd5d
- db $01
- dw TileData_1ce32
-
-TileData_1cd60: ; 0x1cd60
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $48, $49
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $4A, $4B
-
- db $00 ; terminator
-
-TileData_1cd6e: ; 0x1cd6e
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $48, $49
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $4C, $4D
-
- db $00 ; terminator
-
-TileData_1cd7c: ; 0x1cd7c
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $48, $49
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $4E, $4F
-
- db $00 ; terminator
-
-TileData_1cd8a: ; 0x1cd8a
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $48, $49
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $50, $51
-
- db $00 ; terminator
-
-TileData_1cd98: ; 0x1cd98
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $48, $49
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $52, $53
-
- db $00 ; terminator
-
-TileData_1cda6: ; 0x1cda6
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $48, $49
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $54, $55
-
- db $00 ; terminator
-
-TileData_1cdb4: ; 0x1cdb4
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $48, $49
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $56, $57
-
- db $00 ; terminator
-
-TileData_1cdc2: ; 0x1cdc2
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $48, $49
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $58, $59
-
- db $00 ; terminator
-
-TileData_1cdd0: ; 0x1cdd0
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $48, $49
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $58, $59
-
- db $00 ; terminator
-
-TileData_1cdde: ; 0x1cdde
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $5C, $5D
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $58, $59
-
- db $00 ; terminator
-
-TileData_1cdec: ; 0x1cdec
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $5E, $5F
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $58, $59
-
- db $00 ; terminator
-
-TileData_1cdfa: ; 0x1cdfa
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $60, $61
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $58, $59
-
- db $00 ; terminator
-
-TileData_1ce08: ; 0x1ce08
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $62, $63
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $58, $59
-
- db $00 ; terminator
-
-TileData_1ce16: ; 0x1ce16
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $64, $65
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $58, $59
-
- db $00 ; terminator
-
-TileData_1ce24: ; 0x1ce24
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $66, $67
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $58, $59
-
- db $00 ; terminator
-
-TileData_1ce32: ; 0x1ce32
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $143
- db $68, $69
-
- db $02 ; number of tiles
- dw vBGMap + $163
- db $6A, $6B
-
- db $00 ; terminator
+INCLUDE "data/queued_tiledata/blue_field/spinner.asm"
ResolveBlueStageBumperCollision: ; 1ce40
ld a, [wWhichBumper]
@@ -1263,225 +605,7 @@ ApplyBumperCollision_BlueField: ; 0x1ce94 BumperCollisionAngleDeltas_BlueField:
db -8, 8
-TileDataPointers_1ceca:
- dw TileData_1ced2
- dw TileData_1ced5
- dw TileData_1ced8
- dw TileData_1cedb
-
-TileData_1ced2: ; 0x1ced2
- db $01
- dw TileData_1cede
-
-TileData_1ced5: ; 0x1ced5
- db $01
- dw TileData_1cef5
-
-TileData_1ced8: ; 0x1ced8
- db $01
- dw TileData_1cf0c
-
-TileData_1cedb: ; 0x1cedb
- db $01
- dw TileData_1cf23
-
-TileData_1cede: ; 0x1cede
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $124
- db $61
-
- db $02 ; number of tiles
- dw vBGMap + $144
- db $62, $63
-
- db $02 ; number of tiles
- dw vBGMap + $164
- db $64, $65
-
- db $02 ; number of tiles
- dw vBGMap + $185
- db $66, $67
-
- db $00 ; number of tiles
-
-TileData_1cef5: ; 0x1cef5
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $124
- db $68
-
- db $02 ; number of tiles
- dw vBGMap + $144
- db $69, $6A
-
- db $02 ; number of tiles
- dw vBGMap + $164
- db $6B, $6C
-
- db $02 ; number of tiles
- dw vBGMap + $185
- db $6D, $6E
-
- db $00 ; number of tiles
-
-TileData_1cf0c: ; 0x1cf0c
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $12F
- db $6F
-
- db $02 ; number of tiles
- dw vBGMap + $14E
- db $70, $71
-
- db $02 ; number of tiles
- dw vBGMap + $16E
- db $72, $73
-
- db $02 ; number of tiles
- dw vBGMap + $18D
- db $74, $75
-
- db $00 ; number of tiles
-
-TileData_1cf23: ; 0x1cf23
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $12F
- db $76
-
- db $02 ; number of tiles
- dw vBGMap + $14E
- db $77, $78
-
- db $02 ; number of tiles
- dw vBGMap + $16E
- db $79, $7A
-
- db $02 ; number of tiles
- dw vBGMap + $18D
- db $7B, $7C
-
- db $00 ; number of tiles
-
-TileDataPointers_1cf3a:
- dw TileData_1cf42
- dw TileData_1cf45
- dw TileData_1cf48
- dw TileData_1cf4b
-
-TileData_1cf42: ; 0x1cf42
- db $01
- dw TileData_1cf4e
-
-TileData_1cf45: ; 0x1cf45
- db $01
- dw TileData_1cf65
-
-TileData_1cf48: ; 0x1cf48
- db $01
- dw TileData_1cf7c
-
-TileData_1cf4b: ; 0x1cf4b
- db $01
- dw TileData_1cf93
-
-TileData_1cf4e: ; 0x1cf4e
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $124
- db $39
-
- db $02 ; number of tiles
- dw vBGMap + $144
- db $3A, $3B
-
- db $02 ; number of tiles
- dw vBGMap + $164
- db $3C, $3D
-
- db $02 ; number of tiles
- dw vBGMap + $185
- db $3E, $3F
-
- db $00 ; terminator
-
-TileData_1cf65: ; 0x1cf65
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $124
- db $40
-
- db $02 ; number of tiles
- dw vBGMap + $144
- db $41, $42
-
- db $02 ; number of tiles
- dw vBGMap + $164
- db $43, $44
-
- db $02 ; number of tiles
- dw vBGMap + $185
- db $45, $46
-
- db $00 ; terminator
-
-TileData_1cf7c: ; 0x1cf7c
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $12F
- db $39
-
- db $02 ; number of tiles
- dw vBGMap + $14E
- db $3B, $3A
-
- db $02 ; number of tiles
- dw vBGMap + $16E
- db $3D, $3C
-
- db $02 ; number of tiles
- dw vBGMap + $18D
- db $3F, $3E
-
- db $00 ; terminator
-
-TileData_1cf93: ; 0x1cf93
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $12F
- db $40
-
- db $02 ; number of tiles
- dw vBGMap + $14E
- db $42, $41
-
- db $02 ; number of tiles
- dw vBGMap + $16E
- db $44, $43
-
- db $02 ; number of tiles
- dw vBGMap + $18D
- db $46, $45
-
- db $00 ; terminator
+INCLUDE "data/queued_tiledata/blue_field/bumpers.asm"
ResolveBlueStageBoardTriggerCollision: ; 0x1cfaa
ld a, [wWhichBoardTrigger]
@@ -1699,7 +823,7 @@ Func_1d133: ; 0x1d133 jr nc, .asm_1d185
ld c, $a
call Modulo_C
- callba z, IncrementBonusMultiplier
+ callba z, IncrementBonusMultiplierFromFieldEvent
.asm_1d185
lb de, $16, $10
call PlaySoundEffect
@@ -1845,7 +969,7 @@ ResolveSlowpokeCollision: ; 0x1d216 ret nc
ld c, $19
call Modulo_C
- callba z, IncrementBonusMultiplier
+ callba z, IncrementBonusMultiplierFromFieldEvent
ret
.asm_1d2b6
@@ -1967,7 +1091,7 @@ ResolveCloysterCollision: ; 0x1d32d ret nc
ld c, $19
call Modulo_C
- callba z, IncrementBonusMultiplier
+ callba z, IncrementBonusMultiplierFromFieldEvent
ret
.asm_1d3cb
@@ -2027,14 +1151,14 @@ ResolveBlueStageBonusMultiplierCollision: ; 0x1d438 call Func_1d692
ld a, [wWhichBonusMultiplierRailing]
and a
- jp z, Func_1d51b
+ jp z, UpdateBonusMultiplierRailing_BlueField
xor a
ld [wWhichBonusMultiplierRailing], a
lb de, $00, $0d
call PlaySoundEffect
ld a, [wWhichBonusMultiplierRailingId]
sub $f
- jr nz, .asm_1d48e
+ jr nz, .hitRightRailing
ld a, [hGameBoyColorFlag]
and a
jr nz, .asm_1d45c
@@ -2044,7 +1168,7 @@ ResolveBlueStageBonusMultiplierCollision: ; 0x1d438 .asm_1d45c
ld a, $29
.asm_1d45e
- call Func_1d5f2
+ call LoadBonusMultiplierRailingGraphics_BlueField
ld a, $3c
ld [wd647], a
ld a, $9
@@ -2056,12 +1180,12 @@ ResolveBlueStageBonusMultiplierCollision: ; 0x1d438 ld [wd610], a
ld a, $3
ld [wd611], a
- ld a, [wd60c]
+ ld a, [wBonusMultiplierTensDigit]
set 7, a
- ld [wd60c], a
+ ld [wBonusMultiplierTensDigit], a
jr asm_1d4fa
-.asm_1d48e
+.hitRightRailing
ld a, [hGameBoyColorFlag]
and a
jr nz, .asm_1d497
@@ -2071,7 +1195,7 @@ ResolveBlueStageBonusMultiplierCollision: ; 0x1d438 .asm_1d497
ld a, $2b
.asm_1d499
- call Func_1d5f2
+ call LoadBonusMultiplierRailingGraphics_BlueField
ld a, $1e
ld [wd647], a
ld a, $a
@@ -2085,41 +1209,41 @@ ResolveBlueStageBonusMultiplierCollision: ; 0x1d438 ld [wd611], a
ld a, $80
ld [wd612], a
- ld a, [wd60d]
+ ld a, [wBonusMultiplierOnesDigit]
set 7, a
- ld [wd60d], a
- ld a, [wd482]
+ ld [wBonusMultiplierOnesDigit], a
+ ld a, [wCurBonusMultiplier]
inc a
- cp 100
- jr c, .asm_1d4d5
- ld a, 99
-.asm_1d4d5
- ld [wd482], a
+ cp MAX_BONUS_MULTIPLIER + 1
+ jr c, .setNewBonusMultplier
+ ld a, MAX_BONUS_MULTIPLIER
+.setNewBonusMultplier
+ ld [wCurBonusMultiplier], a
jr nc, .asm_1d4e9
ld c, $19
call Modulo_C
- callba z, IncrementBonusMultiplier
+ callba z, IncrementBonusMultiplierFromFieldEvent
.asm_1d4e9
- ld a, [wd60c]
+ ld a, [wBonusMultiplierTensDigit]
ld [wd614], a
- ld a, [wd60d]
+ ld a, [wBonusMultiplierOnesDigit]
ld [wd615], a
ld a, $1
ld [wd613], a
asm_1d4fa: ; 0x1d4fa
ld bc, TenPoints
callba AddBigBCD6FromQueueWithBallMultiplier
- ld a, [wd60c]
- call Func_1d5f2
- ld a, [wd60d]
+ ld a, [wBonusMultiplierTensDigit]
+ call LoadBonusMultiplierRailingGraphics_BlueField
+ ld a, [wBonusMultiplierOnesDigit]
add $14
- call Func_1d5f2
+ call LoadBonusMultiplierRailingGraphics_BlueField
ld a, $3c
ld [wd647], a
ret
-Func_1d51b: ; 0x1d51b
- call Func_1d5bf
+UpdateBonusMultiplierRailing_BlueField: ; 0x1d51b
+ call ShowBonusMultiplierMessage_BlueField ; only shows the scrolling message when appropriate
ld a, [wd612]
and a
jr z, .asm_1d559
@@ -2140,13 +1264,13 @@ Func_1d51b: ; 0x1d51b ld [wd610], a
xor a
ld [wd611], a
- ld a, [wd482]
- call Func_1d65f
- ld a, [wd60c]
- call Func_1d5f2
- ld a, [wd60d]
+ ld a, [wCurBonusMultiplier]
+ call GetBCDForNextBonusMultiplier_BlueField
+ ld a, [wBonusMultiplierTensDigit]
+ call LoadBonusMultiplierRailingGraphics_BlueField
+ ld a, [wBonusMultiplierOnesDigit]
add $14
- call Func_1d5f2
+ call LoadBonusMultiplierRailingGraphics_BlueField
ret
.asm_1d559
@@ -2164,17 +1288,17 @@ Func_1d51b: ; 0x1d51b jr nz, .asm_1d58b
bit 3, b
jr nz, .asm_1d580
- ld a, [wd60c]
+ ld a, [wBonusMultiplierTensDigit]
res 7, a
- ld [wd60c], a
- call Func_1d5f2
+ ld [wBonusMultiplierTensDigit], a
+ call LoadBonusMultiplierRailingGraphics_BlueField
jr .asm_1d58b
.asm_1d580
- ld a, [wd60c]
+ ld a, [wBonusMultiplierTensDigit]
set 7, a
- ld [wd60c], a
- call Func_1d5f2
+ ld [wBonusMultiplierTensDigit], a
+ call LoadBonusMultiplierRailingGraphics_BlueField
.asm_1d58b
ld a, [wd611]
cp $2
@@ -2190,22 +1314,22 @@ Func_1d51b: ; 0x1d51b ret nz
bit 3, b
jr nz, .asm_1d5b1
- ld a, [wd60d]
+ ld a, [wBonusMultiplierOnesDigit]
res 7, a
- ld [wd60d], a
+ ld [wBonusMultiplierOnesDigit], a
add $14
- call Func_1d5f2
+ call LoadBonusMultiplierRailingGraphics_BlueField
ret
.asm_1d5b1
- ld a, [wd60d]
+ ld a, [wBonusMultiplierOnesDigit]
set 7, a
- ld [wd60d], a
+ ld [wBonusMultiplierOnesDigit], a
add $14
- call Func_1d5f2
+ call LoadBonusMultiplierRailingGraphics_BlueField
ret
-Func_1d5bf: ; 0x1d5bf
+ShowBonusMultiplierMessage_BlueField: ; 0x1d5bf
ld a, [wd5ca]
and a
ret nz
@@ -2216,9 +1340,9 @@ Func_1d5bf: ; 0x1d5bf ld [wd613], a
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5cc
+ ld hl, wScrollingText1
ld de, BonusMultiplierText
- call LoadTextHeader
+ call LoadScrollingText
ld hl, wBottomMessageText + $12
ld a, [wd614]
and $7f
@@ -2232,21 +1356,21 @@ Func_1d5bf: ; 0x1d5bf ld [hl], a
ret
-Func_1d5f2: ; 0x1d5f2
+LoadBonusMultiplierRailingGraphics_BlueField: ; 0x1d5f2
push af
ld a, [hGameBoyColorFlag]
and a
- jr nz, .asm_1d5fd
+ jr nz, .gameboyColor
pop af
- call Func_1d602
+ call LoadBonusMultiplierRailingGraphics_BlueField_Gameboy
ret
-.asm_1d5fd
+.gameboyColor
pop af
- call Func_1d645
+ call LoadBonusMultiplierRailingGraphics_BlueField_GameboyColor
ret
-Func_1d602: ; 0x1d602
+LoadBonusMultiplierRailingGraphics_BlueField_Gameboy: ; 0x1d602
push af
res 7, a
ld hl, wd60e
@@ -2261,12 +1385,12 @@ Func_1d602: ; 0x1d602 ld c, a
ld b, $0
sla c
- ld hl, TileDataPointers_1d6be
+ ld hl, BonusMultiplierRailingTileDataPointers_1d6be
add hl, bc
ld a, [hli]
ld h, [hl]
ld l, a
- ld a, Bank(TileDataPointers_1d6be)
+ ld a, Bank(BonusMultiplierRailingTileDataPointers_1d6be)
call Func_10aa
.asm_1d626
pop af
@@ -2280,16 +1404,16 @@ Func_1d602: ; 0x1d602 jr c, .asm_1d638
set 2, c
.asm_1d638
- ld hl, TileDataPointers_1d946
+ ld hl, BonusMultiplierRailingTileDataPointers_1d946
add hl, bc
ld a, [hli]
ld h, [hl]
ld l, a
- ld a, Bank(TileDataPointers_1d946)
+ ld a, Bank(BonusMultiplierRailingTileDataPointers_1d946)
call Func_10aa
ret
-Func_1d645: ; 0x1d645
+LoadBonusMultiplierRailingGraphics_BlueField_GameboyColor: ; 0x1d645
bit 7, a
jr z, .asm_1d64d
res 7, a
@@ -2298,43 +1422,46 @@ Func_1d645: ; 0x1d645 ld c, a
ld b, $0
sla c
- ld hl, TileDataPointers_1d97a
+ ld hl, BonusMultiplierRailingTileDataPointers_1d97a
add hl, bc
ld a, [hli]
ld h, [hl]
ld l, a
- ld a, Bank(TileDataPointers_1d97a)
+ ld a, Bank(BonusMultiplierRailingTileDataPointers_1d97a)
call Func_10aa
ret
-Func_1d65f: ; 0x1d65f
- ld a, [wd482]
+GetBCDForNextBonusMultiplier_BlueField: ; 0x1d65f
+; Gets the BCD representation of the next bonus multplier value.
+; Output: [wBonusMultiplierTensDigit] = the tens digit
+; [wBonusMultiplierOnesDigit] = the ones digit
+ ld a, [wCurBonusMultiplier]
inc a
- cp $64
- jr c, .asm_1d669
- ld a, $63
-.asm_1d669
+ cp MAX_BONUS_MULTIPLIER + 1
+ jr c, .max99
+ ld a, MAX_BONUS_MULTIPLIER
+.max99
ld b, a
xor a
ld hl, Data_1d68b
ld c, $7
-.asm_1d670
+.loop
bit 0, b
- jr z, .asm_1d676
+ jr z, .evenNumber
add [hl]
daa
-.asm_1d676
+.evenNumber
srl b
inc hl
dec c
- jr nz, .asm_1d670
+ jr nz, .loop
push af
swap a
and $f
- ld [wd60c], a
+ ld [wBonusMultiplierTensDigit], a
pop af
and $f
- ld [wd60d], a
+ ld [wBonusMultiplierOnesDigit], a
ret
Data_1d68b:
@@ -2356,1319 +1483,53 @@ Func_1d692: ; 0x1d692 and a
jr nz, .asm_1d6b3
ld a, $1e
- call Func_1d5f2
+ call LoadBonusMultiplierRailingGraphics_BlueField
ld a, $20
- call Func_1d5f2
+ call LoadBonusMultiplierRailingGraphics_BlueField
ret
.asm_1d6b3
ld a, $2a
- call Func_1d5f2
+ call LoadBonusMultiplierRailingGraphics_BlueField
ld a, $28
- call Func_1d5f2
+ call LoadBonusMultiplierRailingGraphics_BlueField
ret
-TileDataPointers_1d6be:
- dw TileData_1d6ee
- dw TileData_1d6f3
- dw TileData_1d6f8
- dw TileData_1d6fd
- dw TileData_1d702
- dw TileData_1d707
- dw TileData_1d70c
- dw TileData_1d711
- dw TileData_1d716
- dw TileData_1d71b
- dw TileData_1d720
- dw TileData_1d725
- dw TileData_1d72a
- dw TileData_1d72f
- dw TileData_1d734
- dw TileData_1d739
- dw TileData_1d73e
- dw TileData_1d743
- dw TileData_1d748
- dw TileData_1d74d
- dw TileData_1d752
- dw TileData_1d757
- dw TileData_1d75c
- dw TileData_1d761
-
-TileData_1d6ee: ; 0x1d6ee
- db $02
- dw TileData_1d766
- dw TileData_1d770
-
-TileData_1d6f3: ; 0x1d6f3
- db $02
- dw TileData_1d77a
- dw TileData_1d784
-
-TileData_1d6f8: ; 0x1d6f8
- db $02
- dw TileData_1d78e
- dw TileData_1d798
-
-TileData_1d6fd: ; 0x1d6fd
- db $02
- dw TileData_1d7a2
- dw TileData_1d7AC
-
-TileData_1d702: ; 0x1d702
- db $02
- dw TileData_1d7b6
- dw TileData_1d7C0
-
-TileData_1d707: ; 0x1d707
- db $02
- dw TileData_1d7ca
- dw TileData_1d7D4
-
-TileData_1d70c: ; 0x1d70c
- db $02
- dw TileData_1d7de
- dw TileData_1d7E8
-
-TileData_1d711: ; 0x1d711
- db $02
- dw TileData_1d7f2
- dw TileData_1d7FC
-
-TileData_1d716: ; 0x1d716
- db $02
- dw TileData_1d806
- dw TileData_1d810
-
-TileData_1d71b: ; 0x1d71b
- db $02
- dw TileData_1d81a
- dw TileData_1d824
-
-TileData_1d720: ; 0x1d720
- db $02
- dw TileData_1d82e
- dw TileData_1d838
-
-TileData_1d725: ; 0x1d725
- db $02
- dw TileData_1d842
- dw TileData_1d84C
-
-TileData_1d72a: ; 0x1d72a
- db $02
- dw TileData_1d856
- dw TileData_1d860
-
-TileData_1d72f: ; 0x1d72f
- db $02
- dw TileData_1d86a
- dw TileData_1d874
-
-TileData_1d734: ; 0x1d734
- db $02
- dw TileData_1d87e
- dw TileData_1d888
-
-TileData_1d739: ; 0x1d739
- db $02
- dw TileData_1d892
- dw TileData_1d89C
-
-TileData_1d73e: ; 0x1d73e
- db $02
- dw TileData_1d8a6
- dw TileData_1d8B0
-
-TileData_1d743: ; 0x1d743
- db $02
- dw TileData_1d8ba
- dw TileData_1d8C4
-
-TileData_1d748: ; 0x1d748
- db $02
- dw TileData_1d8ce
- dw TileData_1d8D8
-
-TileData_1d74d: ; 0x1d74d
- db $02
- dw TileData_1d8e2
- dw TileData_1d8EC
-
-TileData_1d752: ; 0x1d752
- db $02
- dw TileData_1d8f6
- dw TileData_1d900
-
-TileData_1d757: ; 0x1d757
- db $02
- dw TileData_1d90a
- dw TileData_1d914
-
-TileData_1d75c: ; 0x1d75c
- db $02
- dw TileData_1d91e
- dw TileData_1d928
-
-TileData_1d761: ; 0x1d761
- db $02
- dw TileData_1d932
- dw TileData_1d93C
-
-TileData_1d766: ; 0x1d766
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $27
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1d60
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d770: ; 0x1d770
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7D
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1cc0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d77a: ; 0x1d77a
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $27
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1d70
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d784: ; 0x1d784
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7D
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1cd0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d78e: ; 0x1d78e
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $27
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1d80
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d798: ; 0x1d798
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7D
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1ce0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d7a2: ; 0x1d7a2
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $27
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1d90
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d7AC: ; 0x1d7AC
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7D
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1cf0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d7b6: ; 0x1d7b6
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $27
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1da0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d7C0: ; 0x1d7C0
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7D
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1d00
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d7ca: ; 0x1d7ca
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $27
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1db0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d7D4: ; 0x1d7D4
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7D
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1d10
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d7de: ; 0x1d7de
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $27
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1dc0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d7E8: ; 0x1d7E8
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7D
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1d20
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d7f2: ; 0x1d7f2
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $27
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1dd0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d7FC: ; 0x1d7FC
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7D
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1d30
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d806: ; 0x1d806
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $27
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1de0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d810: ; 0x1d810
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7D
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1d40
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d81a: ; 0x1d81a
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $27
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1df0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d824: ; 0x1d824
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7D
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1d50
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d82e: ; 0x1d82e
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $28
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1ea0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d838: ; 0x1d838
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1e00
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d842: ; 0x1d842
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $28
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1eb0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d84C: ; 0x1d84C
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1e10
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d856: ; 0x1d856
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $28
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1ec0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d860: ; 0x1d860
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1e20
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d86a: ; 0x1d86a
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $28
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1ed0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d874: ; 0x1d874
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1e30
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d87e: ; 0x1d87e
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $28
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1ee0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d888: ; 0x1d888
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1e40
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d892: ; 0x1d892
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $28
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1ef0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d89C: ; 0x1d89C
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1e50
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d8a6: ; 0x1d8a6
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $28
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1f00
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d8B0: ; 0x1d8B0
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1e60
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d8ba: ; 0x1d8ba
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $28
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1f10
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d8C4: ; 0x1d8C4
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1e70
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d8ce: ; 0x1d8ce
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $28
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1f20
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d8D8: ; 0x1d8D8
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1e80
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d8e2: ; 0x1d8e2
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $28
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1f30
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d8EC: ; 0x1d8EC
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $7E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1e90
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1d8f6: ; 0x1d8f6
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $29
- dw StageBlueFieldBottomBaseGameBoyGfx + $A90
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1d900: ; 0x1d900
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $2C
- dw StageBlueFieldBottomBaseGameBoyGfx + $AC0
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1d90a: ; 0x1d90a
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $29
- dw StageBlueFieldBottomBaseGameBoyGfx + $AE0
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1d914: ; 0x1d914
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $2C
- dw StageBlueFieldBottomBaseGameBoyGfx + $B10
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1d91e: ; 0x1d91e
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $33
- dw StageBlueFieldBottomBaseGameBoyGfx + $B30
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1d928: ; 0x1d928
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $36
- dw StageBlueFieldBottomBaseGameBoyGfx + $B60
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1d932: ; 0x1d932
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $33
- dw StageBlueFieldBottomBaseGameBoyGfx + $B80
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1d93C: ; 0x1d93C
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $36
- dw StageBlueFieldBottomBaseGameBoyGfx + $BB0
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileDataPointers_1d946:
- dw TileData_1d94e
- dw TileData_1d951
- dw TileData_1d954
- dw TileData_1d957
-
-TileData_1d94e: ; 0x1d94e
- db $01
- dw TileData_1d95a
-
-TileData_1d951: ; 0x1d951
- db $01
- dw TileData_1d962
-
-TileData_1d954: ; 0x1d954
- db $01
- dw TileData_1d96a
-
-TileData_1d957: ; 0x1d957
- db $01
- dw TileData_1d972
-
-TileData_1d95a: ; 0x1d95a
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $27
-
- db $00 ; terminator
-
-TileData_1d962: ; 0x1d962
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $7D
-
- db $00 ; terminator
-
-TileData_1d96a: ; 0x1d96a
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $28
-
- db $00 ; terminator
-
-TileData_1d972: ; 0x1d972
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $7E
-
- db $00 ; terminator
-
-TileDataPointers_1d97a:
- dw TileData_1d9d2
- dw TileData_1d9d5
- dw TileData_1d9d8
- dw TileData_1d9db
- dw TileData_1d9de
- dw TileData_1d9e1
- dw TileData_1d9e4
- dw TileData_1d9e7
- dw TileData_1d9ea
- dw TileData_1d9ed
- dw TileData_1d9f0
- dw TileData_1d9f3
- dw TileData_1d9f6
- dw TileData_1d9f9
- dw TileData_1d9fc
- dw TileData_1d9ff
- dw TileData_1da02
- dw TileData_1da05
- dw TileData_1da08
- dw TileData_1da0b
- dw TileData_1da0e
- dw TileData_1da11
- dw TileData_1da14
- dw TileData_1da17
- dw TileData_1da1a
- dw TileData_1da1d
- dw TileData_1da20
- dw TileData_1da23
- dw TileData_1da26
- dw TileData_1da29
- dw TileData_1da2c
- dw TileData_1da2f
- dw TileData_1da32
- dw TileData_1da35
- dw TileData_1da38
- dw TileData_1da3b
- dw TileData_1da3e
- dw TileData_1da41
- dw TileData_1da44
- dw TileData_1da47
- dw TileData_1da4a
- dw TileData_1da4d
- dw TileData_1da50
- dw TileData_1da53
-
-TileData_1d9d2: ; 0x1d9d2
- db $01
- dw TileData_1da56
-
-TileData_1d9d5: ; 0x1d9d5
- db $01
- dw TileData_1da5e
-
-TileData_1d9d8: ; 0x1d9d8
- db $01
- dw TileData_1da66
-
-TileData_1d9db: ; 0x1d9db
- db $01
- dw TileData_1da6e
-
-TileData_1d9de: ; 0x1d9de
- db $01
- dw TileData_1da76
-
-TileData_1d9e1: ; 0x1d9e1
- db $01
- dw TileData_1da7e
-
-TileData_1d9e4: ; 0x1d9e4
- db $01
- dw TileData_1da86
-
-TileData_1d9e7: ; 0x1d9e7
- db $01
- dw TileData_1da8e
-
-TileData_1d9ea: ; 0x1d9ea
- db $01
- dw TileData_1da96
-
-TileData_1d9ed: ; 0x1d9ed
- db $01
- dw TileData_1da9e
-
-TileData_1d9f0: ; 0x1d9f0
- db $01
- dw TileData_1daa6
-
-TileData_1d9f3: ; 0x1d9f3
- db $01
- dw TileData_1daae
-
-TileData_1d9f6: ; 0x1d9f6
- db $01
- dw TileData_1dab6
-
-TileData_1d9f9: ; 0x1d9f9
- db $01
- dw TileData_1dabe
-
-TileData_1d9fc: ; 0x1d9fc
- db $01
- dw TileData_1dac6
-
-TileData_1d9ff: ; 0x1d9ff
- db $01
- dw TileData_1dace
-
-TileData_1da02: ; 0x1da02
- db $01
- dw TileData_1dad6
-
-TileData_1da05: ; 0x1da05
- db $01
- dw TileData_1dade
-
-TileData_1da08: ; 0x1da08
- db $01
- dw TileData_1dae6
-
-TileData_1da0b: ; 0x1da0b
- db $01
- dw TileData_1daee
-
-TileData_1da0e: ; 0x1da0e
- db $01
- dw TileData_1daf6
-
-TileData_1da11: ; 0x1da11
- db $01
- dw TileData_1dafe
-
-TileData_1da14: ; 0x1da14
- db $01
- dw TileData_1db06
-
-TileData_1da17: ; 0x1da17
- db $01
- dw TileData_1db0e
-
-TileData_1da1a: ; 0x1da1a
- db $01
- dw TileData_1db16
-
-TileData_1da1d: ; 0x1da1d
- db $01
- dw TileData_1db1e
-
-TileData_1da20: ; 0x1da20
- db $01
- dw TileData_1db26
-
-TileData_1da23: ; 0x1da23
- db $01
- dw TileData_1db2e
-
-TileData_1da26: ; 0x1da26
- db $01
- dw TileData_1db36
-
-TileData_1da29: ; 0x1da29
- db $01
- dw TileData_1db3e
-
-TileData_1da2c: ; 0x1da2c
- db $01
- dw TileData_1db46
-
-TileData_1da2f: ; 0x1da2f
- db $01
- dw TileData_1db4e
-
-TileData_1da32: ; 0x1da32
- db $01
- dw TileData_1db56
-
-TileData_1da35: ; 0x1da35
- db $01
- dw TileData_1db5e
-
-TileData_1da38: ; 0x1da38
- db $01
- dw TileData_1db66
-
-TileData_1da3b: ; 0x1da3b
- db $01
- dw TileData_1db6e
-
-TileData_1da3e: ; 0x1da3e
- db $01
- dw TileData_1db76
-
-TileData_1da41: ; 0x1da41
- db $01
- dw TileData_1db7e
-
-TileData_1da44: ; 0x1da44
- db $01
- dw TileData_1db86
-
-TileData_1da47: ; 0x1da47
- db $01
- dw TileData_1db8e
-
-TileData_1da4a: ; 0x1da4a
- db $01
- dw TileData_1db96
-
-TileData_1da4d: ; 0x1da4d
- db $01
- dw TileData_1dba5
-
-TileData_1da50: ; 0x1da50
- db $01
- dw TileData_1dbb4
-
-TileData_1da53: ; 0x1da53
- db $01
- dw TileData_1dbc3
-
-TileData_1da56: ; 0x1da56
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $62
-
- db $00 ; terminator
-
-TileData_1da5e: ; 0x1da5e
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $63
-
- db $00 ; terminator
-
-TileData_1da66: ; 0x1da66
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $64
-
- db $00 ; terminator
-
-TileData_1da6e: ; 0x1da6e
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $65
-
- db $00 ; terminator
-
-TileData_1da76: ; 0x1da76
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $66
-
- db $00 ; terminator
-
-TileData_1da7e: ; 0x1da7e
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $67
-
- db $00 ; terminator
-
-TileData_1da86: ; 0x1da86
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $68
-
- db $00 ; terminator
-
-TileData_1da8e: ; 0x1da8e
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $69
-
- db $00 ; terminator
-
-TileData_1da96: ; 0x1da96
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $6A
-
- db $00 ; terminator
-
-TileData_1da9e: ; 0x1da9e
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $6B
-
- db $00 ; terminator
-
-TileData_1daa6: ; 0x1daa6
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $58
-
- db $00 ; terminator
-
-TileData_1daae: ; 0x1daae
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $59
-
- db $00 ; terminator
-
-TileData_1dab6: ; 0x1dab6
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $5A
-
- db $00 ; terminator
-
-TileData_1dabe: ; 0x1dabe
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $5B
-
- db $00 ; terminator
-
-TileData_1dac6: ; 0x1dac6
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $5C
-
- db $00 ; terminator
-
-TileData_1dace: ; 0x1dace
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $5D
-
- db $00 ; terminator
-
-TileData_1dad6: ; 0x1dad6
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $5E
-
- db $00 ; terminator
-
-TileData_1dade: ; 0x1dade
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $5F
-
- db $00 ; terminator
-
-TileData_1dae6: ; 0x1dae6
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $60
-
- db $00 ; terminator
-
-TileData_1daee: ; 0x1daee
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $4
- db $61
-
- db $00 ; terminator
-
-TileData_1daf6: ; 0x1daf6
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $76
-
- db $00 ; terminator
-
-TileData_1dafe: ; 0x1dafe
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $77
-
- db $00 ; terminator
-
-TileData_1db06: ; 0x1db06
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $78
-
- db $00 ; terminator
-
-TileData_1db0e: ; 0x1db0e
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $79
-
- db $00 ; terminator
-
-TileData_1db16: ; 0x1db16
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $7A
-
- db $00 ; terminator
-
-TileData_1db1e: ; 0x1db1e
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $7B
-
- db $00 ; terminator
-
-TileData_1db26: ; 0x1db26
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $7C
-
- db $00 ; terminator
-
-TileData_1db2e: ; 0x1db2e
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $7D
-
- db $00 ; terminator
-
-TileData_1db36: ; 0x1db36
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $7E
-
- db $00 ; terminator
-
-TileData_1db3e: ; 0x1db3e
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $7F
-
- db $00 ; terminator
-
-TileData_1db46: ; 0x1db46
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $6C
-
- db $00 ; terminator
-
-TileData_1db4e: ; 0x1db4e
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $6D
-
- db $00 ; terminator
-
-TileData_1db56: ; 0x1db56
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $6E
-
- db $00 ; terminator
-
-TileData_1db5e: ; 0x1db5e
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $6F
-
- db $00 ; terminator
-
-TileData_1db66: ; 0x1db66
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $70
-
- db $00 ; terminator
-
-TileData_1db6e: ; 0x1db6e
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $71
-
- db $00 ; terminator
-
-TileData_1db76: ; 0x1db76
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $72
-
- db $00 ; terminator
-
-TileData_1db7e: ; 0x1db7e
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $73
-
- db $00 ; terminator
-
-TileData_1db86: ; 0x1db86
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $74
-
- db $00 ; terminator
-
-TileData_1db8e: ; 0x1db8e
- dw LoadTileLists
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $F
- db $75
-
- db $00 ; terminator
-
-TileData_1db96: ; 0x1db96
- dw LoadTileLists
- db $05 ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $24
- db $25, $26, $27
-
- db $02 ; number of tiles
- dw vBGMap + $44
- db $28, $29
-
- db $00 ; terminator
-
-TileData_1dba5: ; 0x1dba5
- dw LoadTileLists
- db $05 ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $24
- db $2A, $2B, $2C
-
- db $02 ; number of tiles
- dw vBGMap + $44
- db $2D, $2E
-
- db $00 ; terminator
-
-TileData_1dbb4: ; 0x1dbb4
- dw LoadTileLists
- db $05 ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $2D
- db $27, $26, $2F
-
- db $02 ; number of tiles
- dw vBGMap + $4E
- db $29, $28
-
- db $00 ; terminator
-
-TileData_1dbc3: ; 0x1dbc3
- dw LoadTileLists
- db $05 ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $2D
- db $2C, $2B, $30
-
- db $02 ; number of tiles
- dw vBGMap + $4E
- db $2E, $2D
-
- db $00 ; terminator
+INCLUDE "data/queued_tiledata/blue_field/bonus_multiplier_railings.asm"
ResolvePsyduckPoliwagCollision: ; 0x1dbd2
ld a, [wWhichPsyduckPoliwag]
and a
- jp z, Func_1dc8e
+ jp z, UpdatePsyduckAndPoliwag
cp $2
- jr z, .asm_1dc33
+ jr z, .hitPsyduck
+ ; hit poliwag
xor a
ld [wWhichPsyduckPoliwag], a
ld hl, wLeftMapMoveCounter
ld a, [hl]
cp $3
- jp z, Func_1dc8e
+ jp z, UpdatePsyduckAndPoliwag
inc a
ld [hl], a
- ld hl, wd4f7
- ld a, $e0
+ ; Set 8 seconds until the counter will decrease by 1
+ ld hl, wLeftMapMoveCounterFramesUntilDecrease
+ ld a, MAP_MOVE_FRAMES_COUNTER & $ff
ld [hli], a
- ld a, $1
+ ld a, MAP_MOVE_FRAMES_COUNTER >> 8
ld [hl], a
ld a, [wCurrentStage]
bit 0, a
- jr z, .asm_1dc06
+ jr z, .skipCollisionMapChange
ld a, $54
ld [wStageCollisionMap + $e3], a
ld a, $55
ld [wStageCollisionMap + $103], a
-.asm_1dc06
+.skipCollisionMapChange
ld a, $1
- call Func_1de4b
+ call LoadPsyduckOrPoliwagGraphics
ld a, [wLeftMapMoveCounter]
- call Func_1de6f
+ call LoadPsyduckOrPoliwagNumberGraphics
ld a, [wLeftMapMoveCounter]
cp $3
ld a, $7
@@ -3676,24 +1537,25 @@ ResolvePsyduckPoliwagCollision: ; 0x1dbd2 ld a, $2
ld [wd646], a
ld a, $78
- ld [wLeftMapMoveDiglettAnimationCounter], a
+ ld [wLeftMapMovePoliwagAnimationCounter], a
ld a, $14
- ld [wLeftMapMoveDiglettFrame], a
+ ld [wLeftMapMovePoliwagFrame], a
jr .asm_1dc8a
-.asm_1dc33
+.hitPsyduck
xor a
ld [wWhichPsyduckPoliwag], a
ld hl, wRightMapMoveCounter
ld a, [hl]
cp $3
- jp z, Func_1dc8e
+ jp z, UpdatePsyduckAndPoliwag
inc a
ld [hl], a
- ld hl, wd4f9
- ld a, $e0
+ ; Set 8 seconds until the counter will decrease by 1
+ ld hl, wRightMapMoveCounterFramesUntilDecrease
+ ld a, MAP_MOVE_FRAMES_COUNTER & $ff
ld [hli], a
- ld a, $1
+ ld a, MAP_MOVE_FRAMES_COUNTER >> 8
ld [hl], a
ld a, [wCurrentStage]
bit 0, a
@@ -3704,7 +1566,7 @@ ResolvePsyduckPoliwagCollision: ; 0x1dbd2 ld [wStageCollisionMap + $110], a
.asm_1dc5c
ld a, $3
- call Func_1de4b
+ call LoadPsyduckOrPoliwagGraphics
ld a, [wRightMapMoveCounter]
cp $3
ld a, $8
@@ -3712,41 +1574,41 @@ ResolvePsyduckPoliwagCollision: ; 0x1dbd2 ld a, [wRightMapMoveCounter]
cp $3
ccf
- call z, Func_1ddf4
+ call z, HitPsyduck3Times
ld a, $2
ld [wd645], a
ld a, $28
- ld [wRightMapMoveDiglettAnimationCounter], a
+ ld [wRightMapMovePsyduckAnimationCounter], a
ld a, $78
- ld [wRightMapMoveDiglettFrame], a
+ ld [wRightMapMovePsyduckFrame], a
.asm_1dc8a
- call Func_1de22
+ call AddScorePsyduckOrPoliwag
ret
-Func_1dc8e: ; 0x1dc8e
- call Func_1dc95
- call Func_1dd2e
+UpdatePsyduckAndPoliwag: ; 0x1dc8e
+ call UpdatePoliwag
+ call UpdatePsyduck
ret
-Func_1dc95: ; 0x1dc95
+UpdatePoliwag: ; 0x1dc95
ld a, [wd646]
cp $0
ret z
- ld a, [wLeftMapMoveDiglettAnimationCounter]
+ ld a, [wLeftMapMovePoliwagAnimationCounter]
and a
jr z, .asm_1dceb
dec a
- ld [wLeftMapMoveDiglettAnimationCounter], a
+ ld [wLeftMapMovePoliwagAnimationCounter], a
ld a, [wd644]
and a
ret nz
- ld a, [wLeftMapMoveDiglettFrame]
+ ld a, [wLeftMapMovePoliwagFrame]
cp $1
jr z, .asm_1dcb9
cp $0
ret z
dec a
- ld [wLeftMapMoveDiglettFrame], a
+ ld [wLeftMapMovePoliwagFrame], a
ret
.asm_1dcb9
@@ -3772,11 +1634,11 @@ Func_1dc95: ; 0x1dc95 .asm_1dcd7
ld a, $8
.asm_1dcd9
- call Func_1de6f
+ call LoadPsyduckOrPoliwagNumberGraphics
ld a, [wLeftMapMoveCounter]
cp $3
ccf
- call z, Func_1ddc7
+ call z, HitPoliwag3Times
ld a, $1
ld [wd646], a
ret
@@ -3785,11 +1647,11 @@ Func_1dc95: ; 0x1dc95 ld a, [wd646]
cp $1
ret nz
- ld a, [wLeftMapMoveDiglettAnimationCounter]
+ ld a, [wLeftMapMovePoliwagAnimationCounter]
and a
ret nz
ld a, $0
- call Func_1de4b
+ call LoadPsyduckOrPoliwagGraphics
ld a, [wCurrentStage]
bit 0, a
jr z, .asm_1dd0c
@@ -3806,9 +1668,9 @@ Func_1dc95: ; 0x1dc95 ld a, [wLeftMapMoveCounter]
sub $3
ld [wLeftMapMoveCounter], a
- call Func_1de6f
+ call LoadPsyduckOrPoliwagNumberGraphics
ld a, $0
- call Func_1de4b
+ call LoadPsyduckOrPoliwagGraphics
ld a, $0
ld [wd646], a
ret
@@ -3816,7 +1678,7 @@ Func_1dc95: ; 0x1dc95 ; XXX
ret
-Func_1dd2e: ; 0x1dd2e
+UpdatePsyduck: ; 0x1dd2e
ld a, [wd645]
cp $0
ret z
@@ -3824,16 +1686,16 @@ Func_1dd2e: ; 0x1dd2e jr z, .asm_1dd53
cp $3
jr z, .asm_1dd69
- ld a, [wRightMapMoveDiglettAnimationCounter]
+ ld a, [wRightMapMovePsyduckAnimationCounter]
cp $0
jr z, .asm_1dd48
dec a
- ld [wRightMapMoveDiglettAnimationCounter], a
+ ld [wRightMapMovePsyduckAnimationCounter], a
ret
.asm_1dd48
ld a, $2
- call Func_1de4b
+ call LoadPsyduckOrPoliwagGraphics
ld a, $1
ld [wd645], a
ret
@@ -3841,20 +1703,20 @@ Func_1dd2e: ; 0x1dd2e .asm_1dd53
ld a, [wRightMapMoveCounter]
add $4
- call Func_1de6f
+ call LoadPsyduckOrPoliwagNumberGraphics
ld a, [wRightMapMoveCounter]
add $3
- call Func_1de4b
+ call LoadPsyduckOrPoliwagGraphics
ld a, $3
ld [wd645], a
ret
.asm_1dd69
- ld a, [wRightMapMoveDiglettFrame]
+ ld a, [wRightMapMovePsyduckFrame]
and a
jr z, .asm_1dd74
dec a
- ld [wRightMapMoveDiglettFrame], a
+ ld [wRightMapMovePsyduckFrame], a
ret
.asm_1dd74
@@ -3875,9 +1737,9 @@ Func_1dd2e: ; 0x1dd2e .asm_1dd89
ld a, $9
.asm_1dd8b
- call Func_1de6f
+ call LoadPsyduckOrPoliwagNumberGraphics
ld a, $2
- call Func_1de4b
+ call LoadPsyduckOrPoliwagGraphics
ld a, [wCurrentStage]
bit 0, a
jr z, .asm_1dda9
@@ -3895,22 +1757,22 @@ Func_1dd2e: ; 0x1dd2e sub $3
ld [wRightMapMoveCounter], a
ld a, $4
- call Func_1de6f
+ call LoadPsyduckOrPoliwagNumberGraphics
ld a, $2
- call Func_1de4b
+ call LoadPsyduckOrPoliwagGraphics
ld a, $0
ld [wd645], a
ret
-Func_1ddc7: ; 0x1ddc7
+HitPoliwag3Times: ; 0x1ddc7
ld hl, wNumPoliwagTriples
call Increment_Max100
- ld hl, wNumDugtrioTriples
+ ld hl, wNumDugtrioTriples ; developer oversight
call Increment_Max100
jr nc, .asm_1dde4
ld c, $a
call Modulo_C
- callba z, IncrementBonusMultiplier
+ callba z, IncrementBonusMultiplierFromFieldEvent
.asm_1dde4
xor a
ld [wd55a], a
@@ -3918,15 +1780,15 @@ Func_1ddc7: ; 0x1ddc7 scf
ret
-Func_1ddf4: ; 0x1ddf4
+HitPsyduck3Times: ; 0x1ddf4
ld hl, wNumPsyduckTriples
call Increment_Max100
- ld hl, wNumDugtrioTriples
+ ld hl, wNumDugtrioTriples ; developer oversight
call Increment_Max100
jr nc, .asm_1de11
ld c, $a
call Modulo_C
- callba z, IncrementBonusMultiplier
+ callba z, IncrementBonusMultiplierFromFieldEvent
.asm_1de11
ld a, $1
ld [wd55a], a
@@ -3934,7 +1796,7 @@ Func_1ddf4: ; 0x1ddf4 scf
ret
-Func_1de22: ; 0x1de22
+AddScorePsyduckOrPoliwag: ; 0x1de22
ld a, [wCurrentStage]
bit 0, a
ret z
@@ -3950,7 +1812,7 @@ Func_1de22: ; 0x1de22 call PlaySoundEffect
ret
-Func_1de4b: ; 0x1de4b
+LoadPsyduckOrPoliwagGraphics: ; 0x1de4b
ld b, a
ld a, [wCurrentStage]
bit 0, a
@@ -3962,9 +1824,9 @@ Func_1de4b: ; 0x1de4b ld hl, TileDataPointers_1df66
ld a, [hGameBoyColorFlag]
and a
- jr z, .asm_1de63
+ jr z, .gameboyColor
ld hl, TileDataPointers_1e00f
-.asm_1de63
+.gameboyColor
add hl, bc
ld a, [hli]
ld h, [hl]
@@ -3975,7 +1837,8 @@ Func_1de4b: ; 0x1de4b call Func_10aa
ret
-Func_1de6f: ; 0x1de6f
+LoadPsyduckOrPoliwagNumberGraphics: ; 0x1de6f
+; This is for the map move numbers that appears next to poliwag and psyduck.
ld b, a
ld a, [wCurrentStage]
bit 0, a
@@ -4000,31 +1863,35 @@ Func_1de6f: ; 0x1de6f call Func_10aa
ret
-Func_1de93: ; 0x1de93
- ld hl, wd4f7
+UpdateMapMoveCounters_BlueFieldBottom: ; 0x1de93
+; Decrements the two counters that cause the map move counters to decrease by one every 8 seconds.
+; Also updates the counter graphics if anything changes.
+; The map move counters appear next to Poliwag and Psyduck.
+ ld hl, wLeftMapMoveCounterFramesUntilDecrease
dec [hl]
ld a, [hli]
cp $ff
- jr nz, .asm_1ded2
+ jr nz, .checkRightMapMoveCounter
dec [hl]
ld a, [hld]
cp $ff
- jr nz, .asm_1ded2
- ld a, $e0
+ jr nz, .checkRightMapMoveCounter
+ ; Reset the counter back to 8 seconds worth of frames (480 frames)
+ ld a, MAP_MOVE_FRAMES_COUNTER & $ff
ld [hli], a
- ld a, $1
+ ld a, MAP_MOVE_FRAMES_COUNTER >> 8
ld [hl], a
ld a, [wLeftMapMoveCounter]
and a
- jr z, .asm_1ded2
+ jr z, .checkRightMapMoveCounter
cp $3
- jr z, .asm_1ded2
+ jr z, .checkRightMapMoveCounter
dec a
ld [wLeftMapMoveCounter], a
- call Func_1de6f
+ call LoadPsyduckOrPoliwagNumberGraphics
ld a, [hGameBoyColorFlag]
and a
- jr z, .asm_1decd
+ jr z, .gameboy
ld a, [wLeftMapMoveCounter]
cp $0
jr z, .asm_1deca
@@ -4036,36 +1903,37 @@ Func_1de93: ; 0x1de93 xor a
jr .asm_1decf
-.asm_1decd
+.gameboy
ld a, $8
.asm_1decf
- call Func_1de6f
-.asm_1ded2
- ld hl, wd4f9
+ call LoadPsyduckOrPoliwagNumberGraphics
+.checkRightMapMoveCounter
+ ld hl, wRightMapMoveCounterFramesUntilDecrease
dec [hl]
ld a, [hli]
cp $ff
- jr nz, .asm_1df14
+ jr nz, .done
dec [hl]
ld a, [hld]
cp $ff
- jr nz, .asm_1df14
- ld a, $e0
+ jr nz, .done
+ ; Reset the counter back to 8 seconds worth of frames (480 frames)
+ ld a, MAP_MOVE_FRAMES_COUNTER & $ff
ld [hli], a
- ld a, $1
+ ld a, MAP_MOVE_FRAMES_COUNTER >> 8
ld [hl], a
ld a, [wRightMapMoveCounter]
and a
- jr z, .asm_1df14
+ jr z, .done
cp $3
- jr z, .asm_1df14
+ jr z, .done
dec a
ld [wRightMapMoveCounter], a
add $4
- call Func_1de6f
+ call LoadPsyduckOrPoliwagNumberGraphics
ld a, [hGameBoyColorFlag]
and a
- jr z, .asm_1df0f
+ jr z, .gameboy_2
ld a, [wRightMapMoveCounter]
cp $0
jr z, .asm_1df0b
@@ -4077,951 +1945,75 @@ Func_1de93: ; 0x1de93 ld a, $4
jr .asm_1df11
-.asm_1df0f
+.gameboy_2
ld a, $9
.asm_1df11
- call Func_1de6f
-.asm_1df14
+ call LoadPsyduckOrPoliwagNumberGraphics
+.done
ret
-Func_1df15: ; 0x1df15
+UpdateMapMoveCounters_BlueFieldTop: ; 0x1df15
+; This is identical logic to UpdateMapMoveCounters_BlueFieldTop, but it doesn't load
+; any graphics, since Poliwag and Psyduck aren't in the Top half of the Blue Field.
ld b, $0
- ld hl, wd4f8
+ ld hl, wLeftMapMoveCounterFramesUntilDecrease + 1
ld a, [hld]
or [hl]
- jr z, .asm_1df3e
+ jr z, .checkRightMapMoveCounter
dec [hl]
ld a, [hli]
cp $ff
- jr nz, .asm_1df3e
+ jr nz, .checkRightMapMoveCounter
dec [hl]
ld a, [hld]
cp $ff
- jr nz, .asm_1df3e
- ld a, $e0
+ jr nz, .checkRightMapMoveCounter
+ ; Reset the counter back to 8 seconds worth of frames (480 frames)
+ ld a, MAP_MOVE_FRAMES_COUNTER & $ff
ld [hli], a
- ld a, $1
+ ld a, MAP_MOVE_FRAMES_COUNTER >> 8
ld [hl], a
ld a, [wLeftMapMoveCounter]
and a
- jr z, .asm_1df3e
+ jr z, .checkRightMapMoveCounter
cp $3
- jr z, .asm_1df3e
+ jr z, .checkRightMapMoveCounter
dec a
ld [wLeftMapMoveCounter], a
-.asm_1df3e
- ld hl, wd4fa
+.checkRightMapMoveCounter
+ ld hl, wRightMapMoveCounterFramesUntilDecrease + 1
ld a, [hld]
or [hl]
- jr z, .asm_1df65
+ jr z, .done
dec [hl]
ld a, [hli]
cp $ff
- jr nz, .asm_1df65
+ jr nz, .done
dec [hl]
ld a, [hld]
cp $ff
- jr nz, .asm_1df65
- ld a, $e0
+ jr nz, .done
+ ; Reset the counter back to 8 seconds worth of frames (480 frames)
+ ld a, MAP_MOVE_FRAMES_COUNTER & $ff
ld [hli], a
- ld a, $1
+ ld a, MAP_MOVE_FRAMES_COUNTER >> 8
ld [hl], a
ld a, [wRightMapMoveCounter]
and a
- jr z, .asm_1df65
+ jr z, .done
cp $3
- jr z, .asm_1df65
+ jr z, .done
dec a
ld [wRightMapMoveCounter], a
-.asm_1df65
+.done
ret
-TileDataPointers_1df66:
- dw TileData_1df74
- dw TileData_1df77
- dw TileData_1df7a
- dw TileData_1df7f
- dw TileData_1df84
- dw TileData_1df89
- dw TileData_1df8e
-
-TileData_1df74: ; 0x1df74
- db $01
- dw TileData_1df93
-
-TileData_1df77: ; 0x1df77
- db $01
- dw TileData_1df9f
-
-TileData_1df7a: ; 0x1df7a
- db $02
- dw TileData_1dfab
- dw TileData_1dfb5
-
-TileData_1df7f: ; 0x1df7f
- db $02
- dw TileData_1dfbf
- dw TileData_1dfc9
-
-TileData_1df84: ; 0x1df84
- db $02
- dw TileData_1dfd3
- dw TileData_1dfdd
-
-TileData_1df89: ; 0x1df89
- db $02
- dw TileData_1dfe7
- dw TileData_1dff1
-
-TileData_1df8e: ; 0x1df8e
- db $02
- dw TileData_1dffb
- dw TileData_1e005
-
-TileData_1df93: ; 0x1df93
- dw LoadTileLists
- db $02 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $A3
- db $4A
-
- db $01 ; number of tiles
- dw vBGMap + $C3
- db $4B
-
- db $00 ; terminator
-
-TileData_1df9f: ; 0x1df9f
- dw LoadTileLists
- db $02 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $A3
- db $4C
-
- db $01 ; number of tiles
- dw vBGMap + $C3
- db $4D
-
- db $00 ; terminator
-
-TileData_1dfab: ; 0x1dfab
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $4E
- dw StageBlueFieldBottomBaseGameBoyGfx + $CE0
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1dfb5: ; 0x1dfb5
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $51
- dw StageBlueFieldBottomBaseGameBoyGfx + $D10
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1dfbf: ; 0x1dfbf
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $4E
- dw StageBlueFieldBottomBaseGameBoyGfx + $D30
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1dfc9: ; 0x1dfc9
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $51
- dw StageBlueFieldBottomBaseGameBoyGfx + $D60
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1dfd3: ; 0x1dfd3
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $4E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $20B0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1dfdd: ; 0x1dfdd
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $51
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $20E0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1dfe7: ; 0x1dfe7
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $4E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $2100
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1dff1: ; 0x1dff1
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $51
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $2130
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1dffb: ; 0x1dffb
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $4E
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $2150
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e005: ; 0x1e005
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $51
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $2180
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileDataPointers_1e00f:
- dw TileData_1e01d
- dw TileData_1e020
- dw TileData_1e023
- dw TileData_1e026
- dw TileData_1e029
- dw TileData_1e02c
- dw TileData_1e02f
-
-TileData_1e01d: ; 0x1e01d
- db $01
- dw TileData_1e032
-
-TileData_1e020: ; 0x1e020
- db $01
- dw TileData_1e03e
-
-TileData_1e023: ; 0x1e023
- db $01
- dw TileData_1e04a
-
-TileData_1e026: ; 0x1e026
- db $01
- dw TileData_1e05c
-
-TileData_1e029: ; 0x1e029
- db $01
- dw TileData_1e06e
-
-TileData_1e02c: ; 0x1e02c
- db $01
- dw TileData_1e080
-
-TileData_1e02f: ; 0x1e02f
- db $01
- dw TileData_1e092
-
-TileData_1e032: ; 0x1e032
- dw LoadTileLists
- db $02 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $A3
- db $35
-
- db $01 ; number of tiles
- dw vBGMap + $C3
- db $36
-
- db $00 ; terminator
-
-TileData_1e03e: ; 0x1e03e
- dw LoadTileLists
- db $02 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $A3
- db $37
-
- db $01 ; number of tiles
- dw vBGMap + $C3
- db $38
-
- db $00 ; terminator
-
-TileData_1e04a: ; 0x1e04a
- dw LoadTileLists
- db $05 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $90
- db $4F
-
- db $02 ; number of tiles
- dw vBGMap + $AF
- db $50, $51
-
- db $02 ; number of tiles
- dw vBGMap + $CF
- db $52, $53
-
- db $00 ; terminator
-
-TileData_1e05c: ; 0x1e05c
- dw LoadTileLists
- db $05 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $90
- db $54
-
- db $02 ; number of tiles
- dw vBGMap + $AF
- db $55, $56
-
- db $02 ; number of tiles
- dw vBGMap + $CF
- db $57, $58
-
- db $00 ; terminator
-
-TileData_1e06e: ; 0x1e06e
- dw LoadTileLists
- db $05 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $90
- db $59
-
- db $02 ; number of tiles
- dw vBGMap + $AF
- db $5A, $5B
-
- db $02 ; number of tiles
- dw vBGMap + $CF
- db $5C, $5D
-
- db $00 ; terminator
-
-TileData_1e080: ; 0x1e080
- dw LoadTileLists
- db $05 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $90
- db $59
-
- db $02 ; number of tiles
- dw vBGMap + $AF
- db $5A, $5E
-
- db $02 ; number of tiles
- dw vBGMap + $CF
- db $5C, $5F
-
- db $00 ; terminator
-
-TileData_1e092: ; 0x1e092
- dw LoadTileLists
- db $05 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $90
- db $60
-
- db $02 ; number of tiles
- dw vBGMap + $AF
- db $61, $62
-
- db $02 ; number of tiles
- dw vBGMap + $CF
- db $63, $64
-
- db $00 ; terminator
-
-TileDataPointers_1e0a4:
- dw TileData_1e0b8
- dw TileData_1e0bf
- dw TileData_1e0c6
- dw TileData_1e0cd
- dw TileData_1e0d4
- dw TileData_1e0d9
- dw TileData_1e0de
- dw TileData_1e0e3
- dw TileData_1e0e8
- dw TileData_1e0ed
-
-TileData_1e0b8: ; 0x1e0b8
- db $03
- dw TileData_1e0f0
- dw TileData_1e0fa
- dw TileData_1e104
-
-TileData_1e0bf: ; 0x1e0bf
- db $03
- dw TileData_1e10e
- dw TileData_1e118
- dw TileData_1e122
-
-TileData_1e0c6: ; 0x1e0c6
- db $03
- dw TileData_1e12c
- dw TileData_1e136
- dw TileData_1e140
-
-TileData_1e0cd: ; 0x1e0cd
- db $03
- dw TileData_1e14a
- dw TileData_1e154
- dw TileData_1e15e
-
-TileData_1e0d4: ; 0x1e0d4
- db $02
- dw TileData_1e168
- dw TileData_1e172
-
-TileData_1e0d9: ; 0x1e0d9
- db $02
- dw TileData_1e17c
- dw TileData_1e186
-
-TileData_1e0de: ; 0x1e0de
- db $02
- dw TileData_1e190
- dw TileData_1e19a
-
-TileData_1e0e3: ; 0x1e0e3
- db $02
- dw TileData_1e1a4
- dw TileData_1e1ae
-
-TileData_1e0e8: ; 0x1e0e8
- db $02
- dw TileData_1e1b8
- dw TileData_1e1c2
-
-TileData_1e0ed: ; 0x1e0ed
- db $01
- dw TileData_1e1cc
-
-TileData_1e0f0: ; 0x1e0f0
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $41
- dw StageBlueFieldBottomBaseGameBoyGfx + $C10
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1e0fa: ; 0x1e0fa
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $44
- dw StageBlueFieldBottomBaseGameBoyGfx + $C40
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
+INCLUDE "data/queued_tiledata/blue_field/poliwag_psyduck.asm"
-TileData_1e104: ; 0x1e104
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $47
- dw StageBlueFieldBottomBaseGameBoyGfx + $C70
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1e10e: ; 0x1e10e
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $41
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1FC0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e118: ; 0x1e118
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $44
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $2050
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e122: ; 0x1e122
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $47
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $2080
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e12c: ; 0x1e12c
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $41
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1FF0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e136: ; 0x1e136
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $44
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $2050
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e140: ; 0x1e140
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $47
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $2080
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e14a: ; 0x1e14a
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $41
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $2020
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e154: ; 0x1e154
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $44
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $2050
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e15e: ; 0x1e15e
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $47
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $2080
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e168: ; 0x1e168
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $58
- dw StageBlueFieldBottomBaseGameBoyGfx + $D80
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1e172: ; 0x1e172
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $5A
- dw StageBlueFieldBottomBaseGameBoyGfx + $DA0
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1e17c: ; 0x1e17c
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $58
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $21A0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e186: ; 0x1e186
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $5A
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $21E0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e190: ; 0x1e190
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $58
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $21A0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e19a: ; 0x1e19a
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $5A
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $2210
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e1a4: ; 0x1e1a4
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $58
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $21C0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e1ae: ; 0x1e1ae
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $5A
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $2240
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1e1b8: ; 0x1e1b8
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $44
- dw StageBlueFieldBottomBaseGameBoyGfx + $C40
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1e1c2: ; 0x1e1c2
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $47
- dw StageBlueFieldBottomBaseGameBoyGfx + $C70
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileData_1e1cc: ; 0x1e1cc
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $58
- dw StageBlueFieldBottomBaseGameBoyGfx + $D80
- db Bank(StageBlueFieldBottomBaseGameBoyGfx)
- db $00
-
-TileDataPointers_1e1d6:
- dw TileData_1e1f2
- dw TileData_1e1f5
- dw TileData_1e1f8
- dw TileData_1e1fb
- dw TileData_1e1fe
- dw TileData_1e201
- dw TileData_1e204
- dw TileData_1e207
- dw TileData_1e20a
- dw TileData_1e20d
- dw TileData_1e210
- dw TileData_1e213
- dw TileData_1e216
- dw TileData_1e219
-
-TileData_1e1f2: ; 0x1e1f2
- db $01
- dw TileData_1e21c
-
-TileData_1e1f5: ; 0x1e1f5
- db $01
- dw TileData_1e238
-
-TileData_1e1f8: ; 0x1e1f8
- db $01
- dw TileData_1e254
-
-TileData_1e1fb: ; 0x1e1fb
- db $01
- dw TileData_1e270
-
-TileData_1e1fe: ; 0x1e1fe
- db $01
- dw TileData_1e28c
-
-TileData_1e201: ; 0x1e201
- db $01
- dw TileData_1e2a2
-
-TileData_1e204: ; 0x1e204
- db $01
- dw TileData_1e2b8
-
-TileData_1e207: ; 0x1e207
- db $01
- dw TileData_1e2ce
-
-TileData_1e20a: ; 0x1e20a
- db $01
- dw TileData_1e2e4
-
-TileData_1e20d: ; 0x1e20d
- db $01
- dw TileData_1e2fa
-
-TileData_1e210: ; 0x1e210
- db $01
- dw TileData_1e310
-
-TileData_1e213: ; 0x1e213
- db $01
- dw TileData_1e326
-
-TileData_1e216: ; 0x1e216
- db $01
- dw TileData_1e336
-
-TileData_1e219: ; 0x1e219
- db $01
- dw TileData_1e346
-
-TileData_1e21c: ; 0x1e21c
- dw LoadTileLists
- db $0C ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $60
- db $36, $37, $38
-
- db $03 ; number of tiles
- dw vBGMap + $80
- db $39, $3A, $3B
-
- db $03 ; number of tiles
- dw vBGMap + $A0
- db $4C, $4D, $4E
-
- db $03 ; number of tiles
- dw vBGMap + $C0
- db $4F, $50, $51
-
- db $00 ; terminator
-
-TileData_1e238: ; 0x1e238
- dw LoadTileLists
- db $0C ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $60
- db $3C, $37, $38
-
- db $03 ; number of tiles
- dw vBGMap + $80
- db $3D, $3E, $3B
-
- db $03 ; number of tiles
- dw vBGMap + $A0
- db $52, $53, $54
-
- db $03 ; number of tiles
- dw vBGMap + $C0
- db $55, $56, $57
-
- db $00 ; terminator
-
-TileData_1e254: ; 0x1e254
- dw LoadTileLists
- db $0C ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $60
- db $40, $41, $38
-
- db $03 ; number of tiles
- dw vBGMap + $80
- db $42, $43, $3B
-
- db $03 ; number of tiles
- dw vBGMap + $A0
- db $52, $53, $54
-
- db $03 ; number of tiles
- dw vBGMap + $C0
- db $55, $56, $57
-
- db $00 ; terminator
-
-TileData_1e270: ; 0x1e270
- dw LoadTileLists
- db $0C ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $60
- db $36, $46, $47
-
- db $03 ; number of tiles
- dw vBGMap + $80
- db $48, $49, $4A
-
- db $03 ; number of tiles
- dw vBGMap + $A0
- db $52, $53, $54
-
- db $03 ; number of tiles
- dw vBGMap + $C0
- db $55, $56, $57
-
- db $00 ; terminator
-
-TileData_1e28c: ; 0x1e28c
- dw LoadTileLists
- db $09 ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $91
- db $4D, $65, $4E
-
- db $03 ; number of tiles
- dw vBGMap + $B1
- db $66, $67, $68
-
- db $03 ; number of tiles
- dw vBGMap + $D1
- db $69, $6A, $6B
-
- db $00 ; terminator
-
-TileData_1e2a2: ; 0x1e2a2
- dw LoadTileLists
- db $09 ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $91
- db $4D, $6C, $4E
-
- db $03 ; number of tiles
- dw vBGMap + $B1
- db $6D, $6E, $68
-
- db $03 ; number of tiles
- dw vBGMap + $D1
- db $6F, $70, $6B
-
- db $00 ; terminator
-
-TileData_1e2b8: ; 0x1e2b8
- dw LoadTileLists
- db $09 ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $91
- db $4D, $6C, $4E
-
- db $03 ; number of tiles
- dw vBGMap + $B1
- db $66, $72, $68
-
- db $03 ; number of tiles
- dw vBGMap + $D1
- db $69, $73, $6B
-
- db $00 ; terminator
-
-TileData_1e2ce: ; 0x1e2ce
- dw LoadTileLists
- db $09 ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $91
- db $4D, $75, $4E
-
- db $03 ; number of tiles
- dw vBGMap + $B1
- db $66, $76, $77
-
- db $03 ; number of tiles
- dw vBGMap + $D1
- db $69, $78, $79
-
- db $00 ; terminator
-
-TileData_1e2e4: ; 0x1e2e4
- dw LoadTileLists
- db $09 ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $80
- db $3F, $3A, $3B
-
- db $03 ; number of tiles
- dw vBGMap + $A0
- db $4C, $4D, $4E
-
- db $03 ; number of tiles
- dw vBGMap + $C0
- db $4F, $50, $51
-
- db $00 ; terminator
-
-TileData_1e2fa: ; 0x1e2fa
- dw LoadTileLists
- db $09 ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $80
- db $44, $45, $3B
-
- db $03 ; number of tiles
- dw vBGMap + $A0
- db $4C, $4D, $4E
-
- db $03 ; number of tiles
- dw vBGMap + $C0
- db $4F, $50, $51
-
- db $00 ; terminator
-
-TileData_1e310: ; 0x1e310
- dw LoadTileLists
- db $09 ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $80
- db $39, $4B, $4A
-
- db $03 ; number of tiles
- dw vBGMap + $A0
- db $4C, $4D, $4E
-
- db $03 ; number of tiles
- dw vBGMap + $C0
- db $4F, $50, $51
-
- db $00 ; terminator
-
-TileData_1e326: ; 0x1e326
- dw LoadTileLists
- db $06 ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $91
- db $4D, $65, $4E
-
- db $03 ; number of tiles
- dw vBGMap + $B1
- db $6D, $71, $68
-
- db $00 ; terminator
-
-TileData_1e336: ; 0x1e336
- dw LoadTileLists
- db $06 ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $91
- db $4D, $65, $4E
-
- db $03 ; number of tiles
- dw vBGMap + $B1
- db $66, $74, $68
-
- db $00 ; terminator
-
-TileData_1e346: ; 0x1e346
- dw LoadTileLists
- db $06 ; total number of tiles
-
- db $03 ; number of tiles
- dw vBGMap + $91
- db $4D, $65, $4E
-
- db $03 ; number of tiles
- dw vBGMap + $B1
- db $66, $67, $77
-
- db $00 ; terminator
-
-ResolveBlueStagePinballUpgradeTriggersCollision: ; 0x1e356
+ResolveBallUpgradeTriggersCollision_BlueField: ; 0x1e356
ld a, [wWhichPinballUpgradeTrigger]
and a
- jp z, Func_1e471
+ jp z, UpdatePinballUpgradeTriggers
xor a
ld [wWhichPinballUpgradeTrigger], a
ld a, [wStageCollisionState]
@@ -5036,10 +2028,10 @@ ResolveBlueStagePinballUpgradeTriggersCollision: ; 0x1e356 .asm_1e386
ld a, [wStageCollisionState]
bit 0, a
- jp z, Func_1e471
- ld a, [wd5fc]
+ jp z, UpdatePinballUpgradeTriggers
+ ld a, [wBallUpgradeTriggersBlinking]
and a
- jp nz, Func_1e471
+ jp nz, UpdatePinballUpgradeTriggers
xor a
ld [wRightAlleyTrigger], a
ld [wLeftAlleyTrigger], a
@@ -5050,35 +2042,35 @@ ResolveBlueStagePinballUpgradeTriggersCollision: ; 0x1e356 sub $13
ld c, a
ld b, $0
- ld hl, wd5f9
+ ld hl, wBallUpgradeTriggerStates
add hl, bc
ld a, [hl]
ld [hl], $1
and a
- jr z, .asm_1e3bf
+ jr z, .toggled
ld [hl], $0
-.asm_1e3bf
+.toggled
ld bc, OneHundredPoints
callba AddBigBCD6FromQueueWithBallMultiplier
- ld hl, wd5f9
+ ld hl, wBallUpgradeTriggerStates
ld a, [hli]
and [hl]
inc hl
and [hl]
- jr nz, .asm_1e3de
+ jr nz, .allTriggersOn
lb de, $00, $09
call PlaySoundEffect
- jp asm_1e475
+ jp LoadPinballUpgradeTriggersGraphics_BlueField
-.asm_1e3de
+.allTriggersOn
ld a, $1
- ld [wd5fc], a
+ ld [wBallUpgradeTriggersBlinking], a
ld a, $80
- ld [wd5fd], a
+ ld [wBallUpgradeTriggersBlinkingFramesRemaining], a
; load approximately 1 minute of frames into wBallTypeCounter
- ld a, $10
+ ld a, PINBALL_UPGRADE_FRAMES_COUNTER & $ff
ld [wBallTypeCounter], a
- ld a, $e
+ ld a, PINBALL_UPGRADE_FRAMES_COUNTER >> 8
ld [wBallTypeCounter + 1], a
ld bc, FourHundredPoints
callba AddBigBCD6FromQueueWithBallMultiplier
@@ -5089,9 +2081,9 @@ ResolveBlueStagePinballUpgradeTriggersCollision: ; 0x1e356 call PlaySoundEffect
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5cc
+ ld hl, wScrollingText1
ld de, FieldMultiplierText
- call LoadTextHeader
+ call LoadScrollingText
ld a, [wBallType]
ld c, a
ld b, $0
@@ -5101,7 +2093,7 @@ ResolveBlueStagePinballUpgradeTriggersCollision: ; 0x1e356 ld [wBallType], a
add $30
ld [wBottomMessageText + $12], a
- jr .asm_1e465
+ jr .done
.masterBall
lb de, $0f, $4d
@@ -5114,56 +2106,60 @@ ResolveBlueStagePinballUpgradeTriggersCollision: ; 0x1e356 push de
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5d4
+ ld hl, wScrollingText2
ld de, DigitsText1to8
call Func_32cc
pop de
pop bc
- ld hl, wd5cc
+ ld hl, wScrollingText1
ld de, FieldMultiplierSpecialBonusText
- call LoadTextHeader
-.asm_1e465
+ call LoadScrollingText
+.done
callba TransitionPinballUpgrade
- jr asm_1e475
+ jr LoadPinballUpgradeTriggersGraphics_BlueField
-Func_1e471: ; 0x1e471
- call Func_1e4b8
+UpdatePinballUpgradeTriggers: ; 0x1e471
+ call UpdatePinballUpgradeBlinkingAnimation_BlueField
ret z
-asm_1e475: ; 0x1e475
- ld hl, wd5fb
+ ; fall through
+LoadPinballUpgradeTriggersGraphics_BlueField: ; 0x1e475
+; Loads the on or off graphics for each of the 3 pinball upgrade trigger dots, depending on their current toggle state.
+ ld hl, wBallUpgradeTriggerStates + 2
ld b, $3
-.asm_1e47a
+.loop
ld a, [hld]
push hl
- call Func_1e484
+ call LoadPinballUpgradeTriggerGraphics_BlueField
pop hl
dec b
- jr nz, .asm_1e47a
+ jr nz, .loop
ret
-Func_1e484: ; 0x1e484
+LoadPinballUpgradeTriggerGraphics_BlueField: ; 0x1e484
+; Loads the on or off graphics for one of the 3 pinball upgrade trigger dots, depending on its current toggle state.
+; Input: a = toggle state
and a
- jr z, .asm_1e496
+ jr z, .toggledOff
ld a, [hGameBoyColorFlag]
and a
- jr nz, .asm_1e491
+ jr nz, .toggledOnGameboy
ld hl, TileDataPointers_1e520
- jr .asm_1e4a3
+ jr .load
-.asm_1e491
+.toggledOnGameboy
ld hl, TileDataPointers_1e556
- jr .asm_1e4a3
+ jr .load
-.asm_1e496
+.toggledOff
ld a, [hGameBoyColorFlag]
and a
- jr nz, .asm_1e4a0
+ jr nz, .toggledOffGameboy
ld hl, TileDataPointers_1e526
- jr .asm_1e4a3
+ jr .load
-.asm_1e4a0
+.toggledOffGameboy
ld hl, TileDataPointers_1e55c
-.asm_1e4a3
+.load
push bc
dec b
sla b
@@ -5179,24 +2175,27 @@ Func_1e484: ; 0x1e484 pop bc
ret
-Func_1e4b8: ; 0x1e4b8
- ld a, [wd5fc]
+UpdatePinballUpgradeBlinkingAnimation_BlueField: ; 0x1e4b8
+; Controls the brief blinking animation of the 3 upgrade triggers after successfully
+; upgrading the pinball.
+ ld a, [wBallUpgradeTriggersBlinking]
and a
- jr z, .asm_1e4e5
- ld a, [wd5fd]
+ jr z, .notBlinking
+ ld a, [wBallUpgradeTriggersBlinkingFramesRemaining]
dec a
- ld [wd5fd], a
- jr nz, .asm_1e4ca
- ld [wd5fc], a
-.asm_1e4ca
+ ld [wBallUpgradeTriggersBlinkingFramesRemaining], a
+ jr nz, .stillBlinking
+ ld [wBallUpgradeTriggersBlinking], a
+.stillBlinking
and $7
- jr nz, .asm_1e4e3
- ld a, [wd5fd]
+ jr nz, .dontFlipState
+ ; Blink the triggers on or off
+ ld a, [wBallUpgradeTriggersBlinkingFramesRemaining]
srl a
srl a
srl a
and $1
- ld hl, wd5f9
+ ld hl, wBallUpgradeTriggerStates
ld [hli], a
ld [hli], a
ld [hl], a
@@ -5204,16 +2203,16 @@ Func_1e4b8: ; 0x1e4b8 and a
ret
-.asm_1e4e3
+.dontFlipState
xor a
ret
-.asm_1e4e5
+.notBlinking
ld hl, wKeyConfigLeftFlipper
call IsKeyPressed
- jr z, .leftFlipperKeyIsPressed
+ jr z, .checkRightFlipperKeyPress
; left flipper key is pressed
- ld hl, wd5f9
+ ld hl, wBallUpgradeTriggerStates
ld a, [hli]
ld c, a
ld a, [hli]
@@ -5228,12 +2227,12 @@ Func_1e4b8: ; 0x1e4b8 ld [hl], a
ret
-.leftFlipperKeyIsPressed
+.checkRightFlipperKeyPress
ld hl, wKeyConfigRightFlipper
call IsKeyPressed
ret z
; right flipper key is pressed
- ld hl, wd5f9
+ ld hl, wBallUpgradeTriggerStates
ld a, [hli]
ld c, a
ld a, [hli]
@@ -5266,99 +2265,9 @@ BallTypeDegradation2BlueField: ; 0x1e51a db ULTRA_BALL ; unused
db ULTRA_BALL ; MASTER_BALL -> GREAT_BALL
-TileDataPointers_1e520:
- dw TileData_1e52c
- dw TileData_1e533
- dw TileData_1e53a
-
-TileDataPointers_1e526:
- dw TileData_1e541
- dw TileData_1e548
- dw TileData_1e54f
-
-TileData_1e52c: ; 0x1e52c
- db $02, $02
- dw vBGMap + $86
- db $66, $67
- db $00
-
-TileData_1e533: ; 0x1e533
- db $02, $02
- dw vBGMap + $69
- db $66, $67
- db $00
-
-TileData_1e53a: ; 0x1e53a
- db $02, $02
- dw vBGMap + $8C
- db $66, $67
- db $00
-
-TileData_1e541: ; 0x1e541
- db $02, $02
- dw vBGMap + $86
- db $64, $65
- db $00
-
-TileData_1e548: ; 0x1e548
- db $02, $02
- dw vBGMap + $69
- db $64, $65
- db $00
-
-TileData_1e54f: ; 0x1e54f
- db $02, $02
- dw vBGMap + $8C
- db $64, $65
- db $00
-
-TileDataPointers_1e556:
- dw TileData_1e562
- dw TileData_1e569
- dw TileData_1e570
-
-TileDataPointers_1e55c:
- dw TileData_1e577
- dw TileData_1e57e
- dw TileData_1e585
-
-TileData_1e562: ; 0x1e562
- db $02, $02
- dw vBGMap + $86
- db $43, $43
- db $00
-
-TileData_1e569: ; 0x1e569
- db $02, $02
- dw vBGMap + $69
- db $43, $43
- db $00
-
-TileData_1e570: ; 0x1e570
- db $02, $02
- dw vBGMap + $8C
- db $43, $43
- db $00
-
-TileData_1e577: ; 0x1e577
- db $02, $02
- dw vBGMap + $86
- db $42, $42
- db $00
-
-TileData_1e57e: ; 0x1e57e
- db $02, $02
- dw vBGMap + $69
- db $42, $42
- db $00
-
-TileData_1e585: ; 0x1e585
- db $02, $02
- dw vBGMap + $8C
- db $42, $42
- db $00
+INCLUDE "data/queued_tiledata/blue_field/ball_upgrade_triggers.asm"
-HandleBlueStageBallTypeUpgradeCounter: ; 0x1e58c
+UpdateBallTypeUpgradeCounter_BlueField: ; 0x1e58c
ld a, [wCapturingMon]
and a
ret nz
@@ -5375,7 +2284,7 @@ HandleBlueStageBallTypeUpgradeCounter: ; 0x1e58c ld [hl], c
or c
ret nz
- ; counter is now 0! Degrade the ball upgrade.
+ ; counter is now 0! Degrade the ball upgrade type.
ld a, [wBallType]
ld c, a
ld b, $0
@@ -5386,28 +2295,28 @@ HandleBlueStageBallTypeUpgradeCounter: ; 0x1e58c and a
jr z, .pokeball
; load approximately 1 minute of frames into wBallTypeCounter
- ld a, $10
+ ld a, PINBALL_UPGRADE_FRAMES_COUNTER & $ff
ld [wBallTypeCounter], a
- ld a, $e
+ ld a, PINBALL_UPGRADE_FRAMES_COUNTER >> 8
ld [wBallTypeCounter + 1], a
.pokeball
callba TransitionPinballUpgrade
ret
-Func_1e5c5: ; 0x1e5c5
+ResolveCAVELightCollision_BlueField: ; 0x1e5c5
ld a, [wWhichCAVELight]
and a
- jr z, .asm_1e623
+ jr z, .noCollision
xor a
ld [wWhichCAVELight], a
- ld a, [wd513]
+ ld a, [wCAVELightsBlinking]
and a
- jr nz, .asm_1e623
+ jr nz, .noCollision
ld a, [wWhichCAVELightId]
sub $16
ld c, a
ld b, $0
- ld hl, wd50f
+ ld hl, wCAVELightStates
add hl, bc
ld a, [hl]
ld [hl], $1
@@ -5415,66 +2324,69 @@ Func_1e5c5: ; 0x1e5c5 ret nz
ld bc, OneHundredPoints
callba AddBigBCD6FromQueueWithBallMultiplier
- ld hl, wd50f
+ ld hl, wCAVELightStates
ld a, [hli]
and [hl]
inc hl
and [hl]
inc hl
and [hl]
- jr z, Func_1e627
+ jr z, LoadCAVELightsGraphics_BlueField
ld a, $1
- ld [wd513], a
+ ld [wCAVELightsBlinking], a
ld a, $80
- ld [wd514], a
+ ld [wCAVELightsBlinkingFramesRemaining], a
ld bc, FourHundredPoints
callba AddBigBCD6FromQueueWithBallMultiplier
lb de, $00, $09
call PlaySoundEffect
ld hl, wNumCAVECompletions
call Increment_Max100
- jr Func_1e627
+ jr LoadCAVELightsGraphics_BlueField
-.asm_1e623
- call Func_1e66a
+.noCollision
+ call UpdateCAVELightsBlinking_BlueField
ret z
; fall through
-Func_1e627: ; 0x1e627
- ld hl, wd512
+LoadCAVELightsGraphics_BlueField: ; 0x1e627
+; Loads the graphics for each of the 4 CAVE lights, depending on what their current toggled state is.
+ ld hl, wCAVELightStates + 3
ld b, $4
-.asm_1e62c
+.loop
ld a, [hld]
push hl
- call Func_1e636
+ call LoadCAVELightGraphics_BlueField
pop hl
dec b
- jr nz, .asm_1e62c
+ jr nz, .loop
ret
-Func_1e636: ; 0x1e636
+LoadCAVELightGraphics_BlueField: ; 0x1e636
+; Loads a graphics for single CAVE light.
+; Input: a = toggle state for CAVE light
and a
- jr z, .asm_1e648
+ jr z, .toggledOff
ld a, [hGameBoyColorFlag]
and a
- jr nz, .asm_1e643
+ jr nz, .toggledOnGameboy
ld hl, TileDataPointers_1e6d7
- jr .asm_1e655
+ jr .load
-.asm_1e643
+.toggledOnGameboy
ld hl, TileDataPointers_1e717
- jr .asm_1e655
+ jr .load
-.asm_1e648
+.toggledOff
ld a, [hGameBoyColorFlag]
and a
- jr nz, .asm_1e652
+ jr nz, .toggledOffGameboy
ld hl, TileDataPointers_1e6df
- jr .asm_1e655
+ jr .load
-.asm_1e652
+.toggledOffGameboy
ld hl, TileDataPointers_1e71f
-.asm_1e655
+.load
push bc
dec b
sla b
@@ -5490,15 +2402,15 @@ Func_1e636: ; 0x1e636 pop bc
ret
-Func_1e66a: ; 0x1e66a
- ld a, [wd513]
+UpdateCAVELightsBlinking_BlueField: ; 0x1e66a
+ ld a, [wCAVELightsBlinking]
and a
- jr z, .asm_1e6a0
- ld a, [wd514]
+ jr z, .notBlinking
+ ld a, [wCAVELightsBlinkingFramesRemaining]
dec a
- ld [wd514], a
+ ld [wCAVELightsBlinkingFramesRemaining], a
jr nz, .asm_1e687
- ld [wd513], a
+ ld [wCAVELightsBlinking], a
ld a, $1
ld [wd608], a
ld a, $3
@@ -5507,12 +2419,12 @@ Func_1e66a: ; 0x1e66a .asm_1e687
and $7
ret nz
- ld a, [wd514]
+ ld a, [wCAVELightsBlinkingFramesRemaining]
srl a
srl a
srl a
and $1
- ld hl, wd50f
+ ld hl, wCAVELightStates
ld [hli], a
ld [hli], a
ld [hli], a
@@ -5521,11 +2433,11 @@ Func_1e66a: ; 0x1e66a and a
ret
-.asm_1e6a0
+.notBlinking
ld hl, wKeyConfigLeftFlipper
call IsKeyPressed
- jr z, .asm_1e6bc
- ld hl, wd50f
+ jr z, .checkRightFlipperKeyPress
+ ld hl, wCAVELightStates
ld a, [hli]
ld c, a
ld a, [hli]
@@ -5544,11 +2456,11 @@ Func_1e66a: ; 0x1e66a ld [hl], a
ret
-.asm_1e6bc
+.checkRightFlipperKeyPress
ld hl, wKeyConfigRightFlipper
call IsKeyPressed
ret z
- ld hl, wd50f
+ ld hl, wCAVELightStates
ld a, [hli]
ld c, a
ld a, [hli]
@@ -5567,173 +2479,7 @@ Func_1e66a: ; 0x1e66a ld [hl], a
ret
-TileDataPointers_1e6d7:
- dw TileData_1e6e7
- dw TileData_1e6ed
- dw TileData_1e6f3
- dw TileData_1e6f9
-
-TileDataPointers_1e6df:
- dw TileData_1e6ff
- dw TileData_1e705
- dw TileData_1e70b
- dw TileData_1e711
-
-TileData_1e6e7: ; 0x1e6e7
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $121
- db $5E
-
- db $00 ; terminator
-
-TileData_1e6ed: ; 0x1e6ed
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $123
- db $5E
-
- db $00 ; terminator
-
-TileData_1e6f3: ; 0x1e6f3
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $130
- db $60
-
- db $00 ; terminator
-
-TileData_1e6f9: ; 0x1e6f9
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $132
- db $60
-
- db $00 ; terminator
-
-TileData_1e6ff: ; 0x1e6ff
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $121
- db $5D
-
- db $00 ; terminator
-
-TileData_1e705: ; 0x1e705
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $123
- db $5D
-
- db $00 ; terminator
-
-TileData_1e70b: ; 0x1e70b
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $130
- db $5F
-
- db $00 ; terminator
-
-TileData_1e711: ; 0x1e711
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $132
- db $5F
-
- db $00 ; terminator
-
-TileDataPointers_1e717:
- dw TileData_1e727
- dw TileData_1e72d
- dw TileData_1e733
- dw TileData_1e739
-
-TileDataPointers_1e71f:
- dw TileData_1e73f
- dw TileData_1e745
- dw TileData_1e74b
- dw TileData_1e751
-
-TileData_1e727: ; 0x1e727
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $121
- db $49
-
- db $00 ; terminator
-
-TileData_1e72d: ; 0x1e72d
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $123
- db $4A
-
- db $00 ; terminator
-
-TileData_1e733: ; 0x1e733
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $130
- db $4B
-
- db $00 ; terminator
-
-TileData_1e739: ; 0x1e739
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $132
- db $4C
-
- db $00 ; terminator
-
-TileData_1e73f: ; 0x1e73f
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $121
- db $47
-
- db $00 ; terminator
-
-TileData_1e745: ; 0x1e745
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $123
- db $48
-
- db $00 ; terminator
-
-TileData_1e74b: ; 0x1e74b
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $130
- db $7A
-
- db $00 ; terminator
-
-TileData_1e751: ; 0x1e751
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $132
- db $7B
-
- db $00 ; terminator
+INCLUDE "data/queued_tiledata/blue_field/cave_lights.asm"
Func_1e757: ; 0x1e757
ld a, [wSlotCollision]
@@ -5904,7 +2650,7 @@ Func_1e830: ; 0x1e830 Func_1e8c3: ; 0x1e8c3
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5dc
+ ld hl, wScrollingText3
ld a, [wd497]
ld de, GoToMeowthStageText
cp STAGE_MEOWTH_BONUS
@@ -5914,7 +2660,7 @@ Func_1e8c3: ; 0x1e8c3 jr z, .loadText
ld de, GoToMewtwoStageText
.loadText
- call LoadTextHeader
+ call LoadScrollingText
ld de, $0000
call PlaySong
rst AdvanceFrame
@@ -7803,177 +4549,7 @@ Func_1f18a: ; 0x1f18a .asm_1f1b4
ret
-TileDataPointers_1f1b5:
- dw TileData_1f1bd
- dw TileData_1f1c0
- dw TileData_1f1c3
- dw TileData_1f1c6
-
-TileData_1f1bd: ; 0x1f1bd
- db $01
- dw TileData_1f1c9
-
-TileData_1f1c0: ; 0x1f1c0
- db $01
- dw TileData_1f1d7
-
-TileData_1f1c3: ; 0x1f1c3
- db $01
- dw TileData_1f1e5
-
-TileData_1f1c6: ; 0x1f1c6
- db $01
- dw TileData_1f1f3
-
-TileData_1f1c9: ; 0x1f1c9
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $189
- db $70, $71
-
- db $02 ; number of tiles
- dw vBGMap + $1a9
- db $72, $73
-
- db $00 ; terminator
-
-TileData_1f1d7: ; 0x1f1d7
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $189
- db $74, $75
-
- db $02 ; number of tiles
- dw vBGMap + $1a9
- db $76, $77
-
- db $00 ; terminator
-
-TileData_1f1e5: ; 0x1f1e5
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $189
- db $78, $79
-
- db $02 ; number of tiles
- dw vBGMap + $1a9
- db $7A, $7B
-
- db $00 ; terminator
-
-TileData_1f1f3: ; 0x1f1f3
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $189
- db $7C, $7D
-
- db $02 ; number of tiles
- dw vBGMap + $1a9
- db $7E, $7F
-
- db $00 ; terminator
-
-TileDataPointers_1f201:
- dw TileData_1f209
- dw TileData_1f20c
- dw TileData_1f20f
- dw TileData_1f212
-
-TileData_1f209: ; 0x1f209
- db $01
- dw TileData_1f215
-
-TileData_1f20c: ; 0x1f20c
- db $01
- dw TileData_1f228
-
-TileData_1f20f: ; 0x1f20f
- db $01
- dw TileData_1f23b
-
-TileData_1f212: ; 0x1f212
- db $01
- dw TileData_1f24e
-
-TileData_1f215: ; 0x1f215
- dw LoadTileLists
- db $06 ; total number of tiles
-
- db $02 ; number of otiles
- dw vBGMap + $189
- db $6C, $6D
-
- db $02 ; number of tiles
- dw vBGMap + $1a9
- db $6E, $6F
-
- db $02
- dw vBGMap + $1c9
- db $70, $71
-
- db $00 ; terminator
-
-TileData_1f228: ; 0x1f228
- dw LoadTileLists
- db $06 ; total number of tiles
-
- db $02 ; number of otiles
- dw vBGMap + $189
- db $72, $80
-
- db $02 ; number of tiles
- dw vBGMap + $1a9
- db $73, $74
-
- db $02
- dw vBGMap + $1c9
- db $75, $80
-
- db $00 ; terminator
-
-TileData_1f23b: ; 0x1f23b
- dw LoadTileLists
- db $06 ; total number of tiles
-
- db $02 ; number of otiles
- dw vBGMap + $189
- db $76, $77
-
- db $02 ; number of tiles
- dw vBGMap + $1a9
- db $78, $79
-
- db $02
- dw vBGMap + $1c9
- db $7A, $7B
-
- db $00 ; terminator
-
-TileData_1f24e: ; 0x1f24e
- dw LoadTileLists
- db $06 ; total number of tiles
-
- db $02 ; number of otiles
- dw vBGMap + $189
- db $80, $7C
-
- db $02 ; number of tiles
- dw vBGMap + $1a9
- db $7D, $7E
-
- db $02
- dw vBGMap + $1c9
- db $80, $7F
-
- db $00 ; terminator
+INCLUDE "data/queued_tiledata/blue_field/force_field.asm"
Func_1f261: ; 0x1f261
call Func_1f27b
diff --git a/engine/pinball_game/object_collision/diglett_bonus_object_collision.asm b/engine/pinball_game/object_collision/diglett_bonus_object_collision.asm index 91e0f82..91e0f82 100755..100644 --- a/engine/pinball_game/object_collision/diglett_bonus_object_collision.asm +++ b/engine/pinball_game/object_collision/diglett_bonus_object_collision.asm diff --git a/engine/pinball_game/object_collision/diglett_bonus_resolve_collision.asm b/engine/pinball_game/object_collision/diglett_bonus_resolve_collision.asm index 303cbe7..05cb568 100755..100644 --- a/engine/pinball_game/object_collision/diglett_bonus_resolve_collision.asm +++ b/engine/pinball_game/object_collision/diglett_bonus_resolve_collision.asm @@ -677,9 +677,9 @@ Func_1ab30: ; 0x1ab30 ld [wCompletedBonusStage], a
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5dc
+ ld hl, wScrollingText3
ld de, DiglettStageClearedText
- call LoadTextHeader
+ call LoadScrollingText
lb de, $4b, $2a
call PlaySoundEffect
ld a, $1
diff --git a/engine/pinball_game/object_collision/gengar_bonus_object_collision.asm b/engine/pinball_game/object_collision/gengar_bonus_object_collision.asm index adf048b..adf048b 100755..100644 --- a/engine/pinball_game/object_collision/gengar_bonus_object_collision.asm +++ b/engine/pinball_game/object_collision/gengar_bonus_object_collision.asm diff --git a/engine/pinball_game/object_collision/gengar_bonus_resolve_collision.asm b/engine/pinball_game/object_collision/gengar_bonus_resolve_collision.asm index c73bacf..dca326b 100755..100644 --- a/engine/pinball_game/object_collision/gengar_bonus_resolve_collision.asm +++ b/engine/pinball_game/object_collision/gengar_bonus_resolve_collision.asm @@ -1005,9 +1005,9 @@ Func_189af: ; 0x189af ld [wCompletedBonusStage], a
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5dc
+ ld hl, wScrollingText3
ld de, GengarStageClearedText
- call LoadTextHeader
+ call LoadScrollingText
lb de, $4b, $2a
call PlaySoundEffect
ret
diff --git a/engine/pinball_game/object_collision/meowth_bonus_object_collision.asm b/engine/pinball_game/object_collision/meowth_bonus_object_collision.asm index 4fc6179..4fc6179 100755..100644 --- a/engine/pinball_game/object_collision/meowth_bonus_object_collision.asm +++ b/engine/pinball_game/object_collision/meowth_bonus_object_collision.asm diff --git a/engine/pinball_game/object_collision/meowth_bonus_resolve_collision.asm b/engine/pinball_game/object_collision/meowth_bonus_resolve_collision.asm index 9aa3d36..78b01a0 100755..100644 --- a/engine/pinball_game/object_collision/meowth_bonus_resolve_collision.asm +++ b/engine/pinball_game/object_collision/meowth_bonus_resolve_collision.asm @@ -202,9 +202,9 @@ ResolveMeowthBonusGameObjectCollisions: ; 0x2442a ld [wCompletedBonusStage], a
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5dc
+ ld hl, wScrollingText3
ld de, MeowthStageClearedText
- call LoadTextHeader
+ call LoadScrollingText
lb de, $4b, $2a
call PlaySoundEffect
.asm_24498
diff --git a/engine/pinball_game/object_collision/mewtwo_bonus_object_collision.asm b/engine/pinball_game/object_collision/mewtwo_bonus_object_collision.asm index e6bbae5..e6bbae5 100755..100644 --- a/engine/pinball_game/object_collision/mewtwo_bonus_object_collision.asm +++ b/engine/pinball_game/object_collision/mewtwo_bonus_object_collision.asm diff --git a/engine/pinball_game/object_collision/mewtwo_bonus_resolve_collision.asm b/engine/pinball_game/object_collision/mewtwo_bonus_resolve_collision.asm index 1717126..cce8f6f 100755..100644 --- a/engine/pinball_game/object_collision/mewtwo_bonus_resolve_collision.asm +++ b/engine/pinball_game/object_collision/mewtwo_bonus_resolve_collision.asm @@ -351,10 +351,10 @@ Func_19638: ; 0x19638 ld [wCompletedBonusStage], a
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5dc
+ ld hl, wScrollingText3
.asm_1966b
ld de, MewtwoStageClearedText
- call LoadTextHeader
+ call LoadScrollingText
lb de, $4b, $2a
call PlaySoundEffect
ret
diff --git a/engine/pinball_game/object_collision/object_collision.asm b/engine/pinball_game/object_collision/object_collision.asm index 9324829..9324829 100755..100644 --- a/engine/pinball_game/object_collision/object_collision.asm +++ b/engine/pinball_game/object_collision/object_collision.asm diff --git a/engine/pinball_game/object_collision/red_stage_object_collision.asm b/engine/pinball_game/object_collision/red_stage_object_collision.asm index 2d07286..2d07286 100755..100644 --- a/engine/pinball_game/object_collision/red_stage_object_collision.asm +++ b/engine/pinball_game/object_collision/red_stage_object_collision.asm diff --git a/engine/pinball_game/object_collision/red_stage_resolve_collision.asm b/engine/pinball_game/object_collision/red_stage_resolve_collision.asm index 1a6e09f..f8c7a6f 100755..100644 --- a/engine/pinball_game/object_collision/red_stage_resolve_collision.asm +++ b/engine/pinball_game/object_collision/red_stage_resolve_collision.asm @@ -3,9 +3,9 @@ ResolveRedFieldTopGameObjectCollisions: ; 0x1460e
call ResolveVoltorbCollision
call ResolveRedStageSpinnerCollision
- call ResolveRedStagePinballUpgradeTriggersCollision
- call HandleRedStageBallTypeUpgradeCounter
- call Func_15270
+ call ResolveBallUpgradeTriggersCollision_RedField
+ call UpdateBallTypeUpgradeCounter_RedField
+ call UpdateCAVELightsBlinking_RedField
call ResolveRedStageBoardTriggerCollision
call ResolveRedStagePikachuCollision
call ResolveStaryuCollision
@@ -15,7 +15,7 @@ ResolveRedFieldTopGameObjectCollisions: ; 0x1460e call Func_164e3
call UpdateBallSaverState
call Func_174ea
- call Func_148cf
+ call UpdateMapMoveCounters_RedFieldTop
callba HandleExtraBall
ld a, $0
callba Func_10000
@@ -25,11 +25,11 @@ ResolveRedFieldBottomGameObjectCollisions: ; 0x14652 call ResolveWildMonCollision_RedField
call ResolveRedStageBumperCollision
call ResolveDiglettCollision
- call Func_14880
+ call UpdateMapMoveCounters_RedFieldBottom
call UpdateRedStageSpinner
- call Func_154a9
- call HandleRedStageBallTypeUpgradeCounter
- call Func_151cb
+ call UpdatePinballUpgradeBlinkingAnimation_RedField
+ call UpdateBallTypeUpgradeCounter_RedField
+ call ResolveCAVELightCollision_RedField
call ResolveRedStagePinballLaunchCollision
call ResolveRedStagePikachuCollision
call Func_167ff
@@ -132,7 +132,7 @@ BgTileData_1472f: ;BallSaverIconOnSprite Func_14733: ; 0x14733
ld c, $0
- ld a, [wCurBonusMultiplier]
+ ld a, [wCurBonusMultiplierFromFieldEvents]
and a
jr z, .asm_1473d
ld c, $1
@@ -146,7 +146,7 @@ Func_14733: ; 0x14733 Func_14746: ; 0x14746
ld c, $0
- ld a, [wCurBonusMultiplier]
+ ld a, [wCurBonusMultiplierFromFieldEvents]
and a
jr z, .asm_14750
ld c, $2
@@ -238,11 +238,11 @@ ResolveDiglettCollision: ; 0x147aa inc a
ld [hld], a
ld [hl], $50
- ld hl, wd4f7
+ ld hl, wLeftMapMoveCounterFramesUntilDecrease
add hl, bc
- ld a, $e0
+ ld a, MAP_MOVE_FRAMES_COUNTER & $ff
ld [hli], a
- ld a, $1
+ ld a, MAP_MOVE_FRAMES_COUNTER >> 8
ld [hl], a
ld a, c
and a
@@ -252,15 +252,15 @@ ResolveDiglettCollision: ; 0x147aa ld a, $6b
ld [wStageCollisionMap + $110], a
ld a, $5
- call Func_149d9
+ call LoadDiglettGraphics
ld a, [wRightMapMoveCounter]
add $4
- call Func_149f5
+ call LoadDiglettNumberGraphics
ld a, $8
callba Func_10000
ld a, [wRightMapMoveCounter]
cp $3
- call z, Func_14920
+ call z, HitRightDiglett3Times
jr .asm_14830
.asm_14807
@@ -269,16 +269,16 @@ ResolveDiglettCollision: ; 0x147aa ld a, $67
ld [wStageCollisionMap + $103], a
ld a, $2
- call Func_149d9
+ call LoadDiglettGraphics
ld a, [wLeftMapMoveCounter]
- call Func_149f5
+ call LoadDiglettNumberGraphics
ld a, $7
callba Func_10000
ld a, [wLeftMapMoveCounter]
cp $3
- call z, Func_14947
+ call z, HitLeftDiglett3Times
.asm_14830
- call Func_1496d
+ call AddScoreForHittingDiglett
ret
.asm_14834
@@ -292,7 +292,7 @@ ResolveDiglettCollision: ; 0x147aa sub $3
jr nz, .asm_1484d
ld [wLeftMapMoveCounter], a
- call Func_149f5
+ call LoadDiglettNumberGraphics
.asm_1484d
ld a, $64
ld [wStageCollisionMap + $e3], a
@@ -310,7 +310,7 @@ ResolveDiglettCollision: ; 0x147aa jr nz, .asm_14872
ld [wRightMapMoveCounter], a
add $4
- call Func_149f5
+ call LoadDiglettNumberGraphics
.asm_14872
ld a, $68
ld [wStageCollisionMap + $f0], a
@@ -320,133 +320,142 @@ ResolveDiglettCollision: ; 0x147aa call Func_14990
ret
-Func_14880: ; 0x14880
- ld hl, wd4f7
+UpdateMapMoveCounters_RedFieldBottom: ; 0x14880
+; Decrements the two counters that cause the map move counters to decrease by one every 8 seconds.
+; Also updates the counter graphics if anything changes.
+; The map move counters appear next to Digletts.
+ ld hl, wLeftMapMoveCounterFramesUntilDecrease
dec [hl]
ld a, [hli]
cp $ff
- jr nz, .asm_148a6
+ jr nz, .checkRightMapMoveCounter
dec [hl]
ld a, [hld]
cp $ff
- jr nz, .asm_148a6
- ld a, $e0
+ jr nz, .checkRightMapMoveCounter
+ ; Reset the counter back to 8 seconds worth of frames (480 frames)
+ ld a, MAP_MOVE_FRAMES_COUNTER & $ff
ld [hli], a
- ld a, $1
+ ld a, MAP_MOVE_FRAMES_COUNTER >> 8
ld [hl], a
ld a, [wLeftMapMoveCounter]
and a
- jr z, .asm_148a6
+ jr z, .checkRightMapMoveCounter
cp $3
- jr z, .asm_148a6
+ jr z, .checkRightMapMoveCounter
dec a
ld [wLeftMapMoveCounter], a
- call Func_149f5
-.asm_148a6
- ld hl, wd4f9
+ call LoadDiglettNumberGraphics
+.checkRightMapMoveCounter
+ ld hl, wRightMapMoveCounterFramesUntilDecrease
dec [hl]
ld a, [hli]
cp $ff
- jr nz, .asm_148ce
+ jr nz, .done
dec [hl]
ld a, [hld]
cp $ff
- jr nz, .asm_148ce
- ld a, $e0
+ jr nz, .done
+ ; Reset the counter back to 8 seconds worth of frames (480 frames)
+ ld a, MAP_MOVE_FRAMES_COUNTER & $ff
ld [hli], a
- ld a, $1
+ ld a, MAP_MOVE_FRAMES_COUNTER >> 8
ld [hl], a
ld a, [wRightMapMoveCounter]
and a
- jr z, .asm_148ce
+ jr z, .done
cp $3
- jr z, .asm_148ce
+ jr z, .done
dec a
ld [wRightMapMoveCounter], a
add $4
- call Func_149f5
-.asm_148ce
+ call LoadDiglettNumberGraphics
+.done
ret
-Func_148cf: ; 0x148cf
+UpdateMapMoveCounters_RedFieldTop: ; 0x148cf
+; This is identical logic to UpdateMapMoveCounters_RedFieldBottom, but it doesn't load
+; any graphics, since the Diglett aren't in the Top half of the Red Field.
ld b, $0
- ld hl, wd4f8
+ ld hl, wLeftMapMoveCounterFramesUntilDecrease + 1
ld a, [hld]
or [hl]
- jr z, .asm_148f8
+ jr z, .checkRightMapMoveCounter
dec [hl]
ld a, [hli]
cp $ff
- jr nz, .asm_148f8
+ jr nz, .checkRightMapMoveCounter
dec [hl]
ld a, [hld]
cp $ff
- jr nz, .asm_148f8
- ld a, $e0
+ jr nz, .checkRightMapMoveCounter
+ ; Reset the counter back to 8 seconds worth of frames (480 frames)
+ ld a, MAP_MOVE_FRAMES_COUNTER & $ff
ld [hli], a
- ld a, $1
+ ld a, MAP_MOVE_FRAMES_COUNTER >> 8
ld [hl], a
ld a, [wLeftMapMoveCounter]
and a
- jr z, .asm_148f8
+ jr z, .checkRightMapMoveCounter
cp $3
- jr z, .asm_148f8
+ jr z, .checkRightMapMoveCounter
dec a
ld [wLeftMapMoveCounter], a
-.asm_148f8
- ld hl, wd4fa
+.checkRightMapMoveCounter
+ ld hl, wRightMapMoveCounterFramesUntilDecrease + 1
ld a, [hld]
or [hl]
- jr z, .asm_1491f
+ jr z, .done
dec [hl]
ld a, [hli]
cp $ff
- jr nz, .asm_1491f
+ jr nz, .done
dec [hl]
ld a, [hld]
cp $ff
- jr nz, .asm_1491f
- ld a, $e0
+ jr nz, .done
+ ; Reset the counter back to 8 seconds worth of frames (480 frames)
+ ld a, MAP_MOVE_FRAMES_COUNTER & $ff
ld [hli], a
- ld a, $1
+ ld a, MAP_MOVE_FRAMES_COUNTER >> 8
ld [hl], a
ld a, [wRightMapMoveCounter]
and a
- jr z, .asm_1491f
+ jr z, .done
cp $3
- jr z, .asm_1491f
+ jr z, .done
dec a
ld [wRightMapMoveCounter], a
-.asm_1491f
+.done
ret
-Func_14920: ; 0x14920
+HitRightDiglett3Times: ; 0x14920
ld hl, wNumDugtrioTriples
call Increment_Max100
jr nc, .asm_14937
ld c, $a
call Modulo_C
- callba z, IncrementBonusMultiplier
+ callba z, IncrementBonusMultiplierFromFieldEvent
.asm_14937
ld a, $1
ld [wd55a], a
callba StartMapMoveMode
ret
-Func_14947: ; 0x14947
+HitLeftDiglett3Times: ; 0x14947
ld hl, wNumDugtrioTriples
call Increment_Max100
jr nc, .asm_1495e
ld c, $a
call Modulo_C
- callba z, IncrementBonusMultiplier
+ callba z, IncrementBonusMultiplierFromFieldEvent
.asm_1495e
xor a
ld [wd55a], a
callba StartMapMoveMode
ret
-Func_1496d: ; 0x1496d
+AddScoreForHittingDiglett: ; 0x1496d
ld a, $55
ld [wd803], a
ld a, $4
@@ -478,7 +487,7 @@ Func_14990: ; 0x14990 ld a, [wLeftMapMoveDiglettFrame]
xor $1
ld [wLeftMapMoveDiglettFrame], a
- call Func_149d9
+ call LoadDiglettGraphics
.asm_149b6
ld a, [wd4f1]
and a
@@ -500,7 +509,7 @@ Func_14990: ; 0x14990 ld [wRightMapMoveDiglettFrame], a
add $3
; fall through
-Func_149d9: ; 0x149d9
+LoadDiglettGraphics: ; 0x149d9
sla a
ld c, a
ld b, $0
@@ -520,7 +529,7 @@ Func_149d9: ; 0x149d9 call Func_10aa
ret
-Func_149f5: ; 0x149f5
+LoadDiglettNumberGraphics: ; 0x149f5
sla a
ld c, a
ld b, $0
@@ -540,777 +549,7 @@ Func_149f5: ; 0x149f5 call Func_10aa
ret
-TileListDataPointers_14a11: ; 0x14a11
- dw TileListData_14a1d
- dw TileListData_14a20
- dw TileListData_14a23
- dw TileListData_14a26
- dw TileListData_14a29
- dw TileListData_14a2c
-
-TileListData_14a1d: ; 0x14a1d
- db $01
- dw TileListData_14a2f
-
-TileListData_14a20: ; 0x14a20
- db $01
- dw TileListData_14a3d
-
-TileListData_14a23: ; 0x14a23
- db $01
- dw TileListData_14a4b
-
-TileListData_14a26: ; 0x14a26
- db $01
- dw TileListData_14a59
-
-TileListData_14a29: ; 0x14a29
- db $01
- dw TileListData_14a67
-
-TileListData_14a2c: ; 0x14a2c
- db $01
- dw TileListData_14a75
-
-TileListData_14a2f: ; 0x14a2f
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $a3
- db $4C, $4D
-
- db $02 ; number of tiles
- dw vBGMap + $c3
- db $4E, $4F
-
- db $00 ; terminator
-
-TileListData_14a3d: ; 0x14a3d
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $a3
- db $50, $51
-
- db $02 ; number of tiles
- dw vBGMap + $c3
- db $52, $53
-
- db $00 ; terminator
-
-TileListData_14a4b: ; 0x14a4b
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $a3
- db $54, $80
-
- db $02 ; number of tiles
- dw vBGMap + $c3
- db $55, $80
-
- db $00 ; terminator
-
-TileListData_14a59: ; 0x14a59
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $af
- db $56, $57
-
- db $02 ; number of tiles
- dw vBGMap + $cf
- db $58, $59
-
- db $00 ; terminator
-
-TileListData_14a67: ; 0x14a67
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $af
- db $5a, $5b
-
- db $02 ; number of tiles
- dw vBGMap + $cf
- db $5c, $5d
-
- db $00 ; terminator
-
-TileListData_14a75: ; 0x14a75
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $af
- db $80, $5e
-
- db $02 ; number of tiles
- dw vBGMap + $cf
- db $80, $5f
-
- db $00 ; terminator
-
-TileListDataPointers_14a83:
- dw TileListData_14a8f
- dw TileListData_14a92
- dw TileListData_14a95
- dw TileListData_14a98
- dw TileListData_14a9b
- dw TileListData_14a9e
-
-TileListData_14a8f: ; 0x14a8f
- db $01
- dw TileListData_14aa1
-
-TileListData_14a92: ; 0x14a92
- db $01
- dw TileListData_14aaf
-
-TileListData_14a95: ; 0x14a95
- db $01
- dw TileListData_14abd
-
-TileListData_14a98: ; 0x14a98
- db $01
- dw TileListData_14acb
-
-TileListData_14a9b: ; 0x14a9b
- db $01
- dw TileListData_14ad9
-
-TileListData_14a9e: ; 0x14a9e
- db $01
- dw TileListData_14ae7
-
-TileListData_14aa1: ; 0x14aa1
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $a3
- db $54, $55
-
- db $02 ; number of tiles
- dw vBGMap + $c3
- db $56, $57
-
- db $00
-
-TileListData_14aaf: ; 0x14aaf
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $a3
- db $58, $59
-
- db $02 ; number of tiles
- dw vBGMap + $c3
- db $5A, $5B
-
- db $00 ; terminator
-
-TileListData_14abd: ; 0x14abd
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $a3
- db $5C, $80
-
- db $02 ; number of tiles
- dw vBGMap + $c3
- db $5D, $80
-
- db $00 ; terminator
-
-TileListData_14acb: ; 0x14acb
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $af
- db $55, $54
-
- db $02 ; number of tiles
- dw vBGMap + $cf
- db $57, $56
-
- db $00 ; terminator
-
-TileListData_14ad9: ; 0x14ad9
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $af
- db $59, $58
-
- db $02 ; number of tiles
- dw vBGMap + $cf
- db $5B, $5A
-
- db $00 ; terminator
-
-TileListData_14ae7: ; 0x14ae7
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $af
- db $80, $5C
-
- db $02 ; number of tiles
- dw vBGMap + $cf
- db $80, $5D
-
- db $00 ; terminator
-
-Data_14af5: ; 0x14af5
- dw Data_14b05
- dw Data_14b0e
- dw Data_14b17
- dw Data_14b20
- dw Data_14b29
- dw Data_14b32
- dw Data_14b3b
- dw Data_14b44
-
-Data_14b05: ; 0x14b05
- db $04
- dw Data_14b4d
- dw Data_14b57
- dw Data_14b61
- dw Data_14b6b
-
-Data_14b0e: ; 0x14b0e
- db $04
- dw Data_14b75
- dw Data_14b7f
- dw Data_14b89
- dw Data_14b93
-
-Data_14b17: ; 0x14b17
- db $04
- dw Data_14b9d
- dw Data_14ba7
- dw Data_14bb1
- dw Data_14bbb
-
-Data_14b20: ; 0x14b20
- db $04
- dw Data_14bc5
- dw Data_14bcf
- dw Data_14bd9
- dw Data_14be3
-
-Data_14b29: ; 0x14b29
- db $04
- dw Data_14bed
- dw Data_14bf7
- dw Data_14c01
- dw Data_14c0b
-
-Data_14b32: ; 0x14b32
- db $04
- dw Data_14c15
- dw Data_14c1f
- dw Data_14c29
- dw Data_14c33
-
-Data_14b3b: ; 0x14b3b
- db $04
- dw Data_14c3d
- dw Data_14c47
- dw Data_14c51
- dw Data_14c5b
-
-Data_14b44: ; 0x14b44
- db $04
- dw Data_14c65
- dw Data_14c6f
- dw Data_14c79
- dw Data_14c83
-
-Data_14b4d: ; 0x14b4d
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $26
- dw StageRedFieldBottomBaseGameBoyGfx + $a60
- db Bank(StageRedFieldBottomBaseGameBoyGfx)
- db $00 ; terminator
-
-Data_14b57: ; 0x14b57
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $29
- dw StageRedFieldBottomBaseGameBoyGfx + $a90
- db Bank(StageRedFieldBottomBaseGameBoyGfx)
- db $00 ; terminator
-
-Data_14b61: ; 0x14b61
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $2C
- dw StageRedFieldBottomBaseGameBoyGfx + $ac0
- db Bank(StageRedFieldBottomBaseGameBoyGfx)
- db $00 ; terminator
-
-Data_14b6b: ; 0x14b6b
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $2F
- dw StageRedFieldBottomBaseGameBoyGfx + $af0
- db Bank(StageRedFieldBottomBaseGameBoyGfx)
- db $00 ; terminator
-
-Data_14b75: ; 0x14b75
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $26
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $720
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14b7f: ; 0x14b7f
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $29
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $750
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14b89: ; 0x14b89
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $2C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $780
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14b93: ; 0x14b93
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $2F
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $7B0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14b9d: ; 0x14b9d
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $26
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $7C0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14ba7: ; 0x14ba7
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $29
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $7F0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14bb1: ; 0x14bb1
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $2C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $820
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14bbb: ; 0x14bbb
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $2F
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $850
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14bc5: ; 0x14bc5
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $26
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $860
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14bcf: ; 0x14bcf
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $29
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $890
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14bd9: ; 0x14bd9
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $2C
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $8C0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14be3: ; 0x14be3
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $2F
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $8F0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14bed: ; 0x14bed
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $30
- dw StageRedFieldBottomBaseGameBoyGfx + $B00
- db Bank(StageRedFieldBottomBaseGameBoyGfx)
- db $00 ; terminator
-
-Data_14bf7: ; 0x14bf7
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $33
- dw StageRedFieldBottomBaseGameBoyGfx + $B30
- db Bank(StageRedFieldBottomBaseGameBoyGfx)
- db $00 ; terminator
-
-Data_14c01: ; 0x14c01
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $36
- dw StageRedFieldBottomBaseGameBoyGfx + $B60
- db Bank(StageRedFieldBottomBaseGameBoyGfx)
- db $00 ; terminator
-
-Data_14c0b: ; 0x14c0b
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $39
- dw StageRedFieldBottomBaseGameBoyGfx + $B90
- db Bank(StageRedFieldBottomBaseGameBoyGfx)
- db $00 ; terminator
-
-Data_14c15: ; 0x14c15
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $30
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $900
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14c1f: ; 0x14c1f
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $33
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $930
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14c29: ; 0x14c29
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $36
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $960
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14c33: ; 0x14c33
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $39
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $990
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14c3d: ; 0x14c3d
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $30
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $9A0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14c47: ; 0x14c47
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $33
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $9D0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14c51: ; 0x14c51
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $36
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $A00
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14c5b: ; 0x14c5b
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $39
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $A30
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14c65: ; 0x14c65
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $30
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $A40
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14c6f: ; 0x14c6f
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $33
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $A70
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14c79: ; 0x14c79
- dw Func_11d2
- db $30, $03
- dw vTilesBG tile $36
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $AA0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-Data_14c83: ; 0x14c83
- dw Func_11d2
- db $10, $01
- dw vTilesBG tile $39
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $AD0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileListDataPointers_14c8d:
- dw Data_14c9d
- dw Data_14ca0
- dw Data_14ca3
- dw Data_14ca6
- dw Data_14ca9
- dw Data_14cac
- dw Data_14caf
- dw Data_14cb2
-
-Data_14c9d: ; 0x14c9d
- db $01
- dw TileListData_14cb5
-
-Data_14ca0: ; 0x14ca0
- db $01
- dw TileListData_14ccf
-
-Data_14ca3: ; 0x14ca3
- db $01
- dw TileListData_14ce9
-
-Data_14ca6: ; 0x14ca6
- db $01
- dw TileListData_14d03
-
-Data_14ca9: ; 0x14ca9
- db $01
- dw TileListData_14d1d
-
-Data_14cac: ; 0x14cac
- db $01
- dw TileListData_14d37
-
-Data_14caf: ; 0x14caf
- db $01
- dw TileListData_14d51
-
-Data_14cb2: ; 0x14cb2
- db $01
- dw TileListData_14d6b
-
-TileListData_14cb5: ; 0x14cb5
- dw LoadTileLists
- db $0A ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $80
- db $06, $07
-
- db $03 ; number of tiles
- dw vBGMap + $a0
- db $08, $09, $0A
-
- db $03 ; number of tiles
- dw vBGMap + $c0
- db $0B, $0C, $0D
-
- db $02 ; number of tiles
- dw vBGMap + $e0
- db $0E, $0F
-
- db $00 ; terminator
-
-TileListData_14ccf: ; 0x14ccf
- dw LoadTileLists
- db $0A ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $80
- db $06, $07
-
- db $03 ; number of tiles
- dw vBGMap + $a0
- db $10, $11, $0A
-
- db $03 ; number of tiles
- dw vBGMap + $c0
- db $12, $13, $0D
-
- db $02 ; number of tiles
- dw vBGMap + $e0
- db $14, $15
-
- db $00 ; terminator
-
-TileListData_14ce9: ; 0x14ce9
- dw LoadTileLists
- db $0A ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $80
- db $06, $07
-
- db $03 ; number of tiles
- dw vBGMap + $a0
- db $10, $16, $17
-
- db $03 ; number of tiles
- dw vBGMap + $c0
- db $12, $18, $19
-
- db $02 ; number of tiles
- dw vBGMap + $e0
- db $14, $15
-
- db $00 ; terminator
-
-TileListData_14d03: ; 0x14d03
- dw LoadTileLists
- db $0A ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $80
- db $1A, $1B
-
- db $03 ; number of tiles
- dw vBGMap + $a0
- db $1C, $1D, $17
-
- db $03 ; number of tiles
- dw vBGMap + $c0
- db $12, $18, $19
-
- db $02 ; number of tiles
- dw vBGMap + $e0
- db $14, $15
-
- db $00 ; terminator
-
-TileListData_14d1d: ; 014d1d
- dw LoadTileLists
- db $0A ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $92
- db $07, $06
-
- db $03 ; number of tiles
- dw vBGMap + $b1
- db $0A, $1E, $08
-
- db $03 ; number of tiles
- dw vBGMap + $d1
- db $22, $0C, $24
-
- db $02 ; number of tiles
- dw vBGMap + $f2
- db $0F, $0E
-
- db $00 ; terminator
-
-TileListData_14d37: ; 0x14d37
- dw LoadTileLists
- db $0A ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $92
- db $07, $06
-
- db $03 ; number of tiles
- dw vBGMap + $b1
- db $0A, $1F, $10
-
- db $03 ; number of tiles
- dw vBGMap + $d1
- db $22, $13, $25
-
- db $02 ; number of tiles
- dw vBGMap + $f2
- db $15, $14
-
- db $00 ; terminator
-
-TileListData_14d51: ; 0x14d51
- dw LoadTileLists
- db $0A ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $92
- db $07, $06
-
- db $03 ; number of tiles
- dw vBGMap + $b1
- db $17, $20, $10
-
- db $03 ; number of tiles
- dw vBGMap + $d1
- db $23, $18, $25
-
- db $02 ; number of tiles
- dw vBGMap + $f2
- db $15, $14
-
- db $00 ; terminator
-
-TileListData_14d6b: ; 0x14d6b
- dw LoadTileLists
- db $0A ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $92
- db $1B, $1A
-
- db $03 ; number of tiles
- dw vBGMap + $b1
- db $17, $21, $1C
-
- db $03 ; number of tiles
- dw vBGMap + $d1
- db $23, $18, $25
-
- db $02 ; number of tiles
- dw vBGMap + $f2
- db $15, $14
-
- db $00 ; terminator
+INCLUDE "data/queued_tiledata/red_field/diglett.asm"
ResolveVoltorbCollision: ; 0x14d85
ld a, [wWhichVoltorb]
@@ -1498,680 +737,22 @@ UpdateSpinnerChargeGraphics_RedField: ; 0x14ece call Func_10aa
ret
-TileDataPointers_14eeb:
- dw TileData_14f0b
- dw TileData_14f10
- dw TileData_14f15
- dw TileData_14f1a
- dw TileData_14f1f
- dw TileData_14f24
- dw TileData_14f29
- dw TileData_14f2e
- dw TileData_14f33
- dw TileData_14f38
- dw TileData_14f3d
- dw TileData_14f42
- dw TileData_14f47
- dw TileData_14f4c
- dw TileData_14f51
- dw TileData_14f56
-
-TileData_14f0b: ; 0x14f0b
- db $02
- dw TileData_14f5b
- dw TileData_14f65
-
-TileData_14f10: ; 0x14f10
- db $02
- dw TileData_14f6f
- dw TileData_14f79
-
-TileData_14f15: ; 0x14f15
- db $02
- dw TileData_14f83
- dw TileData_14f8d
-
-TileData_14f1a: ; 0x14f1a
- db $02
- dw TileData_14f97
- dw TileData_14fa1
-
-TileData_14f1f: ; 0x14f1f
- db $02
- dw TileData_14fab
- dw TileData_14fb5
-
-TileData_14f24: ; 0x14f24
- db $02
- dw TileData_14fbf
- dw TileData_14fc9
-
-TileData_14f29: ; 0x14f29
- db $02
- dw TileData_14fd3
- dw TileData_14fdd
-
-TileData_14f2e: ; 0x14f2e
- db $02
- dw TileData_14fe7
- dw TileData_14ff1
-
-TileData_14f33: ; 0x14f33
- db $02
- dw TileData_14ffb
- dw TileData_15005
-
-TileData_14f38: ; 0x14f38
- db $02
- dw TileData_1500f
- dw TileData_15019
-
-TileData_14f3d: ; 0x14f3d
- db $02
- dw TileData_15023
- dw TileData_1502d
-
-TileData_14f42: ; 0x14f42
- db $02
- dw TileData_15037
- dw TileData_15041
-
-TileData_14f47: ; 0x14f47
- db $02
- dw TileData_1504b
- dw TileData_15055
-
-TileData_14f4c: ; 0x14f4c
- db $02
- dw TileData_1505f
- dw TileData_15069
-
-TileData_14f51: ; 0x14f51
- db $02
- dw TileData_15073
- dw TileData_1507d
-
-TileData_14f56: ; 0x14f56
- db $02
- dw TileData_15087
- dw TileData_15091
-
-TileData_14f5b: ; 0x14f5b
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldTopBaseGameBoyGfx + $cb0
- db Bank(StageRedFieldTopBaseGameBoyGfx)
- db $00 ; terminator
-
-TileData_14f65: ; 0x14f65
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldTopBaseGameBoyGfx + $cd0
- db Bank(StageRedFieldTopBaseGameBoyGfx)
- db $00 ; terminator
-
-TileData_14f6f: ; 0x14f6f
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $AE0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_14f79: ; 0x14f79
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $B00
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_14f83: ; 0x14f83
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $B20
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_14f8d: ; 0x14f8d
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $B40
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_14f97: ; 0x14f97
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $B60
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_14fa1: ; 0x14fa1
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $B80
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_14fab: ; 0x14fab
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $BA0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_14fb5: ; 0x14fb5
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $BC0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_14fbf: ; 0x14fbf
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $BE0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_14fc9: ; 0x14fc9
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $C00
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_14fd3: ; 0x14fd3
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $C20
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_14fdd: ; 0x14fdd
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $C40
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_14fe7: ; 0x14fe7
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $C60
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_14ff1: ; 0x14ff1
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $C80
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_14ffb: ; 0x14ffb
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $CA0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_15005: ; 0x15005
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $CC0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1500f: ; 0x1500f
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $CE0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_15019: ; 0x15019
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $D00
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_15023: ; 0x15023
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $D20
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1502d: ; 0x1502d
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $D40
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_15037: ; 0x15037
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $D60
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_15041: ; 0x15041
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $D80
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1504b: ; 0x1504b
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $DA0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_15055: ; 0x15055
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $DC0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1505f: ; 0x1505f
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $DE0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_15069: ; 0x15069
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $E00
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_15073: ; 0x15073
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $E20
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_1507d: ; 0x1507d
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $E40
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_15087: ; 0x15087
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $75
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $E60
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileData_15091: ; 0x15091
- dw Func_11d2
- db $20, $02
- dw vTilesBG tile $77
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $E80
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00 ; terminator
-
-TileDataPointers_1509b:
- dw TileData_150bb
- dw TileData_150be
- dw TileData_150c1
- dw TileData_150c4
- dw TileData_150c7
- dw TileData_150ca
- dw TileData_150cd
- dw TileData_150d0
- dw TileData_150d3
- dw TileData_150d6
- dw TileData_150d9
- dw TileData_150dc
- dw TileData_150df
- dw TileData_150e2
- dw TileData_150e5
- dw TileData_150e8
-
-TileData_150bb: ; 0x150bb
- db $01
- dw TileData_150eb
-
-TileData_150be: ; 0x150be
- db $01
- dw TileData_150f9
-
-TileData_150c1: ; 0x150c1
- db $01
- dw TileData_15107
-
-TileData_150c4: ; 0x150c4
- db $01
- dw TileData_15115
-
-TileData_150c7: ; 0x150c7
- db $01
- dw TileData_15123
-
-TileData_150ca: ; 0x150ca
- db $01
- dw TileData_15131
-
-TileData_150cd: ; 0x150cd
- db $01
- dw TileData_1513f
-
-TileData_150d0: ; 0x150d0
- db $01
- dw TileData_1514d
-
-TileData_150d3: ; 0x150d3
- db $01
- dw TileData_1515b
-
-TileData_150d6: ; 0x150d6
- db $01
- dw TileData_15169
-
-TileData_150d9: ; 0x150d9
- db $01
- dw TileData_15177
-
-TileData_150dc: ; 0x150dc
- db $01
- dw TileData_15185
-
-TileData_150df: ; 0x150df
- db $01
- dw TileData_15193
-
-TileData_150e2: ; 0x150e2
- db $01
- dw TileData_151a1
-
-TileData_150e5: ; 0x150e5
- db $01
- dw TileData_151af
-
-TileData_150e8: ; 0x150e8
- db $01
- dw TileData_151bd
-
-TileData_150eb: ; 0x150eb
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $5C, $5D
-
- db $02 ; number of tiles
- dw $992E
- db $5E, $5F
-
- db $00 ; terminator
-
-TileData_150f9: ; 0x150f9
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $5C, $5D
-
- db $02 ; number of tiles
- dw $992E
- db $60, $61
-
- db $00 ; terminator
-
-TileData_15107: ; 0x15107
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $5C, $5D
-
- db $02 ; number of tiles
- dw $992E
- db $62, $63
-
- db $00 ; terminator
-
-TileData_15115: ; 0x15115
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $5C, $5D
-
- db $02 ; number of tiles
- dw $992E
- db $64, $65
-
- db $00 ; terminator
-
-TileData_15123: ; 0x15123
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $5C, $5D
-
- db $02 ; number of tiles
- dw $992E
- db $66, $67
-
- db $00 ; terminator
-
-TileData_15131: ; 0x15131
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $5C, $5D
-
- db $02 ; number of tiles
- dw $992E
- db $68, $69
-
- db $00 ; terminator
-
-TileData_1513f: ; 0x1513f
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $5C, $5D
-
- db $02 ; number of tiles
- dw $992E
- db $6A, $6B
-
- db $00 ; terminator
-
-TileData_1514d: ; 0x1514d
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $5C, $5D
-
- db $02 ; number of tiles
- dw $992E
- db $6C, $6D
-
- db $00 ; terminator
-
-TileData_1515b: ; 0x1515b
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $5C, $5D
-
- db $02 ; number of tiles
- dw $992E
- db $6E, $6F
-
- db $00 ; terminator
-
-TileData_15169: ; 0x15169
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $70, $71
-
- db $02 ; number of tiles
- dw $992E
- db $6E, $6F
-
- db $00 ; terminator
-
-TileData_15177: ; 0x15177
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $72, $73
-
- db $02 ; number of tiles
- dw $992E
- db $6E, $6F
-
- db $00 ; terminator
-
-TileData_15185: ; 0x15185
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $74, $75
-
- db $02 ; number of tiles
- dw $992E
- db $6E, $6F
-
- db $00 ; terminator
+INCLUDE "data/queued_tiledata/red_field/spinner.asm"
-TileData_15193: ; 0x15193
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $76, $77
-
- db $02 ; number of tiles
- dw $992E
- db $6E, $6F
-
- db $00 ; terminator
-
-TileData_151a1: ; 0x151a1
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $78, $79
-
- db $02 ; number of tiles
- dw $992E
- db $6E, $6F
-
- db $00 ; terminator
-
-TileData_151af: ; 0x151af
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $7A, $7B
-
- db $02 ; number of tiles
- dw $992E
- db $6E, $6F
-
- db $00 ; terminator
-
-TileData_151bd: ; 0x151bd
- dw LoadTileLists
- db $04 ; total number of tiles
-
- db $02 ; number of tiles
- dw $990E
- db $7C, $7D
-
- db $02 ; number of tiles
- dw $992E
- db $7E, $7F
-
- db $00 ; terminator
-
-Func_151cb: ; 0x151cb
+ResolveCAVELightCollision_RedField: ; 0x151cb
ld a, [wWhichCAVELight]
and a
jr z, .asm_15229
xor a
ld [wWhichCAVELight], a
- ld a, [wd513]
+ ld a, [wCAVELightsBlinking]
and a
jr nz, .asm_15229
ld a, [wWhichCAVELightId]
sub $a
ld c, a
ld b, $0
- ld hl, wd50f
+ ld hl, wCAVELightStates
add hl, bc
ld a, [hl]
ld [hl], $1
@@ -2179,66 +760,69 @@ Func_151cb: ; 0x151cb ret nz
ld bc, OneHundredPoints
callba AddBigBCD6FromQueueWithBallMultiplier
- ld hl, wd50f
+ ld hl, wCAVELightStates
ld a, [hli]
and [hl]
inc hl
and [hl]
inc hl
and [hl]
- jr z, Func_asm_1522d
+ jr z, LoadCAVELightsGraphics_RedField
ld a, $1
- ld [wd513], a
+ ld [wCAVELightsBlinking], a
ld a, $80
- ld [wd514], a
+ ld [wCAVELightsBlinkingFramesRemaining], a
ld bc, FourHundredPoints
callba AddBigBCD6FromQueueWithBallMultiplier
lb de, $00, $09
call PlaySoundEffect
ld hl, wNumCAVECompletions
call Increment_Max100
- jr Func_asm_1522d
+ jr LoadCAVELightsGraphics_RedField
.asm_15229
- call Func_15270
+ call UpdateCAVELightsBlinking_RedField
ret z
; fall through
-Func_asm_1522d: ; 0x1522d
- ld hl, wd512
+LoadCAVELightsGraphics_RedField: ; 0x1522d
+; Loads the graphics for each of the 4 CAVE lights, depending on what their current toggled state is.
+ ld hl, wCAVELightStates + 3
ld b, $4
-.asm_15232
+.loop
ld a, [hld]
push hl
- call Func_1523c
+ call LoadCAVELightGraphics_RedField
pop hl
dec b
- jr nz, .asm_15232
+ jr nz, .loop
ret
-Func_1523c: ; 0x1523c
+LoadCAVELightGraphics_RedField: ; 0x1523c
+; Loads a graphics for single CAVE light.
+; Input: a = toggle state for CAVE light
and a
- jr z, .asm_1524e
+ jr z, .toggledOff
ld a, [hGameBoyColorFlag]
and a
- jr nz, .asm_15249
+ jr nz, .toggledOnGameboy
ld hl, TileDataPointers_152dd
- jr .asm_1525b
+ jr .load
-.asm_15249
+.toggledOnGameboy
ld hl, TileDataPointers_1531d
- jr .asm_1525b
+ jr .load
-.asm_1524e
+.toggledOff
ld a, [hGameBoyColorFlag]
and a
- jr nz, .asm_15258
+ jr nz, .toggledOffGameboy
ld hl, TileDataPointers_152e5
- jr .asm_1525b
+ jr .load
-.asm_15258
+.toggledOffGameboy
ld hl, TileDataPointers_15325
-.asm_1525b
+.load
push bc
dec b
sla b
@@ -2254,15 +838,15 @@ Func_1523c: ; 0x1523c pop bc
ret
-Func_15270: ; 0x15270
- ld a, [wd513]
+UpdateCAVELightsBlinking_RedField: ; 0x15270
+ ld a, [wCAVELightsBlinking]
and a
- jr z, .asm_152a6
- ld a, [wd514]
+ jr z, .notBlinking
+ ld a, [wCAVELightsBlinkingFramesRemaining]
dec a
- ld [wd514], a
+ ld [wCAVELightsBlinkingFramesRemaining], a
jr nz, .asm_1528d
- ld [wd513], a
+ ld [wCAVELightsBlinking], a
ld a, $1
ld [wd608], a
ld a, $3
@@ -2271,12 +855,12 @@ Func_15270: ; 0x15270 .asm_1528d
and $7
ret nz
- ld a, [wd514]
+ ld a, [wCAVELightsBlinkingFramesRemaining]
srl a
srl a
srl a
and $1
- ld hl, wd50f
+ ld hl, wCAVELightStates
ld [hli], a
ld [hli], a
ld [hli], a
@@ -2285,11 +869,11 @@ Func_15270: ; 0x15270 and a
ret
-.asm_152a6
+.notBlinking
ld hl, wKeyConfigLeftFlipper
call IsKeyPressed
- jr z, .asm_152c2
- ld hl, wd50f
+ jr z, .checkRightFlipperKeyPress
+ ld hl, wCAVELightStates
ld a, [hli]
ld c, a
ld a, [hli]
@@ -2308,11 +892,11 @@ Func_15270: ; 0x15270 ld [hl], a
ret
-.asm_152c2
+.checkRightFlipperKeyPress
ld hl, wKeyConfigRightFlipper
call IsKeyPressed
ret z
- ld hl, wd50f
+ ld hl, wCAVELightStates
ld a, [hli]
ld c, a
ld a, [hli]
@@ -2331,186 +915,20 @@ Func_15270: ; 0x15270 ld [hl], a
ret
-TileDataPointers_152dd:
- dw TileData_152ed
- dw TileData_152f3
- dw TileData_152f9
- dw TileData_152ff
-
-TileDataPointers_152e5:
- dw TileData_15305
- dw TileData_1530b
- dw TileData_15311
- dw TileData_15317
-
-TileData_152ed: ; 0x152ed
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $121
- db $7d
-
- db $00 ; terminator
-
-TileData_152f3: ; 0x152f3
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $123
- db $7d
-
- db $00 ; terminator
-
-TileData_152f9: ; 0x152f9
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $130
- db $7f
-
- db $00 ; terminator
-
-TileData_152ff: ; 0x152ff
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $132
- db $7f
-
- db $00 ; terminator
-
-TileData_15305: ; 0x15305
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $121
- db $7c
-
- db $00 ; terminator
-
-TileData_1530b: ; 0x1530b
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $123
- db $7c
-
- db $00 ; terminator
-
-TileData_15311: ; 0x15311
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $130
- db $7e
-
- db $00 ; terminator
-
-TileData_15317: ; 0x15317
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $132
- db $7e
-
- db $00 ; terminator
-
-TileDataPointers_1531d:
- dw TileData_1532d
- dw TileData_15333
- dw TileData_15339
- dw TileData_1533f
-
-TileDataPointers_15325:
- dw TileData_15345
- dw TileData_1534b
- dw TileData_15351
- dw TileData_15357
-
-TileData_1532d: ; 0x1532d
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $121
- db $27
-
- db $00 ; terminator
-
-TileData_15333: ; 0x15333
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $123
- db $29
-
- db $00 ; terminator
-
-TileData_15339: ; 0x15339
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $130
- db $7E
-
- db $00 ; terminator
+INCLUDE "data/queued_tiledata/red_field/cave_lights.asm"
-TileData_1533f: ; 0x1533f
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $132
- db $7F
-
- db $00 ; terminator
-
-TileData_15345: ; 0x15345
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $121
- db $26
-
- db $00 ; terminator
-
-TileData_1534b: ; 0x1534b
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $123
- db $28
-
- db $00 ; terminator
-
-TileData_15351: ; 0x15351
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $130
- db $7C
-
- db $00 ; terminator
-
-TileData_15357: ; 0x15357
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $132
- db $7D
-
- db $00 ; terminator
-
-ResolveRedStagePinballUpgradeTriggersCollision: ; 0x1535d
+ResolveBallUpgradeTriggersCollision_RedField: ; 0x1535d
ld a, [wWhichPinballUpgradeTrigger]
and a
- jp z, .asm_1544c
+ jp z, .updatePinballUpgradeTriggersAnimation
xor a
ld [wWhichPinballUpgradeTrigger], a
ld a, [wStageCollisionState]
bit 0, a
- jp z, .asm_1544c
- ld a, [wd5fc]
+ jp z, .updatePinballUpgradeTriggersAnimation
+ ld a, [wBallUpgradeTriggersBlinking]
and a
- jp nz, .asm_1544c
+ jp nz, .updatePinballUpgradeTriggersAnimation
xor a
ld [wRightAlleyTrigger], a
ld [wLeftAlleyTrigger], a
@@ -2522,7 +940,7 @@ ResolveRedStagePinballUpgradeTriggersCollision: ; 0x1535d sub $e
ld c, a
ld b, $0
- ld hl, wd5f9
+ ld hl, wBallUpgradeTriggerStates
add hl, bc
ld a, [hl]
ld [hl], $1
@@ -2530,25 +948,25 @@ ResolveRedStagePinballUpgradeTriggersCollision: ; 0x1535d ret nz
ld bc, OneHundredPoints
callba AddBigBCD6FromQueueWithBallMultiplier
- ld hl, wd5f9
+ ld hl, wBallUpgradeTriggerStates
ld a, [hli]
and [hl]
inc hl
and [hl]
- jr nz, .asm_153c0
+ jr nz, .allTriggersOn
lb de, $00, $09
call PlaySoundEffect
- jp Func_15450
+ jp LoadPinballUpgradeTriggersGraphics_RedField
-.asm_153c0
+.allTriggersOn
ld a, $1
- ld [wd5fc], a
+ ld [wBallUpgradeTriggersBlinking], a
ld a, $80
- ld [wd5fd], a
+ ld [wBallUpgradeTriggersBlinkingFramesRemaining], a
; load approximately 1 minute of frames into wBallTypeCounter
- ld a, $10
+ ld a, PINBALL_UPGRADE_FRAMES_COUNTER & $ff
ld [wBallTypeCounter], a
- ld a, $e
+ ld a, PINBALL_UPGRADE_FRAMES_COUNTER >> 8
ld [wBallTypeCounter + 1], a
ld bc, FourHundredPoints
callba AddBigBCD6FromQueueWithBallMultiplier
@@ -2560,8 +978,8 @@ ResolveRedStagePinballUpgradeTriggersCollision: ; 0x1535d call FillBottomMessageBufferWithBlackTile
call Func_30db
ld de, FieldMultiplierText
- ld hl, wd5cc
- call LoadTextHeader
+ ld hl, wScrollingText1
+ call LoadScrollingText
ld a, [wBallType]
ld c, a
ld b, $0
@@ -2571,7 +989,7 @@ ResolveRedStagePinballUpgradeTriggersCollision: ; 0x1535d ld [wBallType], a
add $30
ld [wBottomMessageText + $12], a
- jr .asm_15447
+ jr .done
.masterBall
lb de, $0f, $4d
@@ -2584,60 +1002,63 @@ ResolveRedStagePinballUpgradeTriggersCollision: ; 0x1535d push de
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5d4
+ ld hl, wScrollingText2
ld de, DigitsText1to8
call Func_32cc
pop de
pop bc
- ld hl, wd5cc
+ ld hl, wScrollingText1
ld de, FieldMultiplierSpecialBonusText
- call LoadTextHeader
-.asm_15447
+ call LoadScrollingText
+.done
call TransitionPinballUpgrade
- jr Func_15450
+ jr LoadPinballUpgradeTriggersGraphics_RedField
-.asm_1544c
- call Func_154a9
+.updatePinballUpgradeTriggersAnimation
+ call UpdatePinballUpgradeBlinkingAnimation_RedField
ret z
-Func_15450
+LoadPinballUpgradeTriggersGraphics_RedField
+; Loads the on or off graphics for each of the 3 pinball upgrade trigger dots, depending on their current toggle state.
ld a, [wStageCollisionState]
bit 0, a
ret z
- ld hl, wd5fb
+ ld hl, wBallUpgradeTriggerStates + 2
ld b, $3
-.asm_1545b
+.loop
ld a, [hld]
push hl
- call Func_15465
+ call LoadPinballUpgradeTriggerGraphics_RedField
pop hl
dec b
- jr nz, .asm_1545b
+ jr nz, .loop
ret
-Func_15465: ; 0x15465
+LoadPinballUpgradeTriggerGraphics_RedField: ; 0x15465
+; Loads the on or off graphics for one of the 3 pinball upgrade trigger dots, depending on its current toggle state.
+; Input: a = toggle state
and a
- jr z, .asm_15477
+ jr z, .toggledOff
ld a, [hGameBoyColorFlag]
and a
- jr nz, .asm_15472
+ jr nz, .toggledOnGameboy
ld hl, TileDataPointers_15511
- jr .asm_15484
+ jr .load
-.asm_15472
+.toggledOnGameboy
ld hl, TileDataPointers_15543
- jr .asm_15484
+ jr .load
-.asm_15477
+.toggledOff
ld a, [hGameBoyColorFlag]
and a
- jr nz, .asm_15481
+ jr nz, .toggledOffGameboy
ld hl, TileDataPointers_15517
- jr .asm_15484
+ jr .load
-.asm_15481
+.toggledOffGameboy
ld hl, TileDataPointers_15549
-.asm_15484
+.load
push bc
dec b
sla b
@@ -2653,38 +1074,39 @@ Func_15465: ; 0x15465 pop bc
ret
-Func_15499: ; 0x15499
+LoadDisabledPinballUpgradeTriggerGraphics_RedField: ; 0x15499
ld a, [hGameBoyColorFlag]
and a
ret nz
ld b, $3
-.asm_1549f
+.loop
push hl
xor a
- call Func_15465
+ call LoadPinballUpgradeTriggerGraphics_RedField
pop hl
dec b
- jr nz, .asm_1549f
+ jr nz, .loop
ret
-Func_154a9: ; 0x154a9
- ld a, [wd5fc]
+UpdatePinballUpgradeBlinkingAnimation_RedField: ; 0x154a9
+ ld a, [wBallUpgradeTriggersBlinking]
and a
- jr z, .asm_154d6
- ld a, [wd5fd]
+ jr z, .notBlinking
+ ld a, [wBallUpgradeTriggersBlinkingFramesRemaining]
dec a
- ld [wd5fd], a
- jr nz, .asm_154bb
- ld [wd5fc], a
-.asm_154bb
+ ld [wBallUpgradeTriggersBlinkingFramesRemaining], a
+ jr nz, .stillBlinking
+ ld [wBallUpgradeTriggersBlinking], a
+.stillBlinking
and $7
- jr nz, .asm_154d4
- ld a, [wd5fd]
+ jr nz, .dontFlipState
+ ; Blink the triggers on or off
+ ld a, [wBallUpgradeTriggersBlinkingFramesRemaining]
srl a
srl a
srl a
and $1
- ld hl, wd5f9
+ ld hl, wBallUpgradeTriggerStates
ld [hli], a
ld [hli], a
ld [hl], a
@@ -2692,15 +1114,15 @@ Func_154a9: ; 0x154a9 and a
ret
-.asm_154d4
+.dontFlipState
xor a
ret
-.asm_154d6
+.notBlinking
ld hl, wKeyConfigLeftFlipper
call IsKeyPressed
- jr z, .asm_154ee
- ld hl, wd5f9
+ jr z, .checkRightFlipperKeyPress
+ ld hl, wBallUpgradeTriggerStates
ld a, [hli]
ld c, a
ld a, [hli]
@@ -2715,11 +1137,11 @@ Func_154a9: ; 0x154a9 ld [hl], a
ret
-.asm_154ee
+.checkRightFlipperKeyPress
ld hl, wKeyConfigRightFlipper
call IsKeyPressed
ret z
- ld hl, wd5f9
+ ld hl, wBallUpgradeTriggerStates
ld a, [hli]
ld c, a
ld a, [hli]
@@ -2752,135 +1174,9 @@ BallTypeDegradationRedField: ; 0x1550b db ULTRA_BALL ; unused
db ULTRA_BALL ; MASTER_BALL -> GREAT_BALL
-TileDataPointers_15511:
- dw TileData_1551d
- dw TileData_15523
- dw TileData_1552a
+INCLUDE "data/queued_tiledata/red_field/ball_upgrade_triggers.asm"
-TileDataPointers_15517:
- dw TileData_15530
- dw TileData_15536
- dw TileData_1553d
-
-TileData_1551d: ; 0x1551d
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $E7
- db $ac
-
- db $00 ; terminator
-
-TileData_15523: ; 0x15523
- db $02 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $C9
- db $ad, $ae
-
- db $00 ; terminator
-
-TileData_1552a: ; 0x1552a
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $CC
- db $af
-
- db $00 ; terminator
-
-TileData_15530: ; 0x15530
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $E7
- db $66
-
- db $00 ; terminator
-
-TileData_15536: ; 0x15536
- db $02 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $C9
- db $68, $69
-
- db $00 ; terminator
-
-TileData_1553d: ; 0x1553d
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $CC
- db $6a
-
- db $00 ; terminator
-
-TileDataPointers_15543:
- dw TileData_1554f
- dw TileData_15555
- dw TileData_1555c
-
-TileDataPointers_15549:
- dw TileData_15562
- dw TileData_15568
- dw TileData_1556F
-
-TileData_1554f: ; 0x1554f
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $e7
- db $3D
-
- db $00 ; terminator
-
-TileData_15555: ; 0x15555
- db $02 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $c9
- db $3F, $40
-
- db $00 ; terminator
-
-TileData_1555c: ; 0x1555c
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $cc
- db $41
-
- db $00 ; terminator
-
-TileData_15562: ; 0x15562
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $e7
- db $37
-
- db $00 ; terminator
-
-TileData_15568: ; 0x15568
- db $02 ; total number of tiles
-
- db $02 ; number of tiles
- dw vBGMap + $c9
- db $39, $3a
-
- db $00 ; terminator
-
-TileData_1556F: ; 0x1556F
- db $01 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $cc
- db $3B
-
- db $00 ; terminator
-
-HandleRedStageBallTypeUpgradeCounter: ; 0x15575
+UpdateBallTypeUpgradeCounter_RedField: ; 0x15575
ld a, [wCapturingMon]
and a
ret nz
@@ -2907,9 +1203,9 @@ HandleRedStageBallTypeUpgradeCounter: ; 0x15575 and a
jr z, .pokeball
; load approximately 1 minute of frames into wBallTypeCounter
- ld a, $10
+ ld a, PINBALL_UPGRADE_FRAMES_COUNTER & $ff
ld [wBallTypeCounter], a
- ld a, $e
+ ld a, PINBALL_UPGRADE_FRAMES_COUNTER >> 8
ld [wBallTypeCounter + 1], a
.pokeball
call TransitionPinballUpgrade
@@ -2920,16 +1216,16 @@ TransitionPinballUpgrade: ; 0x155a7 ld c, a
sla c
ld b, $0
- ld hl, PinballUpgradeTransitionPointers
+ ld hl, PinballUpgradeTransition_TileDataPointers
add hl, bc
ld a, [hli]
ld h, [hl]
ld l, a
- ld a, Bank(PinballUpgradeTransitionPointers)
+ ld a, Bank(PinballUpgradeTransition_TileDataPointers)
call Func_10aa
; fall through
-Func_155bb: ; 0x155bb
+TransitionPinballUpgradePalette: ; 0x155bb
ld a, [hGameBoyColorFlag]
and a
ret z
@@ -2938,448 +1234,17 @@ Func_155bb: ; 0x155bb sla a
ld c, a
ld b, $0
- ld hl, Data_157f7
+ ld hl, PinballUpgradeTransitionPalettes
add hl, bc
ld c, [hl]
inc hl
ld b, [hl]
- ld a, BANK(Data_157f7)
+ ld a, BANK(PinballUpgradeTransitionPalettes)
ld de, LoadPalettes
call Func_10c5
ret
-PinballUpgradeTransitionPointers:
- dw TransitionToPokeBallPointers ; POKE_BALL
- dw TransitionToPokeBallPointers ; POKE_BALL
- dw TransitionToGreatBallPointers ; GREAT_BALL
- dw TransitionToUltraBallPointers ; ULTRA_BALL
- dw TransitionToUltraBallPointers ; ULTRA_BALL
- dw TransitionToMasterBallPointers ; MASTER_BALL
-
-TransitionToPokeBallPointers:
- db 11
- dw TransitionToPokeBall_TileData_1
- dw TransitionToPokeBall_TileData_2
- dw TransitionToPokeBall_TileData_3
- dw TransitionToPokeBall_TileData_4
- dw TransitionToPokeBall_TileData_5
- dw TransitionToPokeBall_TileData_6
- dw TransitionToPokeBall_TileData_7
- dw TransitionToPokeBall_TileData_8
- dw TransitionToPokeBall_TileData_9
- dw TransitionToPokeBall_TileData_10
- dw TransitionToPokeBall_TileData_11
-
-TransitionToGreatBallPointers:
- db 11
- dw TransitionToGreatBall_TileData_1
- dw TransitionToGreatBall_TileData_2
- dw TransitionToGreatBall_TileData_3
- dw TransitionToGreatBall_TileData_4
- dw TransitionToGreatBall_TileData_5
- dw TransitionToGreatBall_TileData_6
- dw TransitionToGreatBall_TileData_7
- dw TransitionToGreatBall_TileData_8
- dw TransitionToGreatBall_TileData_9
- dw TransitionToGreatBall_TileData_10
- dw TransitionToGreatBall_TileData_11
-
-TransitionToUltraBallPointers:
- db 11
- dw TransitionToUltraBall_TileData_1
- dw TransitionToUltraBall_TileData_2
- dw TransitionToUltraBall_TileData_3
- dw TransitionToUltraBall_TileData_4
- dw TransitionToUltraBall_TileData_5
- dw TransitionToUltraBall_TileData_6
- dw TransitionToUltraBall_TileData_7
- dw TransitionToUltraBall_TileData_8
- dw TransitionToUltraBall_TileData_9
- dw TransitionToUltraBall_TileData_10
- dw TransitionToUltraBall_TileData_11
-
-TransitionToMasterBallPointers:
- db 11
- dw TransitionToMasterBall_TileData_1
- dw TransitionToMasterBall_TileData_2
- dw TransitionToMasterBall_TileData_3
- dw TransitionToMasterBall_TileData_4
- dw TransitionToMasterBall_TileData_5
- dw TransitionToMasterBall_TileData_6
- dw TransitionToMasterBall_TileData_7
- dw TransitionToMasterBall_TileData_8
- dw TransitionToMasterBall_TileData_9
- dw TransitionToMasterBall_TileData_10
- dw TransitionToMasterBall_TileData_11
-
-TransitionToPokeBall_TileData_1:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $40)
- dw PinballPokeballGfx + $0
- db Bank(PinballPokeballGfx)
- db $00
-
-TransitionToPokeBall_TileData_2:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $43)
- dw PinballPokeballGfx + $30
- db Bank(PinballPokeballGfx)
- db $00
-
-TransitionToPokeBall_TileData_3:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $46)
- dw PinballPokeballGfx + $60
- db Bank(PinballPokeballGfx)
- db $00
-
-TransitionToPokeBall_TileData_4:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $49)
- dw PinballPokeballGfx + $90
- db Bank(PinballPokeballGfx)
- db $00
-
-TransitionToPokeBall_TileData_5:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $4c)
- dw PinballPokeballGfx + $c0
- db Bank(PinballPokeballGfx)
- db $00
-
-TransitionToPokeBall_TileData_6:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $4f)
- dw PinballPokeballGfx + $f0
- db Bank(PinballPokeballGfx)
- db $00
-
-TransitionToPokeBall_TileData_7:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $52)
- dw PinballPokeballGfx + $120
- db Bank(PinballPokeballGfx)
- db $00
-
-TransitionToPokeBall_TileData_8:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $55)
- dw PinballPokeballGfx + $150
- db Bank(PinballPokeballGfx)
- db $00
-
-TransitionToPokeBall_TileData_9:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $58)
- dw PinballPokeballGfx + $180
- db Bank(PinballPokeballGfx)
- db $00
-
-TransitionToPokeBall_TileData_10:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $5b)
- dw PinballPokeballGfx + $1b0
- db Bank(PinballPokeballGfx)
- db $00
-
-TransitionToPokeBall_TileData_11:
- dw Func_11d2
- db $20, $02
- dw (vTilesOB tile $5e)
- dw PinballPokeballGfx + $1e0
- db Bank(PinballPokeballGfx)
- db $00
-
-TransitionToGreatBall_TileData_1:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $40)
- dw PinballGreatballGfx + $0
- db Bank(PinballGreatballGfx)
- db $00
-
-TransitionToGreatBall_TileData_2:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $43)
- dw PinballGreatballGfx + $30
- db Bank(PinballGreatballGfx)
- db $00
-
-TransitionToGreatBall_TileData_3:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $46)
- dw PinballGreatballGfx + $60
- db Bank(PinballGreatballGfx)
- db $00
-
-TransitionToGreatBall_TileData_4:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $49)
- dw PinballGreatballGfx + $90
- db Bank(PinballGreatballGfx)
- db $00
-
-TransitionToGreatBall_TileData_5:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $4c)
- dw PinballGreatballGfx + $c0
- db Bank(PinballGreatballGfx)
- db $00
-
-TransitionToGreatBall_TileData_6:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $4f)
- dw PinballGreatballGfx + $f0
- db Bank(PinballGreatballGfx)
- db $00
-
-TransitionToGreatBall_TileData_7:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $52)
- dw PinballGreatballGfx + $120
- db Bank(PinballGreatballGfx)
- db $00
-
-TransitionToGreatBall_TileData_8:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $55)
- dw PinballGreatballGfx + $150
- db Bank(PinballGreatballGfx)
- db $00
-
-TransitionToGreatBall_TileData_9:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $58)
- dw PinballGreatballGfx + $180
- db Bank(PinballGreatballGfx)
- db $00
-
-TransitionToGreatBall_TileData_10:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $5b)
- dw PinballGreatballGfx + $1b0
- db Bank(PinballGreatballGfx)
- db $00
-
-TransitionToGreatBall_TileData_11:
- dw Func_11d2
- db $20, $02
- dw (vTilesOB tile $5e)
- dw PinballGreatballGfx + $1e0
- db Bank(PinballGreatballGfx)
- db $00
-
-TransitionToUltraBall_TileData_1:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $40)
- dw PinballUltraballGfx + $0
- db Bank(PinballUltraballGfx)
- db $00
-
-TransitionToUltraBall_TileData_2:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $43)
- dw PinballUltraballGfx + $30
- db Bank(PinballUltraballGfx)
- db $00
-
-TransitionToUltraBall_TileData_3:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $46)
- dw PinballUltraballGfx + $60
- db Bank(PinballUltraballGfx)
- db $00
-
-TransitionToUltraBall_TileData_4:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $49)
- dw PinballUltraballGfx + $90
- db Bank(PinballUltraballGfx)
- db $00
-
-TransitionToUltraBall_TileData_5:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $4c)
- dw PinballUltraballGfx + $c0
- db Bank(PinballUltraballGfx)
- db $00
-
-TransitionToUltraBall_TileData_6:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $4f)
- dw PinballUltraballGfx + $f0
- db Bank(PinballUltraballGfx)
- db $00
-
-TransitionToUltraBall_TileData_7:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $52)
- dw PinballUltraballGfx + $120
- db Bank(PinballUltraballGfx)
- db $00
-
-TransitionToUltraBall_TileData_8:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $55)
- dw PinballUltraballGfx + $150
- db Bank(PinballUltraballGfx)
- db $00
-
-TransitionToUltraBall_TileData_9:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $58)
- dw PinballUltraballGfx + $180
- db Bank(PinballUltraballGfx)
- db $00
-
-TransitionToUltraBall_TileData_10:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $5b)
- dw PinballUltraballGfx + $1b0
- db Bank(PinballUltraballGfx)
- db $00
-
-TransitionToUltraBall_TileData_11:
- dw Func_11d2
- db $20, $02
- dw (vTilesOB tile $5e)
- dw PinballUltraballGfx + $1e0
- db Bank(PinballUltraballGfx)
- db $00
-
-TransitionToMasterBall_TileData_1:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $40)
- dw PinballMasterballGfx + $0
- db Bank(PinballMasterballGfx)
- db $00
-
-TransitionToMasterBall_TileData_2:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $43)
- dw PinballMasterballGfx + $30
- db Bank(PinballMasterballGfx)
- db $00
-
-TransitionToMasterBall_TileData_3:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $46)
- dw PinballMasterballGfx + $60
- db Bank(PinballMasterballGfx)
- db $00
-
-TransitionToMasterBall_TileData_4:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $49)
- dw PinballMasterballGfx + $90
- db Bank(PinballMasterballGfx)
- db $00
-
-TransitionToMasterBall_TileData_5:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $4c)
- dw PinballMasterballGfx + $c0
- db Bank(PinballMasterballGfx)
- db $00
-
-TransitionToMasterBall_TileData_6:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $4f)
- dw PinballMasterballGfx + $f0
- db Bank(PinballMasterballGfx)
- db $00
-
-TransitionToMasterBall_TileData_7:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $52)
- dw PinballMasterballGfx + $120
- db Bank(PinballMasterballGfx)
- db $00
-
-TransitionToMasterBall_TileData_8:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $55)
- dw PinballMasterballGfx + $150
- db Bank(PinballMasterballGfx)
- db $00
-
-TransitionToMasterBall_TileData_9:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $58)
- dw PinballMasterballGfx + $180
- db Bank(PinballMasterballGfx)
- db $00
-
-TransitionToMasterBall_TileData_10:
- dw Func_11d2
- db $30, $03
- dw (vTilesOB tile $5b)
- dw PinballMasterballGfx + $1b0
- db Bank(PinballMasterballGfx)
- db $00
-
-TransitionToMasterBall_TileData_11:
- dw Func_11d2
- db $20, $02
- dw (vTilesOB tile $5e)
- dw PinballMasterballGfx + $1e0
- db Bank(PinballMasterballGfx)
- db $00
-
-Data_157f7:
- dw Data_15803
- dw Data_15803
- dw Data_1580a
- dw Data_15811
- dw Data_15811
- dw Data_15818
-
-Data_15803:
- db $08, $04, $40, $68, $51, $37, $00
-Data_1580a:
- db $08, $04, $40, $70, $51, $37, $00
-Data_15811:
- db $08, $04, $40, $78, $51, $37, $00
-Data_15818:
- db $08, $04, $40, $80, $51, $37, $00
+INCLUDE "data/queued_tiledata/ball_upgrade.asm"
ResolveRedStageBoardTriggerCollision: ; 0x1581f
ld a, [wWhichBoardTrigger]
@@ -4515,7 +2380,7 @@ ResolveBellsproutCollision: ; 0x15e93 ret nc
ld c, $19
call Modulo_C
- callba z, IncrementBonusMultiplier
+ callba z, IncrementBonusMultiplierFromFieldEvent
ret
.asm_15f35
@@ -4601,7 +2466,7 @@ asm_15fc0 ld a, [hGameBoyColorFlag]
and a
jr z, .asm_15fd0
- ld hl, Data_16080
+ ld hl, TileData_16080
.asm_15fd0
add hl, bc
ld a, [hli]
@@ -4639,225 +2504,7 @@ ApplyBumperCollision_RedField: ; 0x15fda BumperCollisionAngleDeltas_RedField:
db -8, 8
-TileDataPointers_16010:
- dw TileData_16018
- dw TileData_1601b
- dw TileData_1601e
- dw TileData_16021
-
-TileData_16018: ; 0x16018
- db $01
- dw TileData_16024
-
-TileData_1601b: ; 0x1601b
- db $01
- dw TileData_1603B
-
-TileData_1601e: ; 0x1601e
- db $01
- dw TileData_16052
-
-TileData_16021: ; 0x16021
- db $01
- dw TileData_16069
-
-TileData_16024: ; 0x16024
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $124
- db $60
-
- db $02 ; number of tiles
- dw vBGMap + $144
- db $61, $62
-
- db $02 ; number of tiles
- dw vBGMap + $164
- db $63, $64
-
- db $02 ; number of tiles
- dw vBGMap + $185
- db $65, $66
-
- db $00 ; terminator
-
-TileData_1603B: ; 0x1603B
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $124
- db $67
-
- db $02 ; number of tiles
- dw vBGMap + $144
- db $68, $69
-
- db $02 ; number of tiles
- dw vBGMap + $164
- db $6A, $6B
-
- db $02 ; number of tiles
- dw vBGMap + $185
- db $6C, $6D
-
- db $00 ; terminator
-
-TileData_16052: ; 0x16052
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $12F
- db $6E
-
- db $02 ; number of tiles
- dw vBGMap + $14E
- db $6F, $70
-
- db $02 ; number of tiles
- dw vBGMap + $16E
- db $71, $72
-
- db $02 ; number of tiles
- dw vBGMap + $18D
- db $73, $74
-
- db $00 ; terminator
-
-TileData_16069: ; 0x16069
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $12F
- db $75
-
- db $02 ; number of tiles
- dw vBGMap + $14E
- db $76, $77
-
- db $02 ; number of tiles
- dw vBGMap + $16E
- db $78, $79
-
- db $02 ; number of tiles
- dw vBGMap + $18D
- db $7A, $7B
-
- db $00 ; terminator
-
-Data_16080:
- dw Data_16088
- dw Data_1608b
- dw Data_1608e
- dw Data_16091
-
-Data_16088: ; 0x16088
- db $01
- dw Data_16094
-
-Data_1608b: ; 0x1608b
- db $01
- dw Data_160ab
-
-Data_1608e: ; 0x1608e
- db $01
- dw Data_160c2
-
-Data_16091: ; 0x16091
- db $01
- dw Data_160d9
-
-Data_16094: ; 0x16094
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $124
- db $2A
-
- db $02 ; number of tiles
- dw vBGMap + $144
- db $2B, $2C
-
- db $02 ; number of tiles
- dw vBGMap + $164
- db $2D, $2E
-
- db $02 ; number of tiles
- dw vBGMap + $185
- db $2F, $30
-
- db $00 ; terminator
-
-Data_160ab: ; 0x160ab
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $124
- db $31
-
- db $02 ; number of tiles
- dw vBGMap + $144
- db $32, $33
-
- db $02 ; number of tiles
- dw vBGMap + $164
- db $34, $35
-
- db $02 ; number of tiles
- dw vBGMap + $185
- db $36, $37
-
- db $00 ; terminator
-
-Data_160c2: ; 0x160c2
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $12F
- db $2A
-
- db $02 ; number of tiles
- dw vBGMap + $14E
- db $2C, $2B
-
- db $02 ; number of tiles
- dw vBGMap + $16E
- db $2E, $2D
-
- db $02 ; number of tiles
- dw vBGMap + $18D
- db $30, $2F
-
- db $00 ; terminator
-
-Data_160d9: ; 0x160d9
- dw LoadTileLists
- db $07 ; total number of tiles
-
- db $01 ; number of tiles
- dw vBGMap + $12F
- db $31
-
- db $02 ; number of tiles
- dw vBGMap + $14E
- db $33, $32
-
- db $02 ; number of tiles
- dw vBGMap + $16E
- db $35, $34
-
- db $02 ; number of tiles
- dw vBGMap + $18D
- db $37, $36
-
- db $00 ; terminator
+INCLUDE "data/queued_tiledata/red_field/bumpers.asm"
ResolveDittoSlotCollision: ; 0x160f0
ld a, [wDittoSlotCollision]
@@ -5189,7 +2836,7 @@ Func_16352: ; 0x16352 .asm_1636d
ld a, [wPreviousNumPokeballs]
cp $3
- jr nz, .asm_163b3 ; numballs!=3
+ jr nz, .asm_163b3
ld a, [wd607]
and a
jr nz, .asm_163b3
@@ -5249,7 +2896,7 @@ Func_16352: ; 0x16352 Func_163f2: ; 0x163f2
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5dc
+ ld hl, wScrollingText3
ld a, [wd497]
ld de, GoToDiglettStageText
cp STAGE_DIGLETT_BONUS
@@ -5259,7 +2906,7 @@ Func_163f2: ; 0x163f2 jr z, .asm_1640f
ld de, GoToMewtwoStageText
.asm_1640f
- call LoadTextHeader
+ call LoadScrollingText
ld de, $0000
call PlaySong
rst AdvanceFrame
@@ -5686,7 +3333,7 @@ Func_1669e: ; 0x1669e jr nc, .asm_166f0
ld c, $a
call Modulo_C
- callba z, IncrementBonusMultiplier
+ callba z, IncrementBonusMultiplierFromFieldEvent
.asm_166f0
lb de, $16, $10
call PlaySoundEffect
@@ -5818,8 +3465,8 @@ ResolveStaryuCollision: ; 0x16781 call PlaySoundEffect
ld a, [wStageCollisionState]
bit 0, a
- jp nz, Func_15450
- jp Func_15499
+ jp nz, LoadPinballUpgradeTriggersGraphics_RedField
+ jp LoadDisabledPinballUpgradeTriggerGraphics_RedField
Func_167ff: ; 0x167ff
ld a, [wStaryuCollision]
@@ -7070,14 +4717,14 @@ TileData_16d8f: ; 0x16d8f ResolveRedStageBonusMultiplierCollision: ; 016d9d
ld a, [wWhichBonusMultiplierRailing]
and a
- jp z, Func_16e51
+ jp z, UpdateBonusMultiplierRailing_RedField
xor a
ld [wWhichBonusMultiplierRailing], a
lb de, $00, $0d
call PlaySoundEffect
ld a, [wWhichBonusMultiplierRailingId]
sub $21
- jr nz, .asm_16ddc
+ jr nz, .hitRightRailing
ld a, $9
callba Func_10000
ld a, [wd610]
@@ -7087,12 +4734,12 @@ ResolveRedStageBonusMultiplierCollision: ; 016d9d ld [wd610], a
ld a, $3
ld [wd611], a
- ld a, [wd60c]
+ ld a, [wBonusMultiplierTensDigit]
set 7, a
- ld [wd60c], a
+ ld [wBonusMultiplierTensDigit], a
jr .asm_16e35
-.asm_16ddc
+.hitRightRailing
ld a, $a
callba Func_10000
ld a, [wd611]
@@ -7104,39 +4751,39 @@ ResolveRedStageBonusMultiplierCollision: ; 016d9d ld [wd611], a
ld a, $80
ld [wd612], a
- ld a, [wd60d]
+ ld a, [wBonusMultiplierOnesDigit]
set 7, a
- ld [wd60d], a
- ld a, [wd482]
+ ld [wBonusMultiplierOnesDigit], a
+ ld a, [wCurBonusMultiplier]
inc a
- cp 100
+ cp MAX_BONUS_MULTIPLIER + 1
jr c, .asm_16e10
- ld a, 99
+ ld a, MAX_BONUS_MULTIPLIER
.asm_16e10
- ld [wd482], a
+ ld [wCurBonusMultiplier], a
jr nc, .asm_16e24
ld c, $19
call Modulo_C
- callba z, IncrementBonusMultiplier
+ callba z, IncrementBonusMultiplierFromFieldEvent
.asm_16e24
- ld a, [wd60c]
+ ld a, [wBonusMultiplierTensDigit]
ld [wd614], a
- ld a, [wd60d]
+ ld a, [wBonusMultiplierOnesDigit]
ld [wd615], a
ld a, $1
ld [wd613], a
.asm_16e35
ld bc, TenPoints
callba AddBigBCD6FromQueueWithBallMultiplier
- ld a, [wd60c]
- call Func_16f28
- ld a, [wd60d]
+ ld a, [wBonusMultiplierTensDigit]
+ call LoadBonusMultiplierRailingGraphics_RedField
+ ld a, [wBonusMultiplierOnesDigit]
add $14
- call Func_16f28
+ call LoadBonusMultiplierRailingGraphics_RedField
ret
-Func_16e51: ; 0x16e51
- call Func_16ef5
+UpdateBonusMultiplierRailing_RedField: ; 0x16e51
+ call ShowBonusMultiplierMessage_RedField ; only shows the scrolling message when appropriate
ld a, [wd612]
and a
jr z, .asm_16e8f
@@ -7157,13 +4804,13 @@ Func_16e51: ; 0x16e51 ld [wd610], a
xor a
ld [wd611], a
- ld a, [wd482]
- call Func_16f95
- ld a, [wd60c]
- call Func_16f28
- ld a, [wd60d]
+ ld a, [wCurBonusMultiplier]
+ call GetBCDForNextBonusMultiplier_RedField
+ ld a, [wBonusMultiplierTensDigit]
+ call LoadBonusMultiplierRailingGraphics_RedField
+ ld a, [wBonusMultiplierOnesDigit]
add $14
- call Func_16f28
+ call LoadBonusMultiplierRailingGraphics_RedField
ret
.asm_16e8f
@@ -7181,17 +4828,17 @@ Func_16e51: ; 0x16e51 jr nz, .asm_16ec1
bit 3, b
jr nz, .asm_16eb6
- ld a, [wd60c]
+ ld a, [wBonusMultiplierTensDigit]
res 7, a
- ld [wd60c], a
- call Func_16f28
+ ld [wBonusMultiplierTensDigit], a
+ call LoadBonusMultiplierRailingGraphics_RedField
jr .asm_16ec1
.asm_16eb6
- ld a, [wd60c]
+ ld a, [wBonusMultiplierTensDigit]
set 7, a
- ld [wd60c], a
- call Func_16f28
+ ld [wBonusMultiplierTensDigit], a
+ call LoadBonusMultiplierRailingGraphics_RedField
.asm_16ec1
ld a, [wd611]
cp $2
@@ -7207,22 +4854,22 @@ Func_16e51: ; 0x16e51 ret nz
bit 3, b
jr nz, .asm_16ee7
- ld a, [wd60d]
+ ld a, [wBonusMultiplierOnesDigit]
res 7, a
- ld [wd60d], a
+ ld [wBonusMultiplierOnesDigit], a
add $14
- call Func_16f28
+ call LoadBonusMultiplierRailingGraphics_RedField
ret
.asm_16ee7
- ld a, [wd60d]
+ ld a, [wBonusMultiplierOnesDigit]
set 7, a
- ld [wd60d], a
+ ld [wBonusMultiplierOnesDigit], a
add $14
- call Func_16f28
+ call LoadBonusMultiplierRailingGraphics_RedField
ret
-Func_16ef5: ; 0x16ef5
+ShowBonusMultiplierMessage_RedField: ; 0x16ef5
ld a, [wd5ca]
and a
ret nz
@@ -7233,9 +4880,9 @@ Func_16ef5: ; 0x16ef5 ld [wd613], a
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5cc
+ ld hl, wScrollingText1
ld de, BonusMultiplierText
- call LoadTextHeader
+ call LoadScrollingText
ld hl, wBottomMessageText + $12
ld a, [wd614]
and $7f
@@ -7249,21 +4896,21 @@ Func_16ef5: ; 0x16ef5 ld [hl], a
ret
-Func_16f28: ; 0x16f28
+LoadBonusMultiplierRailingGraphics_RedField: ; 0x16f28
push af
ld a, [hGameBoyColorFlag]
and a
- jr nz, .asm_16f33
+ jr nz, .gameboyColor
pop af
- call Func_16f38
+ call LoadBonusMultiplierRailingGraphics_RedField_Gameboy
ret
-.asm_16f33
+.gameboyColor
pop af
- call Func_16f7b
+ call LoadBonusMultiplierRailingGraphics_RedField_GameboyColor
ret
-Func_16f38: ; 0x16f38
+LoadBonusMultiplierRailingGraphics_RedField_Gameboy: ; 0x16f38
push af
res 7, a
ld hl, wd60e
@@ -7278,12 +4925,12 @@ Func_16f38: ; 0x16f38 ld c, a
ld b, $0
sla c
- ld hl, TileDataPointers_16fc8
+ ld hl, BonusMultiplierRailingTileDataPointers_16fc8
add hl, bc
ld a, [hli]
ld h, [hl]
ld l, a
- ld a, Bank(TileDataPointers_16fc8)
+ ld a, Bank(BonusMultiplierRailingTileDataPointers_16fc8)
call Func_10aa
.asm_16f5c
pop af
@@ -7297,16 +4944,16 @@ Func_16f38: ; 0x16f38 jr c, .asm_16f6e
set 2, c
.asm_16f6e
- ld hl, Data_171e4
+ ld hl, BonusMultiplierRailingTileData_171e4
add hl, bc
ld a, [hli]
ld h, [hl]
ld l, a
- ld a, Bank(Data_171e4)
+ ld a, Bank(BonusMultiplierRailingTileData_171e4)
call Func_10aa
ret
-Func_16f7b: ; 0x16f7b
+LoadBonusMultiplierRailingGraphics_RedField_GameboyColor: ; 0x16f7b
bit 7, a
jr z, .asm_16f83
res 7, a
@@ -7315,21 +4962,24 @@ Func_16f7b: ; 0x16f7b ld c, a
ld b, $0
sla c
- ld hl, TileDataPointers_17228
+ ld hl, BonusMultiplierRailingTileDataPointers_17228
add hl, bc
ld a, [hli]
ld h, [hl]
ld l, a
- ld a, Bank(TileDataPointers_17228)
+ ld a, Bank(BonusMultiplierRailingTileDataPointers_17228)
call Func_10aa
ret
-Func_16f95: ; 0x16f95
- ld a, [wd482]
+GetBCDForNextBonusMultiplier_RedField: ; 0x16f95
+; Gets the BCD representation of the next bonus multplier value.
+; Output: [wBonusMultiplierTensDigit] = the tens digit
+; [wBonusMultiplierOnesDigit] = the ones digit
+ ld a, [wCurBonusMultiplier]
inc a
- cp 100
+ cp MAX_BONUS_MULTIPLIER + 1
jr c, .asm_16f9f
- ld a, 99
+ ld a, MAX_BONUS_MULTIPLIER
.asm_16f9f
ld b, a
xor a
@@ -7348,10 +4998,10 @@ Func_16f95: ; 0x16f95 push af
swap a
and $f
- ld [wd60c], a
+ ld [wBonusMultiplierTensDigit], a
pop af
and $f
- ld [wd60d], a
+ ld [wBonusMultiplierOnesDigit], a
ret
Data_16fc1:
@@ -7364,1287 +5014,7 @@ Data_16fc1: db $32
db $64
-TileDataPointers_16fc8:
- dw TileData_16ff0
- dw TileData_16ff5
- dw TileData_16ffa
- dw TileData_16fff
- dw TileData_17004
- dw TileData_17009
- dw TileData_1700e
- dw TileData_17013
- dw TileData_17018
- dw TileData_1701d
- dw TileData_17022
- dw TileData_17027
- dw TileData_1702c
- dw TileData_17031
- dw TileData_17036
- dw TileData_1703b
- dw TileData_17040
- dw TileData_17045
- dw TileData_1704a
- dw TileData_1704f
-
-TileData_16ff0: ; 0x16ff0
- db $02
- dw TileData_17054
- dw TileData_1705e
-
-TileData_16ff5: ; 0x16ff5
- db $02
- dw TileData_17068
- dw TileData_17072
-
-TileData_16ffa: ; 0x16ffa
- db $02
- dw TileData_1707c
- dw TileData_17086
-
-TileData_16fff: ; 0x16fff
- db $02
- dw TileData_17090
- dw TileData_1709a
-
-TileData_17004: ; 0x17004
- db $02
- dw TileData_170a4
- dw TileData_170ae
-
-TileData_17009: ; 0x17009
- db $02
- dw TileData_170b8
- dw TileData_170c2
-
-TileData_1700e: ; 0x1700e
- db $02
- dw TileData_170cc
- dw TileData_170d6
-
-TileData_17013: ; 0x17013
- db $02
- dw TileData_170e0
- dw TileData_170ea
-
-TileData_17018: ; 0x17018
- db $02
- dw TileData_170f4
- dw TileData_170fe
-
-TileData_1701d: ; 0x1701d
- db $02
- dw TileData_17108
- dw TileData_17112
-
-TileData_17022: ; 0x17022
- db $02
- dw TileData_1711c
- dw TileData_17126
-
-TileData_17027: ; 0x17027
- db $02
- dw TileData_17130
- dw TileData_1713a
-
-TileData_1702c: ; 0x1702c
- db $02
- dw TileData_17144
- dw TileData_1714e
-
-TileData_17031: ; 0x17031
- db $02
- dw TileData_17158
- dw TileData_17162
-
-TileData_17036: ; 0x17036
- db $02
- dw TileData_1716c
- dw TileData_17176
-
-TileData_1703b: ; 0x1703b
- db $02
- dw TileData_17180
- dw TileData_1718a
-
-TileData_17040: ; 0x17040
- db $02
- dw TileData_17194
- dw TileData_1719e
-
-TileData_17045: ; 0x17045
- db $02
- dw TileData_171a8
- dw TileData_171b2
-
-TileData_1704a: ; 0x1704a
- db $02
- dw TileData_171bc
- dw TileData_171c6
-
-TileData_1704f: ; 0x1704f
- db $02
- dw TileData_171d0
- dw TileData_171da
-
-TileData_17054: ; 0x17054
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $46
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1280
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1705e: ; 0x1705e
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $48
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1140
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_17068: ; 0x17068
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $46
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $12A0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_17072: ; 0x17072
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $48
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1160
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1707c: ; 0x1707c
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $46
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $12C0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_17086: ; 0x17086
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $48
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1180
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_17090: ; 0x17090
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $46
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $12E0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1709a: ; 0x1709a
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $48
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $11A0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_170a4: ; 0x170a4
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $46
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1300
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_170ae: ; 0x170ae
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $48
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $11C0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_170b8: ; 0x170b8
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $46
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1320
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_170c2: ; 0x170c2
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $48
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $11E0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_170cc: ; 0x170cc
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $46
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1340
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_170d6: ; 0x170d6
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $48
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1200
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_170e0: ; 0x170e0
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $46
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1360
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_170ea: ; 0x170ea
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $48
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1220
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_170f4: ; 0x170f4
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $46
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1380
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_170fe: ; 0x170fe
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $48
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1240
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_17108: ; 0x17108
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $46
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $13A0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_17112: ; 0x17112
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $48
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1260
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1711c: ; 0x1711c
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4a
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1500
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_17126: ; 0x17126
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4c
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $13C0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_17130: ; 0x17130
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4a
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1520
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1713a: ; 0x1713a
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4c
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $13E0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_17144: ; 0x17144
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4a
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1540
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1714e: ; 0x1714e
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4c
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1400
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_17158: ; 0x17158
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4a
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1560
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_17162: ; 0x17162
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4c
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1420
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1716c: ; 0x1716c
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4a
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1580
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_17176: ; 0x17176
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4c
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1440
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_17180: ; 0x17180
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4a
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $15A0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1718a: ; 0x1718a
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4c
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1460
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_17194: ; 0x17194
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4a
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $15C0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_1719e: ; 0x1719e
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4c
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1480
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_171a8: ; 0x171a8
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4a
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $15E0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_171b2: ; 0x171b2
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4c
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $14A0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_171bc: ; 0x171bc
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4a
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1600
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_171c6: ; 0x171c6
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4c
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $14C0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_171d0: ; 0x171d0
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4a
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $1620
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-TileData_171da: ; 0x171da
- dw Func_11d2
- db $20, $02
- dw vTilesSH tile $4c
- dw StageRedFieldBottomIndicatorsGfx_Gameboy + $14E0
- db Bank(StageRedFieldBottomIndicatorsGfx_Gameboy)
- db $00
-
-Data_171e4:
- dw Data_171ec
- dw Data_171ef
- dw Data_171f2
- dw Data_171f5
-
-Data_171ec: ; 0x171ec
- db $01
- dw Data_171f8
-
-Data_171ef: ; 0x171ef
- db $01
- dw Data_17204
-
-Data_171f2: ; 0x171f2
- db $01
- dw Data_17210
-
-Data_171f5: ; 0x171f5
- db $01
- dw Data_1721c
-
-Data_171f8: ; 0x171f8
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $C6
-
- db $01
- dw vBGMap + $24
- db $C7
-
- db $00
-
-Data_17204: ; 0x17204
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $C8
-
- db $01
- dw vBGMap + $24
- db $C9
-
- db $00
-
-Data_17210: ; 0x17210
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $CA
-
- db $01
- dw vBGMap + $2F
- db $CB
-
- db $00
-
-Data_1721c: ; 0x1721c
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $CC
-
- db $01
- dw vBGMap + $2F
- db $CD
-
- db $00
-
-TileDataPointers_17228:
- dw TileData_17278
- dw TileData_1727b
- dw TileData_1727e
- dw TileData_17281
- dw TileData_17284
- dw TileData_17287
- dw TileData_1728a
- dw TileData_1728d
- dw TileData_17290
- dw TileData_17293
- dw TileData_17296
- dw TileData_17299
- dw TileData_1729c
- dw TileData_1729f
- dw TileData_172a2
- dw TileData_172a5
- dw TileData_172a8
- dw TileData_172ab
- dw TileData_172ae
- dw TileData_172b1
- dw TileData_172b4
- dw TileData_172b7
- dw TileData_172ba
- dw TileData_172bd
- dw TileData_172c0
- dw TileData_172c3
- dw TileData_172c6
- dw TileData_172c9
- dw TileData_172cc
- dw TileData_172cf
- dw TileData_172d2
- dw TileData_172d5
- dw TileData_172d8
- dw TileData_172db
- dw TileData_172de
- dw TileData_172e1
- dw TileData_172e4
- dw TileData_172e7
- dw TileData_172ea
- dw TileData_172ed
-
-TileData_17278: ; 0x17278
- db $01
- dw TileData_172f0
-
-TileData_1727b: ; 0x1727b
- db $01
- dw TileData_172fc
-
-TileData_1727e: ; 0x1727e
- db $01
- dw TileData_17308
-
-TileData_17281: ; 0x17281
- db $01
- dw TileData_17314
-
-TileData_17284: ; 0x17284
- db $01
- dw TileData_17320
-
-TileData_17287: ; 0x17287
- db $01
- dw TileData_1732c
-
-TileData_1728a: ; 0x1728a
- db $01
- dw TileData_17338
-
-TileData_1728d: ; 0x1728d
- db $01
- dw TileData_17344
-
-TileData_17290: ; 0x17290
- db $01
- dw TileData_17350
-
-TileData_17293: ; 0x17293
- db $01
- dw TileData_1735c
-
-TileData_17296: ; 0x17296
- db $01
- dw TileData_17368
-
-TileData_17299: ; 0x17299
- db $01
- dw TileData_17374
-
-TileData_1729c: ; 0x1729c
- db $01
- dw TileData_17380
-
-TileData_1729f: ; 0x1729f
- db $01
- dw TileData_1738c
-
-TileData_172a2: ; 0x172a2
- db $01
- dw TileData_17398
-
-TileData_172a5: ; 0x172a5
- db $01
- dw TileData_173a4
-
-TileData_172a8: ; 0x172a8
- db $01
- dw TileData_173b0
-
-TileData_172ab: ; 0x172ab
- db $01
- dw TileData_173bc
-
-TileData_172ae: ; 0x172ae
- db $01
- dw TileData_173c8
-
-TileData_172b1: ; 0x172b1
- db $01
- dw TileData_173d4
-
-TileData_172b4: ; 0x172b4
- db $01
- dw TileData_173e0
-
-TileData_172b7: ; 0x172b7
- db $01
- dw TileData_173ec
-
-TileData_172ba: ; 0x172ba
- db $01
- dw TileData_173f8
-
-TileData_172bd: ; 0x172bd
- db $01
- dw TileData_17404
-
-TileData_172c0: ; 0x172c0
- db $01
- dw TileData_17410
-
-TileData_172c3: ; 0x172c3
- db $01
- dw TileData_1741c
-
-TileData_172c6: ; 0x172c6
- db $01
- dw TileData_17428
-
-TileData_172c9: ; 0x172c9
- db $01
- dw TileData_17434
-
-TileData_172cc: ; 0x172cc
- db $01
- dw TileData_17440
-
-TileData_172cf: ; 0x172cf
- db $01
- dw TileData_1744c
-
-TileData_172d2: ; 0x172d2
- db $01
- dw TileData_17458
-
-TileData_172d5: ; 0x172d5
- db $01
- dw TileData_17464
-
-TileData_172d8: ; 0x172d8
- db $01
- dw TileData_17470
-
-TileData_172db: ; 0x172db
- db $01
- dw TileData_1747c
-
-TileData_172de: ; 0x172de
- db $01
- dw TileData_17488
-
-TileData_172e1: ; 0x172e1
- db $01
- dw TileData_17494
-
-TileData_172e4: ; 0x172e4
- db $01
- dw TileData_174a0
-
-TileData_172e7: ; 0x172e7
- db $01
- dw TileData_174ac
-
-TileData_172ea: ; 0x172ea
- db $01
- dw TileData_174b8
-
-TileData_172ed: ; 0x172ed
- db $01
- dw TileData_174c4
-
-TileData_172f0: ; 0x172f0
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $40
-
- db $01
- dw vBGMap + $24
- db $41
-
- db $00
-
-TileData_172fc: ; 0x172fc
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $42
-
- db $01
- dw vBGMap + $24
- db $43
-
- db $00
-
-TileData_17308: ; 0x17308
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $44
-
- db $01
- dw vBGMap + $24
- db $45
-
- db $00
-
-TileData_17314: ; 0x17314
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $46
-
- db $01
- dw vBGMap + $24
- db $47
-
- db $00
-
-TileData_17320: ; 0x17320
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $48
-
- db $01
- dw vBGMap + $24
- db $49
-
- db $00
-
-TileData_1732c: ; 0x1732c
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $4A
-
- db $01
- dw vBGMap + $24
- db $4B
-
- db $00
-
-TileData_17338: ; 0x17338
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $4C
-
- db $01
- dw vBGMap + $24
- db $4D
-
- db $00
-
-TileData_17344: ; 0x17344
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $4E
-
- db $01
- dw vBGMap + $24
- db $4F
-
- db $00
-
-TileData_17350: ; 0x17350
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $50
-
- db $01
- dw vBGMap + $24
- db $51
-
- db $00
-
-TileData_1735c: ; 0x1735c
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $52
-
- db $01
- dw vBGMap + $24
- db $53
-
- db $00
-
-TileData_17368: ; 0x17368
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $2C
-
- db $01
- dw vBGMap + $24
- db $2D
-
- db $00
-
-TileData_17374: ; 0x17374
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $2E
-
- db $01
- dw vBGMap + $24
- db $2F
-
- db $00
-
-TileData_17380: ; 0x17380
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $30
-
- db $01
- dw vBGMap + $24
- db $31
-
- db $00
-
-TileData_1738c: ; 0x1738c
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $32
-
- db $01
- dw vBGMap + $24
- db $33
-
- db $00
-
-TileData_17398: ; 0x17398
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $34
-
- db $01
- dw vBGMap + $24
- db $35
-
- db $00
-
-TileData_173a4: ; 0x173a4
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $36
-
- db $01
- dw vBGMap + $24
- db $37
-
- db $00
-
-TileData_173b0: ; 0x173b0
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $38
-
- db $01
- dw vBGMap + $24
- db $39
-
- db $00
-
-TileData_173bc: ; 0x173bc
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $3A
-
- db $01
- dw vBGMap + $24
- db $3B
-
- db $00
-
-TileData_173c8: ; 0x173c8
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $3C
-
- db $01
- dw vBGMap + $24
- db $3D
-
- db $00
-
-TileData_173d4: ; 0x173d4
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $4
- db $3E
-
- db $01
- dw vBGMap + $24
- db $3F
-
- db $00
-
-TileData_173e0: ; 0x173e0
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $68
-
- db $01
- dw vBGMap + $2F
- db $69
-
- db $00
-
-TileData_173ec: ; 0x173ec
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $6A
-
- db $01
- dw vBGMap + $2F
- db $6B
-
- db $00
-
-TileData_173f8: ; 0x173f8
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $6C
-
- db $01
- dw vBGMap + $2F
- db $6D
-
- db $00
-
-TileData_17404: ; 0x17404
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $6E
-
- db $01
- dw vBGMap + $2F
- db $6F
-
- db $00
-
-TileData_17410: ; 0x17410
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $70
-
- db $01
- dw vBGMap + $2F
- db $71
-
- db $00
-
-TileData_1741c: ; 0x1741c
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $72
-
- db $01
- dw vBGMap + $2F
- db $73
-
- db $00
-
-TileData_17428: ; 0x17428
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $74
-
- db $01
- dw vBGMap + $2F
- db $75
-
- db $00
-
-TileData_17434: ; 0x17434
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $76
-
- db $01
- dw vBGMap + $2F
- db $77
-
- db $00
-
-TileData_17440: ; 0x17440
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $78
-
- db $01
- dw vBGMap + $2F
- db $79
-
- db $00
-
-TileData_1744c: ; 0x1744c
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $7A
-
- db $01
- dw vBGMap + $2F
- db $7B
-
- db $00
-
-TileData_17458: ; 0x17458
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $54
-
- db $01
- dw vBGMap + $2F
- db $55
-
- db $00
-
-TileData_17464: ; 0x17464
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $56
-
- db $01
- dw vBGMap + $2F
- db $57
-
- db $00
-
-TileData_17470: ; 0x17470
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $58
-
- db $01
- dw vBGMap + $2F
- db $59
-
- db $00
-
-TileData_1747c: ; 0x1747c
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $5A
-
- db $01
- dw vBGMap + $2F
- db $5B
-
- db $00
-
-TileData_17488: ; 0x17488
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $5C
-
- db $01
- dw vBGMap + $2F
- db $5D
-
- db $00
-
-TileData_17494: ; 0x17494
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $5E
-
- db $01
- dw vBGMap + $2F
- db $5F
-
- db $00
-
-TileData_174a0: ; 0x174a0
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $60
-
- db $01
- dw vBGMap + $2F
- db $61
-
- db $00
-
-TileData_174ac: ; 0x174ac
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $62
-
- db $01
- dw vBGMap + $2F
- db $63
-
- db $00
-
-TileData_174b8: ; 0x174b8
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $64
-
- db $01
- dw vBGMap + $2F
- db $65
-
- db $00
-
-TileData_174c4: ; 0x174c4
- dw LoadTileLists
- db $02
-
- db $01
- dw vBGMap + $F
- db $66
-
- db $01
- dw vBGMap + $2F
- db $67
-
- db $00
+INCLUDE "data/queued_tiledata/red_field/bonus_multiplier_railings.asm"
Func_174d0: ; 0x174d0
call Func_174ea
diff --git a/engine/pinball_game/object_collision/seel_bonus_object_collision.asm b/engine/pinball_game/object_collision/seel_bonus_object_collision.asm index e702dd2..e702dd2 100755..100644 --- a/engine/pinball_game/object_collision/seel_bonus_object_collision.asm +++ b/engine/pinball_game/object_collision/seel_bonus_object_collision.asm diff --git a/engine/pinball_game/object_collision/seel_bonus_resolve_collision.asm b/engine/pinball_game/object_collision/seel_bonus_resolve_collision.asm index 81861a4..8d68591 100755..100644 --- a/engine/pinball_game/object_collision/seel_bonus_resolve_collision.asm +++ b/engine/pinball_game/object_collision/seel_bonus_resolve_collision.asm @@ -15,9 +15,9 @@ ResolveSeelBonusGameObjectCollisions: ; 0x25c5a ld [wCompletedBonusStage], a
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5dc
+ ld hl, wScrollingText3
ld de, SeelStageClearedText
- call LoadTextHeader
+ call LoadScrollingText
ld a, $2
ld [wd794], a
lb de, $4b, $2a
diff --git a/engine/pinball_game/save_game.asm b/engine/pinball_game/save_game.asm index 1d2f539..1d2f539 100755..100644 --- a/engine/pinball_game/save_game.asm +++ b/engine/pinball_game/save_game.asm diff --git a/engine/pinball_game/score.asm b/engine/pinball_game/score.asm index 4134833..4cd4695 100755..100644 --- a/engine/pinball_game/score.asm +++ b/engine/pinball_game/score.asm @@ -214,10 +214,10 @@ Func_8645: ; 0x8645 call Func_8524
ret
-Func_8650: ; 0x8650
+HideScoreIfBallLow: ; 0x8650
ld a, [wCurrentStage]
bit 0, a
- jr nz, .bottomStage
+ jr nz, .bottomStage ;if on upper stage, score is up
ld a, $86
ld [hWY], a
ret
@@ -225,22 +225,22 @@ Func_8650: ; 0x8650 .bottomStage
ld a, [wBallYPos + 1]
cp $84
- jr nc, .asm_8670
+ jr nc, .BallLow ;if ballY pos less than or equal to 132, raise score, else lower score
ld a, [hWY]
sub $3
cp $86
- jr nc, .asm_866d
+ jr nc, .DontClampHigh ;if result is less than 132, clamp to 132, else just load it in
ld a, $86
-.asm_866d
+.DontClampHigh
ld [hWY], a
ret
-.asm_8670
+.BallLow
ld a, [hWY]
add $3
cp $90
- jr c, .asm_867a
+ jr c, .DontClampLow ;if result is more than 144, clamp to 144, else just load it in
ld a, $90
-.asm_867a
+.DontClampLow
ld [hWY], a
ret
diff --git a/engine/pinball_game/slot.asm b/engine/pinball_game/slot.asm index 2086c28..268e118 100755..100644 --- a/engine/pinball_game/slot.asm +++ b/engine/pinball_game/slot.asm @@ -264,7 +264,7 @@ SlotRewardPikachuSaver: ; 0xef83 ret
SlotRewardBonusMultiplier: ; 0xefa7
- callba IncrementBonusMultiplier
+ callba IncrementBonusMultiplierFromFieldEvent
ret
SlotRewardSmallPoints: ; 0xefb2
@@ -369,8 +369,8 @@ SlotRewardUpgradeBall: ; 0xf040 call FillBottomMessageBufferWithBlackTile
call Func_30db
ld de, FieldMultiplierText
- ld hl, wd5cc
- call LoadTextHeader
+ ld hl, wScrollingText1
+ call LoadScrollingText
; upgrade ball type
ld a, [wBallType]
ld c, a
@@ -394,16 +394,16 @@ SlotRewardUpgradeBall: ; 0xf040 push de
call FillBottomMessageBufferWithBlackTile
call Func_30db
- ld hl, wd5d4
+ ld hl, wScrollingText2
ld de, DigitsText1to8
call Func_32cc
pop de
pop bc
- ld hl, wd5cc
+ ld hl, wScrollingText1
ld de, FieldMultiplierSpecialBonusText
- call LoadTextHeader
+ call LoadScrollingText
.asm_f0b0
- callba Func_155bb
+ callba TransitionPinballUpgradePalette
ret
BallTypeProgressionBlueField: ; 0xf0bb
@@ -450,12 +450,12 @@ SlotBonusMultiplier: ; 0xf0c1 xor a
ld [wd611], a
ld [wd612], a
- ld a, [wd482]
+ ld a, [wCurBonusMultiplier]
call .DivideBy25
ld b, c
ld a, [wCurSlotBonus]
inc a
- ld hl, wd482
+ ld hl, wCurBonusMultiplier
add [hl]
cp 100
jr c, .asm_f113
@@ -465,11 +465,11 @@ SlotBonusMultiplier: ; 0xf0c1 call .DivideBy25
ld a, c
cp b
- callba nz, IncrementBonusMultiplier
- callba Func_16f95
- ld a, [wd60c]
+ callba nz, IncrementBonusMultiplierFromFieldEvent
+ callba GetBCDForNextBonusMultiplier_RedField
+ ld a, [wBonusMultiplierTensDigit]
callba Func_f154 ; no need for BankSwitch here...
- ld a, [wd60d]
+ ld a, [wBonusMultiplierOnesDigit]
add $14
callba Func_f154 ; no need for BankSwitch here...
ret
@@ -487,12 +487,12 @@ Func_f154: ; 0xf154 ld a, [wCurrentStage]
call CallInFollowingTable
CallTable_f15a: ; 0xf15a
- padded_dab Func_16f28
- padded_dab Func_16f28
- padded_dab Func_16f28
- padded_dab Func_16f28
- padded_dab Func_1d5f2
- padded_dab Func_1d5f2
+ padded_dab LoadBonusMultiplierRailingGraphics_RedField
+ padded_dab LoadBonusMultiplierRailingGraphics_RedField
+ padded_dab LoadBonusMultiplierRailingGraphics_RedField
+ padded_dab LoadBonusMultiplierRailingGraphics_RedField
+ padded_dab LoadBonusMultiplierRailingGraphics_BlueField
+ padded_dab LoadBonusMultiplierRailingGraphics_BlueField
SlotRewardGoToBonusStage: ; 0xf172
ld a, $1
diff --git a/engine/pinball_game/stage_collision_attributes.asm b/engine/pinball_game/stage_collision_attributes.asm index 80ff582..80ff582 100755..100644 --- a/engine/pinball_game/stage_collision_attributes.asm +++ b/engine/pinball_game/stage_collision_attributes.asm diff --git a/engine/pinball_game/stage_init/init_blue_field.asm b/engine/pinball_game/stage_init/init_blue_field.asm index 4b166b6..747d1af 100755..100644 --- a/engine/pinball_game/stage_init/init_blue_field.asm +++ b/engine/pinball_game/stage_init/init_blue_field.asm @@ -11,7 +11,7 @@ InitBlueField: ; 0x1c000 ld [hld], a
ld [hl], a
ld [wNumPartyMons], a
- ld [wCurBonusMultiplier], a
+ ld [wCurBonusMultiplierFromFieldEvents], a
ld [wd4c9], a
ld [wBallType], a
ld [wd4c8], a
@@ -24,7 +24,7 @@ InitBlueField: ; 0x1c000 ld [wCurrentMap], a ; PALLET_TOWN
ld a, $1
ld [wd49d], a
- ld [wd482], a
+ ld [wCurBonusMultiplier], a
ld a, $2
ld [wRightAlleyCount], a
ld a, $3
@@ -47,7 +47,7 @@ InitBlueField: ; 0x1c000 ld [wd645], a
ld [wd646], a
callba Start20SecondSaverTimer
- callba Func_1d65f
+ callba GetBCDForNextBonusMultiplier_BlueField
ld a, $10
call SetSongBank
ld de, $0001
diff --git a/engine/pinball_game/stage_init/init_diglett_bonus.asm b/engine/pinball_game/stage_init/init_diglett_bonus.asm index a04b201..a04b201 100755..100644 --- a/engine/pinball_game/stage_init/init_diglett_bonus.asm +++ b/engine/pinball_game/stage_init/init_diglett_bonus.asm diff --git a/engine/pinball_game/stage_init/init_gengar_bonus.asm b/engine/pinball_game/stage_init/init_gengar_bonus.asm index 357de1c..357de1c 100755..100644 --- a/engine/pinball_game/stage_init/init_gengar_bonus.asm +++ b/engine/pinball_game/stage_init/init_gengar_bonus.asm diff --git a/engine/pinball_game/stage_init/init_meowth_bonus.asm b/engine/pinball_game/stage_init/init_meowth_bonus.asm index 178c90c..178c90c 100755..100644 --- a/engine/pinball_game/stage_init/init_meowth_bonus.asm +++ b/engine/pinball_game/stage_init/init_meowth_bonus.asm diff --git a/engine/pinball_game/stage_init/init_mewtwo_bonus.asm b/engine/pinball_game/stage_init/init_mewtwo_bonus.asm index 26410e3..26410e3 100755..100644 --- a/engine/pinball_game/stage_init/init_mewtwo_bonus.asm +++ b/engine/pinball_game/stage_init/init_mewtwo_bonus.asm diff --git a/engine/pinball_game/stage_init/init_red_field.asm b/engine/pinball_game/stage_init/init_red_field.asm index b691d69..ba8d1f8 100755..100644 --- a/engine/pinball_game/stage_init/init_red_field.asm +++ b/engine/pinball_game/stage_init/init_red_field.asm @@ -11,7 +11,7 @@ InitRedField: ; 0x30000 ld [hld], a
ld [hl], a
ld [wNumPartyMons], a
- ld [wCurBonusMultiplier], a
+ ld [wCurBonusMultiplierFromFieldEvents], a
ld [wd4c9], a
ld [wBallType], a
ld [wd4c8], a
@@ -24,7 +24,7 @@ InitRedField: ; 0x30000 ld [wCurrentMap], a ; PALLET_TOWN
ld a, $1
ld [wd49d], a
- ld [wd482], a
+ ld [wCurBonusMultiplier], a
ld a, $2
ld [wRightAlleyCount], a
ld a, $3
@@ -41,7 +41,7 @@ InitRedField: ; 0x30000 ld a, $82
ld [wIndicatorStates + 1], a
callba Start20SecondSaverTimer
- callba Func_16f95
+ callba GetBCDForNextBonusMultiplier_RedField
ld a, $f
call SetSongBank
ld de, $0001
diff --git a/engine/pinball_game/stage_init/init_seel_bonus.asm b/engine/pinball_game/stage_init/init_seel_bonus.asm index ee51417..ee51417 100755..100644 --- a/engine/pinball_game/stage_init/init_seel_bonus.asm +++ b/engine/pinball_game/stage_init/init_seel_bonus.asm diff --git a/engine/pinball_game/stage_init/init_stages.asm b/engine/pinball_game/stage_init/init_stages.asm index 1d4ba78..1d4ba78 100755..100644 --- a/engine/pinball_game/stage_init/init_stages.asm +++ b/engine/pinball_game/stage_init/init_stages.asm diff --git a/engine/pinball_game/stage_init/init_unused_stage.asm b/engine/pinball_game/stage_init/init_unused_stage.asm index ee02abc..4e48eae 100755..100644 --- a/engine/pinball_game/stage_init/init_unused_stage.asm +++ b/engine/pinball_game/stage_init/init_unused_stage.asm @@ -22,7 +22,7 @@ Func_18000: ; 0x18000 ld [hld], a
ld [hl], a
ld [wNumPartyMons], a
- ld [wCurBonusMultiplier], a
+ ld [wCurBonusMultiplierFromFieldEvents], a
ld [wd4c9], a
ld a, $1
ld [wd49d], a
diff --git a/engine/pinball_game/timer.asm b/engine/pinball_game/timer.asm index 49afcee..49afcee 100755..100644 --- a/engine/pinball_game/timer.asm +++ b/engine/pinball_game/timer.asm diff --git a/engine/pinball_game/vertical_screen_transition.asm b/engine/pinball_game/vertical_screen_transition.asm index 94290f2..94290f2 100755..100644 --- a/engine/pinball_game/vertical_screen_transition.asm +++ b/engine/pinball_game/vertical_screen_transition.asm diff --git a/engine/pokedex.asm b/engine/pokedex.asm index 8251d03..8251d03 100755..100644 --- a/engine/pokedex.asm +++ b/engine/pokedex.asm diff --git a/engine/pokedex/variable_width_font_character.asm b/engine/pokedex/variable_width_font_character.asm index 9dba2d8..9dba2d8 100755..100644 --- a/engine/pokedex/variable_width_font_character.asm +++ b/engine/pokedex/variable_width_font_character.asm diff --git a/engine/select_gameboy_target_menu.asm b/engine/select_gameboy_target_menu.asm index 3f18b60..3f18b60 100755..100644 --- a/engine/select_gameboy_target_menu.asm +++ b/engine/select_gameboy_target_menu.asm diff --git a/engine/titlescreen.asm b/engine/titlescreen.asm index 057e937..057e937 100755..100644 --- a/engine/titlescreen.asm +++ b/engine/titlescreen.asm |