summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcus Huderle <huderlem@gmail.com>2017-09-08 19:31:01 -0700
committerMarcus Huderle <huderlem@gmail.com>2017-09-08 19:31:01 -0700
commit24399a8a19932f940dc78f6f84e9681c9fce7bbb (patch)
treeffba2299b0e2266b4b525a8b7837183a7b97c054
parent56ab05c70d6b59a465c8cd83c1c2767790426360 (diff)
Label various WRAM addresses
-rw-r--r--engine/high_scores_screen.asm24
-rw-r--r--engine/pinball_game.asm8
-rw-r--r--engine/pinball_game/ball_loss/ball_loss_diglett_bonus.asm2
-rw-r--r--engine/pinball_game/ball_loss/ball_loss_gengar_bonus.asm2
-rw-r--r--engine/pinball_game/ball_loss/ball_loss_meowth_bonus.asm2
-rw-r--r--engine/pinball_game/ball_loss/ball_loss_mewtwo_bonus.asm2
-rw-r--r--engine/pinball_game/ball_loss/ball_loss_seel_bonus.asm2
-rw-r--r--engine/pinball_game/end_of_ball_bonus.asm24
-rw-r--r--engine/pinball_game/load_stage_data/load_blue_field.asm2
-rw-r--r--engine/pinball_game/load_stage_data/load_red_field.asm2
-rw-r--r--engine/pinball_game/object_collision/blue_stage_resolve_collision.asm4
-rw-r--r--engine/pinball_game/object_collision/red_stage_resolve_collision.asm4
-rw-r--r--engine/pinball_game/stage_init/init_stages.asm2
-rw-r--r--engine/pokedex.asm6
-rw-r--r--engine/pokedex/variable_width_font_character.asm4
-rw-r--r--wram.asm50
16 files changed, 76 insertions, 64 deletions
diff --git a/engine/high_scores_screen.asm b/engine/high_scores_screen.asm
index 3d867c6..048ac07 100644
--- a/engine/high_scores_screen.asm
+++ b/engine/high_scores_screen.asm
@@ -810,17 +810,17 @@ Func_d042: ; 0xd042
ld [wd8aa], a
ld a, BANK(HighScoresTilemap)
ld hl, HighScoresTilemap + $3c0
- ld de, wc280
+ ld de, wSendHighScoresTopBarTilemap
ld bc, $0040
call FarCopyData
ld a, $0
hlCoord 0, 2, vBGMap
- ld de, wc2c0
+ ld de, wSendHighScoresTopBarTilemap + $40
ld bc, $01c0
call LoadVRAMData
ld a, BANK(HighScoresTilemap)
ld hl, HighScoresTilemap + $280
- ld de, wc480
+ ld de, wSendHighScoresTopBarTilemap + $200
ld bc, $0040
call FarCopyData
call Func_d6b6
@@ -836,17 +836,17 @@ Func_d042: ; 0xd042
.asm_d0a2
ld a, BANK(HighScoresTilemap2)
ld hl, HighScoresTilemap2 + $3c0
- ld de, wc280
+ ld de, wSendHighScoresTopBarTilemap
ld bc, $0040
call FarCopyData
ld a, $0
hlCoord 0, 2, vBGWin
- ld de, wc2c0
+ ld de, wSendHighScoresTopBarTilemap + $40
ld bc, $01c0
call LoadVRAMData
ld a, BANK(HighScoresTilemap2)
ld hl, HighScoresTilemap2 + $280
- ld de, wc480
+ ld de, wSendHighScoresTopBarTilemap + $200
ld bc, $0040
call FarCopyData
call Func_d6b6
@@ -883,7 +883,7 @@ Func_d0f5: ; 0xd0f5
ret
Func_d107: ; 0xd107
- ld hl, wc280
+ ld hl, wSendHighScoresTopBarTilemap
ld a, $c0
ld b, $20
.clear
@@ -892,7 +892,7 @@ rept 32
endr
dec b
jr nz, .clear
- ld hl, wc280
+ ld hl, wSendHighScoresTopBarTilemap
ld b, $5
.loop
ld c, $4
@@ -1721,11 +1721,11 @@ Func_d68a: ; 0xd68a
ret nz
ld hl, vBGMap
add hl, bc
- call Func_d6aa
+ call ShowDexCompletionCrown
ld hl, vBGWin
add hl, bc
; fall through
-Func_d6aa: ; 0xd6aa
+ShowDexCompletionCrown: ; 0xd6aa
ld a, $56
call PutTileInVRAM
inc hl
@@ -1747,8 +1747,8 @@ Func_d6b6: ; 0xd6b6
ld a, c
cp NUM_POKEMON
ret nz
- ld hl, wc289
- ld a, $56
+ ld hl, wSendHighScoresTopBarTilemap + $9
+ ld a, $56 ; a crown is shown when Dex is completed
ld [hli], a
ld a, $57
ld [hli], a
diff --git a/engine/pinball_game.asm b/engine/pinball_game.asm
index e85ed71..5ede0d6 100644
--- a/engine/pinball_game.asm
+++ b/engine/pinball_game.asm
@@ -258,9 +258,9 @@ GameScreenFunction_EndBall: ; 0xdab2
ld hl, rIE
res 1, [hl]
ld a, [wCurrentStage]
- ld [wd4ad], a
+ ld [wCurrentStageBackup], a
ld a, [wStageCollisionState]
- ld [wd4b0], a
+ ld [wStageCollisionStateBackup], a
ld a, [wNextStage]
ld [wCurrentStage], a
xor a
@@ -284,9 +284,9 @@ GameScreenFunction_EndBall: ; 0xdab2
res 6, [hl]
ld hl, rIE
res 1, [hl]
- ld a, [wd4ad]
+ ld a, [wCurrentStageBackup]
ld [wCurrentStage], a
- ld a, [wd4b0]
+ ld a, [wStageCollisionStateBackup]
ld [wStageCollisionState], a
ld a, $1
ld [wScreenState], a
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 999ee09..7e2a57e 100644
--- a/engine/pinball_game/ball_loss/ball_loss_diglett_bonus.asm
+++ b/engine/pinball_game/ball_loss/ball_loss_diglett_bonus.asm
@@ -1,5 +1,5 @@
HandleBallLossDiglettBonus: ; 0xe056
- ld a, [wd4ad]
+ ld a, [wCurrentStageBackup]
ld hl, wCurrentStage
cp [hl]
ret z
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 5f8248f..6f16c3a 100644
--- a/engine/pinball_game/ball_loss/ball_loss_gengar_bonus.asm
+++ b/engine/pinball_game/ball_loss/ball_loss_gengar_bonus.asm
@@ -1,5 +1,5 @@
HandleBallLossGengarBonus: ; 0xdf1a
- ld a, [wd4ad]
+ ld a, [wCurrentStageBackup]
ld hl, wCurrentStage
cp [hl]
ret z
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 6e9f994..de1e00f 100644
--- a/engine/pinball_game/ball_loss/ball_loss_meowth_bonus.asm
+++ b/engine/pinball_game/ball_loss/ball_loss_meowth_bonus.asm
@@ -22,7 +22,7 @@ HandleBallLossMeowthBonus: ; 0xdfe2
ld [wMeowthStageScore], a
callba Func_24fa3
.asm_e00f
- ld a, [wd4ad]
+ ld a, [wCurrentStageBackup]
ld hl, wCurrentStage
cp [hl]
ret z
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 cf1a5a4..f556b33 100644
--- a/engine/pinball_game/ball_loss/ball_loss_mewtwo_bonus.asm
+++ b/engine/pinball_game/ball_loss/ball_loss_mewtwo_bonus.asm
@@ -1,5 +1,5 @@
HandleBallLossMewtwoBonus: ; 0xdf7e
- ld a, [wd4ad]
+ ld a, [wCurrentStageBackup]
ld hl, wCurrentStage
cp [hl]
ret z
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 6fbce47..551aaf4 100644
--- a/engine/pinball_game/ball_loss/ball_loss_seel_bonus.asm
+++ b/engine/pinball_game/ball_loss/ball_loss_seel_bonus.asm
@@ -22,7 +22,7 @@ HandleBallLossSeelBonus: ; 0xe08b
ld [wd793], a
callba Func_262f4
.asm_e0b8
- ld a, [wd4ad]
+ ld a, [wCurrentStageBackup]
ld hl, wCurrentStage
cp [hl]
ret z
diff --git a/engine/pinball_game/end_of_ball_bonus.asm b/engine/pinball_game/end_of_ball_bonus.asm
index 5d312ef..6e577c1 100644
--- a/engine/pinball_game/end_of_ball_bonus.asm
+++ b/engine/pinball_game/end_of_ball_bonus.asm
@@ -65,9 +65,9 @@ ShowBallBonusSummary: ; 0xf5a0
ld de, wBottomMessageText + $80
ld hl, SubtotalPointsText
call PlaceTextAlphanumericOnly
- ld hl, wd489
+ ld hl, wEndOfBallBonusSubTotal
call ClearBCD6Buffer
- ld hl, wd48f
+ ld hl, wEndOfBallBonusTotalScore
call ClearBCD6Buffer
ld a, $1
ld [wd4ab], a
@@ -189,7 +189,7 @@ Func_f676: ; 0xf676
.asm_f6c7
push de
push hl
- ld hl, wd48f + $5
+ ld hl, wEndOfBallBonusTotalScore + $5
ld de, wBottomMessageText + $86
call Func_f8bd
ld bc, $0040
@@ -214,8 +214,8 @@ Func_f676: ; 0xf676
jr z, .asm_f709
dec a
ld [wCurBonusMultiplier], a
- ld hl, wd48f
- ld de, wd489
+ ld hl, wEndOfBallBonusTotalScore
+ ld de, wEndOfBallBonusSubTotal
call AddBigBCD6
jr .asm_f6c7
@@ -269,7 +269,7 @@ Func_f70d: ; 0xf70d
ld [wd4ab], a
.asm_f76c
ld hl, wScore
- ld de, wd48f
+ ld de, wEndOfBallBonusTotalScore
call AddBigBCD6
ld hl, wScore + $5
ld de, wBottomMessageText + $66
@@ -430,13 +430,13 @@ Func_f83a: ; 0xf83a
Func_f853: ; 0xf853
push hl
- ld hl, wd483
+ ld hl, wEndOfBallBonusCategoryScore
call ClearBCD6Buffer
pop hl
.asm_f85b
push de
push hl
- ld hl, wd483 + $5
+ ld hl, wEndOfBallBonusCategoryScore + $5
ld de, wBottomMessageText + $46
call Func_f8bd
ld bc, $0040
@@ -462,17 +462,17 @@ Func_f853: ; 0xf853
dec [hl]
push de
push hl
- ld hl, wd483
+ ld hl, wEndOfBallBonusCategoryScore
call AddBigBCD6
pop hl
pop de
jr .asm_f85b
.asm_f899
- ld hl, wd489
- ld de, wd483
+ ld hl, wEndOfBallBonusSubTotal
+ ld de, wEndOfBallBonusCategoryScore
call AddBigBCD6
- ld hl, wd489 + $5
+ ld hl, wEndOfBallBonusSubTotal + $5
ld de, wBottomMessageText + $86
call Func_f8bd
ld bc, $0040
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 9bbdb78..a2b8bc9 100644
--- a/engine/pinball_game/load_stage_data/load_blue_field.asm
+++ b/engine/pinball_game/load_stage_data/load_blue_field.asm
@@ -52,7 +52,7 @@ Func_1c1db: ; 0x1c1db
Func_1c203: ; 0x1c203
ld a, $ff
ld [wWhichAnimatedShellder], a
- ld [wd4db], a
+ ld [wWhichBumperGfx], a
ld a, [wBallXPos + 1]
ld [wd4c5], a
ld a, [wBallYPos + 1]
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 e146a91..5252602 100644
--- a/engine/pinball_game/load_stage_data/load_red_field.asm
+++ b/engine/pinball_game/load_stage_data/load_red_field.asm
@@ -68,7 +68,7 @@ LoadTimerGraphics: ; 0x1404a
Func_14091: ; 0x14091
ld a, $ff
ld [wWhichAnimatedVoltorb], a
- ld [wd4db], a
+ ld [wWhichBumperGfx], a
ld a, [wBallXPos + 1]
ld [wd4c5], a
ld a, [wBallYPos + 1]
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 d26f133..e336fd4 100644
--- a/engine/pinball_game/object_collision/blue_stage_resolve_collision.asm
+++ b/engine/pinball_game/object_collision/blue_stage_resolve_collision.asm
@@ -550,13 +550,13 @@ LightUpBumper_BlueField: ; 0x1ce60
ld [wBumperLightUpDuration], a
ld a, [wWhichBumperId]
sub $1
- ld [wd4db], a
+ ld [wWhichBumperGfx], a
sla a
inc a
jr LoadBumperGraphics_BlueField
LoadBumpersGraphics_BlueField: ; 1ce72
- ld a, [wd4db]
+ ld a, [wWhichBumperGfx]
cp $ff
ret z
sla a
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 2f706ed..93cc7a5 100644
--- a/engine/pinball_game/object_collision/red_stage_resolve_collision.asm
+++ b/engine/pinball_game/object_collision/red_stage_resolve_collision.asm
@@ -1651,13 +1651,13 @@ LightUpBumper_RedField: ; 0x15fa6
ld [wBumperLightUpDuration], a
ld a, [wWhichBumperId]
sub $6
- ld [wd4db], a
+ ld [wWhichBumperGfx], a
sla a
inc a
jr LoadBumperGraphics_RedField
LoadBumpersGraphics_RedField: ; 0x15fb8
- ld a, [wd4db]
+ ld a, [wWhichBumperGfx]
cp $ff
ret z
sla a
diff --git a/engine/pinball_game/stage_init/init_stages.asm b/engine/pinball_game/stage_init/init_stages.asm
index 621a828..5b33538 100644
--- a/engine/pinball_game/stage_init/init_stages.asm
+++ b/engine/pinball_game/stage_init/init_stages.asm
@@ -61,7 +61,7 @@ ResetDataForStageInitialization: ; 0x8388
ld hl, wHighScoreId
ld bc, $0039
call ClearData
- ld hl, wd4ad
+ ld hl, wCurrentStageBackup
ld bc, $034d
call ClearData
ret
diff --git a/engine/pokedex.asm b/engine/pokedex.asm
index d8eea4e..f3ad04a 100644
--- a/engine/pokedex.asm
+++ b/engine/pokedex.asm
@@ -992,7 +992,7 @@ Func_286dd: ; 0x286dd
ld e, a
ld a, [wd864]
ld d, a
- ld hl, wc010
+ ld hl, wPokedexFontBuffer
xor a
ld bc, $00a0
call LoadOrCopyVRAMData
@@ -2109,7 +2109,7 @@ Func_28d97: ; 0x28d97
jr z, .asm_28de9
dec b
.asm_28de9
- ld hl, wc010
+ ld hl, wPokedexFontBuffer
add hl, bc
ld a, [$ff8f]
ld c, a
@@ -2177,7 +2177,7 @@ Func_28e09: ; 0x28e09
jr z, .asm_28e53
dec b
.asm_28e53
- ld hl, wc010
+ ld hl, wPokedexFontBuffer
add hl, bc
ld a, [$ff8f]
ld c, a
diff --git a/engine/pokedex/variable_width_font_character.asm b/engine/pokedex/variable_width_font_character.asm
index e85b234..f486019 100644
--- a/engine/pokedex/variable_width_font_character.asm
+++ b/engine/pokedex/variable_width_font_character.asm
@@ -51,7 +51,7 @@ LoadDexVWFCharacter_: ; 0x8d17
rl b
sla c
rl b
- ld hl, wc010
+ ld hl, wPokedexFontBuffer
add hl, bc
ld d, h
ld e, l
@@ -209,7 +209,7 @@ Func_8e01: ; 0x8e01
ld b, a
sla c
rl b
- ld hl, wc010
+ ld hl, wPokedexFontBuffer
add hl, bc
ld d, h
ld e, l
diff --git a/wram.asm b/wram.asm
index 5c96d11..8e56299 100644
--- a/wram.asm
+++ b/wram.asm
@@ -10,8 +10,10 @@ SECTION "WRAM Bank 0", WRAM0
wc000:: ; 0xc000
ds $10
-wc010:: ; 0xc010
- ds $140
+wPokedexFontBuffer:: ; 0xc010
+; Buffer to build up the variable-width font used for various displayed text in the pokedex screen.
+; This buffer is copied directly to VRAM tile data. There is room for 10 characters worth of the widest text character.
+ ds 10 * $20
wc150:: ; 0xc150
ds $68
@@ -19,19 +21,14 @@ wc150:: ; 0xc150
wc1b8:: ; 0xc1b8
ds $c8
-wc280:: ; 0xc280
- ds $9
-
-wc289:: ; 0xc289
- ds $37
-
-wc2c0:: ; 0xc2c0
- ds $140
+wSendHighScoresTopBarTilemap:: ; 0xc280
+; This is the tilemap data that is sent via infrared in the High Scores screen.
+; It actually takes up $400 bytes of spaces, but there are other labels that use this space, too.
+ ds $180
wMonAnimatedCollisionMask:: ; 0xc400
ds $80
-wc480:: ; 0xc480
ds $40
wc4c0:: ; 0xc4c0
@@ -150,13 +147,19 @@ wCurBonusMultiplier:: ; 0xd482
; railings. (left one first, then right one). See MAX_BONUS_MULTIPLIER
ds $1
-wd483:: ; 0xd483
+wEndOfBallBonusCategoryScore:: ; 0xd483
+; The "Bonus" score for the currently-displayed category of bonus score. (e.g. bonus score for "Pokemon Caught" category)
+; It is a 6-digit BCD value.
ds $6
-wd489:: ; 0xd489
+wEndOfBallBonusSubTotal:: ; 0xd489
+; The running subtotal for the end-of-ball-bonus display.
+; It is a 6-digit BCD value.
ds $6
-wd48f:: ; 0xd48f
+wEndOfBallBonusTotalScore:: ; 0xd48f
+; The final score after the end-of-ball-bonus score is added to the player's previous score.
+; It is a 6-digit BCD value.
ds $6
wGoingToBonusStage:: ; 0xd495
@@ -239,10 +242,12 @@ wDrawBottomMessageBox:: ; 0xd4aa
wd4ab:: ; 0xd4ab
ds $1
-wCurrentStage:: ; 0xd4ac see constants/stage_constants.asm for list. bit 0 is 1 if the stage has flippers
+wCurrentStage:: ; 0xd4ac
+; see constants/stage_constants.asm for list. bit 0 is 1 if the stage has flippers
ds $1
-wd4ad:: ; 0xd4ad
+wCurrentStageBackup:: ; 0xd4ad
+; Holds backup of current stage id when going to a Bonus Stage. See wCurrentStage.
ds $1
wMoveToNextScreenState:: ; 0xd4ae
@@ -252,8 +257,11 @@ wMoveToNextScreenState:: ; 0xd4ae
wStageCollisionState:: ; 0xd4af
ds $1
-wd4b0:: ; 0xd4b0
- ds $3
+wStageCollisionStateBackup:: ; 0xd4b0
+; Holds backup of stage collision state when going to a Bonus Stage. See wStageCollisionState.
+ ds $1
+
+ ds $2
wBallXPos:: ; 0xd4b3
ds $2
@@ -343,7 +351,11 @@ wBumperLightUpDuration:: ; 0xd4da
; This is shared by both bumpers, so only one can be lit up at a time.
ds $1
-wd4db:: ; 0xd4db
+wWhichBumperGfx:: ; 0xd4db
+; Determines which bumper graphics will be loaded by LoadBumperGraphics_RedField and LoadBumperGraphics_BlueField
+; $0 = left bumper
+; $1 = right bumper
+; $FF = neither bumper
ds $1
wPinballLaunchCollision:: ; 0xd4dc