summaryrefslogtreecommitdiff
path: root/mobile
diff options
context:
space:
mode:
Diffstat (limited to 'mobile')
-rwxr-xr-xmobile/battle_tower_47.asm784
-rwxr-xr-xmobile/battle_tower_5c.asm1772
-rwxr-xr-xmobile/fixed_words.asm237
-rw-r--r--mobile/get_trainer_class.asm46
-rwxr-xr-xmobile/mobile_12.asm27
-rwxr-xr-xmobile/mobile_12_2.asm5
-rw-r--r--mobile/mobile_22.asm104
-rw-r--r--mobile/mobile_22_2.asm20
-rw-r--r--mobile/mobile_40.asm72
-rwxr-xr-xmobile/mobile_41.asm239
-rw-r--r--mobile/mobile_42.asm54
-rw-r--r--mobile/mobile_45.asm33
-rwxr-xr-xmobile/mobile_45_sprite_engine.asm49
-rwxr-xr-xmobile/mobile_46.asm92
-rwxr-xr-xmobile/mobile_5b.asm7
-rwxr-xr-xmobile/mobile_5c.asm17
-rw-r--r--mobile/mobile_5f.asm285
-rwxr-xr-xmobile/mobile_menu.asm8
-rw-r--r--mobile/news/news.asm8
-rw-r--r--mobile/print_opp_message.asm2
20 files changed, 563 insertions, 3298 deletions
diff --git a/mobile/battle_tower_47.asm b/mobile/battle_tower_47.asm
deleted file mode 100755
index 14f69d654..000000000
--- a/mobile/battle_tower_47.asm
+++ /dev/null
@@ -1,784 +0,0 @@
-BattleTowerText:: ; 11c000
-; Print text c for trainer [BT_OTTrainerClass]
-; 1: Intro text
-; 2: Player lost
-; 3: Player won
- ld a, [rSVBK]
- push af
- ld a, BANK(BT_OTTrainerClass)
- ld [rSVBK], a
-if DEF(CRYSTAL11)
- ld hl, BT_OTTrainerClass
-else
-; BUG ALERT
-; Instead of loading the Trainer Class, this routine
-; loads the 6th character in the Trainer's name, then
-; uses it to get the gender of the trainer.
-; As a consequence, the enemy trainer's dialog will
-; always be sampled from the female array.
- ld hl, BT_OTName + 5
-endc
- ld a, [hl]
- dec a
- ld e, a
- ld d, 0
- ld hl, BTTrainerClassGenders
- add hl, de
- ld a, [hl]
- and a
- jr nz, .female
- ; generate a random number between 0 and 24
- ld a, [hRandomAdd]
- and $1f
- cp 25
- jr c, .okay0
- sub 25
-
-.okay0
- ld hl, BTMaleTrainerTexts
- jr .proceed
-
-.female
- ; generate a random number between 0 and 14
- ld a, [hRandomAdd]
- and $f
- cp 15
- jr c, .okay1
- sub 15
-
-.okay1
- ld hl, BTFemaleTrainerTexts
-
-.proceed
- ld b, 0
- dec c
- jr nz, .restore
- ld [BT_TrainerTextIndex], a
- jr .okay2
-
-.restore
- ld a, [BT_TrainerTextIndex]
-
-.okay2
- push af
- add hl, bc
- add hl, bc
- ld a, [hli]
- ld c, a
- ld a, [hl]
- ld h, a
- ld l, c
- pop af
- ld c, a
- ld b, 0
- add hl, bc
- add hl, bc
- ld a, [hli]
- ld c, a
- ld a, [hl]
- ld l, c
- ld h, a
- bccoord 1, 14
- pop af
- ld [rSVBK], a
- call PlaceHLTextAtBC
- ret
-; 11c05d
-
-INCLUDE "mobile/fixed_words.asm"
-
-BTTrainerClassGenders: ; 11f2f0
- db MALE ; FALKNER
- db FEMALE ; WHITNEY
- db FEMALE ; BUGSY
- db MALE ; MORTY
- db MALE ; PRYCE
- db FEMALE ; JASMINE
- db MALE ; CHUCK
- db FEMALE ; CLAIR
- db MALE ; RIVAL1
- db MALE ; POKEMON_PROF
- db FEMALE ; WILL
- db MALE ; CAL
- db MALE ; BRUNO
- db FEMALE ; KAREN
- db MALE ; KOGA
- db MALE ; CHAMPION
- db MALE ; BROCK
- db FEMALE ; MISTY
- db MALE ; LT_SURGE
- db MALE ; SCIENTIST
- db FEMALE ; ERIKA
- db MALE ; YOUNGSTER
- db MALE ; SCHOOLBOY
- db MALE ; BIRD_KEEPER
- db FEMALE ; LASS
- db FEMALE ; JANINE
- db MALE ; COOLTRAINERM
- db FEMALE ; COOLTRAINERF
- db FEMALE ; BEAUTY
- db MALE ; POKEMANIAC
- db MALE ; GRUNTM
- db MALE ; GENTLEMAN
- db FEMALE ; SKIER
- db FEMALE ; TEACHER
- db FEMALE ; SABRINA
- db MALE ; BUG_CATCHER
- db MALE ; FISHER
- db MALE ; SWIMMERM
- db FEMALE ; SWIMMERF
- db MALE ; SAILOR
- db MALE ; SUPER_NERD
- db MALE ; RIVAL2
- db MALE ; GUITARIST
- db MALE ; HIKER
- db MALE ; BIKER
- db MALE ; BLAINE
- db MALE ; BURGLAR
- db MALE ; FIREBREATHER
- db MALE ; JUGGLER
- db MALE ; BLACKBELT_T
- db MALE ; EXECUTIVEM
- db MALE ; PSYCHIC_T
- db FEMALE ; PICNICKER
- db MALE ; CAMPER
- db FEMALE ; EXECUTIVEF
- db MALE ; SAGE
- db FEMALE ; MEDIUM
- db MALE ; BOARDER
- db MALE ; POKEFANM
- db FEMALE ; KIMONO_GIRL
- db FEMALE ; TWINS
- db FEMALE ; POKEFANF
- db MALE ; RED
- db MALE ; BLUE
- db MALE ; OFFICER
- db FEMALE ; GRUNTF
-
-
-BTMaleTrainerTexts: ; 11f332
- dw .Greetings
- dw .PlayerLost
- dw .PlayerWon
-
-.Greetings: ; 11f338
- dw BTGreetingM1
- dw BTGreetingM2
- dw BTGreetingM3
- dw BTGreetingM4
- dw BTGreetingM5
- dw BTGreetingM6
- dw BTGreetingM7
- dw BTGreetingM8
- dw BTGreetingM9
- dw BTGreetingM10
- dw BTGreetingM11
- dw BTGreetingM12
- dw BTGreetingM13
- dw BTGreetingM14
- dw BTGreetingM15
- dw BTGreetingM16
- dw BTGreetingM17
- dw BTGreetingM18
- dw BTGreetingM19
- dw BTGreetingM20
- dw BTGreetingM21
- dw BTGreetingM22
- dw BTGreetingM23
- dw BTGreetingM24
- dw BTGreetingM25
-
-.PlayerLost: ; 11f36a
- dw BTLossM1
- dw BTLossM2
- dw BTLossM3
- dw BTLossM4
- dw BTLossM5
- dw BTLossM6
- dw BTLossM7
- dw BTLossM8
- dw BTLossM9
- dw BTLossM10
- dw BTLossM11
- dw BTLossM12
- dw BTLossM13
- dw BTLossM14
- dw BTLossM15
- dw BTLossM16
- dw BTLossM17
- dw BTLossM18
- dw BTLossM19
- dw BTLossM20
- dw BTLossM21
- dw BTLossM22
- dw BTLossM23
- dw BTLossM24
- dw BTLossM25
-
-.PlayerWon: ; 11f39c
- dw BTWinM1
- dw BTWinM2
- dw BTWinM3
- dw BTWinM4
- dw BTWinM5
- dw BTWinM6
- dw BTWinM7
- dw BTWinM8
- dw BTWinM9
- dw BTWinM10
- dw BTWinM11
- dw BTWinM12
- dw BTWinM13
- dw BTWinM14
- dw BTWinM15
- dw BTWinM16
- dw BTWinM17
- dw BTWinM18
- dw BTWinM19
- dw BTWinM20
- dw BTWinM21
- dw BTWinM22
- dw BTWinM23
- dw BTWinM24
- dw BTWinM25
-
-
-BTFemaleTrainerTexts:
- dw .Greetings
- dw .PlayerLost
- dw .PlayerWon
-
-.Greetings: ; 11f3d4
- dw BTGreetingF1
- dw BTGreetingF2
- dw BTGreetingF3
- dw BTGreetingF4
- dw BTGreetingF5
- dw BTGreetingF6
- dw BTGreetingF7
- dw BTGreetingF8
- dw BTGreetingF9
- dw BTGreetingF10
- dw BTGreetingF11
- dw BTGreetingF12
- dw BTGreetingF13
- dw BTGreetingF14
- dw BTGreetingF15
-
-.PlayerLost: ; 11f3f2
- dw BTLossF1
- dw BTLossF2
- dw BTLossF3
- dw BTLossF4
- dw BTLossF5
- dw BTLossF6
- dw BTLossF7
- dw BTLossF8
- dw BTLossF9
- dw BTLossF10
- dw BTLossF11
- dw BTLossF12
- dw BTLossF13
- dw BTLossF14
- dw BTLossF15
-
-.PlayerWon: ; 11f410
- dw BTWinF1
- dw BTWinF2
- dw BTWinF3
- dw BTWinF4
- dw BTWinF5
- dw BTWinF6
- dw BTWinF7
- dw BTWinF8
- dw BTWinF9
- dw BTWinF10
- dw BTWinF11
- dw BTWinF12
- dw BTWinF13
- dw BTWinF14
- dw BTWinF15
-
-
-BTGreetingM1: ; 0x11f42e
- text_jump BattleTowerText_0x1ec000
- db "@"
-
-BTLossM1: ; 0x11f433
- text_jump BattleTowerText_0x1ec03b
- db "@"
-
-BTWinM1: ; 0x11f438
- text_jump UnknownText_0x1ec060
- db "@"
-
-BTGreetingM2: ; 0x11f43d
- text_jump BattleTowerText_0x1ec080
- db "@"
-
-BTLossM2: ; 0x11f442
- text_jump UnknownText_0x1ec0a3
- db "@"
-
-BTWinM2: ; 0x11f447
- text_jump UnknownText_0x1ec0c4
- db "@"
-
-BTGreetingM3: ; 0x11f44c
- text_jump UnknownText_0x1ec0e1
- db "@"
-
-BTLossM3: ; 0x11f451
- text_jump UnknownText_0x1ec108
- db "@"
-
-BTWinM3: ; 0x11f456
- text_jump UnknownText_0x1ec12a
- db "@"
-
-BTGreetingM4: ; 0x11f45b
- text_jump UnknownText_0x1ec14d
- db "@"
-
-BTLossM4: ; 0x11f460
- text_jump UnknownText_0x1ec16f
- db "@"
-
-BTWinM4: ; 0x11f465
- text_jump UnknownText_0x1ec190
- db "@"
-
-BTGreetingM5: ; 0x11f46a
- text_jump UnknownText_0x1ec1ae
- db "@"
-
-BTLossM5: ; 0x11f46f
- text_jump UnknownText_0x1ec1d0
- db "@"
-
-BTWinM5: ; 0x11f474
- text_jump UnknownText_0x1ec1f4
- db "@"
-
-BTGreetingM6: ; 0x11f479
- text_jump UnknownText_0x1ec216
- db "@"
-
-BTLossM6: ; 0x11f47e
- text_jump UnknownText_0x1ec238
- db "@"
-
-BTWinM6: ; 0x11f483
- text_jump UnknownText_0x1ec259
- db "@"
-
-BTGreetingM7: ; 0x11f488
- text_jump UnknownText_0x1ec27b
- db "@"
-
-BTLossM7: ; 0x11f48d
- text_jump UnknownText_0x1ec2a0
- db "@"
-
-BTWinM7: ; 0x11f492
- text_jump UnknownText_0x1ec2c0
- db "@"
-
-BTGreetingM8: ; 0x11f497
- text_jump UnknownText_0x1ec2d9
- db "@"
-
-BTLossM8: ; 0x11f49c
- text_jump UnknownText_0x1ec2fe
- db "@"
-
-BTWinM8: ; 0x11f4a1
- text_jump UnknownText_0x1ec320
- db "@"
-
-BTGreetingM9: ; 0x11f4a6
- text_jump UnknownText_0x1ec33f
- db "@"
-
-BTLossM9: ; 0x11f4ab
- text_jump UnknownText_0x1ec36c
- db "@"
-
-BTWinM9: ; 0x11f4b0
- text_jump UnknownText_0x1ec389
- db "@"
-
-BTGreetingM10: ; 0x11f4b5
- text_jump UnknownText_0x1ec3ad
- db "@"
-
-BTLossM10: ; 0x11f4ba
- text_jump UnknownText_0x1ec3c5
- db "@"
-
-BTWinM10: ; 0x11f4bf
- text_jump UnknownText_0x1ec3e5
- db "@"
-
-BTGreetingM11: ; 0x11f4c4
- text_jump UnknownText_0x1ec402
- db "@"
-
-BTLossM11: ; 0x11f4c9
- text_jump UnknownText_0x1ec411
- db "@"
-
-BTWinM11: ; 0x11f4ce
- text_jump UnknownText_0x1ec41f
- db "@"
-
-BTGreetingM12: ; 0x11f4d3
- text_jump UnknownText_0x1ec42e
- db "@"
-
-BTLossM12: ; 0x11f4d8
- text_jump UnknownText_0x1ec461
- db "@"
-
-BTWinM12: ; 0x11f4dd
- text_jump UnknownText_0x1ec4a0
- db "@"
-
-BTGreetingM13: ; 0x11f4e2
- text_jump UnknownText_0x1ec4d6
- db "@"
-
-BTLossM13: ; 0x11f4e7
- text_jump UnknownText_0x1ec4f5
- db "@"
-
-BTWinM13: ; 0x11f4ec
- text_jump UnknownText_0x1ec512
- db "@"
-
-BTGreetingM14: ; 0x11f4f1
- text_jump UnknownText_0x1ec532
- db "@"
-
-BTLossM14: ; 0x11f4f6
- text_jump UnknownText_0x1ec54b
- db "@"
-
-BTWinM14: ; 0x11f4fb
- text_jump UnknownText_0x1ec565
- db "@"
-
-BTGreetingM15: ; 0x11f500
- text_jump UnknownText_0x1ec580
- db "@"
-
-BTLossM15: ; 0x11f505
- text_jump UnknownText_0x1ec59d
- db "@"
-
-BTWinM15: ; 0x11f50a
- text_jump UnknownText_0x1ec5b5
- db "@"
-
-BTGreetingM16: ; 0x11f50f
- text_jump UnknownText_0x1ec5d3
- db "@"
-
-BTLossM16: ; 0x11f514
- text_jump UnknownText_0x1ec5ee
- db "@"
-
-BTWinM16: ; 0x11f519
- text_jump UnknownText_0x1ec60d
- db "@"
-
-BTGreetingM17: ; 0x11f51e
- text_jump UnknownText_0x1ec631
- db "@"
-
-BTLossM17: ; 0x11f523
- text_jump UnknownText_0x1ec651
- db "@"
-
-BTWinM17: ; 0x11f528
- text_jump UnknownText_0x1ec68f
- db "@"
-
-BTGreetingM18: ; 0x11f52d
- text_jump UnknownText_0x1ec6b1
- db "@"
-
-BTLossM18: ; 0x11f532
- text_jump UnknownText_0x1ec6d0
- db "@"
-
-BTWinM18: ; 0x11f537
- text_jump UnknownText_0x1ec708
- db "@"
-
-BTGreetingM19: ; 0x11f53c
- text_jump UnknownText_0x1ec720
- db "@"
-
-BTLossM19: ; 0x11f541
- text_jump UnknownText_0x1ec73e
- db "@"
-
-BTWinM19: ; 0x11f546
- text_jump UnknownText_0x1ec75b
- db "@"
-
-BTGreetingM20: ; 0x11f54b
- text_jump UnknownText_0x1ec77f
- db "@"
-
-BTLossM20: ; 0x11f550
- text_jump UnknownText_0x1ec798
- db "@"
-
-BTWinM20: ; 0x11f555
- text_jump UnknownText_0x1ec7bb
- db "@"
-
-BTGreetingM21: ; 0x11f55a
- text_jump UnknownText_0x1ec7d8
- db "@"
-
-BTLossM21: ; 0x11f55f
- text_jump UnknownText_0x1ec818
- db "@"
-
-BTWinM21: ; 0x11f564
- text_jump UnknownText_0x1ec837
- db "@"
-
-BTGreetingM22: ; 0x11f569
- text_jump UnknownText_0x1ec858
- db "@"
-
-BTLossM22: ; 0x11f56e
- text_jump UnknownText_0x1ec876
- db "@"
-
-BTWinM22: ; 0x11f573
- text_jump UnknownText_0x1ec898
- db "@"
-
-BTGreetingM23: ; 0x11f578
- text_jump UnknownText_0x1ec8b1
- db "@"
-
-BTLossM23: ; 0x11f57d
- text_jump UnknownText_0x1ec8d5
- db "@"
-
-BTWinM23: ; 0x11f582
- text_jump UnknownText_0x1ec8f0
- db "@"
-
-BTGreetingM24: ; 0x11f587
- text_jump UnknownText_0x1ec911
- db "@"
-
-BTLossM24: ; 0x11f58c
- text_jump UnknownText_0x1ec928
- db "@"
-
-BTWinM24: ; 0x11f591
- text_jump UnknownText_0x1ec949
- db "@"
-
-BTGreetingM25: ; 0x11f596
- text_jump UnknownText_0x1ec969
- db "@"
-
-BTLossM25: ; 0x11f59b
- text_jump UnknownText_0x1ec986
- db "@"
-
-BTWinM25: ; 0x11f5a0
- text_jump UnknownText_0x1ec99b
- db "@"
-
-
-
-
-BTGreetingF1: ; 0x11f5a5
- text_jump UnknownText_0x1ec9bd
- db "@"
-
-BTLossF1: ; 0x11f5aa
- text_jump UnknownText_0x1ec9d9
- db "@"
-
-BTWinF1: ; 0x11f5af
- text_jump UnknownText_0x1ec9f7
- db "@"
-
-BTGreetingF2: ; 0x11f5b4
- text_jump UnknownText_0x1eca0a
- db "@"
-
-BTLossF2: ; 0x11f5b9
- text_jump UnknownText_0x1eca2a
- db "@"
-
-BTWinF2: ; 0x11f5be
- text_jump UnknownText_0x1eca47
- db "@"
-
-BTGreetingF3: ; 0x11f5c3
- text_jump UnknownText_0x1eca64
- db "@"
-
-BTLossF3: ; 0x11f5c8
- text_jump UnknownText_0x1eca82
- db "@"
-
-BTWinF3: ; 0x11f5cd
- text_jump UnknownText_0x1eca9d
- db "@"
-
-BTGreetingF4: ; 0x11f5d2
- text_jump UnknownText_0x1ecabf
- db "@"
-
-BTLossF4: ; 0x11f5d7
- text_jump UnknownText_0x1ecade
- db "@"
-
-BTWinF4: ; 0x11f5dc
- text_jump UnknownText_0x1ecafa
- db "@"
-
-BTGreetingF5: ; 0x11f5e1
- text_jump UnknownText_0x1ecb19
- db "@"
-
-BTLossF5: ; 0x11f5e6
- text_jump UnknownText_0x1ecb37
- db "@"
-
-BTWinF5: ; 0x11f5eb
- text_jump UnknownText_0x1ecb55
- db "@"
-
-BTGreetingF6: ; 0x11f5f0
- text_jump UnknownText_0x1ecb70
- db "@"
-
-BTLossF6: ; 0x11f5f5
- text_jump UnknownText_0x1ecb92
- db "@"
-
-BTWinF6: ; 0x11f5fa
- text_jump UnknownText_0x1ecbb6
- db "@"
-
-BTGreetingF7: ; 0x11f5ff
- text_jump UnknownText_0x1ecbd9
- db "@"
-
-BTLossF7: ; 0x11f604
- text_jump UnknownText_0x1ecbf3
- db "@"
-
-BTWinF7: ; 0x11f609
- text_jump UnknownText_0x1ecc15
- db "@"
-
-BTGreetingF8: ; 0x11f60e
- text_jump UnknownText_0x1ecc39
- db "@"
-
-BTLossF8: ; 0x11f613
- text_jump UnknownText_0x1ecc55
- db "@"
-
-BTWinF8: ; 0x11f618
- text_jump UnknownText_0x1ecc75
- db "@"
-
-BTGreetingF9: ; 0x11f61d
- text_jump UnknownText_0x1ecc92
- db "@"
-
-BTLossF9: ; 0x11f622
- text_jump UnknownText_0x1ecca7
- db "@"
-
-BTWinF9: ; 0x11f627
- text_jump UnknownText_0x1eccc1
- db "@"
-
-BTGreetingF10: ; 0x11f62c
- text_jump UnknownText_0x1eccd7
- db "@"
-
-BTLossF10: ; 0x11f631
- text_jump UnknownText_0x1eccef
- db "@"
-
-BTWinF10: ; 0x11f636
- text_jump UnknownText_0x1ecd0e
- db "@"
-
-BTGreetingF11: ; 0x11f63b
- text_jump UnknownText_0x1ecd2b
- db "@"
-
-BTLossF11: ; 0x11f640
- text_jump UnknownText_0x1ecd4d
- db "@"
-
-BTWinF11: ; 0x11f645
- text_jump UnknownText_0x1ecd6b
- db "@"
-
-BTGreetingF12: ; 0x11f64a
- text_jump UnknownText_0x1ecd8d
- db "@"
-
-BTLossF12: ; 0x11f64f
- text_jump UnknownText_0x1ecdaf
- db "@"
-
-BTWinF12: ; 0x11f654
- text_jump UnknownText_0x1ecdcf
- db "@"
-
-BTGreetingF13: ; 0x11f659
- text_jump UnknownText_0x1ecded
- db "@"
-
-BTLossF13: ; 0x11f65e
- text_jump UnknownText_0x1ece0d
- db "@"
-
-BTWinF13: ; 0x11f663
- text_jump UnknownText_0x1ece2a
- db "@"
-
-BTGreetingF14: ; 0x11f668
- text_jump UnknownText_0x1ece4b
- db "@"
-
-BTLossF14: ; 0x11f66d
- text_jump UnknownText_0x1ece70
- db "@"
-
-BTWinF14: ; 0x11f672
- text_jump UnknownText_0x1ece8a
- db "@"
-
-BTGreetingF15: ; 0x11f677
- text_jump UnknownText_0x1ecea8
- db "@"
-
-BTLossF15: ; 0x11f67c
- text_jump UnknownText_0x1ecec9
- db "@"
-
-BTWinF15: ; 0x11f681
- text_jump UnknownText_0x1ecee8
- db "@"
diff --git a/mobile/battle_tower_5c.asm b/mobile/battle_tower_5c.asm
deleted file mode 100755
index f89e83b5a..000000000
--- a/mobile/battle_tower_5c.asm
+++ /dev/null
@@ -1,1772 +0,0 @@
-BattleTowerRoomMenu: ; 1700b0
-; special
- call InitBattleTowerChallengeRAM
- farcall _BattleTowerRoomMenu
- ret
-; 1700ba
-
-Function1700ba: ; 1700ba
- call InitBattleTowerChallengeRAM
- farcall Function11811a
- ret
-; 1700c4
-
-Function1700c4: ; 1700c4
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
-
- call Function17042c
-
- ld a, $5
- call GetSRAMBank
- ld a, $1
- ld [$be45], a
- xor a
- ld [$be46], a
- ld hl, w3_dffc
- ld de, $aa41
- ld bc, 4
- call CopyBytes
- ld hl, w3_d202Name
- ld de, $aa8e
- ld bc, 7 * $cc ; length of battle tower struct from japanese games?
- call CopyBytes
- ld hl, $aa5d ; some sort of count
- ld a, [hl]
- inc [hl]
- inc hl
- sla a
- sla a
- ld e, a
- ld d, $0
- add hl, de
- ld e, l
- ld d, h
- ld hl, w3_dffc
- ld bc, 4
- call CopyBytes
- call CloseSRAM
- pop af
- ld [rSVBK], a
- ret
-; 170114
-
-Function170114: ; 170114
- call InitBattleTowerChallengeRAM
- call .Function170121
- farcall Function11805f
- ret
-; 170121
-
-.Function170121: ; 170121
- ld a, $5
- call GetSRAMBank
- ld hl, $a948
- ld de, wMisc
- ld bc, $f6 ; 246
- call CopyBytes
- call CloseSRAM
- call Function170c8b
- ret
-; 170139
-
-Function170139: ; 170139
-; Convert the 4-digit decimal number at 5:aa41 into binary
- ld a, $5
- call GetSRAMBank
- ld de, $aa41
- ld h, $0
- ld l, h
- ld bc, 1000
- call .DecToBin
- ld bc, 100
- call .DecToBin
- ld bc, 10
- call .DecToBin
- ld a, [de]
- ld c, a
- ld b, $0
- add hl, bc
- call CloseSRAM
-; Store that number in wMisc
- ld a, h
- ld [wMisc], a
- ld a, l
- ld [wMisc + 1], a
- ld hl, wBT_OTTempPkmn1DVs
- ld a, [PlayerID]
- ld [hli], a
- ld a, [PlayerID + 1]
- ld [hli], a
- ld a, [wSecretID]
- ld [hli], a
- ld a, [wSecretID + 1]
- ld [hli], a
- ld e, l
- ld d, h
- ld hl, PlayerName
- ld bc, NAME_LENGTH_JAPANESE - 1
- call CopyBytes
- ld bc, PlayerID
- ld de, wPlayerGender
- farcall GetMobileOTTrainerClass
- ld de, wBT_OTTempPkmn1CaughtGender
- ld a, c
- ld [de], a
- inc de
- ld a, LOW(PartyMons)
- ld [wcd49], a
- ld a, HIGH(PartyMons)
- ld [wcd4a], a
- ld a, LOW(PartyMonNicknames)
- ld [wcd4b], a
- ld a, HIGH(PartyMonNicknames)
- ld [wcd4c], a
- ld a, 3
-.CopyLoop:
- push af
- ld a, [wcd49]
- ld l, a
- ld a, [wcd4a]
- ld h, a
- ld bc, PARTYMON_STRUCT_LENGTH
- call CopyBytes
- ld a, l
- ld [wcd49], a
- ld a, h
- ld [wcd4a], a
- ld a, [wcd4b]
- ld l, a
- ld a, [wcd4c]
- ld h, a
- ld bc, $0006
- call CopyBytes
- ld a, l
- ld [wcd4b], a
- ld a, h
- ld [wcd4c], a
- pop af
- dec a
- jr nz, .CopyLoop
- ld a, $4
- call GetSRAMBank
- ld hl, $a013
- ld bc, $24
- call CopyBytes
- call CloseSRAM
- ld a, $5
- call GetSRAMBank
- ld hl, $a894
- ld bc, NAME_LENGTH_JAPANESE
- call CopyBytes
- ld hl, wMisc
- ld de, $a948
- ld bc, $f6
- call CopyBytes
- call CloseSRAM
- ret
-; 17020c
-
-.DecToBin: ; 17020c
- ld a, [de]
- inc de
- and a
- ret z
-
-.digit_loop
- add hl, bc
- dec a
- jr nz, .digit_loop
- ret
-; 170215
-
-BattleTowerBattle: ; 170215
- xor a
- ld [wBattleTowerBattleEnded], a
- call _BattleTowerBattle
- ret
-; 17021d
-
-EmptySpecial_17021d: ; 17021d
- ret
-; 17021e
-
-InitBattleTowerChallengeRAM: ; 17021e
- xor a
- ld [wBattleTowerBattleEnded], a
- ld [wNrOfBeatenBattleTowerTrainers], a
- ld [wcf65], a
- ld [wcf66], a
- ret
-; 17022c
-
-_BattleTowerBattle: ; 17022c
-.loop
- call .do_dw
- call DelayFrame
- ld a, [wBattleTowerBattleEnded]
- cp $1
- jr nz, .loop
- ret
-; 17023a
-
-.do_dw ; 17023a
- ld a, [wBattleTowerBattleEnded]
- ld e, a
- ld d, 0
- ld hl, .dw
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp hl
-; 170249
-
-.dw ; 170249
- dw RunBattleTowerTrainer
- dw SkipBattleTowerTrainer
-; 17024d
-
-RunBattleTowerTrainer: ; 17024d
- ld a, [Options]
- push af
- ld hl, Options
- set BATTLE_SHIFT, [hl] ; SET MODE
-
- ld a, [InBattleTowerBattle]
- push af
- or $1
- ld [InBattleTowerBattle], a
-
- xor a
- ld [wLinkMode], a
- farcall TrainerRankings_Healings
- farcall HealParty
- call ReadBTTrainerParty
- call Clears5_a89a
-
- predef StartBattle
-
- farcall LoadPokemonData
- farcall HealParty
- ld a, [wBattleResult]
- ld [ScriptVar], a
- and a
- jr nz, .lost
- ld a, BANK(sNrOfBeatenBattleTowerTrainers)
- call GetSRAMBank
- ld a, [sNrOfBeatenBattleTowerTrainers]
- ld [wNrOfBeatenBattleTowerTrainers], a
- call CloseSRAM
- ld hl, StringBuffer3
- ld a, [wNrOfBeatenBattleTowerTrainers]
- add "1"
- ld [hli], a
- ld a, "@"
- ld [hl], a
-
-.lost
- pop af
- ld [InBattleTowerBattle], a
- pop af
- ld [Options], a
- ld a, $1
- ld [wBattleTowerBattleEnded], a
- ret
-
-
-ReadBTTrainerParty: ; 1702b7
-; Initialise the BattleTower-Trainer and his Pkmn
- call CopyBTTrainer_FromBT_OT_TowBT_OTTemp
-
-; Check the nicknames for illegal characters, and replace bad nicknames
-; with their species names.
- ld de, wBT_OTTempPkmn1Name ; $c643
- ld c, PKMN_NAME_LENGTH
- farcall CheckStringForErrors
- jr nc, .skip_mon_1
-
- ld a, [wBT_OTTempPkmn1]
- ld [wNamedObjectIndexBuffer], a
- call GetPokemonName
- ld l, e
- ld h, d
- ld de, wBT_OTTempPkmn1Name ; $c643
- ld bc, PKMN_NAME_LENGTH
- call CopyBytes
-
-.skip_mon_1
- ld de, wBT_OTTempPkmn2Name ; $c67e
- ld c, PKMN_NAME_LENGTH
- farcall CheckStringForErrors
- jr nc, .skip_mon_2
- ld a, [wBT_OTTempPkmn2] ; [$c64e]
- ld [wNamedObjectIndexBuffer], a
- call GetPokemonName
- ld l, e
- ld h, d
- ld de, wBT_OTTempPkmn2Name ; $c67e
- ld bc, PKMN_NAME_LENGTH
- call CopyBytes
-
-.skip_mon_2
- ld de, wBT_OTTempPkmn3Name ; $c686 + 51 = $c6b9
- ld c, PKMN_NAME_LENGTH
- farcall CheckStringForErrors
- jr nc, .skip_mon_3
- ld a, [wBT_OTTempPkmn3] ; [$c689]
- ld [wNamedObjectIndexBuffer], a
- call GetPokemonName
- ld l, e
- ld h, d
- ld de, wBT_OTTempPkmn3Name ; $c686 + 51 = $c6b9
- ld bc, PKMN_NAME_LENGTH
- call CopyBytes
-
-.skip_mon_3
-; Add the terminator character to each of these names
- ld a, "@"
- ld [wBT_OTTempPkmn1NameEnd - 1], a ; $c64d
- ld [wBT_OTTempPkmn2NameEnd - 1], a ; $c688
- ld [wBT_OTTempPkmn3NameEnd - 1], a ; $c68a + 57 = $c6c3
-; Fix errors in the movesets
- call CheckBTMonMovesForErrors
-; Repair the trainer name if needed, then copy it to OTPlayerName
- ld de, wBT_OTTempName
- ld c, NAME_LENGTH - 1
- farcall CheckStringForErrors
- jr nc, .trainer_name_okay
- ld hl, BT_ChrisName
- jr .done_trainer_name
-
-.trainer_name_okay
- ld hl, wBT_OTTempName ; 0xc608
-
-.done_trainer_name
- ld de, OTPlayerName
- ld bc, NAME_LENGTH - 1
- call CopyBytes
- ld a, "@"
- ld [de], a
-
- ld hl, wBT_OTTempTrainerClass
- ld a, [hli]
- ld [OtherTrainerClass], a
- ld a, LOW(OTPartyMonNicknames)
- ld [BGMapBuffer], a
- ld a, HIGH(OTPartyMonNicknames)
- ld [BGMapBuffer + 1], a
-
- ; Copy Pkmn into Memory from the address in hl
- ld de, OTPartyMon1Species
- ld bc, OTPartyCount
- ld a, BATTLETOWER_NROFPKMNS ; Number of Pkmn the BattleTower-Trainer has
- ld [bc], a
- inc bc
-.otpartymon_loop
- push af
- ld a, [hl]
- ld [bc], a
- inc bc
- push bc
- ld bc, PARTYMON_STRUCT_LENGTH
- call CopyBytes
- push de
- ld a, [BGMapBuffer]
- ld e, a
- ld a, [BGMapBuffer + 1]
- ld d, a
- ld bc, PKMN_NAME_LENGTH
- call CopyBytes
- ld a, e
- ld [BGMapBuffer], a
- ld a, d
- ld [BGMapBuffer + 1], a
- pop de
- pop bc
- pop af
- dec a
- and a
- jr nz, .otpartymon_loop
- ld a, -1
- ld [bc], a
- ret
-; 170394
-
-ValidateBTParty: ; 170394
-; Check for and fix errors in party data
- ld hl, wBT_OTTempPkmn1Species
- ld d, BATTLETOWER_NROFPKMNS
-.pkmn_loop
- push de
- push hl
- ld b, h
- ld c, l
- ld a, [hl]
- and a
-idx = $ff
-rept ($ff +- NUM_POKEMON)
- jr z, .invalid
- cp idx
-idx = idx +- 1
-endr
- jr nz, .valid
-
-.invalid
- ld a, SMEARGLE
- ld [hl], a
-
-.valid
- ld [CurSpecies], a
- call GetBaseData
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb] ; s5_b2fb ; max level?
- call CloseSRAM
- ld e, a
- ld hl, MON_LEVEL
- add hl, bc
- ld a, [hl]
- cp MIN_LEVEL
- ld a, MIN_LEVEL
- jr c, .load
- ld a, [hl]
- cp e
- jr c, .dont_load
- ld a, e
-
-.load
- ld [hl], a
-
-.dont_load
- ld [CurPartyLevel], a
- ld hl, MON_MOVES
- add hl, bc
- ld d, NUM_MOVES - 1
- ld a, [hli]
- and a
- jr z, .not_move
- cp NUM_ATTACKS + 1
- jr nc, .not_move
- jr .valid_move
-
-.not_move
- dec hl
- ld a, POUND
- ld [hli], a
- xor a
- ld [hli], a
- ld [hli], a
- ld [hl], a
- jr .done_moves
-
-.valid_move
- ld a, [hl]
- cp NUM_ATTACKS + 1
- jr c, .next
- ld [hl], $0
-
-.next
- inc hl
- dec d
- jr nz, .valid_move
-
-.done_moves
- ld hl, MON_MAXHP
- add hl, bc
- ld d, h
- ld e, l
- push hl
- push de
- ld hl, MON_STAT_EXP - 1
- add hl, bc
- ld b, $1
- predef CalcPkmnStats
- pop de
- pop hl
- dec de
- dec de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hl]
- ld [de], a
- pop hl
- ld bc, PARTYMON_STRUCT_LENGTH + PKMN_NAME_LENGTH
- add hl, bc
- pop de
- dec d
- jp nz, .pkmn_loop
- ret
-; 170426
-
-BT_ChrisName: ; 170426
- db "CHRIS@"
-; 17042c
-
-Function17042c: ; 17042c
- ld hl, w3_d202TrainerData
- ld a, BATTLETOWER_NROFTRAINERS
-.loop
- push af
- push hl
- ld c, BATTLETOWER_TRAINERDATALENGTH / 2
-.loop2
- ; First byte is a comparison value.
- ld a, [hli]
- ld b, a
- ; Second byte is a lookup index.
- ld a, [hli]
- and a
- jr z, .empty
- cp 15
- jr nc, .copy_data
-
- push hl
- ld hl, Unknown_170470
- dec a
- ld e, a
- ld d, 0
- add hl, de
- ld a, [hl]
- pop hl
-
- ; If Unknown_170470[a-1] <= b, overwrite the current trainer's data
- ; with Unknown17047e, and exit the inner loop.
- cp b
- jr c, .copy_data
- jr z, .copy_data
- jr .next_iteration
-
-.empty
- ; If a == 0 and b >= $fc, overwrite the current trainer's data with
- ; Unknown17047e, and exit the inner loop.
- ld a, b
- cp $fc
- jr nc, .copy_data
-
-.next_iteration
- dec c
- jr nz, .loop2
- jr .next_trainer
-
-.copy_data
- pop de
- push de
- ld hl, Unknown_17047e
- ld bc, BATTLETOWER_TRAINERDATALENGTH
- call CopyBytes
-
-.next_trainer
- pop hl
- ld de, BATTLE_TOWER_STRUCT_LENGTH
- add hl, de
- pop af
- dec a
- jr nz, .loop
- ret
-; 170470
-
-Unknown_170470:
- db $12
- db $24
- db $45
- db $45
- db $42
- db $42
- db $45
- db $42
- db $27
- db $27
- db $45
- db $27
- db $42
- db $24
-
-Unknown_17047e:
-; see data/battle_tower_2.asm
- db $03, 4
- db $05, 8
- db $03, 5
- db $0e, 6
- db $03, 2
- db $00, 0
- db $39, 7
- db $07, 4
- db $00, 5
- db $04, 7
- db $01, 5
- db $00, 0
- db $0f, 5
- db $14, 7
- db $05, 5
- db $11, 12
- db $0c, 6
- db $06, 4
-
-
-CopyBTTrainer_FromBT_OT_TowBT_OTTemp: ; 1704a2
-; copy the BattleTower-Trainer data that lies at 'BT_OTTrainer' to 'wBT_OTTemp'
- ld a, [rSVBK]
- push af
- ld a, BANK(BT_OTTrainer)
- ld [rSVBK], a
-
- ld hl, BT_OTTrainer
- ld de, wBT_OTTemp
- ld bc, BATTLE_TOWER_STRUCT_LENGTH
- call CopyBytes
-
- pop af
- ld [rSVBK], a
-
- ld a, BANK(sBattleTowerChallengeState)
- call GetSRAMBank
- ld a, BATTLETOWER_CHALLENGE_IN_PROGESS
- ld [sBattleTowerChallengeState], a
- ld hl, sNrOfBeatenBattleTowerTrainers
- inc [hl]
- call CloseSRAM
-SkipBattleTowerTrainer: ; 1704c9
- ret
-; 1704ca
-
-Function1704ca: ; 1704ca
-; unreferenced mobile function
- ld a, [$be46]
- cp $7
- jr c, .asm_1704d3
- ld a, $6
-
-.asm_1704d3
- ld hl, $afce
- ld de, -$e0
-.asm_1704d9
- and a
- jr z, .asm_1704e0
- add hl, de
- dec a
- jr .asm_1704d9
-
-.asm_1704e0
- ret
-; 1704e1
-
-Function1704e1: ; 1704e1
-; unreferenced special
- call SpeechTextBox
- call FadeToMenu
- call InitBattleTowerChallengeRAM
- call .JumptableLoop
- call CloseSubmenu
- ret
-; 1704f1
-
-.JumptableLoop: ; 1704f1
- call ClearBGPalettes
- call ClearSprites
- call ClearScreen
-.loop
- call JoyTextDelay
- ld a, [wJumptableIndex]
- bit 7, a
- jr nz, .done
- call .DoJumptable
- farcall ReloadMapPart
- jr .loop
-
-.done
- ret
-; 170510
-
-.DoJumptable: ; 170510
- ld a, [wJumptableIndex]
- ld e, a
- ld d, 0
- ld hl, .dw
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp hl
-; 17051f
-
-.dw ; 17051f
- dw .Jumptable_0
- dw .Jumptable_1
- dw .Jumptable_2
-; 170525
-
-.Jumptable_0: ; 170525
- ld a, $5
- call GetSRAMBank
-
- ld hl, $a89c
- ld de, StringBuffer3
- ld bc, $16
- call CopyBytes
-
- ld hl, $a8b2
- ld de, wMisc
- ld bc, $0096
- call CopyBytes
-
- call CloseSRAM
- hlcoord 1, 1
- ld de, StringBuffer3
- call PlaceString
- hlcoord 1, 3
- ld de, .String_Mail
- call PlaceString
- hlcoord 4, 3
- ld de, StringBuffer4
- call PlaceString
- hlcoord 8, 3
- ld de, .String_PastReaders
- call PlaceString
- call .DrawBorder
- call .PlaceTextItems
- jr .NextJumptableFunction
-
-
-.Jumptable_1:
- call SetPalettes
- call .NextJumptableFunction
-
-
-.Jumptable_2:
- ld hl, hJoyPressed
- ld a, [hl]
- and A_BUTTON
- jr nz, .pressed_a_or_b
- ld a, [hl]
- and B_BUTTON
- jr nz, .pressed_a_or_b
- ld a, [hl]
- and D_UP
- jr nz, .pressed_up
- ld a, [hl]
- and D_DOWN
- jr nz, .pressed_down
- ret
-
-.pressed_up
- ld a, [wNrOfBeatenBattleTowerTrainers]
- and a
- ret z
- sub 15
- ld [wNrOfBeatenBattleTowerTrainers], a
- call .PlaceTextItems
- ret
-
-.pressed_down
- ld a, [wNrOfBeatenBattleTowerTrainers]
- cp 60
- ret z
- add 15
- ld [wNrOfBeatenBattleTowerTrainers], a
- call .PlaceTextItems
- ret
-
-.pressed_a_or_b
- ld hl, wJumptableIndex
- set 7, [hl]
- ret
-
-.NextJumptableFunction:
- ld hl, wJumptableIndex
- inc [hl]
- ret
-; 1705b7
-
-.DrawBorder: ; 1705b7
- hlcoord 0, 4
- ld a, $79
- ld [hli], a
- ld c, SCREEN_WIDTH - 2
-.top_border_loop
- ld a, $7a
- ld [hli], a
- dec c
- jr nz, .top_border_loop
- ld a, $7b
- ld [hli], a
- ld de, SCREEN_WIDTH
- ld c, 12
-.left_border_loop
- ld a, $7c
- ld [hl], a
- add hl, de
- dec c
- jr nz, .left_border_loop
- ld a, $7d
- ld [hli], a
- ld c, SCREEN_WIDTH - 2
-.bottom_border_loop
- ld a, $7a
- ld [hli], a
- dec c
- jr nz, .bottom_border_loop
- ld a, $7e
- ld [hl], a
- ld de, -SCREEN_WIDTH
- add hl, de
- ld c, 12
-.right_border_loop
- ld a, $7c
- ld [hl], a
- add hl, de
- dec c
- jr nz, .right_border_loop
- ret
-; 1705f0
-
-.PlaceTextItems: ; 1705f0
- call .ClearBox
- call .PlaceUpDownArrows
- ld a, $50
- ld [wcd4e], a
- ld hl, wMisc
- ld a, [wNrOfBeatenBattleTowerTrainers]
- ld c, a
- xor a
- ld b, a
- add hl, bc
- push hl
- pop bc
- hlcoord 1, 6
- ld a, 6
-.loop1
- push af
- push hl
- ld a, 3
-.loop2
- push af
- ld de, wcd49
- ld a, [bc]
- and a
- jr z, .fill_with_e3
-; .copy
- ld a, 5
-.loop3a
- push af
- ld a, [bc]
- ld [de], a
- inc bc
- inc de
- pop af
- dec a
- jr nz, .loop3a
- jr .rejoin
-
-.fill_with_e3
- ld a, 5
-.loop3b
- push af
- ld a, $e3
- ld [de], a
- inc de
- inc bc
- pop af
- dec a
- jr nz, .loop3b
-
-.rejoin
- ld de, wcd49
- push bc
- call PlaceString
- ld de, NAME_LENGTH_JAPANESE
- add hl, de
- pop bc
- pop af
- dec a
- jr nz, .loop2
- pop hl
- ld de, $28
- add hl, de
- pop af
- dec a
- jr nz, .loop1
- ret
-; 17064b
-
-.ClearBox: ; 17064b
- hlcoord 1, 5
- xor a
- ld b, 12
-.clearbox_row
- ld c, SCREEN_WIDTH - 2
-.clearbox_column
- ld [hli], a
- dec c
- jr nz, .clearbox_column
- inc hl
- inc hl
- dec b
- jr nz, .clearbox_row
- ret
-; 17065d
-
-.PlaceUpDownArrows: ; 17065d
- ld a, [wNrOfBeatenBattleTowerTrainers]
- and a
- jr z, .nope
- hlcoord 18, 5
- ld a, "▲"
- ld [hl], a
-
-.nope
- ld a, [wNrOfBeatenBattleTowerTrainers]
- cp 60
- ret z
- hlcoord 18, 16
- ld a, "▼"
- ld [hl], a
- ret
-; 170676
-
-.String_Mail: ; 170676
- db "ルーム@"
-; 17067a
-
-.String_PastReaders: ; 17067a
- db "れきだいりーダーいちらん@"
-; 170687
-
-BattleTowerAction: ; 170687
- ld a, [ScriptVar]
- ld e, a
- ld d, 0
- ld hl, .dw
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp hl
-; 170696
-
-
-.dw ; 170696 (5c:4696)
- dw BattleTowerAction_CheckExplanationRead ; 0x00
- dw BattleTowerAction_SetExplanationRead ; 0x01
- dw BattleTowerAction_GetChallengeState ; 0x02
- dw BattleTowerAction_SetByteToQuickSaveChallenge ; 0x03
- dw BattleTowerAction_SetByteToCancelChallenge ; 0x04
- dw Function1707ac ; 0x05
- dw Function1707f4 ; 0x06
- dw SaveBattleTowerLevelGroup ; 0x07
- dw LoadBattleTowerLevelGroup ; 0x08
- dw BattleTower_CheckSaveFileExistsAndIsYours ; 0x09
- dw Function1708b1 ; 0x0a
- dw CheckMobileEventIndex ; 0x0b
- dw Function1708c8 ; 0x0c
- dw Function1708f0 ; 0x0d
- dw BattleTowerAction_EggTicket ; 0x0e
- dw Function1709aa ; 0x0f
- dw Function1709bb ; 0x10
- dw Function170a9c ; 0x11
- dw Function170aa0 ; 0x12
- dw Function170aaf ; 0x13
- dw Function170abe ; 0x14
- dw Function170ad7 ; 0x15
- dw Function170807 ; 0x16
- dw Function17081d ; 0x17
- dw BattleTowerAction_LevelCheck ; 0x18
- dw BattleTowerAction_UbersCheck ; 0x19
- dw ResetBattleTowerTrainersSRAM ; 0x1a
- dw BattleTower_GiveReward ; 0x1b
- dw Function17071b ; 0x1c
- dw Function170729 ; 0x1d
- dw BattleTower_RandomlyChooseReward ; 0x1e
- dw BattleTower_SaveOptions ; 0x1f
-
-
-; Reset the save memory for BattleTower-Trainers (Counter and all 7 TrainerBytes)
-ResetBattleTowerTrainersSRAM: ; 1706d6 (5c:46d6) BattleTowerAction $1a
- ld a, BANK(sBTTrainers)
- call GetSRAMBank
-
- ld a, $ff
- ld hl, sBTTrainers
- ld bc, BATTLETOWER_NROFTRAINERS
- call ByteFill
-
- xor a
- ld [sNrOfBeatenBattleTowerTrainers], a
-
- call CloseSRAM
-
- ret
-
-BattleTower_GiveReward: ; 1706ee (5c:46ee) BattleTowerAction $1b
- ld a, BANK(sBattleTowerReward)
- call GetSRAMBank
-
- ld a, [sBattleTowerReward]
- call CloseSRAM
- ld [ScriptVar], a
- ld hl, NumItems
- ld a, [hli]
- cp MAX_ITEMS
- ret c
- ld b, MAX_ITEMS
- ld a, [ScriptVar]
- ld c, a
-.loop
- ld a, [hli]
- cp c
- jr nz, .next
- ld a, [hl]
- cp 95
- ret c
-.next
- inc hl
- dec b
- jr nz, .loop
- ld a, POTION
- ld [ScriptVar], a
- ret
-
-Function17071b: ; 17071b (5c:471b) BattleTowerAction $1c
- ld a, BANK(sBattleTowerChallengeState)
- call GetSRAMBank
- ld a, BATTLETOWER_WON_CHALLENGE
- ld [sBattleTowerChallengeState], a
- call CloseSRAM
- ret
-
-Function170729: ; 170729 (5c:4729) BattleTowerAction $1d
- ld a, BANK(sBattleTowerChallengeState)
- call GetSRAMBank
- ld a, BATTLETOWER_RECEIVED_REWARD
- ld [sBattleTowerChallengeState], a
- call CloseSRAM
- ret
-
-BattleTower_SaveOptions: ; 170737 (5c:4737) BattleTowerAction $1f
- farcall SaveOptions
- ret
-
-BattleTower_RandomlyChooseReward: ; 17073e (5c:473e) BattleTowerAction $1e
-; Generate a random stat boosting item.
-.loop
- call Random
- ld a, [hRandomAdd]
- and $7
- cp 6
- jr c, .okay
- sub 6
-.okay
- add HP_UP
- cp LUCKY_PUNCH
- jr z, .loop
- push af
- ld a, BANK(sBattleTowerReward)
- call GetSRAMBank
- pop af
- ld [sBattleTowerReward], a
- call CloseSRAM
- ret
-
-BattleTowerAction_CheckExplanationRead: ; 17075f (5c:475f) BattleTowerAction $00
- call BattleTower_CheckSaveFileExistsAndIsYours
- ld a, [ScriptVar]
- and a
- ret z
-
- ld a, BANK(sBattleTowerSaveFileFlags)
- call GetSRAMBank
- ld a, [sBattleTowerSaveFileFlags]
- and $2
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-BattleTowerAction_GetChallengeState: ; 170778 (5c:4778) BattleTowerAction $02
- ld hl, sBattleTowerChallengeState
- ld a, BANK(sBattleTowerChallengeState)
- call GetSRAMBank
- ld a, [hl]
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-BattleTowerAction_SetExplanationRead: ; 170788 (5c:4788) BattleTowerAction $01
- ld a, BANK(sBattleTowerSaveFileFlags)
- call GetSRAMBank
- ld a, [sBattleTowerSaveFileFlags]
- or $2
- ld [sBattleTowerSaveFileFlags], a
- call CloseSRAM
- ret
-
-BattleTowerAction_SetByteToQuickSaveChallenge: ; 170799 (5c:4799) BattleTowerAction $03
- ld c, BATTLETOWER_SAVED_AND_LEFT
- jr asm_17079f
-
-BattleTowerAction_SetByteToCancelChallenge: ; 17079d (5c:479d) BattleTowerAction $04
- ld c, BATTLETOWER_NO_CHALLENGE
-asm_17079f: ; 17079f (5c:479f)
- ld a, BANK(sBattleTowerChallengeState)
- call GetSRAMBank
- ld a, c
- ld [sBattleTowerChallengeState], a
- call CloseSRAM
- ret
-
-Function1707ac: ; 1707ac (5c:47ac) BattleTowerAction $05
- ld a, $5
- call GetSRAMBank
- ld a, [$aa8c]
- ld b, a
- ld a, [$be46]
- ld [ScriptVar], a
- call CloseSRAM
- and a
- ret z
- ld a, b
- cp $2
- jr nc, .asm_1707ef
- push bc
- call UpdateTime
- pop bc
- ld a, $5
- call GetSRAMBank
- ld a, [$aa8b]
- call CloseSRAM
- ld c, a
- ld a, [CurDay]
- sub c
- jr c, .asm_1707e5
- cp $8
- jr nc, .asm_1707ef
- ld a, b
- and a
- jr nz, .asm_1707ef
- ret
-.asm_1707e5
- ld hl, CurDay
- ld a, $8c
- sub c
- add [hl]
- cp $8
- ret c
-.asm_1707ef
- ld a, $8
- ld [ScriptVar], a
-
-Function1707f4: ; 1707f4 (5c:47f4) BattleTowerAction $06
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$be46], a
- ld [$aa8b], a
- ld [$aa8c], a
- call CloseSRAM
- ret
-
-Function170807: ; 170807 (5c:4807) BattleTowerAction $16
- call UpdateTime
- ld a, $5
- call GetSRAMBank
- ld a, [CurDay]
- ld [$b2f9], a
- xor a
- ld [$b2fa], a
- call CloseSRAM
- ret
-
-Function17081d: ; 17081d (5c:481d) BattleTowerAction $17
- xor a
- ld [ScriptVar], a
- ld a, $5
- call GetSRAMBank
- ld a, [$b2f9]
- ld c, a
- ld a, [$b2fa]
- ld b, a
- call CloseSRAM
- cp $2
- jr nc, .asm_170853
- push bc
- call UpdateTime
- pop bc
- ld a, [CurDay]
- sub c
- jr c, .asm_170849
- cp $b
- jr nc, .asm_170853
- ld a, b
- and a
- jr nz, .asm_170853
- ret
-
-.asm_170849
- ld hl, CurDay
- ld a, 140
- sub c
- add [hl]
- cp $b
- ret c
-.asm_170853
- ld a, $1
- ld [ScriptVar], a
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$b2f9], a
- ld [$b2fa], a
- call CloseSRAM
- ret
-
-SaveBattleTowerLevelGroup: ; 170868 (5c:4868) BattleTowerAction $07
- ld a, BANK(sBTChoiceOfLevelGroup)
- call GetSRAMBank
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld a, [wBTChoiceOfLvlGroup]
- ld [sBTChoiceOfLevelGroup], a
- pop af
- ld [rSVBK], a
- call CloseSRAM
- ret
-
-LoadBattleTowerLevelGroup: ; 170881 (5c:4881) BattleTowerAction $08 ; Load level group choice
- ld a, BANK(sBTChoiceOfLevelGroup)
- call GetSRAMBank
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld a, [sBTChoiceOfLevelGroup]
- ld [wBTChoiceOfLvlGroup], a
- pop af
- ld [rSVBK], a
- call CloseSRAM
- ret
-
-BattleTower_CheckSaveFileExistsAndIsYours: ; 17089a BattleTowerAction $09
- ld a, [wSaveFileExists]
- and a
- jr z, .nope
- farcall CompareLoadedAndSavedPlayerID
- jr z, .yes
- xor a
- jr .nope
-
-.yes
- ld a, $1
-
-.nope
- ld [ScriptVar], a
- ret
-; 1708b1
-
-
-Function1708b1: ; 1708b1 (5c:48b1) BattleTowerAction $0a
- xor a
- ld [MusicFade], a
- call MaxVolume
- ret
-
-CheckMobileEventIndex: ; 1708b9 (5c:48b9) BattleTowerAction $0b something to do with GS Ball
- ld a, BANK(sMobileEventIndex)
- call GetSRAMBank
- ld a, [sMobileEventIndex]
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function1708c8: ; 1708c8 (5c:48c8) BattleTowerAction $0c
- call UpdateTime
- ld a, $5
- call GetSRAMBank
- ld a, [CurDay]
- ld [$aa8b], a
- xor a
- ld [$aa8c], a
- ld a, [$aa5d]
- cp $2
- jr nc, .asm_1708ec
- ld a, [CurDay]
- ld [$aa48], a
- ld a, $1
- ld [$aa47], a
-.asm_1708ec
- call CloseSRAM
- ret
-
-Function1708f0: ; 1708f0 (5c:48f0) BattleTowerAction $0d
- xor a
- ld [ScriptVar], a
- call UpdateTime
- ld a, $5
- call GetSRAMBank
- ld a, [$aa48]
- ld c, a
- ld a, [$aa47]
- call CloseSRAM
- and a
- ret z
- ld hl, CurDay
- ld a, c
- cp [hl]
- jr nz, Function170923
- ld a, $5
- call GetSRAMBank
- ld a, [$aa5d]
- call CloseSRAM
- cp $5
- ret c
- ld a, $1
- ld [ScriptVar], a
- ret
-
-
-Function170923: ; 170923
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$aa48], a
- ld [$aa47], a
- ld hl, $aa5d
- ld bc, $0011
- call ByteFill
- call CloseSRAM
- ret
-; 17093c
-
-
-BattleTowerAction_EggTicket: ; 17093c (5c:493c) BattleTowerAction $0e
- xor a
- ld [ScriptVar], a
- ld a, EGG_TICKET
- ld [CurItem], a
- ld hl, NumItems
- call CheckItem
- ret nc
- ld a, [PartyCount]
- ld b, 0
- ld c, a
- ld hl, PartySpecies
-.loop
- ld a, [hli]
- cp EGG
- jr nz, .not_egg
- push hl
- ld hl, PartyMonOT
- ld de, NAME_LENGTH_JAPANESE
- ld a, b
- and a
- jr z, .skip
-.loop2
- add hl, de
- dec a
- jr nz, .loop2
-.skip
- ld de, String_1709a4
- ld a, NAME_LENGTH_JAPANESE
-.compare_loop
- push af
- ld a, [de]
- inc de
- cp [hl]
- inc hl
- jr nz, .different
- pop af
- dec a
- jr nz, .compare_loop
-rept 4
- dec hl
-endr
- ld a, "@"
- ld [hli], a
- ld [hli], a
- pop hl
- ld a, EGG_TICKET
- ld [CurItem], a
- ld a, 1
- ld [wItemQuantityChangeBuffer], a
- ld a, -1
- ld [CurItemQuantity], a
- ld hl, NumItems
- call TossItem
- ld a, $1
- ld [ScriptVar], a
- ret
-
-.different
- pop af
- pop hl
-.not_egg
- inc b
- dec c
- jr nz, .loop
- ret
-; 1709a4 (5c:49a4)
-
-String_1709a4: ; 1709a4
- db "なぞナゾ@@"
-
-Function1709aa: ; 1709aa (5c:49aa) BattleTowerAction $0f
- ld a, [rSVBK]
- push af
- ld a, BANK(w3_d090)
- ld [rSVBK], a
- ld a, [w3_d090]
- ld [ScriptVar], a
- pop af
- ld [rSVBK], a
- ret
-
-Function1709bb: ; 1709bb (5c:49bb) BattleTowerAction $10
- xor a
- ld [ScriptVar], a
- ld a, $5
- call GetSRAMBank
- ld a, [$a800]
- call CloseSRAM
- cp 6
- jr nc, .invalid
- ld e, a
- ld d, 0
- ld hl, Jumptable_1709e7
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- jp hl
-
-.invalid
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$a800], a
- call CloseSRAM
- ret
-; 1709e7 (5c:49e7)
-
-Jumptable_1709e7: ; 1709e7
- dw .NoAction
- dw .NoAction
- dw .DoAction1
- dw .DoAction1
- dw .Action4
- dw .Action5
-; 1709f3
-
-.DoAction1: ; 1709f3
- ld a, $5
- call GetSRAMBank
- ld a, $1
- ld [$a800], a
- call CloseSRAM
-
-.NoAction: ; 170a00
- ret
-; 170a01
-
-.Action4: ; 170a01
- ld a, $5
- call GetSRAMBank
- ld hl, $b023
- ld de, wMisc
- ld bc, $0069
- call CopyBytes
- ld a, [$a825]
- ld [wcd30], a
- ld a, [$a826]
- ld [wcd31], a
- call CloseSRAM
- farcall Function11b6b4
- farcall Function17d0f3
- ld a, $1
- ld [ScriptVar], a
- ret
-; 170a33
-
-.Action5: ; 170a33
- ld a, $0
- call GetSRAMBank
- ld hl, wRTC
- ld de, wMisc
- ld bc, $0004
- call CopyBytes
- call CloseSRAM
- ld a, $5
- call GetSRAMBank
- ld hl, $b08c
- ld de, wMisc
- ld c, $4
-.compare_loop
- ld a, [de]
- inc de
- cp [hl]
- jr nz, .different
- inc hl
- dec c
- jr nz, .compare_loop
- call CloseSRAM
- ld a, [MapGroup]
- ld b, a
- ld a, [MapNumber]
- ld c, a
- call GetMapSceneID
- ld a, d
- or e
- jr z, .no_scene
- ld a, [de]
- and a
- ret nz
-
-.no_scene
- ld a, $1
- ld [ScriptVar], a
- ret
-
-.different
- call CloseSRAM
- ld a, $5
- call GetSRAMBank
- xor a
- ld [$a800], a
- call CloseSRAM
- ld [ScriptVar], a
- ld a, [MapGroup]
- ld b, a
- ld a, [MapNumber]
- ld c, a
- call GetMapSceneID
- ld a, d
- or e
- jr z, .no_scene_2
- xor a
- ld [de], a
-
-.no_scene_2
- ret
-; 170a9c
-
-Function170a9c: ; 170a9c (5c:4a9c) BattleTowerAction $11
- ld c, $0
- jr asm_170aa2
-
-Function170aa0: ; 170aa0 (5c:4aa0) BattleTowerAction $12
- ld c, $1
-asm_170aa2: ; 170aa2 (5c:4aa2)
- ld a, $5
- call GetSRAMBank
- ld a, c
- ld [$aa8d], a
- call CloseSRAM
- ret
-
-Function170aaf: ; 170aaf (5c:4aaf) BattleTowerAction $13
- ld a, $5
- call GetSRAMBank
- ld a, [$aa8d]
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function170abe: ; 170abe (5c:4abe) BattleTowerAction $14
- call BattleTower_CheckSaveFileExistsAndIsYours
- ld a, [ScriptVar]
- and a
- ret z
-
- ld a, BANK(sBattleTowerSaveFileFlags)
- call GetSRAMBank
- ld a, [sBattleTowerSaveFileFlags]
- and $1
- ld [ScriptVar], a
- call CloseSRAM
- ret
-
-Function170ad7: ; 170ad7 (5c:4ad7) BattleTowerAction $15
- ld a, BANK(sBattleTowerSaveFileFlags)
- call GetSRAMBank
- ld a, [sBattleTowerSaveFileFlags]
- or $1
- ld [sBattleTowerSaveFileFlags], a
- call CloseSRAM
- ret
-
-BattleTowerAction_LevelCheck: ; 170ae8 (5c:4ae8) BattleTowerAction $18
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb]
- call CloseSRAM
- ld c, 10
- call SimpleDivide
- ld a, b
- ld [wcd4f], a
- xor a
- ld [ScriptVar], a
- farcall BattleTower_LevelCheck ; level check
- ret nc
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb]
- call CloseSRAM
- ld [ScriptVar], a
- ret
-
-BattleTowerAction_UbersCheck: ; 170b16 (5c:4b16) BattleTowerAction $19
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb]
- call CloseSRAM
- ld c, 10
- call SimpleDivide
- ld a, b
- ld [wcd4f], a
- xor a
- ld [ScriptVar], a
- farcall BattleTower_UbersCheck
- ret nc
- ld a, $5
- call GetSRAMBank
- ld a, [$b2fb]
- call CloseSRAM
- ld [ScriptVar], a
- ret
-
-Function_LoadOpponentTrainerAndPokemonsWithOTSprite: ; 0x170b44
- farcall Function_LoadOpponentTrainerAndPokemons
- ld a, [rSVBK]
- push af
- ld a, $3
- ld [rSVBK], a
- ld hl, BT_OTTrainerClass
- ld a, [hl]
- dec a
- ld c, a
- ld b, $0
- pop af
- ld [rSVBK], a
- ld hl, .Sprites
- add hl, bc
- ld a, [hl]
- ld [wBTTempOTSprite], a
-
-; Load sprite of the opponent trainer
-; because s/he is chosen randomly and appears out of nowhere
- ld a, [ScriptVar]
- dec a
- sla a
- ld e, a
- sla a
- sla a
- sla a
- ld c, a
- ld b, 0
- ld d, 0
- ld hl, MapObjects
- add hl, bc
- inc hl
- ld a, [wBTTempOTSprite]
- ld [hl], a
- ld hl, UsedSprites
- add hl, de
- ld [hli], a
- ld [hUsedSpriteIndex], a
- ld a, [hl]
- ld [hUsedSpriteTile], a
- farcall GetUsedSprite
- ret
-; 170b90
-
-.Sprites:
- db SPRITE_FALKNER
- db SPRITE_WHITNEY
- db SPRITE_BUGSY
- db SPRITE_MORTY
- db SPRITE_PRYCE
- db SPRITE_JASMINE
- db SPRITE_CHUCK
- db SPRITE_CLAIR
- db SPRITE_SILVER
- db SPRITE_OAK
- db SPRITE_WILL
- db SPRITE_CHRIS
- db SPRITE_BRUNO
- db SPRITE_KAREN
- db SPRITE_KOGA
- db SPRITE_LANCE
- db SPRITE_BROCK
- db SPRITE_MISTY
- db SPRITE_SURGE
- db SPRITE_SCIENTIST
- db SPRITE_ERIKA
- db SPRITE_YOUNGSTER
- db SPRITE_YOUNGSTER
- db SPRITE_YOUNGSTER
- db SPRITE_LASS
- db SPRITE_JANINE
- db SPRITE_COOLTRAINER_M
- db SPRITE_COOLTRAINER_F
- db SPRITE_BUENA
- db SPRITE_SUPER_NERD
- db SPRITE_ROCKET
- db SPRITE_GENTLEMAN
- db SPRITE_BUENA
- db SPRITE_TEACHER
- db SPRITE_SABRINA
- db SPRITE_BUG_CATCHER
- db SPRITE_FISHER
- db SPRITE_SUPER_NERD
- db SPRITE_COOLTRAINER_F
- db SPRITE_SAILOR
- db SPRITE_SUPER_NERD
- db SPRITE_BLUE
- db SPRITE_ROCKER
- db SPRITE_POKEFAN_M
- db SPRITE_BIKER
- db SPRITE_BLAINE
- db SPRITE_PHARMACIST
- db SPRITE_FISHER
- db SPRITE_SUPER_NERD
- db SPRITE_BLACK_BELT
- db SPRITE_ROCKET
- db SPRITE_YOUNGSTER
- db SPRITE_LASS
- db SPRITE_YOUNGSTER
- db SPRITE_ROCKET_GIRL
- db SPRITE_SAGE
- db SPRITE_GRANNY
- db SPRITE_ROCKER
- db SPRITE_POKEFAN_M
- db SPRITE_KIMONO_GIRL
- db SPRITE_TWIN
- db SPRITE_POKEFAN_F
- db SPRITE_RED
- db SPRITE_BLUE
- db SPRITE_OFFICER
- db SPRITE_ROCKET_GIRL
-
-ret_170bd2: ; 170bd2
- ret
-; 170bd3
-
-SpecialCheckForBattleTowerRules: ; 170bd3
- farcall CheckForBattleTowerRules
- jr c, .asm_170bde
- xor a
- jr .asm_170be0
-
-.asm_170bde
- ld a, $1
-
-.asm_170be0
- ld [ScriptVar], a
- ret
-; 170be4
diff --git a/mobile/fixed_words.asm b/mobile/fixed_words.asm
index a1ddb5ad2..53bce47d3 100755
--- a/mobile/fixed_words.asm
+++ b/mobile/fixed_words.asm
@@ -33,8 +33,7 @@ Function11c075: ; 11c075
ret
; 11c082
-Function11c082: ; 11c082
-; XXX
+Unreferenced_Function11c082: ; 11c082
push de
ld a, c
call Function11c254
@@ -275,7 +274,7 @@ CopyMobileEZChatToC608: ; 11c156
jr .copy_string
; 11c1ab
-Function11c1ab: ; 11c1ab
+Special_Function11c1ab: ; 11c1ab
ld a, [hInMenu]
push af
ld a, $1
@@ -426,11 +425,11 @@ EZChat_MasterLoop: ; 11c283
.SpawnObjects: ; 11c2e9 (47:42e9)
depixel 3, 1, 2, 5
- ld a, SPRITE_ANIM_INDEX_1D
+ ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call _InitSpriteAnimStruct
depixel 8, 1, 2, 5
- ld a, SPRITE_ANIM_INDEX_1D
+ ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call _InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
@@ -438,7 +437,7 @@ EZChat_MasterLoop: ; 11c283
ld [hl], a
depixel 9, 2, 2, 0
- ld a, SPRITE_ANIM_INDEX_1D
+ ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call _InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
@@ -446,7 +445,7 @@ EZChat_MasterLoop: ; 11c283
ld [hl], a
depixel 10, 16
- ld a, SPRITE_ANIM_INDEX_1D
+ ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call _InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
@@ -454,7 +453,7 @@ EZChat_MasterLoop: ; 11c283
ld [hl], a
depixel 10, 4
- ld a, SPRITE_ANIM_INDEX_1D
+ ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call _InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
@@ -462,7 +461,7 @@ EZChat_MasterLoop: ; 11c283
ld [hl], a
depixel 10, 2
- ld a, SPRITE_ANIM_INDEX_1D
+ ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call _InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
@@ -2561,7 +2560,7 @@ AnimateEZChatCursor: ; 11d0b6 (47:50b6)
jr .load
.three ; 11d10f (47:510f)
- ld a, SPRITE_ANIM_FRAMESET_27
+ ld a, SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_2
call ReinitSpriteAnimFrame
ld a, [wMobileCommsJumptableIndex]
sla a
@@ -2587,7 +2586,7 @@ AnimateEZChatCursor: ; 11d0b6 (47:50b6)
ret
.four ; 11d134 (47:5134)
- ld a, SPRITE_ANIM_FRAMESET_27
+ ld a, SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_2
call ReinitSpriteAnimFrame
ld a, [wcd2a]
sla a
@@ -2596,7 +2595,7 @@ AnimateEZChatCursor: ; 11d0b6 (47:50b6)
jr .load
.five ; 11d145 (47:5145)
- ld a, SPRITE_ANIM_FRAMESET_27
+ ld a, SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_2
call ReinitSpriteAnimFrame
ld a, [wcd2c]
sla a
@@ -2605,7 +2604,7 @@ AnimateEZChatCursor: ; 11d0b6 (47:50b6)
jr .load
.six ; 11d156 (47:5156)
- ld a, SPRITE_ANIM_FRAMESET_2A
+ ld a, SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_5
call ReinitSpriteAnimFrame
; X = [wcd4a] * 8 + 24
ld a, [wcd4a]
@@ -2628,12 +2627,12 @@ AnimateEZChatCursor: ; 11d0b6 (47:50b6)
.seven ; 11d175 (47:5175)
ld a, [wEZChatCursorYCoord]
cp $4
- jr z, .frameset_26
- ld a, SPRITE_ANIM_FRAMESET_28
+ jr z, .cursor0
+ ld a, SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3
jr .got_frameset
-.frameset_26
- ld a, SPRITE_ANIM_FRAMESET_26
+.cursor0
+ ld a, SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_1
.got_frameset
call ReinitSpriteAnimFrame
ld a, [wEZChatCursorYCoord]
@@ -2685,12 +2684,12 @@ AnimateEZChatCursor: ; 11d0b6 (47:50b6)
.nine ; 11d1d1 (47:51d1)
ld d, -13 * 8
- ld a, SPRITE_ANIM_FRAMESET_2C
+ ld a, SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_7
jr .eight_nine_load
.eight ; 11d1d7 (47:51d7)
ld d, 2 * 8
- ld a, SPRITE_ANIM_FRAMESET_2B
+ ld a, SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_6
.eight_nine_load ; 11d1db (47:51db)
push de
call ReinitSpriteAnimFrame
@@ -2713,7 +2712,7 @@ AnimateEZChatCursor: ; 11d0b6 (47:50b6)
ret
.ten ; 11d1fc (47:51fc)
- ld a, SPRITE_ANIM_FRAMESET_26
+ ld a, SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_1
call ReinitSpriteAnimFrame
ld a, $8
ld e, a
@@ -2825,54 +2824,54 @@ AnimateEZChatCursor: ; 11d0b6 (47:50b6)
dbpixel 4, 12
.FramesetsIDs_Two: ; 11d2be
- db SPRITE_ANIM_FRAMESET_28 ; 00
- db SPRITE_ANIM_FRAMESET_28 ; 01
- db SPRITE_ANIM_FRAMESET_28 ; 02
- db SPRITE_ANIM_FRAMESET_28 ; 03
- db SPRITE_ANIM_FRAMESET_28 ; 04
- db SPRITE_ANIM_FRAMESET_28 ; 05
- db SPRITE_ANIM_FRAMESET_28 ; 06
- db SPRITE_ANIM_FRAMESET_28 ; 07
- db SPRITE_ANIM_FRAMESET_28 ; 08
- db SPRITE_ANIM_FRAMESET_28 ; 09
- db SPRITE_ANIM_FRAMESET_28 ; 0a
- db SPRITE_ANIM_FRAMESET_28 ; 0b
- db SPRITE_ANIM_FRAMESET_28 ; 0c
- db SPRITE_ANIM_FRAMESET_28 ; 0d
- db SPRITE_ANIM_FRAMESET_28 ; 0e
- db SPRITE_ANIM_FRAMESET_28 ; 0f
- db SPRITE_ANIM_FRAMESET_28 ; 10
- db SPRITE_ANIM_FRAMESET_28 ; 11
- db SPRITE_ANIM_FRAMESET_28 ; 12
- db SPRITE_ANIM_FRAMESET_28 ; 13
- db SPRITE_ANIM_FRAMESET_28 ; 14
- db SPRITE_ANIM_FRAMESET_28 ; 15
- db SPRITE_ANIM_FRAMESET_28 ; 16
- db SPRITE_ANIM_FRAMESET_28 ; 17
- db SPRITE_ANIM_FRAMESET_28 ; 18
- db SPRITE_ANIM_FRAMESET_28 ; 19
- db SPRITE_ANIM_FRAMESET_28 ; 1a
- db SPRITE_ANIM_FRAMESET_28 ; 1b
- db SPRITE_ANIM_FRAMESET_28 ; 1c
- db SPRITE_ANIM_FRAMESET_28 ; 1d
- db SPRITE_ANIM_FRAMESET_28 ; 1e
- db SPRITE_ANIM_FRAMESET_28 ; 1f
- db SPRITE_ANIM_FRAMESET_28 ; 20
- db SPRITE_ANIM_FRAMESET_28 ; 21
- db SPRITE_ANIM_FRAMESET_28 ; 22
- db SPRITE_ANIM_FRAMESET_28 ; 23
- db SPRITE_ANIM_FRAMESET_28 ; 24
- db SPRITE_ANIM_FRAMESET_28 ; 25
- db SPRITE_ANIM_FRAMESET_28 ; 26
- db SPRITE_ANIM_FRAMESET_28 ; 27
- db SPRITE_ANIM_FRAMESET_28 ; 28
- db SPRITE_ANIM_FRAMESET_28 ; 29
- db SPRITE_ANIM_FRAMESET_28 ; 2a
- db SPRITE_ANIM_FRAMESET_28 ; 2b
- db SPRITE_ANIM_FRAMESET_29 ; 2c
- db SPRITE_ANIM_FRAMESET_26 ; 2d
- db SPRITE_ANIM_FRAMESET_26 ; 2e
- db SPRITE_ANIM_FRAMESET_26 ; 2f
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 00
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 01
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 02
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 03
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 04
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 05
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 06
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 07
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 08
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 09
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 0a
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 0b
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 0c
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 0d
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 0e
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 0f
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 10
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 11
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 12
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 13
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 14
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 15
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 16
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 17
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 18
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 19
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 1a
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 1b
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 1c
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 1d
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 1e
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 1f
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 20
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 21
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 22
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 23
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 24
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 25
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 26
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 27
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 28
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 29
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 2a
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_3 ; 2b
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_4 ; 2c
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_1 ; 2d
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_1 ; 2e
+ db SPRITE_ANIM_FRAMESET_EZCHAT_CURSOR_1 ; 2f
.UpdateObjectFlags: ; 11d2ee (47:52ee)
ld hl, wcd24
@@ -3022,9 +3021,9 @@ EZChat_GetSeenPokemonByKana: ; 11d3ba
ld [wcd2e], a
ld [hl], a
- ld a, LOW(SortedPokemon)
+ ld a, LOW(EZChat_SortedPokemon)
ld [wcd2f], a
- ld a, HIGH(SortedPokemon)
+ ld a, HIGH(EZChat_SortedPokemon)
ld [wcd30], a
ld a, LOW($c6a8)
@@ -3093,7 +3092,7 @@ EZChat_GetSeenPokemonByKana: ; 11d3ba
or b
jr nz, .loop1
-; recover the pointer from wcd2f (default: SortedPokemon)
+; recover the pointer from wcd2f (default: EZChat_SortedPokemon)
ld a, [wcd2f]
ld l, a
ld a, [wcd30]
@@ -3292,101 +3291,7 @@ EZChat_GetCategoryWordsByKana: ; 11d4aa
ret
; 11d4fe
-SortedPokemon:
-; Pokemon sorted by kana.
-; Notably, Rhydon is missing.
- dw .a
- dw .i
- dw .u
- dw .e
- dw .o
- dw .ka_ga
- dw .ki_gi
- dw .ku_gu
- dw .ke_ge
- dw .ko_go
- dw .sa_za
- dw .shi_ji
- dw .su_zu
- dw .se_ze
- dw .so_zo
- dw .ta_da
- dw .chi_dhi
- dw .tsu_du
- dw .te_de
- dw .to_do
- dw .na
- dw .ni
- dw .nu
- dw .ne
- dw .no
- dw .ha_ba_pa
- dw .hi_bi_pi
- dw .fu_bu_pu
- dw .he_be_pe
- dw .ho_bo_po
- dw .ma
- dw .mi
- dw .mu
- dw .me
- dw .mo
- dw .ya
- dw .yu
- dw .yo
- dw .ra
- dw .ri
- dw .ru
- dw .re
- dw .ro
- dw .wa
- dw .end
-
-.a: db EKANS, ARBOK, SEAKING, ARIADOS, CROCONAW, UNOWN, -1
-.i: db EEVEE, GEODUDE, SPINARAK, PILOSWINE, ONIX, -1
-.u: db ARCANINE, SUDOWOODO, WEEPINBELL, VICTREEBEL, WOOPER, SWINUB, -1
-.e: db SKARMORY, AIPOM, ESPEON, HITMONCHAN, ELEKID, ELECTABUZZ, ENTEI, -1
-.o: db FERALIGATR, FURRET, OCTILLERY, PRIMEAPE, SENTRET, STANTLER, SPEAROW, FEAROW, OMASTAR, OMANYTE, -1
-.ka_ga db GROWLITHE, MACHAMP, DRAGONITE, PINSIR, SNORLAX, KABUTO, KABUTOPS, HITMONTOP, WARTORTLE, BLASTOISE, FARFETCH_D, CUBONE, MAROWAK, KANGASKHAN, -1
-.ki_gi db SUNFLORA, CATERPIE, GYARADOS, RAPIDASH, NINETALES, GIRAFARIG, BELLOSSOM, KINGDRA, KINGLER, -1
-.ku_gu db GLOOM, PINECO, GLIGAR, KRABBY, GRANBULL, CROBAT, -1
-.ke_ge db ABRA, GENGAR, TAUROS, -1
-.ko_go db MAGIKARP, MAGNEMITE, GASTLY, HAUNTER, MACHOKE, KAKUNA, PSYDUCK, PHANPY, RATTATA, GOLDUCK, GOLBAT, GOLEM, GRAVELER, VENONAT, -1
-.sa_za db RHYHORN, PUPITAR, CORSOLA, HITMONLEE, ZAPDOS, JOLTEON, SANDSHREW, SANDSLASH, -1 ; RHYDON should lead this list
-.shi_ji db SEADRA, SHELLDER, VAPOREON, DEWGONG, -1
-.su_zu db SUICUNE, STARMIE, SCYTHER, ZUBAT, BEEDRILL, HYPNO, DROWZEE, -1
-.se_ze db SQUIRTLE, CELEBI, -1
-.so_zo db WOBBUFFET, -1
-.ta_da db DUGTRIO, HORSEA, EXEGGCUTE, -1
-.chi_dhi db CHIKORITA, CHINCHOU, -1
-.tsu_du db SHUCKLE, -1
-.te_de db DIGLETT, REMORAID, DELIBIRD, HOUNDOUR, AMPHAROS, -1
-.to_do db DODUO, DODRIO, SMEARGLE, KOFFING, TENTACRUEL, TOGETIC, TOGEPI, GOLDEEN, METAPOD, DONPHAN, -1
-.na db ODDISH, EXEGGUTOR, -1
-.ni db NIDOKING, NIDOQUEEN, NIDORAN_M, NIDORAN_F, NIDORINA, NIDORINO, MEOWTH, SNEASEL, POLIWHIRL, POLITOED, POLIWRATH, POLIWAG, -1
-.nu db QUAGSIRE, -1
-.ne db NATU, XATU, -1
-.no db DUNSPARCE, -1
-.ha_ba_pa db SEEL, STEELIX, TYPHLOSION, DRAGONAIR, BUTTERFREE, SCIZOR, HOPPIP, BLISSEY, PARAS, PARASECT, QWILFISH, MR__MIME, TYROGUE, CLOYSTER, TYRANITAR, -1
-.hi_bi_pi db CLEFFA, WEEDLE, PIKACHU, CLEFABLE, PIDGEOT, PIDGEOTTO, PICHU, CLEFAIRY, CHARMANDER, STARYU, CYNDAQUIL, SUNKERN, TEDDIURSA, VOLTORB, -1
-.fu_bu_pu db MOLTRES, FLAREON, ALAKAZAM, MAGMAR, FORRETRESS, WIGGLYTUFF, IVYSAUR, BULBASAUR, VENUSAUR, AERODACTYL, MAGBY, IGGLYBUFF, UMBREON, ARTICUNO, JIGGLYPUFF, SNUBBULL, -1
-.he_be_pe db BAYLEEF, GRIMER, MUK, HERACROSS, HOUNDOOM, PERSIAN, LICKITUNG, -1
-.ho_bo_po db HO_OH, HOOTHOOT, PIDGEY, PONYTA, SKIPLOOM, PORYGON, PORYGON2, -1
-.ma db MAGCARGO, SLUGMA, QUILAVA, BELLSPROUT, WEEZING, MARILL, AZUMARILL, ELECTRODE, MANKEY, MANTINE, -1
-.mi db DRATINI, MEW, MEWTWO, MILTANK, -1
-.mu db MISDREAVUS, SMOOCHUM, -1
-.me db MEGANIUM, DITTO, TENTACOOL, MAREEP, -1
-.mo db FLAAFFY, VENOMOTH, TANGELA, -1
-.ya db SLOWKING, SLOWBRO, SLOWPOKE, MURKROW, YANMA, -1
-.yu db KADABRA, -1
-.yo db LARVITAR, NOCTOWL, -1
-.ra db RAIKOU, RAICHU, CHANSEY, RATICATE, LAPRAS, VILEPLUME, LANTURN, -1
-.ri db CHARMELEON, CHARIZARD, URSARING, -1
-.ru db JYNX, LUGIA, -1
-.re db MAGNETON, LEDIAN, LEDYBA, -1
-.ro db VULPIX, -1
-.wa db JUMPLUFF, TOTODILE, MACHOP;, -1
-.end db -1
-; 11d67e
+INCLUDE "data/pokemon/ezchat_order.asm"
GFX_11d67e:
INCBIN "gfx/pokedex/select_start.2bpp"
diff --git a/mobile/get_trainer_class.asm b/mobile/get_trainer_class.asm
deleted file mode 100644
index 37fe91c56..000000000
--- a/mobile/get_trainer_class.asm
+++ /dev/null
@@ -1,46 +0,0 @@
-GetMobileOTTrainerClass: ; mobile function
- ld h, b
- ld l, c
- call .GetMobileOTTrainerClass
- ld c, a
- ret
-
-.GetMobileOTTrainerClass: ; 4e930
- ld a, [hli]
- xor [hl]
- ld c, a
- jr z, .skip_male_trainers
- srl c
- srl c
-.male_trainer_loop
- srl c
- ld a, c
- cp MaleTrainersEnd - MaleTrainers - 1
- jr nc, .male_trainer_loop
- inc c
-
-.skip_male_trainers
- ld a, [de]
- cp $1
- ld hl, MaleTrainers
- jr nz, .finished
-
- ld hl, FemaleTrainers
- ld a, c
- and a
- jr z, .finished
-
-.female_trainer_loop
- srl c
- ld a, c
- cp FemaleTrainersEnd - FemaleTrainers - 1
- jr nc, .female_trainer_loop
- inc c
-
-.finished
- ld b, $0
- add hl, bc
- ld a, [hl]
- ret
-
-INCLUDE "data/trainers/gendered_trainers.asm"
diff --git a/mobile/mobile_12.asm b/mobile/mobile_12.asm
index 238d8a3f7..934afb457 100755
--- a/mobile/mobile_12.asm
+++ b/mobile/mobile_12.asm
@@ -564,8 +564,7 @@ MobileDesc_ZipCode: db "Your zip code?@"
MenuDataHeader_0x484f1: ; 0x484f1
db MENU_BACKUP_TILES ; flags
- db 02, 11 ; start coords
- db 07, 19 ; end coords
+ menu_coords 11, 2, SCREEN_WIDTH - 1, 7
dw MenuData2_0x484f9
db 1 ; default option
; 0x484f9
@@ -580,23 +579,19 @@ String_484ff: db "Girl@"
MenuDataHeader_0x48504: ; 0x48504
db MENU_BACKUP_TILES ; flags
- db 00, 10 ; start coords
- db 17, 19 ; end coords
+ menu_coords 10, 0, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
MenuDataHeader_0x48509: ; 0x48509
db MENU_BACKUP_TILES ; flags
- db 05, 10 ; start coords
- db 07, 19 ; end coords
+ menu_coords 10, 5, SCREEN_WIDTH - 1, 7
MenuDataHeader_0x4850e: ; 0x4850e
db MENU_BACKUP_TILES ; flags
- db 09, 10 ; start coords
- db 11, 19 ; end coords
+ menu_coords 10, 9, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
MenuDataHeader_0x48513: ; 0x48513
db MENU_BACKUP_TILES ; flags
- db 01, 11 ; start coords
- db 12, 18 ; end coords
+ menu_coords 11, 1, 18, 12
dw MenuData2_0x4851b
db 1 ; default option
; 0x4851b
@@ -728,7 +723,7 @@ Function486bf: ; 486bf (12:46bf)
.got_num_rows_2
ld a, 1
ld [hli], a ; num cols
- ld [hl], $0 ; flags 1
+ ld [hl], 0 ; flags 1
set 5, [hl]
inc hl
xor a
@@ -794,7 +789,7 @@ Function4873c: ; 4873c (12:473c)
ld [hli], a ; num rows
ld a, 1
ld [hli], a ; num cols
- ld [hl], $0 ; flags 1
+ ld [hl], 0 ; flags 1
set 5, [hl]
inc hl
xor a
@@ -1278,8 +1273,7 @@ Function48a9a: ; 48a9a (12:4a9a)
MenuDataHeader_0x48a9c: ; 0x48a9c
db MENU_BACKUP_TILES ; flags
- db 08, 10 ; start coords
- db 13, 19 ; end coord
+ menu_coords 10, 8, SCREEN_WIDTH - 1, 13
String_48aa1: ; 48aa1
db "Tell Now"
@@ -1621,9 +1615,8 @@ Function48c63: ; 48c63
ret
; 48c8e
-Function48c8e: ; 48c8e
-; unreferenced
- ld hl, $d02a
+Unreferenced_Function48c8e: ; 48c8e
+ ld hl, wd019 + $11
ld d, h
ld e, l
farcall Function48c63
diff --git a/mobile/mobile_12_2.asm b/mobile/mobile_12_2.asm
index 94eeb6a7a..5553d66fb 100755
--- a/mobile/mobile_12_2.asm
+++ b/mobile/mobile_12_2.asm
@@ -159,7 +159,7 @@ MobileCheckOwnMonAnywhere: ; 4a843
ret
; 4a927
-FindItemInPCOrBag: ; 4a927
+UnusedSpecial_FindItemInPCOrBag: ; 4a927
ld a, [ScriptVar]
ld [CurItem], a
ld hl, PCItems
@@ -716,8 +716,7 @@ Function4ac58: ; 4ac58
MenuDataHeader_0x4aca2: ; 0x4aca2
db MENU_BACKUP_TILES ; flags
- db 09, 11 ; start coords
- db 17, 19 ; end coords
+ menu_coords 11, 9, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
dw NULL
db 1 ; default option
; 0x4acaa
diff --git a/mobile/mobile_22.asm b/mobile/mobile_22.asm
index 70de1f767..9c8eeab7d 100644
--- a/mobile/mobile_22.asm
+++ b/mobile/mobile_22.asm
@@ -278,8 +278,7 @@ Function89261: ; 89261
MenuDataHeader_0x892a3: ; 0x892a3
db MENU_BACKUP_TILES ; flags
- db 05, 10 ; start coords
- db 09, 15 ; end coords
+ menu_coords 10, 5, 15, 9
dw MenuData2_0x892ab
db 1 ; default option
; 0x892ab
@@ -572,7 +571,7 @@ Function89448: ; 89448 (22:5448)
; Clears the Sprites array
push af
ld hl, Sprites
- ld d, $10 * 6
+ ld d, 24 * SPRITEOAMSTRUCT_LENGTH
xor a
.loop
ld [hli], a
@@ -1228,7 +1227,7 @@ Function897af: ; 897af
xor a
ld [CurPartySpecies], a
ld de, vTiles2 tile $37
- farcall GetTrainerPic
+ farcall Predef_GetTrainerPic
pop bc
ret
; 897d5
@@ -1260,7 +1259,7 @@ Function897d5: ; 897d5
ld [hGraphicStartTile], a
hlcoord 12, 3
lb bc, 7, 7
- predef PlaceGraphic
+ predef Predef_PlaceGraphic
call Function8963d
pop bc
ret
@@ -1924,7 +1923,7 @@ Function89b97: ; 89b97 (22:5b97)
ld a, [hli]
ld h, [hl]
ld l, a
- ld de, Sprites
+ ld de, Sprite01
.asm_89bb4
ld a, [hli]
cp $ff
@@ -1934,19 +1933,19 @@ Function89b97: ; 89b97 (22:5b97)
.asm_89bbb
push hl
ld a, [hli]
- ld [de], a
+ ld [de], a ; y
inc de
ld a, [hli]
add b
- ld [de], a
+ ld [de], a ; x
inc de
- ld a, $8
+ ld a, $08
add b
ld b, a
- ld a, [hli]
+ ld a, [hli] ; tile id
ld [de], a
inc de
- ld a, [hli]
+ ld a, [hli] ; attributes
ld [de], a
inc de
pop hl
@@ -1966,32 +1965,32 @@ Unknown_89bd8: ; 89bd8
; 89be0
Unknown_89be0: ; 89be0
- db $01, $12, $4e, $01, $00
- db $01, $19, $4e, $01, $40
- db $01, $12, $72, $01, $20
- db $01, $19, $72, $01, $60
- db $ff
+ db $01, $12, $4e, $01, 0
+ db $01, $19, $4e, $01, 0 | Y_FLIP
+ db $01, $12, $72, $01, 0 | X_FLIP
+ db $01, $19, $72, $01, 0 | X_FLIP | Y_FLIP
+ db -1 ; end
Unknown_89bf5: ; 89bf5
- db $01, $60, $16, $01, $00
- db $01, $62, $16, $01, $40
- db $01, $60, $92, $01, $20
- db $01, $62, $92, $01, $60
- db $ff
+ db $01, $60, $16, $01, 0
+ db $01, $62, $16, $01, 0 | Y_FLIP
+ db $01, $60, $92, $01, 0 | X_FLIP
+ db $01, $62, $92, $01, 0 | X_FLIP | Y_FLIP
+ db -1 ; end
Unknown_89c0a: ; 89c0a
- db $01, $78, $66, $01, $00
- db $01, $78, $66, $01, $40
- db $01, $78, $92, $01, $20
- db $01, $78, $92, $01, $60
- db $ff
+ db $01, $78, $66, $01, 0
+ db $01, $78, $66, $01, 0 | Y_FLIP
+ db $01, $78, $92, $01, 0 | X_FLIP
+ db $01, $78, $92, $01, 0 | X_FLIP | Y_FLIP
+ db -1 ; end
Unknown_89c1f: ; 89c1f
- db $01, $80, $66, $01, $00
- db $01, $80, $66, $01, $40
- db $01, $80, $92, $01, $20
- db $01, $80, $92, $01, $60
- db $ff
+ db $01, $80, $66, $01, 0
+ db $01, $80, $66, $01, 0 | Y_FLIP
+ db $01, $80, $92, $01, 0 | X_FLIP
+ db $01, $80, $92, $01, 0 | X_FLIP | Y_FLIP
+ db -1 ; end
; 89c34
Function89c34: ; 89c34 (22:5c34)
@@ -2014,10 +2013,10 @@ Function89c44: ; 89c44 (22:5c44)
pop de
ret
.asm_89c4f
- ld hl, Sprites
+ ld hl, Sprite01
push de
ld a, b
- ld [hli], a
+ ld [hli], a ; y
ld d, $8
ld a, e
and a
@@ -2029,11 +2028,11 @@ Function89c44: ; 89c44 (22:5c44)
jr nz, .asm_89c5c
.asm_89c60
pop de
- ld [hli], a
+ ld [hli], a ; x
ld a, d
- ld [hli], a
+ ld [hli], a ; tile id
xor a
- ld [hli], a
+ ld [hli], a ; attributes
ret
Function89c67: ; 89c67 (22:5c67)
@@ -2124,20 +2123,20 @@ Function89cdf: ; 89cdf (22:5cdf)
ld c, a
ld e, $2
ld a, $2
- ld hl, Sprites
+ ld hl, Sprite01
.asm_89cee
push af
push bc
ld d, $4
.asm_89cf2
ld a, b
- ld [hli], a
+ ld [hli], a ; y
ld a, c
- ld [hli], a
+ ld [hli], a ; x
ld a, e
- ld [hli], a
+ ld [hli], a ; tile id
ld a, $1
- ld [hli], a
+ ld [hli], a ; attributes
ld a, $8
add c
ld c, a
@@ -2833,8 +2832,7 @@ Function8a116: ; 8a116 (22:6116)
MenuDataHeader_0x8a176: ; 0x8a176
db MENU_BACKUP_TILES ; flags
- db 00, 14 ; start coords
- db 06, 19 ; end coords
+ menu_coords 14, 0, SCREEN_WIDTH - 1, 6
; 8a17b
Function8a17b: ; 8a17b (22:617b)
@@ -2856,8 +2854,7 @@ Function8a17b: ; 8a17b (22:617b)
MenuDataHeader_0x8a19a: ; 0x8a19a
db MENU_BACKUP_TILES ; flags
- db 00, 14 ; start coords
- db 06, 19 ; end coords
+ menu_coords 14, 0, SCREEN_WIDTH - 1, 6
dw MenuData2_0x8a1a2
db 1 ; default option
; 0x8a1a2
@@ -3016,8 +3013,7 @@ Function8a2aa: ; 8a2aa (22:62aa)
MenuDataHeader_0x8a2ef: ; 0x8a2ef
db MENU_BACKUP_TILES ; flags
- db 12, 00 ; start coords
- db 17, 19 ; end coords
+ menu_coords 0, 12, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
; 8a2f4
UnknownText_0x8a2f4: ; 0x8a2f4
@@ -3178,8 +3174,7 @@ Unknown_8a40b: db 1, 2, 3, -1
MenuDataHeader_0x8a40f: ; 0x8a40f
db MENU_BACKUP_TILES ; flags
- db 02, 00 ; start coords
- db 11, 10 ; end coords
+ menu_coords 0, 2, 10, TEXTBOX_Y - 1
dw MenuData2_0x8a417
db 1 ; default option
; 0x8a417
@@ -3195,8 +3190,7 @@ MenuData2_0x8a417: ; 0x8a417
MenuDataHeader_0x8a435: ; 0x8a435
db MENU_BACKUP_TILES ; flags
- db 02, 00 ; start coords
- db 09, 10 ; end coords
+ menu_coords 0, 2, 10, 9
dw MenuData2_0x8a43d
db 1 ; default option
; 0x8a43d
@@ -3301,7 +3295,7 @@ asm_8a529: ; 8a529 (22:6529)
ld [hli], a
ld hl, Sprites
xor a
- ld bc, $20
+ ld bc, 8 * SPRITEOAMSTRUCT_LENGTH
call ByteFill
ret
@@ -3921,8 +3915,7 @@ Jumptable_8a9c5: ; 8a9c5 (22:69c5)
MenuDataHeader_0x8a9c9: ; 0x8a9c9
db MENU_BACKUP_TILES ; flags
- db 04, 11 ; start coords
- db 11, 18 ; end coords
+ menu_coords 11, 4, 18, TEXTBOX_Y - 1
; 8a9ce
Function8a9ce: ; 8a9ce (22:69ce)
@@ -3951,8 +3944,7 @@ Function8a9ce: ; 8a9ce (22:69ce)
MenuDataHeader_0x8a9f2: ; 0x8a9f2
db MENU_BACKUP_TILES ; flags
- db 04, 11 ; start coords
- db 11, 18 ; end coords
+ menu_coords 11, 4, 18, TEXTBOX_Y - 1
dw MenuData2_0x8a9fa
db 1 ; default option
; 0x8a9fa
diff --git a/mobile/mobile_22_2.asm b/mobile/mobile_22_2.asm
index e30e52ee7..d428f2547 100644
--- a/mobile/mobile_22_2.asm
+++ b/mobile/mobile_22_2.asm
@@ -1,6 +1,6 @@
Function8b342:: ; 8b342
; Loads the secondary map header pointer, then runs through a
-; dw with three dummy functions. Spends a lot of energy
+; dw with three dummy functions. Spends a lot of energy
; doing pretty much nothing.
call GetSecondaryMapHeaderPointer
ld d, h
@@ -26,15 +26,15 @@ Function8b342:: ; 8b342
; 8b35a
.zero ; 8b35a
- mobile
+ ret
; 8b35b
.one ; 8b35b
- mobile
+ ret
; 8b35c
.two ; 8b35c
- mobile
+ ret
; 8b35d
Function8b35d: ; 8b35d
@@ -911,8 +911,7 @@ Function8b855: ; 8b855
MenuDataHeader_0x8b867: ; 0x8b867
db MENU_BACKUP_TILES ; flags
- db 03, 01 ; start coords
- db 13, 18 ; end coords
+ menu_coords 1, 3, 18, 13
dw MenuData2_0x8b870
db 1 ; default option
; 0x8b86f
@@ -1084,13 +1083,11 @@ Function8b9ab: ; 8b9ab
MenuDataHeader_0x8b9ac: ; 0x8b9ac
db MENU_BACKUP_TILES ; flags
- db 00, 11 ; start coords
- db 11, 19 ; end coords
+ menu_coords 11, 0, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
MenuDataHeader_0x8b9b1: ; 0x8b9b1
db MENU_BACKUP_TILES ; flags
- db 00, 11 ; start coords
- db 07, 19 ; end coords
+ menu_coords 11, 0, SCREEN_WIDTH - 1, 7
dw MenuData2_0x8b9b9
db 1 ; default option
; 0x8b9b9
@@ -1105,8 +1102,7 @@ MenuData2_0x8b9b9: ; 0x8b9b9
MenuDataHeader_0x8b9ca: ; 0x8b9ca
db MENU_BACKUP_TILES ; flags
- db 00, 11 ; start coords
- db 11, 19 ; end coords
+ menu_coords 11, 0, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
dw MenuData2_0x8b9d2
db 1 ; default option
; 0x8b9d2
diff --git a/mobile/mobile_40.asm b/mobile/mobile_40.asm
index d4ade0eb7..3a7f7c641 100644
--- a/mobile/mobile_40.asm
+++ b/mobile/mobile_40.asm
@@ -40,7 +40,7 @@ Function100022: ; 100022
ld a, b
ld [wcd24], a
farcall Function10127e
- farcall MobileFunc_106462
+ farcall Stubbed_Function106462
farcall Function106464 ; load broken gfx
farcall Function11615a ; init RAM
ld hl, VramState
@@ -318,7 +318,7 @@ Function10016f: ; 10016f
Function10020b: ; 10020b
xor a
ld [wc303], a
- farcall FadeOutPalettes
+ farcall Special_FadeOutPalettes
farcall Function106464
call HideSprites
call DelayFrame
@@ -1985,7 +1985,7 @@ Function100c74: ; 100c74
ld a, SCREEN_WIDTH * 2
ld [Buffer1], a
hlcoord 2, 10
- predef ListMoves
+ predef Predef_ListMoves
ret
; 100c98
@@ -2120,8 +2120,7 @@ Function100d67: ; 100d67
.MenuDataHeader: ; 100d88
db 0 ; flags
- db 11, 11 ; start coords
- db 17, 19 ; end coords
+ menu_coords 11, 11, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
dw .MenuData2
db 1 ; default option
@@ -2804,7 +2803,7 @@ LoadSelectedPartiesForColosseum: ; 1010f2
ret
; 1011f1
-Function1011f1: ; 1011f1
+Special_Function1011f1: ; 1011f1
ld a, $04
call GetSRAMBank
ld a, [$a60c]
@@ -2828,20 +2827,20 @@ Function1011f1: ; 1011f1
ret
; 101220
-Function101220: ; 101220
+Special_Function101220: ; 101220
xor a
ld [wLinkMode], a
ret
; 101225
-Function101225: ; 101225
+Special_Function101225: ; 101225
ld d, 1
ld e, BANK(Jumptable_101297)
ld bc, Jumptable_101297
call Function100000
jr Function10123d
-Function101231: ; 101231
+Special_Function101231: ; 101231
ld d, 2
ld e, BANK(Jumptable_101297)
ld bc, Jumptable_101297
@@ -2872,7 +2871,7 @@ Function101251: ; 101251
call Function1021e0
call Function1020ea
ret c
- call Function102142
+ call Special_Function102142
ret
; 101265
@@ -3077,7 +3076,7 @@ Function1013aa: ; 1013aa
Function1013c0: ; 1013c0
farcall BlankScreen
- farcall MobileFunc_106462
+ farcall Stubbed_Function106462
farcall Function106464
call FinishExitMenu
ret
@@ -3093,7 +3092,7 @@ Function1013dd: ; 1013dd
ret
; 1013e1
-Function1013e1: ; 1013e1 ; unreferenced
+Unreferenced_Function1013e1: ; 1013e1
push de
inc de
ld b, a
@@ -3130,7 +3129,7 @@ Function1013f5: ; 1013f5
ret
; 101400
-Function101400: ; 101400 ; unreferenced
+Unreferenced_Function101400: ; 101400
ld a, [de]
inc de
cp [hl]
@@ -3318,7 +3317,7 @@ Function101507: ; 101507
ret
; 10151d
-Function10151d: ; 10151d ; unreferenced
+Unreferenced_Function10151d: ; 10151d
ld a, $34
call Function3e32
ld a, [wMobileCommsJumptableIndex]
@@ -3513,7 +3512,7 @@ Function101663: ; 101663
ret
; 101674
-Function101674: ; 101674 ; unreferenced
+Unreferenced_Function101674: ; 101674
ld a, $05
ld hl, w5_dc00
call Function101635
@@ -4402,7 +4401,7 @@ Function101cbc: ; 101cbc
ret
; 101cc2
-Function101cc2: ; 101cc2 ; unreferenced
+Unreferenced_Function101cc2: ; 101cc2
ld a, $02
ld [wcd2b], a
ret
@@ -4683,7 +4682,7 @@ Function101e64: ; 101e64
ret
; 101e82
-Function101e82: ; 101e82 ; unreferenced
+Unreferenced_Function101e82: ; 101e82
call Function101ecc
ld a, [wMobileCommsJumptableIndex]
inc a
@@ -4691,7 +4690,7 @@ Function101e82: ; 101e82 ; unreferenced
ret
; 101e8d
-Function101e8d: ; 101e8d ; unreferenced
+Unreferenced_Function101e8d: ; 101e8d
call Function101ed3
ld a, [wMobileCommsJumptableIndex]
inc a
@@ -5025,7 +5024,7 @@ Function102112: ; 102112
ret
; 102142
-Function102142: ; 102142
+Special_Function102142: ; 102142
call Function10218d
call Function102180
ld hl, UnknownText_0x1021d1
@@ -5454,7 +5453,7 @@ Function102423: ; 102423
call Function102921
ret nc
farcall SaveAfterLinkTrade
- farcall TrainerRankings_Trades
+ farcall StubbedTrainerRankings_Trades
farcall BackupMobileEventIndex
ld hl, wcd4b
set 1, [hl]
@@ -6288,8 +6287,7 @@ Function1029af: ; 1029af
MenuDataHeader_1029bb: ; 1029bb
db MENU_BACKUP_TILES ; flags
- db 10, 3 ; start coords
- db 12, 15 ; end coords
+ menu_coords 3, 10, 15, 12
dw NULL
db 1 ; default option
; 1029c3
@@ -6506,7 +6504,7 @@ Function102b4e: ; 102b4e
ret
; 102b68
-Function102b68: ; 102b68 ; unreferenced
+Unreferenced_Function102b68: ; 102b68
xor a
ld hl, wWindowStackPointer
ld bc, $10
@@ -6796,7 +6794,7 @@ Function102d48: ; 102d48
ld bc, PARTYMON_STRUCT_LENGTH
ld hl, PartyMon1DVs
call AddNTimes
- predef GetUnownLetter
+ predef Predef_GetUnownLetter
farcall UpdateUnownDex
ld a, [wFirstUnownSeen]
and a
@@ -7724,9 +7722,9 @@ Unknown_1035d7: ; 1035d7
dw Unknown_103608
dw Unknown_103608
dw Unknown_1035fe
- dw AskMobileOrCable
- dw AskMobileOrCable
- dw AskMobileOrCable
+ dw Special_AskMobileOrCable
+ dw Special_AskMobileOrCable
+ dw Special_AskMobileOrCable
Unknown_1035e7: ; 1035e7
dwcoord 0, 6
@@ -7757,7 +7755,7 @@ Unknown_103608: ; 103608
db 2, 2, 3
; 103612
-AskMobileOrCable: ; 103612
+Special_AskMobileOrCable: ; 103612
ld hl, MenuDataHeader_103640
call LoadMenuDataHeader
ld a, [wMobileOrCable_LastSelection]
@@ -7786,8 +7784,7 @@ AskMobileOrCable: ; 103612
MenuDataHeader_103640: ; 103640
db MENU_BACKUP_TILES ; flags
- db 6, 13 ; start coords
- db 11, 19 ; end coords
+ menu_coords 13, 6, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
dw MenuData2_103648
db 1 ; default option
@@ -7814,7 +7811,7 @@ Function103654: ; 103654
ret
; 10366e
-Mobile_SelectThreeMons: ; 10366e
+Special_Mobile_SelectThreeMons: ; 10366e
farcall Mobile_AlwaysReturnNotCarry
bit 7, c
jr z, .asm_10369b
@@ -7941,8 +7938,7 @@ Function103700: ; 103700
MenuDataHeader_103747: ; 103747
db MENU_BACKUP_TILES ; flags
- db 5, 13 ; start coords
- db 11, 19 ; end coords
+ menu_coords 13, 5, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
dw MenuData2_10374f
db 1 ; default option
@@ -7983,7 +7979,7 @@ UnknownText_0x10377b: ; 0x10377b
db "@"
; 0x103780
-Function103780: ; 103780
+Special_Function103780: ; 103780
ld a, [wd265]
push af
call Function10378c
@@ -8025,7 +8021,7 @@ Function10378c: ; 10378c
ret
; 1037c2
-Function1037c2: ; 1037c2
+Special_Function1037c2: ; 1037c2
call Function103823
jr c, .nope
ld a, [wdc5f]
@@ -8051,7 +8047,7 @@ UnknownText_0x1037e6: ; 0x1037e6
db "@"
; 0x1037eb
-Function1037eb: ; 1037eb
+Special_Function1037eb: ; 1037eb
call Function103823
jr nc, .asm_103807
ld hl, UnknownText_0x103819
@@ -8106,7 +8102,7 @@ Function103823: ; 103823
ret
; 10383c
-Function10383c: ; 10383c
+Special_Function10383c: ; 10383c
ld a, $01
ld [wdc60], a
xor a
@@ -8139,7 +8135,7 @@ UnknownText_0x103876: ; 0x103876
db "@"
; 0x10387b
-Function10387b: ; 10387b
+Special_Function10387b: ; 10387b
farcall Mobile_AlwaysReturnNotCarry
bit 7, c
ret nz
diff --git a/mobile/mobile_41.asm b/mobile/mobile_41.asm
index b92af19fe..a4f2c7e61 100755
--- a/mobile/mobile_41.asm
+++ b/mobile/mobile_41.asm
@@ -2,7 +2,8 @@
; which were used for Trainer Rankings in Pokémon News.
; Copies certain values at the time the player enters the Hall of Fame.
-TrainerRankings_HallOfFame2:: mobile ; 0x105ef6
+StubbedTrainerRankings_HallOfFame2:: ; 0x105ef6
+ ret
ld a, BANK(sTrainerRankingGameTimeHOF)
call GetSRAMBank
@@ -33,7 +34,8 @@ TrainerRankings_HallOfFame2:: mobile ; 0x105ef6
ret
; 105f33
-TrainerRankings_MagikarpLength: mobile ; 105f33
+StubbedTrainerRankings_MagikarpLength: ; 105f33
+ ret
ld a, BANK(sTrainerRankingLongestMagikarp)
call GetSRAMBank
ld de, Buffer1
@@ -101,7 +103,8 @@ TrainerRankings_MagikarpLength: mobile ; 105f33
ret
; 105f79
-TrainerRankings_BugContestScore: mobile ; 105f79
+StubbedTrainerRankings_BugContestScore: ; 105f79
+ ret
ld a, BANK(sTrainerRankingBugContestScore)
call GetSRAMBank
ld a, [hProduct]
@@ -130,7 +133,8 @@ TrainerRankings_BugContestScore: mobile ; 105f79
ret
; 105f9f
-TrainerRankings_AddToSlotsWinStreak: mobile ; 105f9f
+StubbedTrainerRankings_AddToSlotsWinStreak: ; 105f9f
+ ret
ld a, BANK(sTrainerRankingCurrentSlotsStreak)
call GetSRAMBank
@@ -170,7 +174,8 @@ TrainerRankings_AddToSlotsWinStreak: mobile ; 105f9f
ret
; 105fd0
-TrainerRankings_EndSlotsWinStreak: mobile ; 105fd0
+StubbedTrainerRankings_EndSlotsWinStreak: ; 105fd0
+ ret
ld a, BANK(sTrainerRankingCurrentSlotsStreak)
call GetSRAMBank
ld hl, sTrainerRankingCurrentSlotsStreak
@@ -182,7 +187,8 @@ TrainerRankings_EndSlotsWinStreak: mobile ; 105fd0
ret
; 105fe3
-TrainerRankings_AddToSlotsPayouts: mobile ; 105fe3
+StubbedTrainerRankings_AddToSlotsPayouts: ; 105fe3
+ ret
ld a, BANK(sTrainerRankingTotalSlotsPayouts)
call GetSRAMBank
ld hl, sTrainerRankingTotalSlotsPayouts + 3
@@ -210,7 +216,8 @@ TrainerRankings_AddToSlotsPayouts: mobile ; 105fe3
ret
; 106008
-TrainerRankings_AddToBattlePayouts: mobile ; 106008
+StubbedTrainerRankings_AddToBattlePayouts: ; 106008
+ ret
ld a, BANK(sTrainerRankingTotalBattlePayouts)
call GetSRAMBank
ld hl, sTrainerRankingTotalBattlePayouts + 3
@@ -240,12 +247,13 @@ TrainerRankings_AddToBattlePayouts: mobile ; 106008
ret
; 10602e
-TrainerRankings_StepCount: mobile ; 10602e (41:602e)
+StubbedTrainerRankings_StepCount: ; 10602e (41:602e)
+ ret
ld hl, sTrainerRankingStepCount
- jp TrainerRankings_Increment4Byte
+ jp StubbedTrainerRankings_Increment4Byte
-; Unreferenced in English version.
-TrainerRankings_BattleTowerWins: mobile ; 106035
+Unreferenced_StubbedTrainerRankings_BattleTowerWins: ; 106035
+ ret
ld a, $5
call GetSRAMBank
ld a, [$aa8d]
@@ -253,167 +261,196 @@ TrainerRankings_BattleTowerWins: mobile ; 106035
call CloseSRAM
ret nz
ld hl, sTrainerRankingBattleTowerWins
- jp TrainerRankings_Increment2Byte
+ jp StubbedTrainerRankings_Increment2Byte
-TrainerRankings_TMsHMsTaught: mobile ; 106049
+StubbedTrainerRankings_TMsHMsTaught: ; 106049
+ ret
ld hl, sTrainerRankingTMsHMsTaught
- jp TrainerRankings_Increment3Byte
+ jp StubbedTrainerRankings_Increment3Byte
-TrainerRankings_Battles: mobile ; 106050
+StubbedTrainerRankings_Battles: ; 106050
+ ret
ld a, [BattleType]
cp BATTLETYPE_TUTORIAL ; Exclude the Dude’s tutorial battle
ret z
ld hl, sTrainerRankingBattles
- jp TrainerRankings_Increment3Byte
+ jp StubbedTrainerRankings_Increment3Byte
-TrainerRankings_WildBattles: mobile ; 10605d
+StubbedTrainerRankings_WildBattles: ; 10605d
+ ret
ld a, [BattleType]
cp BATTLETYPE_TUTORIAL ; Exclude the Dude’s tutorial battle
ret z
ld hl, sTrainerRankingWildBattles
- jp TrainerRankings_Increment3Byte
+ jp StubbedTrainerRankings_Increment3Byte
-TrainerRankings_TrainerBattles: mobile ; 10606a
+StubbedTrainerRankings_TrainerBattles: ; 10606a
+ ret
ld hl, sTrainerRankingTrainerBattles
- jp TrainerRankings_Increment3Byte
+ jp StubbedTrainerRankings_Increment3Byte
-TrainerRankings_Unused1: mobile ; 106071
+StubbedTrainerRankings_Unused1: ; 106071
+ ret
ld hl, sTrainerRankingUnused1
- jp TrainerRankings_Increment3Byte
+ jp StubbedTrainerRankings_Increment3Byte
-TrainerRankings_HallOfFame:: mobile ; 0x106078
+StubbedTrainerRankings_HallOfFame:: ; 0x106078
+ ret
ld hl, sTrainerRankingHOFEntries
- jp TrainerRankings_Increment3Byte
+ jp StubbedTrainerRankings_Increment3Byte
-TrainerRankings_WildMonsCaught: mobile ; 10607f (41:607f)
+StubbedTrainerRankings_WildMonsCaught: ; 10607f (41:607f)
+ ret
ld hl, sTrainerRankingWildMonsCaught
- jp TrainerRankings_Increment3Byte
+ jp StubbedTrainerRankings_Increment3Byte
-TrainerRankings_HookedEncounters: mobile ; 106086
+StubbedTrainerRankings_HookedEncounters: ; 106086
+ ret
ld hl, sTrainerRankingHookedEncounters
- jp TrainerRankings_Increment3Byte
+ jp StubbedTrainerRankings_Increment3Byte
-TrainerRankings_EggsHatched: mobile ; 10608d (41:608d)
+StubbedTrainerRankings_EggsHatched: ; 10608d (41:608d)
+ ret
ld hl, sTrainerRankingEggsHatched
- jp TrainerRankings_Increment3Byte
+ jp StubbedTrainerRankings_Increment3Byte
-TrainerRankings_MonsEvolved: mobile ; 106094
+StubbedTrainerRankings_MonsEvolved: ; 106094
+ ret
ld hl, sTrainerRankingMonsEvolved
- jp TrainerRankings_Increment3Byte
+ jp StubbedTrainerRankings_Increment3Byte
-TrainerRankings_FruitPicked: mobile ; 10609b
+StubbedTrainerRankings_FruitPicked: ; 10609b
+ ret
ld hl, sTrainerRankingFruitPicked
- jp TrainerRankings_Increment3Byte
+ jp StubbedTrainerRankings_Increment3Byte
-TrainerRankings_Healings: mobile ; 1060a2
+Special_StubbedTrainerRankings_Healings: ; 1060a2
+ ret
ld hl, sTrainerRankingHealings
- jp TrainerRankings_Increment3Byte
+ jp StubbedTrainerRankings_Increment3Byte
-TrainerRankings_MysteryGift: mobile ; 1060a9 (41:60a9)
+StubbedTrainerRankings_MysteryGift: ; 1060a9 (41:60a9)
+ ret
ld hl, sTrainerRankingMysteryGift
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
-TrainerRankings_Trades: mobile ; 1060af
+StubbedTrainerRankings_Trades: ; 1060af
+ ret
ld hl, sTrainerRankingTrades
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
-TrainerRankings_Fly: mobile ; 1060b5
+StubbedTrainerRankings_Fly: ; 1060b5
+ ret
ld hl, sTrainerRankingFly
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
-TrainerRankings_Surf: mobile ; 1060bb
+StubbedTrainerRankings_Surf: ; 1060bb
+ ret
ld hl, sTrainerRankingSurf
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
-TrainerRankings_Waterfall: mobile ; 1060c1
+StubbedTrainerRankings_Waterfall: ; 1060c1
+ ret
ld hl, sTrainerRankingWaterfall
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
-TrainerRankings_WhiteOuts: mobile ; 1060c7
+StubbedTrainerRankings_WhiteOuts: ; 1060c7
+ ret
ld hl, sTrainerRankingWhiteOuts
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
-TrainerRankings_LuckyNumberShow: mobile ; 1060cd
+StubbedTrainerRankings_LuckyNumberShow: ; 1060cd
+ ret
ld hl, sTrainerRankingLuckyNumberShow
- jr TrainerRankings_Increment2Byte
+ jr StubbedTrainerRankings_Increment2Byte
-TrainerRankings_PhoneCalls: mobile ; 1060d3
+StubbedTrainerRankings_PhoneCalls: ; 1060d3
+ ret
ld hl, sTrainerRankingPhoneCalls
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
-TrainerRankings_Unused2: mobile ; 1060df
+StubbedTrainerRankings_Unused2: ; 1060df
+ ret
ld hl, sTrainerRankingUnused2
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
-TrainerRankings_LinkBattles: mobile ; 1060df
+StubbedTrainerRankings_LinkBattles: ; 1060df
+ ret
ld hl, sTrainerRankingLinkBattles
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
-TrainerRankings_Splash: mobile ; 1060e5
+StubbedTrainerRankings_Splash: ; 1060e5
+ ret
; Only counts if it’s the player’s turn
ld a, [hBattleTurn]
and a
ret nz
ld hl, sTrainerRankingSplash
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
-TrainerRankings_TreeEncounters: mobile ; 1060ef
+StubbedTrainerRankings_TreeEncounters: ; 1060ef
+ ret
ld hl, sTrainerRankingTreeEncounters
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
-TrainerRankings_Unused3: mobile ; 1060f5
+StubbedTrainerRankings_Unused3: ; 1060f5
+ ret
ld hl, sTrainerRankingUnused3
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
-TrainerRankings_ColosseumWins: mobile ; win
+StubbedTrainerRankings_ColosseumWins: ; win
+ ret
ld hl, sTrainerRankingColosseumWins
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
-TrainerRankings_ColosseumLosses: mobile ; lose
+StubbedTrainerRankings_ColosseumLosses: ; lose
+ ret
ld hl, sTrainerRankingColosseumLosses
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
; 106107
-TrainerRankings_ColosseumDraws: mobile ; draw
+StubbedTrainerRankings_ColosseumDraws: ; draw
+ ret
ld hl, sTrainerRankingColosseumDraws
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
; 10610d
; Counts uses of both Selfdestruct and Explosion.
-TrainerRankings_Selfdestruct: mobile ; 10610d
+StubbedTrainerRankings_Selfdestruct: ; 10610d
+ ret
; Only counts if it’s the player’s turn
ld a, [hBattleTurn]
and a
ret nz
ld hl, sTrainerRankingSelfdestruct
- jr TrainerRankings_Increment3Byte
+ jr StubbedTrainerRankings_Increment3Byte
; 106117
-TrainerRankings_Increment4Byte: ; 106117
+StubbedTrainerRankings_Increment4Byte: ; 106117
push bc
ld bc, 3
- jr TrainerRankings_Increment
+ jr StubbedTrainerRankings_Increment
; 10611d
-TrainerRankings_Increment3Byte: ; 10611d
+StubbedTrainerRankings_Increment3Byte: ; 10611d
push bc
ld bc, 2
- jr TrainerRankings_Increment
+ jr StubbedTrainerRankings_Increment
; 106123
-TrainerRankings_Increment2Byte: ; 106123
+StubbedTrainerRankings_Increment2Byte: ; 106123
push bc
ld bc, 1
- jr TrainerRankings_Increment
+ jr StubbedTrainerRankings_Increment
; 106129
; unused
-TrainerRankings_Increment1Byte: ; 106129
+StubbedTrainerRankings_Increment1Byte: ; 106129
push bc
ld bc, 0
; Increments a big-endian value of bc + 1 bytes at hl
-TrainerRankings_Increment: ; 10612d
+StubbedTrainerRankings_Increment: ; 10612d
ld a, BANK(sTrainerRankings)
call GetSRAMBank
push hl
@@ -450,7 +487,8 @@ TrainerRankings_Increment: ; 10612d
; 106155
; Used when SRAM bank 5 isn’t already loaded — what’s the point of this?
-UpdateTrainerRankingsChecksum2: mobile ; 106155
+UpdateTrainerRankingsChecksum2: ; 106155
+ ret
ld a, BANK(sTrainerRankings)
call GetSRAMBank
call UpdateTrainerRankingsChecksum
@@ -520,8 +558,7 @@ RestoreMobileEventIndex: ; 10619d (41:619d)
ret
; 1061b3 (41:61b3)
-; Unreferenced in English version.
-VerifyTrainerRankingsChecksum: ; 1061b3
+Unreferenced_VerifyTrainerRankingsChecksum: ; 1061b3
call CalculateTrainerRankingsChecksum
ld hl, sTrainerRankingsChecksum
ld a, d
@@ -773,15 +810,16 @@ endr
ret
; 10630f
-; functions related to the cable club and various NPC scripts referencing mobile communications
+; functions related to the cable club and various NPC scripts referencing communications
-Mobile_DummyReturnFalse: ; 10630f
+Special_Mobile_DummyReturnFalse: ; 10630f
xor a
ld [ScriptVar], a
ret
; 106314
-MobileFn_106314: mobile ; 106314
+Stubbed_Function106314: ; 106314
+ ret
ld a, $4
call GetSRAMBank
ld a, c
@@ -800,7 +838,7 @@ Mobile_AlwaysReturnNotCarry: ; 10632f
or a
ret
-Function106331: ; 106331 - called by Mobile_DummyReturnFalse in Crystal-J
+Function106331: ; 106331 - called by Special_Mobile_DummyReturnFalse in Crystal-J
; check ~[4:b000] == [7:a800]
ld a, $4
call GetSRAMBank
@@ -960,7 +998,7 @@ Function106403: ; 106403
or c
inc a
ld c, a
- call MobileFn_106314
+ call Stubbed_Function106314
ld a, [wMobileCommsJumptableIndex]
inc a
ld [wMobileCommsJumptableIndex], a
@@ -978,7 +1016,7 @@ Function106403: ; 106403
.asm_106435
ld c, $0
- call MobileFn_106314
+ call Stubbed_Function106314
ld a, [wMobileCommsJumptableIndex]
inc a
ld [wMobileCommsJumptableIndex], a
@@ -1005,21 +1043,22 @@ Function106453: ; 106453
ret
; 106462
-MobileFunc_106462: mobile
+Stubbed_Function106462:
+ ret
ret
; 106464
Function106464:: ; 106464
- ld de, MobilePhoneTilesGFX
- ld hl, vTiles2 tile $60
- lb bc, BANK(MobilePhoneTilesGFX), 1
+ ld de, FontsExtra_SolidBlackGFX
+ ld hl, vTiles2 tile "<BLACK>" ; $60
+ lb bc, BANK(FontsExtra_SolidBlackGFX), 1
call Get2bpp
ld de, FontsExtra2_UpArrowGFX
- ld hl, vTiles2 tile $61
+ ld hl, vTiles2 tile "▲" ; $61
lb bc, BANK(FontsExtra2_UpArrowGFX), 1
call Get2bpp
ld de, GFX_106514
- ld hl, vTiles2 tile $62
+ ld hl, vTiles2 tile "<PHONE>" ; $62
ld c, 9
ld b, BANK(GFX_106514)
call Get2bpp
@@ -1033,17 +1072,17 @@ Function106464:: ; 106464
Function10649b: ; 10649b
ld a, [TextBoxFrame]
- and $7
- ld bc, 3 tiles
+ maskbits NUM_FRAMES +- 1
+ ld bc, 6 * LEN_1BPP_TILE
ld hl, Frames
call AddNTimes
ld d, h
ld e, l
- ld hl, vTiles2 tile $79
- ld c, 6
+ ld hl, vTiles2 tile "┌" ; $79
+ ld c, 6 ; "┌" to "┘"
ld b, BANK(Frames)
call Function1064c3
- ld hl, vTiles2 tile $7f
+ ld hl, vTiles2 tile " " ; $7f
ld de, TextBoxSpaceGFX
ld c, 1
ld b, BANK(TextBoxSpaceGFX)
@@ -1103,8 +1142,8 @@ asm_1064ed
; 10650a
Function10650a: ; 10650a
- ld de, MobilePhoneTilesGFX + $20
- lb bc, BANK(MobilePhoneTilesGFX), $11
+ ld de, MobilePhoneTilesGFX
+ lb bc, BANK(MobilePhoneTilesGFX), 17
call Get2bpp
ret
; 106514
diff --git a/mobile/mobile_42.asm b/mobile/mobile_42.asm
index 4e956229c..146fcf902 100644
--- a/mobile/mobile_42.asm
+++ b/mobile/mobile_42.asm
@@ -181,12 +181,12 @@ Function1080b7: ; 1080b7
ld de, TradeBallGFX
ld hl, vTiles0
- lb bc, BANK(TradeBallGFX), $06
+ lb bc, BANK(TradeBallGFX), 6
call Request2bpp
ld de, TradePoofGFX
ld hl, vTiles0 tile $06
- lb bc, BANK(TradePoofGFX), $0c
+ lb bc, BANK(TradePoofGFX), 12
call Request2bpp
xor a
@@ -290,26 +290,26 @@ MobileTradeAnim_ClearBGMap: ; 1081ca
MobileTradeAnim_GetFrontpic: ; 1081e9
push de
push af
- predef GetUnownLetter
+ predef Predef_GetUnownLetter
pop af
ld [CurPartySpecies], a
ld [CurSpecies], a
call GetBaseData
pop de
- predef GetMonFrontpic
+ predef Predef_GetMonFrontpic
ret
; 108201
Function108201: ; 108201
push de
push af
- predef GetUnownLetter
+ predef Predef_GetUnownLetter
pop af
ld [CurPartySpecies], a
ld [CurSpecies], a
call GetBaseData
pop de
- predef GetAnimatedFrontpicPredef
+ predef Predef_GetAnimatedFrontpic
ret
; 108219
@@ -318,7 +318,7 @@ Function108219: ; 108219
hlcoord 7, 2
ld d, $0
ld e, ANIM_MON_TRADE
- predef AnimateFrontpic
+ predef Predef_AnimateFrontpic
ret
; 108229
@@ -327,7 +327,7 @@ Function108229: ; 108229
hlcoord 7, 2
ld d, $0
ld e, ANIM_MON_TRADE
- predef LoadMonAnimation
+ predef Predef_LoadMonAnimation
ret
; 108239
@@ -361,7 +361,7 @@ MobileTradeAnim_JumptableLoop: ; 10824b
ld [hWY], a
call LoadStandardFont
call LoadFontsBattleExtra
- farcall MobileFunc_106462
+ farcall Stubbed_Function106462
farcall Function106464
scf
ret
@@ -616,11 +616,11 @@ MobileTradeAnim_ShowPlayerMonForGTS: ; 10842c
call DelayFrame
ld de, TradeBallGFX
ld hl, vTiles0
- lb bc, BANK(TradeBallGFX), $06
+ lb bc, BANK(TradeBallGFX), 6
call Request2bpp
ld de, TradePoofGFX
ld hl, vTiles0 tile $06
- lb bc, BANK(TradePoofGFX), $0c
+ lb bc, BANK(TradePoofGFX), 12
call Request2bpp
ld a, [wPlayerTrademonDVs]
ld [TempMonDVs], a
@@ -690,11 +690,11 @@ MobileTradeAnim_ShowOTMonFromGTS: ; 1084d7
call DelayFrame
ld de, TradeBallGFX
ld hl, vTiles0
- lb bc, BANK(TradeBallGFX), $06
+ lb bc, BANK(TradeBallGFX), 6
call Request2bpp
ld de, TradePoofGFX
ld hl, vTiles0 tile $06
- lb bc, BANK(TradePoofGFX), $0c
+ lb bc, BANK(TradePoofGFX), 12
call Request2bpp
xor a
ld [hSCX], a
@@ -759,11 +759,11 @@ MobileTradeAnim_GetOddEgg: ; 108589
call DelayFrame
ld de, TradeBallGFX
ld hl, vTiles0
- lb bc, BANK(TradeBallGFX), $06
+ lb bc, BANK(TradeBallGFX), 6
call Request2bpp
ld de, TradePoofGFX
ld hl, vTiles0 tile $06
- lb bc, BANK(TradePoofGFX), $0c
+ lb bc, BANK(TradePoofGFX), 12
call Request2bpp
xor a
ld [hSCX], a
@@ -959,7 +959,7 @@ MobileTradeAnim_GiveTrademon1: ; 108763
cp $f8
jr nz, .next
depixel 10, 11, 4, 0
- ld a, SPRITE_ANIM_INDEX_MOBILE_22
+ ld a, SPRITE_ANIM_INDEX_MOBILE_TRADE_CABLE_BULGE
call _InitSpriteAnimStruct
.next
@@ -984,7 +984,7 @@ MobileTradeAnim_GiveTrademon1: ; 108763
.init
depixel 10, 11, 4, 0
- ld a, SPRITE_ANIM_INDEX_MOBILE_22
+ ld a, SPRITE_ANIM_INDEX_MOBILE_TRADE_CABLE_BULGE
call _InitSpriteAnimStruct
xor a
call Function108ad4
@@ -1015,7 +1015,7 @@ MobileTradeAnim_GiveTrademon2: ; 1087cf
call Function108af4
call Function108b5a
depixel 9, 10, 2, 0
- ld a, SPRITE_ANIM_INDEX_MOBILE_25
+ ld a, SPRITE_ANIM_INDEX_MOBILE_TRADE_PING
call _InitSpriteAnimStruct
ld de, SFX_FORESIGHT
call PlaySFX
@@ -1024,7 +1024,7 @@ MobileTradeAnim_GiveTrademon2: ; 1087cf
xor a
ld [wcf64], a
depixel 9, 10, 2, 0
- ld a, SPRITE_ANIM_INDEX_MOBILE_23
+ ld a, SPRITE_ANIM_INDEX_MOBILE_TRADE_SENT_PULSE
call _InitSpriteAnimStruct
.loop
ld a, [hSCY]
@@ -1051,7 +1051,7 @@ MobileTradeAnim_05: ; 108811
ld c, 60
call WaitMobileTradeSpriteAnims
depixel 30, 10, 2, 0
- ld a, SPRITE_ANIM_INDEX_MOBILE_24
+ ld a, SPRITE_ANIM_INDEX_MOBILE_TRADE_OT_PULSE
call _InitSpriteAnimStruct
call GetMobileTradeAnimByte
ld de, SFX_THROW_BALL
@@ -1074,7 +1074,7 @@ MobileTradeAnim_07: ; 10884c
ld c, 80
call DelayFrames
depixel 30, 10, 2, 0
- ld a, SPRITE_ANIM_INDEX_MOBILE_24
+ ld a, SPRITE_ANIM_INDEX_MOBILE_TRADE_OT_PULSE
call _InitSpriteAnimStruct
call GetMobileTradeAnimByte
ld de, SFX_THROW_BALL
@@ -1098,7 +1098,7 @@ MobileTradeAnim_GetTrademon1: ; 108863
.done
farcall DeinitializeAllSprites
depixel 9, 10, 2, 0
- ld a, SPRITE_ANIM_INDEX_MOBILE_25
+ ld a, SPRITE_ANIM_INDEX_MOBILE_TRADE_PING
call _InitSpriteAnimStruct
ld de, SFX_GLASS_TING_2
call PlaySFX
@@ -1134,13 +1134,13 @@ MobileTradeAnim_GetTrademon2: ; 108894
.asm_1088c5
depixel 10, 11, 4, 0
- ld a, SPRITE_ANIM_INDEX_MOBILE_22
+ ld a, SPRITE_ANIM_INDEX_MOBILE_TRADE_CABLE_BULGE
call _InitSpriteAnimStruct
jr .asm_1088e7
.asm_1088cf
depixel 10, 11, 4, 0
- ld a, SPRITE_ANIM_INDEX_MOBILE_22
+ ld a, SPRITE_ANIM_INDEX_MOBILE_TRADE_CABLE_BULGE
call _InitSpriteAnimStruct
xor a
call Function108ad4
@@ -1238,7 +1238,7 @@ asm_108966
xor a
ld [hGraphicStartTile], a
lb bc, 7, 7
- predef PlaceGraphic
+ predef Predef_PlaceGraphic
call WaitBGMap
ret
; 10898a
@@ -1252,7 +1252,7 @@ Function10898a: ; 10898a
xor a
ld [hGraphicStartTile], a
lb bc, 7, 7
- predef PlaceGraphic
+ predef Predef_PlaceGraphic
call WaitBGMap
ret
; 1089a8
@@ -1825,7 +1825,7 @@ LZ_1090a7:
INCBIN "gfx/unknown/1090a7.tilemap.lz"
Palette_1090f7:
-; unreferenced
+; unused
RGB 31, 31, 31
RGB 0, 0, 0
diff --git a/mobile/mobile_45.asm b/mobile/mobile_45.asm
index 811a27592..fb9c12c13 100644
--- a/mobile/mobile_45.asm
+++ b/mobile/mobile_45.asm
@@ -61,7 +61,7 @@ String_114163: ; 114163
; 114165
Jumptable_114165: ; 114165
- dw Function114268
+ dw Stubbed_Function114268
dw Function114269
dw Function11433c
dw Function1143b7
@@ -159,7 +159,8 @@ Function11425c: ; 11425c
; 114268
-Function114268: mobile
+Stubbed_Function114268:
+ ret
; 114269
@@ -5844,7 +5845,7 @@ Unknown_116815: ; 116815
db $c, $5
db $9, $8
db $8, $4
- db $ff
+ db -1 ; end
Unknown_11683e: ; 11683e
db $fd, $20
@@ -5867,7 +5868,7 @@ Unknown_11683e: ; 11683e
db $12, $5
db $f, $8
db $e, $4
- db $ff
+ db -1 ; end
Unknown_116867: ; 116867
db $14, $8
@@ -5910,7 +5911,7 @@ Unknown_116881: ; 116881
db $fd, $2
db $23, $2
db $fd, $40
- db $ff
+ db -1 ; end
Unknown_1168ae: ; 1168ae
db $24, $4
@@ -7298,16 +7299,14 @@ Function1179a7: ; 1179a7 (45:79a7)
MenuDataHeader_1179b5: ; 1179b5
db MENU_BACKUP_TILES ; flags
- db 12, 0 ; start coords
- db 17, 19 ; end coords
+ menu_coords 0, 12, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
dw NULL
db 0 ; default option
; 1179bd
MenuDataHeader_1179bd: ; 1179bd
db MENU_BACKUP_TILES ; flags
- db 7, 14 ; start coords
- db 11, 19 ; end coords
+ menu_coords 14, 7, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
dw NULL
db 0 ; default option
; 1179c5
@@ -7350,7 +7349,7 @@ INCBIN "data/mobile/ascii-sym.txt"
; everything from here to the end of the bank is related to the
; Mobile Stadium option from the continue/newgame menu.
-; XXX better function names
+; Needs better function names
MobileStudium: ; 0x117a7f
ld a, [hInMenu]
push af
@@ -7659,17 +7658,15 @@ Function117c89:
MenuDataHeader_117cbc: ; 0x117cbc
db MENU_BACKUP_TILES ; flags
- db 12, 0 ; start coords
- db 17, 19 ; end coords
- dw NULL ; menu data 2
- db 0 ; default option
+ menu_coords 0, 12, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
+ dw NULL
+ db 0 ; default option
MenuDataHeader_117cc4: ; 0x117cc4
db MENU_BACKUP_TILES ; flags
- db 7, 14 ; start coords
- db 11, 19 ; end coords
- dw NULL ; menu data 2
- db 0 ; default item
+ menu_coords 14, 7, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
+ dw NULL
+ db 0 ; default item
YesNo117ccc: ; 0x117ccc
db "はい"
diff --git a/mobile/mobile_45_sprite_engine.asm b/mobile/mobile_45_sprite_engine.asm
index 4ddc2b13a..8f66da8cd 100755
--- a/mobile/mobile_45_sprite_engine.asm
+++ b/mobile/mobile_45_sprite_engine.asm
@@ -1,7 +1,7 @@
Function115d99: ; 115d99
ld de, GFX_11601a
ld hl, vTiles0 tile $60
- lb bc, BANK(GFX_11601a), $14
+ lb bc, BANK(GFX_11601a), 20
call Get2bpp
xor a
ld [wc305], a
@@ -22,8 +22,8 @@ Function115dc3: ; 115dc3
xor a
ld [wc305], a
ld a, $a0
- ld hl, Sprites + 31 * 4
- ld bc, 8 * 4
+ ld hl, Sprite32
+ ld bc, 8 * SPRITEOAMSTRUCT_LENGTH
call ByteFill
ret
@@ -34,8 +34,8 @@ Function115dd3: ; 115dd3
and a
ret z
ld a, $a0
- ld hl, Sprites + 31 * 4
- ld bc, 8 * 4
+ ld hl, Sprite32
+ ld bc, 8 * SPRITEOAMSTRUCT_LENGTH
call ByteFill
call Function115e22
ld a, [wc309]
@@ -50,7 +50,7 @@ Function115dd3: ; 115dd3
ld d, a
push de
pop hl
- ld de, Sprites + 31 * 4
+ ld de, Sprite32
ld a, [wc307]
ld c, a
ld a, [wc308]
@@ -60,17 +60,17 @@ Function115dd3: ; 115dd3
push af
ld a, [hli]
add b
- ld [de], a
+ ld [de], a ; y
inc de
ld a, [hli]
add c
- ld [de], a
+ ld [de], a ; x
inc de
ld a, [hli]
- ld [de], a
+ ld [de], a ; tile id
inc de
ld a, [hli]
- ld [de], a
+ ld [de], a ; attributes
inc de
pop af
dec a
@@ -361,7 +361,7 @@ Function11619d: ; 11619d
jr c, .asm_1161b4
ld a, $a0
ld hl, Sprites
- ld bc, $0064
+ ld bc, 25 * SPRITEOAMSTRUCT_LENGTH
call ByteFill
.asm_1161b4
@@ -508,8 +508,7 @@ Function1161d5: ; 1161d5
MenuDataHeader_11628c: ; 11628c
db MENU_BACKUP_TILES ; flags
- db 6, 0 ; start coords
- db 17, 19 ; end coords
+ menu_coords 0, 6, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
dw NULL
db 0 ; default option
; 116294
@@ -586,22 +585,22 @@ Function1162f2: ; 1162f2
ld e, a
ld a, [hli]
sub e
- ld de, Sprites + $24
+ ld de, Sprite10
.asm_116321
push af
ld a, [hli]
add b
- ld [de], a
+ ld [de], a ; y
inc de
ld a, [hli]
add c
- ld [de], a
+ ld [de], a ; x
inc de
ld a, [hli]
- ld [de], a
+ ld [de], a ; tile id
inc de
ld a, [hli]
- ld [de], a
+ ld [de], a ; attributes
inc de
pop af
dec a
@@ -627,22 +626,22 @@ Function1162f2: ; 1162f2
ld e, a
ld a, [hli]
sub e
- ld de, Sprites
+ ld de, Sprite01
.asm_11635a
push af
ld a, [hli]
add b
- ld [de], a
+ ld [de], a ; y
inc de
ld a, [hli]
add c
- ld [de], a
+ ld [de], a ; x
inc de
ld a, [hli]
- ld [de], a
+ ld [de], a ; tile id
inc de
ld a, [hli]
- ld [de], a
+ ld [de], a ; attributes
inc de
pop af
dec a
@@ -669,7 +668,7 @@ Function11636e: ; 11636e
ld [rSVBK], a
ld a, $a0
ld hl, Sprites
- ld bc, 16 * 4
+ ld bc, 16 * SPRITEOAMSTRUCT_LENGTH
call ByteFill
ld a, $90
ld [hWY], a
@@ -697,7 +696,7 @@ Function1163c0: ; 1163c0
ld [rSVBK], a
ld a, $a0
ld hl, Sprites
- ld bc, 16 * 4
+ ld bc, 16 * SPRITEOAMSTRUCT_LENGTH
call ByteFill
call DelayFrame
farcall Function14146
diff --git a/mobile/mobile_46.asm b/mobile/mobile_46.asm
index 31eda9b6a..45a20d3fe 100755
--- a/mobile/mobile_46.asm
+++ b/mobile/mobile_46.asm
@@ -487,7 +487,7 @@ BattleTowerRoomMenu_InitRAM: ; 1183cb
ld [hMobileReceive], a
ld [hMobile], a
ei
- farcall MobileFunc_106462
+ farcall Stubbed_Function106462
farcall Function106464
farcall Function115d99
farcall Function11615a
@@ -1559,8 +1559,7 @@ IndexDownloadURL: ; 0x118ce5
db "http://gameboy.datacenter.ne.jp/cgb/download?name=/01/CGB-BXTJ/tamago/index.txt", 0
-Function118d35: ; 118d35
-; unreferenced
+Unreferenced_Function118d35: ; 118d35
ld hl, $d200
ld a, [wcd38]
and a
@@ -1673,7 +1672,7 @@ Function118ded: ; 118ded
push af
ld a, $1
ld [rSVBK], a
- farcall Function11b93b
+ farcall Special_Function11b93b
pop af
ld [rSVBK], a
@@ -2602,7 +2601,7 @@ Function119413: ; 119413
jr z, .asm_119447
ld a, $6
ld [rSVBK], a
- ld a, [wd000]
+ ld a, [w3_d000]
ld c, a
ld a, [w3_d000 + 1]
ld b, a
@@ -3539,11 +3538,11 @@ Function1199e2: ; 1199e2
ld [w3_d8a1], a
ld [w3_d8a2], a
ld [w3_d8a3], a
- ld hl, $d8a0
+ ld hl, w3_d8a0
ld bc, $d889
call Function119e98
call Function119e98
- ld hl, $d8a0
+ ld hl, w3_d8a0
ld a, [wcd2d]
cp [hl]
jr nz, Function119ac9
@@ -3564,12 +3563,12 @@ Function1199e2: ; 1199e2
ld [w3_d8a1], a
ld [w3_d8a2], a
ld [w3_d8a3], a
- ld hl, $d8a0
+ ld hl, w3_d8a0
ld bc, $d88e
call Function119e98
ld bc, $d893
call Function119e98
- ld hl, $d8a0
+ ld hl, w3_d8a0
ld a, [wcd2f]
cp [hl]
jr nz, .asm_119aa7
@@ -3956,16 +3955,14 @@ BattleTowerRoomMenu_UpdateYesNoMenu:
MenuDataHeader_119cf7: ; 119cf7
db MENU_BACKUP_TILES ; flags
- db 7, 12 ; start coords
- db 11, 19 ; end coords
+ menu_coords 12, 7, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
dw NULL
db 0 ; default option
; 119cff
MenuData_119cff: ; 119cff
db MENU_BACKUP_TILES ; flags
- db 7, 15 ; start coords
- db 11, 19 ; end coords
+ menu_coords 15, 7, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
dw NULL
db 0 ; default option
; 119d07
@@ -4462,7 +4459,7 @@ Function11a00e: ; 11a00e
call PushWindow
farcall Function11765d
farcall Function117ab4
- farcall MobileFunc_106462
+ farcall Stubbed_Function106462
farcall Function106464
call ExitMenu
farcall ReloadMapPart
@@ -4485,7 +4482,7 @@ Function11a0ca: ; 11a0ca
call PushWindow
farcall Function11765d
farcall Function17d3f6
- farcall MobileFunc_106462
+ farcall Stubbed_Function106462
farcall Function106464
call ExitMenu
farcall ReloadMapPart
@@ -4758,16 +4755,14 @@ String_11a2d3: ; 11a2d3
MenuDataHeader_11a2d6: ; 11a2d6
db MENU_BACKUP_TILES ; flags
- db 6, 14 ; start coords
- db 10, 19 ; end coords
+ menu_coords 14, 6, SCREEN_WIDTH - 1, 10
dw NULL
db 0 ; default option
; 11a2de
MenuDataHeader_11a2de: ; 11a2de
db MENU_BACKUP_TILES ; flags
- db 7, 14 ; start coords
- db 11, 19 ; end coords
+ menu_coords 14, 7, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
dw NULL
db 0 ; default option
; 11a2e6
@@ -5330,8 +5325,7 @@ String_11a7f4: ; 11a7f4
MenuDataHeader_11a804: ; 11a804
db MENU_BACKUP_TILES ; flags
- db 0, 0 ; start coords
- db 5, 19 ; end coords
+ menu_coords 0, 0, SCREEN_WIDTH - 1, 5
dw NULL
db 0 ; default option
; 11a80c
@@ -5578,7 +5572,7 @@ Function11a9ce: ; 11a9ce
call ClearBGPalettes
call ReloadTilesetAndPalettes
call Call_ExitMenu
- farcall MobileFunc_106462
+ farcall Stubbed_Function106462
farcall Function106464
call ret_d90
farcall FinishExitMenu
@@ -5730,7 +5724,7 @@ Text_ThisBattleRoomPleaseWait: ; 0x11ac1f
done
; 0x11ac3e
-Function11ac3e: ; 11ac3e
+Special_Function11ac3e: ; 11ac3e
call SpeechTextBox
call FadeToMenu
callfar ClearSpriteAnims2
@@ -6002,8 +5996,7 @@ Function11adc4:
MenuDataHeader_11ae38: ; 11ae38
db MENU_BACKUP_TILES ; flags
- db 10, 10 ; start coords
- db 17, 17 ; end coords
+ menu_coords 10, 10, 17, SCREEN_HEIGHT - 1
dw NULL
db 0 ; default option
; 11ae40
@@ -6249,8 +6242,7 @@ Function11afd6: ; 11afd6
MenuDataHeader_11afe8: ; 11afe8
db MENU_BACKUP_TILES ; flags
- db 12, 9 ; start coords
- db 17, 19 ; end coords
+ menu_coords 9, 12, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
dw NULL
db 0 ; default option
; 11aff0
@@ -6267,8 +6259,7 @@ String_11b003: ; 11b003
MenuDataHeader_11b013: ; 11b013
db MENU_BACKUP_TILES ; flags
- db 7, 14 ; start coords
- db 11, 19 ; end coords
+ menu_coords 14, 7, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
dw NULL
db 1 ; default option
; 11b01b
@@ -6697,7 +6688,7 @@ Function11b242: ; 11b242
call PlaceString
xor a
ld [MonType], a
- farcall GetGender
+ farcall Predef_GetGender
hlcoord 1, 4
ld a, [CurPartySpecies]
ld bc, wcd2f
@@ -6930,7 +6921,7 @@ Function11b31b: ; 11b31b
db $39 ; 13
Function11b397: ; 11b397
- ld de, Sprites
+ ld de, Sprite01
.loop
ld a, [hl]
cp $ff
@@ -6939,26 +6930,25 @@ Function11b397: ; 11b397
and $7
swap a
add [hl]
- inc hl ; 1
- ld [de], a
+ inc hl
+ ld [de], a ; y
inc de
- ld a, [hli] ; 2
- ld [de], a
+ ld a, [hli]
+ ld [de], a ; x
inc de
ld a, [bc]
inc bc
- ld [de], a
+ ld [de], a ; tile id
inc de
- ld a, $5 ; OBPal 5
- ld [de], a
+ ld a, $5
+ ld [de], a ; attributes
inc de
jr .loop
; 11b3b6
-Function11b3b6: ; 11b3b6
-; unreferenced
+Unreferenced_Function11b3b6: ; 11b3b6
.loop
ld a, [hl]
cp -1
@@ -6989,7 +6979,7 @@ Function11b3b6: ; 11b3b6
; 11b3d9
Function11b3d9: ; 11b3d9
- ld de, Sprites + 28 * 4
+ ld de, Sprite29
push de
ld a, [wc7d2]
dec a
@@ -7062,7 +7052,7 @@ Function11b3d9: ; 11b3d9
ret
; 11b444
-Function11b444: ; 11b444
+Special_Function11b444: ; 11b444
; special
call Mobile46_InitJumptable
call Mobile46_RunJumptable
@@ -7156,7 +7146,7 @@ Function11b483: ; 11b483
pop de
push de
ld b, OTPARTYMON
- predef CalcPkmnStats
+ predef Predef_CalcPkmnStats
pop de
ld h, d
ld l, e
@@ -7223,7 +7213,7 @@ Function11b483: ; 11b483
jr .loop8
.okay4
- ld a, $0 ; BANK(sPartyMail)
+ ld a, BANK(sPartyMail)
call GetSRAMBank
ld a, MAIL_STRUCT_LENGTH
.loop9
@@ -7351,7 +7341,7 @@ Function11b5e7: ; 11b5e7
ret
; 11b5e8
-Function11b5e8: ; 11b5e8
+Special_Function11b5e8: ; 11b5e8
ld a, $0
call GetSRAMBank
ld hl, wRTC
@@ -7575,7 +7565,7 @@ Function11b6b4: ; 11b6b4
ld hl, $c60d + MON_STAT_EXP - 1
ld de, $c60d + MON_MAXHP
ld b, $1
- predef CalcPkmnStats
+ predef Predef_CalcPkmnStats
ld de, $c60d + MON_MAXHP
ld hl, $c60d + MON_HP
ld a, [de]
@@ -7587,7 +7577,7 @@ Function11b6b4: ; 11b6b4
ret
; 11b7e5
-Function11b7e5: ; 11b7e5
+Special_Function11b7e5: ; 11b7e5
ld a, [$c60d] ; species
ld [wOTTrademonSpecies], a
ld [CurPartySpecies], a
@@ -7646,7 +7636,7 @@ Function11b7e5: ; 11b7e5
ret
; 11b879
-Function11b879: ; 11b879
+Special_Function11b879: ; 11b879
farcall BattleTower_CheckSaveFileExistsAndIsYours
ld a, [ScriptVar]
and a
@@ -7739,7 +7729,7 @@ Function11b879: ; 11b879
ret
; 11b920
-Function11b920: ; 11b920
+Special_Function11b920: ; 11b920
call Mobile46_InitJumptable
ld a, $5
call GetSRAMBank
@@ -7752,7 +7742,7 @@ Function11b920: ; 11b920
ret
; 11b93b
-Function11b93b: ; 11b93b
+Special_Function11b93b: ; 11b93b
ld a, $5
call GetSRAMBank
xor a
@@ -7896,7 +7886,7 @@ AddMobileMonToParty: ; 11b98f
ret
; 11ba38
-Function11ba38: ; 11ba38
+Special_Function11ba38: ; 11ba38
farcall CheckCurPartyMonFainted
ret c
xor a
diff --git a/mobile/mobile_5b.asm b/mobile/mobile_5b.asm
index f16391871..a1e8dac8a 100755
--- a/mobile/mobile_5b.asm
+++ b/mobile/mobile_5b.asm
@@ -1,5 +1,4 @@
-Function16c000: ; 16c000
-; unreferenced
+Unreferenced_Function16c000: ; 16c000
; Only for CGB
ld a, [hCGB]
and a
@@ -172,7 +171,7 @@ MobileSystemSplashScreen_InitGFX: ; 16c108
call DisableLCD
ld hl, vTiles2
ld de, .Tiles
- lb bc, BANK(.Tiles), $68
+ lb bc, BANK(.Tiles), 104
call Get2bpp
call .LoadPals
call .LoadTileMap
@@ -710,7 +709,7 @@ Function16cc02: ; 16cc02
Function16cc18: ; 16cc18
ld hl, vTiles1
ld de, GFX_16cca3
- lb bc, BANK(GFX_16cca3), $2e
+ lb bc, BANK(GFX_16cca3), 46
call Get2bpp
ret
; 16cc25
diff --git a/mobile/mobile_5c.asm b/mobile/mobile_5c.asm
index b9b368e1f..993105f63 100755
--- a/mobile/mobile_5c.asm
+++ b/mobile/mobile_5c.asm
@@ -75,7 +75,7 @@ Function17005a: ; 17005a
; 1700b0
-INCLUDE "mobile/battle_tower_5c.asm"
+INCLUDE "engine/events/battle_tower/battle_tower.asm"
Function170be4: ; 170be4
ld a, $5
@@ -296,7 +296,7 @@ Function170d02: ; 170d02
ld [rVBK], a
ld de, GFX_171848
ld hl, vTiles1 tile $41
- lb bc, BANK(GFX_171848), $18
+ lb bc, BANK(GFX_171848), 24
call Get2bpp
xor a
ld [rVBK], a
@@ -514,7 +514,7 @@ Function171b42: ; 171b42 (5c:5b42)
Function171b4b: ; 171b4b (5c:5b4b)
depixel 8, 2
- ld a, SPRITE_ANIM_INDEX_1D
+ ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call _InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
@@ -522,7 +522,7 @@ Function171b4b: ; 171b4b (5c:5b4b)
ld [hl], a
depixel 8, 19
- ld a, SPRITE_ANIM_INDEX_1D
+ ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call _InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
@@ -530,7 +530,7 @@ Function171b4b: ; 171b4b (5c:5b4b)
ld [hl], a
depixel 17, 14, 2, 0
- ld a, SPRITE_ANIM_INDEX_1D
+ ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call _InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
@@ -654,7 +654,7 @@ Function171c41: ; 171c41 (5c:5c41)
dec [hl]
ret nz
call ClearBGPalettes
- farcall MobileFunc_106462
+ farcall Stubbed_Function106462
farcall Function106464
ld a, $2
ld [wc303], a
@@ -673,8 +673,7 @@ Function171c66: ; 171c66 (5c:5c66)
MenuDataHeader_171c6b: ; 171c6b
db MENU_BACKUP_TILES ; flags
- db 12, 0 ; start coords
- db 17, 19 ; end coords
+ menu_coords 0, 12, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
dw NULL
db 0 ; default option
; 171c73
@@ -936,7 +935,7 @@ GameBoyN64GFX:
INCBIN "gfx/trade/game_boy_n64.2bpp"
Tilemap_1733af:
-if DEF(CRYSTAL11)
+if DEF(_CRYSTAL11)
INCBIN "gfx/unknown/1733af_corrupt.tilemap"
else
INCBIN "gfx/unknown/1733af.tilemap"
diff --git a/mobile/mobile_5f.asm b/mobile/mobile_5f.asm
index a4861be28..2652b6f10 100644
--- a/mobile/mobile_5f.asm
+++ b/mobile/mobile_5f.asm
@@ -44,7 +44,7 @@ Function17c000: ; 17c000
ld a, [rSVBK]
push af
- ld a, 5 ; BANK(wBGPals1)
+ ld a, BANK(wBGPals1)
ld [rSVBK], a
ld hl, HaveWantPals
@@ -412,7 +412,7 @@ Function17d1f1: ; 17d1f1
dec a
ld bc, PARTYMON_STRUCT_LENGTH
call AddNTimes
- predef GetUnownLetter
+ predef Predef_GetUnownLetter
callfar UpdateUnownDex
ld a, [wFirstUnownSeen]
and a
@@ -429,10 +429,10 @@ Function17d1f1: ; 17d1f1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Parameter: [ScriptVar] = 0..1
;
-; if [ScriptVar] == 0
+; if [ScriptVar] == FALSE
; Show japanese menu options
; - News - News - ??? - Cancel
-; if [ScriptVar] == 1
+; if [ScriptVar] == TRUE
; Show BattleTower-Menu with 3 options in english language
; - Challenge - Explanation - Cancel
Special_Menu_ChallengeExplanationCancel: ; 17d224
@@ -484,8 +484,7 @@ Function17d246: ; 17d246
MenuDataHeader_17d26a: ; 17d26a
db MENU_BACKUP_TILES ; flags
- db 0, 0 ; start coords
- db 9, 14 ; end coords
+ menu_coords 0, 0, 14, 9
dw MenuData2_17d272
db 1 ; default option
@@ -500,8 +499,7 @@ MenuData2_17d272: ; 17d272
MenuDataHeader_ChallengeExplanationCancel: ; 17d28f
db MENU_BACKUP_TILES ; flags
- db 0, 0 ; start coords
- db 7, 14 ; end coords
+ menu_coords 0, 0, 14, 7
dw MenuData2_ChallengeExplanationCancel
db 1 ; default option
@@ -513,7 +511,7 @@ MenuData2_ChallengeExplanationCancel: ; 17d297
db "Cancel@"
; 17d2b6
-Function17d2b6: ; 17d2b6
+Special_Function17d2b6: ; 17d2b6
call Function17d2c0
farcall Function1181da
ret
@@ -528,7 +526,7 @@ Function17d2c0: ; 17d2c0
ret
; 17d2ce
-Function17d2ce: ; 17d2ce
+Special_Function17d2ce: ; 17d2ce
ld a, $5
call GetSRAMBank
ld a, [$aa72]
@@ -620,8 +618,8 @@ Function17d314: ; 17d314
Function17d370: ; 17d370
xor a
ld [wcd77], a
- ld [wcd78], a
- ld [wcd79], a
+ ld [wMobileCrashCheckPointer], a
+ ld [wMobileCrashCheckPointer + 1], a
dec a
ld [wcd6c], a
call ClearBGPalettes
@@ -958,9 +956,9 @@ Function17d5c4:
ld h, a
add hl, bc
ld a, l
- ld [wcd78], a
+ ld [wMobileCrashCheckPointer], a
ld a, h
- ld [wcd79], a
+ ld [wMobileCrashCheckPointer + 1], a
ld a, $3
ld [wcd77], a
ret
@@ -1122,9 +1120,9 @@ Function17d6fd: ; 17d6fd
ld a, [wcd77]
bit 7, a
jr nz, asm_17d721
- ld a, [wcd78]
+ ld a, [wMobileCrashCheckPointer]
ld l, a
- ld a, [wcd79]
+ ld a, [wMobileCrashCheckPointer + 1]
ld h, a
ld a, [hl]
cp $ff
@@ -1193,11 +1191,11 @@ Jumptable17d72a: ; 17d72a
dw Function17e27f
dw Function17e293
dw Function17e2a7
- dw Function17e367
- dw Function17e37e
- dw Function17e395
- dw Function17e3ac
- dw Function17e3c3
+ dw IncCrashCheckPointer_SaveGameData
+ dw IncCrashCheckPointer_SaveAfterLinkTrade
+ dw IncCrashCheckPointer_SaveBox
+ dw IncCrashCheckPointer_SaveChecksum
+ dw IncCrashCheckPointer_SaveTrainerRankingsChecksum
dw Function17e3e0
dw Function17e3f0
dw Function17e409
@@ -1208,12 +1206,12 @@ Function17d78c: ; 17d78c
; 17d78d
Function17d78d: ; 17d78d
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld c, a
ld a, [hli]
ld b, a
- call Function17e41e
+ call HlToCrashCheckPointer
ld a, $6
call GetSRAMBank
ld hl, $a006
@@ -1229,40 +1227,40 @@ Function17d78d: ; 17d78d
; 17d7b4
Function17d7b4: ; 17d7b4
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld e, a
ld d, $0
call PlayMusic2
- call Function17e41e
+ call HlToCrashCheckPointer
ret
; 17d7c2
Function17d7c2: ; 17d7c2
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld e, a
ld d, $0
call PlaySFX
call WaitSFX
- call Function17e41e
+ call HlToCrashCheckPointer
ret
; 17d7d3
Function17d7d3: ; 17d7d3
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
dec a
ld e, a
ld d, $0
call PlayCryHeader
call WaitSFX
- call Function17e41e
+ call HlToCrashCheckPointer
ret
; 17d7e5
Function17d7e5: ; 17d7e5
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld [wcd4f], a
ld a, [hli]
@@ -1283,12 +1281,12 @@ Function17d7e5: ; 17d7e5
ld [wcd53], a
ld de, wcd4f
call Function17e691
- call Function17e41e
+ call HlToCrashCheckPointer
ret
; 17d818
Function17d818: ; 17d818
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld c, a
ld a, [hli]
@@ -1297,7 +1295,7 @@ Function17d818: ; 17d818
ld e, a
ld a, [hli]
ld d, a
- call Function17e41e
+ call HlToCrashCheckPointer
call Function17e447
ld e, l
ld d, h
@@ -1308,7 +1306,7 @@ Function17d818: ; 17d818
; 17d833
Function17d833: ; 17d833
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld e, a
ld a, [hli]
@@ -1317,7 +1315,7 @@ Function17d833: ; 17d833
ld c, a
ld a, [hli]
ld b, a
- call Function17e41e
+ call HlToCrashCheckPointer
push de
push bc
call Function17e32b
@@ -1336,7 +1334,7 @@ Function17d833: ; 17d833
; 17d85d
Function17d85d: ; 17d85d
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld e, a
ld a, [hli]
@@ -1406,7 +1404,7 @@ Function17d85d: ; 17d85d
jr .asm_17d878
.asm_17d8c7
- call Function17e41e
+ call HlToCrashCheckPointer
push bc
ld a, $3
ld [rSVBK], a
@@ -1437,13 +1435,13 @@ Function17d85d: ; 17d85d
; 17d902
Function17d902: ; 17d902
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld e, a
ld a, [hli]
ld d, a
push de
- call Function17e41e
+ call HlToCrashCheckPointer
call Function17e32b
pop de
ld hl, wBGPals1
@@ -1472,11 +1470,11 @@ Function17d902: ; 17d902
; 17d93a
Function17d93a: ; 17d93a
- call Function17e415
+ call IncCrashCheckPointer
ld de, $c708
ld bc, $5
call CopyBytes
- call Function17e41e
+ call HlToCrashCheckPointer
call Function17e32b
ld a, [rSVBK]
push af
@@ -1500,7 +1498,7 @@ Function17d93a: ; 17d93a
add hl, de
ld e, l
ld d, h
- farcall HOF_AnimateFrontpic
+ farcall HOF_Predef_AnimateFrontpic
pop af
ld [rSVBK], a
call Function17e349
@@ -1508,11 +1506,11 @@ Function17d93a: ; 17d93a
; 17d98b
Function17d98b: ; 17d98b
- call Function17e415
+ call IncCrashCheckPointer
ld de, $c708
ld bc, $4
call CopyBytes
- call Function17e41e
+ call HlToCrashCheckPointer
call Function17e32b
ld a, [rSVBK]
push af
@@ -1532,12 +1530,12 @@ Function17d98b: ; 17d98b
ld d, a
push de
ld de, vTiles2
- farcall GetTrainerPic
+ farcall Predef_GetTrainerPic
pop hl
decoord 0, 0
add hl, de
ld bc, $707
- predef PlaceGraphic
+ predef Predef_PlaceGraphic
pop af
ld [rSVBK], a
call Function17e349
@@ -1545,11 +1543,11 @@ Function17d98b: ; 17d98b
; 17d9e3
Function17d9e3: ; 17d9e3
- call Function17e415
+ call IncCrashCheckPointer
ld de, $c708
ld bc, $7
call CopyBytes
- call Function17e41e
+ call HlToCrashCheckPointer
ld a, [$c70b]
push af
cp $c0
@@ -1591,11 +1589,11 @@ Function17d9e3: ; 17d9e3
; 17da31
Function17da31: ; 17da31
- call Function17e415
+ call IncCrashCheckPointer
ld de, $c708
ld bc, $4
call CopyBytes
- call Function17e41e
+ call HlToCrashCheckPointer
ld a, [$c709]
push af
cp $c0
@@ -1681,7 +1679,7 @@ Function17da9c: ; 17da9c
call Function17e55b
call Function17e5af
.asm_17daba
- jp Function17e415
+ jp IncCrashCheckPointer
.asm_17dabd
ld a, [wcd2f]
@@ -1723,7 +1721,7 @@ Function17dadc: ; 17dadc
call Function17e5af
.asm_17db0e
- jp Function17e415
+ jp IncCrashCheckPointer
.asm_17db11
ld hl, wcd24
@@ -1758,7 +1756,7 @@ Function17db2d: ; 17db2d
call Function17e5af
.asm_17db53
- jp Function17e415
+ jp IncCrashCheckPointer
; 17db56
Function17db56: ; 17db56
@@ -1776,7 +1774,7 @@ Function17db56: ; 17db56
call Function17e5af
.asm_17db74
- jp Function17e415
+ jp IncCrashCheckPointer
; 17db77
Function17db77: ; 17db77
@@ -1808,7 +1806,7 @@ Function17db77: ; 17db77
call Function17e5af
.asm_17dbae
- jp Function17e415
+ jp IncCrashCheckPointer
; 17dbb1
Function17dbb1: ; 17dbb1
@@ -1878,11 +1876,11 @@ Function17dbe9: ; 17dbe9
call Function17e451
call Function17e55b
call Function17e5af
- jp Function17e415
+ jp IncCrashCheckPointer
; 17dc1f
Function17dc1f: ; 17dc1f
- call Function17e415
+ call IncCrashCheckPointer
ld de, $c688
ld bc, $6
call CopyBytes
@@ -1950,15 +1948,15 @@ MenuData2_17dc96:
; 17dc9f
Function17dc9f: ; 17dc9f
- call Function17e415
- call Function17e41e
+ call IncCrashCheckPointer
+ call HlToCrashCheckPointer
call RotateFourPalettesLeft
ret
; 17dca9
Function17dca9: ; 17dca9
- call Function17e415
- call Function17e41e
+ call IncCrashCheckPointer
+ call HlToCrashCheckPointer
Function17dcaf:
ld a, $5
@@ -1983,7 +1981,7 @@ Function17dcaf:
; 17dccf
Function17dccf: ; 17dccf
- call Function17e415
+ call IncCrashCheckPointer
push hl
ld a, [wcd4b]
ld l, a
@@ -1999,11 +1997,11 @@ Function17dccf: ; 17dccf
ld a, [hl]
ld b, a
call Function17e43d
- call Function17e41e
+ call HlToCrashCheckPointer
.asm_17dced
- ld a, [wcd78]
+ ld a, [wMobileCrashCheckPointer]
ld l, a
- ld a, [wcd79]
+ ld a, [wMobileCrashCheckPointer + 1]
ld h, a
ld a, [hl]
cp $ff
@@ -2021,7 +2019,7 @@ Function17dccf: ; 17dccf
.asm_17dd0d
pop hl
- jp Function17e41e
+ jp HlToCrashCheckPointer
.asm_17dd11
pop hl
@@ -2029,7 +2027,7 @@ Function17dccf: ; 17dccf
; 17dd13
Function17dd13: ; 17dd13
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld c, a
ld a, [hli]
@@ -2038,7 +2036,7 @@ Function17dd13: ; 17dd13
ld e, a
ld a, [hli]
ld d, a
- call Function17e41e
+ call HlToCrashCheckPointer
call Function17e447
push hl
hlcoord 0, 0
@@ -2051,7 +2049,7 @@ Function17dd13: ; 17dd13
; 17dd30
Function17dd30: ; 17dd30
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld e, a
ld a, [hli]
@@ -2061,7 +2059,7 @@ Function17dd30: ; 17dd30
ld b, $0
ld a, [hli]
push af
- call Function17e41e
+ call HlToCrashCheckPointer
pop af
hlcoord 0, 0
add hl, de
@@ -2070,7 +2068,7 @@ Function17dd30: ; 17dd30
; 17dd49
Function17dd49: ; 17dd49
- call Function17e415
+ call IncCrashCheckPointer
ld de, $c708
ld bc, $a
call CopyBytes
@@ -2151,7 +2149,7 @@ Function17dd49: ; 17dd49
; 17ddcd
Function17ddcd: ; 17ddcd
- call Function17e415
+ call IncCrashCheckPointer
ld de, $c708
ld bc, $8
call CopyBytes
@@ -2213,7 +2211,7 @@ Function17ddcd: ; 17ddcd
; 17de32
Function17de32: ; 17de32
- call Function17e415
+ call IncCrashCheckPointer
ld de, $c708
ld bc, $9
call CopyBytes
@@ -2272,7 +2270,7 @@ Function17de32: ; 17de32
; 17de91
Function17de91: ; 17de91
- call Function17e415
+ call IncCrashCheckPointer
ld de, $c708
ld bc, $7
call CopyBytes
@@ -2315,7 +2313,7 @@ Function17de91: ; 17de91
; 17ded9
Function17ded9: ; 17ded9
- call Function17e415
+ call IncCrashCheckPointer
ld de, $c708
ld bc, $1f
call CopyBytes
@@ -2339,7 +2337,7 @@ Function17ded9: ; 17ded9
ld [MonType], a
push hl
push bc
- predef TryAddMonToParty
+ predef Predef_TryAddMonToParty
farcall SetCaughtData
pop bc
pop hl
@@ -2444,7 +2442,7 @@ Function17ded9: ; 17ded9
ld e, l
push hl
ld b, $0
- farcall CalcPkmnStats
+ farcall Predef_CalcPkmnStats
ld a, [PartyCount]
dec a
ld hl, PartyMon1HP
@@ -2510,7 +2508,7 @@ Function17ded9: ; 17ded9
ld d, h
ld e, l
pop hl
- predef FillPP
+ predef Predef_FillPP
pop hl
pop bc
jp asm_17e0ee
@@ -2533,7 +2531,7 @@ Function17e026: ; 17e026
push bc
push hl
farcall LoadEnemyMon
- farcall SentPkmnIntoBox
+ farcall Predef_SendPkmnIntoBox
farcall SetBoxMonCaughtData
pop hl
pop bc
@@ -2624,7 +2622,7 @@ Function17e026: ; 17e026
push hl
ld hl, sBoxMon1Moves
ld de, sBoxMon1PP
- predef FillPP
+ predef Predef_FillPP
call CloseSRAM
pop hl
pop bc
@@ -2656,7 +2654,7 @@ asm_17e0ee
; 17e0fd
Function17e0fd: ; 17e0fd
- call Function17e415
+ call IncCrashCheckPointer
ld de, $c708
ld bc, $6
call CopyBytes
@@ -2690,7 +2688,7 @@ Function17e0fd: ; 17e0fd
; 17e133
Function17e133: ; 17e133
- call Function17e415
+ call IncCrashCheckPointer
ld de, $c708
ld bc, $5
call CopyBytes
@@ -2721,7 +2719,7 @@ Function17e133: ; 17e133
; 17e165
Function17e165: ; 17e165
- call Function17e415
+ call IncCrashCheckPointer
ld de, $c708
ld bc, $5
call CopyBytes
@@ -2758,7 +2756,7 @@ Function17e165: ; 17e165
; 17e1a1
Function17e1a1: ; 17e1a1
- call Function17e415
+ call IncCrashCheckPointer
ld de, $c708
ld bc, $d
call CopyBytes
@@ -2867,19 +2865,19 @@ Function17e1a1: ; 17e1a1
; 17e254
Function17e254: ; 17e254
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld e, a
ld a, [hli]
ld d, a
ld a, [hli]
ld [de], a
- call Function17e41e
+ call HlToCrashCheckPointer
ret
; 17e261
Function17e261: ; 17e261
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld e, a
ld a, [hli]
@@ -2888,12 +2886,12 @@ Function17e261: ; 17e261
add [hl]
ld [de], a
inc hl
- call Function17e41e
+ call HlToCrashCheckPointer
ret
; 17e270
Function17e270: ; 17e270
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld e, a
ld a, [hli]
@@ -2902,12 +2900,12 @@ Function17e270: ; 17e270
sub [hl]
ld [de], a
inc hl
- call Function17e41e
+ call HlToCrashCheckPointer
ret
; 17e27f
Function17e27f: ; 17e27f
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld e, a
ld a, [hli]
@@ -2916,7 +2914,7 @@ Function17e27f: ; 17e27f
ld c, a
ld a, [hli]
ld b, a
- call Function17e41e
+ call HlToCrashCheckPointer
ld l, c
ld h, b
ld a, [de]
@@ -2926,7 +2924,7 @@ Function17e27f: ; 17e27f
; 17e293
Function17e293: ; 17e293
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld e, a
ld a, [hli]
@@ -2935,7 +2933,7 @@ Function17e293: ; 17e293
ld c, a
ld a, [hli]
ld b, a
- call Function17e41e
+ call HlToCrashCheckPointer
ld l, c
ld h, b
ld a, [de]
@@ -2945,8 +2943,8 @@ Function17e293: ; 17e293
; 17e2a7
Function17e2a7: ; 17e2a7
- call Function17e415
- call Function17e41e
+ call IncCrashCheckPointer
+ call HlToCrashCheckPointer
call Function17e32b
xor a
ld [wcf66], a
@@ -3035,77 +3033,46 @@ Function17e349: ; 17e349
ret
; 17e367
-Function17e367: ; 17e367
- call Function17e415
- call Function17e41e
+inc_crash_check_pointer_farcall: MACRO
+ call IncCrashCheckPointer
+ call HlToCrashCheckPointer ; redundant
ld a, [rSVBK]
push af
ld a, $1
ld [rSVBK], a
- farcall SaveGameData_
+rept _NARG
+ farcall \1
+ shift
+endr
pop af
ld [rSVBK], a
ret
+ENDM
+
+IncCrashCheckPointer_SaveGameData: ; 17e367
+ inc_crash_check_pointer_farcall SaveGameData_
; 17e37e
-Function17e37e: ; 17e37e
- call Function17e415
- call Function17e41e
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- farcall SaveAfterLinkTrade
- pop af
- ld [rSVBK], a
- ret
-; 17e395
+IncCrashCheckPointer_SaveAfterLinkTrade: ; 17e37e
+ inc_crash_check_pointer_farcall SaveAfterLinkTrade
-Function17e395: ; 17e395
- call Function17e415
- call Function17e41e
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- farcall SaveBox
- pop af
- ld [rSVBK], a
- ret
+IncCrashCheckPointer_SaveBox: ; 17e395
+ inc_crash_check_pointer_farcall SaveBox
; 17e3ac
-Function17e3ac: ; 17e3ac
- call Function17e415
- call Function17e41e
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- farcall SaveChecksum
- pop af
- ld [rSVBK], a
- ret
+IncCrashCheckPointer_SaveChecksum: ; 17e3ac
+ inc_crash_check_pointer_farcall SaveChecksum
; 17e3c3
-Function17e3c3: ; 17e3c3
- call Function17e415
- call Function17e41e
- ld a, [rSVBK]
- push af
- ld a, $1
- ld [rSVBK], a
- farcall UpdateTrainerRankingsChecksum2
- farcall BackupMobileEventIndex
- pop af
- ld [rSVBK], a
- ret
+IncCrashCheckPointer_SaveTrainerRankingsChecksum: ; 17e3c3
+ inc_crash_check_pointer_farcall UpdateTrainerRankingsChecksum2, BackupMobileEventIndex
; 17e3e0
Function17e3e0: ; 17e3e0
- call Function17e415
+ call IncCrashCheckPointer
ld a, [hli]
ld c, a
- call Function17e41e
+ call HlToCrashCheckPointer
ld a, $1
ld [hBGMapMode], a
call DelayFrames
@@ -3113,8 +3080,8 @@ Function17e3e0: ; 17e3e0
; 17e3f0
Function17e3f0: ; 17e3f0
- call Function17e415
- call Function17e41e
+ call IncCrashCheckPointer
+ call HlToCrashCheckPointer
.asm_17e3f6
call JoyTextDelay
ld hl, hJoyPressed
@@ -3137,20 +3104,20 @@ Function17e409: ; 17e409
Function17e40f: ; 17e40f
ld de, wBGPals1
add hl, de
- jr Function17e41e
+ jr HlToCrashCheckPointer
-Function17e415:
- ld a, [wcd78]
+IncCrashCheckPointer:
+ ld a, [wMobileCrashCheckPointer]
ld l, a
- ld a, [wcd79]
+ ld a, [wMobileCrashCheckPointer + 1]
ld h, a
inc hl
-Function17e41e:
+HlToCrashCheckPointer:
ld a, l
- ld [wcd78], a
+ ld [wMobileCrashCheckPointer], a
ld a, h
- ld [wcd79], a
+ ld [wMobileCrashCheckPointer + 1], a
ret
; 17e427
@@ -4619,7 +4586,7 @@ Function17f524: ; 17f524
jr .asm_17f536
; 17f53d
-BattleTowerMobileError: ; 17f53d
+Special_BattleTowerMobileError: ; 17f53d
call FadeToMenu
xor a
ld [wc303], a
@@ -5246,7 +5213,7 @@ String_17fe63: ; 17fe63
next "せつめいしょを ごらんください"
db "@"
-String_17fe9a: ; 17fe9a ; unreferenced
+String_17fe9a: ; 17fe9a ; unused
db "ポケモンニュースが"
next "あたらしくなっているので"
next "レポートを おくれません"
diff --git a/mobile/mobile_menu.asm b/mobile/mobile_menu.asm
index 513b0bf82..a131e197b 100755
--- a/mobile/mobile_menu.asm
+++ b/mobile/mobile_menu.asm
@@ -462,8 +462,7 @@ Function4a28a: ; 4a28a (12:628a)
MenuDataHeader_0x4a346: ; 0x4a346
db MENU_BACKUP_TILES ; flags
- db 00, 12 ; start coords
- db 06, 19 ; end coords
+ menu_coords 12, 0, SCREEN_WIDTH - 1, 6
String_4a34b: ; 4a34b
db "いれなおす"
@@ -485,8 +484,7 @@ UnknownText_0x4a35d: ; 0x4a35d
DeletePassword_YesNo_MenuDataHeader: ; 0x4a362
db MENU_BACKUP_TILES ; flags
- db 07, 14 ; start coords
- db 11, 19 ; end coords
+ menu_coords 14, 7, SCREEN_WIDTH - 1, TEXTBOX_Y - 1
dw MenuData2_0x4a36a
db 2 ; default option
; 0x4a36a
@@ -847,7 +845,7 @@ Function4a6ab: ; 4a6ab (12:66ab)
call ClearBGPalettes
ld b, SCGB_DIPLOMA
call GetSGBLayout
- farcall Function11c1ab
+ farcall Special_Function11c1ab
pop bc
call LoadFontsExtra
jp Function4a4c4
diff --git a/mobile/news/news.asm b/mobile/news/news.asm
index b95df06aa..d9dcc3ce8 100644
--- a/mobile/news/news.asm
+++ b/mobile/news/news.asm
@@ -1,9 +1,8 @@
; http://forums.glitchcity.info/index.php?topic=7509.msg206449#msg206449
- db $cc, $6b, $1e ; XXX
+ db $cc, $6b, $1e ; unused
-Function1f4003: ; 1f4003
-; XXX
+Unreferenced_Function1f4003: ; 1f4003
ld a, $6
call GetSRAMBank
ld hl, .news_data
@@ -16,8 +15,7 @@ Function1f4003: ; 1f4003
.news_data
INCBIN "mobile/news/news_1.bin"
-Function1f4dbe: ; 1f4dbe
-; XXX
+Unreferenced_Function1f4dbe: ; 1f4dbe
ld a, $6
call GetSRAMBank
ld hl, .news_data
diff --git a/mobile/print_opp_message.asm b/mobile/print_opp_message.asm
index 612a1b78d..987ad4b9a 100644
--- a/mobile/print_opp_message.asm
+++ b/mobile/print_opp_message.asm
@@ -10,7 +10,7 @@ Mobile_PrintOpponentBattleMessage: ; 4ea0a
call AddNTimes
ld de, wMobileOpponentBattleMessage
ld bc, $c
- ld a, $5 ; BANK(w5_MobileOpponentBattleMessages)
+ ld a, BANK(w5_MobileOpponentBattleMessages)
call FarCopyWRAM
ld a, [rSVBK]