From 4b59cbae1d0f6e4058e40e82b1e1bd986489007b Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Sat, 9 Sep 2017 12:01:24 -0700 Subject: More various labeling of wram --- engine/copyright_screen.asm | 2 +- engine/field_select_screen.asm | 6 +-- engine/pinball_game.asm | 4 +- engine/pinball_game/ball_init/ball_init.asm | 52 ++++++++-------------- .../ball_init/ball_init_blue_field.asm | 10 ++--- .../ball_init/ball_init_gengar_bonus.asm | 4 +- .../ball_init/ball_init_meowth_bonus.asm | 4 +- .../ball_init/ball_init_mewtwo_bonus.asm | 4 +- .../pinball_game/ball_init/ball_init_red_field.asm | 10 ++--- .../ball_init/ball_init_seel_bonus.asm | 4 +- .../ball_loss/ball_loss_blue_field.asm | 2 +- .../pinball_game/ball_loss/ball_loss_red_field.asm | 2 +- .../load_stage_data/load_diglett_bonus.asm | 2 +- .../load_stage_data/load_gengar_bonus.asm | 2 +- .../load_stage_data/load_mewtwo_bonus.asm | 2 +- engine/pinball_game/menu.asm | 2 +- .../blue_stage_resolve_collision.asm | 26 +++++------ .../red_stage_resolve_collision.asm | 22 ++++----- engine/pinball_game/stage_init/init_blue_field.asm | 4 +- .../pinball_game/stage_init/init_diglett_bonus.asm | 2 +- .../pinball_game/stage_init/init_gengar_bonus.asm | 2 +- .../pinball_game/stage_init/init_meowth_bonus.asm | 2 +- .../pinball_game/stage_init/init_mewtwo_bonus.asm | 2 +- engine/pinball_game/stage_init/init_red_field.asm | 4 +- engine/pinball_game/stage_init/init_seel_bonus.asm | 2 +- engine/pinball_game/stage_init/init_stages.asm | 2 +- .../pinball_game/stage_init/init_unused_stage.asm | 2 +- engine/titlescreen.asm | 16 +++---- wram.asm | 23 ++++++---- 29 files changed, 106 insertions(+), 115 deletions(-) diff --git a/engine/copyright_screen.asm b/engine/copyright_screen.asm index f3d6a44..1fc1bba 100644 --- a/engine/copyright_screen.asm +++ b/engine/copyright_screen.asm @@ -96,7 +96,7 @@ FadeOutCopyrightScreenAndLoadData: ; 0x82a8 call LoadSavedData jr c, .asm_8308 xor a - ld [wd7c2], a ; if this is non-zero, the main menu will prompt for "continue or new game?". + ld [wSavedGame], a .asm_8308 ld hl, wCurrentScreen inc [hl] diff --git a/engine/field_select_screen.asm b/engine/field_select_screen.asm index 0941547..f500d01 100644 --- a/engine/field_select_screen.asm +++ b/engine/field_select_screen.asm @@ -95,14 +95,14 @@ ExitFieldSelectScreen: ; 0xd774 ld [wCurrentStage], a pop af xor a - ld [wd7c2], a + ld [wSavedGame], a ld hl, wPartyMons ld de, sSaveGame ld bc, $04c3 call SaveData xor a - ld [wd7c1], a - ; Start a round of Pinball! Yayy + ld [wLoadingSavedGame], a + ; Start a game of Pinball ld a, SCREEN_PINBALL_GAME ld [wCurrentScreen], a xor a diff --git a/engine/pinball_game.asm b/engine/pinball_game.asm index 5ede0d6..292d5f4 100644 --- a/engine/pinball_game.asm +++ b/engine/pinball_game.asm @@ -58,7 +58,7 @@ GameScreenFunction_StartBall: ; 0xd87f ld a, $1 ld [wDrawBottomMessageBox], a xor a - ld [wd7c1], a + ld [wLoadingSavedGame], a call SetAllPalettesWhite call EnableLCD call FadeIn @@ -191,7 +191,7 @@ GameScreenFunction_HandleBallLoss: ; 0xda36 ld a, [wBottomTextEnabled] and a ret nz - ld a, [wd4c9] + ld a, [wLostBall] and a jr z, .asm_daa9 ld a, [wd49c] diff --git a/engine/pinball_game/ball_init/ball_init.asm b/engine/pinball_game/ball_init/ball_init.asm index 3d894da..e545c00 100644 --- a/engine/pinball_game/ball_init/ball_init.asm +++ b/engine/pinball_game/ball_init/ball_init.asm @@ -1,12 +1,12 @@ InitBallForStage: ; 0x83ba - ld a, [wd7c1] + ld a, [wLoadingSavedGame] and a - jr z, .asm_83c7 + jr z, .initBall call TryLoadWildMonCollisionMask call RestartStageMusic ret -.asm_83c7 +.initBall xor a ld [wBallXVelocity], a ld [wBallXVelocity + 1], a @@ -29,44 +29,30 @@ InitBallForStage: ; 0x83ba ld [wSCX], a ld a, [wCurrentStage] call CallInFollowingTable -CallTable_8404: ; 0x8404 - ; STAGE_RED_FIELD_TOP - padded_dab InitBallRedField - ; STAGE_RED_FIELD_BOTTOM - padded_dab InitBallRedField +InitBall_CallTable: ; 0x8404 + padded_dab InitBallRedField ; STAGE_RED_FIELD_TOP + padded_dab InitBallRedField ; STAGE_RED_FIELD_BOTTOM padded_dab Func_1804a padded_dab Func_1804a - ; STAGE_BLUE_FIELD_TOP - padded_dab InitBallBlueField - ; STAGE_BLUE_FIELD_BOTTOM - padded_dab InitBallBlueField - ; STAGE_GENGAR_BONUS - padded_dab InitBallGengarBonusStage - ; STAGE_GENGAR_BONUS - padded_dab InitBallGengarBonusStage - ; STAGE_MEWTWO_BONUS - padded_dab InitBallMewtwoBonusStage - ; STAGE_MEWTWO_BONUS - padded_dab InitBallMewtwoBonusStage - ; STAGE_MEOWTH_BONUS - padded_dab InitBallMeowthBonusStage - ; STAGE_MEOWTH_BONUS - padded_dab InitBallMeowthBonusStage - ; STAGE_DIGLETT_BONUS - padded_dab InitBallDiglettBonusStage - ; STAGE_DIGLETT_BONUS - padded_dab InitBallDiglettBonusStage - ; STAGE_SEEL_BONUS - padded_dab InitBallSeelBonusStage - ; STAGE_SEEL_BONUS - padded_dab InitBallSeelBonusStage + padded_dab InitBallBlueField ; STAGE_BLUE_FIELD_TOP + padded_dab InitBallBlueField ; STAGE_BLUE_FIELD_BOTTOM + padded_dab InitBallGengarBonusStage ; STAGE_GENGAR_BONUS + padded_dab InitBallGengarBonusStage ; STAGE_GENGAR_BONUS + padded_dab InitBallMewtwoBonusStage ; STAGE_MEWTWO_BONUS + padded_dab InitBallMewtwoBonusStage ; STAGE_MEWTWO_BONUS + padded_dab InitBallMeowthBonusStage ; STAGE_MEOWTH_BONUS + padded_dab InitBallMeowthBonusStage ; STAGE_MEOWTH_BONUS + padded_dab InitBallDiglettBonusStage ; STAGE_DIGLETT_BONUS + padded_dab InitBallDiglettBonusStage ; STAGE_DIGLETT_BONUS + padded_dab InitBallSeelBonusStage ; STAGE_SEEL_BONUS + padded_dab InitBallSeelBonusStage ; STAGE_SEEL_BONUS TryLoadWildMonCollisionMask: ; 0x8444 ld a, [wInSpecialMode] and a jr z, .done ld a, [wSpecialMode] - and a ; Is the current special mode "Catch 'Em" mode? + and a jr nz, .done ld a, [wWildMonIsHittable] and a 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 ec486c7..532746b 100644 --- a/engine/pinball_game/ball_init/ball_init_blue_field.asm +++ b/engine/pinball_game/ball_init/ball_init_blue_field.asm @@ -14,14 +14,14 @@ InitBallBlueField: ; 0x1c08d ld [wEnableBallGravityAndTilt], a ld [wd580], a call InitBlueFieldCollisionAttributes - ld a, [wd4c9] + ld a, [wLostBall] and a ret z xor a - ld [wd4c9], a + ld [wLostBall], a xor a - ld [wd50b], a - ld [wd50c], a + ld [wSpinnerVelocity], a + ld [wSpinnerVelocity + 1], a ld [wPikachuSaverSlotRewardActive], a ld [wd51e], a ld [wPikachuSaverCharge], a @@ -50,7 +50,7 @@ InitBallBlueField: ; 0x1c08d ld [wNumPsyduckTriples], a ld [wNumSpinnerTurns], a ld [wNumPikachuSaves], a - ld [wd613], a + ld [wShowBonusMultiplierBottomMessage], a inc a ld [wCurBonusMultiplier], a ld [wLeftDiglettAnimationController], a 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..829533d 100644 --- a/engine/pinball_game/ball_init/ball_init_gengar_bonus.asm +++ b/engine/pinball_game/ball_init/ball_init_gengar_bonus.asm @@ -16,9 +16,9 @@ InitBallGengarBonusStage: ; 0x18157 ld a, $8 ld [wd690], a ld [wd6a1], a - ld a, [wd4c9] + ld a, [wLostBall] and a ret z xor a - ld [wd4c9], a + ld [wLostBall], a ret 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 48f8077..bf80683 100644 --- a/engine/pinball_game/ball_init/ball_init_meowth_bonus.asm +++ b/engine/pinball_game/ball_init/ball_init_meowth_bonus.asm @@ -77,9 +77,9 @@ InitBallMeowthBonusStage: ; 0x24059 ld [wd798], a ld [wd799], a ld [wd79a], a - ld a, [wd4c9] + ld a, [wLostBall] and a ret z xor a - ld [wd4c9], a + ld [wLostBall], a ret 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..f2439ca 100644 --- a/engine/pinball_game/ball_init/ball_init_mewtwo_bonus.asm +++ b/engine/pinball_game/ball_init/ball_init_mewtwo_bonus.asm @@ -13,9 +13,9 @@ InitBallMewtwoBonusStage: ; 0x192e3 ld [wSCX], a ld [wStageCollisionState], a ld [wd6a9], a - ld a, [wd4c9] + ld a, [wLostBall] and a ret z xor a - ld [wd4c9], a + ld [wLostBall], a ret 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 1f0d531..f266020 100644 --- a/engine/pinball_game/ball_init/ball_init_red_field.asm +++ b/engine/pinball_game/ball_init/ball_init_red_field.asm @@ -23,14 +23,14 @@ InitBallRedField: ; 0x3007d ld a, [wStageCollisionState] and $1 ld [wStageCollisionState], a - ld a, [wd4c9] + ld a, [wLostBall] and a ret z xor a - ld [wd4c9], a + ld [wLostBall], a xor a - ld [wd50b], a - ld [wd50c], a + ld [wSpinnerVelocity], a + ld [wSpinnerVelocity + 1], a ld [wPikachuSaverSlotRewardActive], a ld [wPikachuSaverCharge], a ld [wd51e], a @@ -55,7 +55,7 @@ InitBallRedField: ; 0x3007d ld [wNumCAVECompletions], a ld [wNumSpinnerTurns], a ld [wNumPikachuSaves], a - ld [wd613], a + ld [wShowBonusMultiplierBottomMessage], a inc a ld [wCurBonusMultiplier], a ld [wLeftDiglettAnimationController], a 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..548cd74 100644 --- a/engine/pinball_game/ball_init/ball_init_seel_bonus.asm +++ b/engine/pinball_game/ball_init/ball_init_seel_bonus.asm @@ -57,9 +57,9 @@ InitBallSeelBonusStage: ; 0x25af1 ld de, wd77f ld a, [wd780] call Func_26137 - ld a, [wd4c9] + ld a, [wLostBall] and a ret z xor a - ld [wd4c9], a + ld [wLostBall], a ret 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 d331a4e..40d8e15 100644 --- a/engine/pinball_game/ball_loss/ball_loss_blue_field.asm +++ b/engine/pinball_game/ball_loss/ball_loss_blue_field.asm @@ -30,7 +30,7 @@ HandleBallLossBlueField: ; 0xde4f call PlaySoundEffect call Start20SecondSaverTimer ld a, $1 - ld [wd4c9], a + ld [wLostBall], a xor a ld [wPinballLaunched], a ld [wd4df], a 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 1233f26..1b3f591 100644 --- a/engine/pinball_game/ball_loss/ball_loss_red_field.asm +++ b/engine/pinball_game/ball_loss/ball_loss_red_field.asm @@ -30,7 +30,7 @@ HandleBallLossRedField: ; 0xdd76 call PlaySoundEffect call Start20SecondSaverTimer ld a, $1 - ld [wd4c9], a + ld [wLostBall], a xor a ld [wPinballLaunched], a ld [wd4df], a 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 6fbb02b..712f2f6 100644 --- a/engine/pinball_game/load_stage_data/load_diglett_bonus.asm +++ b/engine/pinball_game/load_stage_data/load_diglett_bonus.asm @@ -1,7 +1,7 @@ _LoadStageDataDiglettBonus: ; 0x19a76 callba Func_142fc call LoadFlippersPalette - ld a, [wd7c1] + ld a, [wLoadingSavedGame] and a ret z call Func_19bbd 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 31a26a7..1582db3 100644 --- a/engine/pinball_game/load_stage_data/load_gengar_bonus.asm +++ b/engine/pinball_game/load_stage_data/load_gengar_bonus.asm @@ -2,7 +2,7 @@ _LoadStageDataGengarBonus: ; 0x1818b callba Func_142fc call LoadFlippersPalette call Func_18d72 - ld a, [wd7c1] + ld a, [wLoadingSavedGame] callba LoadTimerGraphics and a ret z 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 9c89fb6..a96ca52 100644 --- a/engine/pinball_game/load_stage_data/load_mewtwo_bonus.asm +++ b/engine/pinball_game/load_stage_data/load_mewtwo_bonus.asm @@ -2,7 +2,7 @@ _LoadStageDataMewtwoBonus: ; 0x19310 callba Func_142fc call LoadFlippersPalette callba LoadTimerGraphics - ld a, [wd7c1] + ld a, [wLoadingSavedGame] and a ret z call Func_194ac diff --git a/engine/pinball_game/menu.asm b/engine/pinball_game/menu.asm index dcca98c..639d1bb 100644 --- a/engine/pinball_game/menu.asm +++ b/engine/pinball_game/menu.asm @@ -44,7 +44,7 @@ HandleInGameMenu: ; 0x86d7 and a jr nz, .pickedCancel ld a, $1 - ld [wd7c2], a + ld [wSavedGame], a ld hl, wPartyMons ld de, sSaveGame ld bc, $04c3 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 e336fd4..2d5367c 100644 --- a/engine/pinball_game/object_collision/blue_stage_resolve_collision.asm +++ b/engine/pinball_game/object_collision/blue_stage_resolve_collision.asm @@ -394,24 +394,24 @@ ResolveBlueStageSpinnerCollision: ; 0x1ca5f ld a, [wBallYVelocity + 1] ld b, a ld a, c - ld [wd50b], a + ld [wSpinnerVelocity], a ld a, b - ld [wd50c], a + ld [wSpinnerVelocity + 1], a ld a, $c callba CheckSpecialModeColision ; fall through UpdateBlueStageSpinner: ; 0x1ca85 - ld hl, wd50b + ld hl, wSpinnerVelocity ld a, [hli] or [hl] ret z - ld a, [wd50b] + ld a, [wSpinnerVelocity] ld c, a - ld a, [wd50c] + ld a, [wSpinnerVelocity + 1] ld b, a bit 7, b - jr nz, .asm_1caa3 + jr nz, .upwardVelocity ld a, c sub $7 ld c, a @@ -421,7 +421,7 @@ UpdateBlueStageSpinner: ; 0x1ca85 jr nc, .asm_1cab0 jr .asm_1caad -.asm_1caa3 +.upwardVelocity ld a, c add $7 ld c, a @@ -433,10 +433,10 @@ UpdateBlueStageSpinner: ; 0x1ca85 ld bc, $0000 .asm_1cab0 ld a, c - ld [wd50b], a + ld [wSpinnerVelocity], a ld a, b - ld [wd50c], a - ld hl, wd50b + ld [wSpinnerVelocity + 1], a + ld hl, wSpinnerVelocity ld a, [wd509] add [hl] ld [wd509], a @@ -1233,7 +1233,7 @@ ResolveBonusMultiplierCollision_BlueField: ; 0x1d438 ld a, [wBonusMultiplierOnesDigit] ld [wd615], a ld a, $1 - ld [wd613], a + ld [wShowBonusMultiplierBottomMessage], a asm_1d4fa: ; 0x1d4fa ld bc, TenPoints callba AddBigBCD6FromQueueWithBallMultiplier @@ -1337,11 +1337,11 @@ ShowBonusMultiplierMessage_BlueField: ; 0x1d5bf ld a, [wBottomTextEnabled] and a ret nz - ld a, [wd613] + ld a, [wShowBonusMultiplierBottomMessage] and a ret z xor a - ld [wd613], a + ld [wShowBonusMultiplierBottomMessage], a call FillBottomMessageBufferWithBlackTile call EnableBottomText ld hl, wScrollingText1 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 93cc7a5..c20ac5e 100644 --- a/engine/pinball_game/object_collision/red_stage_resolve_collision.asm +++ b/engine/pinball_game/object_collision/red_stage_resolve_collision.asm @@ -609,21 +609,21 @@ ResolveRedStageSpinnerCollision: ; 0x14dea ld a, [wBallYVelocity + 1] ld b, a ld a, c - ld [wd50b], a + ld [wSpinnerVelocity], a ld a, b - ld [wd50c], a + ld [wSpinnerVelocity + 1], a ld a, $c callba CheckSpecialModeColision ; fall through UpdateRedStageSpinner: ; 0x14e10 - ld hl, wd50b + ld hl, wSpinnerVelocity ld a, [hli] or [hl] ret z - ld a, [wd50b] + ld a, [wSpinnerVelocity] ld c, a - ld a, [wd50c] + ld a, [wSpinnerVelocity + 1] ld b, a bit 7, b jr nz, .asm_14e2e @@ -648,10 +648,10 @@ UpdateRedStageSpinner: ; 0x14e10 ld bc, $0000 .asm_14e3b ld a, c - ld [wd50b], a + ld [wSpinnerVelocity], a ld a, b - ld [wd50c], a - ld hl, wd50b + ld [wSpinnerVelocity + 1], a + ld hl, wSpinnerVelocity ld a, [wd509] add [hl] ld [wd509], a @@ -2740,7 +2740,7 @@ ResolveRedStageBonusMultiplierCollision: ; 016d9d ld a, [wBonusMultiplierOnesDigit] ld [wd615], a ld a, $1 - ld [wd613], a + ld [wShowBonusMultiplierBottomMessage], a .asm_16e35 ld bc, TenPoints callba AddBigBCD6FromQueueWithBallMultiplier @@ -2842,11 +2842,11 @@ ShowBonusMultiplierMessage_RedField: ; 0x16ef5 ld a, [wBottomTextEnabled] and a ret nz - ld a, [wd613] + ld a, [wShowBonusMultiplierBottomMessage] and a ret z xor a - ld [wd613], a + ld [wShowBonusMultiplierBottomMessage], a call FillBottomMessageBufferWithBlackTile call EnableBottomText ld hl, wScrollingText1 diff --git a/engine/pinball_game/stage_init/init_blue_field.asm b/engine/pinball_game/stage_init/init_blue_field.asm index 24730dc..9605e4a 100644 --- a/engine/pinball_game/stage_init/init_blue_field.asm +++ b/engine/pinball_game/stage_init/init_blue_field.asm @@ -1,5 +1,5 @@ InitBlueField: ; 0x1c000 - ld a, [wd7c1] + ld a, [wLoadingSavedGame] and a ret nz xor a @@ -12,7 +12,7 @@ InitBlueField: ; 0x1c000 ld [hl], a ld [wNumPartyMons], a ld [wCurBonusMultiplierFromFieldEvents], a - ld [wd4c9], a + ld [wLostBall], a ld [wBallType], a ld [wd4c8], a ld hl, wPreviousNumPokeballs diff --git a/engine/pinball_game/stage_init/init_diglett_bonus.asm b/engine/pinball_game/stage_init/init_diglett_bonus.asm index 26af2ca..dc1e26a 100644 --- a/engine/pinball_game/stage_init/init_diglett_bonus.asm +++ b/engine/pinball_game/stage_init/init_diglett_bonus.asm @@ -1,5 +1,5 @@ InitDiglettBonusStage: ; 0x199f2 - ld a, [wd7c1] + ld a, [wLoadingSavedGame] and a ret nz xor a diff --git a/engine/pinball_game/stage_init/init_gengar_bonus.asm b/engine/pinball_game/stage_init/init_gengar_bonus.asm index 65e313c..9d59584 100644 --- a/engine/pinball_game/stage_init/init_gengar_bonus.asm +++ b/engine/pinball_game/stage_init/init_gengar_bonus.asm @@ -1,5 +1,5 @@ InitGengarBonusStage: ; 0x18099 - ld a, [wd7c1] + ld a, [wLoadingSavedGame] and a jr z, .asm_180ac xor a diff --git a/engine/pinball_game/stage_init/init_meowth_bonus.asm b/engine/pinball_game/stage_init/init_meowth_bonus.asm index 3e07fa6..cf4428a 100644 --- a/engine/pinball_game/stage_init/init_meowth_bonus.asm +++ b/engine/pinball_game/stage_init/init_meowth_bonus.asm @@ -1,5 +1,5 @@ InitMeowthBonusStage: ; 0x24000 - ld a, [wd7c1] + ld a, [wLoadingSavedGame] and a ret nz xor a diff --git a/engine/pinball_game/stage_init/init_mewtwo_bonus.asm b/engine/pinball_game/stage_init/init_mewtwo_bonus.asm index 1c26004..c17937d 100644 --- a/engine/pinball_game/stage_init/init_mewtwo_bonus.asm +++ b/engine/pinball_game/stage_init/init_mewtwo_bonus.asm @@ -1,5 +1,5 @@ InitMewtwoBonusStage: ; 0x1924f - ld a, [wd7c1] + ld a, [wLoadingSavedGame] and a ret nz xor a diff --git a/engine/pinball_game/stage_init/init_red_field.asm b/engine/pinball_game/stage_init/init_red_field.asm index fe98569..12494e1 100644 --- a/engine/pinball_game/stage_init/init_red_field.asm +++ b/engine/pinball_game/stage_init/init_red_field.asm @@ -1,5 +1,5 @@ InitRedField: ; 0x30000 - ld a, [wd7c1] + ld a, [wLoadingSavedGame] and a ret nz xor a @@ -12,7 +12,7 @@ InitRedField: ; 0x30000 ld [hl], a ld [wNumPartyMons], a ld [wCurBonusMultiplierFromFieldEvents], a - ld [wd4c9], a + ld [wLostBall], a ld [wBallType], a ld [wd4c8], a ld hl, wPreviousNumPokeballs diff --git a/engine/pinball_game/stage_init/init_seel_bonus.asm b/engine/pinball_game/stage_init/init_seel_bonus.asm index 2af90c9..92627a6 100644 --- a/engine/pinball_game/stage_init/init_seel_bonus.asm +++ b/engine/pinball_game/stage_init/init_seel_bonus.asm @@ -1,5 +1,5 @@ InitSeelBonusStage: ; 0x25a7c - ld a, [wd7c1] + ld a, [wLoadingSavedGame] and a ret nz xor a diff --git a/engine/pinball_game/stage_init/init_stages.asm b/engine/pinball_game/stage_init/init_stages.asm index 5b33538..c38c8b1 100644 --- a/engine/pinball_game/stage_init/init_stages.asm +++ b/engine/pinball_game/stage_init/init_stages.asm @@ -44,7 +44,7 @@ CallTable_8348: ; 0x8348 ResetDataForStageInitialization: ; 0x8388 ; Resets some game data, depending on which stage is being initialized. - ld a, [wd7c1] + ld a, [wLoadingSavedGame] and a jr z, .asm_8398 ld hl, wSubTileBallXPos diff --git a/engine/pinball_game/stage_init/init_unused_stage.asm b/engine/pinball_game/stage_init/init_unused_stage.asm index 4e48eae..1185c66 100644 --- a/engine/pinball_game/stage_init/init_unused_stage.asm +++ b/engine/pinball_game/stage_init/init_unused_stage.asm @@ -23,7 +23,7 @@ Func_18000: ; 0x18000 ld [hl], a ld [wNumPartyMons], a ld [wCurBonusMultiplierFromFieldEvents], a - ld [wd4c9], a + ld [wLostBall], a ld a, $1 ld [wd49d], a ld a, $3 diff --git a/engine/titlescreen.asm b/engine/titlescreen.asm index 01a1aac..6157eed 100644 --- a/engine/titlescreen.asm +++ b/engine/titlescreen.asm @@ -66,7 +66,7 @@ TitlescreenLoop: ; 0xc089 and a jr nz, .asm_c0d3 ; player chose "Game Start" - ld a, [wd7c2] ; if this is non-zero, the main menu will prompt for "continue or new game?". + ld a, [wSavedGame] ; if this is non-zero, the main menu will prompt for "continue or new game?". and a jr z, .noPreviouslySavedGame lb de, $00, $01 @@ -149,31 +149,31 @@ Func_c10e: ; 0xc10e jr z, .asm_c177 call FadeOut call DisableLCD - ld a, [wd7c2] + ld a, [wSavedGame] and a - jr z, .asm_c173 + jr z, .notLoadingSavedGame ld hl, sSaveGame ld de, wPartyMons ld bc, $04c3 call LoadSavedData - jr nc, .asm_c173 + jr nc, .notLoadingSavedGame xor a - ld [wd7c2], a + ld [wSavedGame], a ld hl, wPartyMons ld de, sSaveGame ld bc, $04c3 call SaveData ld a, $1 - ld [wd7c1], a + ld [wLoadingSavedGame], a ld a, SCREEN_PINBALL_GAME ld [wCurrentScreen], a ld a, $0 ld [wScreenState], a ret -.asm_c173 +.notLoadingSavedGame xor a - ld [wd7c1], a + ld [wLoadingSavedGame], a .asm_c177 ld hl, wScreenState inc [hl] diff --git a/wram.asm b/wram.asm index 8e56299..e487179 100644 --- a/wram.asm +++ b/wram.asm @@ -299,7 +299,8 @@ wd4c7:: ; 0xd4c7 wd4c8:: ; 0xd4c8 ds $1 -wd4c9:: ; 0xd4c9 +wLostBall:: ; 0xd4c9 +; Set to 1 when a ball was lost. (Lost a "life"). 0 otherwise. ds $1 wShowExtraBallText:: ; 0xd4ca @@ -486,11 +487,10 @@ wd509:: ; 0xd509 wd50a:: ; 0xd50a ds $1 -wd50b:: ; 0xd50b - ds $1 - -wd50c:: ; 0xd50c - ds $1 +wSpinnerVelocity:: ; 0xd50b +; When the ball intially passes through the spinner, the ball's y velocity is saved to this location. +; Then, the velocity saved here is decreased a little bit each frame, while it's adding to the current "spinner charge". + ds $2 wWhichCAVELight:: ; 0xd50d ds $1 @@ -915,7 +915,8 @@ wd611:: ; 0xd611 wd612:: ; 0xd612 ds $1 -wd613:: ; 0xd613 +wShowBonusMultiplierBottomMessage:: ; 0xd613 +; Set to 1 when the bonus multiplier message should appear on the bottom of the screen. 0 otherwise. ds $1 wd614:: ; 0xd614 @@ -1798,10 +1799,14 @@ wStageSong:: ; 0xd7bf wStageSongBank:: ; 0xd7c0 ds $1 -wd7c1:: ; 0xd7c1 +wLoadingSavedGame:: ; 0xd7c1 +; Set to 1 when the pinball game is being initialized from a saved game via the Titlescreen. +; 0 otherwise. ds $1 -wd7c2:: ; 0xd7c2 +wSavedGame:: ; 0xd7c2 +; Set to 1 when there is a pinball game saved, ready to resume via the Titlescreen. +; 0 otherwise. ds $1 wSubTileBallXPos:: ; 0xd7c3 -- cgit v1.2.3