summaryrefslogtreecommitdiff
path: root/engine
diff options
context:
space:
mode:
Diffstat (limited to 'engine')
-rwxr-xr-xengine/anim_hp_bar.asm137
-rw-r--r--engine/battle_start.asm48
-rwxr-xr-xengine/billspc.asm58
-rwxr-xr-xengine/billspctop.asm388
-rwxr-xr-xengine/breeding/egg.asm12
-rw-r--r--engine/buena_phone_scripts.asm44
-rwxr-xr-xengine/card_flip.asm30
-rwxr-xr-xengine/clock_reset.asm2
-rw-r--r--engine/color.asm396
-rw-r--r--engine/credits.asm66
-rwxr-xr-xengine/crystal_intro.asm28
-rwxr-xr-xengine/debug.asm2
-rwxr-xr-xengine/decorations.asm44
-rwxr-xr-xengine/dummy_game.asm32
-rw-r--r--engine/events.asm20
-rw-r--r--engine/events_2.asm20
-rwxr-xr-xengine/events_3.asm2
-rwxr-xr-xengine/evolution_animation.asm4
-rwxr-xr-xengine/evolve.asm20
-rwxr-xr-xengine/healmachineanim.asm4
-rwxr-xr-xengine/health.asm110
-rwxr-xr-xengine/init_gender.asm2
-rwxr-xr-xengine/intro_menu.asm42
-rwxr-xr-xengine/items.asm584
-rwxr-xr-xengine/learn.asm2
-rwxr-xr-xengine/link.asm4
-rwxr-xr-xengine/link_trade.asm4
-rwxr-xr-xengine/mail.asm28
-rwxr-xr-xengine/main_menu.asm14
-rwxr-xr-xengine/map_object_action.asm2
-rw-r--r--engine/map_objects.asm168
-rw-r--r--engine/map_setup.asm2
-rwxr-xr-xengine/mart.asm24
-rwxr-xr-xengine/menu.asm10
-rwxr-xr-xengine/mon_icons.asm29
-rwxr-xr-xengine/mon_menu.asm2
-rwxr-xr-xengine/money.asm2
-rwxr-xr-xengine/move_mon.asm14
-rw-r--r--engine/movement.asm12
-rwxr-xr-xengine/mysterygift.asm12
-rwxr-xr-xengine/namingscreen.asm14
-rwxr-xr-xengine/options_menu.asm132
-rwxr-xr-xengine/overworld.asm34
-rw-r--r--engine/pack.asm44
-rw-r--r--engine/party_menu.asm24
-rw-r--r--engine/phone.asm45
-rw-r--r--engine/phone_scripts.asm2
-rwxr-xr-xengine/player_movement.asm58
-rwxr-xr-xengine/player_object.asm856
-rwxr-xr-xengine/player_step.asm8
-rwxr-xr-xengine/pokecenter_pc.asm285
-rw-r--r--engine/pokedex.asm8
-rwxr-xr-xengine/pokegear.asm83
-rwxr-xr-xengine/printer.asm4
-rwxr-xr-xengine/printnum.asm300
-rw-r--r--engine/radio.asm32
-rw-r--r--engine/scripting.asm18
-rwxr-xr-xengine/scrolling_menu.asm28
-rwxr-xr-xengine/selectmenu.asm34
-rwxr-xr-xengine/sine.asm50
-rwxr-xr-xengine/slot_machine.asm64
-rw-r--r--engine/specials.asm2
-rwxr-xr-xengine/sprite_anims.asm70
-rwxr-xr-xengine/sprites.asm4
-rwxr-xr-xengine/startmenu.asm230
-rwxr-xr-xengine/stats_screen.asm22
-rw-r--r--engine/std_scripts.asm428
-rwxr-xr-xengine/switch_items.asm2
-rwxr-xr-xengine/tile_events.asm16
-rwxr-xr-xengine/time.asm10
-rw-r--r--engine/timeofdaypals.asm18
-rwxr-xr-xengine/timeset.asm26
-rw-r--r--engine/title.asm120
-rwxr-xr-xengine/tmhm2.asm8
-rwxr-xr-xengine/trade/animation.asm4
-rwxr-xr-xengine/trainer_card.asm14
-rwxr-xr-xengine/unown_puzzle.asm6
-rwxr-xr-xengine/variables.asm2
-rwxr-xr-xengine/warp_connection.asm2
-rwxr-xr-xengine/wildmons.asm24
80 files changed, 3858 insertions, 1697 deletions
diff --git a/engine/anim_hp_bar.asm b/engine/anim_hp_bar.asm
index c00a97921..c8a543ba1 100755
--- a/engine/anim_hp_bar.asm
+++ b/engine/anim_hp_bar.asm
@@ -1,46 +1,46 @@
_AnimateHPBar: ; d627
- call Functiond65f
- jr c, .do_player
- call Functiond670
-.enemy_loop
+ call .IsMaximumMoreThan48Pixels
+ jr c, .MoreThan48Pixels
+ call .ComputePixels
+.ShortAnimLoop:
push bc
push hl
- call Functiond6e2
+ call ShortAnim_UpdateVariables
pop hl
pop bc
push af
push bc
push hl
- call Functiond730
- call Functiond7c9
+ call ShortHPBarAnim_UpdateTiles
+ call HPBarAnim_BGMapUpdate
pop hl
pop bc
pop af
- jr nc, .enemy_loop
+ jr nc, .ShortAnimLoop
ret
-.do_player
- call Functiond670
-.player_loop
+.MoreThan48Pixels:
+ call .ComputePixels
+.LongAnimLoop:
push bc
push hl
- call Functiond6f5
+ call LongAnim_UpdateVariables
pop hl
pop bc
ret c
push af
push bc
push hl
- call Functiond749
- call Functiond7c9
+ call LongHPBarAnim_UpdateTiles
+ call HPBarAnim_BGMapUpdate
pop hl
pop bc
pop af
- jr nc, .player_loop
+ jr nc, .LongAnimLoop
ret
; d65f
-Functiond65f: ; d65f
+.IsMaximumMoreThan48Pixels: ; d65f
ld a, [Buffer2]
and a
jr nz, .player
@@ -55,7 +55,7 @@ Functiond65f: ; d65f
ret
; d670
-Functiond670: ; d670
+.ComputePixels: ; d670
; Buffer1-2: Max HP
; Buffer3-4: Old HP
; Buffer5-6: New HP
@@ -72,7 +72,7 @@ Functiond670: ; d670
pop hl
call ComputeHPBarPixels
ld a, e
- ld [wd1f1], a
+ ld [wCurHPBarPixels], a
ld a, [Buffer5]
ld c, a
@@ -84,7 +84,7 @@ Functiond670: ; d670
ld d, a
call ComputeHPBarPixels
ld a, e
- ld [wd1f2], a
+ ld [wNewHPBarPixels], a
push hl
ld hl, Buffer3
@@ -103,15 +103,15 @@ Functiond670: ; d670
ld a, d
sbc b
ld d, a
- jr c, .asm_d6c1
+ jr c, .negative
ld a, [Buffer3]
ld [wd1f5], a
ld a, [Buffer5]
ld [wd1f6], a
ld bc, 1
- jr .asm_d6d9
+ jr .got_direction
-.asm_d6c1
+.negative
ld a, [Buffer3]
ld [wd1f6], a
ld a, [Buffer5]
@@ -123,8 +123,8 @@ Functiond670: ; d670
ld a, d
xor $ff
ld d, a
- ld bc, rIE
-.asm_d6d9
+ ld bc, -1
+.got_direction
ld a, d
ld [wd1f3], a
ld a, e
@@ -132,25 +132,25 @@ Functiond670: ; d670
ret
; d6e2
-Functiond6e2: ; d6e2
- ld hl, wd1f1
- ld a, [wd1f2]
+ShortAnim_UpdateVariables: ; d6e2
+ ld hl, wCurHPBarPixels
+ ld a, [wNewHPBarPixels]
cp [hl]
- jr nz, .asm_d6ed
+ jr nz, .not_finished
scf
ret
-.asm_d6ed
+.not_finished
ld a, c
add [hl]
ld [hl], a
- call Functiond839
+ call ShortHPBar_CalcPixelFrame
and a
ret
; d6f5
-Functiond6f5: ; d6f5
-.asm_d6f5
+LongAnim_UpdateVariables: ; d6f5
+.loop
ld hl, Buffer3
ld a, [hli]
ld e, a
@@ -158,22 +158,22 @@ Functiond6f5: ; d6f5
ld d, a
ld a, e
cp [hl]
- jr nz, .asm_d707
+ jr nz, .next
inc hl
ld a, d
cp [hl]
- jr nz, .asm_d707
+ jr nz, .next
scf
ret
-.asm_d707
+.next
ld l, e
ld h, d
add hl, bc
ld a, l
ld [Buffer3], a
ld a, h
- ld [wd1ed], a
+ ld [Buffer4], a
push hl
push de
push bc
@@ -186,40 +186,45 @@ Functiond6f5: ; d6f5
ld c, a
ld a, [hli]
ld b, a
+ ; This routine is buggy. The result from ComputeHPBarPixels is stored
+ ; in e. However, the pop de opcode deletes this result before it is even
+ ; used. The game then proceeds as though it never deleted that output.
+ ; To fix, uncomment the line below.
call ComputeHPBarPixels
+ ; ld a, e
pop bc
pop de
pop hl
- ld a, e
- ld hl, wd1f1
+ ld a, e ; Comment or delete this line to fix the above bug.
+ ld hl, wCurHPBarPixels
cp [hl]
- jr z, .asm_d6f5
+ jr z, .loop
ld [hl], a
and a
ret
; d730
-Functiond730: ; d730
- call Functiond784
+ShortHPBarAnim_UpdateTiles: ; d730
+ call HPBarAnim_UpdateHPRemaining
ld d, $6
ld a, [wWhichHPBar]
and $1
ld b, a
- ld a, [wd1f1]
+ ld a, [wCurHPBarPixels]
ld e, a
ld c, a
push de
- call Functiond771
+ call HPBarAnim_RedrawHPBar
pop de
- call Functiond7b4
+ call HPBarAnim_PaletteUpdate
ret
; d749
-Functiond749: ; d749
- call Functiond784
+LongHPBarAnim_UpdateTiles: ; d749
+ call HPBarAnim_UpdateHPRemaining
ld a, [Buffer3]
ld c, a
- ld a, [wd1ed]
+ ld a, [Buffer4]
ld b, a
ld a, [Buffer1]
ld e, a
@@ -232,20 +237,20 @@ Functiond749: ; d749
and $1
ld b, a
push de
- call Functiond771
+ call HPBarAnim_RedrawHPBar
pop de
- call Functiond7b4
+ call HPBarAnim_PaletteUpdate
ret
; d771
-Functiond771: ; d771
+HPBarAnim_RedrawHPBar: ; d771
ld a, [wWhichHPBar]
cp $2
jr nz, .skip
- ld a, $28
+ ld a, 2 * SCREEN_WIDTH
add l
ld l, a
- ld a, $0
+ ld a, 0
adc h
ld h, a
.skip
@@ -253,17 +258,17 @@ Functiond771: ; d771
ret
; d784
-Functiond784: ; d784
+HPBarAnim_UpdateHPRemaining: ; d784
ld a, [wWhichHPBar]
and a
ret z
cp $1
jr z, .load_15
- ld de, $16
+ ld de, SCREEN_WIDTH + 2
jr .loaded_de
.load_15
- ld de, $15
+ ld de, SCREEN_WIDTH + 1
.loaded_de
push hl
add hl, de
@@ -275,7 +280,7 @@ endr
dec hl
ld a, [Buffer3]
ld [StringBuffer2 + 1], a
- ld a, [wd1ed]
+ ld a, [Buffer4]
ld [StringBuffer2], a
ld de, StringBuffer2
lb bc, 2, 3
@@ -284,7 +289,7 @@ endr
ret
; d7b4
-Functiond7b4: ; d7b4
+HPBarAnim_PaletteUpdate: ; d7b4
ld a, [hCGB]
and a
ret z
@@ -296,7 +301,7 @@ Functiond7b4: ; d7b4
ret
; d7c9
-Functiond7c9: ; d7c9
+HPBarAnim_BGMapUpdate: ; d7c9
ld a, [hCGB]
and a
jr nz, .cgb
@@ -312,13 +317,13 @@ Functiond7c9: ; d7c9
jr z, .load_1
ld a, [CurPartyMon]
cp $3
- jr nc, .c_is_1
+ jr nc, .bottom_half_of_screen
ld c, $0
- jr .c_is_0
+ jr .got_third
-.c_is_1
+.bottom_half_of_screen
ld c, $1
-.c_is_0
+.got_third
push af
cp $2
jr z, .skip_delay
@@ -370,14 +375,14 @@ Functiond7c9: ; d7c9
ret
; d839
-Functiond839: ; d839
+ShortHPBar_CalcPixelFrame: ; d839
ld a, [Buffer1]
ld c, a
ld b, 0
ld hl, 0
- ld a, [wd1f1]
+ ld a, [wCurHPBarPixels]
cp 6 * 8
- jr nc, .coppy_buffer
+ jr nc, .return_max
and a
jr z, .return_zero
call AddNTimes
@@ -423,7 +428,7 @@ Functiond839: ; d839
ld [Buffer3], a
ret
-.coppy_buffer
+.return_max
ld a, [Buffer1]
ld [Buffer3], a
ret
diff --git a/engine/battle_start.asm b/engine/battle_start.asm
index 6fb64e9b1..d2ead2757 100644
--- a/engine/battle_start.asm
+++ b/engine/battle_start.asm
@@ -1,5 +1,5 @@
Predef_StartBattle: ; 8c20f
- call Function8c26d
+ call .InitGFX
ld a, [rBGP]
ld [wBGP], a
ld a, [rOBP0]
@@ -52,15 +52,15 @@ Predef_StartBattle: ; 8c20f
ret
; 8c26d
-Function8c26d: ; 8c26d
+.InitGFX: ; 8c26d
ld a, [wLinkMode]
cp LINK_MOBILE
jr z, .mobile
callba Function6454
call UpdateSprites
call DelayFrame
- call Function8c2a0
- call Function8cf4f
+ call .NonMobile_LoadPokeballTiles
+ call BattleStart_LoadEDTile
jr .resume
.mobile
@@ -81,7 +81,7 @@ Function8c26d: ; 8c26d
ret
; 8c2a0
-Function8c2a0: ; 8c2a0
+.NonMobile_LoadPokeballTiles: ; 8c2a0
call LoadTrainerBattlePokeballTiles
hlbgcoord 0, 0
call Function8c2cf
@@ -148,7 +148,7 @@ FlashyTransitionToBattle: ; 8c314
jumptable .dw, wJumptableIndex
; 8c323
-.dw: ; 8c323 (23:4323)
+.dw ; 8c323 (23:4323)
dw StartTrainerBattle_DetermineWhichAnimation ; 00
; Animation 1: cave
@@ -279,7 +279,7 @@ StartTrainerBattle_Flash: ; 8c3ab (23:43ab)
ret
; 8c3db (23:43db)
-.pals: ; 8c3db
+.pals ; 8c3db
db %11111001 ; 3321
db %11111110 ; 3332
db %11111111 ; 3333
@@ -411,7 +411,7 @@ endr
ret
; 8c490 (23:4490)
-.spintable: ; 8c490
+.spintable ; 8c490
spintable_entry UPPER_LEFT, 1, 1, 6
spintable_entry UPPER_LEFT, 2, 0, 3
spintable_entry UPPER_LEFT, 3, 1, 0
@@ -435,7 +435,7 @@ endr
db -1
; 8c4f5
-.load: ; 8c4f5 (23:44f5)
+.load ; 8c4f5 (23:44f5)
ld a, [hli]
ld e, a
ld a, [hli]
@@ -489,11 +489,11 @@ endr
jr .loop
; 8c538 (23:4538)
-.wedge1: db 2, 3, 5, 4, 9, -1
-.wedge2: db 1, 1, 2, 2, 4, 2, 4, 2, 3, -1
-.wedge3: db 2, 1, 3, 1, 4, 1, 4, 1, 4, 1, 3, 1, 2, 1, 1, 1, 1, -1
-.wedge4: db 4, 1, 4, 0, 3, 1, 3, 0, 2, 1, 2, 0, 1, -1
-.wedge5: db 4, 0, 3, 0, 3, 0, 2, 0, 2, 0, 1, 0, 1, 0, 1, -1
+.wedge1 db 2, 3, 5, 4, 9, -1
+.wedge2 db 1, 1, 2, 2, 4, 2, 4, 2, 3, -1
+.wedge3 db 2, 1, 3, 1, 4, 1, 4, 1, 4, 1, 3, 1, 2, 1, 1, 1, 1, -1
+.wedge4 db 4, 1, 4, 0, 3, 1, 3, 0, 2, 1, 2, 0, 1, -1
+.wedge5 db 4, 0, 3, 0, 3, 0, 2, 0, 2, 0, 1, 0, 1, 0, 1, -1
; 8c578
StartTrainerBattle_SetUpForRandomScatterOutro: ; 8c578 (23:4578)
@@ -663,13 +663,13 @@ StartTrainerBattle_LoadPokeBallGraphics: ; 8c5dc (23:45dc)
ld a, $1
ld [hCGBPalUpdate], a
call DelayFrame
- call Function8cf4f
+ call BattleStart_LoadEDTile
-.nextscene: ; 8c673 (23:4673)
+.nextscene ; 8c673 (23:4673)
call StartTrainerBattle_NextScene
ret
-.copypals: ; 8c677 (23:4677)
+.copypals ; 8c677 (23:4677)
ld de, UnknBGPals + 7 palettes
call .copy
ld de, BGPals + 7 palettes
@@ -682,7 +682,7 @@ StartTrainerBattle_LoadPokeBallGraphics: ; 8c5dc (23:45dc)
call .copy
ld de, OBPals + 7 palettes
-.copy: ; 8c698 (23:4698)
+.copy ; 8c698 (23:4698)
push hl
ld bc, 1 palettes
call CopyBytes
@@ -690,20 +690,20 @@ StartTrainerBattle_LoadPokeBallGraphics: ; 8c5dc (23:45dc)
ret
; 8c6a1 (23:46a1)
-.daypals: ; 8c6a1
+.daypals ; 8c6a1
RGB 31, 18, 29
RGB 31, 11, 15
RGB 31, 05, 05
RGB 07, 07, 07
; 8c6a9
-.nightpals: ; 8c6a9
+.nightpals ; 8c6a9
RGB 31, 18, 29
RGB 31, 05, 05
RGB 31, 05, 05
RGB 31, 05, 05
-.loadpokeballgfx:
+.loadpokeballgfx
ld a, [OtherTrainerClass]
ld de, PokeBallTransition
ret
@@ -742,7 +742,7 @@ WipeLYOverrides: ; 8c6d8
ret
; 8c6ef
-.wipe: ; 8c6ef
+.wipe ; 8c6ef
xor a
ld c, SCREEN_HEIGHT_PX
.loop
@@ -792,7 +792,7 @@ StartTrainerBattle_DrawSineWave: ; 8c6f7 (23:46f7)
ret
; 8c728 (23:4728)
-.sinewave: ; 8c728
+.sinewave ; 8c728
sine_wave $100
; 8c768
@@ -833,7 +833,7 @@ StartTrainerBattle_ZoomToBlack: ; 8c768 (23:4768)
ret
; 8c792 (23:4792)
-.boxes: ; 8c792
+.boxes ; 8c792
zoombox 4, 2, 8, 8
zoombox 6, 4, 7, 7
zoombox 8, 6, 6, 6
diff --git a/engine/billspc.asm b/engine/billspc.asm
index 3090ca0c2..5e9e7393b 100755
--- a/engine/billspc.asm
+++ b/engine/billspc.asm
@@ -42,7 +42,7 @@ _DepositPKMN: ; e2391 (38:6391)
jp [hl]
.Jumptable: ; e23df (38:63df)
-
+
dw .Init
dw .HandleJoypad
dw .WhatsUp
@@ -151,7 +151,7 @@ endr
jp [hl]
BillsPCDepositJumptable: ; e24a1 (38:64a1)
-
+
dw BillsPCDepositFuncDeposit ; Deposit Pokemon
dw BillsPCDepositFuncStats ; Pokemon Stats
dw BillsPCDepositFuncRelease ; Release Pokemon
@@ -310,7 +310,7 @@ _WithdrawPKMN: ; e2583 (38:6583)
jp [hl]
.Jumptable: ; e25d2 (38:65d2)
-
+
dw .Init
dw .Joypad
dw .PrepSubmenu
@@ -419,14 +419,14 @@ endr
ld l, a
jp [hl]
-.dw: ; e2699 (38:6699) #mark
+.dw ; e2699 (38:6699) #mark
dw .withdraw ; Withdraw
dw .stats ; Stats
dw .release ; Release
dw .cancel ; Cancel
-.withdraw: ; e26a1 (38:66a1)
+.withdraw ; e26a1 (38:66a1)
call BillsPC_CheckMail_PreventBlackout
jp c, .cancel
call TryWithdrawPokemon
@@ -437,12 +437,12 @@ endr
ld [wBillsPC_CursorPosition], a
ld [wBillsPC_ScrollPosition], a
ret
-.FailedWithdraw
+.FailedWithdraw:
ld de, PCString_WhatsUp
call BillsPC_PlaceString
ret
-.stats: ; e26c0 (38:66c0)
+.stats ; e26c0 (38:66c0)
call LoadStandardMenuDataHeader
call BillsPC_StatsScreen
call ExitMenu
@@ -453,7 +453,7 @@ endr
call BillsPC_ApplyPalettes
ret
-.release: ; e26d8 (38:66d8)
+.release ; e26d8 (38:66d8)
ld a, [wMenuCursorY]
push af
call BillsPC_IsMonAnEgg
@@ -483,14 +483,14 @@ endr
ld [wBillsPC_ScrollPosition], a
pop af
ret
-.FailedRelease
+.FailedRelease:
ld de, PCString_WhatsUp
call BillsPC_PlaceString
pop af
ld [wMenuCursorY], a
ret
-.cancel: ; e272b (38:672b)
+.cancel ; e272b (38:672b)
ld a, $0
ld [wJumptableIndex], a
ret
@@ -562,7 +562,7 @@ _MovePKMNWithoutMail: ; e2759
; e27ac
.Jumptable: ; e27ac
-
+
dw .Init
dw .Joypad
dw .PrepSubmenu
@@ -1664,21 +1664,21 @@ BillsPC_CheckMail_PreventBlackout: ; e2f18 (38:6f18)
ld a, [wBillsPC_MonHasMail]
and a
jr nz, .HasMail
-.Okay
+.Okay:
and a
ret
-.HasMail
+.HasMail:
ld de, PCString_RemoveMail
jr .NotOkay
-.AllOthersFainted
+.AllOthersFainted:
ld de, PCString_NoMoreUsablePKMN
jr .NotOkay
-.ItsYourLastPokemon
+.ItsYourLastPokemon:
ld de, PCString_ItsYourLastPKMN
-.NotOkay
+.NotOkay:
call BillsPC_PlaceString
ld de, SFX_WRONG
call WaitPlaySFX
@@ -1918,7 +1918,7 @@ TryWithdrawPokemon: ; e30fa (38:70fa)
and a
ret
-.PartyFull
+.PartyFull:
ld de, PCString_PartyFull
call BillsPC_PlaceString
ld de, SFX_WRONG
@@ -2021,7 +2021,7 @@ endr
jp [hl]
; e322a
-.dw_return: ; e322a
+.dw_return ; e322a
pop af
ld e, a
callba Function14ad5
@@ -2033,7 +2033,7 @@ endr
; e3245
.Jumptable: ; e3245
-
+
dw .BoxToBox
dw .PartyToBox
dw .BoxToParty
@@ -2226,7 +2226,7 @@ endr
ret
; e33a6 (38:73a6)
-.boxes: ; e33a6
+.boxes ; e33a6
; bank, address
dba sBox1
dba sBox2
@@ -2352,7 +2352,7 @@ _ChangeBox_menudataheader: ; 0xe35f1
db 1 ; default option
; 0xe35f9
-.menudata2: ; 0xe35f9
+.menudata2 ; 0xe35f9
db $22 ; flags
db 4, 0
db 1
@@ -2362,7 +2362,7 @@ _ChangeBox_menudataheader: ; 0xe35f1
dba BillsPC_PrintBoxCountAndCapacity
; e3609
-.boxes: ; e3609
+.boxes ; e3609
db NUM_BOXES
x = 1
rept NUM_BOXES
@@ -2372,7 +2372,7 @@ endr
db -1
; e3619
-.boxnames: ; e3619
+.boxnames ; e3619
push de
ld a, [MenuSelection]
dec a
@@ -2416,7 +2416,7 @@ BillsPC_PrintBoxCountAndCapacity: ; e3632
db "#MON@"
; e3668
-.out_of_20: ; e3668
+.out_of_20 ; e3668
; db "/20@"
db "/"
db "0" + MONS_PER_BOX / 10 ; "2"
@@ -2466,7 +2466,7 @@ endr
ret
; e36a5 (38:76a5)
-.boxbanks: ; e36a5
+.boxbanks ; e36a5
dba sBox1
dba sBox2
dba sBox3
@@ -2519,7 +2519,7 @@ BillsPC_ChangeBoxSubmenu: ; e36f9 (38:76f9)
and a
ret
-.Print
+.Print:
call GetBoxCount
and a
jr z, .EmptyBox
@@ -2533,12 +2533,12 @@ BillsPC_ChangeBoxSubmenu: ; e36f9 (38:76f9)
and a
ret
-.EmptyBox
+.EmptyBox:
call BillsPC_PlaceEmptyBoxString_SFX
and a
ret
-.Switch
+.Switch:
ld a, [MenuSelection]
dec a
ld e, a
@@ -2548,7 +2548,7 @@ BillsPC_ChangeBoxSubmenu: ; e36f9 (38:76f9)
callba ChangeBoxSaveGame
ret
-.Name
+.Name:
ld b, $4 ; box
ld de, wd002
callba NamingScreen
diff --git a/engine/billspctop.asm b/engine/billspctop.asm
new file mode 100755
index 000000000..115c90385
--- /dev/null
+++ b/engine/billspctop.asm
@@ -0,0 +1,388 @@
+_BillsPC: ; e3fd
+ call .CheckCanUsePC
+ ret c
+ call .LogIn
+ call .UseBillsPC
+ jp .LogOut
+
+.CheckCanUsePC: ; e40a (3:640a)
+ ld a, [PartyCount]
+ and a
+ ret nz
+ ld hl, .Text_GottaHavePokemon
+ call MenuTextBoxBackup
+ scf
+ ret
+
+.Text_GottaHavePokemon: ; 0xe417
+ ; You gotta have #MON to call!
+ text_jump UnknownText_0x1c1006
+ db "@"
+
+.LogIn: ; e41c (3:641c)
+ xor a
+ ld [hBGMapMode], a
+ call LoadStandardMenuDataHeader
+ call ClearPCItemScreen
+ ld hl, Options
+ ld a, [hl]
+ push af
+ set NO_TEXT_SCROLL, [hl]
+ ld hl, .Text_What
+ call PrintText
+ pop af
+ ld [Options], a
+ call LoadFontsBattleExtra
+ ret
+
+.Text_What: ; 0xe43a
+ ; What?
+ text_jump UnknownText_0x1c1024
+ db "@"
+
+.LogOut: ; e43f (3:643f)
+ call CloseSubmenu
+ ret
+
+.UseBillsPC: ; e443 (3:6443)
+ ld hl, .MenuDataHeader
+ call LoadMenuDataHeader
+ ld a, $1
+.loop
+ ld [wMenuCursorBuffer], a
+ call SetPalettes
+ xor a
+ ld [wWhichIndexSet], a
+ ld [hBGMapMode], a
+ call DoNthMenu
+ jr c, .cancel
+ ld a, [wMenuCursorBuffer]
+ push af
+ ld a, [MenuSelection]
+ ld hl, .Jumptable
+ rst JumpTable
+ pop bc
+ ld a, b
+ jr nc, .loop
+.cancel
+ call CloseWindow
+ ret
+
+.MenuDataHeader: ; 0xe46f
+ db $40 ; flags
+ db 00, 00 ; start coords
+ db 17, 19 ; end coords
+ dw .MenuData2
+ db 1 ; default option
+
+.MenuData2: ; 0xe477
+ db $80 ; flags
+ db 0 ; items
+ dw .items
+ dw PlaceMenuStrings
+ dw .strings
+
+.strings ; e47f
+ db "WITHDRAW <PK><MN>@"
+ db "DEPOSIT <PK><MN>@"
+ db "CHANGE BOX@"
+ db "MOVE <PK><MN> W/O MAIL@"
+ db "SEE YA!@"
+
+.Jumptable: ; e4ba (3:64ba)
+ dw BillsPC_WithdrawMenu
+ dw BillsPC_DepositMenu
+ dw BillsPC_ChangeBoxMenu
+ dw BillsPC_MovePKMNMenu
+ dw BillsPC_SeeYa
+
+.items ; e4c4
+ db 5
+ db 0 ; WITHDRAW
+ db 1; DEPOSIT
+ db 2 ; CHANGE BOX
+ db 3 ; MOVE PKMN
+ db 4 ; SEE YA!
+ db -1
+
+BillsPC_SeeYa: ; e4cb
+ scf
+ ret
+
+BillsPC_MovePKMNMenu: ; e4cd
+ call LoadStandardMenuDataHeader
+ callba IsAnyMonHoldingMail
+ jr nc, .no_mail
+ ld hl, .Text_MonHoldingMail
+ call PrintText
+ jr .quit
+
+.no_mail
+ callba StartMovePkmnWOMail_SaveGame
+ jr c, .quit
+ callba _MovePKMNWithoutMail
+ call ReturnToMapFromSubmenu
+ call ClearPCItemScreen
+
+.quit
+ call CloseWindow
+ and a
+ ret
+
+.Text_MonHoldingMail: ; 0xe4f9
+ ; There is a #MON holding MAIL. Please remove the MAIL.
+ text_jump UnknownText_0x1c102b
+ db "@"
+
+BillsPC_DepositMenu: ; e4fe (3:64fe)
+ call LoadStandardMenuDataHeader
+ callba _DepositPKMN
+ call ReturnToMapFromSubmenu
+ call ClearPCItemScreen
+ call CloseWindow
+ and a
+ ret
+
+Functione512: ; unused
+ ld a, [PartyCount]
+ and a
+ jr z, .no_pkmn
+ cp 2
+ jr c, .only_one_pkmn
+ and a
+ ret
+
+.no_pkmn
+ ld hl, .Text_NoPKMN
+ call MenuTextBoxBackup
+ scf
+ ret
+
+.only_one_pkmn
+ ld hl, .Text_ItsYourLastPKMN
+ call MenuTextBoxBackup
+ scf
+ ret
+
+.Text_NoPKMN: ; 0xe52e
+ ; You don't have a single #MON!
+ text_jump UnknownText_0x1c1062
+ db "@"
+
+.Text_ItsYourLastPKMN: ; 0xe533
+ ; You can't deposit your last #MON!
+ text_jump UnknownText_0x1c1080
+ db "@"
+
+CheckCurPartyMonFainted: ; e538
+ ld hl, PartyMon1HP
+ ld de, PARTYMON_STRUCT_LENGTH
+ ld b, $0
+.loop
+ ld a, [CurPartyMon]
+ cp b
+ jr z, .skip
+ ld a, [hli]
+ or [hl]
+ jr nz, .notfainted
+ dec hl
+
+.skip
+ inc b
+ ld a, [PartyCount]
+ cp b
+ jr z, .done
+ add hl, de
+ jr .loop
+
+.done
+ scf
+ ret
+
+.notfainted
+ and a
+ ret
+
+BillsPC_WithdrawMenu: ; e559 (3:6559)
+ call LoadStandardMenuDataHeader
+ callba _WithdrawPKMN
+ call ReturnToMapFromSubmenu
+ call ClearPCItemScreen
+ call CloseWindow
+ and a
+ ret
+
+Functione56d: ; unused
+ ld a, [PartyCount]
+ cp PARTY_LENGTH
+ jr nc, .asm_e576
+ and a
+ ret
+
+.asm_e576
+ ld hl, UnknownText_0xe57e
+ call MenuTextBoxBackup
+ scf
+ ret
+
+UnknownText_0xe57e: ; 0xe57e
+ ; You can't take any more #MON.
+ text_jump UnknownText_0x1c10a2
+ db "@"
+
+BillsPC_ChangeBoxMenu: ; e583 (3:6583)
+ callba _ChangeBox
+ and a
+ ret
+
+ClearPCItemScreen: ; e58b
+ call DisableSpriteUpdates
+ xor a
+ ld [hBGMapMode], a
+ call ClearBGPalettes
+ call ClearSprites
+ hlcoord 0, 0
+ ld bc, SCREEN_HEIGHT * SCREEN_WIDTH
+ ld a, " "
+ call ByteFill
+ hlcoord 0,0
+ lb bc, 10, 18
+ call TextBox
+ hlcoord 0,12
+ lb bc, 4, 18
+ call TextBox
+ call WaitBGMap2
+ call SetPalettes ; load regular palettes?
+ ret
+
+CopyBoxmonToTempMon: ; e5bb
+ ld a, [CurPartyMon]
+ ld hl, sBoxMon1Species
+ ld bc, BOXMON_STRUCT_LENGTH
+ call AddNTimes
+ ld de, TempMonSpecies
+ ld bc, BOXMON_STRUCT_LENGTH
+ ld a, BANK(sBoxMon1Species)
+ call GetSRAMBank
+ call CopyBytes
+ call CloseSRAM
+ ret
+
+Functione5d9: ; unreferenced
+ ld a, [wCurBox]
+ cp b
+ jr z, .same_box
+ ld a, b
+ ld hl, .BoxAddrs
+ ld bc, 3
+ call AddNTimes
+ ld a, [hli]
+ push af
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ pop af
+ jr .okay
+
+.same_box
+ ld a, BANK(sBoxCount)
+ ld hl, sBoxCount
+
+.okay
+ call GetSRAMBank
+ ld a, [hl]
+ ld bc, 1 + MONS_PER_BOX + 1
+ add hl, bc
+ ld b, a
+ ld c, $0
+ ld de, wc608
+ ld a, b
+ and a
+ jr z, .empty_box
+.loop
+ push hl
+ push bc
+ ld a, c
+ ld bc, 0
+ add hl, bc
+ ld bc, BOXMON_STRUCT_LENGTH
+ call AddNTimes
+ ld a, [hl]
+ ld [de], a
+ inc de
+ ld [CurSpecies], a
+ call GetBaseData
+ pop bc
+ pop hl
+
+ push hl
+ push bc
+ ld a, c
+ ld bc, MONS_PER_BOX * (BOXMON_STRUCT_LENGTH + NAME_LENGTH)
+ add hl, bc
+ call SkipNames
+ call CopyBytes
+ pop bc
+ pop hl
+
+ push hl
+ push bc
+ ld a, c
+ ld bc, MON_LEVEL
+ add hl, bc
+ ld bc, BOXMON_STRUCT_LENGTH
+ call AddNTimes
+ ld a, [hl]
+ ld [de], a
+ inc de
+ pop bc
+ pop hl
+
+ push hl
+ push bc
+ ld a, c
+ ld bc, MON_DVS
+ add hl, bc
+ ld bc, BOXMON_STRUCT_LENGTH
+ call AddNTimes
+ ld a, [hli]
+ and $f0
+ ld b, a
+ ld a, [hl]
+ and $f0
+ swap a
+ or b
+ ld b, a
+ ld a, [BaseGender]
+ cp b
+ ld a, $1
+ jr c, .okay2
+ xor a
+.okay2
+ ld [de], a
+ inc de
+ pop bc
+ pop hl
+
+ inc c
+ dec b
+ jr nz, .loop
+.empty_box
+ call CloseSRAM
+ ret
+
+.BoxAddrs: ; e66e
+ dba sBox1
+ dba sBox2
+ dba sBox3
+ dba sBox4
+ dba sBox5
+ dba sBox6
+ dba sBox7
+ dba sBox8
+ dba sBox9
+ dba sBox10
+ dba sBox11
+ dba sBox12
+ dba sBox13
+ dba sBox14
diff --git a/engine/breeding/egg.asm b/engine/breeding/egg.asm
index cfe4d9a1c..b6f41743e 100755
--- a/engine/breeding/egg.asm
+++ b/engine/breeding/egg.asm
@@ -166,11 +166,11 @@ CheckBreedmonCompatibility: ; 16e1d
cp c
jr z, .Compatible
-.Incompatible
+.Incompatible:
and a
ret
-.Compatible
+.Compatible:
scf
ret
; 16f3e
@@ -215,7 +215,7 @@ HatchEggs: ; 16f70 (5:6f70)
xor a
ld [CurPartyMon], a
-.loop: ; 16f7a (5:6f7a)
+.loop ; 16f7a (5:6f7a)
ld a, [de]
inc de
cp -1
@@ -348,7 +348,7 @@ HatchEggs: ; 16f70 (5:6f70)
ld bc, PKMN_NAME_LENGTH
call CopyBytes
-.next: ; 1707d (5:707d)
+.next ; 1707d (5:707d)
ld hl, CurPartyMon
inc [hl]
pop hl
@@ -357,7 +357,7 @@ HatchEggs: ; 16f70 (5:6f70)
pop de
jp .loop
-.done: ; 1708a (5:708a)
+.done ; 1708a (5:708a)
ret
; 1708b (5:708b)
@@ -989,7 +989,7 @@ DayCareMonPrintEmptyString: ; 174b5
ret
; 174b9
-.string: ; 174b9
+.string ; 174b9
db "@"
; 174ba
diff --git a/engine/buena_phone_scripts.asm b/engine/buena_phone_scripts.asm
index 0aad5e0ba..858ce5540 100644
--- a/engine/buena_phone_scripts.asm
+++ b/engine/buena_phone_scripts.asm
@@ -21,12 +21,12 @@ BuenaPhoneScript_CheckTimeOfDay1:
buttonsound
end
-.morn:
+.morn
writetext UnknownText_0xa0c28
buttonsound
end
-.day:
+.day
writetext UnknownText_0xa0c72
buttonsound
end
@@ -46,12 +46,12 @@ BuenaPhoneScript_CheckTimeOfDay2:
buttonsound
end
-.morn:
+.morn
writetext UnknownText_0xa0d96
buttonsound
end
-.day:
+.day
writetext UnknownText_0xa0dcf
buttonsound
end
@@ -90,62 +90,62 @@ BuenaPhoneScript_Random2:
if_equal 12, .twelve
if_equal 13, .thirteen
-.zero:
+.zero
writetext UnknownText_0xa0efb
jump .finish
-.one:
+.one
writetext UnknownText_0xa0fcf
jump .finish
-.two:
+.two
writetext UnknownText_0xa109d
jump .finish
-.three:
+.three
writetext UnknownText_0xa1143
jump .finish
-.four:
+.four
writetext UnknownText_0xa1244
jump .finish
-.five:
+.five
writetext UnknownText_0xa1318
jump .finish
-.six:
+.six
writetext UnknownText_0xa13d8
jump .finish
-.seven:
+.seven
writetext UnknownText_0xa1488
jump .finish
-.eight:
+.eight
writetext UnknownText_0xa15de
jump .finish
-.nine:
+.nine
writetext UnknownText_0xa1717
jump .finish
-.ten:
+.ten
writetext UnknownText_0xa183d
jump .finish
-.eleven:
+.eleven
writetext UnknownText_0xa19b1
jump .finish
-.twelve:
+.twelve
writetext UnknownText_0xa1ac0
jump .finish
-.thirteen:
+.thirteen
writetext UnknownText_0xa1bed
-.finish:
+.finish
end
BuenaPhoneScript_Random1:
@@ -154,15 +154,15 @@ BuenaPhoneScript_Random1:
if_equal 1, .one
if_equal 2, .two
-.zero:
+.zero
writetext UnknownText_0xa1c88
end
-.one:
+.one
writetext UnknownText_0xa1d5f
end
-.two:
+.two
writetext UnknownText_0xa1e2f
end
; a0c28
diff --git a/engine/card_flip.asm b/engine/card_flip.asm
index 9aeb94aec..2c334fc25 100755
--- a/engine/card_flip.asm
+++ b/engine/card_flip.asm
@@ -50,7 +50,7 @@ _CardFlip: ; e00ee (38:40ee)
ld [wCardFlipCursorX], a
ld de, MUSIC_GAME_CORNER
call PlayMusic
-.MasterLoop
+.MasterLoop:
ld a, [wJumptableIndex]
bit 7, a
jr nz, .leavethegame
@@ -81,7 +81,7 @@ endr
; e01a0 (38:41a0)
.Jumptable: ; e01a0
-
+
dw .AskPlayWithThree
dw .DeductCoins
dw .ChooseACard
@@ -107,7 +107,7 @@ endr
call .Increment
ret
-.SaidNo
+.SaidNo:
ld a, 7
ld [wJumptableIndex], a
ret
@@ -311,7 +311,7 @@ endr
call .Increment
ret
-.Continue
+.Continue:
ld a, [wCardFlipNumCardsPlayed]
inc a
ld [wCardFlipNumCardsPlayed], a
@@ -325,10 +325,10 @@ endr
call PrintText
jr .LoopAround
-.KeepTheCurrentDeck
+.KeepTheCurrentDeck:
call CardFlip_BlankDiscardedCardSlot
-.LoopAround
+.LoopAround:
ld a, 1
ld [wJumptableIndex], a
ret
@@ -401,7 +401,7 @@ GetCoordsOfChosenCard: ; e03ac
bcpixel 2, 3
jr .done
-.BottomCard
+.BottomCard:
hlcoord 2, 6
bcpixel 8, 3
@@ -659,7 +659,7 @@ CardFlip_BlankDiscardedCardSlot: ; e0534
; e0553
.Jumptable: ; e0553
-
+
dw .Level1
dw .Level2
dw .Level3
@@ -848,7 +848,7 @@ CardFlip_CheckWinCondition: ; e0637
; e0643
.Jumptable: ; e0643
-
+
dw .Impossible
dw .Impossible
dw .PikaJiggly
@@ -1270,7 +1270,7 @@ ChooseCard_HandleJoypad: ; e089c
ret
; e08b8
-.d_left: ; e08b8
+.d_left ; e08b8
ld hl, wCardFlipCursorX
ld a, [wCardFlipCursorY]
and a
@@ -1309,7 +1309,7 @@ endr
jp .play_sound
; e08ef
-.d_right: ; e08ef
+.d_right ; e08ef
ld hl, wCardFlipCursorX
ld a, [wCardFlipCursorY]
and a
@@ -1331,7 +1331,7 @@ rept 2
endr
jr .play_sound
-.d_up: ; e090a
+.d_up ; e090a
ld hl, wCardFlipCursorY
ld a, [wCardFlipCursorX]
and a
@@ -1369,7 +1369,7 @@ endr
ld [wCardFlipCursorX], a
jr .play_sound
-.d_down: ; e093d
+.d_down ; e093d
ld hl, wCardFlipCursorY
ld a, [wCardFlipCursorX]
and a
@@ -1391,7 +1391,7 @@ rept 2
inc [hl]
endr
-.play_sound: ; e0959
+.play_sound ; e0959
ld de, SFX_POKEBALLS_PLACED_ON_TABLE
call PlaySFX
ret
@@ -1684,7 +1684,7 @@ CardFlip_InitAttrPals: ; e0c37 (38:4c37)
ret
; e0c93 (38:4c93)
-.palettes: ; e0c93
+.palettes ; e0c93
RGB 31, 31, 31
RGB 17, 07, 31
RGB 06, 19, 08
diff --git a/engine/clock_reset.asm b/engine/clock_reset.asm
index 20f46ce12..546cc8c13 100755
--- a/engine/clock_reset.asm
+++ b/engine/clock_reset.asm
@@ -220,7 +220,7 @@ RestartClock: ; 20021 (8:4021)
ret
; 20160 (8:4160)
-.unreferenced: ; 20160
+.unreferenced ; 20160
ld a, [Buffer3]
ld b, a
call Coord2Tile
diff --git a/engine/color.asm b/engine/color.asm
index 57f616955..faf102867 100644
--- a/engine/color.asm
+++ b/engine/color.asm
@@ -5,10 +5,8 @@ SHINY_ATK_BIT EQU 5
SHINY_DEF_VAL EQU 10
SHINY_SPD_VAL EQU 10
SHINY_SPC_VAL EQU 10
-LO_NYBBLE EQU $0f
-HI_NYBBLE EQU $f0
-CheckShininess: ; 8a68
+CheckShininess:
; Check if a mon is shiny by DVs at bc.
; Return carry if shiny.
@@ -22,33 +20,31 @@ CheckShininess: ; 8a68
; Defense
ld a, [hli]
- and LO_NYBBLE
+ and $f
cp SHINY_DEF_VAL
jr nz, .NotShiny
; Speed
ld a, [hl]
- and HI_NYBBLE
+ and $f0
cp SHINY_SPD_VAL << 4
jr nz, .NotShiny
; Special
ld a, [hl]
- and LO_NYBBLE
+ and $f
cp SHINY_SPC_VAL
jr nz, .NotShiny
-.Shiny
+.Shiny:
scf
ret
-.NotShiny
+.NotShiny:
and a
ret
-; 8a88
-
-CheckContestMon: ; 8a88
+CheckContestMon:
; Check a mon's DVs at hl in the bug catching contest.
; Return carry if its DVs are good enough to place in the contest.
@@ -59,7 +55,7 @@ CheckContestMon: ; 8a88
; Defense
ld a, [hli]
- and LO_NYBBLE
+ and $f
cp 10
jr c, .Bad
@@ -70,21 +66,19 @@ CheckContestMon: ; 8a88
; Special
ld a, [hl]
- and LO_NYBBLE
+ and $f
cp 10
jr c, .Bad
-.Good
+.Good:
scf
ret
-.Bad
+.Bad:
and a
ret
-; 8aa4
-
-Function8aa4: ; 8aa4
+Function8aa4:
push de
push bc
ld hl, PalPacket_9ce6
@@ -106,16 +100,13 @@ Function8aa4: ; 8aa4
ld hl, BlkPacket_9a86
call Function9809
ret
-; 8ad1
-
-InitPartyMenuPalettes: ; 8ad1
+InitPartyMenuPalettes:
ld hl, PalPacket_9c56 + 1
call CopyFourPalettes
call InitPartyMenuOBPals
call WipeAttrMap
ret
-; 8ade
SGB_ApplyPartyMenuHPPals: ; 8ade SGB layout $fc
ld hl, wHPPals
@@ -142,9 +133,8 @@ SGB_ApplyPartyMenuHPPals: ; 8ade SGB layout $fc
pop de
ld [hl], e
ret
-; 8b07
-Function8b07: ; 8b07
+Function8b07:
; Unreferenced
call CheckCGB
ret z
@@ -165,21 +155,19 @@ Function8b07: ; 8b07
ld [hCGBPalUpdate], a
ret
-.BGPal
+.BGPal:
RGB 31, 31, 31
RGB 18, 23, 31
RGB 15, 20, 31
RGB 00, 00, 00
-.OBPal
+.OBPal:
RGB 31, 31, 31
RGB 31, 31, 12
RGB 08, 16, 28
RGB 00, 00, 00
-; 8b3f
-
-Function8b3f: ; 8b3f
+Function8b3f:
; Unreferenced
call CheckCGB
ret nz
@@ -188,9 +176,8 @@ Function8b3f: ; 8b3f
ret z
ld hl, BlkPacket_9a86
jp Function9809
-; 8b4d
-Function8b4d: ; 8b4d
+Function8b4d:
call CheckCGB
jr nz, .cgb
ld a, [hSGB]
@@ -204,9 +191,8 @@ Function8b4d: ; 8b4d
ld a, $3b
call GetPredefPal
jp LoadHLPaletteIntoDE
-; 8b67
-Function8b67: ; 8b67
+Function8b67:
call CheckCGB
jr nz, .cgb
ld a, [hSGB]
@@ -220,9 +206,8 @@ Function8b67: ; 8b67
ld a, $3c
call GetPredefPal
jp LoadHLPaletteIntoDE
-; 8b81
-Function8b81: ; 8b81
+Function8b81:
call CheckCGB
jr nz, .asm_8bb2
ld a, [hSGB]
@@ -253,9 +238,8 @@ Function8b81: ; 8b81
call GetMonPalettePointer_
call LoadPalette_White_Col1_Col2_Black
ret
-; 8bbd
-Function8bbd: ; 8bbd
+Function8bbd:
ld a, [TrainerClass]
call GetTrainerPalettePointer
ld a, e
@@ -290,9 +274,8 @@ asm_8bd7
pop hl
call LoadPalette_White_Col1_Col2_Black
ret
-; 8bec
-Function8bec: ; 8bec
+Function8bec:
ld a, [hCGB]
and a
jr nz, .asm_8bf7
@@ -321,9 +304,8 @@ Function8bec: ; 8bec
call FillBoxCGB
call LoadEDTile
ret
-; 8c1d
-ApplyMonOrTrainerPals: ; 8c1d
+ApplyMonOrTrainerPals:
call CheckCGB
ret z
ld a, e
@@ -344,9 +326,8 @@ ApplyMonOrTrainerPals: ; 8c1d
call ApplyAttrMap
call ApplyPals
ret
-; 8c43
-ApplyHPBarPals: ; 8c43
+ApplyHPBarPals:
ld a, [wWhichHPBar]
and a
jr z, .Enemy
@@ -356,11 +337,11 @@ ApplyHPBarPals: ; 8c43
jr z, .PartyMenu
ret
-.Enemy
+.Enemy:
ld de, BGPals + 2 palettes + 2
jr .okay
-.Player
+.Player:
ld de, BGPals + 3 palettes + 2
.okay
@@ -377,7 +358,7 @@ ApplyHPBarPals: ; 8c43
ld [hCGBPalUpdate], a
ret
-.PartyMenu
+.PartyMenu:
ld e, c
inc e
hlcoord 11, 1, AttrMap
@@ -395,9 +376,8 @@ ApplyHPBarPals: ; 8c43
ld a, e
call FillBoxCGB
ret
-; 8c8a
-LoadStatsScreenPals: ; 8c8a
+LoadStatsScreenPals:
call CheckCGB
ret z
ld hl, StatsScreenPals
@@ -420,9 +400,8 @@ LoadStatsScreenPals: ; 8c8a
call ApplyPals
ld a, $1
ret
-; 8cb4
-Function8cb4: ; 8cb4
+Function8cb4:
ld l, e
ld h, 0
rept 3
@@ -463,9 +442,8 @@ endr
call WipeAttrMap
call ApplyAttrMap
ret
-; 8d05
-Palettes_8d05: ; 8d05
+Palettes_8d05:
RGB 20, 31, 11
RGB 31, 19, 00
RGB 31, 10, 09
@@ -516,12 +494,9 @@ Palettes_8d05: ; 8d05
RGB 00, 21, 00
RGB 00, 00, 00
-; 8d55
-
INCLUDE "predef/cgb.asm"
-
-Function95f0: ; 95f0
+Function95f0:
ld hl, Palette_9608
ld de, UnknBGPals
ld bc, 8
@@ -531,22 +506,18 @@ Function95f0: ; 95f0
call WipeAttrMap
call ApplyAttrMap
ret
-; 9608
-Palette_9608: ; 9608
+Palette_9608:
RGB 31, 31, 31
RGB 09, 31, 31
RGB 10, 12, 31
RGB 00, 03, 19
-; 9610
-
-
-CopyFourPalettes: ; 9610
+CopyFourPalettes:
ld de, UnknBGPals
ld c, $4
-CopyPalettes: ; 9615
+CopyPalettes:
.loop
push bc
ld a, [hli]
@@ -559,9 +530,8 @@ CopyPalettes: ; 9615
dec c
jr nz, .loop
ret
-; 9625
-GetPredefPal: ; 9625
+GetPredefPal:
ld l, a
ld h, $0
rept 3 ; multiply by 8
@@ -570,9 +540,8 @@ endr
ld bc, Palettes_9df6
add hl, bc
ret
-; 9630
-LoadHLPaletteIntoDE: ; 9630
+LoadHLPaletteIntoDE:
ld a, [rSVBK]
push af
ld a, $5
@@ -587,9 +556,8 @@ LoadHLPaletteIntoDE: ; 9630
pop af
ld [rSVBK], a
ret
-; 9643
-LoadPalette_White_Col1_Col2_Black: ; 9643
+LoadPalette_White_Col1_Col2_Black:
ld a, [rSVBK]
push af
ld a, $5
@@ -619,9 +587,8 @@ LoadPalette_White_Col1_Col2_Black: ; 9643
pop af
ld [rSVBK], a
ret
-; 9663
-FillBoxCGB: ; 9663
+FillBoxCGB:
.row
push bc
push hl
@@ -636,9 +603,8 @@ FillBoxCGB: ; 9663
dec b
jr nz, .row
ret
-; 9673
-Function9673: ; 9673
+Function9673:
push af
push bc
push de
@@ -667,27 +633,23 @@ endr
pop bc
pop af
ret
-; 9699
-
-WipeAttrMap: ; 9699
+WipeAttrMap:
hlcoord 0, 0, AttrMap
ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
xor a
call ByteFill
ret
-; 96a4
-ApplyPals: ; 96a4
+ApplyPals:
ld hl, UnknBGPals
ld de, BGPals
ld bc, 16 palettes
ld a, $5
call FarCopyWRAM
ret
-; 96b3
-ApplyAttrMap: ; 96b3
+ApplyAttrMap:
ld a, [rLCDC]
bit 7, a
jr z, .UpdateVBank1
@@ -703,7 +665,7 @@ ApplyAttrMap: ; 96b3
ld [hBGMapMode], a
ret
-.UpdateVBank1
+.UpdateVBank1:
hlcoord 0, 0, AttrMap
debgcoord 0, 0
ld b, SCREEN_HEIGHT
@@ -728,7 +690,6 @@ ApplyAttrMap: ; 96b3
ld a, $0
ld [rVBK], a
ret
-; 96f3
CGB_ApplyPartyMenuHPPals: ; 96f3 CGB layout $fc
ld hl, wHPPals
@@ -755,19 +716,16 @@ CGB_ApplyPartyMenuHPPals: ; 96f3 CGB layout $fc
ld a, e
call FillBoxCGB
ret
-; 971a
-
-InitPartyMenuOBPals: ; 971a
+InitPartyMenuOBPals:
ld hl, Palettes_b681
ld de, UnknOBPals
ld bc, 2 palettes
ld a, $5
call FarCopyWRAM
ret
-; 9729
-GetBattlemonBackpicPalettePointer: ; 9729
+GetBattlemonBackpicPalettePointer:
push de
callba GetPartyMonDVs
ld c, l
@@ -776,9 +734,8 @@ GetBattlemonBackpicPalettePointer: ; 9729
call GetPlayerOrMonPalettePointer
pop de
ret
-; 973a
-GetEnemyFrontpicPalettePointer: ; 973a
+GetEnemyFrontpicPalettePointer:
push de
callba GetEnemyMonDVs
ld c, l
@@ -787,9 +744,8 @@ GetEnemyFrontpicPalettePointer: ; 973a
call GetFrontpicPalettePointer
pop de
ret
-; 974b
-GetPlayerOrMonPalettePointer: ; 974b
+GetPlayerOrMonPalettePointer:
and a
jp nz, GetMonNormalOrShinyPalettePointer
ld a, [wPlayerSpriteSetupFlags]
@@ -804,14 +760,13 @@ GetPlayerOrMonPalettePointer: ; 974b
.male
ld hl, PlayerPalette
ret
-; 9764
-GetFrontpicPalettePointer: ; 9764
+GetFrontpicPalettePointer:
and a
jp nz, GetMonNormalOrShinyPalettePointer
ld a, [TrainerClass]
-GetTrainerPalettePointer: ; 976b
+GetTrainerPalettePointer:
ld l, a
ld h, 0
add hl,hl
@@ -819,14 +774,12 @@ GetTrainerPalettePointer: ; 976b
ld bc, TrainerPalettes
add hl, bc
ret
-; 9775
-GetMonPalettePointer_: ; 9775
+GetMonPalettePointer_:
call GetMonPalettePointer
ret
-; 9779
-Function9779: mobile ; 9779
+Function9779: mobile
call CheckCGB
ret z
ld hl, Palettes_979c
@@ -844,9 +797,8 @@ Function9779: mobile ; 9779
ld a, $5
call FarCopyWRAM
ret
-; 979c
-Palettes_979c: ; 979c
+Palettes_979c:
RGB 31, 31, 31
RGB 25, 25, 25
RGB 13, 13, 13
@@ -877,9 +829,7 @@ Palettes_979c: ; 979c
RGB 20, 15, 03
RGB 00, 00, 00
-; 97cc
-
-Function97cc: ; 97cc
+Function97cc:
call CheckCGB
ret z
ld a, $90
@@ -891,9 +841,8 @@ Function97cc: ; 97cc
call GetPredefPal
call Function97e5
ret
-; 97e5
-Function97e5: ; 97e5
+Function97e5:
ld c, 1 palettes
.loop
ld a, [hli]
@@ -901,9 +850,8 @@ Function97e5: ; 97e5
dec c
jr nz, .loop
ret
-; 97ee
-GetMonPalettePointer: ; 97ee
+GetMonPalettePointer:
ld l, a
ld h, $0
rept 3
@@ -912,9 +860,8 @@ endr
ld bc, PokemonPalettes
add hl, bc
ret
-; 97f9
-GetMonNormalOrShinyPalettePointer: ; 97f9
+GetMonNormalOrShinyPalettePointer:
push bc
call GetMonPalettePointer
pop bc
@@ -926,9 +873,8 @@ rept 4
inc hl
endr
ret
-; 9809
-Function9809: ; 9809
+Function9809:
ld a, [wcfbe]
push af
set 7, a
@@ -937,9 +883,8 @@ Function9809: ; 9809
pop af
ld [wcfbe], a
ret
-; 981a
-PushSGBPals: ; 981a
+PushSGBPals:
ld a, [hl]
and $7
ret z
@@ -978,9 +923,8 @@ PushSGBPals: ; 981a
dec b
jr nz, .loop
ret
-; 9853
-Function9853: ; 9853
+Function9853:
call CheckCGB
ret nz
di
@@ -1010,10 +954,8 @@ Function9853: ; 9853
ld [wcfbe], a
ei
ret
-; 9890
-
-Function9890:: ; 9890
+Function9890::
call CheckCGB
ret z
ld a, $1
@@ -1056,7 +998,7 @@ Function9890:: ; 9890
ld [rSVBK], a
ret
-.LoadWhitePals
+.LoadWhitePals:
ld c, 4 * 16
.loop
ld a, $7fff % $100
@@ -1066,9 +1008,8 @@ Function9890:: ; 9890
dec c
jr nz, .loop
ret
-; 98eb
-Function98eb: ; 98eb
+Function98eb:
ld hl, .PalPacketPointerTable
ld c, 9
.loop
@@ -1084,9 +1025,8 @@ Function98eb: ; 98eb
dec c
jr nz, .loop
ret
-; 98ff
-.PalPacketPointerTable: ; 98ff
+.PalPacketPointerTable:
dw PalPacket_9d56
dw PalPacket_9d76
dw PalPacket_9d86
@@ -1096,9 +1036,8 @@ Function98eb: ; 98eb
dw PalPacket_9dc6
dw PalPacket_9dd6
dw PalPacket_9de6
-; 9911
-Function9911: ; 9911
+Function9911:
di
xor a
ld [rJOYP], a
@@ -1111,32 +1050,28 @@ Function9911: ; 9911
call PushSGBPals
ei
ret
-; 992c
-Function992c: ; 992c
+Function992c:
call .LoadSGBBorderPointers
push de
call Function9a24
pop hl
call Function99d8
ret
-; 9938
-.LoadSGBBorderPointers: ; 9938
+.LoadSGBBorderPointers:
ld hl, SGBBorder
ld de, SGBBorderMap
ret
-; 993f
-Function993f: ; 993f
+Function993f:
ld hl, VTiles0
ld bc, $2000
xor a
call ByteFill
ret
-; 994a
-Function994a: ; 994a
+Function994a:
ld hl, PalPacket_9d26
call PushSGBPals
call SGBDelayCycles
@@ -1180,15 +1115,13 @@ endr
call Function99ab
scf
ret
-; 99ab
-Function99ab: ; 99ab
+Function99ab:
ld hl, PalPacket_9d16
call PushSGBPals
jp SGBDelayCycles
-; 99b4
-Function99b4: ; 99b4
+Function99b4:
call DisableLCD
ld a, $e4
ld [rBGP], a
@@ -1204,9 +1137,8 @@ Function99b4: ; 99b4
xor a
ld [rBGP], a
ret
-; 99d8
-Function99d8: ; 99d8
+Function99d8:
call DisableLCD
ld a, $e4
ld [rBGP], a
@@ -1239,9 +1171,8 @@ Function99d8: ; 99d8
xor a
ld [rBGP], a
ret
-; 9a24
-Function9a24: ; 9a24
+Function9a24:
call DisableLCD
ld a, %11100100
ld [rBGP], a
@@ -1264,7 +1195,6 @@ Function9a24: ; 9a24
xor a
ld [rBGP], a
ret
-; 9a52
CopyData: ; 0x9a52
; copy bc bytes of data from hl to de
@@ -1310,7 +1240,7 @@ DrawDefaultTiles: ; 0x9a64
ret
; 0x9a7a
-SGBDelayCycles: ; 9a7a
+SGBDelayCycles:
ld de, 7000
.wait
nop
@@ -1321,51 +1251,47 @@ SGBDelayCycles: ; 9a7a
or e
jr nz, .wait
ret
-; 9a86
-BlkPacket_9a86: ; 9a86
+BlkPacket_9a86:
db $21, $01, $03, $00, $00, $00, $13, $11, $00, $00, $00, $00, $00, $00, $00, $00
-BlkPacket_9a96: ; 9a96
+BlkPacket_9a96:
db $21, $01, $07, $05, $00, $0a, $13, $0d, $00, $00, $00, $00, $00, $00, $00, $00
-BlkPacket_9aa6: ; 9a86
+BlkPacket_9aa6:
db $22, $05, $07, $0a, $00, $0c, $13, $11, $03, $05, $01, $00, $0a, $03, $03, $00
db $0a, $08, $13, $0a, $03, $0a, $00, $04, $08, $0b, $03, $0f, $0b, $00, $13, $07
-BlkPacket_9ac6: ; 9a86
+BlkPacket_9ac6:
db $21, $01, $07, $05, $00, $01, $07, $07, $00, $00, $00, $00, $00, $00, $00, $00
-BlkPacket_9ad6: ; 9a86
+BlkPacket_9ad6:
db $21, $01, $07, $05, $0b, $01, $13, $02, $00, $00, $00, $00, $00, $00, $00, $00
-BlkPacket_9ae6: ; 9a86
+BlkPacket_9ae6:
db $21, $01, $07, $05, $01, $01, $08, $08, $00, $00, $00, $00, $00, $00, $00, $00
-BlkPacket_9af6: ; 9a86
+BlkPacket_9af6:
db $21, $01, $07, $05, $07, $05, $0d, $0b, $00, $00, $00, $00, $00, $00, $00, $00
-BlkPacket_9b06: ; 9a86
+BlkPacket_9b06:
db $22, $05, $03, $05, $00, $00, $13, $0b, $03, $0a, $00, $04, $13, $09, $02, $0f
db $00, $06, $13, $07, $03, $00, $04, $04, $0f, $09, $03, $00, $00, $0c, $13, $11
-BlkPacket_9b26: ; 9a86
+BlkPacket_9b26:
db $23, $07, $07, $10, $00, $00, $02, $0c, $02, $00, $0c, $00, $12, $01, $02, $00
db $0c, $02, $12, $03, $02, $00, $0c, $04, $12, $05, $02, $00, $0c, $06, $12, $07
db $02, $00, $0c, $08, $12, $09, $02, $00, $0c, $0a, $12, $0b, $00, $00, $00, $00
-BlkPacket_9b56: ; 9a86
+BlkPacket_9b56:
db $22, $03, $07, $20, $00, $00, $13, $04, $03, $0f, $00, $06, $13, $11, $03, $05
db $0f, $01, $12, $04, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
-BlkPacket_9b76: ; 9a86
+BlkPacket_9b76:
db $21, $01, $07, $10, $00, $00, $13, $05, $00, $00, $00, $00, $00, $00, $00, $00
-BlkPacket_9b86: ; 9a86
+BlkPacket_9b86:
db $21, $02, $07, $0a, $00, $04, $13, $0d, $03, $05, $00, $06, $13, $0b, $00, $00
-; 9b96
-
-; 9b96
PalPacket_9b96: db $51, $48, $00, $49, $00, $4a, $00, $4b, $00, $00, $00, $00, $00, $00, $00, $00
PalPacket_9ba6: db $51, $2b, $00, $24, $00, $20, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
@@ -1405,9 +1331,8 @@ PalPacket_9db6: db $79, $31, $08, $00, $0b, $0c, $a5, $ca, $c9, $7e, $d0, $06, $
PalPacket_9dc6: db $79, $26, $08, $00, $0b, $39, $cd, $48, $0c, $d0, $34, $a5, $c9, $c9, $80, $d0
PalPacket_9dd6: db $79, $1b, $08, $00, $0b, $ea, $ea, $ea, $ea, $ea, $a9, $01, $cd, $4f, $0c, $d0
PalPacket_9de6: db $79, $10, $08, $00, $0b, $4c, $20, $08, $ea, $ea, $ea, $ea, $ea, $60, $ea, $ea
-; 9df6
-Palettes_9df6: ; 9df6
+Palettes_9df6:
RGB 31, 31, 31
RGB 22, 25, 19
RGB 16, 21, 30
@@ -1803,9 +1728,7 @@ Palettes_9df6: ; 9df6
RGB 21, 21, 21
RGB 31, 31, 31
-; a06e
-
-SGBBorderMap: ; a06e
+SGBBorderMap:
db $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $14,$14, $15,$14, $16,$14, $17,$14, $17,$54, $16,$54, $15,$54, $14,$54, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14
db $01,$14, $02,$14, $03,$14, $03,$54, $02,$54, $01,$54, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $24,$14, $25,$14, $26,$14, $07,$14, $07,$54, $26,$54, $25,$54, $24,$54, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$54, $01,$14, $02,$14, $03,$14, $03,$54, $02,$54, $01,$54
db $11,$14, $12,$14, $13,$14, $13,$54, $12,$54, $11,$54, $10,$54, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $24,$14, $34,$14, $35,$14, $35,$54, $34,$54, $33,$54, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $10,$14, $11,$14, $12,$14, $13,$14, $13,$54, $12,$54, $11,$54
@@ -1834,9 +1757,8 @@ SGBBorderMap: ; a06e
db $25,$14, $26,$14, $07,$14, $07,$54, $26,$54, $25,$54, $24,$54, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $01,$14, $02,$14, $03,$14, $03,$54, $02,$54, $01,$54, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $24,$14, $25,$14, $26,$14, $07,$14, $07,$54, $26,$54, $25,$54
db $33,$14, $34,$14, $35,$14, $35,$54, $34,$54, $24,$54, $07,$54, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $10,$14, $11,$14, $12,$14, $13,$14, $13,$54, $12,$54, $11,$54, $10,$54, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $24,$14, $34,$14, $35,$14, $35,$54, $34,$54, $33,$54
db $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $20,$14, $21,$14, $22,$14, $23,$14, $23,$54, $22,$54, $21,$54, $20,$54, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14, $07,$14
-; a49e
-SGBBorderPalettes: ; a49e
+SGBBorderPalettes:
RGB 24, 06, 06
RGB 24, 24, 26
RGB 14, 15, 20
@@ -1917,13 +1839,10 @@ SGBBorderPalettes: ; a49e
RGB 31, 31, 25
RGB 31, 31, 25
-; a51e
-
-SGBBorder: ; a51e
+SGBBorder:
INCBIN "gfx/misc/sgb_border.2bpp"
-; a8be
-Palettes_a8be: ; a8be
+Palettes_a8be:
RGB 30, 26, 15
RGB 00, 23, 00
@@ -1933,23 +1852,19 @@ Palettes_a8be: ; a8be
RGB 30, 26, 15
RGB 31, 00, 00
-Palettes_a8ca: ; a8ca
+Palettes_a8ca:
RGB 30, 26, 15
RGB 04, 17, 31
-; a8ce
-; a8ce
INCLUDE "gfx/pics/palette_pointers.asm"
-; b0ce
-; b0ce
INCLUDE "gfx/trainers/palette_pointers.asm"
-; b1de
-LoadMapPals: ; b1de
+LoadMapPals:
callba LoadSpecialMapPalette
jr c, .got_pals
+ ; Which palette group is based on whether we're outside or inside
ld a, [wPermission]
and 7
ld e, a
@@ -1960,16 +1875,18 @@ LoadMapPals: ; b1de
ld a, [hli]
ld h, [hl]
ld l, a
+ ; Futher refine by time of day
ld a, [TimeOfDayPal]
and 3
-rept 3
add a
-endr
+ add a
+ add a
ld e, a
ld d, 0
add hl, de
ld e, l
ld d, h
+ ; Switch to palettes WRAM bank
ld a, [rSVBK]
push af
ld a, $5
@@ -1977,14 +1894,14 @@ endr
ld hl, UnknBGPals
ld b, 8
.outer_loop
- ld a, [de]
+ ld a, [de] ; lookup index for TilesetBGPalette
push de
push hl
ld l, a
ld h, 0
-rept 3
- add hl,hl
-endr
+ add hl, hl
+ add hl, hl
+ add hl, hl
ld de, TilesetBGPalette
add hl, de
ld e, l
@@ -2042,43 +1959,41 @@ endr
ld a, $5
call FarCopyWRAM
ret
-; b279
-
-.TilesetColorsPointers: ; b279
- dw TilesetColors1
- dw TilesetColors1
- dw TilesetColors1
- dw TilesetColors2
- dw TilesetColors3
- dw TilesetColors4
- dw TilesetColors2
- dw TilesetColors3
-; b289
-
-TilesetColors1: ; b289
- db $00, $01, $02, $28, $04, $05, $06, $07
- db $08, $09, $0a, $28, $0c, $0d, $0e, $0f
- db $10, $11, $12, $29, $14, $15, $16, $17
- db $18, $19, $1a, $1b, $1c, $1d, $1e, $1f
-
-TilesetColors2: ; b289
- db $20, $21, $22, $23, $24, $25, $26, $07
- db $20, $21, $22, $23, $24, $25, $26, $07
- db $10, $11, $12, $13, $14, $15, $16, $07
- db $18, $19, $1a, $1b, $1c, $1d, $1e, $07
-
-TilesetColors3: ; b289
- db $00, $01, $02, $03, $04, $05, $06, $07
- db $08, $09, $0a, $0b, $0c, $0d, $0e, $0f
- db $10, $11, $12, $13, $14, $15, $16, $17
- db $18, $19, $1a, $1b, $1c, $1d, $1e, $1f
-
-TilesetColors4: ; b289
- db $00, $01, $02, $03, $04, $05, $06, $07
- db $08, $09, $0a, $0b, $0c, $0d, $0e, $0f
- db $10, $11, $12, $13, $14, $15, $16, $17
- db $18, $19, $1a, $1b, $1c, $1d, $1e, $1f
-; b309
+
+.TilesetColorsPointers:
+ dw .OutdoorColors ; unused
+ dw .OutdoorColors ; TOWN
+ dw .OutdoorColors ; ROUTE
+ dw .IndoorColors ; INDOOR
+ dw .DungeonColors ; CAVE
+ dw .Perm5Colors ; PERM_5
+ dw .IndoorColors ; GATE
+ dw .DungeonColors ; DUNGEON
+
+; Valid indices: $00 - $29
+.OutdoorColors:
+ db $00, $01, $02, $28, $04, $05, $06, $07 ; morn
+ db $08, $09, $0a, $28, $0c, $0d, $0e, $0f ; day
+ db $10, $11, $12, $29, $14, $15, $16, $17 ; nite
+ db $18, $19, $1a, $1b, $1c, $1d, $1e, $1f ; dark
+
+.IndoorColors:
+ db $20, $21, $22, $23, $24, $25, $26, $07 ; morn
+ db $20, $21, $22, $23, $24, $25, $26, $07 ; day
+ db $10, $11, $12, $13, $14, $15, $16, $07 ; nite
+ db $18, $19, $1a, $1b, $1c, $1d, $1e, $07 ; dark
+
+.DungeonColors:
+ db $00, $01, $02, $03, $04, $05, $06, $07 ; morn
+ db $08, $09, $0a, $0b, $0c, $0d, $0e, $0f ; day
+ db $10, $11, $12, $13, $14, $15, $16, $17 ; nite
+ db $18, $19, $1a, $1b, $1c, $1d, $1e, $1f ; dark
+
+.Perm5Colors:
+ db $00, $01, $02, $03, $04, $05, $06, $07 ; morn
+ db $08, $09, $0a, $0b, $0c, $0d, $0e, $0f ; day
+ db $10, $11, $12, $13, $14, $15, $16, $17 ; nite
+ db $18, $19, $1a, $1b, $1c, $1d, $1e, $1f ; dark
Palette_b309: ; b309 mobile
RGB 31, 31, 31
@@ -2086,26 +2001,22 @@ Palette_b309: ; b309 mobile
RGB 30, 10, 06
RGB 00, 00, 00
-; b311
-
Palette_b311: ; b311 not mobile
RGB 31, 31, 31
RGB 17, 19, 31
RGB 14, 16, 31
RGB 00, 00, 00
-; b319
-
-TilesetBGPalette: ; b319
+TilesetBGPalette:
INCLUDE "tilesets/bg.pal"
-MapObjectPals:: ; b469
+MapObjectPals::
INCLUDE "tilesets/ob.pal"
-RoofPals: ; b569
+RoofPals:
INCLUDE "tilesets/roof.pal"
-Palettes_b641: ; b641
+Palettes_b641:
RGB 27, 31, 27
RGB 21, 21, 21
RGB 13, 13, 13
@@ -2146,9 +2057,7 @@ Palettes_b641: ; b641
RGB 07, 07, 12
RGB 00, 00, 00
-; b681
-
-Palettes_b681: ; b681
+Palettes_b681:
RGB 27, 31, 27
RGB 31, 19, 10
RGB 31, 07, 04
@@ -2219,8 +2128,7 @@ Palettes_b681: ; b681
RGB 20, 15, 03
RGB 07, 07, 07
-
-Palettes_b6f1: ; b6f1
+Palettes_b6f1:
RGB 31, 31, 31
RGB 18, 23, 31
RGB 15, 20, 31
@@ -2246,8 +2154,7 @@ Palettes_b6f1: ; b6f1
RGB 18, 23, 31
RGB 00, 00, 00
-
-Palettes_b719: ; b719
+Palettes_b719:
RGB 31, 31, 31
RGB 07, 06, 03
RGB 07, 06, 03
@@ -2258,9 +2165,7 @@ Palettes_b719: ; b719
RGB 26, 22, 00
RGB 00, 00, 00
-; b729
-
-MalePokegearPals: ; b729
+MalePokegearPals:
RGB 28, 31, 20
RGB 21, 21, 21
RGB 13, 13, 13
@@ -2291,9 +2196,7 @@ MalePokegearPals: ; b729
RGB 15, 07, 00
RGB 31, 00, 00
-; b759
-
-FemalePokegearPals: ; b759
+FemalePokegearPals:
RGB 28, 31, 20
RGB 21, 21, 21
RGB 13, 13, 13
@@ -2324,9 +2227,7 @@ FemalePokegearPals: ; b759
RGB 15, 07, 00
RGB 31, 00, 00
-; b789
-
-Palettes_b789: ; b789
+Palettes_b789:
RGB 31, 31, 31
RGB 30, 22, 24
RGB 18, 18, 18
@@ -2347,9 +2248,7 @@ Palettes_b789: ; b789
RGB 18, 18, 18
RGB 00, 00, 00
-; b7a9
-
-Palettes_b7a9: ; b7a9
+Palettes_b7a9:
RGB 31, 31, 31
RGB 24, 25, 28
RGB 24, 24, 09
@@ -2430,4 +2329,3 @@ Palettes_b7a9: ; b7a9
RGB 00, 00, 00
RGB 00, 00, 00
-; b829
diff --git a/engine/credits.asm b/engine/credits.asm
index fc5fb8818..9074b9c65 100644
--- a/engine/credits.asm
+++ b/engine/credits.asm
@@ -269,7 +269,7 @@ endr
.Jumptable: ; 109937 (42:5937)
-
+
dw ParseCredits
dw Credits_Next
dw Credits_Next
@@ -350,17 +350,17 @@ ParseCredits: ; 1099aa
ld hl, wJumptableIndex
bit 7, [hl]
jp nz, .done
-
+
; Wait until the timer has run out to parse the next command.
ld hl, CreditsTimer
ld a, [hl]
and a
jr z, .parse
-
+
; One tick has passed.
dec [hl]
jp .done
-
+
.parse
; First, let's clear the current text display,
; starting from line 5.
@@ -370,12 +370,12 @@ ParseCredits: ; 1099aa
ld bc, 20 * 12
ld a, " "
call ByteFill
-
+
; Then read the script.
-
+
.loop
call .get
-
+
; Commands:
cp CREDITS_END
jp z, .end
@@ -391,9 +391,9 @@ ParseCredits: ; 1099aa
jr z, .wait2
cp CREDITS_THEEND
jr z, .theend
-
+
; If it's not a command, it's a string identifier.
-
+
push af
ld e, a
ld d, 0
@@ -405,27 +405,27 @@ endr
ld d, [hl]
ld e, a
pop af
-
+
; Strings spanning multiple lines have special cases.
-
+
cp COPYRIGHT
jr z, .copyright
-
+
cp STAFF
jr c, .staff
-
+
; The rest start from line 6.
hlcoord 0, 6
jr .print
-
+
.copyright
hlcoord 2, 6
jr .print
-
+
.staff
hlcoord 0, 6
-
+
.print
; Print strings spaced every two lines.
call .get
@@ -433,12 +433,12 @@ endr
call AddNTimes
call PlaceString
jr .loop
-
+
.theend
; Display "The End" graphic.
call Credits_TheEnd
jr .loop
-
+
.scene
; Update the scene number and corresponding palette.
call .get
@@ -448,13 +448,13 @@ endr
call GetCreditsPalette
call SetPalettes ; update hw pal registers
jr .loop
-
+
.clear
; Clear the banner.
ld a, $ff
ld [wCreditsBorderFrame], a ; frame
jr .loop
-
+
.music
; Play the credits music.
ld de, MUSIC_CREDITS
@@ -465,26 +465,26 @@ endr
pop de
call PlayMusic
jp .loop
-
+
.wait2
; Wait for some amount of ticks.
call .get
ld [CreditsTimer], a
jr .done
-
+
.wait
; Wait for some amount of ticks, and do something else.
call .get
ld [CreditsTimer], a
-
+
xor a
ld [hBGMapThird], a
ld a, 1
ld [hBGMapMode], a
-
+
.done
jp Credits_Next
-
+
.end
; Stop execution.
ld hl, wJumptableIndex
@@ -507,7 +507,7 @@ endr
ld d, a
ld hl, CreditsScript
add hl, de
-
+
inc de
ld a, e
ld [CreditsPos], a
@@ -614,14 +614,14 @@ endr
GetCreditsPalette: ; 109b2c
call .GetPalAddress
-
+
push hl
ld a, 0
call .UpdatePals
pop hl
ret
-
-.GetPalAddress
+
+.GetPalAddress:
; Each set of palette data is 24 bytes long.
ld a, [wCreditsBorderMon] ; scene
and 3
@@ -635,10 +635,10 @@ GetCreditsPalette: ; 109b2c
add hl, de ; * 3
add hl, de
ret
-
-.UpdatePals
+
+.UpdatePals:
; Update the first three colors in both palette buffers.
-
+
push af
push hl
add UnknBGPals % $100
@@ -648,7 +648,7 @@ GetCreditsPalette: ; 109b2c
ld d, a
ld bc, 24
call CopyBytes
-
+
pop hl
pop af
add BGPals % $100
diff --git a/engine/crystal_intro.asm b/engine/crystal_intro.asm
index df3b297a3..2be7a375e 100755
--- a/engine/crystal_intro.asm
+++ b/engine/crystal_intro.asm
@@ -129,7 +129,7 @@ endr
jp [hl]
; e467f
-.dw: ; e467f
+.dw ; e467f
dw PlaceGameFreakPresents_0
dw PlaceGameFreakPresents_1
dw PlaceGameFreakPresents_2
@@ -154,7 +154,7 @@ PlaceGameFreakPresents_1: ; e468d
inc [hl]
ret
-.PlaceGameFreak
+.PlaceGameFreak:
ld [hl], 0
ld hl, .GAME_FREAK
decoord 5, 10
@@ -166,7 +166,7 @@ PlaceGameFreakPresents_1: ; e468d
ret
; e46af
-.GAME_FREAK
+.GAME_FREAK:
; G A M E _ F R E A K
db 0, 1, 2, 3, 13, 4, 5, 3, 1, 6
.end
@@ -383,7 +383,7 @@ CrystalIntro: ; e48ac
ld a, [hVBlank]
push af
call .InitRAMAddrs
-.loop: ; e48bc
+.loop ; e48bc
call JoyTextDelay
ld a, [hJoyLast]
and BUTTONS
@@ -396,7 +396,7 @@ CrystalIntro: ; e48ac
call DelayFrame
jp .loop
-.ShutOffMusic
+.ShutOffMusic:
ld de, MUSIC_NONE
call PlayMusic
@@ -547,7 +547,7 @@ IntroScene2: ; e49d6 (39:49d6)
ld de, SFX_INTRO_UNOWN_1
call PlaySFX
pop af
-.DontPlaySound
+.DontPlaySound:
ld [wcf65], a
xor a
call CrystalIntro_UnownFade
@@ -686,27 +686,27 @@ IntroScene6: ; e4af7 (39:4af7)
jr z, .FirstUnown
jr .NoUnown
-.FirstUnown
+.FirstUnown:
push af
depixel 7, 15
call CrystalIntro_InitUnownAnim
ld de, SFX_INTRO_UNOWN_2
call PlaySFX
pop af
-.NoUnown
+.NoUnown:
ld [wcf65], a
xor a
call CrystalIntro_UnownFade
ret
-.SecondUnown
+.SecondUnown:
push af
depixel 14, 6
call CrystalIntro_InitUnownAnim
ld de, SFX_INTRO_UNOWN_1
call PlaySFX
pop af
-.StopUnown
+.StopUnown:
ld [wcf65], a
ld a, $1
call CrystalIntro_UnownFade
@@ -1347,7 +1347,7 @@ IntroScene20: ; e5019 (39:5019)
ld [hSCY], a
ret
-.AppearUnown
+.AppearUnown:
sub $18
ld c, a
and $3
@@ -1827,7 +1827,7 @@ endr
ret
; e538d (39:538d)
-.pal1: ; e538d
+.pal1 ; e538d
RGB 24, 12, 09
RGB 31, 31, 31
RGB 12, 00, 31
@@ -1835,7 +1835,7 @@ endr
; e5395
-.pal2: ; e5395
+.pal2 ; e5395
RGB 24, 12, 09
RGB 31, 31, 31
RGB 31, 31, 31
@@ -1952,7 +1952,7 @@ Intro_Scene16_AnimateSuicune: ; e5441 (39:5441)
jr z, .PrepareForSuicuneSwap
ret
-.PrepareForSuicuneSwap
+.PrepareForSuicuneSwap:
xor a
ld [hBGMapMode], a
ret
diff --git a/engine/debug.asm b/engine/debug.asm
index d69cd254b..a02f536db 100755
--- a/engine/debug.asm
+++ b/engine/debug.asm
@@ -1365,7 +1365,7 @@ endr
jp [hl]
; 82301
-.dw: ; 82301
+.dw ; 82301
dw Function82309
dw Function82339
dw Function8234b
diff --git a/engine/decorations.asm b/engine/decorations.asm
index 774a8589a..4bd99c0a5 100755
--- a/engine/decorations.asm
+++ b/engine/decorations.asm
@@ -52,7 +52,7 @@ _KrisDecorationMenu: ; 0x2675c
dw .pointers
; 0x267aa
-.pointers: ; 267aa
+.pointers ; 267aa
dw DecoBedMenu, .bed
dw DecoCarpetMenu, .carpet
dw DecoPlantMenu, .plant
@@ -127,7 +127,7 @@ _KrisDecorationMenu: ; 0x2675c
ret
; 26855 (9:6855)
-.dw: ; 26855
+.dw ; 26855
dwb FindOwnedBeds, 0 ; bed
dwb FindOwnedCarpets, 1 ; carpet
dwb FindOwnedPlants, 2 ; plant
@@ -211,7 +211,7 @@ FindOwnedBeds: ; 268bd
jp FindOwnedDecosInCategory
; 268c5
-.beds: ; 268c5
+.beds ; 268c5
db DECO_FEATHERY_BED ; 2
db DECO_PINK_BED ; 3
db DECO_POLKADOT_BED ; 4
@@ -232,7 +232,7 @@ FindOwnedCarpets: ; 268d2
jp FindOwnedDecosInCategory
; 268da
-.carpets: ; 268da
+.carpets ; 268da
db DECO_RED_CARPET ; 7
db DECO_BLUE_CARPET ; 8
db DECO_YELLOW_CARPET ; 9
@@ -253,7 +253,7 @@ FindOwnedPlants: ; 268e7
jp FindOwnedDecosInCategory
; 268ef
-.plants: ; 268ef
+.plants ; 268ef
db DECO_MAGNAPLANT ; c
db DECO_TROPICPLANT ; d
db DECO_JUMBOPLANT ; e
@@ -273,7 +273,7 @@ FindOwnedPosters: ; 268fb
jp FindOwnedDecosInCategory
; 26903
-.posters: ; 26903
+.posters ; 26903
db DECO_TOWN_MAP ; 10
db DECO_PIKACHU_POSTER ; 11
db DECO_CLEFAIRY_POSTER ; 12
@@ -294,7 +294,7 @@ FindOwnedConsoles: ; 26910
jp FindOwnedDecosInCategory
; 26918
-.consoles: ; 26918
+.consoles ; 26918
db DECO_FAMICOM ; 15
db DECO_SNES ; 16
db DECO_N64 ; 17
@@ -315,7 +315,7 @@ FindOwnedOrnaments: ; 26925
jp FindOwnedDecosInCategory
; 2692d
-.ornaments: ; 2692d
+.ornaments ; 2692d
db DECO_PIKACHU_DOLL ; 1e
db DECO_SURF_PIKACHU_DOLL ; 1f
db DECO_CLEFAIRY_DOLL ; 20
@@ -355,7 +355,7 @@ FindOwnedBigDolls: ; 2694d
jp FindOwnedDecosInCategory
; 26955
-.big_dolls: ; 26955
+.big_dolls ; 26955
db DECO_BIG_SNORLAX_DOLL ; 1a
db DECO_BIG_ONIX_DOLL ; 1b
db DECO_BIG_LAPRAS_DOLL ; 1c
@@ -656,37 +656,37 @@ GetDecoName: ; 26c72
; 26c8c
-.invalid: ; 26c8c
+.invalid ; 26c8c
ret
; 26c8d
-.plant: ; 26c8d
+.plant ; 26c8d
ld a, e
jr .getdeconame
-.bed: ; 26c90
+.bed ; 26c90
call .plant
ld a, _BED
jr .getdeconame
-.carpet: ; 26c97
+.carpet ; 26c97
call .plant
ld a, _CARPET
jr .getdeconame
-.poster: ; 26c9e
+.poster ; 26c9e
ld a, e
call .getpokename
ld a, _POSTER
jr .getdeconame
-.doll: ; 26ca6
+.doll ; 26ca6
ld a, e
call .getpokename
ld a, _DOLL
jr .getdeconame
-.bigdoll: ; 26cae
+.bigdoll ; 26cae
push de
ld a, BIG_
call .getdeconame
@@ -694,25 +694,25 @@ GetDecoName: ; 26c72
ld a, e
jr .getpokename
-.unused: ; 26cb8
+.unused ; 26cb8
push de
call .getdeconame
pop de
ld a, e
jr .getdeconame
-.getpokename: ; 26cc0
+.getpokename ; 26cc0
push bc
ld [wd265], a
call GetPokemonName
pop bc
jr .copy
-.getdeconame: ; 26cca
+.getdeconame ; 26cca
call ._getdeconame
jr .copy
-._getdeconame: ; 26ccf
+._getdeconame ; 26ccf
push bc
ld hl, DecorationNames
call GetNthString
@@ -721,7 +721,7 @@ GetDecoName: ; 26c72
pop bc
ret
-.copy: ; 26cda
+.copy ; 26cda
ld h, b
ld l, c
call CopyName2
@@ -957,7 +957,7 @@ DecoAction_SetItUp_Ornament: ; 26de3
ret
; 26e33
-.getwhichside: ; 26e33
+.getwhichside ; 26e33
ld a, [MenuSelection]
ld b, a
ld a, [wd1ed]
diff --git a/engine/dummy_game.asm b/engine/dummy_game.asm
index 116ad9439..bb5377d8f 100755
--- a/engine/dummy_game.asm
+++ b/engine/dummy_game.asm
@@ -6,7 +6,7 @@ _DummyGame: ; e1e5b (38:5e5b)
jr nc, .loop
ret
-.LoadGFXAndPals
+.LoadGFXAndPals:
call DisableLCD
ld b, SCGB_08
call GetSGBLayout
@@ -42,7 +42,7 @@ _DummyGame: ; e1e5b (38:5e5b)
call DmgToCgbObjPal0
ret
-.JumptableLoop
+.JumptableLoop:
ld a, [wJumptableIndex]
bit 7, a
jr nz, .quit
@@ -56,10 +56,10 @@ _DummyGame: ; e1e5b (38:5e5b)
scf
ret
-.ExecuteJumptable
+.ExecuteJumptable:
jumptable .Jumptable, wJumptableIndex
-.Jumptable
+.Jumptable:
dw .RestartGame
dw .ResetBoard
dw .InitBoardTilemapAndCursorObject
@@ -70,13 +70,13 @@ _DummyGame: ; e1e5b (38:5e5b)
dw .RevealAll
dw .AskPlayAgain
-.RestartGame
+.RestartGame:
call DummyGame_InitStrings
ld hl, wJumptableIndex
inc [hl]
ret
-.ResetBoard
+.ResetBoard:
call ret_e00ed
jr nc, .proceed
ld hl, wJumptableIndex
@@ -95,7 +95,7 @@ rept 4
endr
ld [hl], a
ld [wDummyGameNumCardsMatched], a
-.InitBoardTilemapAndCursorObject
+.InitBoardTilemapAndCursorObject:
ld hl, wDummyGameCounter
ld a, [hl]
cp 45
@@ -117,7 +117,7 @@ endr
inc [hl]
ret
-.CheckTriesRemaining
+.CheckTriesRemaining:
ld a, [wDummyGameNumberTriesRemaining]
hlcoord 17, 0
add "0"
@@ -136,7 +136,7 @@ endr
ld [wcf64], a
ld hl, wJumptableIndex
inc [hl]
-.PickCard1
+.PickCard1:
ld a, [wcf64]
and a
ret z
@@ -160,7 +160,7 @@ endr
inc [hl]
ret
-.PickCard2
+.PickCard2:
ld a, [wcf64]
and a
ret z
@@ -185,7 +185,7 @@ endr
ld [wDummyGameCounter], a
ld hl, wJumptableIndex
inc [hl]
-.DelayPickAgain
+.DelayPickAgain:
ld hl, wDummyGameCounter
ld a, [hl]
and a
@@ -193,19 +193,19 @@ endr
dec [hl]
ret
-.PickAgain
+.PickAgain:
call DummyGame_CheckMatch
ld a, $3
ld [wJumptableIndex], a
ret
-.RevealAll
+.RevealAll:
ld a, [hJoypadPressed]
and A_BUTTON
ret z
xor a
ld [wDummyGameCounter], a
-.RevelationLoop
+.RevelationLoop:
ld hl, wDummyGameCounter
ld a, [hl]
cp 45
@@ -231,7 +231,7 @@ endr
call WaitPressAorB_BlinkCursor
ld hl, wJumptableIndex
inc [hl]
-.AskPlayAgain
+.AskPlayAgain:
call ret_e00ed
jr nc, .restart
ld hl, wJumptableIndex
@@ -310,7 +310,7 @@ DummyGame_CheckMatch: ; e2010
call PrintText
ret
-.VictoryText
+.VictoryText:
start_asm
push bc
hlcoord 2, 13
diff --git a/engine/events.asm b/engine/events.asm
index 9b701be8a..3bcac8925 100644
--- a/engine/events.asm
+++ b/engine/events.asm
@@ -456,7 +456,7 @@ DoMapTrigger: ; 968ec
rept 4
add hl, de
endr
-
+
call GetMapScriptHeaderBank
call GetFarHalfword
call GetMapScriptHeaderBank
@@ -541,11 +541,11 @@ OWPlayerInput: ; 96974
call CheckMenuOW
jr c, .Action
-.NoAction
+.NoAction:
xor a
ret
-.Action
+.Action:
push af
callba Function80422
pop af
@@ -581,7 +581,7 @@ TryObjectEvent: ; 969b5
xor a
ret
-.IsObject
+.IsObject:
call PlayTalkObject
ld a, [hObjectStructIndexBuffer]
call GetObjectStruct
@@ -687,7 +687,7 @@ TryReadSign: ; 96a38
xor a
ret
-.IsSign
+.IsSign:
ld a, [EngineBuffer3]
ld hl, .signs
rst JumpTable
@@ -887,11 +887,11 @@ CheckMenuOW: ; 96b30
scf
ret
-.NoMenu
+.NoMenu:
xor a
ret
-.Select
+.Select:
call PlayTalkObject
ld a, BANK(SelectMenuScript)
ld hl, SelectMenuScript
@@ -918,11 +918,11 @@ SelectMenuCallback: ; 96b66
end
; 96b72
-.Script ; 96b72
+.Script: ; 96b72
ptjump wQueuedScriptBank
; 96b75
-.Asm ; 96b75
+.Asm: ; 96b75
ptcallasm wQueuedScriptBank
end
; 96b79
@@ -994,7 +994,7 @@ CountStep: ; 96b79
ret
; 96bd3
-.unreferenced: ; 96bd3
+.unreferenced ; 96bd3
ld a, 7
scf
ret
diff --git a/engine/events_2.asm b/engine/events_2.asm
index ec5026e40..2e7c37c92 100644
--- a/engine/events_2.asm
+++ b/engine/events_2.asm
@@ -191,13 +191,13 @@ ChooseWildEncounter_BugContest:: ; 97d31
ld hl, ContestMons
ld de, 4
-.CheckMon
+.CheckMon:
sub [hl]
jr c, .GotMon
add hl, de
jr .CheckMon
-.GotMon
+.GotMon:
inc hl
; Species
@@ -218,7 +218,7 @@ ChooseWildEncounter_BugContest:: ; 97d31
ld a, d
jr .GotLevel
-.RandomLevel
+.RandomLevel:
; Get a random level between the min and max.
ld c, a
inc c
@@ -227,7 +227,7 @@ ChooseWildEncounter_BugContest:: ; 97d31
call SimpleDivide
add d
-.GotLevel
+.GotLevel:
ld [CurPartyLevel], a
xor a
@@ -330,7 +330,7 @@ DoBikeStep:: ; 97db3
scf
ret
-.NoCall
+.NoCall:
xor a
ret
; 97df9
@@ -519,13 +519,13 @@ CmdQueue_Type4: ; 97ebc
dw .one
; 97ec3
-.zero: ; 97ec3
+.zero ; 97ec3
ld a, [hSCY]
ld hl, 4
add hl, bc
ld [hl], a
call CmdQueueAnonJT_Increment
-.one: ; 97ecd
+.one ; 97ecd
ld hl, 1
add hl, bc
ld a, [hl]
@@ -566,11 +566,11 @@ CmdQueue_Type3: ; 97ef9
dw .two
; 97f02
-.zero: ; 97f02
+.zero ; 97f02
call .IsPlayerFacingDown
jr z, .PlayerNotFacingDown
call CmdQueueAnonJT_Increment
-.one: ; 97f0a
+.one ; 97f0a
call .IsPlayerFacingDown
jr z, .PlayerNotFacingDown
call CmdQueueAnonJT_Increment
@@ -582,7 +582,7 @@ CmdQueue_Type3: ; 97ef9
ret
; 97f1b
-.two: ; 97f1b
+.two ; 97f1b
call .IsPlayerFacingDown
jr z, .PlayerNotFacingDown
call CmdQueueAnonJT_Decrement
diff --git a/engine/events_3.asm b/engine/events_3.asm
index 68e6e0d34..b1c142a27 100755
--- a/engine/events_3.asm
+++ b/engine/events_3.asm
@@ -8,7 +8,7 @@ ReturnFromMapSetupScript:: ; b8000
ret
; b800a
-.inefficientcallba: ; b800a
+.inefficientcallba ; b800a
ld a, [MapGroup]
ld b, a
ld a, [MapNumber]
diff --git a/engine/evolution_animation.asm b/engine/evolution_animation.asm
index 1561c70fa..dc0ddd8f6 100755
--- a/engine/evolution_animation.asm
+++ b/engine/evolution_animation.asm
@@ -259,7 +259,7 @@ endr
ret
; 4e794
-.check_statused: ; 4e794
+.check_statused ; 4e794
ld a, [CurPartyMon]
ld hl, PartyMon1Species
call GetPartyLocation
@@ -296,7 +296,7 @@ endr
ret
; 4e7cf
-.balls_of_light: ; 4e7cf
+.balls_of_light ; 4e7cf
ld hl, wJumptableIndex
ld a, [hl]
cp 32
diff --git a/engine/evolve.asm b/engine/evolve.asm
index b04a245e0..db7d7e946 100755
--- a/engine/evolve.asm
+++ b/engine/evolve.asm
@@ -336,7 +336,7 @@ endr
; XXX
pop hl
-.ReturnToMap
+.ReturnToMap:
pop de
pop bc
pop hl
@@ -514,17 +514,17 @@ FillMoves: ; 424e1
ld a, [hli]
ld h, [hl]
ld l, a
-.GoToAttacks
+.GoToAttacks:
ld a, [hli]
and a
jr nz, .GoToAttacks
jr .GetLevel
-.NextMove
+.NextMove:
pop de
-.GetMove
+.GetMove:
inc hl
-.GetLevel
+.GetLevel:
ld a, [hli]
and a
jp z, .done
@@ -539,10 +539,10 @@ FillMoves: ; 424e1
cp b
jr nc, .GetMove
-.CheckMove
+.CheckMove:
push de
ld c, NUM_MOVES
-.CheckRepeat
+.CheckRepeat:
ld a, [de]
inc de
cp [hl]
@@ -552,7 +552,7 @@ FillMoves: ; 424e1
pop de
push de
ld c, NUM_MOVES
-.CheckSlot
+.CheckSlot:
ld a, [de]
and a
jr z, .LearnMove
@@ -576,10 +576,10 @@ FillMoves: ; 424e1
call ShiftMoves
pop de
-.ShiftedMove
+.ShiftedMove:
pop hl
-.LearnMove
+.LearnMove:
ld a, [hl]
ld [de], a
ld a, [Buffer1]
diff --git a/engine/healmachineanim.asm b/engine/healmachineanim.asm
index b4e0be1cf..01ed6d652 100755
--- a/engine/healmachineanim.asm
+++ b/engine/healmachineanim.asm
@@ -122,7 +122,7 @@ endr
ret
; 123db
-.dummy_5: ; 123db
+.dummy_5 ; 123db
ret
; 123dc
@@ -168,7 +168,7 @@ INCBIN "gfx/unknown/0123fc.2bpp"
ret
; 12451
-.palettes: ; 12451
+.palettes ; 12451
RGB 31, 31, 31
RGB 31, 19, 10
RGB 31, 07, 01
diff --git a/engine/health.asm b/engine/health.asm
new file mode 100755
index 000000000..1c926f677
--- /dev/null
+++ b/engine/health.asm
@@ -0,0 +1,110 @@
+HealParty: ; c658
+ xor a
+ ld [CurPartyMon], a
+ ld hl, PartySpecies
+.loop
+ ld a, [hli]
+ cp -1
+ jr z, .done
+ cp EGG
+ jr z, .next
+
+ push hl
+ call HealPartyMon
+ pop hl
+
+.next
+ ld a, [CurPartyMon]
+ inc a
+ ld [CurPartyMon], a
+ jr .loop
+
+.done
+ ret
+
+HealPartyMon: ; c677
+ ld a, MON_SPECIES
+ call GetPartyParamLocation
+ ld d, h
+ ld e, l
+
+ ld hl, MON_STATUS
+ add hl, de
+ xor a
+ ld [hli], a
+ ld [hl], a
+
+ ld hl, MON_MAXHP
+ add hl, de
+
+ ; bc = MON_HP
+ ld b, h
+ ld c, l
+ dec bc
+ dec bc
+
+ ld a, [hli]
+ ld [bc], a
+ inc bc
+ ld a, [hl]
+ ld [bc], a
+
+ callba RestoreAllPP
+ ret
+
+ComputeHPBarPixels: ; c699
+; e = bc * (6 * 8) / de
+ ld a, b
+ or c
+ jr z, .zero
+ push hl
+ xor a
+ ld [hMultiplicand + 0], a
+ ld a, b
+ ld [hMultiplicand + 1], a
+ ld a, c
+ ld [hMultiplicand + 2], a
+ ld a, 6 * 8
+ ld [hMultiplier], a
+ call Multiply
+ ; We need de to be under 256 because hDivisor is only 1 byte.
+ ld a, d
+ and a
+ jr z, .divide
+ ; divide de and hProduct by 4
+ srl d
+ rr e
+ srl d
+ rr e
+ ld a, [hProduct + 2]
+ ld b, a
+ ld a, [hProduct + 3]
+ srl b
+ rr a
+ srl b
+ rr a
+ ld [hDividend + 3], a
+ ld a, b
+ ld [hDividend + 2], a
+.divide
+ ld a, e
+ ld [hDivisor], a
+ ld b, 4
+ call Divide
+ ld a, [hQuotient + 2]
+ ld e, a
+ pop hl
+ and a
+ ret nz
+ ld e, 1
+ ret
+
+.zero
+ ld e, 0
+ ret
+
+AnimateHPBar: ; c6e0
+ call WaitBGMap
+ call _AnimateHPBar
+ call WaitBGMap
+ ret
diff --git a/engine/init_gender.asm b/engine/init_gender.asm
index 5de576c2a..ff5babdf9 100755
--- a/engine/init_gender.asm
+++ b/engine/init_gender.asm
@@ -67,7 +67,7 @@ TextJump_AreYouABoyOrAreYouAGirl: ; 0x48e0f
InitGenderScreen: ; 48e14 (12:4e14)
ld a, $10
ld [MusicFade], a
- ld a, $0
+ ld a, MUSIC_NONE
ld [MusicFadeIDLo], a
ld a, $0
ld [MusicFadeIDHi], a
diff --git a/engine/intro_menu.asm b/engine/intro_menu.asm
index 6ece8e384..ea5c9296a 100755
--- a/engine/intro_menu.asm
+++ b/engine/intro_menu.asm
@@ -30,7 +30,7 @@ PrintDayOfWeek: ; 5b05
ret
; 5b1c
-.Days ; 5b1c
+.Days: ; 5b1c
db "SUN@"
db "MON@"
db "TUES@"
@@ -40,7 +40,7 @@ PrintDayOfWeek: ; 5b05
db "SATUR@"
; 5b40
-.Day ; 5b40
+.Day: ; 5b40
db "DAY@"
; 5b44
@@ -270,7 +270,7 @@ SetDefaultBoxNames: ; 5ca6
jr c, .loop
ret
-.Box
+.Box:
db "BOX@"
; 5cd3
@@ -285,7 +285,7 @@ InitializeMagikarpHouse: ; 5cd3
ret
; 5ce3
-.Ralph ; 5ce3
+.Ralph: ; 5ce3
db "RALPH@"
; 5ce9
@@ -305,15 +305,15 @@ InitializeNPCNames: ; 5ce9
ld hl, .Green
ld de, GreensName
-.Copy
+.Copy:
ld bc, NAME_LENGTH
call CopyBytes
ret
-.Rival db "???@"
-.Red db "RED@"
-.Green db "GREEN@"
-.Mom db "MOM@"
+.Rival: db "???@"
+.Red: db "RED@"
+.Green: db "GREEN@"
+.Mom: db "MOM@"
; 5d23
InitializeWorld: ; 5d23
@@ -365,13 +365,13 @@ Continue: ; 5d65
call CloseWindow
jr .FailToLoad
-.Check1Pass
+.Check1Pass:
call Continue_CheckRTC_RestartClock
jr nc, .Check2Pass
call CloseWindow
jr .FailToLoad
-.Check2Pass
+.Check2Pass:
ld a, $8
ld [MusicFade], a
ld a, MUSIC_NONE % $100
@@ -394,10 +394,10 @@ Continue: ; 5d65
ld [hMapEntryMethod], a
jp FinishContinueFunction
-.FailToLoad
+.FailToLoad:
ret
-.SpawnAfterE4
+.SpawnAfterE4:
ld a, SPAWN_NEW_BARK
ld [DefaultSpawnpoint], a
call PostCreditsSpawn
@@ -460,7 +460,7 @@ ConfirmContinue: ; 5e34
scf
ret
-.PressA
+.PressA:
ret
; 5e48
@@ -496,7 +496,7 @@ FinishContinueFunction: ; 5e5d
jr z, .AfterRed
jp Reset
-.AfterRed
+.AfterRed:
call SpawnAfterRed
jr .loop
; 5e85
@@ -609,7 +609,7 @@ Continue_DisplayBadgesDexPlayerName: ; 5f1c
pop hl
ret
-.Player
+.Player:
db "<PLAYER>@"
; 5f40
@@ -794,7 +794,7 @@ NamePlayer: ; 0x6074
callba MovePlayerPicLeft
ret
-.NewName
+.NewName:
ld b, 1
ld de, PlayerName
callba NamingScreen
@@ -819,13 +819,13 @@ NamePlayer: ; 0x6074
bit 0, a
jr z, .Male
ld de, .Kris
-.Male
+.Male:
call InitName
ret
-.Chris
+.Chris:
db "CHRIS@@@@@@"
-.Kris
+.Kris:
db "KRIS@@@@@@@"
; 60e9
@@ -1127,7 +1127,7 @@ TitleScreenScene: ; 62a3
dw TitleScreenEnd
; 62b7
-.NextScene ; Unreferenced
+.NextScene: ; Unreferenced
ld hl, wJumptableIndex
inc [hl]
ret
diff --git a/engine/items.asm b/engine/items.asm
new file mode 100755
index 000000000..81c080dda
--- /dev/null
+++ b/engine/items.asm
@@ -0,0 +1,584 @@
+_ReceiveItem:: ; d1d5
+ call DoesHLEqualNumItems
+ jp nz, PutItemInPocket
+ push hl
+ call CheckItemPocket
+ pop de
+ ld a, [wItemAttributeParamBuffer]
+ dec a
+ ld hl, .Pockets
+ rst JumpTable
+ ret
+
+.Pockets: ; d1e9
+ dw .Item
+ dw .KeyItem
+ dw .Ball
+ dw .TMHM
+
+.Item: ; d1f1
+ ld h, d
+ ld l, e
+ jp PutItemInPocket
+
+.KeyItem: ; d1f6
+ ld h, d
+ ld l, e
+ jp ReceiveKeyItem
+
+.Ball: ; d1fb
+ ld hl, NumBalls
+ jp PutItemInPocket
+
+.TMHM: ; d201
+ ld h, d
+ ld l, e
+ ld a, [CurItem]
+ ld c, a
+ call GetTMHMNumber
+ jp ReceiveTMHM
+
+_TossItem:: ; d20d
+ call DoesHLEqualNumItems
+ jr nz, .remove
+ push hl
+ call CheckItemPocket
+ pop de
+ ld a, [wItemAttributeParamBuffer]
+ dec a
+ ld hl, .Pockets
+ rst JumpTable
+ ret
+
+.Pockets:
+ dw .Item
+ dw .KeyItem
+ dw .Ball
+ dw .TMHM
+
+.Ball: ; d228
+ ld hl, NumBalls
+ jp RemoveItemFromPocket
+
+.TMHM: ; d22e
+ ld h, d
+ ld l, e
+ ld a, [CurItem]
+ ld c, a
+ call GetTMHMNumber
+ jp TossTMHM
+
+.KeyItem: ; d23a
+ ld h, d
+ ld l, e
+ jp TossKeyItem
+
+.Item: ; d23f
+ ld h, d
+ ld l, e
+
+.remove
+ jp RemoveItemFromPocket
+
+_CheckItem:: ; d244
+ call DoesHLEqualNumItems
+ jr nz, .nope
+ push hl
+ call CheckItemPocket
+ pop de
+ ld a, [wItemAttributeParamBuffer]
+ dec a
+ ld hl, .Pockets
+ rst JumpTable
+ ret
+
+.Pockets:
+ dw .Item
+ dw .KeyItem
+ dw .Ball
+ dw .TMHM
+
+.Ball: ; d25f
+ ld hl, NumBalls
+ jp CheckTheItem
+
+.TMHM: ; d265
+ ld h, d
+ ld l, e
+ ld a, [CurItem]
+ ld c, a
+ call GetTMHMNumber
+ jp CheckTMHM
+
+.KeyItem: ; d271
+ ld h, d
+ ld l, e
+ jp CheckKeyItems
+
+.Item: ; d276
+ ld h, d
+ ld l, e
+
+.nope
+ jp CheckTheItem
+
+DoesHLEqualNumItems: ; d27b
+ ld a, l
+ cp NumItems % $100
+ ret nz
+ ld a, h
+ cp NumItems / $100
+ ret
+
+GetPocketCapacity: ; d283
+ ld c, MAX_ITEMS
+ ld a, e
+ cp NumItems % $100
+ jr nz, .not_bag
+ ld a, d
+ cp NumItems / $100
+ ret z
+
+.not_bag
+ ld c, MAX_PC_ITEMS
+ ld a, e
+ cp PCItems % $100
+ jr nz, .not_pc
+ ld a, d
+ cp PCItems / $100
+ ret z
+
+.not_pc
+ ld c, MAX_BALLS
+ ret
+
+PutItemInPocket: ; d29c
+ ld d, h
+ ld e, l
+ inc hl
+ ld a, [CurItem]
+ ld c, a
+ ld b, 0
+.loop
+ ld a, [hli]
+ cp -1
+ jr z, .terminator
+ cp c
+ jr nz, .next
+ ld a, 99
+ sub [hl]
+ add b
+ ld b, a
+ ld a, [wItemQuantityChangeBuffer]
+ cp b
+ jr z, .ok
+ jr c, .ok
+
+.next
+ inc hl
+ jr .loop
+
+.terminator
+ call GetPocketCapacity
+ ld a, [de]
+ cp c
+ jr c, .ok
+ and a
+ ret
+
+.ok
+ ld h, d
+ ld l, e
+ ld a, [CurItem]
+ ld c, a
+ ld a, [wItemQuantityChangeBuffer]
+ ld [wItemQuantityBuffer], a
+.loop2
+ inc hl
+ ld a, [hli]
+ cp -1
+ jr z, .terminator2
+ cp c
+ jr nz, .loop2
+ ld a, [wItemQuantityBuffer]
+ add [hl]
+ cp 100
+ jr nc, .newstack
+ ld [hl], a
+ jr .done
+
+.newstack
+ ld [hl], 99
+ sub 99
+ ld [wItemQuantityBuffer], a
+ jr .loop2
+
+.terminator2
+ dec hl
+ ld a, [CurItem]
+ ld [hli], a
+ ld a, [wItemQuantityBuffer]
+ ld [hli], a
+ ld [hl], -1
+ ld h, d
+ ld l, e
+ inc [hl]
+
+.done
+ scf
+ ret
+
+RemoveItemFromPocket: ; d2ff
+ ld d, h
+ ld e, l
+ ld a, [hli]
+ ld c, a
+ ld a, [CurItemQuantity]
+ cp c
+ jr nc, .ok ; memory
+ ld c, a
+ ld b, $0
+ add hl, bc
+ add hl, bc
+ ld a, [CurItem]
+ cp [hl]
+ inc hl
+ jr z, .skip
+ ld h, d
+ ld l, e
+ inc hl
+
+.ok
+ ld a, [CurItem]
+ ld b, a
+.loop
+ ld a, [hli]
+ cp b
+ jr z, .skip
+ cp -1
+ jr z, .nope
+ inc hl
+ jr .loop
+
+.skip
+ ld a, [wItemQuantityChangeBuffer]
+ ld b, a
+ ld a, [hl]
+ sub b
+ jr c, .nope
+ ld [hl], a
+ ld [wItemQuantityBuffer], a
+ and a
+ jr nz, .yup
+ dec hl
+ ld b, h
+ ld c, l
+ inc hl
+ inc hl
+.loop2
+ ld a, [hli]
+ ld [bc], a
+ inc bc
+ cp -1
+ jr nz, .loop2
+ ld h, d
+ ld l, e
+ dec [hl]
+
+.yup
+ scf
+ ret
+
+.nope
+ and a
+ ret
+
+CheckTheItem: ; d349
+ ld a, [CurItem]
+ ld c, a
+.loop
+ inc hl
+ ld a, [hli]
+ cp -1
+ jr z, .done
+ cp c
+ jr nz, .loop
+ scf
+ ret
+
+.done
+ and a
+ ret
+
+ReceiveKeyItem: ; d35a
+ ld hl, NumKeyItems
+ ld a, [hli]
+ cp MAX_KEY_ITEMS
+ jr nc, .nope
+ ld c, a
+ ld b, 0
+ add hl, bc
+ ld a, [CurItem]
+ ld [hli], a
+ ld [hl], -1
+ ld hl, NumKeyItems
+ inc [hl]
+ scf
+ ret
+
+.nope
+ and a
+ ret
+
+TossKeyItem: ; d374
+ ld a, [wd107]
+ ld e, a
+ ld d, 0
+ ld hl, NumKeyItems
+ ld a, [hl]
+ cp e
+ jr nc, .ok
+ call .Toss
+ ret nc
+ jr .ok2
+
+.ok
+ dec [hl]
+ inc hl
+ add hl, de
+
+.ok2
+ ld d, h
+ ld e, l
+ inc hl
+.loop
+ ld a, [hli]
+ ld [de], a
+ inc de
+ cp -1
+ jr nz, .loop
+ scf
+ ret
+
+.Toss: ; d396
+ ld hl, NumKeyItems
+ ld a, [CurItem]
+ ld c, a
+.loop3
+ inc hl
+ ld a, [hl]
+ cp c
+ jr z, .ok3
+ cp -1
+ jr nz, .loop3
+ xor a
+ ret
+
+.ok3
+ ld a, [NumKeyItems]
+ dec a
+ ld [NumKeyItems], a
+ scf
+ ret
+
+CheckKeyItems: ; d3b1
+ ld a, [CurItem]
+ ld c, a
+ ld hl, KeyItems
+.loop
+ ld a, [hli]
+ cp c
+ jr z, .done
+ cp -1
+ jr nz, .loop
+ and a
+ ret
+
+.done
+ scf
+ ret
+
+ReceiveTMHM: ; d3c4
+ dec c
+ ld b, 0
+ ld hl, TMsHMs
+ add hl, bc
+ ld a, [wItemQuantityChangeBuffer]
+ add [hl]
+ cp 100
+ jr nc, .toomany
+ ld [hl], a
+ scf
+ ret
+
+.toomany
+ and a
+ ret
+
+TossTMHM: ; d3d8
+ dec c
+ ld b, 0
+ ld hl, TMsHMs
+ add hl, bc
+ ld a, [wItemQuantityChangeBuffer]
+ ld b, a
+ ld a, [hl]
+ sub b
+ jr c, .nope
+ ld [hl], a
+ ld [wItemQuantityBuffer], a
+ jr nz, .yup
+ ld a, [wTMHMPocketScrollPosition]
+ and a
+ jr z, .yup
+ dec a
+ ld [wTMHMPocketScrollPosition], a
+
+.yup
+ scf
+ ret
+
+.nope
+ and a
+ ret
+
+CheckTMHM: ; d3fb
+ dec c
+ ld b, $0
+ ld hl, TMsHMs
+ add hl, bc
+ ld a, [hl]
+ and a
+ ret z
+ scf
+ ret
+
+GetTMHMNumber:: ; d407
+; Return the number of a TM/HM by item id c.
+
+ ld a, c
+
+; Skip any dummy items.
+ cp ITEM_C3 ; TM04-05
+ jr c, .done
+ cp ITEM_DC ; TM28-29
+ jr c, .skip
+
+ dec a
+.skip
+ dec a
+.done
+ sub TM01
+ inc a
+ ld c, a
+ ret
+
+GetNumberedTMHM: ; d417
+; Return the item id of a TM/HM by number c.
+
+ ld a, c
+
+; Skip any gaps.
+ cp ITEM_C3 - (TM01 - 1)
+ jr c, .done
+ cp ITEM_DC - (TM01 - 1) - 1
+ jr c, .skip_one
+
+.skip_two
+ inc a
+.skip_one
+ inc a
+.done
+ add TM01
+ dec a
+ ld c, a
+ ret
+
+_CheckTossableItem:: ; d427
+; Return 1 in wItemAttributeParamBuffer and carry if CurItem can't be removed from the bag.
+ ld a, ITEMATTR_PERMISSIONS
+ call GetItemAttr
+ bit 7, a
+ jr nz, ItemAttr_ReturnCarry
+ and a
+ ret
+
+CheckSelectableItem: ; d432
+; Return 1 in wItemAttributeParamBuffer and carry if CurItem can't be selected.
+ ld a, ITEMATTR_PERMISSIONS
+ call GetItemAttr
+ bit 6, a
+ jr nz, ItemAttr_ReturnCarry
+ and a
+ ret
+
+CheckItemPocket:: ; d43d
+; Return the pocket for CurItem in wItemAttributeParamBuffer.
+ ld a, ITEMATTR_POCKET
+ call GetItemAttr
+ and $f
+ ld [wItemAttributeParamBuffer], a
+ ret
+
+CheckItemContext: ; d448
+; Return the context for CurItem in wItemAttributeParamBuffer.
+ ld a, ITEMATTR_HELP
+ call GetItemAttr
+ and $f
+ ld [wItemAttributeParamBuffer], a
+ ret
+
+CheckItemMenu: ; d453
+; Return the menu for CurItem in wItemAttributeParamBuffer.
+ ld a, ITEMATTR_HELP
+ call GetItemAttr
+ swap a
+ and $f
+ ld [wItemAttributeParamBuffer], a
+ ret
+
+GetItemAttr: ; d460
+; Get attribute a of CurItem.
+
+ push hl
+ push bc
+
+ ld hl, ItemAttributes
+ ld c, a
+ ld b, 0
+ add hl, bc
+
+ xor a
+ ld [wItemAttributeParamBuffer], a
+
+ ld a, [CurItem]
+ dec a
+ ld c, a
+ ld a, NUM_ITEMATTRS
+ call AddNTimes
+ ld a, BANK(ItemAttributes)
+ call GetFarByte
+
+ pop bc
+ pop hl
+ ret
+
+ItemAttr_ReturnCarry: ; d47f
+ ld a, 1
+ ld [wItemAttributeParamBuffer], a
+ scf
+ ret
+
+GetItemPrice: ; d486
+; Return the price of CurItem in de.
+ push hl
+ push bc
+ ld a, ITEMATTR_PRICE
+ call GetItemAttr
+ ld e, a
+ ld a, ITEMATTR_PRICE_HI
+ call GetItemAttr
+ ld d, a
+ pop bc
+ pop hl
+ ret
diff --git a/engine/learn.asm b/engine/learn.asm
index 64e73c910..d2751235f 100755
--- a/engine/learn.asm
+++ b/engine/learn.asm
@@ -243,7 +243,7 @@ Text_1_2_and_Poof: ; 6684
ld hl, .PoofForgot
ret
-.PoofForgot
+.PoofForgot:
; Poof! <MON> forgot <MOVE>. And…
text_jump UnknownText_0x1c574e
db "@"
diff --git a/engine/link.asm b/engine/link.asm
index e425ce4d8..14c9c2f4d 100755
--- a/engine/link.asm
+++ b/engine/link.asm
@@ -204,7 +204,7 @@ Gen2ToGen2LinkComms: ; 28177
ld a, $81
ld [rSC], a
-.Player1
+.Player1:
ld de, MUSIC_NONE
call PlayMusic
ld c, 3
@@ -1127,7 +1127,7 @@ TimeCapsule_ReplaceTeruSama: ; 28771
pop hl
ret
-.TimeCapsuleAlt ; 28785
+.TimeCapsuleAlt: ; 28785
; Pokémon traded from RBY do not have held items, so GSC usually interprets the
; catch rate as an item. However, if the catch rate appears in this table, the
; item associated with the table entry is used instead.
diff --git a/engine/link_trade.asm b/engine/link_trade.asm
index 395f1f3d3..4f0198549 100755
--- a/engine/link_trade.asm
+++ b/engine/link_trade.asm
@@ -75,7 +75,7 @@ _LinkTextbox: ; 16d61d
ret
; 16d640
-.draw_border: ; 16d640
+.draw_border ; 16d640
push hl
ld a, $30
ld [hli], a
@@ -107,7 +107,7 @@ _LinkTextbox: ; 16d61d
ret
; 16d66d
-.fill_row: ; 16d66d
+.fill_row ; 16d66d
ld d, c
.loop4
ld [hli], a
diff --git a/engine/mail.asm b/engine/mail.asm
index 133a2976e..840e0a925 100755
--- a/engine/mail.asm
+++ b/engine/mail.asm
@@ -322,7 +322,7 @@ _KrisMailBoxMenu: ; 0x447a0
jp MenuTextBoxBackup
; 0x447b4
-.EmptyMailboxText ; 0x447b4
+.EmptyMailboxText: ; 0x447b4
text_jump _EmptyMailboxText
db "@"
@@ -431,13 +431,13 @@ MailboxPC: ; 0x44806
ret
; 0x44861
-.JumpTable
+.JumpTable:
dw .ReadMail
dw .PutInPack
dw .AttachMail
dw .Cancel
-.ReadMail ; 0x44869
+.ReadMail: ; 0x44869
call FadeToMenu
ld a, [MenuSelection]
dec a
@@ -446,7 +446,7 @@ MailboxPC: ; 0x44806
jp CloseSubmenu
; 0x44877
-.PutInPack ; 0x44877
+.PutInPack: ; 0x44877
ld hl, .MessageLostText
call MenuTextBox
call YesNoBox
@@ -472,15 +472,15 @@ MailboxPC: ; 0x44806
jp MenuTextBoxBackup
; 0x448ac
-.PutAwayText ; 0x448ac
+.PutAwayText: ; 0x448ac
text_jump ClearedMailPutAwayText
db "@"
-.PackFullText ; 0x448b1
+.PackFullText: ; 0x448b1
text_jump MailPackFullText
db "@"
-.MessageLostText ; 0x448b6
+.MessageLostText: ; 0x448b6
text_jump MailMessageLostText
db "@"
@@ -497,7 +497,7 @@ MailboxPC: ; 0x44806
jp CloseSRAM
; 0x448d2
-.AttachMail ; 0x448d2
+.AttachMail: ; 0x448d2
call FadeToMenu
xor a
ld [PartyMenuActionText], a
@@ -542,19 +542,19 @@ MailboxPC: ; 0x44806
jp CloseSubmenu
; 0x4493c
-.HoldingMailText ; 0x4493c
+.HoldingMailText: ; 0x4493c
text_jump MailAlreadyHoldingItemText
db "@"
-.EggText ; 0x44941
+.EggText: ; 0x44941
text_jump MailEggText
db "@"
-.MailMovedText ; 0x44946
+.MailMovedText: ; 0x44946
text_jump MailMovedFromBoxText
db "@"
-.Cancel
+.Cancel:
ret
.TopMenuDataHeader: ; 0x4494c
@@ -564,7 +564,7 @@ MailboxPC: ; 0x44806
dw .TopMenuData2
db 1 ; default option
-.TopMenuData2
+.TopMenuData2:
db %00010000 ; flags
db 4, 0 ; rows/columns?
db 1 ; horizontal spacing?
@@ -580,7 +580,7 @@ MailboxPC: ; 0x44806
dw .SubMenuData2
db 1 ; default option
-.SubMenuData2
+.SubMenuData2:
db %10000000 ; flags
db 4 ; items
db "READ MAIL@"
diff --git a/engine/main_menu.asm b/engine/main_menu.asm
index 637253c12..bad1682c7 100755
--- a/engine/main_menu.asm
+++ b/engine/main_menu.asm
@@ -54,7 +54,7 @@ MainMenu: ; 49cdc
db "MOBILE STUDIUM@"
.Jumptable: ; 0x49d60
-
+
dw MainMenu_Continue
dw MainMenu_NewGame
dw MainMenu_Options
@@ -202,7 +202,7 @@ MainMenuJoypadLoop: ; 49de4
ld a, [w2DMenuFlags1]
set 5, a
ld [w2DMenuFlags1], a
- call Function1f1a
+ call GetScrollingMenuJoypad
ld a, [wMenuJoypad]
cp B_BUTTON
jr z, .b_button
@@ -250,7 +250,7 @@ MainMenu_PrintCurrentTimeAndDay: ; 49e09
call TextBox
ret
-.TimeFail
+.TimeFail:
call SpeechTextBox
ret
; 49e3d
@@ -291,11 +291,11 @@ MainMenu_PrintCurrentTimeAndDay: ; 49e09
ret
; 49e7f
-.TimeNotSet ; 49e7f
+.TimeNotSet: ; 49e7f
db "TIME NOT SET@"
; 49e8c
-.UnusedText ; 49e8c
+.UnusedText: ; 49e8c
; Clock time unknown
text_jump UnknownText_0x1c5182
db "@"
@@ -317,7 +317,7 @@ MainMenu_PrintCurrentTimeAndDay: ; 49e09
ret
; 49ea8
-.Days
+.Days:
db "SUN@"
db "MON@"
db "TUES@"
@@ -325,7 +325,7 @@ MainMenu_PrintCurrentTimeAndDay: ; 49e09
db "THURS@"
db "FRI@"
db "SATUR@"
-.Day
+.Day:
db "DAY@"
; 49ed0
diff --git a/engine/map_object_action.asm b/engine/map_object_action.asm
index b7f98e8d7..63748ce6a 100755
--- a/engine/map_object_action.asm
+++ b/engine/map_object_action.asm
@@ -191,7 +191,7 @@ Function453f: ; 453f
ret
; 456a
-.Directions ; 456a
+.Directions: ; 456a
db OW_DOWN, OW_RIGHT, OW_UP, OW_LEFT
; 456e
diff --git a/engine/map_objects.asm b/engine/map_objects.asm
index a0ae8bcf2..7a38f3ffe 100644
--- a/engine/map_objects.asm
+++ b/engine/map_objects.asm
@@ -37,7 +37,7 @@ Function437b: ; 437b
call .HandleObjectAction
ret
-.CheckObjectStillVisible
+.CheckObjectStillVisible:
ld hl, OBJECT_FLAGS2
add hl, bc
res 6, [hl]
@@ -107,7 +107,7 @@ Function437b: ; 437b
and a
ret
-.HandleStepType
+.HandleStepType:
ld hl, OBJECT_STEP_TYPE
add hl, bc
ld a, [hl]
@@ -144,7 +144,7 @@ Function437b: ; 437b
.bit5
ret
-.HandleObjectAction
+.HandleObjectAction:
ld hl, OBJECT_FLAGS1
add hl, bc
bit INVISIBLE, [hl]
@@ -534,7 +534,7 @@ MapObjectMovementPattern: ; 47dd
rst JumpTable
ret
-.Pointers ; 47e9
+.Pointers: ; 47e9
dw .Null_00 ; 00
dw .RandomWalkY ; 01
dw .RandomWalkX ; 02
@@ -564,29 +564,29 @@ MapObjectMovementPattern: ; 47dd
dw .MovementBoulderDust ; 1a
dw .MovementShakingGrass ; 1b
-.Null_00
+.Null_00:
ret
-.RandomWalkY
+.RandomWalkY:
call Random
ld a, [hRandomAdd]
and %00000001
jp .RandomWalkContinue
-.RandomWalkX
+.RandomWalkX:
call Random
ld a, [hRandomAdd]
and %00000001
or %00000010
jp .RandomWalkContinue
-.RandomWalkXY
+.RandomWalkXY:
call Random
ld a, [hRandomAdd]
and %00000011
jp .RandomWalkContinue
-.RandomSpin1
+.RandomSpin1:
call Random
ld a, [hRandomAdd]
and %00001100
@@ -595,7 +595,7 @@ MapObjectMovementPattern: ; 47dd
ld [hl], a
jp RandomStepDuration_Slow
-.RandomSpin2
+.RandomSpin2:
ld hl, OBJECT_FACING
add hl, bc
ld a, [hl]
@@ -611,7 +611,7 @@ MapObjectMovementPattern: ; 47dd
ld [hl], a
jp RandomStepDuration_Fast
-.Standing
+.Standing:
call Function462a
call EndSpriteMovement
ld hl, OBJECT_ACTION
@@ -622,48 +622,48 @@ MapObjectMovementPattern: ; 47dd
ld [hl], STEP_TYPE_05
ret
-.ObeyDPad
+.ObeyDPad:
ld hl, Function5000
jp HandleMovementData
-.Movement08
+.Movement08:
ld hl, Function5015
jp HandleMovementData
-.Movement09
+.Movement09:
ld hl, Function5026
jp HandleMovementData
-.Movement0a
+.Movement0a:
jp _GetMovementPerson
-.Movement0b
+.Movement0b:
jp _GetMovementPerson
-.Movement0c
+.Movement0c:
jp _GetMovementPerson
-.Movement0d
+.Movement0d:
ld hl, Function5000
jp HandleMovementData
-.Movement0e
+.Movement0e:
jp _GetMovementPerson
-.Follow
+.Follow:
ld hl, GetFollowerNextMovementByte
jp HandleMovementData
-.Script
+.Script:
ld hl, GetMovementByte
jp HandleMovementData
-.Strength
+.Strength:
call MovementAnonymousJumptable
dw .Strength_Start
dw .Strength_Stop
-.Strength_Start
+.Strength_Start:
ld hl, OBJECT_NEXT_TILE
add hl, bc
ld a, [hl]
@@ -701,13 +701,13 @@ MapObjectMovementPattern: ; 47dd
.on_pit
call IncrementObjectMovementByteIndex
-.Strength_Stop
+.Strength_Stop:
ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
ld [hl], STANDING
ret
-.FollowNotExact
+.FollowNotExact:
ld hl, OBJECT_NEXT_MAP_X
add hl, bc
ld d, [hl]
@@ -769,7 +769,7 @@ MapObjectMovementPattern: ; 47dd
ld [hl], PERSON_ACTION_STAND
ret
-.MovementBigStanding
+.MovementBigStanding:
call EndSpriteMovement
ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
@@ -782,7 +782,7 @@ MapObjectMovementPattern: ; 47dd
ld [hl], STEP_TYPE_04
ret
-.MovementBouncing
+.MovementBouncing:
call EndSpriteMovement
ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
@@ -795,22 +795,22 @@ MapObjectMovementPattern: ; 47dd
ld [hl], STEP_TYPE_04
ret
-.MovementSpinCounterclockwise
+.MovementSpinCounterclockwise:
call MovementAnonymousJumptable
dw .MovementSpinInit
dw .MovementSpinRepeat
dw .MovementSpinTurnLeft
-.MovementSpinClockwise
+.MovementSpinClockwise:
call MovementAnonymousJumptable
dw .MovementSpinInit
dw .MovementSpinRepeat
dw .MovementSpinTurnRight
-.MovementSpinInit
+.MovementSpinInit:
call EndSpriteMovement
call IncrementObjectMovementByteIndex
-.MovementSpinRepeat
+.MovementSpinRepeat:
ld hl, OBJECT_ACTION
add hl, bc
ld [hl], PERSON_ACTION_STAND
@@ -827,23 +827,23 @@ MapObjectMovementPattern: ; 47dd
call IncrementObjectMovementByteIndex
ret
-.MovementSpinTurnLeft
+.MovementSpinTurnLeft:
ld de, .DirectionData_Counterclockwise
call .MovementSpinNextFacing
jr .MovementSpinCounterclockwise
-.DirectionData_Counterclockwise ; 49c0
+.DirectionData_Counterclockwise: ; 49c0
db OW_RIGHT, OW_LEFT, OW_DOWN, OW_UP
-.MovementSpinTurnRight
+.MovementSpinTurnRight:
ld de, .DirectionData_Clockwise
call .MovementSpinNextFacing
jr .MovementSpinClockwise
-.DirectionData_Clockwise ; 49cc
+.DirectionData_Clockwise: ; 49cc
db OW_LEFT, OW_RIGHT, OW_UP, OW_DOWN
-.MovementSpinNextFacing
+.MovementSpinNextFacing:
ld hl, OBJECT_FACING
add hl, bc
ld a, [hl]
@@ -860,7 +860,7 @@ MapObjectMovementPattern: ; 47dd
call DecrementObjectMovementByteIndex
ret
-.MovementShadow
+.MovementShadow:
call ._MovementShadow_Grass_Emote_BoulderDust
ld hl, OBJECT_ACTION
add hl, bc
@@ -896,7 +896,7 @@ MapObjectMovementPattern: ; 47dd
ld [hl], STEP_TYPE_TRACKING_OBJECT
ret
-.MovementEmote
+.MovementEmote:
call EndSpriteMovement
call ._MovementShadow_Grass_Emote_BoulderDust
ld hl, OBJECT_ACTION
@@ -916,7 +916,7 @@ MapObjectMovementPattern: ; 47dd
ld [hl], STEP_TYPE_TRACKING_OBJECT
ret
-.MovementBoulderDust
+.MovementBoulderDust:
call EndSpriteMovement
call ._MovementShadow_Grass_Emote_BoulderDust
ld hl, OBJECT_ACTION
@@ -960,7 +960,7 @@ MapObjectMovementPattern: ; 47dd
db 6, 2
db -6, 2
-.MovementShakingGrass
+.MovementShakingGrass:
call EndSpriteMovement
call ._MovementShadow_Grass_Emote_BoulderDust
ld hl, OBJECT_ACTION
@@ -978,7 +978,7 @@ MapObjectMovementPattern: ; 47dd
ld [hl], STEP_TYPE_TRACKING_OBJECT
ret
-._MovementShadow_Grass_Emote_BoulderDust
+._MovementShadow_Grass_Emote_BoulderDust:
ld hl, OBJECT_RANGE
add hl, bc
ld a, [hl]
@@ -994,7 +994,7 @@ MapObjectMovementPattern: ; 47dd
ld [hl], d
ret
-.MovementScreenShake
+.MovementScreenShake:
call EndSpriteMovement
ld hl, OBJECT_ACTION
add hl, bc
@@ -1014,7 +1014,7 @@ MapObjectMovementPattern: ; 47dd
ld [hl], STEP_TYPE_15
ret
-._MovementScreenShake
+._MovementScreenShake:
ld d, a
and %00111111
ld e, a
@@ -1031,7 +1031,7 @@ MapObjectMovementPattern: ; 47dd
add a
jr .loop
-.RandomWalkContinue
+.RandomWalkContinue:
call InitStep
call Function6ec1 ; check whether the object can move in that direction
jr c, .NewDuration
@@ -1054,7 +1054,7 @@ MapObjectMovementPattern: ; 47dd
ld [hl], STEP_TYPE_PLAYER_WALK
ret
-.NewDuration
+.NewDuration:
call EndSpriteMovement
call Function462a
RandomStepDuration_Slow: ; 4b1d
@@ -1131,7 +1131,7 @@ NPCJump: ; 4b86
dw .Jump
dw .Land
-.Jump
+.Jump:
call AddStepVector
call UpdateJumpPosition
ld hl, OBJECT_STEP_DURATION
@@ -1146,7 +1146,7 @@ NPCJump: ; 4b86
call IncrementObjectStructField28
ret
-.Land
+.Land:
call AddStepVector
call UpdateJumpPosition
ld hl, OBJECT_STEP_DURATION
@@ -1219,7 +1219,7 @@ TeleportFrom: ; 4c18
dw .DoSpinRise
; 4c23
-.InitSpin
+.InitSpin:
ld hl, OBJECT_STEP_FRAME
add hl, bc
ld [hl], 0
@@ -1227,7 +1227,7 @@ TeleportFrom: ; 4c18
add hl, bc
ld [hl], 16
call IncrementObjectStructField28
-.DoSpin
+.DoSpin:
ld hl, OBJECT_ACTION
add hl, bc
ld [hl], PERSON_ACTION_SPIN
@@ -1238,7 +1238,7 @@ TeleportFrom: ; 4c18
call IncrementObjectStructField28
ret
-.InitSpinRise
+.InitSpinRise:
ld hl, OBJECT_STEP_FRAME
add hl, bc
ld [hl], 0
@@ -1252,7 +1252,7 @@ TeleportFrom: ; 4c18
add hl, bc
res 3, [hl]
call IncrementObjectStructField28
-.DoSpinRise
+.DoSpinRise:
ld hl, OBJECT_ACTION
add hl, bc
ld [hl], PERSON_ACTION_SPIN
@@ -1292,7 +1292,7 @@ TeleportTo: ; 4c89
dw .FinishStep
; 4c9a
-.InitWait
+.InitWait:
ld hl, OBJECT_ACTION
add hl, bc
ld [hl], PERSON_ACTION_00
@@ -1303,13 +1303,13 @@ TeleportTo: ; 4c89
ret
; 4caa
-.DoWait
+.DoWait:
ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
call IncrementObjectStructField28
-.InitDescent
+.InitDescent:
ld hl, OBJECT_STEP_FRAME
add hl, bc
ld [hl], 0
@@ -1323,7 +1323,7 @@ TeleportTo: ; 4c89
ret
; 4cc9
-.DoDescent
+.DoDescent:
ld hl, OBJECT_ACTION
add hl, bc
ld [hl], PERSON_ACTION_SPIN
@@ -1343,7 +1343,7 @@ TeleportTo: ; 4c89
dec [hl]
ret nz
call IncrementObjectStructField28
-.InitFinalSpin
+.InitFinalSpin:
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], 16
@@ -1351,7 +1351,7 @@ TeleportTo: ; 4c89
ret
; 4cf5
-.DoFinalSpin
+.DoFinalSpin:
ld hl, OBJECT_ACTION
add hl, bc
ld [hl], PERSON_ACTION_SPIN
@@ -1359,7 +1359,7 @@ TeleportTo: ; 4c89
add hl, bc
dec [hl]
ret nz
-.FinishStep
+.FinishStep:
ld hl, OBJECT_STEP_FRAME
add hl, bc
ld [hl], 0
@@ -1381,7 +1381,7 @@ Skyfall: ; 4d14
dw .Finish
; 4d1f
-.Init
+.Init:
ld hl, OBJECT_ACTION
add hl, bc
ld [hl], PERSON_ACTION_00
@@ -1389,7 +1389,7 @@ Skyfall: ; 4d14
add hl, bc
ld [hl], 16
call IncrementObjectStructField28
-.Step
+.Step:
ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
@@ -1407,7 +1407,7 @@ Skyfall: ; 4d14
add hl, bc
ld [hl], 16
call IncrementObjectStructField28
-.Fall
+.Fall:
ld hl, OBJECT_31
add hl, bc
inc [hl]
@@ -1424,7 +1424,7 @@ Skyfall: ; 4d14
dec [hl]
ret nz
call IncrementObjectStructField28
-.Finish
+.Finish:
ld hl, OBJECT_STEP_FRAME
add hl, bc
ld [hl], 0
@@ -1444,7 +1444,7 @@ GotBiteStep: ; 4d7e
dw .Run
; 4d85
-.Init
+.Init:
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], 8
@@ -1452,7 +1452,7 @@ GotBiteStep: ; 4d7e
add hl, bc
ld [hl], 0
call IncrementObjectStructField28
-.Run
+.Run:
ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld a, [hl]
@@ -1476,7 +1476,7 @@ RockSmashStep: ; 4daf
jp WaitStep_InPlace
; 4db5
-.Step
+.Step:
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld a, [hl]
@@ -1548,7 +1548,7 @@ StepType05: ; 4e0c
dw .Reset
dw StepType04
-.Reset
+.Reset:
call RestoreDefaultMovement
call GetInitialFacing
ld hl, OBJECT_FACING
@@ -1740,13 +1740,13 @@ StepType15: ; 4f33
dw .Init
dw .Run
-.Init
+.Init:
xor a
ld hl, OBJECT_29
add hl, bc
ld [hl], a
call IncrementObjectStructField28
-.Run
+.Run:
ld hl, OBJECT_29
add hl, bc
ld d, [hl]
@@ -1772,7 +1772,7 @@ StepType15: ; 4f33
call DeleteMapObject
ret
-.GetSign
+.GetSign:
ld hl, OBJECT_30
add hl, bc
and 1
@@ -1801,7 +1801,7 @@ SkyfallTop: ; 4f83
dw .Init
dw .Run
-.Init
+.Init:
ld hl, OBJECT_ACTION
add hl, bc
ld [hl], PERSON_ACTION_10
@@ -1942,7 +1942,7 @@ HandleMovementData: ; 5041
jr nz, .loop
ret
-.StorePointer
+.StorePointer:
ld a, l
ld [wMovementPointer], a
ld a, h
@@ -2037,7 +2037,7 @@ GetFollowerNextMovementByte: ; 54e6
ld a, movement_step_sleep_1
ret
-.CancelFollowIfLeaderMissing
+.CancelFollowIfLeaderMissing:
ld a, [wObjectFollow_Leader]
cp -1
jr z, .nope
@@ -2068,7 +2068,7 @@ SpawnShadow: ; 5529
pop bc
ret
-.ShadowObject
+.ShadowObject:
; vtile, palette, movement
db $00, PAL_OW_SILVER, SPRITEMOVEDATA_SHADOW
; 5538
@@ -2080,7 +2080,7 @@ SpawnStrengthBoulderDust: ; 5538
pop bc
ret
-.BoulderDustObject
+.BoulderDustObject:
db $00, PAL_OW_SILVER, SPRITEMOVEDATA_BOULDERDUST
; 5547
SpawnEmote: ; 5547
@@ -2091,7 +2091,7 @@ SpawnEmote: ; 5547
pop bc
ret
-.EmoteObject
+.EmoteObject:
db $00, PAL_OW_SILVER, SPRITEMOVEDATA_EMOTE
; 5556
ShakeGrass: ; 5556
@@ -2116,7 +2116,7 @@ ShakeScreen: ; 5565
pop bc
ret
-.ScreenShakeObject
+.ScreenShakeObject:
db $00, PAL_OW_SILVER, SPRITEMOVEDATA_SCREENSHAKE
; 5579
DespawnEmote: ; 5579
@@ -2127,7 +2127,7 @@ DespawnEmote: ; 5579
pop bc
ret
-.DeleteEmote
+.DeleteEmote:
ld de, ObjectStructs
ld a, NUM_OBJECT_STRUCTS
.loop
@@ -2475,7 +2475,7 @@ HandleNPCStep:: ; 576a
call .DoStepsForAllObjects
ret
-.ResetStepVector
+.ResetStepVector:
xor a
ld [wPlayerStepVectorX], a
ld [wPlayerStepVectorY], a
@@ -2484,7 +2484,7 @@ HandleNPCStep:: ; 576a
ld [wPlayerStepDirection], a
ret
-.DoStepsForAllObjects
+.DoStepsForAllObjects:
ld bc, ObjectStructs
xor a
.loop
@@ -2871,7 +2871,7 @@ PRIORITY_HIGH EQU $30
call .InitSpritesByPriority
ret
-.DeterminePriorities
+.DeterminePriorities:
xor a
ld hl, wMovementPointer
ld bc, NUM_OBJECT_STRUCTS
@@ -2924,7 +2924,7 @@ PRIORITY_HIGH EQU $30
jr nz, .loop
ret
-.InitSpritesByPriority
+.InitSpritesByPriority:
ld hl, wMovementPointer
.next_sprite
ld a, [hli]
@@ -2943,7 +2943,7 @@ PRIORITY_HIGH EQU $30
pop bc
jr .next_sprite
-.InitSprite
+.InitSprite:
ld hl, OBJECT_SPRITE_TILE
add hl, bc
ld a, [hl]
@@ -3069,7 +3069,7 @@ PRIORITY_HIGH EQU $30
scf
ret
-.GetObjectStructPointer
+.GetObjectStructPointer:
ld c, a
ld b, 0
ld hl, .Addresses
@@ -3080,7 +3080,7 @@ PRIORITY_HIGH EQU $30
ld b, [hl]
ret
-.Addresses ; 5ace
+.Addresses: ; 5ace
dw PlayerStruct
dw Object1Struct
dw Object2Struct
diff --git a/engine/map_setup.asm b/engine/map_setup.asm
index 8fa768c87..952c12ac1 100644
--- a/engine/map_setup.asm
+++ b/engine/map_setup.asm
@@ -248,7 +248,7 @@ MapSetupCommands: ; 15440
dba EnterMapMusic ; 07
dba ForceMapMusic ; 08
dba FadeInMusic ; 09
- dba LoadBlockData ; 0a
+ dba LoadBlockData ; 0a (callback 1)
dba LoadNeighboringBlockData ; 0b
dba SaveScreen ; 0c
dba BufferScreen ; 0d
diff --git a/engine/mart.asm b/engine/mart.asm
index 5ee700951..f756d3bc2 100755
--- a/engine/mart.asm
+++ b/engine/mart.asm
@@ -143,7 +143,7 @@ GetMart: ; 15b31
ld de, DefaultMart
ret
-.IsAMart
+.IsAMart:
ld hl, Marts
rept 2
add hl, de
@@ -165,7 +165,7 @@ StandardMart: ; 15b47
jr nz, .loop
ret
-.MartFunctions
+.MartFunctions:
dw .HowMayIHelpYou
dw .TopMenu
dw .Buy
@@ -241,7 +241,7 @@ FarReadMart: ; 15bbb
ld h, [hl]
ld l, a
ld de, CurMart
-.CopyMart
+.CopyMart:
ld a, [MartPointerBank]
call GetFarByte
ld [de], a
@@ -251,7 +251,7 @@ FarReadMart: ; 15bbb
jr nz, .CopyMart
ld hl, wMartItem1BCD
ld de, CurMart + 1
-.ReadMartItem
+.ReadMartItem:
ld a, [de]
inc de
cp -1
@@ -299,7 +299,7 @@ GetMartPrice: ; 15bf0
ret
; 15c1a
-.CharToNybble ; 15c1a
+.CharToNybble: ; 15c1a
ld a, [de]
inc de
cp " "
@@ -427,7 +427,7 @@ endr
ret
; 15cb0
-.MartTextFunctionPointers ; 15cb0
+.MartTextFunctionPointers: ; 15cb0
dwb .StandardMartPointers, 0
dwb .HerbShopPointers, 0
dwb .BargainShopPointers, 1
@@ -592,7 +592,7 @@ endr
and a
ret
-.SoldOut
+.SoldOut:
ld a, MARTTEXT_SOLD_OUT
call LoadBuyMenuText
call JoyWaitAorB
@@ -651,7 +651,7 @@ MenuDataHeader_Buy: ; 0x15e18
db 1 ; default option
; 0x15e20
-.menudata2: ; 0x15e20
+.menudata2 ; 0x15e20
db $30 ; pointers
db 4, 8 ; rows, columns
db 1 ; horizontal spacing
@@ -846,7 +846,7 @@ SellMenu: ; 15eb3
ret
; 15eee
-.dw: ; 15eee
+.dw ; 15eee
dw .try_sell
dw .cant_buy
dw .cant_buy
@@ -856,12 +856,12 @@ SellMenu: ; 15eb3
dw .try_sell
; 15efc
-.cant_buy: ; 15efc
+.cant_buy ; 15efc
ret
; 15efd
-.try_sell: ; 15efd
+.try_sell ; 15efd
callba _CheckTossableItem
ld a, [wItemAttributeParamBuffer]
and a
@@ -936,7 +936,7 @@ MenuDataHeader_BuySell: ; 0x15f88
db 1 ; default option
; 0x15f90
-.menudata2: ; 0x15f90
+.menudata2 ; 0x15f90
db $80 ; strings
db 3 ; items
db "BUY@"
diff --git a/engine/menu.asm b/engine/menu.asm
index 074b2a28c..870ca89bf 100755
--- a/engine/menu.asm
+++ b/engine/menu.asm
@@ -414,7 +414,7 @@ _2DMenuInterpretJoypad: ; 24270
and a
ret
-.set_bit_7: ; 24299
+.set_bit_7 ; 24299
ld hl, w2DMenuFlags2
set 7, [hl]
scf
@@ -515,7 +515,7 @@ _2DMenuInterpretJoypad: ; 24270
ret
; 24318
-.a_b_start_select: ; 24318
+.a_b_start_select ; 24318
xor a
ret
; 2431a
@@ -654,7 +654,7 @@ _PushWindow:: ; 24374
ret
; 243cd
-.copy: ; 243cd
+.copy ; 243cd
call GetMenuBoxDims
inc b
inc c
@@ -681,7 +681,7 @@ _PushWindow:: ; 24374
ret
; 243e7
-.ret: ; 243e7
+.ret ; 243e7
ret
; 243e8
@@ -763,7 +763,7 @@ Error_Cant_ExitMenu: ; 2445d
ld hl, .Text_NoWindowsAvailableForPopping
call PrintText
call WaitBGMap
-.InfiniteLoop
+.InfiniteLoop:
jr .InfiniteLoop
; 24468
diff --git a/engine/mon_icons.asm b/engine/mon_icons.asm
index 5e41cd4a1..4b7f03bfb 100755
--- a/engine/mon_icons.asm
+++ b/engine/mon_icons.asm
@@ -14,7 +14,7 @@ LoadOverworldMonIcon: ; 8e82b
ret
; 8e83f
-Function8e83f: ; 8e83f
+LoadMenuMonIcon: ; 8e83f
push hl
push de
push bc
@@ -28,9 +28,8 @@ Function8e83f: ; 8e83f
.LoadIcon: ; 8e849
ld d, 0
ld hl, .Jumptable
-rept 2
add hl, de
-endr
+ add hl, de
ld a, [hli]
ld h, [hl]
ld l, a
@@ -39,13 +38,13 @@ endr
.Jumptable: ; 8e854 (23:6854)
- dw Function8e8d5 ; init
- dw Function8e961
- dw Function8e97d
- dw Trade_LoadMonIconGFX
- dw Function8e898
- dw Mobile_InitPartyMenuBGPal71
- dw .GetPartyMenuMonIcon
+ dw Function8e8d5 ; party menu
+ dw Function8e961 ; naming screen
+ dw Function8e97d ; moves (?)
+ dw Trade_LoadMonIconGFX ; trade
+ dw Function8e898 ; mobile
+ dw Mobile_InitPartyMenuBGPal71 ; mobile
+ dw .GetPartyMenuMonIcon ; unused
.GetPartyMenuMonIcon: ; 8e862 (23:6862)
@@ -89,7 +88,7 @@ Function8e898: ; 8e898 (23:6898)
call Function8e8d5
ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
add hl, bc
- ld a, $0
+ ld a, SPRITE_ANIM_SEQ_NULL
ld [hl], a
ld hl, SPRITEANIMSTRUCT_XCOORD
add hl, bc
@@ -106,7 +105,7 @@ Mobile_InitPartyMenuBGPal71: ; 8e8b1 (23:68b1)
call SetPartyMonIconAnimSpeed
ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
add hl, bc
- ld a, $0
+ ld a, SPRITE_ANIM_SEQ_NULL
ld [hl], a
ld hl, SPRITEANIMSTRUCT_XCOORD
add hl, bc
@@ -203,7 +202,7 @@ SetPartyMonIconAnimSpeed: ; 8e936 (23:6936)
ld [hl], a
ret
-.getspeed: ; 8e94c (23:694c)
+.getspeed ; 8e94c (23:694c)
callba PlacePartymonHPBar
call GetHPPal
ld e, d
@@ -214,7 +213,7 @@ SetPartyMonIconAnimSpeed: ; 8e936 (23:6936)
ret
; 8e95e (23:695e)
-.speeds: ; 8e95e
+.speeds ; 8e95e
db $00, $40, $80
; 8e961
@@ -229,7 +228,7 @@ Function8e961: ; 8e961 (23:6961)
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
add hl, bc
- ld [hl], $0
+ ld [hl], SPRITE_ANIM_SEQ_NULL
ret
Function8e97d: ; 8e97d (23:697d)
diff --git a/engine/mon_menu.asm b/engine/mon_menu.asm
index f560b1b15..a6dcf0eb7 100755
--- a/engine/mon_menu.asm
+++ b/engine/mon_menu.asm
@@ -148,7 +148,7 @@ GetMonMenuString: ; 24db0
call GetMoveName
ret
-.NotMove
+.NotMove:
inc hl
ld a, [hl]
dec a
diff --git a/engine/money.asm b/engine/money.asm
index aa1d7b696..874821814 100755
--- a/engine/money.asm
+++ b/engine/money.asm
@@ -191,7 +191,7 @@ GiveCoins:: ; 1606f
ret
; 1608d
-.maxcoins: ; 1608d
+.maxcoins ; 1608d
bigdw 9999
; 1608f
diff --git a/engine/move_mon.asm b/engine/move_mon.asm
index 0a8c340ed..310eab8c2 100755
--- a/engine/move_mon.asm
+++ b/engine/move_mon.asm
@@ -655,7 +655,7 @@ SentGetPkmnIntoFromBox: ; db3f
dec a
ld b, a
call Functiondcb6
-.CloseSRAM_And_ClearCarryFlag
+.CloseSRAM_And_ClearCarryFlag:
call CloseSRAM
and a
ret
@@ -1032,7 +1032,7 @@ SentPkmnIntoBox: ; de6e
ret
; df42
-.full: ; df42
+.full ; df42
call CloseSRAM
and a
ret
@@ -1481,30 +1481,30 @@ endr
pop bc
jr .GotDV
-.Attack
+.Attack:
ld a, [hl]
swap a
and $f
jr .GotDV
-.Defense
+.Defense:
ld a, [hl]
and $f
jr .GotDV
-.Speed
+.Speed:
inc hl
ld a, [hl]
swap a
and $f
jr .GotDV
-.Special
+.Special:
inc hl
ld a, [hl]
and $f
-.GotDV
+.GotDV:
ld d, 0
add e
ld e, a
diff --git a/engine/movement.asm b/engine/movement.asm
index ca3ac55b5..5a05aab49 100644
--- a/engine/movement.asm
+++ b/engine/movement.asm
@@ -55,8 +55,8 @@ MovementPointers: ; 5075
dw Movement_fast_jump_step_up ; 35
dw Movement_fast_jump_step_left ; 36
dw Movement_fast_jump_step_right ; 37
- dw Movement_38 ; 38
- dw Movement_39 ; 39
+ dw Movement_remove_sliding ; 38
+ dw Movement_set_sliding ; 39
dw Movement_remove_fixed_facing ; 3a
dw Movement_fix_facing ; 3b
dw Movement_show_person ; 3c
@@ -85,7 +85,7 @@ MovementPointers: ; 5075
dw Movement_hide_emote ; 53
dw Movement_show_emote ; 54
dw Movement_step_shake ; 55
- dw Movement_56 ; 56
+ dw Movement_tree_shake ; 56
dw Movement_rock_smash ; 57
dw Movement_return_dig ; 58
dw Movement_skyfall_top ; 59
@@ -353,7 +353,7 @@ Movement_step_bump: ; 525f
ret
; 5279
-Movement_56: ; 5279
+Movement_tree_shake: ; 5279
ld a, 24
ld hl, OBJECT_STEP_DURATION
add hl, bc
@@ -373,14 +373,14 @@ Movement_56: ; 5279
ret
; 5293
-Movement_38: ; 5293
+Movement_remove_sliding: ; 5293
ld hl, OBJECT_FLAGS1
add hl, bc
res SLIDING, [hl]
jp ContinueReadingMovement
; 529c
-Movement_39: ; 529c
+Movement_set_sliding: ; 529c
ld hl, OBJECT_FLAGS1
add hl, bc
set SLIDING, [hl]
diff --git a/engine/mysterygift.asm b/engine/mysterygift.asm
index 0360bc74f..5e6d317ba 100755
--- a/engine/mysterygift.asm
+++ b/engine/mysterygift.asm
@@ -198,9 +198,9 @@ DoMysteryGift: ; 1048ba (41:48ba)
inc hl
dec d
jr .loop
-.Yes
+.Yes:
scf
-.No
+.No:
jp CloseSRAM
.AddMysteryGiftPartnerID: ; 104a56 (41:4a56)
@@ -1350,7 +1350,7 @@ Function105153: ; 105153 (41:5153)
.Load16GFX: ; 105236 (41:5236)
ld b, 16
-.gfx_loop: ; 105238 (41:5238)
+.gfx_loop ; 105238 (41:5238)
ld [hli], a
inc a
dec b
@@ -1368,7 +1368,7 @@ Function105153: ; 105153 (41:5153)
.Load14Column: ; 105246 (41:5246)
ld b, 14
-.col_loop: ; 105248 (41:5248)
+.col_loop ; 105248 (41:5248)
ld [hl], a
ld de, SCREEN_WIDTH
add hl, de
@@ -1651,7 +1651,7 @@ Function1057d7: ; 1057d7 (41:57d7)
.Load12Row: ; 1058ce (41:58ce)
ld b, 12
-.row_loop: ; 1058d0 (41:58d0)
+.row_loop ; 1058d0 (41:58d0)
ld [hli], a
inc a
dec b
@@ -1669,7 +1669,7 @@ Function1057d7: ; 1057d7 (41:57d7)
.Load14Column: ; 1058de (41:58de)
ld b, 14
-.column_loop: ; 1058e0 (41:58e0)
+.column_loop ; 1058e0 (41:58e0)
ld [hl], a
ld de, SCREEN_WIDTH
add hl, de
diff --git a/engine/namingscreen.asm b/engine/namingscreen.asm
index ac56ec250..d9fe253fb 100755
--- a/engine/namingscreen.asm
+++ b/engine/namingscreen.asm
@@ -88,10 +88,10 @@ endr
.Pokemon: ; 1173e (4:573e)
ld a, [CurPartySpecies]
ld [wd265], a
- ld hl, Function8e83f
- ld a, BANK(Function8e83f)
+ ld hl, LoadMenuMonIcon
+ ld a, BANK(LoadMenuMonIcon)
ld e, $1
- rst FarCall ; ; indirect jump to Function8e83f (8e83f (23:683f))
+ rst FarCall ; ; indirect jump to LoadMenuMonIcon (8e83f (23:683f))
ld a, [CurPartySpecies]
ld [wd265], a
call GetPokemonName
@@ -211,7 +211,7 @@ endr
; 11839 (4:5839)
-.oTomodachi_no_namae_sutoringu: ; 11839
+.oTomodachi_no_namae_sutoringu ; 11839
db "おともだち の なまえは?@"
; 11847
@@ -1076,7 +1076,7 @@ _ComposeMailMessage: ; 11e75 (mail?)
INCBIN "gfx/icon/mail2.2bpp"
; 11f74
-.initwNamingScreenMaxNameLength: ; 11f74 (4:5f74)
+.initwNamingScreenMaxNameLength ; 11f74 (4:5f74)
ld a, MAIL_MSG_LENGTH + 1
ld [wNamingScreenMaxNameLength], a
ret
@@ -1176,7 +1176,7 @@ endr
dw .init_blinking_cursor
dw .process_joypad
-.init_blinking_cursor: ; 1201b (4:601b)
+.init_blinking_cursor ; 1201b (4:601b)
depixel 9, 2
ld a, SPRITE_ANIM_INDEX_09
call _InitSpriteAnimStruct
@@ -1194,7 +1194,7 @@ endr
inc [hl]
ret
-.process_joypad: ; 1203a (4:603a)
+.process_joypad ; 1203a (4:603a)
ld hl, hJoyPressed ; $ffa7
ld a, [hl]
and A_BUTTON
diff --git a/engine/options_menu.asm b/engine/options_menu.asm
index f6d8392d9..00799395a 100755
--- a/engine/options_menu.asm
+++ b/engine/options_menu.asm
@@ -52,7 +52,7 @@ _OptionsMenu: ; e41d0
call DelayFrames
jr .joypad_loop
-.ExitOptions
+.ExitOptions:
ld de, SFX_TRANSACTION
call PlaySFX
call WaitSFX
@@ -94,7 +94,7 @@ endr
jp [hl] ; jump to the code of the current highlighted item
; e42e5
-.Pointers
+.Pointers:
dw Options_TextSpeed
dw Options_BattleScene
dw Options_BattleStyle
@@ -118,29 +118,29 @@ Options_TextSpeed: ; e42f5
jr c, .Increase
ld c, FAST_TEXT +- 1
-.Increase
+.Increase:
inc c
ld a, e
jr .Save
-.LeftPressed
+.LeftPressed:
ld a, c
and a
jr nz, .Decrease
ld c, SLOW_TEXT + 1
-.Decrease
+.Decrease:
dec c
ld a, d
-.Save
+.Save:
ld b, a
ld a, [Options]
and $f0
or b
ld [Options], a
-.NonePressed
+.NonePressed:
ld b, 0
ld hl, .Strings
rept 2
@@ -155,16 +155,16 @@ endr
ret
; e4331
-.Strings
+.Strings:
dw .Fast
dw .Mid
dw .Slow
-.Fast
+.Fast:
db "FAST@"
-.Mid
+.Mid:
db "MID @"
-.Slow
+.Slow:
db "SLOW@"
; e4346
@@ -203,35 +203,35 @@ Options_BattleScene: ; e4365
jr nz, .ToggleOn
jr .ToggleOff
-.LeftPressed
+.LeftPressed:
bit BATTLE_SCENE, [hl]
jr z, .ToggleOff
jr .ToggleOn
-.NonePressed
+.NonePressed:
bit BATTLE_SCENE, [hl]
jr z, .ToggleOn
jr .ToggleOff
-.ToggleOn
+.ToggleOn:
res BATTLE_SCENE, [hl]
ld de, .On
jr .Display
-.ToggleOff
+.ToggleOff:
set BATTLE_SCENE, [hl]
ld de, .Off
-.Display
+.Display:
hlcoord 11, 5
call PlaceString
and a
ret
; e4398
-.On
+.On:
db "ON @"
-.Off
+.Off:
db "OFF@"
; e43a0
@@ -247,34 +247,34 @@ Options_BattleStyle: ; e43a0
jr nz, .ToggleShift
jr .ToggleSet
-.LeftPressed
+.LeftPressed:
bit BATTLE_SHIFT, [hl]
jr z, .ToggleSet
jr .ToggleShift
-.NonePressed
+.NonePressed:
bit BATTLE_SHIFT, [hl]
jr nz, .ToggleSet
-.ToggleShift
+.ToggleShift:
res BATTLE_SHIFT, [hl]
ld de, .Shift
jr .Display
-.ToggleSet
+.ToggleSet:
set BATTLE_SHIFT, [hl]
ld de, .Set
-.Display
+.Display:
hlcoord 11, 7
call PlaceString
and a
ret
; e43d1
-.Shift
+.Shift:
db "SHIFT@"
-.Set
+.Set:
db "SET @"
; e43dd
@@ -290,41 +290,41 @@ Options_Sound: ; e43dd
jr nz, .SetMono
jr .SetStereo
-.LeftPressed
+.LeftPressed:
bit STEREO, [hl]
jr z, .SetStereo
jr .SetMono
-.NonePressed
+.NonePressed:
bit STEREO, [hl]
jr nz, .ToggleStereo
jr .ToggleMono
-.SetMono
+.SetMono:
res STEREO, [hl]
call RestartMapMusic
-.ToggleMono
+.ToggleMono:
ld de, .Mono
jr .Display
-.SetStereo
+.SetStereo:
set STEREO, [hl]
call RestartMapMusic
-.ToggleStereo
+.ToggleStereo:
ld de, .Stereo
-.Display
+.Display:
hlcoord 11, 9
call PlaceString
and a
ret
; e4416
-.Mono
+.Mono:
db "MONO @"
-.Stereo
+.Stereo:
db "STEREO@"
; e4424
@@ -341,26 +341,26 @@ Options_Print: ; e4424
jr c, .Increase
ld c, -1
-.Increase
+.Increase:
inc c
ld a, e
jr .Save
-.LeftPressed
+.LeftPressed:
ld a, c
and a
jr nz, .Decrease
ld c, 5
-.Decrease
+.Decrease:
dec c
ld a, d
-.Save
+.Save:
ld b, a
ld [GBPrinter], a
-.NonePressed
+.NonePressed:
ld b, $0
ld hl, .Strings
rept 2
@@ -375,22 +375,22 @@ endr
ret
; e445a
-.Strings
+.Strings:
dw .Lightest
dw .Lighter
dw .Normal
dw .Darker
dw .Darkest
-.Lightest
+.Lightest:
db "LIGHTEST@"
-.Lighter
+.Lighter:
db "LIGHTER @"
-.Normal
+.Normal:
db "NORMAL @"
-.Darker
+.Darker:
db "DARKER @"
-.Darkest
+.Darkest:
db "DARKEST @"
; e4491
@@ -409,22 +409,22 @@ GetPrinterSetting: ; e4491
lb de, PRINT_LIGHTER, PRINT_DARKER ; the 2 values next to this setting
ret
-.IsLightest
+.IsLightest:
ld c, 0
lb de, PRINT_DARKEST, PRINT_LIGHTER ; the 2 values next to this setting
ret
-.IsLight
+.IsLight:
ld c, 1
lb de, PRINT_LIGHTEST, PRINT_NORMAL ; the 2 values next to this setting
ret
-.IsDark
+.IsDark:
ld c, 3
lb de, PRINT_NORMAL, PRINT_DARKEST ; the 2 values next to this setting
ret
-.IsDarkest
+.IsDarkest:
ld c, 4
lb de, PRINT_DARKER, PRINT_LIGHTEST ; the 2 values next to this setting
ret
@@ -441,34 +441,34 @@ Options_MenuAccount: ; e44c1
jr nz, .ToggleOff
jr .ToggleOn
-.LeftPressed
+.LeftPressed:
bit MENU_ACCOUNT, [hl]
jr z, .ToggleOn
jr .ToggleOff
-.NonePressed
+.NonePressed:
bit MENU_ACCOUNT, [hl]
jr nz, .ToggleOn
-.ToggleOff
+.ToggleOff:
res MENU_ACCOUNT, [hl]
ld de, .Off
jr .Display
-.ToggleOn
+.ToggleOn:
set MENU_ACCOUNT, [hl]
ld de, .On
-.Display
+.Display:
hlcoord 11, 13
call PlaceString
and a
ret
; e44f2
-.Off
+.Off:
db "OFF@"
-.On
+.On:
db "ON @"
; e44fa
@@ -483,16 +483,16 @@ Options_Frame: ; e44fa
and a
ret
-.RightPressed
+.RightPressed:
ld a, [hl]
inc a
jr .Save
-.LeftPressed
+.LeftPressed:
ld a, [hl]
dec a
-.Save
+.Save:
and $7
ld [hl], a
UpdateFrame: ; e4512
@@ -512,7 +512,7 @@ Options_Cancel: ; e4520
and a
ret
-.Exit
+.Exit:
scf
ret
; e452a
@@ -527,7 +527,7 @@ OptionsControl: ; e452a
and a
ret
-.DownPressed
+.DownPressed:
ld a, [hl] ; load the cursor position to a
cp $7 ; maximum number of items in option menu
jr nz, .CheckFive
@@ -535,17 +535,17 @@ OptionsControl: ; e452a
scf
ret
-.CheckFive ; I have no idea why this exists...
+.CheckFive: ; I have no idea why this exists...
cp $5
jr nz, .Increase
ld [hl], $5
-.Increase
+.Increase:
inc [hl]
scf
ret
-.UpPressed
+.UpPressed:
ld a, [hl]
cp $6
jr nz, .NotSix
@@ -553,12 +553,12 @@ OptionsControl: ; e452a
scf
ret
-.NotSix
+.NotSix:
and a
jr nz, .Decrease
ld [hl], $8 ; number of option items +1
-.Decrease
+.Decrease:
dec [hl]
scf
ret
diff --git a/engine/overworld.asm b/engine/overworld.asm
index e1d50d0b8..5e12b09a2 100755
--- a/engine/overworld.asm
+++ b/engine/overworld.asm
@@ -95,14 +95,14 @@ GetPlayerSprite: ; 14183
ld [PlayerObjectSprite], a
ret
-.Chris
+.Chris:
db PLAYER_NORMAL, SPRITE_CHRIS
db PLAYER_BIKE, SPRITE_CHRIS_BIKE
db PLAYER_SURF, SPRITE_SURF
db PLAYER_SURF_PIKA, SPRITE_SURFING_PIKACHU
db $ff
-.Kris
+.Kris:
db PLAYER_NORMAL, SPRITE_KRIS
db PLAYER_BIKE, SPRITE_KRIS_BIKE
db PLAYER_SURF, SPRITE_SURF
@@ -241,11 +241,11 @@ GetMonSprite: ; 14259
jr nc, .Variable
jr .Icon
-.Normal
+.Normal:
and a
ret
-.Icon
+.Icon:
sub SPRITE_POKEMON
ld e, a
ld d, 0
@@ -261,7 +261,7 @@ GetMonSprite: ; 14259
.wBreedMon2
ld a, [wBreedMon2Species]
-.Mon
+.Mon:
ld e, a
and a
jr z, .NoBreedmon
@@ -273,7 +273,7 @@ GetMonSprite: ; 14259
scf
ret
-.Variable
+.Variable:
sub SPRITE_VARS
ld e, a
ld d, 0
@@ -283,7 +283,7 @@ GetMonSprite: ; 14259
and a
jp nz, GetMonSprite
-.NoBreedmon
+.NoBreedmon:
ld a, 1
ld l, 1
ld h, 0
@@ -410,7 +410,7 @@ LoadSpriteGFX: ; 14306
.done
ret
-.LoadSprite
+.LoadSprite:
call GetSprite
ld a, l
ret
@@ -424,7 +424,7 @@ SortUsedSprites: ; 1431e
ld c, SPRITE_GFX_LIST_CAPACITY
ld de, UsedSprites + (SPRITE_GFX_LIST_CAPACITY - 1) * 2
-.FindLastSprite
+.FindLastSprite:
ld a, [de]
and a
jr nz, .FoundLastSprite
@@ -433,7 +433,7 @@ rept 2
endr
dec c
jr nz, .FindLastSprite
-.FoundLastSprite
+.FoundLastSprite:
dec c
jr z, .quit
@@ -443,12 +443,12 @@ endr
inc de
ld hl, UsedSprites + 1
-.CheckSprite
+.CheckSprite:
push bc
push de
push hl
-.CheckFollowing
+.CheckFollowing:
ld a, [de]
cp [hl]
jr nc, .loop
@@ -499,7 +499,7 @@ ArrangeUsedSprites: ; 14355
ld hl, UsedSprites
ld c, SPRITE_GFX_LIST_CAPACITY
ld b, 0
-.FirstTableLength
+.FirstTableLength:
; Keep going until the end of the list.
ld a, [hli]
and a
@@ -523,11 +523,11 @@ ArrangeUsedSprites: ; 14355
dec c
jr nz, .FirstTableLength
-.SecondTable
+.SecondTable:
; The second tile table starts at tile $80.
ld b, $80
dec hl
-.SecondTableLength
+.SecondTableLength:
; Keep going until the end of the list.
ld a, [hli]
and a
@@ -565,11 +565,11 @@ GetSpriteLength: ; 14386
ld a, 12
ret
-.AnyDirection
+.AnyDirection:
ld a, 12
ret
-.OneDirection
+.OneDirection:
ld a, 4
ret
; 1439b
diff --git a/engine/pack.asm b/engine/pack.asm
index 8d1b63232..ff80dce23 100644
--- a/engine/pack.asm
+++ b/engine/pack.asm
@@ -28,7 +28,7 @@ Pack: ; 10000
; 10030
.Jumptable: ; 10030 (4:4030)
-
+
dw .InitGFX ; 0
dw .InitItemsPocket ; 1
dw .ItemsPocketMenu ; 2
@@ -163,7 +163,7 @@ Pack: ; 10000
; 0x10137
.Jumptable1: ; 10137
-
+
dw .UseItem
dw QuitItemSubmenu
@@ -328,7 +328,7 @@ MenuDataHeader_UsableKeyItem: ; 0x10249
; 0x1026a
Jumptable_UseGiveTossRegisterQuit: ; 1026a
-
+
dw UseItem
dw GiveItem
dw TossMenu
@@ -354,7 +354,7 @@ MenuDataHeader_UsableItem: ; 0x10274
; 0x10291
Jumptable_UseGiveTossQuit: ; 10291
-
+
dw UseItem
dw GiveItem
dw TossMenu
@@ -377,7 +377,7 @@ MenuDataHeader_UnusableItem: ; 0x10299
; 0x102ac
Jumptable_UseQuit: ; 102ac
-
+
dw UseItem
dw QuitItemSubmenu
; 102b0
@@ -399,7 +399,7 @@ MenuDataHeader_UnusableKeyItem: ; 0x102b0
; 0x102c7
Jumptable_UseRegisterQuit: ; 102c7
-
+
dw UseItem
dw RegisterItem
dw QuitItemSubmenu
@@ -423,7 +423,7 @@ MenuDataHeader_HoldableKeyItem: ; 0x102cd
; 0x102ea
Jumptable_GiveTossRegisterQuit: ; 102ea
-
+
dw GiveItem
dw TossMenu
dw RegisterItem
@@ -447,7 +447,7 @@ MenuDataHeader_HoldableItem: ; 0x102f2
; 0x1030b
Jumptable_GiveTossQuit: ; 1030b
-
+
dw GiveItem
dw TossMenu
dw QuitItemSubmenu
@@ -462,8 +462,8 @@ UseItem: ; 10311
ret
; 1031f
-.dw: ; 1031f (4:431f)
-
+.dw ; 1031f (4:431f)
+
dw .Oak
dw .Oak
dw .Oak
@@ -494,7 +494,7 @@ UseItem: ; 10311
call Pack_InitColors
ret
-.NoPokemon
+.NoPokemon:
ld hl, TextJump_YouDontHaveAPkmn
call Pack_PrintTextNoScroll
ret
@@ -694,7 +694,7 @@ BattlePack: ; 10493
; 104c3
.Jumptable: ; 104c3 (4:44c3)
-
+
dw .InitGFX ; 0
dw .InitItemsPocket ; 1
dw .ItemsPocketMenu ; 2
@@ -833,7 +833,7 @@ TMHMSubmenu: ; 105dc (4:45dc)
ld de, .UsableJumptable
jr .proceed
-.NoUse
+.NoUse:
ld hl, .UnusableMenuDataHeader
ld de, .UnusableJumptable
.proceed
@@ -865,7 +865,7 @@ TMHMSubmenu: ; 105dc (4:45dc)
; 0x10614
.UsableJumptable: ; 10614
-
+
dw .Use
dw .Quit
; 10618
@@ -885,7 +885,7 @@ TMHMSubmenu: ; 105dc (4:45dc)
; 0x10627
.UnusableJumptable: ; 10627
-
+
dw .Quit
; 10629
@@ -897,7 +897,7 @@ TMHMSubmenu: ; 105dc (4:45dc)
ret
.ItemFunctionJumptable: ; 10637 (4:4637)
-
+
dw .Oak
dw .Oak
dw .Oak
@@ -941,12 +941,12 @@ TMHMSubmenu: ; 105dc (4:45dc)
jr z, .Oak
cp $2
jr z, .didnt_use_item
-.quit_run_script: ; 1067e (4:467e)
+.quit_run_script ; 1067e (4:467e)
ld a, 10
ld [wJumptableIndex], a
ret
-.didnt_use_item: ; 10684 (4:4684)
+.didnt_use_item ; 10684 (4:4684)
xor a
ld [wItemEffectSucceeded], a
ret
@@ -1002,7 +1002,7 @@ DepositSellPack: ; 106be
; 106d1
.Jumptable: ; 106d1 (4:46d1)
-
+
dw .ItemsPocket
dw .BallsPocket
dw .KeyItemsPocket
@@ -1148,8 +1148,8 @@ TutorialPack: ; 107bb
; 107e1
-.dw: ; 107e1 (4:47e1)
-
+.dw ; 107e1 (4:47e1)
+
dw .Items
dw .Balls
dw .KeyItems
@@ -1495,7 +1495,7 @@ DrawPocketName: ; 109bb
ret
; 109e1
-.tilemap: ; 109e1
+.tilemap ; 109e1
db $00, $04, $04, $04, $01 ; top border
db $06, $07, $08, $09, $0a ; Items
db $02, $05, $05, $05, $03 ; bottom border
diff --git a/engine/party_menu.asm b/engine/party_menu.asm
index b9048da10..934e1458a 100644
--- a/engine/party_menu.asm
+++ b/engine/party_menu.asm
@@ -263,7 +263,7 @@ PlacePartyMonLevel: ; 50176
ld [hli], a
lb bc, PRINTNUM_RIGHTALIGN | 1, 2
; jr .okay
-.ThreeDigits
+.ThreeDigits:
lb bc, PRINTNUM_RIGHTALIGN | 1, 3
; .okay
call PrintNum
@@ -359,11 +359,11 @@ PlacePartyMonTMHMCompatibility: ; 501e0
ret
; 50221
-.string_able: ; 50221
+.string_able ; 50221
db "ABLE@"
; 50226
-.string_not_able: ; 50226
+.string_not_able ; 50226
db "NOT ABLE@"
; 5022f
@@ -448,10 +448,10 @@ endr
ret
; 502a3
-.string_able: ; 502a3
+.string_able ; 502a3
db "ABLE@"
; 502a8
-.string_not_able: ; 502a8
+.string_not_able ; 502a8
db "NOT ABLE@"
; 502b1
@@ -496,15 +496,15 @@ PlacePartyMonGender: ; 502b1
ret
; 502ee
-.male: ; 502ee
+.male ; 502ee
db "♂…MALE@"
; 502f5
-.female: ; 502f5
+.female ; 502f5
db "♀…FEMALE@"
; 502fe
-.unknown: ; 502fe
+.unknown ; 502fe
db "…UNKNOWN@"
; 50307
@@ -658,8 +658,8 @@ InitPartyMenuGFX: ; 503e0
.loop
push bc
push hl
- ld hl, Function8e83f
- ld a, BANK(Function8e83f)
+ ld hl, LoadMenuMonIcon
+ ld a, BANK(LoadMenuMonIcon)
ld e, $0
rst FarCall
ld a, [hObjectStructIndexBuffer]
@@ -752,8 +752,8 @@ PartyMenuSelect: ; 0x50457
ld [wPartyMenuCursor], a
ld a, [hJoyLast]
ld b, a
- bit 1, b
- jr nz, .exitmenu ; B button?
+ bit B_BUTTON_F, b
+ jr nz, .exitmenu ; B button
ld a, [wMenuCursorY]
dec a
ld [CurPartyMon], a
diff --git a/engine/phone.asm b/engine/phone.asm
index 1a3023bf1..7f96dd2c3 100644
--- a/engine/phone.asm
+++ b/engine/phone.asm
@@ -60,7 +60,7 @@ Phone_FindOpenSlot: ; 9002d
xor a
ret
-.FoundOpenSpace
+.FoundOpenSpace:
dec hl
scf
ret
@@ -153,7 +153,7 @@ CheckPhoneCall:: ; 90074 (24:4074)
xor a
ret
-.timecheck: ; 900a6 (24:40a6)
+.timecheck ; 900a6 (24:40a6)
callba CheckReceiveCallTimer
ret
@@ -196,7 +196,7 @@ ChooseRandomCaller: ; 900bf (24:40bf)
scf
ret
-.NothingToSample
+.NothingToSample:
xor a
ret
@@ -288,12 +288,12 @@ endr
call CallScript
scf
ret
-.NoPhoneCall
+.NoPhoneCall:
xor a
ret
; 90173 (24:4173)
-.script: ; 0x90173
+.script ; 0x90173
pause 30
jump Script_ReceivePhoneCall
; 0x90178
@@ -363,7 +363,7 @@ Function90199: ; 90199 (24:4199)
ld hl, PhoneScript_JustTalkToThem
jr .DoPhoneCall
-.GetPhoneScript
+.GetPhoneScript:
ld hl, PHONE_CONTACT_SCRIPT1_BANK
add hl, de
ld b, [hl]
@@ -374,13 +374,13 @@ Function90199: ; 90199 (24:4199)
ld l, a
jr .DoPhoneCall
-.OutOfArea
+.OutOfArea:
ld b, BANK(UnknownScript_0x90209)
ld de, UnknownScript_0x90209
call ExecuteCallbackScript
ret
-.DoPhoneCall
+.DoPhoneCall:
ld a, b
ld [wd002], a
ld a, l
@@ -430,10 +430,10 @@ LoadCallerScript: ; 9020d (24:420d)
WrongNumber: ; 90233
db TRAINER_NONE, PHONE_00
dba .script
-.script:
+.script
writetext .text
end
-.text:
+.text
; Huh? Sorry, wrong number!
text_jump UnknownText_0x1c5565
db "@"
@@ -451,22 +451,20 @@ Script_ReceivePhoneCall: ; 0x90241
; 0x90255
Script_SpecialBillCall:: ; 0x90255
- callasm Function9025c
+ callasm .LoadBillScript
jump Script_ReceivePhoneCall
-; 0x9025c
-Function9025c: ; 9025c
+.LoadBillScript:
ld e, PHONE_BILL
jp LoadCallerScript
; 90261
UnknownScript_0x90261: ; 0x90261
- callasm Function9026a
+ callasm .LoadElmScript
pause 30
jump Script_ReceivePhoneCall
-; 0x9026a
-Function9026a: ; 9026a
+.LoadElmScript:
ld e, PHONE_ELM
jp LoadCallerScript
; 9026f
@@ -494,7 +492,6 @@ Phone_CallerTextboxWithName: ; 90292 (24:4292)
call Function90363
ret
-
PhoneCall:: ; 9029a
ld a, b
ld [PhoneScriptBank], a
@@ -697,7 +694,7 @@ GetCallerName: ; 903a9 (24:43a9)
call PlaceString
ret
-.NotTrainer
+.NotTrainer:
push hl
ld c, b
ld b, 0
@@ -721,12 +718,12 @@ NonTrainerCallerNames: ; 903d6
dw .elm
dw .buena
-.none: db "----------@"
-.mom: db "MOM:@"
-.bill: db "BILL:@"
-.elm: db "PROF.ELM:@"
-.bikeshop: db "BIKE SHOP:@"
-.buena: db "BUENA:", $22, " DISC JOCKEY@"
+.none db "----------@"
+.mom db "MOM:@"
+.bill db "BILL:@"
+.elm db "PROF.ELM:@"
+.bikeshop db "BIKE SHOP:@"
+.buena db "BUENA:", $22, " DISC JOCKEY@"
; 90423
Phone_GetTrainerName: ; 90423 (24:4423)
diff --git a/engine/phone_scripts.asm b/engine/phone_scripts.asm
index bcfec65e0..f57404cb1 100644
--- a/engine/phone_scripts.asm
+++ b/engine/phone_scripts.asm
@@ -3137,7 +3137,7 @@ PhoneScript_MonFlavorText:
.TooEnergetic:
farjump .unnecessary
-.unnecessary:
+.unnecessary
farwritetext UnknownText_0x1b522b
buttonsound
farjump PhoneScript_HangupText_Male
diff --git a/engine/player_movement.asm b/engine/player_movement.asm
index 80c5e6edc..d02d1e5b2 100755
--- a/engine/player_movement.asm
+++ b/engine/player_movement.asm
@@ -11,7 +11,7 @@ DoPlayerMovement:: ; 80000
ld [wPlayerNextMovement], a
ret
-.GetDPad
+.GetDPad:
ld a, [hJoyDown]
ld [CurInput], a
@@ -32,7 +32,7 @@ DoPlayerMovement:: ; 80000
ret
; 8002d
-.TranslateIntoMovement
+.TranslateIntoMovement:
ld a, [PlayerState]
cp PLAYER_NORMAL
jr z, .Normal
@@ -45,7 +45,7 @@ DoPlayerMovement:: ; 80000
cp PLAYER_SLIP
jr z, .Ice
-.Normal
+.Normal:
call .CheckForced
call .GetAction
call .CheckTile
@@ -60,7 +60,7 @@ DoPlayerMovement:: ; 80000
ret c
jr .NotMoving
-.Surf
+.Surf:
call .CheckForced
call .GetAction
call .CheckTile
@@ -71,7 +71,7 @@ DoPlayerMovement:: ; 80000
ret c
jr .NotMoving
-.Ice
+.Ice:
call .CheckForced
call .GetAction
call .CheckTile
@@ -88,12 +88,12 @@ DoPlayerMovement:: ; 80000
cp STANDING
jr z, .HitWall
call .BumpSound
-.HitWall
+.HitWall:
call .StandInPlace
xor a
ret
-.NotMoving
+.NotMoving:
ld a, [WalkingDirection]
cp STANDING
jr z, .Standing
@@ -103,12 +103,12 @@ DoPlayerMovement:: ; 80000
and a
jr nz, .CantMove
call .BumpSound
-.CantMove
+.CantMove:
call ._WalkInPlace
xor a
ret
-.Standing
+.Standing:
call .StandInPlace
xor a
ret
@@ -121,12 +121,12 @@ DoPlayerMovement:: ; 80000
ld a, [PlayerStandingTile]
ld c, a
call CheckWhirlpoolTile
- jr c, .asm_800c4
+ jr c, .not_whirlpool
ld a, 3
scf
ret
-.asm_800c4
+.not_whirlpool
and $f0
cp $30 ; moving water
jr z, .water
@@ -347,7 +347,7 @@ DoPlayerMovement:: ; 80000
scf
ret
-.ExitWater
+.ExitWater:
call .GetOutOfWater
call PlayMapMusic
ld a, STEP_WALK
@@ -386,7 +386,7 @@ DoPlayerMovement:: ; 80000
scf
ret
-.DontJump
+.DontJump:
xor a
ret
@@ -442,11 +442,11 @@ DoPlayerMovement:: ; 80000
xor a
ret
-.EdgeWarps
+.EdgeWarps:
db $70, $78, $76, $7e
; 8025f
-.DoStep
+.DoStep:
ld e, a
ld d, 0
ld hl, .Steps
@@ -473,7 +473,7 @@ DoPlayerMovement:: ; 80000
ld a, 4
ret
-.Steps
+.Steps:
dw .SlowStep
dw .NormalStep
dw .FastStep
@@ -483,42 +483,42 @@ DoPlayerMovement:: ; 80000
dw .BackJumpStep
dw .InPlace
-.SlowStep
+.SlowStep:
slow_step_down
slow_step_up
slow_step_left
slow_step_right
-.NormalStep
+.NormalStep:
step_down
step_up
step_left
step_right
-.FastStep
+.FastStep:
big_step_down
big_step_up
big_step_left
big_step_right
-.JumpStep
+.JumpStep:
jump_step_down
jump_step_up
jump_step_left
jump_step_right
-.SlideStep
+.SlideStep:
fast_slide_step_down
fast_slide_step_up
fast_slide_step_left
fast_slide_step_right
-.BackJumpStep
+.BackJumpStep:
jump_step_up
jump_step_down
jump_step_right
jump_step_left
-.TurningStep
+.TurningStep:
turn_step_down
turn_step_up
turn_step_left
turn_step_right
-.InPlace
+.InPlace:
db $80 + movement_turn_head_down
db $80 + movement_turn_head_up
db $80 + movement_turn_head_left
@@ -719,7 +719,7 @@ DoPlayerMovement:: ; 80000
xor a
ret
-.NotWalkable
+.NotWalkable:
scf
ret
; 803b4
@@ -741,7 +741,7 @@ DoPlayerMovement:: ; 80000
and a
ret
-.NotSurfable
+.NotSurfable:
scf
ret
; 803ca
@@ -779,16 +779,16 @@ DoPlayerMovement:: ; 80000
jr .Neither
-.Water
+.Water:
xor a
ret
-.Land
+.Land:
ld a, 1
and a
ret
-.Neither
+.Neither:
scf
ret
; 803ee
diff --git a/engine/player_object.asm b/engine/player_object.asm
new file mode 100755
index 000000000..930d71b3e
--- /dev/null
+++ b/engine/player_object.asm
@@ -0,0 +1,856 @@
+BlankScreen: ; 8000
+ call DisableSpriteUpdates
+ xor a
+ ld [hBGMapMode], a
+ call ClearBGPalettes
+ call ClearSprites
+ hlcoord 0, 0
+ ld bc, TileMapEnd - TileMap
+ ld a, " "
+ call ByteFill
+ hlcoord 0, 0, AttrMap
+ ld bc, AttrMapEnd - AttrMap
+ ld a, $7
+ call ByteFill
+ call WaitBGMap2
+ call SetPalettes
+ ret
+
+SpawnPlayer: ; 8029
+ ld a, -1
+ ld [wObjectFollow_Leader], a
+ ld [wObjectFollow_Follower], a
+ ld a, $0
+ ld hl, PlayerObjectTemplate
+ call CopyPlayerObjectTemplate
+ ld b, $0
+ call PlayerSpawn_ConvertCoords
+ ld a, $0
+ call GetMapObject
+ ld hl, MAPOBJECT_COLOR
+ add hl, bc
+ ln e, (1 << 3) | PAL_OW_RED, PERSONTYPE_SCRIPT
+ ld a, [wPlayerSpriteSetupFlags]
+ bit 2, a
+ jr nz, .ok
+ ld a, [PlayerGender]
+ bit 0, a
+ jr z, .ok
+ ln e, (1 << 3) | PAL_OW_BLUE, PERSONTYPE_SCRIPT
+
+.ok
+ ld [hl], e
+ ld a, $0
+ ld [hMapObjectIndexBuffer], a
+ ld bc, MapObjects
+ ld a, $0
+ ld [hObjectStructIndexBuffer], a
+ ld de, ObjectStructs
+ call CopyMapObjectToObjectStruct
+ ld a, PLAYER
+ ld [wCenteredObject], a
+ ret
+
+PlayerObjectTemplate: ; 8071
+; A dummy map object used to initialize the player object.
+; Shorter than the actual amount copied by two bytes.
+; Said bytes seem to be unused.
+ person_event SPRITE_CHRIS, -4, -4, SPRITEMOVEDATA_PLAYER, 15, 15, -1, -1, 0, PERSONTYPE_SCRIPT, 0, 0, -1
+
+CopyDECoordsToMapObject:: ; 807e
+ push de
+ ld a, b
+ call GetMapObject
+ pop de
+ ld hl, MAPOBJECT_X_COORD
+ add hl, bc
+ ld [hl], d
+ ld hl, MAPOBJECT_Y_COORD
+ add hl, bc
+ ld [hl], e
+ ret
+
+PlayerSpawn_ConvertCoords: ; 808f
+ push bc
+ ld a, [XCoord]
+ add 4
+ ld d, a
+ ld a, [YCoord]
+ add 4
+ ld e, a
+ pop bc
+ call CopyDECoordsToMapObject
+ ret
+
+WritePersonXY:: ; 80a1
+ ld a, b
+ call CheckObjectVisibility
+ ret c
+
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, bc
+ ld d, [hl]
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, bc
+ ld e, [hl]
+ ld a, [hMapObjectIndexBuffer]
+ ld b, a
+ call CopyDECoordsToMapObject
+ and a
+ ret
+
+RefreshPlayerCoords: ; 80b8
+ ld a, [XCoord]
+ add 4
+ ld d, a
+ ld hl, PlayerStandingMapX
+ sub [hl]
+ ld [hl], d
+ ld hl, MapObjects + MAPOBJECT_X_COORD
+ ld [hl], d
+ ld hl, PlayerLastMapX
+ ld [hl], d
+ ld d, a
+ ld a, [YCoord]
+ add 4
+ ld e, a
+ ld hl, PlayerStandingMapY
+ sub [hl]
+ ld [hl], e
+ ld hl, MapObjects + MAPOBJECT_Y_COORD
+ ld [hl], e
+ ld hl, PlayerLastMapY
+ ld [hl], e
+ ld e, a
+ ld a, [wObjectFollow_Leader]
+ cp $0
+ ret nz ; wtf
+ ret
+
+CopyObjectStruct:: ; 80e7
+ call CheckObjectMask
+ and a
+ ret nz ; masked
+
+ ld hl, ObjectStructs + OBJECT_STRUCT_LENGTH * 1
+ ld a, 1
+ ld de, OBJECT_STRUCT_LENGTH
+.loop
+ ld [hObjectStructIndexBuffer], a
+ ld a, [hl]
+ and a
+ jr z, .done
+ add hl, de
+ ld a, [hObjectStructIndexBuffer]
+ inc a
+ cp NUM_OBJECT_STRUCTS
+ jr nz, .loop
+ scf
+ ret ; overflow
+
+.done
+ ld d, h
+ ld e, l
+ call CopyMapObjectToObjectStruct
+ ld hl, VramState
+ bit 7, [hl]
+ ret z
+
+ ld hl, OBJECT_FLAGS2
+ add hl, de
+ set 5, [hl]
+ ret
+
+CopyMapObjectToObjectStruct: ; 8116
+ call .CopyMapObjectToTempObject
+ call CopyTempObjectToObjectStruct
+ ret
+
+.CopyMapObjectToTempObject: ; 811d
+ ld a, [hObjectStructIndexBuffer]
+ ld hl, MAPOBJECT_OBJECT_STRUCT_ID
+ add hl, bc
+ ld [hl], a
+
+ ld a, [hMapObjectIndexBuffer]
+ ld [wTempObjectCopyMapObjectIndex], a
+
+ ld hl, MAPOBJECT_SPRITE
+ add hl, bc
+ ld a, [hl]
+ ld [wTempObjectCopySprite], a
+
+ call GetSpriteVTile
+ ld [wTempObjectCopySpriteVTile], a
+
+ ld a, [hl]
+ call GetSpritePalette
+ ld [wTempObjectCopyPalette], a
+
+ ld hl, MAPOBJECT_COLOR
+ add hl, bc
+ ld a, [hl]
+ and $f0
+ jr z, .skip_color_override
+ swap a
+ and $7 ; OAM_PALETTE
+ ld [wTempObjectCopyPalette], a
+
+.skip_color_override
+ ld hl, MAPOBJECT_MOVEMENT
+ add hl, bc
+ ld a, [hl]
+ ld [wTempObjectCopyMovement], a
+
+ ld hl, MAPOBJECT_RANGE
+ add hl, bc
+ ld a, [hl]
+ ld [wTempObjectCopyRange], a
+
+ ld hl, MAPOBJECT_X_COORD
+ add hl, bc
+ ld a, [hl]
+ ld [wTempObjectCopyX], a
+
+ ld hl, MAPOBJECT_Y_COORD
+ add hl, bc
+ ld a, [hl]
+ ld [wTempObjectCopyY], a
+
+ ld hl, MAPOBJECT_RADIUS
+ add hl, bc
+ ld a, [hl]
+ ld [wTempObjectCopyRadius], a
+ ret
+
+InitializeVisibleSprites: ; 8177
+ ld bc, MapObjects + OBJECT_LENGTH
+ ld a, 1
+.loop
+ ld [hMapObjectIndexBuffer], a
+ ld hl, MAPOBJECT_SPRITE
+ add hl, bc
+ ld a, [hl]
+ and a
+ jr z, .next
+
+ ld hl, MAPOBJECT_OBJECT_STRUCT_ID
+ add hl, bc
+ ld a, [hl]
+ cp -1
+ jr nz, .next
+
+ ld a, [XCoord]
+ ld d, a
+ ld a, [YCoord]
+ ld e, a
+
+ ld hl, MAPOBJECT_X_COORD
+ add hl, bc
+ ld a, [hl]
+ add 1
+ sub d
+ jr c, .next
+
+ cp MAPOBJECT_SCREEN_WIDTH
+ jr nc, .next
+
+ ld hl, MAPOBJECT_Y_COORD
+ add hl, bc
+ ld a, [hl]
+ add 1
+ sub e
+ jr c, .next
+
+ cp MAPOBJECT_SCREEN_HEIGHT
+ jr nc, .next
+
+ push bc
+ call CopyObjectStruct
+ pop bc
+ jp c, .ret
+
+.next
+ ld hl, OBJECT_LENGTH
+ add hl, bc
+ ld b, h
+ ld c, l
+ ld a, [hMapObjectIndexBuffer]
+ inc a
+ cp NUM_OBJECTS
+ jr nz, .loop
+ ret
+
+.ret ; 81c9
+ ret
+
+CheckObjectEnteringVisibleRange:: ; 81ca
+ nop
+ ld a, [wPlayerStepDirection]
+ cp STANDING
+ ret z
+ ld hl, .dw
+ rst JumpTable
+ ret
+
+.dw ; 81d6
+ dw .Down
+ dw .Up
+ dw .Left
+ dw .Right
+
+.Up: ; 81de
+ ld a, [YCoord]
+ sub 1
+ jr .Vertical
+
+.Down: ; 81e5
+ ld a, [YCoord]
+ add 9
+.Vertical: ; 81ea
+ ld d, a
+ ld a, [XCoord]
+ ld e, a
+ ld bc, MapObjects + OBJECT_LENGTH
+ ld a, 1
+.loop_v
+ ld [hMapObjectIndexBuffer], a
+ ld hl, MAPOBJECT_SPRITE
+ add hl, bc
+ ld a, [hl]
+ and a
+ jr z, .next_v
+ ld hl, MAPOBJECT_Y_COORD
+ add hl, bc
+ ld a, d
+ cp [hl]
+ jr nz, .next_v
+ ld hl, MAPOBJECT_OBJECT_STRUCT_ID
+ add hl, bc
+ ld a, [hl]
+ cp -1
+ jr nz, .next_v
+ ld hl, MAPOBJECT_X_COORD
+ add hl, bc
+ ld a, [hl]
+ add 1
+ sub e
+ jr c, .next_v
+ cp MAPOBJECT_SCREEN_WIDTH
+ jr nc, .next_v
+ push de
+ push bc
+ call CopyObjectStruct
+ pop bc
+ pop de
+
+.next_v
+ ld hl, OBJECT_LENGTH
+ add hl, bc
+ ld b, h
+ ld c, l
+ ld a, [hMapObjectIndexBuffer]
+ inc a
+ cp NUM_OBJECTS
+ jr nz, .loop_v
+ ret
+
+.Left: ; 8232
+ ld a, [XCoord]
+ sub 1
+ jr .Horizontal
+
+.Right: ; 8239
+ ld a, [XCoord]
+ add 10
+.Horizontal: ; 823e
+ ld e, a
+ ld a, [YCoord]
+ ld d, a
+ ld bc, MapObjects + OBJECT_LENGTH
+ ld a, 1
+.loop_h
+ ld [hMapObjectIndexBuffer], a
+ ld hl, MAPOBJECT_SPRITE
+ add hl, bc
+ ld a, [hl]
+ and a
+ jr z, .next_h
+ ld hl, MAPOBJECT_X_COORD
+ add hl, bc
+ ld a, e
+ cp [hl]
+ jr nz, .next_h
+ ld hl, MAPOBJECT_OBJECT_STRUCT_ID
+ add hl, bc
+ ld a, [hl]
+ cp -1
+ jr nz, .next_h
+ ld hl, MAPOBJECT_Y_COORD
+ add hl, bc
+ ld a, [hl]
+ add 1
+ sub d
+ jr c, .next_h
+ cp MAPOBJECT_SCREEN_HEIGHT
+ jr nc, .next_h
+ push de
+ push bc
+ call CopyObjectStruct
+ pop bc
+ pop de
+
+.next_h
+ ld hl, OBJECT_LENGTH
+ add hl, bc
+ ld b, h
+ ld c, l
+ ld a, [hMapObjectIndexBuffer]
+ inc a
+ cp NUM_OBJECTS
+ jr nz, .loop_h
+ ret
+
+CopyTempObjectToObjectStruct: ; 8286
+ ld a, [wTempObjectCopyMapObjectIndex]
+ ld hl, OBJECT_MAP_OBJECT_INDEX
+ add hl, de
+ ld [hl], a
+
+ ld a, [wTempObjectCopyMovement]
+ call CopySpriteMovementData
+
+ ld a, [wTempObjectCopyPalette]
+ ld hl, OBJECT_PALETTE
+ add hl, de
+ or [hl]
+ ld [hl], a
+
+ ld a, [wTempObjectCopyY]
+ call .InitYCoord
+
+ ld a, [wTempObjectCopyX]
+ call .InitXCoord
+
+ ld a, [wTempObjectCopySprite]
+ ld hl, OBJECT_SPRITE
+ add hl, de
+ ld [hl], a
+
+ ld a, [wTempObjectCopySpriteVTile]
+ ld hl, OBJECT_SPRITE_TILE
+ add hl, de
+ ld [hl], a
+
+ ld hl, OBJECT_STEP_TYPE
+ add hl, de
+ ld [hl], STEP_TYPE_00
+
+ ld hl, OBJECT_FACING_STEP
+ add hl, de
+ ld [hl], STANDING
+
+ ld a, [wTempObjectCopyRadius]
+ call .InitRadius
+
+ ld a, [wTempObjectCopyRange]
+ ld hl, OBJECT_RANGE
+ add hl, de
+ ld [hl], a
+
+ and a
+ ret
+
+.InitYCoord: ; 82d5
+ ld hl, OBJECT_INIT_Y
+ add hl, de
+ ld [hl], a
+
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, de
+ ld [hl], a
+
+ ld hl, YCoord
+ sub [hl]
+ and $f
+ swap a
+ ld hl, wFollowNotExactPersonY
+ sub [hl]
+ ld hl, OBJECT_SPRITE_Y
+ add hl, de
+ ld [hl], a
+ ret
+
+.InitXCoord: ; 82f1
+ ld hl, OBJECT_INIT_X
+ add hl, de
+ ld [hl], a
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, de
+ ld [hl], a
+ ld hl, XCoord
+ sub [hl]
+ and $f
+ swap a
+ ld hl, wFollowNotExactPersonX
+ sub [hl]
+ ld hl, OBJECT_SPRITE_X
+ add hl, de
+ ld [hl], a
+ ret
+
+.InitRadius: ; 830d
+ ld h, a
+ inc a
+ and $f
+ ld l, a
+ ld a, h
+ add $10
+ and $f0
+ or l
+ ld hl, OBJECT_RADIUS
+ add hl, de
+ ld [hl], a
+ ret
+
+TrainerWalkToPlayer: ; 831e
+ ld a, [hLastTalked]
+ call InitMovementBuffer
+ ld a, movement_step_sleep_1
+ call AppendToMovementBuffer
+ ld a, [wd03f]
+ dec a
+ jr z, .TerminateStep
+ ld a, [hLastTalked]
+ ld b, a
+ ld c, PLAYER
+ ld d, 1
+ call .GetPathToPlayer
+ call DecrementMovementBufferCount
+
+.TerminateStep:
+ ld a, movement_step_end
+ call AppendToMovementBuffer
+ ret
+
+.GetPathToPlayer: ; 8341
+ push de
+ push bc
+; get player object struct, load to de
+ ld a, c
+ call GetMapObject
+ ld hl, MAPOBJECT_OBJECT_STRUCT_ID
+ add hl, bc
+ ld a, [hl]
+ call GetObjectStruct
+ ld d, b
+ ld e, c
+
+; get last talked object struct, load to bc
+ pop bc
+ ld a, b
+ call GetMapObject
+ ld hl, MAPOBJECT_OBJECT_STRUCT_ID
+ add hl, bc
+ ld a, [hl]
+ call GetObjectStruct
+
+; get last talked coords, load to bc
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, bc
+ ld a, [hl]
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, bc
+ ld c, [hl]
+ ld b, a
+
+; get player coords, load to de
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, de
+ ld a, [hl]
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, de
+ ld e, [hl]
+ ld d, a
+
+ pop af
+ call ComputePathToWalkToPlayer
+ ret
+
+Special_SurfStartStep: ; 8379
+ call InitMovementBuffer
+ call .GetMovementData
+ call AppendToMovementBuffer
+ ld a, movement_step_end
+ call AppendToMovementBuffer
+ ret
+
+.GetMovementData: ; 8388
+ ld a, [PlayerDirection]
+ srl a
+ srl a
+ and 3
+ ld e, a
+ ld d, 0
+ ld hl, .movement_data
+ add hl, de
+ ld a, [hl]
+ ret
+
+.movement_data
+ slow_step_down
+ slow_step_up
+ slow_step_left
+ slow_step_right
+
+FollowNotExact:: ; 839e
+ push bc
+ ld a, c
+ call CheckObjectVisibility
+ ld d, b
+ ld e, c
+ pop bc
+ ret c
+
+ ld a, b
+ call CheckObjectVisibility
+ ret c
+
+; Person 2 is now in bc, person 1 is now in de
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, bc
+ ld a, [hl]
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, bc
+ ld c, [hl]
+ ld b, a
+
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, de
+ ld a, [hl]
+ cp b
+ jr z, .same_x
+ jr c, .to_the_left
+ inc b
+ jr .continue
+
+.to_the_left
+ dec b
+ jr .continue
+
+.same_x
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, de
+ ld a, [hl]
+ cp c
+ jr z, .continue
+ jr c, .below
+ inc c
+ jr .continue
+
+.below
+ dec c
+
+.continue
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, de
+ ld [hl], b
+ ld a, b
+ ld hl, XCoord
+ sub [hl]
+ and $f
+ swap a
+ ld hl, wFollowNotExactPersonX
+ sub [hl]
+ ld hl, OBJECT_SPRITE_X
+ add hl, de
+ ld [hl], a
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, de
+ ld [hl], c
+ ld a, c
+ ld hl, YCoord
+ sub [hl]
+ and $f
+ swap a
+ ld hl, wFollowNotExactPersonY
+ sub [hl]
+ ld hl, OBJECT_SPRITE_Y
+ add hl, de
+ ld [hl], a
+ ld a, [hObjectStructIndexBuffer]
+ ld hl, OBJECT_RANGE
+ add hl, de
+ ld [hl], a
+ ld hl, OBJECT_MOVEMENTTYPE
+ add hl, de
+ ld [hl], SPRITEMOVEDATA_FOLLOWNOTEXACT
+ ld hl, OBJECT_STEP_TYPE
+ add hl, de
+ ld [hl], STEP_TYPE_00
+ ret
+
+GetRelativeFacing:: ; 8417
+; Determines which way map object e would have to turn to face map object d. Returns carry if it's impossible for whatever reason.
+ ld a, d
+ call GetMapObject
+ ld hl, MAPOBJECT_OBJECT_STRUCT_ID
+ add hl, bc
+ ld a, [hl]
+ cp NUM_OBJECT_STRUCTS
+ jr nc, .carry
+ ld d, a
+ ld a, e
+ call GetMapObject
+ ld hl, MAPOBJECT_OBJECT_STRUCT_ID
+ add hl, bc
+ ld a, [hl]
+ cp NUM_OBJECT_STRUCTS
+ jr nc, .carry
+ ld e, a
+ call .GetFacing_e_relativeto_d
+ ret
+
+.carry
+ scf
+ ret
+
+.GetFacing_e_relativeto_d: ; 8439
+; Determines which way object e would have to turn to face object d. Returns carry if it's impossible.
+; load the coordinates of object d into bc
+ ld a, d
+ call GetObjectStruct
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, bc
+ ld a, [hl]
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, bc
+ ld c, [hl]
+ ld b, a
+ push bc
+; load the coordinates of object e into de
+ ld a, e
+ call GetObjectStruct
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, bc
+ ld d, [hl]
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, bc
+ ld e, [hl]
+ pop bc
+; |x1 - x2|
+ ld a, b
+ sub d
+ jr z, .same_x_1
+ jr nc, .b_right_of_d_1
+ cpl
+ inc a
+
+.b_right_of_d_1
+; |y1 - y2|
+ ld h, a
+ ld a, c
+ sub e
+ jr z, .same_y_1
+ jr nc, .c_below_e_1
+ cpl
+ inc a
+
+.c_below_e_1
+; |y1 - y2| - |x1 - x2|
+ sub h
+ jr c, .same_y_1
+
+.same_x_1
+; compare the y coordinates
+ ld a, c
+ cp e
+ jr z, .same_x_and_y
+ jr c, .c_directly_below_e
+; c directly above e
+ ld d, DOWN
+ and a
+ ret
+
+.c_directly_below_e
+ ld d, UP
+ and a
+ ret
+
+.same_y_1
+ ld a, b
+ cp d
+ jr z, .same_x_and_y
+ jr c, .b_directly_right_of_d
+; b directly left of d
+ ld d, RIGHT
+ and a
+ ret
+
+.b_directly_right_of_d
+ ld d, LEFT
+ and a
+ ret
+
+.same_x_and_y
+ scf
+ ret
+
+QueueFollowerFirstStep: ; 848a
+ call .QueueFirstStep
+ jr c, .same
+ ld [wFollowMovementQueue], a
+ xor a
+ ld [wFollowerMovementQueueLength], a
+ ret
+
+.same
+ ld a, -1
+ ld [wFollowerMovementQueueLength], a
+ ret
+
+.QueueFirstStep:
+ ld a, [wObjectFollow_Leader]
+ call GetObjectStruct
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, bc
+ ld d, [hl]
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, bc
+ ld e, [hl]
+ ld a, [wObjectFollow_Follower]
+ call GetObjectStruct
+ ld hl, OBJECT_NEXT_MAP_X
+ add hl, bc
+ ld a, d
+ cp [hl]
+ jr z, .check_y
+ jr c, .left
+ and a
+ ld a, movement_step_right
+ ret
+
+.left
+ and a
+ ld a, movement_step_left
+ ret
+
+.check_y
+ ld hl, OBJECT_NEXT_MAP_Y
+ add hl, bc
+ ld a, e
+ cp [hl]
+ jr z, .same_xy
+ jr c, .up
+ and a
+ ld a, movement_step_down
+ ret
+
+.up
+ and a
+ ld a, movement_step_up
+ ret
+
+.same_xy
+ scf
+ ret
diff --git a/engine/player_step.asm b/engine/player_step.asm
index d0ae42451..48abcecbc 100755
--- a/engine/player_step.asm
+++ b/engine/player_step.asm
@@ -59,7 +59,7 @@ HandlePlayerStep: ; d4e5 (3:54e5)
ret
.Jumptable: ; d4f2 (3:54f2)
-
+
dw GetMovementPermissions
dw BufferScreen
dw .mobile
@@ -73,14 +73,14 @@ HandlePlayerStep: ; d4e5 (3:54e5)
dw .fail1
dw .fail1
-.fail1: ; d508 (3:5508)
+.fail1 ; d508 (3:5508)
ret
-.mobile: ; d509 (3:5509)
+.mobile ; d509 (3:5509)
callba MobileFn_10602e
ret
-.fail2: ; d510 (3:5510)
+.fail2 ; d510 (3:5510)
ret
UpdatePlayerCoords: ; d511 (3:5511)
diff --git a/engine/pokecenter_pc.asm b/engine/pokecenter_pc.asm
index a75798709..f6b970ede 100755
--- a/engine/pokecenter_pc.asm
+++ b/engine/pokecenter_pc.asm
@@ -2,9 +2,9 @@ PokemonCenterPC: ; 1559a
call PC_CheckPartyForPokemon
ret c
call PC_PlayBootSound
- ld hl, UnknownText_0x15a27
+ ld hl, PokeCenterPCText_BootedUpPC
call PC_DisplayText
- ld hl, UnknownText_0x15a2c
+ ld hl, PokeCenterPCText_AccessWhosePC
call PC_DisplayTextWaitMenu
ld hl, .TopMenu
call LoadMenuDataHeader
@@ -25,40 +25,35 @@ PokemonCenterPC: ; 1559a
call ExitMenu
call CloseWindow
ret
-; 155d6
-.TopMenu: ; 0x155d6
+.TopMenu:
db $48 ; flags
db 00, 00 ; start coords
db 12, 15 ; end coords
dw .MenuData2
db 1 ; default option
-; 0x155de
-.MenuData2: ; 0x155de
+.MenuData2:
db $a0 ; flags
db 0 ; items
dw .WhichPC
dw PlaceNthMenuStrings
dw .JumpTable
-; 0x155e6
-.JumpTable: ; 155e6
+.JumpTable:
dw PlayersPC, .String_PlayersPC
dw BillsPC, .String_BillsPC
dw OaksPC, .String_OaksPC
dw HallOfFamePC, .String_HallOfFame
dw TurnOffPC, .String_TurnOff
-; 155fa
-.String_PlayersPC: db "<PLAYER>'s PC@"
-.String_BillsPC: db "BILL's PC@"
-.String_OaksPC: db "PROF.OAK's PC@"
-.String_HallOfFame: db "HALL OF FAME@"
-.String_TurnOff: db "TURN OFF@"
-; 1562c
+.String_PlayersPC: db "<PLAYER>'s PC@"
+.String_BillsPC: db "BILL's PC@"
+.String_OaksPC: db "PROF.OAK's PC@"
+.String_HallOfFame: db "HALL OF FAME@"
+.String_TurnOff: db "TURN OFF@"
-.WhichPC: ; 1562c
+.WhichPC:
; before pokedex
db 3 ; items
db 1, 0, 4 ; bill's, player's, turn off
@@ -73,9 +68,8 @@ PokemonCenterPC: ; 1559a
db 5 ; items
db 1, 0, 2, 3, 4 ; bill's, player's, oak's, hall of fame, turn off
db -1
-; 1563e
-.ChooseWhichPCListToUse: ; 1563e
+.ChooseWhichPCListToUse:
call CheckReceivedDex
jr nz, .got_dex
ld a, $0
@@ -96,13 +90,12 @@ PC_CheckPartyForPokemon: ; 15650
ret nz
ld de, SFX_CHOOSE_PC_OPTION
call PlaySFX
- ld hl, UnknownText_0x15663
+ ld hl, .MustHavePokemonToUse
call PC_DisplayText
scf
ret
-; 15663
-UnknownText_0x15663: ; 0x15663
+.MustHavePokemonToUse:
; Bzzzzt! You must have a #MON to use this!
text_jump UnknownText_0x1c1328
db "@"
@@ -110,7 +103,7 @@ UnknownText_0x15663: ; 0x15663
BillsPC: ; 15668
call PC_PlayChoosePCSound
- ld hl, UnknownText_0x15a31
+ ld hl, PokeCenterPCText_AccessedBillsPC
call PC_DisplayText
callba _BillsPC
and a
@@ -119,7 +112,7 @@ BillsPC: ; 15668
PlayersPC: ; 15679
call PC_PlayChoosePCSound
- ld hl, UnknownText_0x15a36
+ ld hl, PokeCenterPCText_AccessedOwnPC
call PC_DisplayText
ld b, $0
call _PlayersPC
@@ -129,7 +122,7 @@ PlayersPC: ; 15679
OaksPC: ; 15689
call PC_PlayChoosePCSound
- ld hl, UnknownText_0x15a3b
+ ld hl, PokeCenterPCText_AccessedOaksPC
call PC_DisplayText
callba ProfOaksPC
and a
@@ -146,7 +139,7 @@ HallOfFamePC: ; 1569a
; 156ab
TurnOffPC: ; 156ab
- ld hl, UnknownText_0x15a40
+ ld hl, PokeCenterPCText_LinkClosed
call PrintText
scf
ret
@@ -166,7 +159,7 @@ PC_PlayChoosePCSound: ; 156c2
ld de, SFX_CHOOSE_PC_OPTION
jr PC_WaitPlaySFX
-Function156c7: ; 156c7
+PC_PlaySwapItemsSound: ; 156c7
ld de, SFX_SWITCH_POKEMON
call PC_WaitPlaySFX
ld de, SFX_SWITCH_POKEMON
@@ -218,8 +211,8 @@ _PlayersPC: ; 15704
Function15715: ; 15715
xor a
- ld [wd0d7], a
- ld [wd0dd], a
+ ld [wPCItemsCursor], a
+ ld [wPCItemsScrollPosition], a
ld hl, KrissPCMenuData
call LoadMenuDataHeader
.asm_15722
@@ -245,14 +238,14 @@ KrissPCMenuData: ; 0x15736
dw .KrissPCMenuData2
db 1 ; default selected option
-.KrissPCMenuData2
+.KrissPCMenuData2:
db %10100000 ; bit7
db 0 ; # items?
dw .KrissPCMenuList1
dw PlaceNthMenuStrings
dw .KrissPCMenuPointers
-.KrissPCMenuPointers ; 0x15746
+.KrissPCMenuPointers: ; 0x15746
dw KrisWithdrawItemMenu, .WithdrawItem
dw KrisDepositItemMenu, .DepositItem
dw KrisTossItemMenu, .TossItem
@@ -261,13 +254,13 @@ KrissPCMenuData: ; 0x15736
dw KrisLogOffMenu, .LogOff
dw KrisLogOffMenu, .TurnOff
-.WithdrawItem db "WITHDRAW ITEM@"
-.DepositItem db "DEPOSIT ITEM@"
-.TossItem db "TOSS ITEM@"
-.MailBox db "MAIL BOX@"
-.Decoration db "DECORATION@"
-.TurnOff db "TURN OFF@"
-.LogOff db "LOG OFF@"
+.WithdrawItem: db "WITHDRAW ITEM@"
+.DepositItem: db "DEPOSIT ITEM@"
+.TossItem: db "TOSS ITEM@"
+.MailBox: db "MAIL BOX@"
+.Decoration: db "DECORATION@"
+.TurnOff: db "TURN OFF@"
+.LogOff: db "LOG OFF@"
WITHDRAW_ITEM EQU 0
DEPOSIT_ITEM EQU 1
@@ -277,7 +270,7 @@ DECORATION EQU 4
TURN_OFF EQU 5
LOG_OFF EQU 6
-.KrissPCMenuList1
+.KrissPCMenuList1:
db 5
db WITHDRAW_ITEM
db DEPOSIT_ITEM
@@ -286,7 +279,7 @@ LOG_OFF EQU 6
db TURN_OFF
db -1
-.KrissPCMenuList2
+.KrissPCMenuList2:
db 6
db WITHDRAW_ITEM
db DEPOSIT_ITEM
@@ -316,19 +309,18 @@ UnknownText_0x157cc: ; 0x157cc
KrisWithdrawItemMenu: ; 0x157d1
call LoadStandardMenuDataHeader
callba ClearPCItemScreen
-.asm_157da
- call Function15985
- jr c, .asm_157e4
- call Function157e9
- jr .asm_157da
+.loop
+ call PCItemsJoypad
+ jr c, .quit
+ call .Submenu
+ jr .loop
-.asm_157e4
+.quit
call CloseSubmenu
xor a
ret
-; 0x157e9
-Function157e9: ; 0x157e9
+.Submenu:
; check if the item has a quantity
callba _CheckTossableItem
ld a, [wItemAttributeParamBuffer]
@@ -351,7 +343,7 @@ Function157e9: ; 0x157e9
.withdraw
ld a, [wItemQuantityChangeBuffer]
ld [Buffer1], a ; quantity
- ld a, [wd107]
+ ld a, [CurItemQuantity]
ld [Buffer2], a
ld hl, NumItems
call ReceiveItem
@@ -359,7 +351,7 @@ Function157e9: ; 0x157e9
ld a, [Buffer1]
ld [wItemQuantityChangeBuffer], a
ld a, [Buffer2]
- ld [wd107], a
+ ld [CurItemQuantity], a
ld hl, PCItems
call TossItem
predef PartyMonItemName
@@ -370,45 +362,42 @@ Function157e9: ; 0x157e9
call ExitMenu
ret
-.PackFull
+.PackFull:
ld hl, .NoRoomText
call MenuTextBoxBackup
ret
.done
ret
-; 0x15850
-.HowManyText ; 0x15850
+.HowManyText: ; 0x15850
text_jump _KrissPCHowManyWithdrawText
db "@"
-.WithdrewText ; 0x15855
+.WithdrewText: ; 0x15855
text_jump _KrissPCWithdrewItemsText
db "@"
-.NoRoomText ; 0x1585a
+.NoRoomText: ; 0x1585a
text_jump _KrissPCNoRoomWithdrawText
db "@"
-
KrisTossItemMenu: ; 0x1585f
call LoadStandardMenuDataHeader
callba ClearPCItemScreen
-.asm_15868
- call Function15985
- jr c, .asm_15878
+.loop
+ call PCItemsJoypad
+ jr c, .quit
ld de, PCItems
- callba Function129f4
- jr .asm_15868
+ callba TossItemFromPC
+ jr .loop
-.asm_15878
+.quit
call CloseSubmenu
xor a
ret
; 0x1587d
-
KrisDecorationMenu: ; 0x1587d
callba _KrisDecorationMenu
ld a, c
@@ -418,54 +407,48 @@ KrisDecorationMenu: ; 0x1587d
ret
; 0x15888
-
KrisLogOffMenu: ; 0x15888
xor a
scf
ret
; 0x1588b
-
KrisDepositItemMenu: ; 0x1588b
- call Function158b8
- jr c, .asm_158b6
+ call .CheckItemsInBag
+ jr c, .nope
call DisableSpriteUpdates
call LoadStandardMenuDataHeader
callba DepositSellInitPackBuffers
-.asm_1589c
+.loop
callba DepositSellPack
ld a, [wcf66]
and a
- jr z, .asm_158b3
- call Function158cc
+ jr z, .close
+ call .TryDepositItem
callba CheckRegisteredItem
- jr .asm_1589c
+ jr .loop
-.asm_158b3
+.close
call CloseSubmenu
-.asm_158b6
+.nope
xor a
ret
-; 0x158b8
-Function158b8: ; 0x158b8
+.CheckItemsInBag:
callba HasNoItems
ret nc
- ld hl, UnknownText_0x158c7
+ ld hl, .NoItemsInBag
call MenuTextBoxBackup
scf
ret
-; 0x158c7
-UnknownText_0x158c7: ; 0x158c7
+.NoItemsInBag:
; No items here!
text_jump UnknownText_0x1c13df
db "@"
-; 0x158cc
-
-Function158cc: ; 0x158cc
+.TryDepositItem:
ld a, [wSpriteUpdatesEnabled]
push af
ld a, $0
@@ -477,9 +460,8 @@ Function158cc: ; 0x158cc
pop af
ld [wSpriteUpdatesEnabled], a
ret
-; 0x158e7
-.dw: ; 0x158e7
+.dw
dw .tossable
dw .no_toss
dw .no_toss
@@ -488,32 +470,31 @@ Function158cc: ; 0x158cc
dw .tossable
dw .tossable
-.no_toss:
+.no_toss
ret
-.tossable:
+.tossable
ld a, [Buffer1]
push af
ld a, [Buffer2]
push af
- call Function1590a
+ call .DepositItem_
pop af
ld [Buffer2], a
pop af
ld [Buffer1], a
ret
-; 0x1590a
-Function1590a: ; 0x1590a
+.DepositItem_:
callba _CheckTossableItem
ld a, [wItemAttributeParamBuffer]
and a
- jr z, .asm_1591d
+ jr z, .AskQuantity
ld a, $1
ld [wItemQuantityChangeBuffer], a
- jr .asm_15933
+ jr .DepositItem
-.asm_1591d
+.AskQuantity:
ld hl, .HowManyText
call MenuTextBox
callba SelectQuantityToToss
@@ -521,20 +502,20 @@ Function1590a: ; 0x1590a
call ExitMenu
call ExitMenu
pop af
- jr c, .asm_1596c
+ jr c, .DeclinedToDeposit
-.asm_15933
+.DepositItem:
ld a, [wItemQuantityChangeBuffer]
ld [Buffer1], a
- ld a, [wd107]
+ ld a, [CurItemQuantity]
ld [Buffer2], a
ld hl, PCItems
call ReceiveItem
- jr nc, .asm_15965
+ jr nc, .NoRoomInPC
ld a, [Buffer1]
ld [wItemQuantityChangeBuffer], a
ld a, [Buffer2]
- ld [wd107], a
+ ld [CurItemQuantity], a
ld hl, NumItems
call TossItem
predef PartyMonItemName
@@ -542,117 +523,110 @@ Function1590a: ; 0x1590a
call PrintText
ret
-.asm_15965
+.NoRoomInPC:
ld hl, .NoRoomText
call PrintText
ret
-.asm_1596c
+.DeclinedToDeposit:
and a
ret
-; 0x1596e
-
-.HowManyText ; 0x1596e
+.HowManyText: ; 0x1596e
text_jump _KrissPCHowManyDepositText
db "@"
-.DepositText ; 0x15973
+.DepositText: ; 0x15973
text_jump _KrissPCDepositItemsText
db "@"
-.NoRoomText ; 0x15978
+.NoRoomText: ; 0x15978
text_jump _KrissPCNoRoomDepositText
db "@"
-
KrisMailBoxMenu: ; 0x1597d
callba _KrisMailBoxMenu
xor a
ret
; 0x15985
-
-Function15985: ; 0x15985
+PCItemsJoypad: ; 0x15985
xor a
- ld [wd0e3], a
-.asm_15989
+ ld [wSwitchItem], a
+.loop
ld a, [wSpriteUpdatesEnabled]
push af
ld a, $0
ld [wSpriteUpdatesEnabled], a
- ld hl, MenuData15a08
+ ld hl, .PCItemsMenuData
call CopyMenuDataHeader
hlcoord 0, 0
- ld b, $a
- ld c, $12
+ ld b, 10
+ ld c, 18
call TextBox
- ld a, [wd0d7]
+ ld a, [wPCItemsCursor]
ld [wMenuCursorBuffer], a
- ld a, [wd0dd]
+ ld a, [wPCItemsScrollPosition]
ld [wMenuScrollPosition], a
call ScrollingMenu
ld a, [wMenuScrollPosition]
- ld [wd0dd], a
+ ld [wPCItemsScrollPosition], a
ld a, [wMenuCursorY]
- ld [wd0d7], a
+ ld [wPCItemsCursor], a
pop af
ld [wSpriteUpdatesEnabled], a
- ld a, [wd0e3]
+ ld a, [wSwitchItem]
and a
- jr nz, .asm_159d8
+ jr nz, .moving_stuff_around
ld a, [wMenuJoypad]
- cp $2
- jr z, .asm_15a06
- cp $1
- jr z, .asm_159fb
- cp $4
- jr z, .asm_159f2
- jr .asm_159f8
-
-.asm_159d8
+ cp B_BUTTON
+ jr z, .b_1
+ cp A_BUTTON
+ jr z, .a_1
+ cp SELECT
+ jr z, .select_1
+ jr .next
+
+.moving_stuff_around
ld a, [wMenuJoypad]
- cp $2
- jr z, .asm_159e9
- cp $1
- jr z, .asm_159ef
- cp $4
- jr z, .asm_159ef
- jr .asm_159f8
-
-.asm_159e9
+ cp B_BUTTON
+ jr z, .b_2
+ cp A_BUTTON
+ jr z, .a_select_2
+ cp SELECT
+ jr z, .a_select_2
+ jr .next
+
+.b_2
xor a
- ld [wd0e3], a
- jr .asm_159f8
+ ld [wSwitchItem], a
+ jr .next
-.asm_159ef
- call Function156c7
-
-.asm_159f2
+.a_select_2
+ call PC_PlaySwapItemsSound
+.select_1
callba SwitchItemsInBag
+.next
+ jp .loop
-.asm_159f8
- jp .asm_15989
-
-.asm_159fb
- callba Function24706
+.a_1
+ callba ScrollingMenu_ClearLeftColumn
call PlaceHollowCursor
and a
ret
-.asm_15a06
+.b_1
scf
ret
-; 0x15a08
-MenuData15a08: ; 0x15a08
+.PCItemsMenuData:
db %01000000
db 1, 4 ; start coords
db 10, 18 ; end coords
dw .MenuData2
db 1 ; default option
-.MenuData2
+.MenuData2:
db %10110000
db 4, 8 ; rows/cols?
db 2 ; horizontal spacing?
@@ -667,38 +641,37 @@ PC_DisplayText: ; 15a20
ret
; 15a27
-
-UnknownText_0x15a27: ; 0x15a27
+PokeCenterPCText_BootedUpPC: ; 0x15a27
; turned on the PC.
text_jump UnknownText_0x1c144d
db "@"
; 0x15a2c
-UnknownText_0x15a2c: ; 0x15a2c
+PokeCenterPCText_AccessWhosePC: ; 0x15a2c
; Access whose PC?
text_jump UnknownText_0x1c1462
db "@"
; 0x15a31
-UnknownText_0x15a31: ; 0x15a31
+PokeCenterPCText_AccessedBillsPC: ; 0x15a31
; BILL's PC accessed. #MON Storage System opened.
text_jump UnknownText_0x1c1474
db "@"
; 0x15a36
-UnknownText_0x15a36: ; 0x15a36
+PokeCenterPCText_AccessedOwnPC: ; 0x15a36
; Accessed own PC. Item Storage System opened.
text_jump UnknownText_0x1c14a4
db "@"
; 0x15a3b
-UnknownText_0x15a3b: ; 0x15a3b
+PokeCenterPCText_AccessedOaksPC: ; 0x15a3b
; PROF.OAK's PC accessed. #DEX Rating System opened.
text_jump UnknownText_0x1c14d2
db "@"
; 0x15a40
-UnknownText_0x15a40: ; 0x15a40
+PokeCenterPCText_LinkClosed: ; 0x15a40
; … Link closed…
text_jump UnknownText_0x1c1505
db "@"
diff --git a/engine/pokedex.asm b/engine/pokedex.asm
index 0ba14cd79..761b38874 100644
--- a/engine/pokedex.asm
+++ b/engine/pokedex.asm
@@ -2407,7 +2407,7 @@ Pokedex_LoadSelectedMonTiles: ; 4143b
predef GetFrontpic
ret
-.QuestionMark
+.QuestionMark:
ld a, BANK(sScratch)
call GetSRAMBank
callba LoadQuestionMarkPic
@@ -2481,12 +2481,12 @@ Pokedex_LoadGFX: ; 414b7
callba LoadSGBPokedexGFX
jr .LoadPokedexSlowpokeLZ
-.LoadPokedexLZ
+.LoadPokedexLZ:
ld hl, PokedexLZ
ld de, VTiles2 tile $31
call Decompress
-.LoadPokedexSlowpokeLZ
+.LoadPokedexSlowpokeLZ:
ld hl, PokedexSlowpokeLZ
ld de, VTiles0
call Decompress
@@ -2614,7 +2614,7 @@ Pokedex_SetBGMapMode_3ifDMG_4ifCGB: ; 41aeb (10:5aeb)
and a
jr z, .DMG
call Pokedex_SetBGMapMode4
-.DMG
+.DMG:
call Pokedex_SetBGMapMode3
ret
diff --git a/engine/pokegear.asm b/engine/pokegear.asm
index 44127fafc..c2e73180a 100755
--- a/engine/pokegear.asm
+++ b/engine/pokegear.asm
@@ -198,12 +198,12 @@ TownMap_InitCursorAndPlayerIconPositions: ; 90d70 (24:4d70)
ld a, [BackupMapNumber]
ld c, a
call GetWorldMapLocation
-.LoadLandmark
+.LoadLandmark:
ld [wPokegearMapPlayerIconLandmark], a
ld [wPokegearMapCursorLandmark], a
ret
-.FastShip
+.FastShip:
ld [wPokegearMapPlayerIconLandmark], a
ld a, NEW_BARK_TOWN
ld [wPokegearMapCursorLandmark], a
@@ -940,7 +940,7 @@ PokegearPhone_MakePhoneCall: ; 911eb (24:51eb)
; 9124c (24:524c)
-.dotdotdot: ; 0x9124c
+.dotdotdot ; 0x9124c
;
text_jump UnknownText_0x1c5824
db "@"
@@ -1240,7 +1240,7 @@ PokegearPhoneContactSubmenu: ; 91342 (24:5342)
ld hl, PokegearText_WhomToCall
call PrintText
call WaitBGMap
-.CancelDelete
+.CancelDelete:
scf
ret
@@ -1525,7 +1525,7 @@ RadioChannels:
dbw 80, .EvolutionRadio
db -1
-.PkmnTalkAndPokedexShow
+.PkmnTalkAndPokedexShow:
; Pokédex Show in the morning
; Oak's Pokémon Talk in the afternoon and evening
@@ -1536,28 +1536,28 @@ RadioChannels:
jp z, LoadStation_PokedexShow
jp LoadStation_OaksPokemonTalk
-.PokemonMusic
+.PokemonMusic:
call .InJohto
jr nc, .NoSignal
jp LoadStation_PokemonMusic
-.LuckyChannel
+.LuckyChannel:
call .InJohto
jr nc, .NoSignal
jp LoadStation_LuckyChannel
-.BuenasPassword
+.BuenasPassword:
call .InJohto
jr nc, .NoSignal
jp LoadStation_BuenasPassword
-.RuinsOfAlphRadio
+.RuinsOfAlphRadio:
ld a, [wPokegearMapPlayerIconLandmark]
cp RUINS_OF_ALPH
jr nz, .NoSignal
jp LoadStation_UnownRadio
-.PlacesAndPeople
+.PlacesAndPeople:
call .InJohto
jr c, .NoSignal
ld a, [wPokegearFlags]
@@ -1565,7 +1565,7 @@ RadioChannels:
jr z, .NoSignal
jp LoadStation_PlacesAndPeople
-.LetsAllSing
+.LetsAllSing:
call .InJohto
jr c, .NoSignal
ld a, [wPokegearFlags]
@@ -1573,7 +1573,7 @@ RadioChannels:
jr z, .NoSignal
jp LoadStation_LetsAllSing
-.PokeFluteRadio
+.PokeFluteRadio:
call .InJohto
jr c, .NoSignal
ld a, [wPokegearFlags]
@@ -1581,7 +1581,7 @@ RadioChannels:
jr z, .NoSignal
jp LoadStation_PokeFluteRadio
-.EvolutionRadio
+.EvolutionRadio:
; This station airs in the Lake of Rage area when Rocket are still in Mahogany.
ld a, [StatusFlags]
bit 4, a
@@ -1596,11 +1596,11 @@ RadioChannels:
.ok
jp LoadStation_EvolutionRadio
-.NoSignal
+.NoSignal:
call NoRadioStation
ret
-.InJohto
+.InJohto:
; if in Johto or on the S.S. Aqua, set carry
; otherwise clear carry
@@ -2185,7 +2185,7 @@ FlyMapScroll: ; 91b73
jr nz, .ScrollPrev
ret
-.ScrollNext
+.ScrollNext:
ld hl, wd002
ld a, [hl]
cp d
@@ -2193,13 +2193,13 @@ FlyMapScroll: ; 91b73
ld a, e
dec a
ld [hl], a
-.NotAtEndYet
+.NotAtEndYet:
inc [hl]
call CheckIfVisitedFlypoint
jr z, .ScrollNext
jr .Finally
-.ScrollPrev
+.ScrollPrev:
ld hl, wd002
ld a, [hl]
cp e
@@ -2207,11 +2207,11 @@ FlyMapScroll: ; 91b73
ld a, d
inc a
ld [hl], a
-.NotAtStartYet
+.NotAtStartYet:
dec [hl]
call CheckIfVisitedFlypoint
jr z, .ScrollPrev
-.Finally
+.Finally:
call TownMapBubble
call WaitBGMap
xor a
@@ -2261,13 +2261,13 @@ TownMapBubble: ; 91bb5
call .Name
; Up/down arrows
hlcoord 18, 1
- ld [hl], $34
+ ld [hl], $34
ret
-.Where
+.Where:
db "Where?@"
-.Name
+.Name:
; We need the map location of the default flypoint
ld a, [wd002]
ld l, a
@@ -2398,11 +2398,11 @@ FlyMap: ; 91c90
ld a, [BackupMapNumber]
ld c, a
call GetWorldMapLocation
-.CheckRegion
+.CheckRegion:
; The first 46 locations are part of Johto. The rest are in Kanto
cp KANTO_LANDMARK
jr nc, .KantoFlyMap
-.JohtoFlyMap
+.JohtoFlyMap:
; Note that .NoKanto should be modified in tandem with this branch
push af
; Start from New Bark Town
@@ -2420,7 +2420,7 @@ FlyMap: ; 91c90
call TownMapPlayerIcon
ret
-.KantoFlyMap
+.KantoFlyMap:
; The event that there are no flypoints enabled in a map is not
; accounted for. As a result, if you attempt to select a flypoint
@@ -2457,7 +2457,7 @@ FlyMap: ; 91c90
call TownMapPlayerIcon
ret
-.NoKanto
+.NoKanto:
; If Indigo Plateau hasn't been visited, we use Johto's map instead
; Start from New Bark Town
@@ -2470,7 +2470,7 @@ FlyMap: ; 91c90
ld [EndFlypoint], a
call FillJohtoMap
pop af
-.MapHud
+.MapHud:
call TownMapBubble
call TownMapPals
hlbgcoord 0, 0 ; BG Map 0
@@ -2685,7 +2685,7 @@ _Area: ; 91d11
ld b, d
ld de, .PlayerOAM
ld hl, Sprites
-.ShowPlayerLoop
+.ShowPlayerLoop:
ld a, [de]
cp $80
jr z, .clear_oam
@@ -2770,7 +2770,7 @@ _Area: ; 91d11
callba GetPlayerIcon
ret
-.FastShip
+.FastShip:
ld de, FastShipGFX
ld b, BANK(FastShipGFX)
ret
@@ -2841,7 +2841,7 @@ TownMapPals: ; 91f13
; The palette data is condensed to nybbles,
; least-significant first.
- ld hl, TownMapPalMap
+ ld hl, .PalMap
srl a
jr c, .odd
; Even-numbered tile ids take the bottom nybble...
@@ -2878,13 +2878,20 @@ TownMapPals: ; 91f13
jr nz, .loop
ret
-TownMapPalMap:
- dn 1, 1, 2, 1, 2, 2, 0, 0, 1, 1, 1, 3, 5, 4, 5, 4
- dn 1, 1, 2, 1, 2, 2, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0
- dn 1, 1, 2, 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
- dn 0, 0, 0, 0, 4, 4, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0
- dn 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 3
- dn 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0
+.PalMap:
+townmappals: MACRO
+rept _NARG / 2
+ dn \2, \1
+ shift
+ shift
+endr
+endm
+ townmappals 1, 1, 1, 2, 2, 2, 0, 0, 1, 1, 3, 1, 4, 5, 4, 5
+ townmappals 1, 1, 1, 2, 2, 2, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0
+ townmappals 1, 1, 1, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+ townmappals 0, 0, 0, 0, 4, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0
+ townmappals 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0
+ townmappals 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0
; 91f7b
TownMapMon: ; 91f7b
diff --git a/engine/printer.asm b/engine/printer.asm
index ae1edd9d2..876e59efc 100755
--- a/engine/printer.asm
+++ b/engine/printer.asm
@@ -32,7 +32,7 @@ endr
.Jumptable: ; 84031 (21:4031)
-
+
dw Function84077
dw Function84143
dw Function84120
@@ -443,7 +443,7 @@ _PrinterReceive:: ; 842db
.Jumptable: ; 842ea (21:42ea)
-
+
dw Function8432f
dw Function84330
dw Function84339
diff --git a/engine/printnum.asm b/engine/printnum.asm
new file mode 100755
index 000000000..4ef7721c8
--- /dev/null
+++ b/engine/printnum.asm
@@ -0,0 +1,300 @@
+_PrintNum:: ; c4c7
+; Print c digits of the b-byte value from de to hl.
+; Allows 2 to 7 digits. For 1-digit numbers, add
+; the value to char "0" instead of calling PrintNum.
+; Some extra flags can be given in bits 5-7 of b.
+; Bit 5: money if set (unless left-aligned without leading zeros)
+; Bit 6: right-aligned if set
+; Bit 7: print leading zeros if set
+
+ push bc
+
+ bit 5, b
+ jr z, .main
+ bit 7, b
+ jr nz, .moneyflag
+ bit 6, b
+ jr z, .main
+
+.moneyflag ; 101xxxxx or 011xxxxx
+ ld a, "¥"
+ ld [hli], a
+ res 5, b ; 100xxxxx or 010xxxxx
+
+.main
+ xor a
+ ld [hPrintNum1], a
+ ld [hPrintNum2], a
+ ld [hPrintNum3], a
+ ld a, b
+ and $f
+ cp 1
+ jr z, .byte
+ cp 2
+ jr z, .word
+; maximum 3 bytes
+.long
+ ld a, [de]
+ ld [hPrintNum2], a
+ inc de
+ ld a, [de]
+ ld [hPrintNum3], a
+ inc de
+ ld a, [de]
+ ld [hPrintNum4], a
+ jr .start
+
+.word
+ ld a, [de]
+ ld [hPrintNum3], a
+ inc de
+ ld a, [de]
+ ld [hPrintNum4], a
+ jr .start
+
+.byte
+ ld a, [de]
+ ld [hPrintNum4], a
+
+.start
+ push de
+
+ ld d, b
+ ld a, c
+ swap a
+ and $f
+ ld e, a
+ ld a, c
+ and $f
+ ld b, a
+ ld c, 0
+ cp 2
+ jr z, .two
+ cp 3
+ jr z, .three
+ cp 4
+ jr z, .four
+ cp 5
+ jr z, .five
+ cp 6
+ jr z, .six
+
+.seven
+ ld a, 1000000 / $10000 % $100
+ ld [hPrintNum5], a
+ ld a, 1000000 / $100 % $100
+ ld [hPrintNum6], a
+ ld a, 1000000 % $100
+ ld [hPrintNum7], a
+ call .PrintDigit
+ call .AdvancePointer
+
+.six
+ ld a, 100000 / $10000 % $100
+ ld [hPrintNum5], a
+ ld a, 100000 / $100 % $100
+ ld [hPrintNum6], a
+ ld a, 100000 % $100
+ ld [hPrintNum7], a
+ call .PrintDigit
+ call .AdvancePointer
+
+.five
+ xor a
+ ld [hPrintNum5], a
+ ld a, 10000 / $100
+ ld [hPrintNum6], a
+ ld a, 10000 % $100
+ ld [hPrintNum7], a
+ call .PrintDigit
+ call .AdvancePointer
+
+.four
+ xor a
+ ld [hPrintNum5], a
+ ld a, 1000 / $100
+ ld [hPrintNum6], a
+ ld a, 1000 % $100
+ ld [hPrintNum7], a
+ call .PrintDigit
+ call .AdvancePointer
+
+.three
+ xor a
+ ld [hPrintNum5], a
+ xor a
+ ld [hPrintNum6], a
+ ld a, 100
+ ld [hPrintNum7], a
+ call .PrintDigit
+ call .AdvancePointer
+
+.two
+ dec e
+ jr nz, .two_skip
+ ld a, "0"
+ ld [hPrintNum1], a
+.two_skip
+
+ ld c, 0
+ ld a, [hPrintNum4]
+.mod_10
+ cp 10
+ jr c, .modded_10
+ sub 10
+ inc c
+ jr .mod_10
+.modded_10
+
+ ld b, a
+ ld a, [hPrintNum1]
+ or c
+ jr nz, .money
+ call .PrintLeadingZero
+ jr .money_leading_zero
+
+.money
+ call .PrintYen
+ push af
+ ld a, "0"
+ add c
+ ld [hl], a
+ pop af
+ ld [hPrintNum1], a
+ inc e
+ dec e
+ jr nz, .money_leading_zero
+ inc hl
+ ld [hl], $f2 ; XXX
+
+.money_leading_zero
+ call .AdvancePointer
+ call .PrintYen
+ ld a, "0"
+ add b
+ ld [hli], a
+
+ pop de
+ pop bc
+ ret
+
+.PrintYen: ; c5ba
+ push af
+ ld a, [hPrintNum1]
+ and a
+ jr nz, .stop
+ bit 5, d
+ jr z, .stop
+ ld a, "¥"
+ ld [hli], a
+ res 5, d
+
+.stop
+ pop af
+ ret
+
+.PrintDigit: ; c5cb (3:45cb)
+ dec e
+ jr nz, .ok
+ ld a, "0"
+ ld [hPrintNum1], a
+.ok
+ ld c, 0
+.loop
+ ld a, [hPrintNum5]
+ ld b, a
+ ld a, [hPrintNum2]
+ ld [hPrintNum8], a
+ cp b
+ jr c, .skip1
+ sub b
+ ld [hPrintNum2], a
+ ld a, [hPrintNum6]
+ ld b, a
+ ld a, [hPrintNum3]
+ ld [hPrintNum9], a
+ cp b
+ jr nc, .skip2
+ ld a, [hPrintNum2]
+ or 0
+ jr z, .skip3
+ dec a
+ ld [hPrintNum2], a
+ ld a, [hPrintNum3]
+.skip2
+ sub b
+ ld [hPrintNum3], a
+ ld a, [hPrintNum7]
+ ld b, a
+ ld a, [hPrintNum4]
+ ld [hPrintNum10], a
+ cp b
+ jr nc, .skip4
+ ld a, [hPrintNum3]
+ and a
+ jr nz, .skip5
+ ld a, [hPrintNum2]
+ and a
+ jr z, .skip6
+ dec a
+ ld [hPrintNum2], a
+ xor a
+.skip5
+ dec a
+ ld [hPrintNum3], a
+ ld a, [hPrintNum4]
+.skip4
+ sub b
+ ld [hPrintNum4], a
+ inc c
+ jr .loop
+.skip6
+ ld a, [hPrintNum9]
+ ld [hPrintNum3], a
+.skip3
+ ld a, [hPrintNum8]
+ ld [hPrintNum2], a
+.skip1
+ ld a, [hPrintNum1]
+ or c
+ jr z, .PrintLeadingZero
+ ld a, [hPrintNum1]
+ and a
+ jr nz, .done
+ bit 5, d
+ jr z, .done
+ ld a, "¥"
+ ld [hli], a
+ res 5, d
+.done
+ ld a, "0"
+ add c
+ ld [hl], a
+ ld [hPrintNum1], a
+ inc e
+ dec e
+ ret nz
+ inc hl
+ ld [hl], "·"
+ ret
+
+.PrintLeadingZero: ; c644
+; prints a leading zero unless they are turned off in the flags
+ bit 7, d ; print leading zeroes?
+ ret z
+ ld [hl], "0"
+ ret
+
+.AdvancePointer: ; c64a
+; increments the pointer unless leading zeroes are not being printed,
+; the number is left-aligned, and no nonzero digits have been printed yet
+ bit 7, d ; print leading zeroes?
+ jr nz, .inc
+ bit 6, d ; left alignment or right alignment?
+ jr z, .inc
+ ld a, [hPrintNum1]
+ and a
+ ret z
+.inc
+ inc hl
+ ret
diff --git a/engine/radio.asm b/engine/radio.asm
index e7498a1c8..678fc05d5 100644
--- a/engine/radio.asm
+++ b/engine/radio.asm
@@ -372,7 +372,7 @@ OaksPkmnTalk8:
ld a, OAKS_POKEMON_TALK_9
jp NextRadioLine
-.Descriptors
+.Descriptors:
dw .sweetadorably
dw .wigglyslickly
dw .aptlynamed
@@ -492,7 +492,7 @@ OaksPkmnTalk9:
.ok
jp NextRadioLine
-.Descriptors
+.Descriptors:
dw .cute
dw .weird
dw .pleasant
@@ -896,7 +896,7 @@ BenFernMusic5:
ld hl, BenFernText2A
jr z, .SunTueThurSun
ld hl, BenFernText2B
-.SunTueThurSun
+.SunTueThurSun:
ld a, POKEMON_MUSIC_6
jp NextRadioLine
@@ -906,7 +906,7 @@ BenFernMusic6:
ld hl, BenFernText3A
jr z, .SunTueThurSun
ld hl, BenFernText3B
-.SunTueThurSun
+.SunTueThurSun:
ld a, POKEMON_MUSIC_7
jp NextRadioLine
@@ -921,7 +921,7 @@ StartPokemonMusicChannel:
and 1
jr z, .SunTueThurSun
ld de, MUSIC_POKEMON_LULLABY
-.SunTueThurSun
+.SunTueThurSun:
callab RadioMusicRestartDE
ret
@@ -1235,7 +1235,7 @@ PeoplePlaces5:
.ok
jp NextRadioLine
-.Descriptors
+.Descriptors:
dw PnP_cute
dw PnP_lazy
dw PnP_happy
@@ -1352,7 +1352,7 @@ PeoplePlaces6: ; Places
ld a, PLACES_AND_PEOPLE_7
jp NextRadioLine
-.Maps
+.Maps:
map PALLET_TOWN
map ROUTE_22
map PEWTER_CITY
@@ -1392,7 +1392,7 @@ PeoplePlaces7:
.ok
jp PrintRadioLine
-.Descriptors
+.Descriptors:
dw PnP_cute
dw PnP_lazy
dw PnP_happy
@@ -1538,7 +1538,7 @@ BuenasPassword1:
jp z, BuenasPassword20
jp BuenasPassword8
-.PlayPassword
+.PlayPassword:
call StartRadioStation
ld a, [hBGMapMode]
push af
@@ -1594,7 +1594,7 @@ BuenasPassword4:
; Set the flag so that we don't generate a new password this week.
ld hl, WeeklyFlags
set 7, [hl]
-.AlreadyGotIt
+.AlreadyGotIt:
ld c, a
call GetBuenasPassword
ld hl, BuenaRadioText4
@@ -1638,29 +1638,29 @@ GetBuenasPassword:
ld c, [hl]
ret
-.StringFunctionJumpTable
+.StringFunctionJumpTable:
dw .Mon
dw .Item
dw .Move
dw .RawString
-.Mon
+.Mon:
call .GetTheIndex
call GetPokemonName
ret
-.Item
+.Item:
call .GetTheIndex
call GetItemName
ret
-.Move
+.Move:
call .GetTheIndex
call GetMoveName
ret
-.GetTheIndex
+.GetTheIndex:
ld h, 0
ld l, c
add hl, de
@@ -1668,7 +1668,7 @@ GetBuenasPassword:
ld [wNamedObjectIndexBuffer], a
ret
-.RawString
+.RawString:
; Get the string from the table...
ld a, c
and a
diff --git a/engine/scripting.asm b/engine/scripting.asm
index 42d060e9b..078ce8931 100644
--- a/engine/scripting.asm
+++ b/engine/scripting.asm
@@ -582,7 +582,7 @@ GiveItemScript: ; 96f77
itemnotify
end
-.Full
+.Full:
buttonsound
pocketisfull
end
@@ -681,19 +681,19 @@ GetPocketName: ; 96ffe
call CopyName2
ret
-.Pockets
+.Pockets:
dw .Item
dw .Key
dw .Ball
dw .TM
-.Item
+.Item:
db "ITEM POCKET@"
-.Key
+.Key:
db "KEY POCKET@"
-.Ball
+.Ball:
db "BALL POCKET@"
-.TM
+.TM:
db "TM POCKET@"
; 97051
@@ -1425,12 +1425,12 @@ ShowEmoteScript: ; 973b6
applymovement2 .Hide
end
-.Show
+.Show:
show_emote
step_sleep_1
step_end
-.Hide
+.Hide:
hide_emote
step_sleep_1
step_end
@@ -1455,7 +1455,7 @@ Script_earthquake: ; 973c7
jp ScriptCall
; 973e6
-.script: ; 973e6
+.script ; 973e6
applymovement PLAYER, wd002
end
; 973eb
diff --git a/engine/scrolling_menu.asm b/engine/scrolling_menu.asm
index b09453239..08a718df1 100755
--- a/engine/scrolling_menu.asm
+++ b/engine/scrolling_menu.asm
@@ -22,7 +22,7 @@ _ScrollingMenu:: ; 245cb
jr .loop
; 245d6
-.exit: ; 245d6
+.exit ; 245d6
call MenuClickSound
ld [wMenuJoypad], a
ld a, 0
@@ -30,7 +30,7 @@ _ScrollingMenu:: ; 245cb
ret
; 245e1
-.zero: ; 245e1
+.zero ; 245e1
call ScrollingMenu_InitDisplay
ld a, 1
ld [hBGMapMode], a
@@ -84,13 +84,13 @@ ScrollingMenuJoyAction: ; 24609
jr .loop
; 24640
-.unreferenced: ; unreferenced
+.unreferenced ; unreferenced
ld a, -1
and a
ret
; 24644
-.a_button: ; 24644
+.a_button ; 24644
call PlaceHollowCursor
ld a, [wMenuCursorY]
dec a
@@ -111,13 +111,13 @@ ScrollingMenuJoyAction: ; 24609
ret
; 2466f
-.b_button: ; 2466f
+.b_button ; 2466f
ld a, B_BUTTON
scf
ret
; 24673
-.select: ; 24673
+.select ; 24673
ld a, [wMenuData2Flags]
bit 7, a
jp z, xor_a_dec_a
@@ -135,7 +135,7 @@ ScrollingMenuJoyAction: ; 24609
ret
; 24695
-.start: ; 24695
+.start ; 24695
ld a, [wMenuData2Flags]
bit 6, a
jp z, xor_a_dec_a
@@ -144,7 +144,7 @@ ScrollingMenuJoyAction: ; 24609
ret
; 246a1
-.d_left: ; 246a1
+.d_left ; 246a1
ld hl, w2DMenuFlags2
bit 7, [hl]
jp z, xor_a_dec_a
@@ -156,7 +156,7 @@ ScrollingMenuJoyAction: ; 24609
ret
; 246b5
-.d_right: ; 246b5
+.d_right ; 246b5
ld hl, w2DMenuFlags2
bit 7, [hl]
jp z, xor_a_dec_a
@@ -168,7 +168,7 @@ ScrollingMenuJoyAction: ; 24609
ret
; 246c9
-.d_up: ; 246c9
+.d_up ; 246c9
ld hl, w2DMenuFlags2
bit 7, [hl]
jp z, xor_a
@@ -183,7 +183,7 @@ ScrollingMenuJoyAction: ; 24609
jp xor_a_dec_a
; 246df
-.d_down: ; 246df
+.d_down ; 246df
ld hl, w2DMenuFlags2
bit 7, [hl]
jp z, xor_a
@@ -210,17 +210,17 @@ ScrollingMenu_GetCursorPosition: ; 246fc
ret
; 24706
-Function24706: ; 24706 (9:4706)
+ScrollingMenu_ClearLeftColumn: ; 24706 (9:4706)
call MenuBoxCoord2Tile
ld de, SCREEN_WIDTH
add hl, de
ld de, 2 * SCREEN_WIDTH
ld a, [wMenuData2_ScrollingMenuHeight]
-.asm_24713
+.loop
ld [hl], " "
add hl, de
dec a
- jr nz, .asm_24713
+ jr nz, .loop
ret
InitScrollingMenuCursor: ; 2471a
diff --git a/engine/selectmenu.asm b/engine/selectmenu.asm
index ce2ff8eb7..4e461a68e 100755
--- a/engine/selectmenu.asm
+++ b/engine/selectmenu.asm
@@ -4,7 +4,7 @@ SelectMenu:: ; 13327
jr c, .NotRegistered
jp UseRegisteredItem
-.NotRegistered
+.NotRegistered:
call OpenText
ld b, BANK(ItemMayBeRegisteredText)
ld hl, ItemMayBeRegisteredText
@@ -32,13 +32,13 @@ CheckRegisteredItem: ; 13345
rst JumpTable
ret
-.Pockets
+.Pockets:
dw .CheckItem
dw .CheckBall
dw .CheckKeyItem
dw .CheckTMHM
-.CheckItem
+.CheckItem:
ld hl, NumItems
call .CheckRegisteredNo
jr c, .NoRegisteredItem
@@ -53,7 +53,7 @@ endr
and a
ret
-.CheckKeyItem
+.CheckKeyItem:
ld a, [RegisteredItem]
ld hl, KeyItems
ld de, 1
@@ -64,7 +64,7 @@ endr
and a
ret
-.CheckBall
+.CheckBall:
ld hl, NumBalls
call .CheckRegisteredNo
jr nc, .NoRegisteredItem
@@ -78,10 +78,10 @@ endr
jr c, .NoRegisteredItem
ret
-.CheckTMHM
+.CheckTMHM:
jr .NoRegisteredItem
-.NoRegisteredItem
+.NoRegisteredItem:
xor a
ld [WhichRegisteredItem], a
ld [RegisteredItem], a
@@ -90,7 +90,7 @@ endr
; 133a6
-.CheckRegisteredNo ; 133a6
+.CheckRegisteredNo: ; 133a6
ld a, [WhichRegisteredItem]
and REGISTERED_NUMBER
dec a
@@ -100,13 +100,13 @@ endr
and a
ret
-.NotEnoughItems
+.NotEnoughItems:
scf
ret
; 133b6
-.IsSameItem ; 133b6
+.IsSameItem: ; 133b6
ld a, [RegisteredItem]
cp [hl]
jr nz, .NotSameItem
@@ -114,7 +114,7 @@ endr
and a
ret
-.NotSameItem
+.NotSameItem:
scf
ret
; 133c3
@@ -128,7 +128,7 @@ UseRegisteredItem: ; 133c3
rst JumpTable
ret
-.SwitchTo
+.SwitchTo:
dw .CantUse
dw .NoFunction
dw .NoFunction
@@ -138,7 +138,7 @@ UseRegisteredItem: ; 133c3
dw .Overworld
; 133df
-.NoFunction ; 133df
+.NoFunction: ; 133df
call OpenText
call CantUseItem
call CloseText
@@ -146,7 +146,7 @@ UseRegisteredItem: ; 133c3
ret
; 133ea
-.Current ; 133ea
+.Current: ; 133ea
call OpenText
call DoItemEffect
call CloseText
@@ -154,7 +154,7 @@ UseRegisteredItem: ; 133c3
ret
; 133f5
-.Party ; 133f5
+.Party: ; 133f5
call RefreshScreen
call FadeToMenu
call DoItemEffect
@@ -164,7 +164,7 @@ UseRegisteredItem: ; 133c3
ret
; 13406
-.Overworld ; 13406
+.Overworld: ; 13406
call RefreshScreen
ld a, 1
ld [wUsingItemWithSelect], a
@@ -180,7 +180,7 @@ UseRegisteredItem: ; 133c3
ret
; 13422
-.CantUse ; 13422
+.CantUse: ; 13422
call RefreshScreen
._cantuse
diff --git a/engine/sine.asm b/engine/sine.asm
new file mode 100755
index 000000000..89a905d2e
--- /dev/null
+++ b/engine/sine.asm
@@ -0,0 +1,50 @@
+_Sine:: ; 84d9
+; A simple sine function.
+; Return d * sin(e) in hl.
+
+; e is a signed 6-bit value.
+ ld a, e
+ and %111111
+ cp %100000
+ jr nc, .negative
+
+ call .ApplySineWave
+ ld a, h
+ ret
+
+.negative
+ and %011111
+ call .ApplySineWave
+ ld a, h
+ xor -1
+ inc a
+ ret
+
+.ApplySineWave: ; 84ef
+ ld e, a
+ ld a, d
+ ld d, 0
+ ld hl, .sinewave
+ add hl, de
+ add hl, de
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld hl, 0
+
+; Factor amplitude
+.multiply
+ srl a
+ jr nc, .even
+ add hl, de
+.even
+ sla e
+ rl d
+ and a
+ jr nz, .multiply
+ ret
+
+.sinewave ; 850b
+; A $20-word table representing a sine wave.
+; 90 degrees is index $10 at a base amplitude of $100.
+ sine_wave $100
diff --git a/engine/slot_machine.asm b/engine/slot_machine.asm
index 2520a9a24..c31dbd2b3 100755
--- a/engine/slot_machine.asm
+++ b/engine/slot_machine.asm
@@ -213,7 +213,7 @@ endr
SlotsJumptable: ; 92844 (24:6844)
jumptable .Jumptable, wJumptableIndex
-.Jumptable
+.Jumptable:
dw Slots_Init ; 00
dw Slots_BetAndStart ; 01
dw Slots_WaitStart ; 02
@@ -358,7 +358,7 @@ Slots_FlashIfWin: ; 92955 (24:6955)
call Slots_Next
ret
-.GotIt
+.GotIt:
call Slots_Next
ld a, 16
ld [wcf64], a
@@ -800,8 +800,8 @@ Function92bd4: ; 92bd4 (24:6bd4)
; 92be4 (24:6be4)
-.dw: ; 92be4
-
+.dw ; 92be4
+
dw ReelAction_DoNothing ; 00
dw Slots_StopReelIgnoreJoypad ; 01
dw ReelAction_QuadrupleRate ; 02
@@ -893,7 +893,7 @@ Slots_StopReelIgnoreJoypad: ; 92c4c
dec [hl]
ret
-.EndReel
+.EndReel:
ld hl, wReel1ReelAction - wReel1
add hl, bc
ld a, $0
@@ -914,7 +914,7 @@ ReelAction_StopReel1: ; 92c5e
dec [hl]
call .CheckForBias
ret nz
-.NoBias
+.NoBias:
call Slots_StopReel
ret
@@ -955,7 +955,7 @@ ReelAction_StopReel2: ; 92c86
dec [hl]
ret
-.NoBias
+.NoBias:
call Slots_StopReel
ret
@@ -975,7 +975,7 @@ ReelAction_StopReel3: ; 92ca9
dec [hl]
ret
-.NoMatch
+.NoMatch:
ld a, [wSlotBias]
cp SLOTS_NOMATCH
jr z, .NoBias
@@ -987,7 +987,7 @@ ReelAction_StopReel3: ; 92ca9
dec [hl]
ret
-.NoBias
+.NoBias:
call Slots_StopReel
ret
@@ -1177,7 +1177,7 @@ ReelAction_DropReel: ; 92dca
call Slots_StopReel
ret
-.EggAgain
+.EggAgain:
ld hl, wReel1SpinRate - wReel1
add hl, bc
ld [hl], $0
@@ -1234,7 +1234,7 @@ ReelAction_WaitDropReel: ; 92e31
dec [hl]
ret
-.DropReel
+.DropReel:
ld hl, wReel1ReelAction - wReel1
add hl, bc
dec [hl]
@@ -1323,25 +1323,25 @@ Slots_CheckMatchedFirstTwoReels: ; 92e94
; 92ebd
.Jumptable: ; 92ebd
-
+
dw .zero
dw .one
dw .two
dw .three
; 92ec5
-.three: ; 92ec5
+.three ; 92ec5
call .CheckUpwardsDiag
call .CheckDownwardsDiag
-.two: ; 92ecb
+.two ; 92ecb
call .CheckBottomRow
call .CheckTopRow
-.one: ; 92ed1
+.one ; 92ed1
call .CheckMiddleRow
-.zero: ; 92ed4
+.zero ; 92ed4
ret
; 92ed5
@@ -1438,25 +1438,25 @@ Slots_CheckMatchedAllThreeReels: ; 92f1d
; 92f48
.Jumptable: ; 92f48
-
+
dw .zero
dw .one
dw .two
dw .three
; 92f50
-.three: ; 92f50
+.three ; 92f50
call .CheckUpwardsDiag
call .CheckDownwardsDiag
-.two: ; 92f56
+.two ; 92f56
call .CheckBottomRow
call .CheckTopRow
-.one: ; 92f5c
+.one ; 92f5c
call .CheckMiddleRow
-.zero: ; 92f5f
+.zero ; 92f5f
ret
; 92f60
@@ -1706,7 +1706,7 @@ Slots_AskBet: ; 9307c (24:707c)
call PrintText
jr .loop
-.Start
+.Start:
ld hl, Coins + 1
ld a, [hl]
sub c
@@ -1815,7 +1815,7 @@ SlotGetPayout: ; 93124 (24:7124)
callba MobileFn_105fe3
ret
-.PayoutTable
+.PayoutTable:
dw 300
dw 50
dw 6
@@ -1839,7 +1839,7 @@ SlotPayoutText: ; 93158 (24:7158)
callba MobileFn_105fd0
ret
-.MatchedSomething
+.MatchedSomething:
srl a
ld e, a
ld d, 0
@@ -1961,13 +1961,13 @@ SlotMachine_AnimateGolem: ; 9321d (24:721d)
jp [hl]
.Jumptable: ; 9322d (24:722d)
-
+
dw .init
dw .fall
dw .roll
-.init: ; 93233 (24:7233)
+.init ; 93233 (24:7233)
ld hl, SPRITEANIMSTRUCT_0E
add hl, bc
ld a, [hl]
@@ -1992,7 +1992,7 @@ SlotMachine_AnimateGolem: ; 9321d (24:721d)
add hl, bc
ld [hl], $0
-.fall: ; 93259 (24:7259)
+.fall ; 93259 (24:7259)
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
ld a, [hl]
@@ -2021,7 +2021,7 @@ SlotMachine_AnimateGolem: ; 9321d (24:721d)
call Slots_PlaySFX
ret
-.roll: ; 93289 (24:7289)
+.roll ; 93289 (24:7289)
ld hl, SPRITEANIMSTRUCT_XOFFSET
add hl, bc
ld a, [hl]
@@ -2062,13 +2062,13 @@ Slots_AnimateChansey: ; 932ac (24:72ac)
jp [hl]
.Jumptable: ; 932bc (24:72bc)
-
+
dw .walk
dw .one
dw .two
-.walk: ; 932c2 (24:72c2)
+.walk ; 932c2 (24:72c2)
ld hl, SPRITEANIMSTRUCT_XCOORD
add hl, bc
ld a, [hl]
@@ -2088,7 +2088,7 @@ Slots_AnimateChansey: ; 932ac (24:72ac)
ld a, $1
ld [wcf64], a
-.one: ; 932e0 (24:72e0)
+.one ; 932e0 (24:72e0)
ld a, [wcf64]
cp $2
jr z, .retain
@@ -2106,7 +2106,7 @@ Slots_AnimateChansey: ; 932ac (24:72ac)
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
ld [hl], $8
-.two: ; 932fc (24:72fc)
+.two ; 932fc (24:72fc)
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
ld a, [hl]
diff --git a/engine/specials.asm b/engine/specials.asm
index 79c413fb5..c15422750 100644
--- a/engine/specials.asm
+++ b/engine/specials.asm
@@ -578,7 +578,7 @@ SpecialSnorlaxAwake: ; 0xc43d
ld [ScriptVar], a
ret
-.ProximityCoords
+.ProximityCoords:
; x, y
db 33, 8 ; left
db 34, 10 ; below
diff --git a/engine/sprite_anims.asm b/engine/sprite_anims.asm
index 50eb61df6..5addaad5d 100755
--- a/engine/sprite_anims.asm
+++ b/engine/sprite_anims.asm
@@ -13,7 +13,7 @@ DoAnimFrame: ; 8d24b
; 8d25b
.Jumptable: ; 8d25b (23:525b)
-
+
dw .Null ; null
dw .one ; bouncing mon icon
dw .two ; bouncing mon icon, selected
@@ -54,7 +54,7 @@ DoAnimFrame: ; 8d24b
.Null: ; 8d2a1 (23:52a1)
ret
-.one: ; 8d2a2 (23:52a2)
+.one ; 8d2a2 (23:52a2)
ld a, [wMenuCursorY]
ld hl, SPRITEANIMSTRUCT_INDEX
@@ -71,7 +71,7 @@ DoAnimFrame: ; 8d24b
ld [hl], $0
ret
-.two: ; 8d2b9 (23:52b9)
+.two ; 8d2b9 (23:52b9)
ld hl, SPRITEANIMSTRUCT_XCOORD
add hl, bc
ld [hl], 8 * 3
@@ -113,7 +113,7 @@ DoAnimFrame: ; 8d24b
ld [hl], a
ret
-.three: ; 8d2ea (23:52ea)
+.three ; 8d2ea (23:52ea)
ld a, [wMenuCursorY]
ld hl, SPRITEANIMSTRUCT_INDEX
@@ -132,7 +132,7 @@ DoAnimFrame: ; 8d24b
ld [hl], 8 * 3
ret
-.four: ; 8d302 (23:5302)
+.four ; 8d302 (23:5302)
call .anonymous_dw
jp [hl]
; 8d306 (23:5306)
@@ -142,7 +142,7 @@ DoAnimFrame: ; 8d24b
dw .four_one
; 8d30a
-.four_zero: ; 8d30a
+.four_zero ; 8d30a
call .IncrementSpriteAnimStruct0B
ld hl, SPRITEANIMSTRUCT_INDEX
@@ -160,7 +160,7 @@ DoAnimFrame: ; 8d24b
add hl, bc
ld [hl], a
-.four_one: ; 8d321
+.four_one ; 8d321
ld hl, SPRITEANIMSTRUCT_XCOORD
add hl, bc
ld a, [hl]
@@ -203,7 +203,7 @@ DoAnimFrame: ; 8d24b
ret
; 8d35a
-.twentyfive: ; 8d35a (23:535a)
+.twentyfive ; 8d35a (23:535a)
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
ld a, [hl]
@@ -217,11 +217,11 @@ DoAnimFrame: ; 8d24b
ld [hl], a
ret
-.namingscreencursor: ; 8d36c (23:536c)
+.namingscreencursor ; 8d36c (23:536c)
callab NamingScreen_AnimateCursor
ret
-.mailcompositioncursor: ; 8d373 (23:5373)
+.mailcompositioncursor ; 8d373 (23:5373)
callab ComposeMail_AnimateCursor
ret
@@ -229,7 +229,7 @@ DoAnimFrame: ; 8d24b
callab GameFreakLogoJumper
ret
-.seven: ; 8d381 (23:5381)
+.seven ; 8d381 (23:5381)
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
ld a, [hl]
@@ -279,7 +279,7 @@ DoAnimFrame: ; 8d24b
call DeinitializeSprite
ret
-.eight: ; 8d3c3 (23:53c3)
+.eight ; 8d3c3 (23:53c3)
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
ld a, [hli]
@@ -404,19 +404,19 @@ DoAnimFrame: ; 8d24b
ld [hl], a
ret
-.thirteen: ; 8d46e (23:546e)
+.thirteen ; 8d46e (23:546e)
callab ret_e00ed
ret
-.fifteen: ; 8d475 (23:5475)
+.fifteen ; 8d475 (23:5475)
callab AnimatePokegearModeIndicatorArrow
ret
-.fourteen: ; 8d47c (23:547c)
+.fourteen ; 8d47c (23:547c)
callab DummyGame_InterpretJoypad_AnimateCursor
ret
-.sixteen: ; 8d483 (23:5483)
+.sixteen ; 8d483 (23:5483)
call .anonymous_dw
jp [hl]
; 8d487 (23:5487)
@@ -430,7 +430,7 @@ DoAnimFrame: ; 8d24b
dw .sixteen_five
; 8d493
-.sixteen_zero: ; 8d493
+.sixteen_zero ; 8d493
ld a, $14
call _ReinitSpriteAnimFrame
@@ -444,7 +444,7 @@ DoAnimFrame: ; 8d24b
ret
; 8d4a5
-.sixteen_two: ; 8d4a5
+.sixteen_two ; 8d4a5
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
ld a, [hl]
@@ -460,7 +460,7 @@ DoAnimFrame: ; 8d24b
add hl, bc
ld [hl], $40
-.sixteen_three: ; 8d4b8
+.sixteen_three ; 8d4b8
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
ld a, [hl]
@@ -481,7 +481,7 @@ DoAnimFrame: ; 8d24b
jr .sixteen_five
; 8d4d5
-.sixteen_one: ; 8d4d5
+.sixteen_one ; 8d4d5
ld hl, SPRITEANIMSTRUCT_0B
add hl, bc
ld [hl], $4
@@ -496,7 +496,7 @@ DoAnimFrame: ; 8d24b
ret
; 8d4e8
-.sixteen_four: ; 8d4e8
+.sixteen_four ; 8d4e8
ld hl, SPRITEANIMSTRUCT_0D
add hl, bc
ld a, [hl]
@@ -542,12 +542,12 @@ DoAnimFrame: ; 8d24b
call .IncrementSpriteAnimStruct0B
ret
-.sixteen_five: ; 8d526
+.sixteen_five ; 8d526
call DeinitializeSprite
ret
; 8d52a
-.seventeen: ; 8d52a (23:552a)
+.seventeen ; 8d52a (23:552a)
ld hl, SPRITEANIMSTRUCT_XCOORD
add hl, bc
ld a, [hl]
@@ -565,7 +565,7 @@ DoAnimFrame: ; 8d24b
call DeinitializeSprite
ret
-.eighteen: ; 8d543 (23:5543)
+.eighteen ; 8d543 (23:5543)
callab Function29676
ret
@@ -610,7 +610,7 @@ DoAnimFrame: ; 8d24b
callab AnimateTuningKnob
ret
-.twentyone: ; 8d57f (23:557f)
+.twentyone ; 8d57f (23:557f)
ld hl, SPRITEANIMSTRUCT_0D
add hl, bc
ld e, [hl]
@@ -749,15 +749,15 @@ endr
ld [hl], a
ret
-.twentyseven: ; 8d630 (23:5630)
+.twentyseven ; 8d630 (23:5630)
callba Function108bc7
ret
-.twentyeight: ; 8d637 (23:5637)
+.twentyeight ; 8d637 (23:5637)
callba Function108be0
ret
-.twentynine: ; 8d63e (23:563e)
+.twentynine ; 8d63e (23:563e)
ld a, [wcf65]
and a
jr nz, .asm_8d645
@@ -784,7 +784,7 @@ endr
call _ReinitSpriteAnimFrame
ret
-.thirty: ; 8d666 (23:5666)
+.thirty ; 8d666 (23:5666)
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
ld a, [hl]
@@ -803,7 +803,7 @@ endr
.asm_8d67f
ret
-.thirtytwo: ; 8d680 (23:5680)
+.thirtytwo ; 8d680 (23:5680)
ld hl, SPRITEANIMSTRUCT_0B
add hl, bc
ld d, [hl]
@@ -830,7 +830,7 @@ endr
ld [hl], a
ret
-.thirtythree: ; 8d6a2 (23:56a2)
+.thirtythree ; 8d6a2 (23:56a2)
ld a, [wcf64]
cp $40
ret nz
@@ -838,7 +838,7 @@ endr
call _ReinitSpriteAnimFrame
ret
-.thirtyfour: ; 8d6ae (23:56ae)
+.thirtyfour ; 8d6ae (23:56ae)
ld hl, SPRITEANIMSTRUCT_YCOORD
add hl, bc
ld a, [hl]
@@ -846,15 +846,15 @@ endr
ld [hl], a
ret
-.twentysix: ; 8d6b7 (23:56b7)
+.twentysix ; 8d6b7 (23:56b7)
callba Function11d0b6
ret
-.thirtyone: ; 8d6be (23:56be)
+.thirtyone ; 8d6be (23:56be)
callba UpdateCelebiPosition
ret
-.anonymous_dw: ; 8d6c5 (23:56c5)
+.anonymous_dw ; 8d6c5 (23:56c5)
ld hl, [sp+$0]
ld e, [hl]
inc hl
diff --git a/engine/sprites.asm b/engine/sprites.asm
index 666ac992d..5755c6d8f 100755
--- a/engine/sprites.asm
+++ b/engine/sprites.asm
@@ -173,7 +173,7 @@ endr
ld [hli], a
inc de
; Look up the third field from the table in the wSpriteAnimDict array (10x2).
-; Take the value and load it in
+; Take the value and load it in
ld a, [de]
call GetSpriteAnimVTile
ld [hli], a
@@ -649,7 +649,7 @@ Sprites_Sine: ; 8e72c
ret
; 8e75d
-.sinewave: ; 8e75d
+.sinewave ; 8e75d
sine_wave $100
diff --git a/engine/startmenu.asm b/engine/startmenu.asm
index 25a3eee39..b2b82bd6a 100755
--- a/engine/startmenu.asm
+++ b/engine/startmenu.asm
@@ -12,7 +12,7 @@ StartMenu:: ; 125cd
ld hl, .MenuDataHeader
jr z, .GotMenuData
ld hl, .ContestMenuDataHeader
-.GotMenuData
+.GotMenuData:
call LoadMenuDataHeader
call .SetUpMenuItems
@@ -28,14 +28,14 @@ StartMenu:: ; 125cd
call UpdateTimePals
jr .Select
-.Reopen
+.Reopen:
call UpdateSprites
call UpdateTimePals
call .SetUpMenuItems
ld a, [wd0d2]
ld [wMenuCursorBuffer], a
-.Select
+.Select:
call .GetInput
jr c, .Exit
call .DrawMenuAccount
@@ -57,7 +57,7 @@ StartMenu:: ; 125cd
ld l, a
jp [hl]
-.MenuReturns
+.MenuReturns:
dw .Reopen
dw .Exit
dw .ExitMenuCallFuncCloseText
@@ -66,7 +66,7 @@ StartMenu:: ; 125cd
dw .ReturnEnd
dw .ReturnRedraw
-.Exit
+.Exit:
ld a, [hOAMUpdate]
push af
ld a, 1
@@ -74,14 +74,14 @@ StartMenu:: ; 125cd
call LoadFontsExtra
pop af
ld [hOAMUpdate], a
-.ReturnEnd
+.ReturnEnd:
call ExitMenu
-.ReturnEnd2
+.ReturnEnd2:
call CloseText
call UpdateTimePals
ret
-.GetInput
+.GetInput:
; Return carry on exit, and no-carry on selection.
xor a
ld [hBGMapMode], a
@@ -91,7 +91,7 @@ StartMenu:: ; 125cd
ld [MenuSelection], a
.loop
call .PrintMenuAccount
- call Function1f1a
+ call GetScrollingMenuJoypad
ld a, [wMenuJoypad]
cp B_BUTTON
jr z, .b
@@ -107,21 +107,21 @@ StartMenu:: ; 125cd
ret
; 12691
-.ExitMenuRunScript ; 12691
+.ExitMenuRunScript: ; 12691
call ExitMenu
ld a, HMENURETURN_SCRIPT
ld [hMenuReturn], a
ret
; 12699
-.ExitMenuRunScriptCloseText ; 12699
+.ExitMenuRunScriptCloseText: ; 12699
call ExitMenu
ld a, HMENURETURN_SCRIPT
ld [hMenuReturn], a
jr .ReturnEnd2
; 126a2
-.ExitMenuCallFuncCloseText ; 126a2
+.ExitMenuCallFuncCloseText: ; 126a2
call ExitMenu
ld hl, wQueuedScriptAddr
ld a, [hli]
@@ -132,12 +132,12 @@ StartMenu:: ; 125cd
jr .ReturnEnd2
; 126b1
-.ReturnRedraw ; 126b1
+.ReturnRedraw: ; 126b1
call .Clear
jp .Reopen
; 126b7
-.Clear ; 126b7
+.Clear: ; 126b7
call ClearBGPalettes
call Call_ExitMenu
call ReloadTilesetAndPalettes
@@ -151,28 +151,28 @@ StartMenu:: ; 125cd
; 126d3
-.MenuDataHeader
+.MenuDataHeader:
db $40 ; tile backup
db 0, 10 ; start coords
db 17, 19 ; end coords
dw .MenuData
db 1 ; default selection
-.ContestMenuDataHeader
+.ContestMenuDataHeader:
db $40 ; tile backup
db 2, 10 ; start coords
db 17, 19 ; end coords
dw .MenuData
db 1 ; default selection
-.MenuData
+.MenuData:
db %10101000 ; x padding, wrap around, start can close
dn 0, 0 ; rows, columns
dw MenuItemsList
dw .MenuString
dw .Items
-.Items
+.Items:
dw StartMenu_Pokedex, .PokedexString, .PokedexDesc
dw StartMenu_Pokemon, .PartyString, .PartyDesc
dw StartMenu_Pack, .PackString, .PackDesc
@@ -183,45 +183,45 @@ StartMenu:: ; 125cd
dw StartMenu_Pokegear, .PokegearString, .PokegearDesc
dw StartMenu_Quit, .QuitString, .QuitDesc
-.PokedexString db "#DEX@"
-.PartyString db "#MON@"
-.PackString db "PACK@"
-.StatusString db "<PLAYER>@"
-.SaveString db "SAVE@"
-.OptionString db "OPTION@"
-.ExitString db "EXIT@"
-.PokegearString db $24, "GEAR@"
-.QuitString db "QUIT@"
-
-.PokedexDesc db "#MON"
+.PokedexString: db "#DEX@"
+.PartyString: db "#MON@"
+.PackString: db "PACK@"
+.StatusString: db "<PLAYER>@"
+.SaveString: db "SAVE@"
+.OptionString: db "OPTION@"
+.ExitString: db "EXIT@"
+.PokegearString: db $24, "GEAR@"
+.QuitString: db "QUIT@"
+
+.PokedexDesc: db "#MON"
next "database@"
-.PartyDesc db "Party ", $4a
+.PartyDesc: db "Party ", $4a
next "status@"
-.PackDesc db "Contains"
+.PackDesc: db "Contains"
next "items@"
-.PokegearDesc db "Trainer's"
+.PokegearDesc: db "Trainer's"
next "key device@"
-.StatusDesc db "Your own"
+.StatusDesc: db "Your own"
next "status@"
-.SaveDesc db "Save your"
+.SaveDesc: db "Save your"
next "progress@"
-.OptionDesc db "Change"
+.OptionDesc: db "Change"
next "settings@"
-.ExitDesc db "Close this"
+.ExitDesc: db "Close this"
next "menu@"
-.QuitDesc db "Quit and"
+.QuitDesc: db "Quit and"
next "be judged.@"
-.OpenMenu ; 127e5
+.OpenMenu: ; 127e5
ld a, [MenuSelection]
call .GetMenuAccountTextPointer
ld a, [hli]
@@ -230,7 +230,7 @@ StartMenu:: ; 125cd
jp [hl]
; 127ef
-.MenuString ; 127ef
+.MenuString: ; 127ef
push de
ld a, [MenuSelection]
call .GetMenuAccountTextPointer
@@ -244,7 +244,7 @@ StartMenu:: ; 125cd
ret
; 12800
-.MenuDesc ; 12800
+.MenuDesc: ; 12800
push de
ld a, [MenuSelection]
cp $ff
@@ -265,7 +265,7 @@ endr
; 12819
-.GetMenuAccountTextPointer ; 12819
+.GetMenuAccountTextPointer: ; 12819
ld e, a
ld d, 0
ld hl, wMenuData2PointerTableAddr
@@ -279,7 +279,7 @@ endr
; 12829
-.SetUpMenuItems ; 12829
+.SetUpMenuItems: ; 12829
xor a
ld [wWhichIndexSet], a
call .FillMenuList
@@ -340,7 +340,7 @@ endr
; 1288d
-.FillMenuList ; 1288d
+.FillMenuList: ; 1288d
xor a
ld hl, MenuItemsList
ld [hli], a
@@ -352,18 +352,18 @@ endr
ret
; 128a0
-.AppendMenuList ; 128a0
+.AppendMenuList: ; 128a0
ld [de], a
inc de
inc c
ret
; 128a4
-.DrawMenuAccount_ ; 128a4
+.DrawMenuAccount_: ; 128a4
jp .DrawMenuAccount
; 128a7
-.PrintMenuAccount ; 128a7
+.PrintMenuAccount: ; 128a7
call .IsMenuAccountOn
ret z
call .DrawMenuAccount
@@ -371,7 +371,7 @@ endr
jp .MenuDesc
; 128b4
-.DrawMenuAccount ; 128b4
+.DrawMenuAccount: ; 128b4
call .IsMenuAccountOn
ret z
hlcoord 0, 13
@@ -383,13 +383,13 @@ endr
jp TextBoxPalette
; 128cb
-.IsMenuAccountOn ; 128cb
+.IsMenuAccountOn: ; 128cb
ld a, [Options2]
and 1
ret
; 128d1
-.DrawBugContestStatusBox ; 128d1
+.DrawBugContestStatusBox: ; 128d1
ld hl, StatusFlags2
bit 2, [hl] ; bug catching contest
ret z
@@ -397,7 +397,7 @@ endr
ret
; 128de
-.DrawBugContestStatus ; 128de
+.DrawBugContestStatus: ; 128de
ld hl, StatusFlags2
bit 2, [hl] ; bug catching contest
jr nz, .contest
@@ -428,11 +428,11 @@ StartMenu_Quit: ; 128f0
ld a, 4
ret
-.DontEndContest
+.DontEndContest:
ld a, 0
ret
-.EndTheContestText
+.EndTheContestText:
text_jump UnknownText_0x1c1a6c
db "@"
; 1290b
@@ -591,70 +591,66 @@ HasNoItems: ; 129d5
and a
ret
-Function129f4: ; 129f4
+TossItemFromPC: ; 129f4
push de
call PartyMonItemName
callba _CheckTossableItem
ld a, [wItemAttributeParamBuffer]
and a
- jr nz, .asm_12a3f
- ld hl, UnknownText_0x12a45
+ jr nz, .key_item
+ ld hl, .TossHowMany
call MenuTextBox
callba SelectQuantityToToss
push af
call CloseWindow
call ExitMenu
pop af
- jr c, .asm_12a42
- ld hl, UnknownText_0x12a4a
+ jr c, .quit
+ ld hl, .ConfirmToss
call MenuTextBox
call YesNoBox
push af
call ExitMenu
pop af
- jr c, .asm_12a42
+ jr c, .quit
pop hl
ld a, [wd107]
call TossItem
call PartyMonItemName
- ld hl, UnknownText_0x12a4f
+ ld hl, .TossedThisMany
call MenuTextBox
call ExitMenu
and a
ret
-.asm_12a3f
- call Function12a54
-.asm_12a42
+
+.key_item
+ call .CantToss
+.quit
pop hl
scf
ret
-; 12a45 (4:6a45)
-UnknownText_0x12a45: ; 0x12a45
+.TossHowMany:
; Toss out how many @ (S)?
text_jump UnknownText_0x1c1a90
db "@"
-; 0x12a4a
-UnknownText_0x12a4a: ; 0x12a4a
+.ConfirmToss:
; Throw away @ @ (S)?
text_jump UnknownText_0x1c1aad
db "@"
-; 0x12a4f
-UnknownText_0x12a4f: ; 0x12a4f
+.TossedThisMany:
; Discarded @ (S).
text_jump UnknownText_0x1c1aca
db "@"
-; 0x12a54
-Function12a54: ; 12a54 (4:6a54)
- ld hl, UnknownText_0x12a5b
+.CantToss:
+ ld hl, .TooImportantToToss
call MenuTextBoxBackup
ret
-; 12a5b (4:6a5b)
-UnknownText_0x12a5b: ; 0x12a5b
+.TooImportantToToss:
; That's too impor- tant to toss out!
text_jump UnknownText_0x1c1adf
db "@"
@@ -711,7 +707,7 @@ PokemonActionSubmenu: ; 12a88
ld a, 0
ret
-.Actions
+.Actions:
dbw MONMENU_CUT, MonMenu_Cut ; Cut
dbw MONMENU_FLY, MonMenu_Fly ; Fly
dbw MONMENU_SURF, MonMenu_Surf ; Surf
@@ -780,7 +776,7 @@ SwitchPartyMons: ; 12aec
ld a, 1
ret
-.DontSwitch
+.DontSwitch:
xor a
ld [PartyMenuActionText], a
call CancelPokemonAction
@@ -830,7 +826,7 @@ GiveTakePartyMonItem: ; 12b60
; 12ba9
-.GiveItem: ; 12ba9
+.GiveItem:
callba DepositSellInitPackBuffers
@@ -986,7 +982,7 @@ GiveTakeItemMenuData: ; 12c9b
dw .Items
db 1 ; default option
-.Items
+.Items:
db %10000000 ; x padding
db 2 ; # items
db "GIVE@"
@@ -1136,12 +1132,12 @@ MonMailAction: ; 12d45
call MenuTextBoxBackup
jr .done
-.MailboxFull
+.MailboxFull:
ld hl, .mailboxfulltext
call MenuTextBoxBackup
jr .done
-.RemoveMailToBag
+.RemoveMailToBag:
ld hl, .mailwilllosemessagetext
call StartMenuYesNo
jr c, .done
@@ -1157,7 +1153,7 @@ MonMailAction: ; 12d45
call MenuTextBoxBackup
jr .done
-.BagIsFull
+.BagIsFull:
ld hl, .bagfulltext
call MenuTextBoxBackup
jr .done
@@ -1168,7 +1164,7 @@ MonMailAction: ; 12d45
; 12dc9
-.MenuDataHeader: ; 0x12dc9
+.MenuDataHeader:
db $40 ; flags
db 10, 12 ; start coords
db 17, 19 ; end coords
@@ -1176,7 +1172,7 @@ MonMailAction: ; 12d45
db 1 ; default option
; 0x12dd1
-.MenuData2: ; 0x12dd1
+.MenuData2:
db $80 ; flags
db 3 ; items
db "READ@"
@@ -1185,37 +1181,37 @@ MonMailAction: ; 12d45
; 0x12de2
-.mailwilllosemessagetext: ; 0x12de2
+.mailwilllosemessagetext
; The MAIL will lose its message. OK?
text_jump UnknownText_0x1c1c22
db "@"
; 0x12de7
-.tookmailfrommontext: ; 0x12de7
+.tookmailfrommontext
; MAIL detached from <POKEMON>.
text_jump UnknownText_0x1c1c47
db "@"
; 0x12dec
-.bagfulltext: ; 0x12dec
+.bagfulltext
; There's no space for removing MAIL.
text_jump UnknownText_0x1c1c62
db "@"
; 0x12df1
-.sendmailtopctext: ; 0x12df1
+.sendmailtopctext
; Send the removed MAIL to your PC?
text_jump UnknownText_0x1c1c86
db "@"
; 0x12df6
-.mailboxfulltext: ; 0x12df6
+.mailboxfulltext
; Your PC's MAILBOX is full.
text_jump UnknownText_0x1c1ca9
db "@"
; 0x12dfb
-.sentmailtopctext: ; 0x12dfb
+.sentmailtopctext
; The MAIL was sent to your PC.
text_jump UnknownText_0x1c1cc4
db "@"
@@ -1246,7 +1242,7 @@ MonMenu_Cut: ; 12e1b
ld a, $2
ret
-.Fail
+.Fail:
ld a, $3
ret
; 12e30
@@ -1264,15 +1260,15 @@ MonMenu_Fly: ; 12e30
ld a, $2
ret
-.Fail
+.Fail:
ld a, $3
ret
-.Error
+.Error:
ld a, $0
ret
-.Unused
+.Unused:
ld a, $1
ret
; 12e55
@@ -1286,7 +1282,7 @@ MonMenu_Flash: ; 12e55
ld a, $2
ret
-.Fail
+.Fail:
ld a, $3
ret
; 12e6a
@@ -1300,7 +1296,7 @@ MonMenu_Strength: ; 12e6a
ld a, $2
ret
-.Fail
+.Fail:
ld a, $3
ret
; 12e7f
@@ -1314,7 +1310,7 @@ MonMenu_Whirlpool: ; 12e7f
ld a, $2
ret
-.Fail
+.Fail:
ld a, $3
ret
; 12e94
@@ -1328,7 +1324,7 @@ MonMenu_Waterfall: ; 12e94
ld a, $2
ret
-.Fail
+.Fail:
ld a, $3
ret
; 12ea9
@@ -1342,7 +1338,7 @@ MonMenu_Teleport: ; 12ea9
ld a, $2
ret
-.Fail
+.Fail:
ld a, $3
ret
; 12ebd
@@ -1356,7 +1352,7 @@ MonMenu_Surf: ; 12ebd
ld a, $2
ret
-.Fail
+.Fail:
ld a, $3
ret
; 12ed1
@@ -1370,7 +1366,7 @@ MonMenu_Dig: ; 12ed1
ld a, $2
ret
-.Fail
+.Fail:
ld a, $3
ret
; 12ee6
@@ -1381,7 +1377,7 @@ MonMenu_Softboiled_MilkDrink: ; 12ee6
callba Softboiled_MilkDrinkFunction
jr .finish
-.NotEnoughHP
+.NotEnoughHP:
ld hl, .Text_NotEnoughHP
call PrintText
@@ -1392,13 +1388,13 @@ MonMenu_Softboiled_MilkDrink: ; 12ee6
ret
; 12f00
-.Text_NotEnoughHP: ; 0x12f00
+.Text_NotEnoughHP:
; Not enough HP!
text_jump UnknownText_0x1c1ce3
db "@"
; 0x12f05
-.CheckMonHasEnoughHP: ; 12f05
+.CheckMonHasEnoughHP:
; Need to have at least (MaxHP / 5) HP left.
ld a, MON_MAXHP
call GetPartyParamLocation
@@ -1429,7 +1425,7 @@ MonMenu_Headbutt: ; 12f26
ld a, $2
ret
-.Fail
+.Fail:
ld a, $3
ret
; 12f3b
@@ -1443,7 +1439,7 @@ MonMenu_RockSmash: ; 12f3b
ld a, $2
ret
-.Fail
+.Fail:
ld a, $3
ret
; 12f50
@@ -1471,7 +1467,7 @@ ChooseMoveToDelete: ; 12f5b
ret
; 12f73
-.asm_12f73: ; 12f73
+.asm_12f73
call SetUpMoveScreenBG
ld de, DeleteMoveScreenAttrs
call SetMenuAttributes
@@ -1480,27 +1476,27 @@ ChooseMoveToDelete: ; 12f5b
set 6, [hl]
jr .asm_12f93
-.asm_12f86: ; 12f86
+.asm_12f86
call ScrollingMenuJoypad
bit 1, a
jp nz, .asm_12f9f
bit 0, a
jp nz, .asm_12f9c
-.asm_12f93: ; 12f93
+.asm_12f93
call PrepareToPlaceMoveData
call PlaceMoveData
jp .asm_12f86
; 12f9c
-.asm_12f9c: ; 12f9c
+.asm_12f9c
and a
jr .asm_12fa0
-.asm_12f9f: ; 12f9f
+.asm_12f9f
scf
-.asm_12fa0: ; 12fa0
+.asm_12fa0
push af
xor a
ld [wSwitchMon], a
@@ -1583,7 +1579,7 @@ MoveScreenLoop: ; 12fd5
ld de, String_1316b
call PlaceString
jp .joy_loop
-.b_button: ; 13038
+.b_button
call PlayClickSFX
call WaitSFX
ld a, [wMoveSwapBuffer]
@@ -1600,7 +1596,7 @@ MoveScreenLoop: ; 12fd5
jp .loop
; 1305b
-.d_right: ; 1305b
+.d_right
ld a, [wMoveSwapBuffer]
and a
jp nz, .joy_loop
@@ -1615,7 +1611,7 @@ MoveScreenLoop: ; 12fd5
jp z, .joy_loop
jp MoveScreenLoop
-.d_left: ; 13075
+.d_left
ld a, [wMoveSwapBuffer]
and a
jp nz, .joy_loop
@@ -1665,7 +1661,7 @@ MoveScreenLoop: ; 12fd5
jr .cycle_left_loop
; 130c6
-.a_button: ; 130c6
+.a_button
call PlayClickSFX
call WaitSFX
ld a, [wMoveSwapBuffer]
@@ -1716,7 +1712,7 @@ MoveScreenLoop: ; 12fd5
jp .loop
; 1313a
-.copy_move: ; 1313a
+.copy_move
push hl
ld a, [wMenuCursorY]
dec a
@@ -1739,7 +1735,7 @@ MoveScreenLoop: ; 12fd5
ret
; 13154
-.exit: ; 13154
+.exit
xor a
ld [wMoveSwapBuffer], a
ld hl, w2DMenuFlags1
@@ -1776,7 +1772,7 @@ SetUpMoveScreenBG: ; 13172
ld a, [hl]
ld [wd265], a
ld e, $2
- callba Function8e83f
+ callba LoadMenuMonIcon
hlcoord 0, 1
ld b, 9
ld c, 18
diff --git a/engine/stats_screen.asm b/engine/stats_screen.asm
index 32b75069a..e3bc6069c 100755
--- a/engine/stats_screen.asm
+++ b/engine/stats_screen.asm
@@ -100,7 +100,7 @@ StatsScreenBattle: ; 4dcf7
; 4dd2a
StatsScreenPointerTable: ; 4dd2a
-
+
dw MonStatsInit ; regular pokémon
dw EggStatsInit ; egg
dw StatsScreenWaitCry
@@ -369,7 +369,7 @@ StatsScreen_JoypadAction: ; 4de54 (13:5e54)
call StatsScreen_SetJumptableIndex
ret
-.b_button: ; 4dee4 (13:5ee4)
+.b_button ; 4dee4 (13:5ee4)
ld h, 7
call StatsScreen_SetJumptableIndex
ret
@@ -535,7 +535,7 @@ StatsScreen_LoadGFX: ; 4dfb6 (13:5fb6)
ret
.Jumptable: ; 4e00d (13:600d)
-
+
dw .PinkPage
dw .GreenPage
dw .BluePage
@@ -559,7 +559,7 @@ StatsScreen_LoadGFX: ; 4dfb6 (13:5fb6)
jr z, .NotImmuneToPkrs
hlcoord 8, 8
ld [hl], "."
-.NotImmuneToPkrs
+.NotImmuneToPkrs:
ld a, [MonType]
cp BOXMON
jr z, .StatusOK
@@ -570,12 +570,12 @@ StatsScreen_LoadGFX: ; 4dfb6 (13:5fb6)
pop hl
jr nz, .done_status
jr .StatusOK
-.HasPokerus
+.HasPokerus:
ld de, .PkrsStr
hlcoord 1, 13
call PlaceString
jr .done_status
-.StatusOK
+.StatusOK:
ld de, .OK_str
call PlaceString
.done_status
@@ -628,7 +628,7 @@ StatsScreen_LoadGFX: ; 4dfb6 (13:5fb6)
jr z, .AtMaxLevel
inc a
ld [TempMonLevel], a
-.AtMaxLevel
+.AtMaxLevel:
call PrintLevel
pop af
ld [TempMonLevel], a
@@ -657,7 +657,7 @@ endr
ld [Buffer1], a ; wd1ea (aliases: MagikarpLength)
ret
-.AlreadyAtMaxLevel
+.AlreadyAtMaxLevel:
ld hl, Buffer1 ; wd1ea (aliases: MagikarpLength)
xor a
rept 2
@@ -747,7 +747,7 @@ endr
ld de, SCREEN_WIDTH
ld b, 10
ld a, $31
-.BluePageVerticalDivider
+.BluePageVerticalDivider:
ld [hl], a
add hl, de
dec b
@@ -863,7 +863,7 @@ StatsScreen_PlaceFrontpic: ; 4e226 (13:6226)
call .get_animation
ret
-.get_animation: ; 4e289 (13:6289)
+.get_animation ; 4e289 (13:6289)
ld a, [CurPartySpecies]
call IsAPokemon
ret c
@@ -1101,7 +1101,7 @@ StatsScreen_LoadPageIndicators: ; 4e4cd (13:64cd)
hlcoord 15, 5
jr z, .load_square
hlcoord 17, 5
-.load_square: ; 4e4f7 (13:64f7)
+.load_square ; 4e4f7 (13:64f7)
push bc
ld [hli], a
inc a
diff --git a/engine/std_scripts.asm b/engine/std_scripts.asm
index 7baa90eea..9c9542cf4 100644
--- a/engine/std_scripts.asm
+++ b/engine/std_scripts.asm
@@ -252,37 +252,37 @@ DayToTextScript:
if_equal SATURDAY, .Saturday
stringtotext .SundayText, 0
end
-.Monday
+.Monday:
stringtotext .MondayText, 0
end
-.Tuesday
+.Tuesday:
stringtotext .TuesdayText, 0
end
-.Wednesday
+.Wednesday:
stringtotext .WednesdayText, 0
end
-.Thursday
+.Thursday:
stringtotext .ThursdayText, 0
end
-.Friday
+.Friday:
stringtotext .FridayText, 0
end
-.Saturday
+.Saturday:
stringtotext .SaturdayText, 0
end
-.SundayText
+.SundayText:
db "SUNDAY@"
-.MondayText
+.MondayText:
db "MONDAY@"
-.TuesdayText
+.TuesdayText:
db "TUESDAY@"
-.WednesdayText
+.WednesdayText:
db "WEDNESDAY@"
-.ThursdayText
+.ThursdayText:
db "THURSDAY@"
-.FridayText
+.FridayText:
db "FRIDAY@"
-.SaturdayText
+.SaturdayText:
db "SATURDAY@"
GoldenrodRocketsScript:
@@ -643,64 +643,64 @@ AskNumber1MScript:
if_equal PHONE_BLACKBELT_KENJI, .Kenji
if_equal PHONE_HIKER_PARRY, .Parry
-.Jack
+.Jack:
farwritetext JackAskNumber1Text
end
-.Huey
+.Huey:
farwritetext HueyAskNumber1Text
end
-.Gaven
+.Gaven:
farwritetext GavenAskNumber1Text
end
-.Jose
+.Jose:
farwritetext JoseAskNumber1Text
end
-.Joey
+.Joey:
farwritetext JoeyAskNumber1Text
end
-.Wade
+.Wade:
farwritetext WadeAskNumber1Text
end
-.Ralph
+.Ralph:
farwritetext RalphAskNumber1Text
end
-.Anthony
+.Anthony:
farwritetext AnthonyAskNumber1Text
end
-.Todd
+.Todd:
farwritetext ToddAskNumber1Text
end
-.Irwin
+.Irwin:
farwritetext IrwinAskNumber1Text
end
-.Arnie
+.Arnie:
farwritetext ArnieAskNumber1Text
end
-.Alan
+.Alan:
farwritetext AlanAskNumber1Text
end
-.Chad
+.Chad:
farwritetext ChadAskNumber1Text
end
-.Derek
+.Derek:
farwritetext DerekAskNumber1Text
end
-.Tully
+.Tully:
farwritetext TullyAskNumber1Text
end
-.Brent
+.Brent:
farwritetext BrentAskNumber1Text
end
-.Vance
+.Vance:
farwritetext VanceAskNumber1Text
end
-.Wilton
+.Wilton:
farwritetext WiltonAskNumber1Text
end
-.Kenji
+.Kenji:
farwritetext KenjiAskNumber1Text
end
-.Parry
+.Parry:
farwritetext ParryAskNumber1Text
end
@@ -728,64 +728,64 @@ AskNumber2MScript:
if_equal PHONE_BLACKBELT_KENJI, .Kenji
if_equal PHONE_HIKER_PARRY, .Parry
-.Jack
+.Jack:
farwritetext JackAskNumber2Text
end
-.Huey
+.Huey:
farwritetext HueyAskNumber2Text
end
-.Gaven
+.Gaven:
farwritetext GavenAskNumber2Text
end
-.Jose
+.Jose:
farwritetext JoseAskNumber2Text
end
-.Joey
+.Joey:
farwritetext JoeyAskNumber2Text
end
-.Wade
+.Wade:
farwritetext WadeAskNumber2Text
end
-.Ralph
+.Ralph:
farwritetext RalphAskNumber2Text
end
-.Anthony
+.Anthony:
farwritetext AnthonyAskNumber2Text
end
-.Todd
+.Todd:
farwritetext ToddAskNumber2Text
end
-.Irwin
+.Irwin:
farwritetext IrwinAskNumber2Text
end
-.Arnie
+.Arnie:
farwritetext ArnieAskNumber2Text
end
-.Alan
+.Alan:
farwritetext AlanAskNumber2Text
end
-.Chad
+.Chad:
farwritetext ChadAskNumber2Text
end
-.Derek
+.Derek:
farwritetext DerekAskNumber2Text
end
-.Tully
+.Tully:
farwritetext TullyAskNumber2Text
end
-.Brent
+.Brent:
farwritetext BrentAskNumber2Text
end
-.Vance
+.Vance:
farwritetext VanceAskNumber2Text
end
-.Wilton
+.Wilton:
farwritetext WiltonAskNumber2Text
end
-.Kenji
+.Kenji:
farwritetext KenjiAskNumber2Text
end
-.Parry
+.Parry:
farwritetext ParryAskNumber2Text
end
@@ -819,102 +819,102 @@ NumberAcceptedMScript:
if_equal PHONE_BLACKBELT_KENJI, .Kenji
if_equal PHONE_HIKER_PARRY, .Parry
-.Jack
+.Jack:
farwritetext JackNumberAcceptedText
waitbutton
closetext
end
-.Huey
+.Huey:
farwritetext HueyNumberAcceptedText
waitbutton
closetext
end
-.Gaven
+.Gaven:
farwritetext GavenNumberAcceptedText
waitbutton
closetext
end
-.Jose
+.Jose:
farwritetext JoseNumberAcceptedText
waitbutton
closetext
end
-.Joey
+.Joey:
farwritetext JoeyNumberAcceptedText
waitbutton
closetext
end
-.Wade
+.Wade:
farwritetext WadeNumberAcceptedText
waitbutton
closetext
end
-.Ralph
+.Ralph:
farwritetext RalphNumberAcceptedText
waitbutton
closetext
end
-.Anthony
+.Anthony:
farwritetext AnthonyNumberAcceptedText
waitbutton
closetext
end
-.Todd
+.Todd:
farwritetext ToddNumberAcceptedText
waitbutton
closetext
end
-.Irwin
+.Irwin:
farwritetext IrwinNumberAcceptedText
waitbutton
closetext
end
-.Arnie
+.Arnie:
farwritetext ArnieNumberAcceptedText
waitbutton
closetext
end
-.Alan
+.Alan:
farwritetext AlanNumberAcceptedText
waitbutton
closetext
end
-.Chad
+.Chad:
farwritetext ChadNumberAcceptedText
waitbutton
closetext
end
-.Derek
+.Derek:
farwritetext DerekNumberAcceptedText
waitbutton
closetext
end
-.Tully
+.Tully:
farwritetext TullyNumberAcceptedText
waitbutton
closetext
end
-.Brent
+.Brent:
farwritetext BrentNumberAcceptedText
waitbutton
closetext
end
-.Vance
+.Vance:
farwritetext VanceNumberAcceptedText
waitbutton
closetext
end
-.Wilton
+.Wilton:
farwritetext WiltonNumberAcceptedText
waitbutton
closetext
end
-.Kenji
+.Kenji:
farwritetext KenjiNumberAcceptedText
waitbutton
closetext
end
-.Parry
+.Parry:
farwritetext ParryNumberAcceptedText
waitbutton
closetext
@@ -943,102 +943,102 @@ NumberDeclinedMScript:
if_equal PHONE_BLACKBELT_KENJI, .Kenji
if_equal PHONE_HIKER_PARRY, .Parry
-.Jack
+.Jack:
farwritetext JackNumberDeclinedText
waitbutton
closetext
end
-.Huey
+.Huey:
farwritetext HueyNumberDeclinedText
waitbutton
closetext
end
-.Gaven
+.Gaven:
farwritetext GavenNumberDeclinedText
waitbutton
closetext
end
-.Jose
+.Jose:
farwritetext JoseNumberDeclinedText
waitbutton
closetext
end
-.Joey
+.Joey:
farwritetext JoeyNumberDeclinedText
waitbutton
closetext
end
-.Wade
+.Wade:
farwritetext WadeNumberDeclinedText
waitbutton
closetext
end
-.Ralph
+.Ralph:
farwritetext RalphNumberDeclinedText
waitbutton
closetext
end
-.Anthony
+.Anthony:
farwritetext AnthonyNumberDeclinedText
waitbutton
closetext
end
-.Todd
+.Todd:
farwritetext ToddNumberDeclinedText
waitbutton
closetext
end
-.Irwin
+.Irwin:
farwritetext IrwinNumberDeclinedText
waitbutton
closetext
end
-.Arnie
+.Arnie:
farwritetext ArnieNumberDeclinedText
waitbutton
closetext
end
-.Alan
+.Alan:
farwritetext AlanNumberDeclinedText
waitbutton
closetext
end
-.Chad
+.Chad:
farwritetext ChadNumberDeclinedText
waitbutton
closetext
end
-.Derek
+.Derek:
farwritetext DerekNumberDeclinedText
waitbutton
closetext
end
-.Tully
+.Tully:
farwritetext TullyNumberDeclinedText
waitbutton
closetext
end
-.Brent
+.Brent:
farwritetext BrentNumberDeclinedText
waitbutton
closetext
end
-.Vance
+.Vance:
farwritetext VanceNumberDeclinedText
waitbutton
closetext
end
-.Wilton
+.Wilton:
farwritetext WiltonNumberDeclinedText
waitbutton
closetext
end
-.Kenji
+.Kenji:
farwritetext KenjiNumberDeclinedText
waitbutton
closetext
end
-.Parry
+.Parry:
farwritetext ParryNumberDeclinedText
waitbutton
closetext
@@ -1067,102 +1067,102 @@ PhoneFullMScript:
if_equal PHONE_BLACKBELT_KENJI, .Kenji
if_equal PHONE_HIKER_PARRY, .Parry
-.Jack
+.Jack:
farwritetext JackPhoneFullText
waitbutton
closetext
end
-.Huey
+.Huey:
farwritetext HueyPhoneFullText
waitbutton
closetext
end
-.Gaven
+.Gaven:
farwritetext GavenPhoneFullText
waitbutton
closetext
end
-.Jose
+.Jose:
farwritetext JosePhoneFullText
waitbutton
closetext
end
-.Joey
+.Joey:
farwritetext JoeyPhoneFullText
waitbutton
closetext
end
-.Wade
+.Wade:
farwritetext WadePhoneFullText
waitbutton
closetext
end
-.Ralph
+.Ralph:
farwritetext RalphPhoneFullText
waitbutton
closetext
end
-.Anthony
+.Anthony:
farwritetext AnthonyPhoneFullText
waitbutton
closetext
end
-.Todd
+.Todd:
farwritetext ToddPhoneFullText
waitbutton
closetext
end
-.Irwin
+.Irwin:
farwritetext IrwinPhoneFullText
waitbutton
closetext
end
-.Arnie
+.Arnie:
farwritetext ArniePhoneFullText
waitbutton
closetext
end
-.Alan
+.Alan:
farwritetext AlanPhoneFullText
waitbutton
closetext
end
-.Chad
+.Chad:
farwritetext ChadPhoneFullText
waitbutton
closetext
end
-.Derek
+.Derek:
farwritetext DerekPhoneFullText
waitbutton
closetext
end
-.Tully
+.Tully:
farwritetext TullyPhoneFullText
waitbutton
closetext
end
-.Brent
+.Brent:
farwritetext BrentPhoneFullText
waitbutton
closetext
end
-.Vance
+.Vance:
farwritetext VancePhoneFullText
waitbutton
closetext
end
-.Wilton
+.Wilton:
farwritetext WiltonPhoneFullText
waitbutton
closetext
end
-.Kenji
+.Kenji:
farwritetext KenjiPhoneFullText
waitbutton
closetext
end
-.Parry
+.Parry:
farwritetext ParryPhoneFullText
waitbutton
closetext
@@ -1188,87 +1188,87 @@ RematchMScript:
if_equal PHONE_FISHER_WILTON, .Wilton
if_equal PHONE_HIKER_PARRY, .Parry
-.Jack
+.Jack:
farwritetext JackRematchText
waitbutton
closetext
end
-.Huey
+.Huey:
farwritetext HueyRematchText
waitbutton
closetext
end
-.Gaven
+.Gaven:
farwritetext GavenRematchText
waitbutton
closetext
end
-.Jose
+.Jose:
farwritetext JoseRematchText
waitbutton
closetext
end
-.Joey
+.Joey:
farwritetext JoeyRematchText
waitbutton
closetext
end
-.Wade
+.Wade:
farwritetext WadeRematchText
waitbutton
closetext
end
-.Ralph
+.Ralph:
farwritetext RalphRematchText
waitbutton
closetext
end
-.Anthony
+.Anthony:
farwritetext AnthonyRematchText
waitbutton
closetext
end
-.Todd
+.Todd:
farwritetext ToddRematchText
waitbutton
closetext
end
-.Arnie
+.Arnie:
farwritetext ArnieRematchText
waitbutton
closetext
end
-.Alan
+.Alan:
farwritetext AlanRematchText
waitbutton
closetext
end
-.Chad
+.Chad:
farwritetext ChadRematchText
waitbutton
closetext
end
-.Tully
+.Tully:
farwritetext TullyRematchText
waitbutton
closetext
end
-.Brent
+.Brent:
farwritetext BrentRematchText
waitbutton
closetext
end
-.Vance
+.Vance:
farwritetext VanceRematchText
waitbutton
closetext
end
-.Wilton
+.Wilton:
farwritetext WiltonRematchText
waitbutton
closetext
end
-.Parry
+.Parry:
farwritetext ParryRematchText
waitbutton
closetext
@@ -1284,31 +1284,31 @@ GiftMScript:
if_equal PHONE_FISHER_WILTON, .Wilton
if_equal PHONE_BLACKBELT_KENJI, .Kenji
-.Jose
+.Jose:
farwritetext JoseGiftText
buttonsound
end
-.Wade
+.Wade:
farwritetext WadeGiftText
buttonsound
end
-.Alan
+.Alan:
farwritetext AlanGiftText
buttonsound
end
-.Derek
+.Derek:
farwritetext DerekGiftText
buttonsound
end
-.Tully
+.Tully:
farwritetext TullyGiftText
buttonsound
end
-.Wilton
+.Wilton:
farwritetext WiltonGiftText
buttonsound
end
-.Kenji
+.Kenji:
farwritetext KenjiGiftText
buttonsound
end
@@ -1327,57 +1327,57 @@ PackFullMScript:
if_equal PHONE_BLACKBELT_KENJI, .Kenji
if_equal PHONE_HIKER_PARRY, .Parry
-.Huey
+.Huey:
farwritetext HueyPackFullText
waitbutton
closetext
end
-.Jose
+.Jose:
farwritetext JosePackFullText
waitbutton
closetext
end
-.Joey
+.Joey:
farwritetext JoeyPackFullText
waitbutton
closetext
end
-.Wade
+.Wade:
farwritetext WadePackFullText
waitbutton
closetext
end
-.Alan
+.Alan:
farwritetext AlanPackFullText
waitbutton
closetext
end
-.Derek
+.Derek:
farwritetext DerekPackFullText
waitbutton
closetext
end
-.Tully
+.Tully:
farwritetext TullyPackFullText
waitbutton
closetext
end
-.Vance
+.Vance:
farwritetext VancePackFullText
waitbutton
closetext
end
-.Wilton
+.Wilton:
farwritetext WiltonPackFullText
waitbutton
closetext
end
-.Kenji
+.Kenji:
farwritetext KenjiPackFullText
waitbutton
closetext
end
-.Parry
+.Parry:
farwritetext ParryPackFullText
waitbutton
closetext
@@ -1391,19 +1391,19 @@ RematchGiftMScript:
if_equal PHONE_BIRDKEEPER_VANCE, .Vance
if_equal PHONE_HIKER_PARRY, .Parry
-.Huey
+.Huey:
farwritetext HueyRematchGiftText
buttonsound
end
-.Joey
+.Joey:
farwritetext JoeyRematchGiftText
buttonsound
end
-.Vance
+.Vance:
farwritetext VanceRematchGiftText
buttonsound
end
-.Parry
+.Parry:
farwritetext ParryRematchGiftText
buttonsound
end
@@ -1419,28 +1419,28 @@ AskNumber1FScript:
if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
if_equal PHONE_PICNICKER_ERIN, .Erin
-.Beverly
+.Beverly:
farwritetext BeverlyAskNumber1Text
end
-.Beth
+.Beth:
farwritetext BethAskNumber1Text
end
-.Reena
+.Reena:
farwritetext ReenaAskNumber1Text
end
-.Liz
+.Liz:
farwritetext LizAskNumber1Text
end
-.Gina
+.Gina:
farwritetext GinaAskNumber1Text
end
-.Dana
+.Dana:
farwritetext DanaAskNumber1Text
end
-.Tiffany
+.Tiffany:
farwritetext TiffanyAskNumber1Text
end
-.Erin
+.Erin:
farwritetext ErinAskNumber1Text
end
@@ -1455,28 +1455,28 @@ AskNumber2FScript:
if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
if_equal PHONE_PICNICKER_ERIN, .Erin
-.Beverly
+.Beverly:
farwritetext BeverlyAskNumber2Text
end
-.Beth
+.Beth:
farwritetext BethAskNumber2Text
end
-.Reena
+.Reena:
farwritetext ReenaAskNumber2Text
end
-.Liz
+.Liz:
farwritetext LizAskNumber2Text
end
-.Gina
+.Gina:
farwritetext GinaAskNumber2Text
end
-.Dana
+.Dana:
farwritetext DanaAskNumber2Text
end
-.Tiffany
+.Tiffany:
farwritetext TiffanyAskNumber2Text
end
-.Erin
+.Erin:
farwritetext ErinAskNumber2Text
end
@@ -1498,42 +1498,42 @@ NumberAcceptedFScript: ; 0xbcbd3
if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
if_equal PHONE_PICNICKER_ERIN, .Erin
-.Beverly
+.Beverly:
farwritetext BeverlyNumberAcceptedText
waitbutton
closetext
end
-.Beth
+.Beth:
farwritetext BethNumberAcceptedText
waitbutton
closetext
end
-.Reena
+.Reena:
farwritetext ReenaNumberAcceptedText
waitbutton
closetext
end
-.Liz
+.Liz:
farwritetext LizNumberAcceptedText
waitbutton
closetext
end
-.Gina
+.Gina:
farwritetext GinaNumberAcceptedText
waitbutton
closetext
end
-.Dana
+.Dana:
farwritetext DanaNumberAcceptedText
waitbutton
closetext
end
-.Tiffany
+.Tiffany:
farwritetext TiffanyNumberAcceptedText
waitbutton
closetext
end
-.Erin
+.Erin:
farwritetext ErinNumberAcceptedText
waitbutton
closetext
@@ -1550,42 +1550,42 @@ NumberDeclinedFScript:
if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
if_equal PHONE_PICNICKER_ERIN, .Erin
-.Beverly
+.Beverly:
farwritetext BeverlyNumberDeclinedText
waitbutton
closetext
end
-.Beth
+.Beth:
farwritetext BethNumberDeclinedText
waitbutton
closetext
end
-.Reena
+.Reena:
farwritetext ReenaNumberDeclinedText
waitbutton
closetext
end
-.Liz
+.Liz:
farwritetext LizNumberDeclinedText
waitbutton
closetext
end
-.Gina
+.Gina:
farwritetext GinaNumberDeclinedText
waitbutton
closetext
end
-.Dana
+.Dana:
farwritetext DanaNumberDeclinedText
waitbutton
closetext
end
-.Tiffany
+.Tiffany:
farwritetext TiffanyNumberDeclinedText
waitbutton
closetext
end
-.Erin
+.Erin:
farwritetext ErinNumberDeclinedText
waitbutton
closetext
@@ -1602,42 +1602,42 @@ PhoneFullFScript:
if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
if_equal PHONE_PICNICKER_ERIN, .Erin
-.Beverly
+.Beverly:
farwritetext BeverlyPhoneFullText
waitbutton
closetext
end
-.Beth
+.Beth:
farwritetext BethPhoneFullText
waitbutton
closetext
end
-.Reena
+.Reena:
farwritetext ReenaPhoneFullText
waitbutton
closetext
end
-.Liz
+.Liz:
farwritetext LizPhoneFullText
waitbutton
closetext
end
-.Gina
+.Gina:
farwritetext GinaPhoneFullText
waitbutton
closetext
end
-.Dana
+.Dana:
farwritetext DanaPhoneFullText
waitbutton
closetext
end
-.Tiffany
+.Tiffany:
farwritetext TiffanyPhoneFullText
waitbutton
closetext
end
-.Erin
+.Erin:
farwritetext ErinPhoneFullText
waitbutton
closetext
@@ -1653,37 +1653,37 @@ RematchFScript:
if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
if_equal PHONE_PICNICKER_ERIN, .Erin
-.Beth
+.Beth:
farwritetext BethRematchText
waitbutton
closetext
end
-.Reena
+.Reena:
farwritetext ReenaRematchText
waitbutton
closetext
end
-.Liz
+.Liz:
farwritetext LizRematchText
waitbutton
closetext
end
-.Gina
+.Gina:
farwritetext GinaRematchText
waitbutton
closetext
end
-.Dana
+.Dana:
farwritetext DanaRematchText
waitbutton
closetext
end
-.Tiffany
+.Tiffany:
farwritetext TiffanyRematchText
waitbutton
closetext
end
-.Erin
+.Erin:
farwritetext ErinRematchText
waitbutton
closetext
@@ -1696,19 +1696,19 @@ GiftFScript:
if_equal PHONE_LASS_DANA, .Dana
if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
-.Beverly
+.Beverly:
farwritetext BeverlyGiftText
buttonsound
end
-.Gina
+.Gina:
farwritetext GinaGiftText
buttonsound
end
-.Dana
+.Dana:
farwritetext DanaGiftText
buttonsound
end
-.Tiffany
+.Tiffany:
farwritetext TiffanyGiftText
buttonsound
end
@@ -1721,27 +1721,27 @@ PackFullFScript:
if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
if_equal PHONE_PICNICKER_ERIN, .Erin
-.Beverly
+.Beverly:
farwritetext BeverlyPackFullText
waitbutton
closetext
end
-.Gina
+.Gina:
farwritetext GinaPackFullText
waitbutton
closetext
end
-.Dana
+.Dana:
farwritetext DanaPackFullText
waitbutton
closetext
end
-.Tiffany
+.Tiffany:
farwritetext TiffanyPackFullText
waitbutton
closetext
end
-.Erin
+.Erin:
farwritetext ErinPackFullText
waitbutton
closetext
@@ -1751,7 +1751,7 @@ RematchGiftFScript:
checkcode VAR_CALLERID
if_equal PHONE_PICNICKER_ERIN, .Erin
-.Erin
+.Erin:
opentext
farwritetext ErinRematchGiftText
buttonsound
@@ -1807,7 +1807,7 @@ GameCornerCoinVendorScript: ; 0xbcdcd
CoinVendor_IntroScript: ; 0xbcde0
farwritetext CoinVendor_IntroText
-.loop: ; 0xbcde4
+.loop ; 0xbcde4
special Special_DisplayMoneyAndCoinBalance
loadmenudata .MenuDataHeader
verticalmenu
@@ -1867,14 +1867,14 @@ CoinVendor_IntroScript: ; 0xbcde0
; 0xbce54
-.MenuDataHeader
+.MenuDataHeader:
db $40 ; flags
db 04, 00 ; start coords
db 11, 15 ; end coords
dw .MenuData2
db 1 ; default option
-.MenuData2
+.MenuData2:
db $80 ; flags
db 3 ; items
db " 50 : ¥1000@"
@@ -1894,13 +1894,13 @@ HappinessCheckScript:
closetext
end
-.KindaHappy
+.KindaHappy:
farwritetext HappinessText2
waitbutton
closetext
end
-.Unhappy
+.Unhappy:
farwritetext HappinessText1
waitbutton
closetext
diff --git a/engine/switch_items.asm b/engine/switch_items.asm
index d1c8aa66c..0d4512876 100755
--- a/engine/switch_items.asm
+++ b/engine/switch_items.asm
@@ -242,7 +242,7 @@ endr
; 24a91 (9:4a91)
-.spacing_dws: ; 24a91
+.spacing_dws ; 24a91
dw 0, 1, 2
; 24a97
diff --git a/engine/tile_events.asm b/engine/tile_events.asm
index a6794e817..c1ae93363 100755
--- a/engine/tile_events.asm
+++ b/engine/tile_events.asm
@@ -21,17 +21,17 @@ CheckDirectionalWarp:: ; 149af
; Else, set carry (immediate warp).
ld a, [PlayerStandingTile]
cp $70 ; Warp on down
- jr z, .not_warp
+ jr z, .directional
cp $76 ; Warp on left
- jr z, .not_warp
+ jr z, .directional
cp $78 ; Warp on up
- jr z, .not_warp
+ jr z, .directional
cp $7e ; Warp on right
- jr z, .not_warp
+ jr z, .directional
scf
ret
-.not_warp
+.directional
xor a
ret
; 149c6
@@ -44,7 +44,7 @@ CheckWarpFacingDown: ; 149c6
ret
; 149d3
-.blocks: ; 149d3
+.blocks ; 149d3
db $71 ; door
db $79
db $7a ; stairs
@@ -65,7 +65,7 @@ CheckGrassCollision:: ; 149dd
ret
; 149ea
-.blocks: ; 149ea
+.blocks ; 149ea
db $08
db $18 ; tall grass
db $14 ; tall grass
@@ -87,7 +87,7 @@ CheckCutCollision: ; 149f5
ret
; 14a00
-.blocks: ; 14a00
+.blocks ; 14a00
db $12 ; cut tree
db $1a ; cut tree
db $10 ; tall grass
diff --git a/engine/time.asm b/engine/time.asm
index 4240522c2..255346c0a 100755
--- a/engine/time.asm
+++ b/engine/time.asm
@@ -30,7 +30,7 @@ NextCallReceiveDelay: ; 113e9
jp RestartReceiveCallDelay
; 113fd
-.ReceiveCallDelays
+.ReceiveCallDelays:
db 20, 10, 5, 3
; 11401
@@ -124,16 +124,14 @@ endr
jr z, .RestartKenjiBreakCountdown
dec [hl]
jr nz, .DontRestartKenjiBreakCountdown
-
-.RestartKenjiBreakCountdown
+.RestartKenjiBreakCountdown:
call Special_SampleKenjiBreakCountdown
-
-.DontRestartKenjiBreakCountdown
+.DontRestartKenjiBreakCountdown:
jr RestartDailyResetTimer
; 11485
Special_SampleKenjiBreakCountdown: ; 11485
-; Generate a random number between 3 and 5
+; Generate a random number between 3 and 6
call Random
and 3
add 3
diff --git a/engine/timeofdaypals.asm b/engine/timeofdaypals.asm
index 4ed000af2..1bfc2457b 100644
--- a/engine/timeofdaypals.asm
+++ b/engine/timeofdaypals.asm
@@ -215,7 +215,7 @@ ReplaceTimeOfDayPals: ; 8c0e5
ld [wTimeOfDayPalset], a
ret
-.DarkCave
+.DarkCave:
ld a, [StatusFlags]
bit 2, a ; Flash
jr nz, .UsedFlash
@@ -223,7 +223,7 @@ ReplaceTimeOfDayPals: ; 8c0e5
ld [wTimeOfDayPalset], a
ret
-.UsedFlash
+.UsedFlash:
ld a, %10101010 ; 2, 2, 2, 2
ld [wTimeOfDayPalset], a
ret
@@ -254,31 +254,31 @@ endr
jp [hl]
; 8c126
-.TimePalettes
+.TimePalettes:
dw .MorningPalette
dw .DayPalette
dw .NitePalette
dw .DarknessPalette
-.MorningPalette
+.MorningPalette:
ld a, [wTimeOfDayPalset]
and %00000011 ; 0
ret
-.DayPalette
+.DayPalette:
ld a, [wTimeOfDayPalset]
and %00001100 ; 1
srl a
srl a
ret
-.NitePalette
+.NitePalette:
ld a, [wTimeOfDayPalset]
and %00110000 ; 2
swap a
ret
-.DarknessPalette
+.DarknessPalette:
ld a, [wTimeOfDayPalset]
and %11000000 ; 3
rlca
@@ -381,8 +381,8 @@ endr
db %00000000, %00000000, %00000000
.day
- db %11111111, %11111111, %11111111
- db %11111110, %11111110, %11111110
+ db %11111111, %11111111, %11111111
+ db %11111110, %11111110, %11111110
db %11111001, %11100100, %11100100
db %11100100, %11010000, %11010000
db %10010000, %10000000, %10000000
diff --git a/engine/timeset.asm b/engine/timeset.asm
index 8f212bc4d..fd6b2de94 100755
--- a/engine/timeset.asm
+++ b/engine/timeset.asm
@@ -63,7 +63,7 @@ InitClock: ; 90672 (24:4672)
ld c, 10
call DelayFrames
-.SetHourLoop
+.SetHourLoop:
call JoyTextDelay
call SetHour
jr nc, .SetHourLoop
@@ -78,7 +78,7 @@ InitClock: ; 90672 (24:4672)
call .ClearScreen
jr .loop
-.HourIsSet
+.HourIsSet:
ld hl, Text_HowManyMinutes
call PrintText
hlcoord 11, 7
@@ -93,7 +93,7 @@ InitClock: ; 90672 (24:4672)
ld c, 10
call DelayFrames
-.SetMinutesLoop
+.SetMinutesLoop:
call JoyTextDelay
call SetMinutes
jr nc, .SetMinutesLoop
@@ -108,7 +108,7 @@ InitClock: ; 90672 (24:4672)
call .ClearScreen
jr .HourIsSet
-.MinutesAreSet
+.MinutesAreSet:
call SetTimeOfDay
ld hl, OakText_ResponseToSetTime
call PrintText
@@ -150,7 +150,7 @@ SetHour: ; 90795 (24:4795)
and a
jr nz, .DecreaseThroughMidnight
ld a, 23 + 1
-.DecreaseThroughMidnight
+.DecreaseThroughMidnight:
dec a
ld [hl], a
jr .okay
@@ -161,7 +161,7 @@ SetHour: ; 90795 (24:4795)
cp 23
jr c, .AdvanceThroughMidnight
ld a, -1
-.AdvanceThroughMidnight
+.AdvanceThroughMidnight:
inc a
ld [hl], a
@@ -176,7 +176,7 @@ SetHour: ; 90795 (24:4795)
and a
ret
-.Confirm
+.Confirm:
scf
ret
@@ -368,30 +368,30 @@ OakText_ResponseToSetTime: ; 0x908b8
jr c, .MORN
cp 18
jr c, .DAY
-.NITE
+.NITE:
ld hl, .sodark
ret
-.MORN
+.MORN:
ld hl, .overslept
ret
-.DAY
+.DAY:
ld hl, .yikes
ret
; 908ec (24:48ec)
-.overslept: ; 0x908ec
+.overslept ; 0x908ec
; ! I overslept!
text_jump UnknownText_0x1bc326
db "@"
; 0x908f1
-.yikes: ; 0x908f1
+.yikes ; 0x908f1
; ! Yikes! I over- slept!
text_jump UnknownText_0x1bc336
db "@"
; 0x908f6
-.sodark: ; 0x908f6
+.sodark ; 0x908f6
; ! No wonder it's so dark!
text_jump UnknownText_0x1bc34f
db "@"
diff --git a/engine/title.asm b/engine/title.asm
index ab82b77b2..30804fbe8 100644
--- a/engine/title.asm
+++ b/engine/title.asm
@@ -3,39 +3,39 @@ _TitleScreen: ; 10ed67
call ClearBGPalettes
call ClearSprites
call ClearTileMap
-
+
; Turn BG Map update off
xor a
ld [hBGMapMode], a
-
+
; Reset timing variables
ld hl, wJumptableIndex
ld [hli], a ; cf63 ; Scene?
ld [hli], a ; cf64
ld [hli], a ; cf65 ; Timer lo
ld [hl], a ; cf66 ; Timer hi
-
+
; Turn LCD off
call DisableLCD
-
-
+
+
; VRAM bank 1
ld a, 1
ld [rVBK], a
-
-
+
+
; Decompress running Suicune gfx
ld hl, TitleSuicuneGFX
ld de, VTiles1
call Decompress
-
-
+
+
; Clear screen palettes
hlbgcoord 0, 0
ld bc, 20 bgrows
xor a
call ByteFill
-
+
; Fill tile palettes:
@@ -77,94 +77,94 @@ _TitleScreen: ; 10ed67
ld bc, 2 bgrows
ld a, 6
call ByteFill
-
+
; 'CRYSTAL VERSION'
hlbgcoord 5, 9
ld bc, NAME_LENGTH ; length of version text
ld a, 1
call ByteFill
-
+
; Suicune gfx
hlbgcoord 0, 12
ld bc, 6 bgrows ; the rest of the screen
ld a, 8
call ByteFill
-
-
+
+
; Back to VRAM bank 0
ld a, $0
ld [rVBK], a
-
-
+
+
; Decompress logo
ld hl, TitleLogoGFX
ld de, VTiles1
call Decompress
-
+
; Decompress background crystal
ld hl, TitleCrystalGFX
ld de, VTiles0
call Decompress
-
-
+
+
; Clear screen tiles
hlbgcoord 0, 0
ld bc, 64 bgrows
ld a, " "
call ByteFill
-
+
; Draw Pokemon logo
hlcoord 0, 3
lb bc, 7, 20
ld d, $80
ld e, $14
call DrawTitleGraphic
-
+
; Draw copyright text
hlbgcoord 3, 0, VBGMap1
lb bc, 1, 13
ld d, $c
ld e, $10
call DrawTitleGraphic
-
+
; Initialize running Suicune?
ld d, $0
call LoadSuicuneFrame
-
+
; Initialize background crystal
call InitializeBackground
-
+
; Save WRAM bank
ld a, [rSVBK]
push af
; WRAM bank 5
ld a, 5
ld [rSVBK], a
-
+
; Update palette colors
ld hl, TitleScreenPalettes
ld de, UnknBGPals
ld bc, 4 * 32
call CopyBytes
-
+
ld hl, TitleScreenPalettes
ld de, BGPals
ld bc, 4 * 32
call CopyBytes
-
+
; Restore WRAM bank
pop af
ld [rSVBK], a
-
-
+
+
; LY/SCX trickery starts here
-
+
ld a, [rSVBK]
push af
ld a, 5 ; BANK(LYOverrides)
ld [rSVBK], a
-
+
; Make alternating lines come in from opposite sides
; ( This part is actually totally pointless, you can't
@@ -180,30 +180,30 @@ _TitleScreen: ; 10ed67
inc hl
dec b
jr nz, .loop
-
+
; Make sure the rest of the buffer is empty
ld hl, LYOverrides + 80
xor a
ld bc, LYOverridesEnd - (LYOverrides + 80)
call ByteFill
-
+
; Let LCD Stat know we're messing around with SCX
ld a, rSCX - rJOYP
ld [hFFC6], a
-
+
pop af
ld [rSVBK], a
-
-
+
+
; Reset audio
call ChannelsOff
call EnableLCD
-
+
; Set sprite size to 8x16
ld a, [rLCDC]
set 2, a
ld [rLCDC], a
-
+
ld a, +112
ld [hSCX], a
ld a, 8
@@ -212,21 +212,21 @@ _TitleScreen: ; 10ed67
ld [hWX], a
ld a, -112
ld [hWY], a
-
+
ld a, $1
ld [hCGBPalUpdate], a
-
+
; Update BG Map 0 (bank 0)
ld [hBGMapMode], a
-
+
xor a
ld [UnknBGPals + 2], a
-
+
; Play starting sound effect
call SFXChannelsOff
ld de, SFX_TITLE_SCREEN_ENTRANCE
call PlaySFX
-
+
ret
; 10eea7
@@ -371,7 +371,7 @@ AnimateTitleCrystal: ; 10ef32
ld a, [hl]
cp 6 + $10
ret z
-
+
; Move all 30 parts of the crystal down by 2
ld c, 30
.loop
@@ -383,7 +383,7 @@ rept 3
endr
dec c
jr nz, .loop
-
+
ret
; 10ef46
@@ -405,78 +405,78 @@ TitleScreenPalettes:
RGB 19, 00, 00
RGB 15, 08, 31
RGB 15, 08, 31
-
+
RGB 00, 00, 00
RGB 31, 31, 31
RGB 15, 16, 31
RGB 31, 01, 13
-
+
RGB 00, 00, 00
RGB 07, 07, 07
RGB 31, 31, 31
RGB 02, 03, 30
-
+
RGB 00, 00, 00
RGB 13, 13, 13
RGB 31, 31, 18
RGB 02, 03, 30
-
+
RGB 00, 00, 00
RGB 19, 19, 19
RGB 29, 28, 12
RGB 02, 03, 30
-
+
RGB 00, 00, 00
RGB 25, 25, 25
RGB 28, 25, 06
RGB 02, 03, 30
-
+
RGB 00, 00, 00
RGB 31, 31, 31
RGB 26, 21, 00
RGB 02, 03, 30
-
+
RGB 00, 00, 00
RGB 11, 11, 19
RGB 31, 31, 31
RGB 00, 00, 00
-
+
; OBJ
RGB 00, 00, 00
RGB 10, 00, 15
RGB 17, 05, 22
RGB 19, 09, 31
-
+
RGB 31, 31, 31
RGB 00, 00, 00
RGB 00, 00, 00
RGB 00, 00, 00
-
+
RGB 31, 31, 31
RGB 00, 00, 00
RGB 00, 00, 00
RGB 00, 00, 00
-
+
RGB 31, 31, 31
RGB 00, 00, 00
RGB 00, 00, 00
RGB 00, 00, 00
-
+
RGB 31, 31, 31
RGB 00, 00, 00
RGB 00, 00, 00
RGB 00, 00, 00
-
+
RGB 31, 31, 31
RGB 00, 00, 00
RGB 00, 00, 00
RGB 00, 00, 00
-
+
RGB 31, 31, 31
RGB 00, 00, 00
RGB 00, 00, 00
RGB 00, 00, 00
-
+
RGB 31, 31, 31
RGB 00, 00, 00
RGB 00, 00, 00
diff --git a/engine/tmhm2.asm b/engine/tmhm2.asm
index 94de4f3e3..289857623 100755
--- a/engine/tmhm2.asm
+++ b/engine/tmhm2.asm
@@ -59,12 +59,12 @@ AskTeachTMHM: ; 2c7bf (b:47bf)
cp HM01
jr c, .TM
ld hl, Text_BootedHM ; Booted up an HM
-.TM
+.TM:
call PrintText
ld hl, Text_ItContained
call PrintText
call YesNoBox
-.NotTMHM
+.NotTMHM:
pop bc
ld a, b
ld [Options], a
@@ -374,7 +374,7 @@ TMHM_DisplayPocketItems: ; 2c9e2 (b:49e2)
call PrintNum
jr .okay
-.HM
+.HM:
push af
sub NUM_TMS
ld [wd265], a
@@ -421,7 +421,7 @@ TMHM_DisplayPocketItems: ; 2c9e2 (b:49e2)
jr nz, .loop2
jr .done
-.NotTMHM
+.NotTMHM:
call TMHMPocket_GetCurrentLineCoord
rept 3
inc hl
diff --git a/engine/trade/animation.asm b/engine/trade/animation.asm
index 719a230ff..91e190075 100755
--- a/engine/trade/animation.asm
+++ b/engine/trade/animation.asm
@@ -155,7 +155,7 @@ RunTradeAnimSequence: ; 28fa1
ld a, $0
ld [rVBK], a
-.NotCGB
+.NotCGB:
hlbgcoord 0, 0
ld bc, sScratch - VBGMap0
ld a, " "
@@ -1440,7 +1440,7 @@ LoadTradeBallAndCableGFX: ; 2982b
LoadTradeBubbleGFX: ; 2985a
call DelayFrame
ld e, $3
- callab Function8e83f
+ callab LoadMenuMonIcon
ld de, TradeBubbleGFX
ld hl, VTiles0 tile $72
lb bc, BANK(TradeBubbleGFX), $4
diff --git a/engine/trainer_card.asm b/engine/trainer_card.asm
index 4898d657a..b6fac7f7c 100755
--- a/engine/trainer_card.asm
+++ b/engine/trainer_card.asm
@@ -118,7 +118,7 @@ TrainerCard_Page1_Joypad: ; 251d7 (9:51d7)
ld [wJumptableIndex], a
ret
-.KantoCheck
+.KantoCheck:
; unreferenced
ld a, [KantoBadges]
and a
@@ -164,7 +164,7 @@ TrainerCard_Page2_Joypad: ; 25221 (9:5221)
ld [wJumptableIndex], a
ret
-.KantoCheck
+.KantoCheck:
; unreferenced
ld a, [KantoBadges]
and a
@@ -173,7 +173,7 @@ TrainerCard_Page2_Joypad: ; 25221 (9:5221)
ld [wJumptableIndex], a
ret
-.Quit
+.Quit:
ld a, $6
ld [wJumptableIndex], a
ret
@@ -289,11 +289,11 @@ TrainerCard_Page1_PrintDexCaught_GameTime: ; 2530a (9:530a)
call ClearBox
ret
-.Dex_PlayTime
+.Dex_PlayTime:
db "#DEX"
next "PLAY TIME@@"
-.Badges
+.Badges:
db " BADGES▶@"
.StatusTilemap: ; 25366
@@ -540,7 +540,7 @@ TrainerCard_Page2_3_OAMUpdate: ; 25448 (9:5448)
; 254a7 (9:54a7)
-.facing1: ; 254a7
+.facing1 ; 254a7
; y, x, tile, OAM attributes
db 0, 0, 0, 0
db 0, 8, 1, 0
@@ -548,7 +548,7 @@ TrainerCard_Page2_3_OAMUpdate: ; 25448 (9:5448)
db 8, 8, 3, 0
db -1
-.facing2: ; 254b8
+.facing2 ; 254b8
db 0, 0, 1, X_FLIP
db 0, 8, 0, X_FLIP
db 8, 0, 3, X_FLIP
diff --git a/engine/unown_puzzle.asm b/engine/unown_puzzle.asm
index cf8b78618..ada5244a7 100755
--- a/engine/unown_puzzle.asm
+++ b/engine/unown_puzzle.asm
@@ -188,7 +188,7 @@ endr
; e12d9
.Jumptable: ; e12d9
-
+
dw .Function
; e12db
@@ -321,7 +321,7 @@ UnownPuzzle_A: ; e1376
ld [wHoldingUnownPuzzlePiece], a
ret
-.TryPlacePiece
+.TryPlacePiece:
call UnownPuzzle_CheckCurrentTileOccupancy
and a
jr nz, UnownPuzzle_InvalidAction
@@ -546,7 +546,7 @@ RedrawUnownPuzzlePieces: ; e14d9
ld hl, .OAM_HoldingPiece
jr .load
-.NoPiece
+.NoPiece:
ld hl, .OAM_NotHoldingPiece
.load
diff --git a/engine/variables.asm b/engine/variables.asm
index 0f6cfc2c2..3ddfce8d6 100755
--- a/engine/variables.asm
+++ b/engine/variables.asm
@@ -28,7 +28,7 @@ endr
call _de_
ret
-.loadstringbuffer2: ; 8066c (20:466c)
+.loadstringbuffer2 ; 8066c (20:466c)
ld de, StringBuffer2
ld [de], a
ret
diff --git a/engine/warp_connection.asm b/engine/warp_connection.asm
index 6d7e00181..9d1f35479 100755
--- a/engine/warp_connection.asm
+++ b/engine/warp_connection.asm
@@ -277,7 +277,7 @@ Function1047a3: ; 1047a3 (41:47a3)
decoord 0, 0, AttrMap
ld a, $1
ld [rVBK], a
-.copy:
+.copy
hlbgcoord 0, 0
ld c, SCREEN_WIDTH
ld b, SCREEN_HEIGHT
diff --git a/engine/wildmons.asm b/engine/wildmons.asm
index f6643d6c3..140de9205 100755
--- a/engine/wildmons.asm
+++ b/engine/wildmons.asm
@@ -103,7 +103,7 @@ endr
.SearchMapForMon: ; 2a088
inc hl
-.ScanMapLoop
+.ScanMapLoop:
push af
ld a, [wNamedObjectIndexBuffer]
cp [hl]
@@ -128,7 +128,7 @@ endr
ld c, a
hlcoord 0, 0
ld de, SCREEN_WIDTH * SCREEN_HEIGHT
-.AppendNestLoop
+.AppendNestLoop:
ld a, [hli]
cp c
jr z, .found_nest
@@ -459,7 +459,7 @@ _SwarmWildmonCheck
scf
ret
-.CheckYanma
+.CheckYanma:
push hl
ld hl, SwarmFlags
bit 3, [hl]
@@ -611,7 +611,7 @@ endr
scf
ret
-.DontEncounterRoamMon
+.DontEncounterRoamMon:
pop hl
and a
ret
@@ -631,7 +631,7 @@ UpdateRoamMons: ; 2a30d
ld a, c
ld [wRoamMon1MapNumber], a
-.SkipRaikou
+.SkipRaikou:
ld a, [wRoamMon2MapGroup]
cp GROUP_N_A
jr z, .SkipEntei
@@ -644,7 +644,7 @@ UpdateRoamMons: ; 2a30d
ld a, c
ld [wRoamMon2MapNumber], a
-.SkipEntei
+.SkipEntei:
ld a, [wRoamMon3MapGroup]
cp GROUP_N_A
jr z, .SkipSuicune
@@ -657,7 +657,7 @@ UpdateRoamMons: ; 2a30d
ld a, c
ld [wRoamMon3MapNumber], a
-.SkipSuicune
+.SkipSuicune:
jp _BackUpMapIndices
; 2a355
@@ -729,7 +729,7 @@ JumpRoamMons: ; 2a394
ld [wRoamMon1MapGroup], a
ld a, c
ld [wRoamMon1MapNumber], a
-.SkipRaikou
+.SkipRaikou:
ld a, [wRoamMon2MapGroup]
cp GROUP_N_A
@@ -739,7 +739,7 @@ JumpRoamMons: ; 2a394
ld [wRoamMon2MapGroup], a
ld a, c
ld [wRoamMon2MapNumber], a
-.SkipEntei
+.SkipEntei:
ld a, [wRoamMon3MapGroup]
cp GROUP_N_A
@@ -749,7 +749,7 @@ JumpRoamMons: ; 2a394
ld [wRoamMon3MapGroup], a
ld a, c
ld [wRoamMon3MapNumber], a
-.SkipSuicune
+.SkipSuicune:
jp _BackUpMapIndices
@@ -852,7 +852,7 @@ RandomPhoneRareWildMon: ; 2a4ab
call LookUpWildmonsForMapDE
jr nc, .done
-.GetGrassmon
+.GetGrassmon:
push hl
ld bc, 5 + 4 * 2 ; Location of the level of the 5th wild Pokemon in that map
add hl, bc
@@ -908,7 +908,7 @@ endr
ld [ScriptVar], a
ret
-.SawRareMonText
+.SawRareMonText:
; I just saw some rare @ in @ . I'll call you if I see another rare #MON, OK?
text_jump UnknownText_0x1bd34b
db "@"