ref: c3f71abe64d628a33183c95919dc7b20495bf305
parent: 274e3b5d2111c91cd309938c77bd5f5a0c1b41e4
parent: 226f60592c7b8e4e3bde5ed2fa2b2ccc9d32f623
author: YamaArashi <shadow962@live.com>
date: Tue Jan 24 21:54:48 EST 2012
Merge hg-commit-id: 3b25511ba1aa
--- a/common.asm
+++ b/common.asm
@@ -43209,7 +43209,7 @@
Route11Script: ; 0x5944c
call $3c3c
ld hl, $547b
- ld de, $545f
+ ld de, Route11_Unknown5945f
ld a, [$d623]
call $3160
ld [$d623], a
@@ -43216,12 +43216,122 @@
ret
; 0x5945f
+Route11_Unknown5945f: ; 0x5945f
INCBIN "baserom.gbc",$5945f,$59465 - $5945f
Route11Texts: ; 0x59465
+ dw UnnamedText_594f4, Route11Text2, Route11Text3, Route11Text4, Route11Text5, Route11Text6, Route11Text7, Route11Text8, Route11Text9, Route11Text10, Route11Text11
-INCBIN "baserom.gbc",$59465,$594fe - $59465
+Route11TrainerHeaders:
+Route11TrainerHeader1: ; 0x5947b
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw UnnamedText_594fe ; 0x54fe TextBeforeBattle
+ dw UnnamedText_59508 ; 0x5508 TextAfterBattle
+ dw UnnamedText_59503 ; 0x5503 TextEndBattle
+ dw UnnamedText_59503 ; 0x5503 TextEndBattle
+; 0x59487
+TrainerHeader_59487: ; 0x59487
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw UnnamedText_59517 ; 0x5517 TextBeforeBattle
+ dw UnnamedText_59521 ; 0x5521 TextAfterBattle
+ dw UnnamedText_5951c ; 0x551c TextEndBattle
+ dw UnnamedText_5951c ; 0x551c TextEndBattle
+; 0x59493
+
+TrainerHeader_59493: ; 0x59493
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw UnnamedText_59530 ; 0x5530 TextBeforeBattle
+ dw UnnamedText_5953a ; 0x553a TextAfterBattle
+ dw UnnamedText_59535 ; 0x5535 TextEndBattle
+ dw UnnamedText_59535 ; 0x5535 TextEndBattle
+; 0x5949f
+
+TrainerHeader_5949f: ; 0x5949f
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw UnnamedText_59549 ; 0x5549 TextBeforeBattle
+ dw UnnamedText_59553 ; 0x5553 TextAfterBattle
+ dw UnnamedText_5954e ; 0x554e TextEndBattle
+ dw UnnamedText_5954e ; 0x554e TextEndBattle
+; 0x594ab
+
+TrainerHeader_594ab: ; 0x594ab
+ db $5 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw UnnamedText_59562 ; 0x5562 TextBeforeBattle
+ dw UnnamedText_5956c ; 0x556c TextAfterBattle
+ dw UnnamedText_59567 ; 0x5567 TextEndBattle
+ dw UnnamedText_59567 ; 0x5567 TextEndBattle
+; 0x594b7
+
+TrainerHeader_594b7: ; 0x594b7
+ db $6 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw UnnamedText_5957b ; 0x557b TextBeforeBattle
+ dw UnnamedText_59585 ; 0x5585 TextAfterBattle
+ dw UnnamedText_59580 ; 0x5580 TextEndBattle
+ dw UnnamedText_59580 ; 0x5580 TextEndBattle
+; 0x594c3
+
+TrainerHeader_594c3: ; 0x594c3
+ db $7 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw UnnamedText_59594 ; 0x5594 TextBeforeBattle
+ dw UnnamedText_5959e ; 0x559e TextAfterBattle
+ dw UnnamedText_59599 ; 0x5599 TextEndBattle
+ dw UnnamedText_59599 ; 0x5599 TextEndBattle
+; 0x594cf
+
+TrainerHeader_594cf: ; 0x594cf
+ db $8 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw UnnamedText_595ad ; 0x55ad TextBeforeBattle
+ dw UnnamedText_595b7 ; 0x55b7 TextAfterBattle
+ dw UnnamedText_595b2 ; 0x55b2 TextEndBattle
+ dw UnnamedText_595b2 ; 0x55b2 TextEndBattle
+; 0x594db
+
+TrainerHeader_594db: ; 0x594db
+ db $9 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw UnnamedText_595c6 ; 0x55c6 TextBeforeBattle
+ dw UnnamedText_595d0 ; 0x55d0 TextAfterBattle
+ dw UnnamedText_595cb ; 0x55cb TextEndBattle
+ dw UnnamedText_595cb ; 0x55cb TextEndBattle
+; 0x594e7
+
+TrainerHeader_594e7: ; 0x594e7
+ db $a ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d5 ; flag's byte
+ dw UnnamedText_595df ; 0x55df TextBeforeBattle
+ dw UnnamedText_595e9 ; 0x55e9 TextAfterBattle
+ dw UnnamedText_595e4 ; 0x55e4 TextEndBattle
+ dw UnnamedText_595e4 ; 0x55e4 TextEndBattle
+; 0x594f3
+
+db $ff
+
+UnnamedText_594f4: ; 0x594f4
+ db $8
+ ld hl, Route11TrainerHeader1
+ call LoadTrainerHeader
+ jp TextScriptEnd
+; 0x594fe
+
UnnamedText_594fe: ; 0x594fe
TX_FAR _UnnamedText_594fe
db $50
@@ -43239,7 +43349,7 @@
Route11Text2: ; 0x5950d
db $08 ; asm
- ld hl, $5487
+ ld hl, TrainerHeader_59487
call LoadTrainerHeader
jp TextScriptEnd
@@ -43260,7 +43370,7 @@
Route11Text3: ; 0x59526
db $08 ; asm
- ld hl, $5493
+ ld hl, TrainerHeader_59493
call LoadTrainerHeader
jp TextScriptEnd
@@ -43281,7 +43391,7 @@
Route11Text4: ; 0x5953f
db $08 ; asm
- ld hl, $549f
+ ld hl, TrainerHeader_5949f
call LoadTrainerHeader
jp TextScriptEnd
@@ -43302,7 +43412,7 @@
Route11Text5: ; 0x59558
db $08 ; asm
- ld hl, $54ab
+ ld hl, TrainerHeader_594ab
call LoadTrainerHeader
jp TextScriptEnd
@@ -43323,7 +43433,7 @@
Route11Text6: ; 0x59571
db $08 ; asm
- ld hl, $54b7
+ ld hl, TrainerHeader_594b7
call LoadTrainerHeader
jp TextScriptEnd
@@ -43344,7 +43454,7 @@
Route11Text7: ; 0x5958a
db $08 ; asm
- ld hl, $54c3
+ ld hl, TrainerHeader_594c3
call LoadTrainerHeader
jp TextScriptEnd
@@ -43365,7 +43475,7 @@
Route11Text8: ; 0x595a3
db $08 ; asm
- ld hl, $54cf
+ ld hl, TrainerHeader_594cf
call LoadTrainerHeader
jp TextScriptEnd
@@ -43386,7 +43496,7 @@
Route11Text9: ; 0x595bc
db $08 ; asm
- ld hl, $54db
+ ld hl, TrainerHeader_594db
call LoadTrainerHeader
jp TextScriptEnd
@@ -43407,7 +43517,7 @@
Route11Text10: ; 0x595d5
db $08 ; asm
- ld hl, $54e7
+ ld hl, TrainerHeader_594e7
call LoadTrainerHeader
jp TextScriptEnd
@@ -43432,7 +43542,7 @@
Route12Script: ; 0x595f3
call $3c3c
- ld hl, $5691
+ ld hl, Route12TrainerHeaders
ld de, $5611
ld a, [$d624]
call $3160
@@ -43445,8 +43555,79 @@
Route12Texts: ; 0x59675
dw Route12Text1, Route12Text2, Route12Text3, Route12Text4, Route12Text5, Route12Text6, Route12Text7, Route12Text8, Route12Text9, Route12Text10, Route12Text11, Route12Text12, Route12Text13, Route12Text14
-INCBIN "baserom.gbc",$59691,$55
+Route12TrainerHeaders:
+Route12TrainerHeader1: ; 0x59691
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d7 ; flag's byte
+ dw UnnamedText_596ff ; 0x56ff TextBeforeBattle
+ dw UnnamedText_59709 ; 0x5709 TextAfterBattle
+ dw UnnamedText_59704 ; 0x5704 TextEndBattle
+ dw UnnamedText_59704 ; 0x5704 TextEndBattle
+; 0x5969d
+TrainerHeader_5969d: ; 0x5969d
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d7 ; flag's byte
+ dw UnnamedText_59718 ; 0x5718 TextBeforeBattle
+ dw UnnamedText_59722 ; 0x5722 TextAfterBattle
+ dw UnnamedText_5971d ; 0x571d TextEndBattle
+ dw UnnamedText_5971d ; 0x571d TextEndBattle
+; 0x596a9
+
+TrainerHeader_596a9: ; 0x596a9
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d7 ; flag's byte
+ dw UnnamedText_59731 ; 0x5731 TextBeforeBattle
+ dw UnnamedText_5973b ; 0x573b TextAfterBattle
+ dw UnnamedText_59736 ; 0x5736 TextEndBattle
+ dw UnnamedText_59736 ; 0x5736 TextEndBattle
+; 0x596b5
+
+TrainerHeader_596b5: ; 0x596b5
+ db $5 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d7 ; flag's byte
+ dw UnnamedText_5974a ; 0x574a TextBeforeBattle
+ dw UnnamedText_59754 ; 0x5754 TextAfterBattle
+ dw UnnamedText_5974f ; 0x574f TextEndBattle
+ dw UnnamedText_5974f ; 0x574f TextEndBattle
+; 0x596c1
+
+TrainerHeader_596c1: ; 0x596c1
+ db $6 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d7 ; flag's byte
+ dw UnnamedText_59763 ; 0x5763 TextBeforeBattle
+ dw UnnamedText_5976d ; 0x576d TextAfterBattle
+ dw UnnamedText_59768 ; 0x5768 TextEndBattle
+ dw UnnamedText_59768 ; 0x5768 TextEndBattle
+; 0x596cd
+
+TrainerHeader_596cd: ; 0x596cd
+ db $7 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7d7 ; flag's byte
+ dw UnnamedText_5977c ; 0x577c TextBeforeBattle
+ dw UnnamedText_59786 ; 0x5786 TextAfterBattle
+ dw UnnamedText_59781 ; 0x5781 TextEndBattle
+ dw UnnamedText_59781 ; 0x5781 TextEndBattle
+; 0x596d9
+
+TrainerHeader_596d9: ; 0x596d9
+ db $8 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d7d7 ; flag's byte
+ dw UnnamedText_59795 ; 0x5795 TextBeforeBattle
+ dw UnnamedText_5979f ; 0x579f TextAfterBattle
+ dw UnnamedText_5979a ; 0x579a TextEndBattle
+ dw UnnamedText_5979a ; 0x579a TextEndBattle
+; 0x596e5
+
+db $ff
+
Route12Text1: ; 0x596e6
TX_FAR _Route12Text1
db $50
@@ -43465,7 +43646,7 @@
Route12Text2: ; 0x596f5
db $08 ; asm
- ld hl, $5691
+ ld hl, Route12TrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
@@ -43486,7 +43667,7 @@
Route12Text3: ; 0x5970e
db $08 ; asm
- ld hl, $569d
+ ld hl, TrainerHeader_5969d
call LoadTrainerHeader
jp TextScriptEnd
@@ -43507,7 +43688,7 @@
Route12Text4: ; 0x59727
db $08 ; asm
- ld hl, $56a9
+ ld hl, TrainerHeader_596a9
call LoadTrainerHeader
jp TextScriptEnd
@@ -43528,7 +43709,7 @@
Route12Text5: ; 0x59740
db $08 ; asm
- ld hl, $56b5
+ ld hl, TrainerHeader_596b5
call LoadTrainerHeader
jp TextScriptEnd
@@ -43549,7 +43730,7 @@
Route12Text6: ; 0x59759
db $08 ; asm
- ld hl, $56c1
+ ld hl, TrainerHeader_596c1
call LoadTrainerHeader
jp TextScriptEnd
@@ -43570,7 +43751,7 @@
Route12Text7: ; 0x59772
db $08 ; asm
- ld hl, $56cd
+ ld hl, TrainerHeader_596cd
call LoadTrainerHeader
jp TextScriptEnd
@@ -43591,7 +43772,7 @@
Route12Text8: ; 0x5978b
db $08 ; asm
- ld hl, $56d9
+ ld hl, TrainerHeader_596d9
call LoadTrainerHeader
jp TextScriptEnd
@@ -43620,8 +43801,8 @@
Route15Script: ; 0x597ae
call $3c3c
- ld hl, $57df
- ld de, $57c1
+ ld hl, Route15TrainerHeaders
+ ld de, Route15_Unknown597c1
ld a, [$d625]
call $3160
ld [$d625], a
@@ -43628,63 +43809,165 @@
ret
; 0x597c1
+Route15_Unknown597c1: ; 0x597c1
INCBIN "baserom.gbc",$597c1,$6
Route15Texts: ; 0x597c7
dw Route15Text1, Route15Text2, Route15Text3, Route15Text4, Route15Text5, Route15Text6, Route15Text7, Route15Text8, Route15Text9, Route15Text10, Route15Text11, Route15Text12
-INCBIN "baserom.gbc",$597df,$79
+Route15TrainerHeaders:
+Route15TrainerHeader1: ; 0x597df
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw UnnamedText_59898 ; 0x5898 TextBeforeBattle
+ dw UnnamedText_598a2 ; 0x58a2 TextAfterBattle
+ dw UnnamedText_5989d ; 0x589d TextEndBattle
+ dw UnnamedText_5989d ; 0x589d TextEndBattle
+; 0x597eb
+TrainerHeader_597eb: ; 0x597eb
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw UnnamedText_598a7 ; 0x58a7 TextBeforeBattle
+ dw UnnamedText_598b1 ; 0x58b1 TextAfterBattle
+ dw UnnamedText_598ac ; 0x58ac TextEndBattle
+ dw UnnamedText_598ac ; 0x58ac TextEndBattle
+; 0x597f7
+
+TrainerHeader_597f7: ; 0x597f7
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw UnnamedText_598b6 ; 0x58b6 TextBeforeBattle
+ dw UnnamedText_598c0 ; 0x58c0 TextAfterBattle
+ dw UnnamedText_598bb ; 0x58bb TextEndBattle
+ dw UnnamedText_598bb ; 0x58bb TextEndBattle
+; 0x59803
+
+TrainerHeader_59803: ; 0x59803
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw UnnamedText_598c5 ; 0x58c5 TextBeforeBattle
+ dw UnnamedText_598cf ; 0x58cf TextAfterBattle
+ dw UnnamedText_598ca ; 0x58ca TextEndBattle
+ dw UnnamedText_598ca ; 0x58ca TextEndBattle
+; 0x5980f
+
+TrainerHeader_5980f: ; 0x5980f
+ db $5 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw UnnamedText_598d4 ; 0x58d4 TextBeforeBattle
+ dw UnnamedText_598de ; 0x58de TextAfterBattle
+ dw UnnamedText_598d9 ; 0x58d9 TextEndBattle
+ dw UnnamedText_598d9 ; 0x58d9 TextEndBattle
+; 0x5981b
+
+TrainerHeader_5981b: ; 0x5981b
+ db $6 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw UnnamedText_598e3 ; 0x58e3 TextBeforeBattle
+ dw UnnamedText_598ed ; 0x58ed TextAfterBattle
+ dw UnnamedText_598e8 ; 0x58e8 TextEndBattle
+ dw UnnamedText_598e8 ; 0x58e8 TextEndBattle
+; 0x59827
+
+TrainerHeader_59827: ; 0x59827
+ db $7 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw UnnamedText_598f2 ; 0x58f2 TextBeforeBattle
+ dw UnnamedText_598fc ; 0x58fc TextAfterBattle
+ dw UnnamedText_598f7 ; 0x58f7 TextEndBattle
+ dw UnnamedText_598f7 ; 0x58f7 TextEndBattle
+; 0x59833
+
+TrainerHeader_59833: ; 0x59833
+ db $8 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw UnnamedText_59901 ; 0x5901 TextBeforeBattle
+ dw UnnamedText_5990b ; 0x590b TextAfterBattle
+ dw UnnamedText_59906 ; 0x5906 TextEndBattle
+ dw UnnamedText_59906 ; 0x5906 TextEndBattle
+; 0x5983f
+
+TrainerHeader_5983f: ; 0x5983f
+ db $9 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw UnnamedText_59910 ; 0x5910 TextBeforeBattle
+ dw UnnamedText_5991a ; 0x591a TextAfterBattle
+ dw UnnamedText_59915 ; 0x5915 TextEndBattle
+ dw UnnamedText_59915 ; 0x5915 TextEndBattle
+; 0x5984b
+
+TrainerHeader_5984b: ; 0x5984b
+ db $a ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7dd ; flag's byte
+ dw UnnamedText_5991f ; 0x591f TextBeforeBattle
+ dw UnnamedText_59929 ; 0x5929 TextAfterBattle
+ dw UnnamedText_59924 ; 0x5924 TextEndBattle
+ dw UnnamedText_59924 ; 0x5924 TextEndBattle
+; 0x59857
+
+db $ff
+
Route15Text1: ; 0x59858
db $8 ; asm
- ld hl, $57df
+ ld hl, Route15TrainerHeader1
jr asm_33cb7 ; 0x5985c $34
Route15Text2:
db $8 ; asm
- ld hl, $57eb
+ ld hl, TrainerHeader_597eb
jr asm_33cb7 ; 0x59862 $2e
Route15Text3:
db $8 ; asm
- ld hl, $57f7
+ ld hl, TrainerHeader_597f7
jr asm_33cb7 ; 0x59868 $28
Route15Text4:
db $8 ; asm
- ld hl, $5803
+ ld hl, TrainerHeader_59803
jr asm_33cb7 ; 0x5986e $22
Route15Text5:
db $8 ; asm
- ld hl, $580f
+ ld hl, TrainerHeader_5980f
jr asm_33cb7 ; 0x59874 $1c
Route15Text6:
db $8 ; asm
- ld hl, $581b
+ ld hl, TrainerHeader_5981b
jr asm_33cb7 ; 0x5987a $16
Route15Text7:
db $8 ; asm
- ld hl, $5827
+ ld hl, TrainerHeader_59827
jr asm_33cb7 ; 0x59880 $10
Route15Text8:
db $8 ; asm
- ld hl, $5833
+ ld hl, TrainerHeader_59833
jr asm_33cb7 ; 0x59886 $a
Route15Text9:
db $8 ; asm
- ld hl, $583f
+ ld hl, TrainerHeader_5983f
jr asm_33cb7 ; 0x5988c $4
Route15Text10:
db $8 ; asm
- ld hl, $584b
+ ld hl, TrainerHeader_5984b
asm_33cb7: ; 0x59892
- call $31cc
+ call LoadTrainerHeader
jp TextScriptEnd
; 0x59898
@@ -43844,7 +44127,7 @@
Route16Script: ; 0x59933
call $3c3c
- ld hl, $59cf
+ ld hl, Route16TrainerHeaders
ld de, $5951
ld a, [$d626]
call $3160
@@ -43857,11 +44140,72 @@
Route16Texts: ; 0x599b9
dw Route16Text1, Route16Text2, Route16Text3, Route16Text4, Route16Text5, Route16Text6, Route16Text7, Route16Text8, Route16Text9, Route16Text10, Route16Text11
-INCBIN "baserom.gbc",$599cb + 4,$4d - 4
+Route16TrainerHeaders:
+Route16TrainerHeader1: ; 0x599cf
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7df ; flag's byte
+ dw UnnamedText_59a22 ; 0x5a22 TextBeforeBattle
+ dw UnnamedText_59a2c ; 0x5a2c TextAfterBattle
+ dw UnnamedText_59a27 ; 0x5a27 TextEndBattle
+ dw UnnamedText_59a27 ; 0x5a27 TextEndBattle
+; 0x599db
+TrainerHeader_599db: ; 0x599db
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7df ; flag's byte
+ dw UnnamedText_59a3b ; 0x5a3b TextBeforeBattle
+ dw UnnamedText_59a45 ; 0x5a45 TextAfterBattle
+ dw UnnamedText_59a40 ; 0x5a40 TextEndBattle
+ dw UnnamedText_59a40 ; 0x5a40 TextEndBattle
+; 0x599e7
+
+TrainerHeader_599e7: ; 0x599e7
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7df ; flag's byte
+ dw UnnamedText_59a54 ; 0x5a54 TextBeforeBattle
+ dw UnnamedText_59a5e ; 0x5a5e TextAfterBattle
+ dw UnnamedText_59a59 ; 0x5a59 TextEndBattle
+ dw UnnamedText_59a59 ; 0x5a59 TextEndBattle
+; 0x599f3
+
+TrainerHeader_599f3: ; 0x599f3
+ db $4 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7df ; flag's byte
+ dw UnnamedText_59a6d ; 0x5a6d TextBeforeBattle
+ dw UnnamedText_59a77 ; 0x5a77 TextAfterBattle
+ dw UnnamedText_59a72 ; 0x5a72 TextEndBattle
+ dw UnnamedText_59a72 ; 0x5a72 TextEndBattle
+; 0x599ff
+
+TrainerHeader_599ff: ; 0x599ff
+ db $5 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d7df ; flag's byte
+ dw UnnamedText_59a86 ; 0x5a86 TextBeforeBattle
+ dw UnnamedText_59a90 ; 0x5a90 TextAfterBattle
+ dw UnnamedText_59a8b ; 0x5a8b TextEndBattle
+ dw UnnamedText_59a8b ; 0x5a8b TextEndBattle
+; 0x59a0b
+
+TrainerHeader_59a0b: ; 0x59a0b
+ db $6 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7df ; flag's byte
+ dw UnnamedText_59a9f ; 0x5a9f TextBeforeBattle
+ dw UnnamedText_59aa9 ; 0x5aa9 TextAfterBattle
+ dw UnnamedText_59aa4 ; 0x5aa4 TextEndBattle
+ dw UnnamedText_59aa4 ; 0x5aa4 TextEndBattle
+; 0x59a17
+
+db $ff
+
Route16Text1: ; 0x59a18
db $08 ; asm
- ld hl, $59cf
+ ld hl, Route16TrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
@@ -43882,7 +44226,7 @@
Route16Text2: ; 0x59a31
db $08 ; asm
- ld hl, $59db
+ ld hl, TrainerHeader_599db
call LoadTrainerHeader
jp TextScriptEnd
@@ -43903,7 +44247,7 @@
Route16Text3: ; 0x59a4a
db $08 ; asm
- ld hl, $59e7
+ ld hl, TrainerHeader_599e7
call LoadTrainerHeader
jp TextScriptEnd
@@ -43924,7 +44268,7 @@
Route16Text4: ; 0x59a63
db $08 ; asm
- ld hl, $59f3
+ ld hl, TrainerHeader_599f3
call LoadTrainerHeader
jp TextScriptEnd
@@ -43945,7 +44289,7 @@
Route16Text5: ; 0x59a7c
db $08 ; asm
- ld hl, $59ff
+ ld hl, TrainerHeader_599ff
call LoadTrainerHeader
jp TextScriptEnd
@@ -43966,7 +44310,7 @@
Route16Text6: ; 0x59a95
db $08 ; asm
- ld hl, $5a0b
+ ld hl, TrainerHeader_59a0b
call LoadTrainerHeader
jp TextScriptEnd
@@ -44009,8 +44353,8 @@
Route18Script: ; 0x59ac7
call $3c3c
- ld hl, $5aea
- ld de, $5ada
+ ld hl, Route18TrainerHeaders
+ ld de, Route18_Unknown59ada
ld a, [$d627]
call $3160
ld [$d627], a
@@ -44017,16 +44361,48 @@
ret
; 0x59ada
+Route18_Unknown59ada: ; 0x59ada
INCBIN "baserom.gbc",$59ada,$6
Route18Texts: ; 0x59ae0
dw Route18Text1, Route18Text2, Route18Text3, Route18Text4, Route18Text5
-INCBIN "baserom.gbc",$59aea,$25
+Route18TrainerHeaders:
+Route18TrainerHeader1: ; 0x59aea
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7e3 ; flag's byte
+ dw UnnamedText_59b19 ; 0x5b19 TextBeforeBattle
+ dw UnnamedText_59b23 ; 0x5b23 TextAfterBattle
+ dw UnnamedText_59b1e ; 0x5b1e TextEndBattle
+ dw UnnamedText_59b1e ; 0x5b1e TextEndBattle
+; 0x59af6
+TrainerHeader_59af6: ; 0x59af6
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7e3 ; flag's byte
+ dw UnnamedText_59b32 ; 0x5b32 TextBeforeBattle
+ dw UnnamedText_59b3c ; 0x5b3c TextAfterBattle
+ dw UnnamedText_59b37 ; 0x5b37 TextEndBattle
+ dw UnnamedText_59b37 ; 0x5b37 TextEndBattle
+; 0x59b02
+
+TrainerHeader_59b02: ; 0x59b02
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7e3 ; flag's byte
+ dw UnnamedText_59b4b ; 0x5b4b TextBeforeBattle
+ dw UnnamedText_59b55 ; 0x5b55 TextAfterBattle
+ dw UnnamedText_59b50 ; 0x5b50 TextEndBattle
+ dw UnnamedText_59b50 ; 0x5b50 TextEndBattle
+; 0x59b0e
+
+db $ff
+
Route18Text1: ; 0x59b0f
db $08 ; asm
- ld hl, $5aea
+ ld hl, Route18TrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
@@ -44047,7 +44423,7 @@
Route18Text2: ; 0x59b28
db $08 ; asm
- ld hl, $5af6
+ ld hl, TrainerHeader_59af6
call LoadTrainerHeader
jp TextScriptEnd
@@ -44068,7 +44444,7 @@
Route18Text3: ; 0x59b41
db $08 ; asm
- ld hl, $5b02
+ ld hl, TrainerHeader_59b02
call LoadTrainerHeader
jp TextScriptEnd
@@ -44312,7 +44688,7 @@
SilphCo2Script: ; 0x59cf1
call $5d07
call $3c3c
- ld hl, $5d90
+ ld hl, SilphCo2TrainerHeaders
ld de, $5d80
ld a, [$d643]
call $3160
@@ -44325,8 +44701,49 @@
SilphCo2Texts: ; 0x59d86
dw SilphCo2Text1, SilphCo2Text2, SilphCo2Text3, SilphCo2Text4, SilphCo2Text5
-INCBIN "baserom.gbc",$59d90,$31
+SilphCo2TrainerHeaders:
+SilphCo2TrainerHeader1: ; 0x59d90
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d825 ; flag's byte
+ dw UnnamedText_59e2a ; 0x5e2a TextBeforeBattle
+ dw UnnamedText_59e34 ; 0x5e34 TextAfterBattle
+ dw UnnamedText_59e2f ; 0x5e2f TextEndBattle
+ dw UnnamedText_59e2f ; 0x5e2f TextEndBattle
+; 0x59d9c
+TrainerHeader_59d9c: ; 0x59d9c
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d825 ; flag's byte
+ dw UnnamedText_59e39 ; 0x5e39 TextBeforeBattle
+ dw UnnamedText_59e43 ; 0x5e43 TextAfterBattle
+ dw UnnamedText_59e3e ; 0x5e3e TextEndBattle
+ dw UnnamedText_59e3e ; 0x5e3e TextEndBattle
+; 0x59da8
+
+TrainerHeader_59da8: ; 0x59da8
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d825 ; flag's byte
+ dw UnnamedText_59e48 ; 0x5e48 TextBeforeBattle
+ dw UnnamedText_59e52 ; 0x5e52 TextAfterBattle
+ dw UnnamedText_59e4d ; 0x5e4d TextEndBattle
+ dw UnnamedText_59e4d ; 0x5e4d TextEndBattle
+; 0x59db4
+
+TrainerHeader_59db4: ; 0x59db4
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d825 ; flag's byte
+ dw UnnamedText_59e57 ; 0x5e57 TextBeforeBattle
+ dw UnnamedText_59e61 ; 0x5e61 TextAfterBattle
+ dw UnnamedText_59e5c ; 0x5e5c TextEndBattle
+ dw UnnamedText_59e5c ; 0x5e5c TextEndBattle
+; 0x59dc0
+
+db $ff
+
SilphCo2Text1: ; 0x59dc1
db $08 ; asm
ld a, [$d826]
@@ -44370,25 +44787,25 @@
SilphCo2Text2: ; 0x59e02
db $08 ; asm
- ld hl, $5d90
+ ld hl, SilphCo2TrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
SilphCo2Text3: ; 0x59e0c
db $08 ; asm
- ld hl, $5d9c
+ ld hl, TrainerHeader_59d9c
call LoadTrainerHeader
jp TextScriptEnd
SilphCo2Text4: ; 0x59e16
db $08 ; asm
- ld hl, $5da8
+ ld hl, TrainerHeader_59da8
call LoadTrainerHeader
jp TextScriptEnd
SilphCo2Text5: ; 0x59e20
db $08 ; asm
- ld hl, $5db4
+ ld hl, TrainerHeader_59db4
call LoadTrainerHeader
jp TextScriptEnd
@@ -44494,9 +44911,9 @@
dw SilphCo3Object ; objects
SilphCo3Script: ; 0x59f5b
- call $5f71
+ call SilphCo3Script_Unknown59f71
call $3c3c
- ld hl, $5fcc
+ ld hl, SilphCo3TrainerHeaders
ld de, $5fbe
ld a, [$d644]
call $3160
@@ -44504,14 +44921,35 @@
ret
; 0x59f71
+SilphCo3Script_Unknown59f71: ; 0x59f71
INCBIN "baserom.gbc",$59f71,$53
SilphCo3Texts: ; 0x59fc4
dw SilphCo3Text1, SilphCo3Text2, SilphCo3Text3, SilphCo3Text4
+SilphCo3TrainerHeaders:
SilphCo3TrainerHeader1: ; 0x59fcc
-INCBIN "baserom.gbc",$59fcc,$19
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d827 ; flag's byte
+ dw UnnamedText_5a00d ; 0x600d TextBeforeBattle
+ dw UnnamedText_5a017 ; 0x6017 TextAfterBattle
+ dw UnnamedText_5a012 ; 0x6012 TextEndBattle
+ dw UnnamedText_5a012 ; 0x6012 TextEndBattle
+; 0x59fd8
+TrainerHeader_59fd8: ; 0x59fd8
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d827 ; flag's byte
+ dw UnnamedText_5a026 ; 0x6026 TextBeforeBattle
+ dw UnnamedText_5a030 ; 0x6030 TextAfterBattle
+ dw UnnamedText_5a02b ; 0x602b TextEndBattle
+ dw UnnamedText_5a02b ; 0x602b TextEndBattle
+; 0x59fe4
+
+db $ff
+
SilphCo3Text1: ; 0x59fe5
db $08 ; asm
ld a, [$d838]
@@ -44556,7 +44994,7 @@
SilphCo3Text3: ; 0x5a01c
db $08 ; asm
- ld hl, $5fd8
+ ld hl, TrainerHeader_59fd8
call LoadTrainerHeader
jp TextScriptEnd
@@ -44622,9 +45060,9 @@
dw SilphCo10Object ; objects
SilphCo10Script: ; 0x5a139
- call $614f
+ call SilphCo10Script_Unknown5a14f
call $3c3c
- ld hl, $6192
+ ld hl, SilphCo10TrainerHeaders
ld de, $6180
ld a, [$d658]
call $3160
@@ -44632,22 +45070,44 @@
ret
; 0x5a14f
+SilphCo10Script_Unknown5a14f: ; 0x5a14f
INCBIN "baserom.gbc",$5a14f,$37
SilphCo10Texts: ; 0x5a186
dw SilphCo10Text1, SilphCo10Text2, SilphCo10Text3, SilphCo10Text4, SilphCo10Text5, SilphCo10Text6
-INCBIN "baserom.gbc",$5a192,$19
+SilphCo10TrainerHeaders:
+SilphCo10TrainerHeader1: ; 0x5a192
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d835 ; flag's byte
+ dw UnnamedText_5a1dd ; 0x61dd TextBeforeBattle
+ dw UnnamedText_5a1e7 ; 0x61e7 TextAfterBattle
+ dw UnnamedText_5a1e2 ; 0x61e2 TextEndBattle
+ dw UnnamedText_5a1e2 ; 0x61e2 TextEndBattle
+; 0x5a19e
+TrainerHeader_5a19e: ; 0x5a19e
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d835 ; flag's byte
+ dw UnnamedText_5a1ec ; 0x61ec TextBeforeBattle
+ dw UnnamedText_5a1f6 ; 0x61f6 TextAfterBattle
+ dw UnnamedText_5a1f1 ; 0x61f1 TextEndBattle
+ dw UnnamedText_5a1f1 ; 0x61f1 TextEndBattle
+; 0x5a1aa
+
+db $ff
+
SilphCo10Text1: ; 0x5a1ab
db $08 ; asm
- ld hl, $6192
+ ld hl, SilphCo10TrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
SilphCo10Text2: ; 0x5a1b5
db $08 ; asm
- ld hl, $619e
+ ld hl, TrainerHeader_5a19e
call LoadTrainerHeader
jp TextScriptEnd
@@ -44743,9 +45203,9 @@
dw LanceObject ; objects
LanceScript: ; 0x5a2ae
- call $62c4
+ call LanceScript_Unknown5a2c4
call $3c3c
- ld hl, $6397
+ ld hl, LanceTrainerHeaders
ld de, $62fa
ld a, [$d653]
call $3160
@@ -44753,16 +45213,28 @@
ret
; 0x5a2c4
+LanceScript_Unknown5a2c4: ; 0x5a2c4
INCBIN "baserom.gbc",$5a2c4,$d1
LanceTexts: ; 0x5a395
dw LanceText1
-INCBIN "baserom.gbc",$5a397,$d
+LanceTrainerHeaders:
+LanceTrainerHeader1: ; 0x5a397
+ db $1 ; flag's bit
+ db ($0 << 4) ; trainer's view range
+ dw $d866 ; flag's byte
+ dw UnnamedText_5a3ae ; 0x63ae TextBeforeBattle
+ dw UnnamedText_5a3b8 ; 0x63b8 TextAfterBattle
+ dw UnnamedText_5a3b3 ; 0x63b3 TextEndBattle
+ dw UnnamedText_5a3b3 ; 0x63b3 TextEndBattle
+; 0x5a3a3
+db $ff
+
LanceText1: ; 0x5a3a4
db $08 ; asm
- ld hl, $6397
+ ld hl, LanceTrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
@@ -44776,7 +45248,13 @@
db $50
; 0x5a3b3 + 5 bytes
-INCBIN "baserom.gbc",$5a3b8,$d
+UnnamedText_5a3b8: ; 0x5a3b8
+ TX_FAR _UnnamedText_5a3b8 ; 0x85e9e
+ db $8
+ ld hl, $d866
+ set 6, [hl]
+ jp TextScriptEnd
+; 0x5a3c5
LanceObject: ; 0x5a3c5 (size=36)
db $3 ; border tile
@@ -45399,7 +45877,7 @@
res 6, [hl]
call nz, $43a4
call $3c3c
- ld hl, $4441
+ ld hl, PewterGymTrainerHeaders
ld de, $43ca
ld a, [$d5fc]
call $3160
@@ -45412,8 +45890,19 @@
PewterGymTexts: ; 0x5c435
dw PewterGymText1, PewterGymText2, PewterGymText3, PewterGymText4, PewterGymText5, PewterGymText6
-INCBIN "baserom.gbc",$5c43b + 6,$13 - 6
+PewterGymTrainerHeaders:
+PewterGymTrainerHeader1: ; 0x5c441
+ db $2 ; flag's bit
+ db ($5 << 4) ; trainer's view range
+ dw $d755 ; flag's byte
+ dw UnnamedText_5c4d0 ; 0x44d0 TextBeforeBattle
+ dw UnnamedText_5c4da ; 0x44da TextAfterBattle
+ dw UnnamedText_5c4d5 ; 0x44d5 TextEndBattle
+ dw UnnamedText_5c4d5 ; 0x44d5 TextEndBattle
+; 0x5c44d
+db $ff
+
PewterGymText1: ; 0x5c44e
db $08 ; asm
ld a, [$d755]
@@ -45435,7 +45924,7 @@
set 6, [hl]
set 7, [hl]
ld hl, UnnamedText_5c4bc
- ld de, $44bc ; probably UnnamedText_5c4bc
+ ld de, UnnamedText_5c4bc
call $3354
ldh a, [$8c]
ld [$cf13], a
@@ -45467,11 +45956,11 @@
; 0x5c4a8 + 5 bytes
PewterGymText5: ; 0x5c4ad
-INCBIN "baserom.gbc",$5c4ad,5
-
-UnnamedText_5c4b2:
- TX_FAR _UnnamedText_5c4b2
+ TX_FAR _ReceivedTM34Text ; 0x980ad
+ db $0B
+ TX_FAR _UnnamedText_5c4b2 ; 0x980c0
db $50
+; 0x5c4ad + 10 bytes = 0x5c4b7
PewterGymText6: ; 0x5c4b7
TX_FAR _UnnamedText_5c4b7
@@ -45486,7 +45975,7 @@
PewterGymText2: ; 0x5c4c6
db $08 ; asm
- ld hl, $4441
+ ld hl, PewterGymTrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
@@ -45745,9 +46234,9 @@
ld hl, $d126
bit 6, [hl]
res 6, [hl]
- call nz, $46d0
+ call nz, CeruleanGymScript_Unknown5c6d0
call $3c3c
- ld hl, $4758
+ ld hl, CeruleanGymTrainerHeaders
ld de, $46f8
ld a, [$d5fd]
call $3160
@@ -45755,13 +46244,35 @@
ret
; 0x5c6d0
+CeruleanGymScript_Unknown5c6d0: ; 0x5c6d0
INCBIN "baserom.gbc",$5c6d0,$7a
CeruleanGymTexts: ; 0x5c74a
dw CeruleanGymText1, CeruleanGymText2, CeruleanGymText3, CeruleanGymText4, CeruleanGymText5, CeruleanGymText6, CeruleanGymText7
-INCBIN "baserom.gbc",$5c752 + 6,$1f - 6
+CeruleanGymTrainerHeaders:
+CeruleanGymTrainerHeader1: ; 0x5c758
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d75e ; flag's byte
+ dw UnnamedText_5c7e9 ; 0x47e9 TextBeforeBattle
+ dw UnnamedText_5c7f3 ; 0x47f3 TextAfterBattle
+ dw UnnamedText_5c7ee ; 0x47ee TextEndBattle
+ dw UnnamedText_5c7ee ; 0x47ee TextEndBattle
+; 0x5c764
+TrainerHeader_5c764: ; 0x5c764
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d75e ; flag's byte
+ dw UnnamedText_5c802 ; 0x4802 TextBeforeBattle
+ dw UnnamedText_5c80c ; 0x480c TextAfterBattle
+ dw UnnamedText_5c807 ; 0x4807 TextEndBattle
+ dw UnnamedText_5c807 ; 0x4807 TextEndBattle
+; 0x5c770
+
+db $ff
+
CeruleanGymText1: ; 0x5c771
db $08 ; asm
ld a, [$d75e]
@@ -45814,9 +46325,10 @@
; 0x5c7c8 + 5 bytes
CeruleanGymText6: ; 0x5c7cd
-INCBIN "baserom.gbc",$5c7cd,4
-db $0b
-db $50
+ReceivedTM11Text: ; 05c7cd
+ TX_FAR _ReceivedTM11Text ; 0x98b7d
+ db $0B, $50
+; 0x5c7cd + 6 bytes = 0x5c7d3
CeruleanGymText7: ; 0x5c7d3
TX_FAR _UnnamedText_5c7d3
@@ -45823,11 +46335,14 @@
db $50
; 0x5c7d3 + 5 bytes
-INCBIN "baserom.gbc",$5c7d8,$5c7df - $5c7d8
+UnnamedText_5c7d8: ; 0x5c7d8
+ TX_FAR _UnnamedText_5c7d8 ; 0x98bb0
+ db $11, $6, $50
+; 0x5c7d8 + 7 bytes = 0x5c7df
CeruleanGymText2: ; 0x5c7df
db $08 ; asm
- ld hl, $4758
+ ld hl, CeruleanGymTrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
@@ -45848,7 +46363,7 @@
CeruleanGymText3: ; 0x5c7f8
db $08 ; asm
- ld hl, $4764
+ ld hl, TrainerHeader_5c764
call LoadTrainerHeader
jp TextScriptEnd
@@ -46167,13 +46682,13 @@
bit 5, [hl]
res 5, [hl]
push hl
- call nz, $4a4c
+ call nz, VermilionGymScript_Unknown5ca4c
pop hl
bit 6, [hl]
res 6, [hl]
call nz, $4a6d
call $3c3c
- ld hl, $4af8
+ ld hl, VermilionGymTrainerHeader1
ld de, $4a95
ld a, [$d5fe]
call $3160
@@ -46181,13 +46696,45 @@
ret
; 0x5ca4c
+VermilionGymScript_Unknown5ca4c: ; 0x5ca4c
INCBIN "baserom.gbc",$5ca4c,$9c
VermilionGymTexts: ; 0x5cae8
dw VermilionGymText1, VermilionGymText2, VermilionGymText3, VermilionGymText4, VermilionGymText5, VermilionGymText6, VermilionGymText7, VermilionGymText8
-INCBIN "baserom.gbc",$5caf8,37
+VermilionGymTrainerHeaders:
+VermilionGymTrainerHeader1: ; 0x5caf8
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d773 ; flag's byte
+ dw UnnamedText_5cb9a ; 0x4b9a TextBeforeBattle
+ dw UnnamedText_5cba4 ; 0x4ba4 TextAfterBattle
+ dw UnnamedText_5cb9f ; 0x4b9f TextEndBattle
+ dw UnnamedText_5cb9f ; 0x4b9f TextEndBattle
+; 0x5cb04
+TrainerHeader_5cb04: ; 0x5cb04
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d773 ; flag's byte
+ dw UnnamedText_5cbb3 ; 0x4bb3 TextBeforeBattle
+ dw UnnamedText_5cbbd ; 0x4bbd TextAfterBattle
+ dw UnnamedText_5cbb8 ; 0x4bb8 TextEndBattle
+ dw UnnamedText_5cbb8 ; 0x4bb8 TextEndBattle
+; 0x5cb10
+
+TrainerHeader_5cb10: ; 0x5cb10
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d773 ; flag's byte
+ dw UnnamedText_5cbcc ; 0x4bcc TextBeforeBattle
+ dw UnnamedText_5cbd6 ; 0x4bd6 TextAfterBattle
+ dw UnnamedText_5cbd1 ; 0x4bd1 TextEndBattle
+ dw UnnamedText_5cbd1 ; 0x4bd1 TextEndBattle
+; 0x5cb1c
+
+db $ff
+
VermilionGymText1: ; 0x5cb1d
db $08 ; asm
ld a, [$d773]
@@ -46257,7 +46804,7 @@
VermilionGymText2: ; 0x5cb90
db $08 ; asm
- ld hl, $4af8
+ ld hl, VermilionGymTrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
@@ -46278,7 +46825,7 @@
VermilionGymText3: ; 0x5cba9
db $08 ; asm
- ld hl, $4b04
+ ld hl, TrainerHeader_5cb04
call LoadTrainerHeader
jp TextScriptEnd
@@ -46299,7 +46846,7 @@
VermilionGymText4: ; 0x5cbc2
db $08 ; asm
- ld hl, $4b10
+ ld hl, TrainerHeader_5cb10
call LoadTrainerHeader
jp TextScriptEnd
@@ -46510,7 +47057,7 @@
FightingDojoScript: ; 0x5cd5d
call $3c3c
- ld hl, $4e13
+ ld hl, FightingDojoTrainerHeader1
ld de, $4d7b
ld a, [$d642]
call $3160
@@ -46523,8 +47070,49 @@
FightingDojoTexts: ; 0x5ce03
dw FightingDojoText1, FightingDojoText2, FightingDojoText3, FightingDojoText4, FightingDojoText5, FightingDojoText6, FightingDojoText7, FightingDojoText8
-INCBIN "baserom.gbc",$5ce13,$31
+FightingDojoTrainerHeaders:
+FightingDojoTrainerHeader1: ; 0x5ce13
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7b1 ; flag's byte
+ dw UnnamedText_5ceac ; 0x4eac TextBeforeBattle
+ dw UnnamedText_5ceb6 ; 0x4eb6 TextAfterBattle
+ dw UnnamedText_5ceb1 ; 0x4eb1 TextEndBattle
+ dw UnnamedText_5ceb1 ; 0x4eb1 TextEndBattle
+; 0x5ce1f
+TrainerHeader_5ce1f: ; 0x5ce1f
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7b1 ; flag's byte
+ dw UnnamedText_5cec5 ; 0x4ec5 TextBeforeBattle
+ dw UnnamedText_5cecf ; 0x4ecf TextAfterBattle
+ dw UnnamedText_5ceca ; 0x4eca TextEndBattle
+ dw UnnamedText_5ceca ; 0x4eca TextEndBattle
+; 0x5ce2b
+
+TrainerHeader_5ce2b: ; 0x5ce2b
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b1 ; flag's byte
+ dw UnnamedText_5cede ; 0x4ede TextBeforeBattle
+ dw UnnamedText_5cee8 ; 0x4ee8 TextAfterBattle
+ dw UnnamedText_5cee3 ; 0x4ee3 TextEndBattle
+ dw UnnamedText_5cee3 ; 0x4ee3 TextEndBattle
+; 0x5ce37
+
+TrainerHeader_5ce37: ; 0x5ce37
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b1 ; flag's byte
+ dw UnnamedText_5cef7 ; 0x4ef7 TextBeforeBattle
+ dw UnnamedText_5cf01 ; 0x4f01 TextAfterBattle
+ dw UnnamedText_5cefc ; 0x4efc TextEndBattle
+ dw UnnamedText_5cefc ; 0x4efc TextEndBattle
+; 0x5ce43
+
+db $ff
+
FightingDojoText1: ; 0x5ce44
db $08 ; asm
ld a, [$d7b1]
@@ -46580,7 +47168,7 @@
FightingDojoText2: ; 0x5cea2
db $08 ; asm
- ld hl, $4e13
+ ld hl, FightingDojoTrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
@@ -46601,7 +47189,7 @@
FightingDojoText3: ; 0x5cebb
db $08 ; asm
- ld hl, $4e1f
+ ld hl, TrainerHeader_5ce1f
call LoadTrainerHeader
jp TextScriptEnd
@@ -46622,7 +47210,7 @@
FightingDojoText4: ; 0x5ced4
db $08 ; asm
- ld hl, $4e2b
+ ld hl, TrainerHeader_5ce2b
call LoadTrainerHeader
jp TextScriptEnd
@@ -46643,7 +47231,7 @@
FightingDojoText5: ; 0x5ceed
db $08 ; asm
- ld hl, $4e37
+ ld hl, TrainerHeader_5ce37
call LoadTrainerHeader
jp TextScriptEnd
@@ -46778,7 +47366,7 @@
ld hl, $d126
bit 6, [hl]
res 6, [hl]
- call nz, $502a
+ call nz, .extra
call $3c3c
ld hl, $50c3
ld de, $5053
@@ -46787,14 +47375,85 @@
ld [$d65c], a
ret
; 0x5d02a
-
+.extra
INCBIN "baserom.gbc",$5d02a,$81
SaffronGymTexts: ; 0x5d0ab
dw SaffronGymText1, SaffronGymText2, SaffronGymText3, SaffronGymText4, SaffronGymText5, SaffronGymText6, SaffronGymText7, SaffronGymText8, SaffronGymText9, SaffronGymText10, SaffronGymText11, SaffronGymText12
-INCBIN "baserom.gbc",$5d0bd + 6,$5b - 6
+SaffronGymTrainerHeaders:
+SaffronGymTrainerHeader1: ; 0x5d0c3
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b3 ; flag's byte
+ dw UnnamedText_5d1f0 ; 0x51f0 TextBeforeBattle
+ dw UnnamedText_5d1fa ; 0x51fa TextAfterBattle
+ dw UnnamedText_5d1f5 ; 0x51f5 TextEndBattle
+ dw UnnamedText_5d1f5 ; 0x51f5 TextEndBattle
+; 0x5d0cf
+TrainerHeader_5d0cf: ; 0x5d0cf
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b3 ; flag's byte
+ dw UnnamedText_5d1ff ; 0x51ff TextBeforeBattle
+ dw UnnamedText_5d209 ; 0x5209 TextAfterBattle
+ dw UnnamedText_5d204 ; 0x5204 TextEndBattle
+ dw UnnamedText_5d204 ; 0x5204 TextEndBattle
+; 0x5d0db
+
+TrainerHeader_5d0db: ; 0x5d0db
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b3 ; flag's byte
+ dw UnnamedText_5d20e ; 0x520e TextBeforeBattle
+ dw UnnamedText_5d218 ; 0x5218 TextAfterBattle
+ dw UnnamedText_5d213 ; 0x5213 TextEndBattle
+ dw UnnamedText_5d213 ; 0x5213 TextEndBattle
+; 0x5d0e7
+
+TrainerHeader_5d0e7: ; 0x5d0e7
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b3 ; flag's byte
+ dw UnnamedText_5d21d ; 0x521d TextBeforeBattle
+ dw UnnamedText_5d227 ; 0x5227 TextAfterBattle
+ dw UnnamedText_5d222 ; 0x5222 TextEndBattle
+ dw UnnamedText_5d222 ; 0x5222 TextEndBattle
+; 0x5d0f3
+
+TrainerHeader_5d0f3: ; 0x5d0f3
+ db $6 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b3 ; flag's byte
+ dw UnnamedText_5d22c ; 0x522c TextBeforeBattle
+ dw UnnamedText_5d236 ; 0x5236 TextAfterBattle
+ dw UnnamedText_5d231 ; 0x5231 TextEndBattle
+ dw UnnamedText_5d231 ; 0x5231 TextEndBattle
+; 0x5d0ff
+
+TrainerHeader_5d0ff: ; 0x5d0ff
+ db $7 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b3 ; flag's byte
+ dw UnnamedText_5d23b ; 0x523b TextBeforeBattle
+ dw UnnamedText_5d245 ; 0x5245 TextAfterBattle
+ dw UnnamedText_5d240 ; 0x5240 TextEndBattle
+ dw UnnamedText_5d240 ; 0x5240 TextEndBattle
+; 0x5d10b
+
+TrainerHeader_5d10b: ; 0x5d10b
+ db $8 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7b3 ; flag's byte
+ dw UnnamedText_5d24a ; 0x524a TextBeforeBattle
+ dw UnnamedText_5d254 ; 0x5254 TextAfterBattle
+ dw UnnamedText_5d24f ; 0x524f TextEndBattle
+ dw UnnamedText_5d24f ; 0x524f TextEndBattle
+; 0x5d117
+
+db $ff
+
SaffronGymText1: ; 0x5d118
db $08 ; asm
ld a, [$d7b3]
@@ -46864,43 +47523,43 @@
SaffronGymText2: ; 0x5d187
db $08 ; asm
- ld hl, $50c3
+ ld hl, SaffronGymTrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
SaffronGymText3: ; 0x5d191
db $08 ; asm
- ld hl, $50cf
+ ld hl, TrainerHeader_5d0cf
call LoadTrainerHeader
jp TextScriptEnd
SaffronGymText4: ; 0x5d19b
db $08 ; asm
- ld hl, $50db
+ ld hl, TrainerHeader_5d0db
call LoadTrainerHeader
jp TextScriptEnd
SaffronGymText5: ; 0x5d1a5
db $08 ; asm
- ld hl, $50e7
+ ld hl, TrainerHeader_5d0e7
call LoadTrainerHeader
jp TextScriptEnd
SaffronGymText6: ; 0x5d1af
db $08 ; asm
- ld hl, $50f3
+ ld hl, TrainerHeader_5d0f3
call LoadTrainerHeader
jp TextScriptEnd
SaffronGymText7: ; 0x5d1b9
db $08 ; asm
- ld hl, $50ff
+ ld hl, TrainerHeader_5d0ff
call LoadTrainerHeader
jp TextScriptEnd
SaffronGymText8: ; 0x5d1c3
db $08 ; asm
- ld hl, $510b
+ ld hl, TrainerHeader_5d10b
call LoadTrainerHeader
jp TextScriptEnd
@@ -47237,9 +47896,8 @@
SaffronPokecenterText2: ; 0x5d543
TX_FAR _SaffronPokecenterText1
+ db $50
-INCBIN "baserom.gbc",$5d548,$5d549 - $5d548
-
SaffronPokecenterText3: ; 0x5d549
TX_FAR _SaffronPokecenterText3
db $50
@@ -47441,7 +48099,8 @@
ret
; 0x5d6af
-INCBIN "baserom.gbc",$5d6af,$1
+UndergroundTunnelEntranceRoute5_5d6af: ; 0x5d6af
+ db $50
UndergroundTunnelEntranceRoute5Texts: ; 0x5d6b0
dw UndergroundTunnelEntranceRoute5Text1
@@ -47452,7 +48111,7 @@
ld [W_WHICHTRADE], a
ld a, $54
call Predef
- ld hl, $56af
+ ld hl, UndergroundTunnelEntranceRoute5_5d6af
ret
UndergroundTunnelEntranceRoute5Object: ; 0x5d6c1 (size=34)
@@ -47587,9 +48246,9 @@
dw SilphCo9Object ; objects
SilphCo9Script: ; 0x5d7bb
- call $57d1
+ call SilphCo9Script_Unknown5d7d1
call $3c3c
- ld hl, $5893
+ ld hl, SilphCo9TrainerHeaders
ld de, $5885
ld a, [$d64a]
call $3160
@@ -47597,13 +48256,45 @@
ret
; 0x5d7d1
+SilphCo9Script_Unknown5d7d1: ; 0x5d7d1
INCBIN "baserom.gbc",$5d7d1,$ba
SilphCo9Texts: ; 0x5d88b
dw SilphCo9Text1, SilphCo9Text2, SilphCo9Text3, SilphCo9Text4
-INCBIN "baserom.gbc",$5d893,$25
+SilphCo9TrainerHeaders:
+SilphCo9TrainerHeader1: ; 0x5d893
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d833 ; flag's byte
+ dw UnnamedText_5d912 ; 0x5912 TextBeforeBattle
+ dw UnnamedText_5d91c ; 0x591c TextAfterBattle
+ dw UnnamedText_5d917 ; 0x5917 TextEndBattle
+ dw UnnamedText_5d917 ; 0x5917 TextEndBattle
+; 0x5d89f
+TrainerHeader_5d89f: ; 0x5d89f
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d833 ; flag's byte
+ dw UnnamedText_5d921 ; 0x5921 TextBeforeBattle
+ dw UnnamedText_5d92b ; 0x592b TextAfterBattle
+ dw UnnamedText_5d926 ; 0x5926 TextEndBattle
+ dw UnnamedText_5d926 ; 0x5926 TextEndBattle
+; 0x5d8ab
+
+TrainerHeader_5d8ab: ; 0x5d8ab
+ db $4 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d833 ; flag's byte
+ dw UnnamedText_5d930 ; 0x5930 TextBeforeBattle
+ dw UnnamedText_5d93a ; 0x593a TextAfterBattle
+ dw UnnamedText_5d935 ; 0x5935 TextEndBattle
+ dw UnnamedText_5d935 ; 0x5935 TextEndBattle
+; 0x5d8b7
+
+db $ff
+
SilphCo9Text1: ; 0x5d8b8
db $08 ; asm
ld a, [$d838]
@@ -47642,19 +48333,19 @@
SilphCo9Text2: ; 0x5d8f4
db $08 ; asm
- ld hl, $5893
+ ld hl, SilphCo9TrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
SilphCo9Text3: ; 0x5d8fe
db $08 ; asm
- ld hl, $589f
+ ld hl, TrainerHeader_5d89f
call LoadTrainerHeader
jp TextScriptEnd
SilphCo9Text4: ; 0x5d908
db $08 ; asm
- ld hl, $58ab
+ ld hl, TrainerHeader_5d8ab
call LoadTrainerHeader
jp TextScriptEnd
@@ -47743,9 +48434,9 @@
ld hl, $d126
bit 5, [hl]
res 5, [hl]
- call nz, $5a27
+ call nz, .next
call $3c3c
- ld hl, $5a6d
+ ld hl, VictoryRoad1TrainerHeaders
ld de, $5a3a
ld a, [$d651]
call $3160
@@ -47752,23 +48443,44 @@
ld [$d651], a
ret
; 0x5da27
-
+.next
INCBIN "baserom.gbc",$5da27,$38
VictoryRoad1Texts: ; 0x5da5f
dw VictoryRoad1Text1, VictoryRoad1Text2, VictoryRoad1Text3, VictoryRoad1Text4, VictoryRoad1Text5, VictoryRoad1Text6, VictoryRoad1Text7
-INCBIN "baserom.gbc",$5da6d,$19
+VictoryRoad1TrainerHeaders
+VictoryRoad1TrainerHeader1: ; 0x5da6d
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d869 ; flag's byte
+ dw UnnamedText_5da9a ; 0x5a9a TextBeforeBattle
+ dw UnnamedText_5daa4 ; 0x5aa4 TextAfterBattle
+ dw UnnamedText_5da9f ; 0x5a9f TextEndBattle
+ dw UnnamedText_5da9f ; 0x5a9f TextEndBattle
+; 0x5da79
+TrainerHeader_5da79: ; 0x5da79
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d869 ; flag's byte
+ dw UnnamedText_5daa9 ; 0x5aa9 TextBeforeBattle
+ dw UnnamedText_5dab3 ; 0x5ab3 TextAfterBattle
+ dw UnnamedText_5daae ; 0x5aae TextEndBattle
+ dw UnnamedText_5daae ; 0x5aae TextEndBattle
+; 0x5da85
+
+db $ff
+
VictoryRoad1Text1: ; 0x5da86
db $08 ; asm
- ld hl, $5a6d
+ ld hl, VictoryRoad1TrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
VictoryRoad1Text2: ; 0x5da90
db $08 ; asm
- ld hl, $5a79
+ ld hl, TrainerHeader_5da79
call LoadTrainerHeader
jp TextScriptEnd
@@ -48227,8 +48939,8 @@
PokemonTower3Script: ; 0x606cc
call $3c3c
- ld hl, $46ed
- ld de, $46df
+ ld hl, PokemonTower3TrainerHeaders
+ ld de, Unknown_606df
ld a, [$d62c]
call $3160
ld [$d62c], a
@@ -48235,28 +48947,59 @@
ret
; 0x606df
+Unknown_606df: ; 0x606df
INCBIN "baserom.gbc",$606df,$6
PokemonTower3Texts: ; 0x606e5
dw PokemonTower3Text1, PokemonTower3Text2, PokemonTower3Text3, PokemonTower3Text4
-INCBIN "baserom.gbc",$606ed,$25
+PokemonTower3TrainerHeaders:
+PokemonTower3TrainerHeader1: ; 0x606ed
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d765 ; flag's byte
+ dw UnnamedText_60730 ; 0x4730 TextBeforeBattle
+ dw UnnamedText_6073a ; 0x473a TextAfterBattle
+ dw UnnamedText_60735 ; 0x4735 TextEndBattle
+ dw UnnamedText_60735 ; 0x4735 TextEndBattle
+; 0x606f9
+TrainerHeader_606f9: ; 0x606f9
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d765 ; flag's byte
+ dw UnnamedText_6073f ; 0x473f TextBeforeBattle
+ dw UnnamedText_60749 ; 0x4749 TextAfterBattle
+ dw UnnamedText_60744 ; 0x4744 TextEndBattle
+ dw UnnamedText_60744 ; 0x4744 TextEndBattle
+; 0x60705
+
+TrainerHeader_60705: ; 0x60705
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d765 ; flag's byte
+ dw UnnamedText_6074e ; 0x474e TextBeforeBattle
+ dw UnnamedText_60758 ; 0x4758 TextAfterBattle
+ dw UnnamedText_60753 ; 0x4753 TextEndBattle
+ dw UnnamedText_60753 ; 0x4753 TextEndBattle
+; 0x60711
+db $ff
+
PokemonTower3Text1: ; 0x60712
db $08 ; asm
- ld hl, $46ed
+ ld hl, PokemonTower3TrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
PokemonTower3Text2: ; 0x6071c
db $08 ; asm
- ld hl, $46f9
+ ld hl, TrainerHeader_606f9
call LoadTrainerHeader
jp TextScriptEnd
PokemonTower3Text3: ; 0x60726
db $08 ; asm
- ld hl, $4705
+ ld hl, TrainerHeader_60705
call LoadTrainerHeader
jp TextScriptEnd
@@ -48337,8 +49080,8 @@
PokemonTower4Script: ; 0x607f6
call $3c3c
- ld hl, $481b
- ld de, $4809
+ ld hl, PokemonTower4TrainerHeaders
+ ld de, PokemonTower4Script_Unknown60809
ld a, [$d62d]
call $3160
ld [$d62d], a
@@ -48345,28 +49088,60 @@
ret
; 0x60809
+PokemonTower4Script_Unknown60809: ; 0x60809
INCBIN "baserom.gbc",$60809,$6
PokemonTower4Texts: ; 0x6080f
dw PokemonTower4Text1, PokemonTower4Text2, PokemonTower4Text3, PokemonTower4Text4, PokemonTower4Text5, PokemonTower4Text6
-INCBIN "baserom.gbc",$6081b,$25
+PokemonTower4TrainerHeaders:
+PokemonTower4TrainerHeader1: ; 0x6081b
+ db $1 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d766 ; flag's byte
+ dw UnnamedText_6085e ; 0x485e TextBeforeBattle
+ dw UnnamedText_60868 ; 0x4868 TextAfterBattle
+ dw UnnamedText_60863 ; 0x4863 TextEndBattle
+ dw UnnamedText_60863 ; 0x4863 TextEndBattle
+; 0x60827
+TrainerHeader_60827: ; 0x60827
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d766 ; flag's byte
+ dw UnnamedText_6086d ; 0x486d TextBeforeBattle
+ dw UnnamedText_60877 ; 0x4877 TextAfterBattle
+ dw UnnamedText_60872 ; 0x4872 TextEndBattle
+ dw UnnamedText_60872 ; 0x4872 TextEndBattle
+; 0x60833
+
+TrainerHeader_60833: ; 0x60833
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d766 ; flag's byte
+ dw UnnamedText_6087c ; 0x487c TextBeforeBattle
+ dw UnnamedText_60886 ; 0x4886 TextAfterBattle
+ dw UnnamedText_60881 ; 0x4881 TextEndBattle
+ dw UnnamedText_60881 ; 0x4881 TextEndBattle
+; 0x6083f
+
+db $ff
+
PokemonTower4Text1: ; 0x60840
db $08 ; asm
- ld hl, $481b
+ ld hl, PokemonTower4TrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
PokemonTower4Text2: ; 0x6084a
db $08 ; asm
- ld hl, $4827
+ ld hl, TrainerHeader_60827
call LoadTrainerHeader
jp TextScriptEnd
PokemonTower4Text3: ; 0x60854
db $08 ; asm
- ld hl, $4833
+ ld hl, TrainerHeader_60833
call LoadTrainerHeader
jp TextScriptEnd
@@ -48449,8 +49224,8 @@
PokemonTower5Script: ; 0x60932
call $3c3c
- ld hl, $49a9
- ld de, $4945
+ ld hl, PokemonTower5TrainerHeaders
+ ld de, PokemonTower5Script_Unknown60945
ld a, [$d62e]
call $3160
ld [$d62e], a
@@ -48457,13 +49232,55 @@
ret
; 0x60945
+PokemonTower5Script_Unknown60945: ; 0x60945
INCBIN "baserom.gbc",$60945,$56
PokemonTower5Texts: ; 0x6099b
dw PokemonTower5Text1, PokemonTower5Text2, PokemonTower5Text3, PokemonTower5Text4, PokemonTower5Text5, PokemonTower5Text6, PokemonTower5Text7
-INCBIN "baserom.gbc",$609a9,$31
+PokemonTower5TrainerHeaders:
+PokemonTower5TrainerHeader1: ; 0x609a9
+ db $2 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d767 ; flag's byte
+ dw UnnamedText_609e9 ; 0x49e9 TextBeforeBattle
+ dw UnnamedText_609f3 ; 0x49f3 TextAfterBattle
+ dw UnnamedText_609ee ; 0x49ee TextEndBattle
+ dw UnnamedText_609ee ; 0x49ee TextEndBattle
+; 0x609b5
+TrainerHeader_609b5: ; 0x609b5
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d767 ; flag's byte
+ dw UnnamedText_60a02 ; 0x4a02 TextBeforeBattle
+ dw UnnamedText_60a0c ; 0x4a0c TextAfterBattle
+ dw UnnamedText_60a07 ; 0x4a07 TextEndBattle
+ dw UnnamedText_60a07 ; 0x4a07 TextEndBattle
+; 0x609c1
+
+TrainerHeader_609c1: ; 0x609c1
+ db $4 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d767 ; flag's byte
+ dw UnnamedText_60a1b ; 0x4a1b TextBeforeBattle
+ dw UnnamedText_60a25 ; 0x4a25 TextAfterBattle
+ dw UnnamedText_60a20 ; 0x4a20 TextEndBattle
+ dw UnnamedText_60a20 ; 0x4a20 TextEndBattle
+; 0x609cd
+
+TrainerHeader_609cd: ; 0x609cd
+ db $5 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d767 ; flag's byte
+ dw UnnamedText_60a34 ; 0x4a34 TextBeforeBattle
+ dw UnnamedText_60a3e ; 0x4a3e TextAfterBattle
+ dw UnnamedText_60a39 ; 0x4a39 TextEndBattle
+ dw UnnamedText_60a39 ; 0x4a39 TextEndBattle
+; 0x609d9
+
+db $ff
+
PokemonTower5Text1: ; 0x609da
TX_FAR _PokemonTower5Text1
db $50
@@ -48470,7 +49287,7 @@
PokemonTower5Text2: ; 0x609df
db $08 ; asm
- ld hl, $49a9
+ ld hl, PokemonTower5TrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
@@ -48491,7 +49308,7 @@
PokemonTower5Text3: ; 0x609f8
db $08 ; asm
- ld hl, $49b5
+ ld hl, TrainerHeader_609b5
call LoadTrainerHeader
jp TextScriptEnd
@@ -48512,7 +49329,7 @@
PokemonTower5Text4: ; 0x60a11
db $08 ; asm
- ld hl, $49c1
+ ld hl, TrainerHeader_609c1
call LoadTrainerHeader
jp TextScriptEnd
@@ -48591,7 +49408,7 @@
PokemonTower6Script: ; 0x60aef
call $3c3c
- ld hl, $4bbf
+ ld hl, PokemonTower6TrainerHeaders
ld de, $4b0d
ld a, [$d62f]
call $3160
@@ -48604,28 +49421,70 @@
PokemonTower6Texts: ; 0x60bb1
dw PokemonTower6Text1, PokemonTower6Text2, PokemonTower6Text3, PokemonTower6Text4, PokemonTower6Text5, PokemonTower6Text6, PokemonTower6Text7
-INCBIN "baserom.gbc",$60bbb + 4,$29 - 4
+PokemonTower6TrainerHeaders:
+PokemonTower6TrainerHeader1: ; 0x60bbf
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d768 ; flag's byte
+ dw UnnamedText_60c29 ; 0x4c29 TextBeforeBattle
+ dw UnnamedText_60c33 ; 0x4c33 TextAfterBattle
+ dw UnnamedText_60c2e ; 0x4c2e TextEndBattle
+ dw UnnamedText_60c2e ; 0x4c2e TextEndBattle
+; 0x60bcb
+TrainerHeader_60bcb: ; 0x60bcb
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d768 ; flag's byte
+ dw UnnamedText_60c38 ; 0x4c38 TextBeforeBattle
+ dw UnnamedText_60c42 ; 0x4c42 TextAfterBattle
+ dw UnnamedText_60c3d ; 0x4c3d TextEndBattle
+ dw UnnamedText_60c3d ; 0x4c3d TextEndBattle
+; 0x60bd7
+
+TrainerHeader_60bd7: ; 0x60bd7
+ db $3 ; flag's bit
+ db ($2 << 4) ; trainer's view range
+ dw $d768 ; flag's byte
+ dw UnnamedText_60c47 ; 0x4c47 TextBeforeBattle
+ dw UnnamedText_60c51 ; 0x4c51 TextAfterBattle
+ dw UnnamedText_60c4c ; 0x4c4c TextEndBattle
+ dw UnnamedText_60c4c ; 0x4c4c TextEndBattle
+; 0x60be3
+
+db $ff
+
PokemonTower6Text1: ; 0x60be4
db $08 ; asm
- ld hl, $4bbf
+ ld hl, PokemonTower6TrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
PokemonTower6Text2: ; 0x60bee
db $08 ; asm
- ld hl, $4bcb
+ ld hl, TrainerHeader_60bcb
call LoadTrainerHeader
jp TextScriptEnd
PokemonTower6Text3: ; 0x60bf8
db $08 ; asm
- ld hl, $4bd7
+ ld hl, TrainerHeader_60bd7
call LoadTrainerHeader
jp TextScriptEnd
PokemonTower6Text7: ; 0x60c02
-INCBIN "baserom.gbc",$60c02,$60c1f - $60c02
+ db $8
+ ld hl, UnnamedText_60c1f
+ call PrintText
+ ld a, $91
+ call $13d0
+ call $3748
+ ld c, $1e
+ call DelayFrames
+ ld hl, UnnamedText_60c24
+ call PrintText
+ jp TextScriptEnd
+; 0x60c1f
UnnamedText_60c1f: ; 0x60c1f
TX_FAR _UnnamedText_60c1f
@@ -48722,7 +49581,7 @@
PokemonTower7Script: ; 0x60d05
call $3c3c
- ld hl, $4e47
+ ld hl, PokemonTower7TrainerHeaders
ld de, $4d23
ld a, [$d630]
call $3160
@@ -48735,23 +49594,54 @@
PokemonTower7Texts: ; 0x60e3f
dw PokemonTower7Text1, PokemonTower7Text2, PokemonTower7Text3, PokemonTower7Text4
-INCBIN "baserom.gbc",$60e47,$25
+PokemonTower7TrainerHeaders:
+PokemonTower7TrainerHeader1: ; 0x60e47
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d769 ; flag's byte
+ dw UnnamedText_60ec9 ; 0x4ec9 TextBeforeBattle
+ dw UnnamedText_60ed3 ; 0x4ed3 TextAfterBattle
+ dw UnnamedText_60ece ; 0x4ece TextEndBattle
+ dw UnnamedText_60ece ; 0x4ece TextEndBattle
+; 0x60e53
+TrainerHeader_60e53: ; 0x60e53
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d769 ; flag's byte
+ dw UnnamedText_60ed8 ; 0x4ed8 TextBeforeBattle
+ dw UnnamedText_60ee2 ; 0x4ee2 TextAfterBattle
+ dw UnnamedText_60edd ; 0x4edd TextEndBattle
+ dw UnnamedText_60edd ; 0x4edd TextEndBattle
+; 0x60e5f
+
+TrainerHeader_60e5f: ; 0x60e5f
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d769 ; flag's byte
+ dw UnnamedText_60ee7 ; 0x4ee7 TextBeforeBattle
+ dw UnnamedText_60ef1 ; 0x4ef1 TextAfterBattle
+ dw UnnamedText_60eec ; 0x4eec TextEndBattle
+ dw UnnamedText_60eec ; 0x4eec TextEndBattle
+; 0x60e6b
+
+db $ff
+
PokemonTower7Text1: ; 0x60e6c
db $08 ; asm
- ld hl, $4e47
+ ld hl, PokemonTower7TrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
PokemonTower7Text2: ; 0x60e76
db $08 ; asm
- ld hl, $4e53
+ ld hl, TrainerHeader_60e53
call LoadTrainerHeader
jp TextScriptEnd
PokemonTower7Text3: ; 0x60e80
db $08 ; asm
- ld hl, $4e5f
+ ld hl, TrainerHeader_60e5f
call LoadTrainerHeader
jp TextScriptEnd
@@ -48940,8 +49830,8 @@
ViridianForestScript: ; 0x6110d
call $3c3c
- ld hl, $5142
- ld de, $5120
+ ld hl, ViridianForestTrainerHeaders
+ ld de, ViridianForestScript_Unknown61120
ld a, [$d618]
call $3160
ld [$d618], a
@@ -48948,13 +49838,45 @@
ret
; 0x61120
+ViridianForestScript_Unknown61120: ; 0x61120
INCBIN "baserom.gbc",$61120,$6
ViridianForestTexts: ; 0x61126
dw ViridianForestText1, ViridianForestText2, ViridianForestText3, ViridianForestText4, ViridianForestText5, ViridianForestText6, ViridianForestText7, ViridianForestText8, ViridianForestText9, ViridianForestText10, ViridianForestText11, ViridianForestText12, ViridianForestText13, ViridianForestText14
-INCBIN "baserom.gbc",$61142,$25
+ViridianForestTrainerHeaders:
+ViridianForestTrainerHeader1: ; 0x61142
+ db $2 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7f3 ; flag's byte
+ dw UnnamedText_6118a ; 0x518a TextBeforeBattle
+ dw UnnamedText_61194 ; 0x5194 TextAfterBattle
+ dw UnnamedText_6118f ; 0x518f TextEndBattle
+ dw UnnamedText_6118f ; 0x518f TextEndBattle
+; 0x6114e
+TrainerHeader_6114e: ; 0x6114e
+ db $3 ; flag's bit
+ db ($4 << 4) ; trainer's view range
+ dw $d7f3 ; flag's byte
+ dw UnnamedText_61199 ; 0x5199 TextBeforeBattle
+ dw UnnamedText_611a3 ; 0x51a3 TextAfterBattle
+ dw UnnamedText_6119e ; 0x519e TextEndBattle
+ dw UnnamedText_6119e ; 0x519e TextEndBattle
+; 0x6115a
+
+TrainerHeader_6115a: ; 0x6115a
+ db $4 ; flag's bit
+ db ($1 << 4) ; trainer's view range
+ dw $d7f3 ; flag's byte
+ dw UnnamedText_611a8 ; 0x51a8 TextBeforeBattle
+ dw UnnamedText_611b2 ; 0x51b2 TextAfterBattle
+ dw UnnamedText_611ad ; 0x51ad TextEndBattle
+ dw UnnamedText_611ad ; 0x51ad TextEndBattle
+; 0x61166
+
+db $ff
+
ViridianForestText1: ; 0x61167
TX_FAR _ViridianForestText1
db $50
@@ -48961,19 +49883,19 @@
ViridianForestText2: ; 0x6116c
db $08 ; asm
- ld hl, $5142
+ ld hl, ViridianForestTrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
ViridianForestText3: ; 0x61176
db $08 ; asm
- ld hl, $514e
+ ld hl, TrainerHeader_6114e
call LoadTrainerHeader
jp TextScriptEnd
ViridianForestText4: ; 0x61180
db $08 ; asm
- ld hl, $515a
+ ld hl, TrainerHeader_6115a
call LoadTrainerHeader
jp TextScriptEnd
@@ -49429,7 +50351,7 @@
SSAnne5Script: ; 0x616ae
call $3c3c
ld hl, $56d1
- ld de, $56c1
+ ld de, SSAnne5Script_Unknown616c1
ld a, [$d617]
call $3160
ld [$d617], a
@@ -49436,13 +50358,35 @@
ret
; 0x616c1
+SSAnne5Script_Unknown616c1: ; 0x616c1
INCBIN "baserom.gbc",$616c1,$6
SSAnne5Texts: ; 0x616c7
dw SSAnne5Text1, SSAnne5Text2, SSAnne5Text3, SSAnne5Text4, SSAnne5Text5
-INCBIN "baserom.gbc",$616d1,$19
+SSAnneTrainerHeaders:
+SSAnneTrainerHeader1: ; 0x616d1
+ db $4 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7ff ; flag's byte
+ dw UnnamedText_61703 ; 0x5703 TextBeforeBattle
+ dw UnnamedText_6170d ; 0x570d TextAfterBattle
+ dw UnnamedText_61708 ; 0x5708 TextEndBattle
+ dw UnnamedText_61708 ; 0x5708 TextEndBattle
+; 0x616dd
+TrainerHeader_616dd: ; 0x616dd
+ db $5 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d7ff ; flag's byte
+ dw UnnamedText_6171c ; 0x571c TextBeforeBattle
+ dw UnnamedText_61726 ; 0x5726 TextAfterBattle
+ dw UnnamedText_61721 ; 0x5721 TextEndBattle
+ dw UnnamedText_61721 ; 0x5721 TextEndBattle
+; 0x616e9
+
+db $ff
+
SSAnne5Text1: ; 0x616ea
TX_FAR _SSAnne5Text1
db $50
@@ -49457,7 +50401,7 @@
SSAnne5Text4: ; 0x616f9
db $08 ; asm
- ld hl, $56d1
+ ld hl, SSAnneTrainerHeader1
call LoadTrainerHeader
jp TextScriptEnd
@@ -49478,7 +50422,7 @@
SSAnne5Text5: ; 0x61712
db $08 ; asm
- ld hl, $56dd
+ ld hl, TrainerHeader_616dd
call LoadTrainerHeader
jp TextScriptEnd
@@ -58333,7 +59277,7 @@
db "#MON master!", $58
; 0x85e64 + 58 bytes
-UnnamedText_85e9e: ; 0x85e9e
+_UnnamedText_5a3b8: ; 0x85e9e
db $0, "I still can't", $4f
db "believe my", $55
db "dragons lost to", $55
@@ -65454,7 +66398,7 @@
db "with you!", $57
; 0x98092 + 27 bytes
-ReceivedTM34Text: ; 0x980ad
+_ReceivedTM34Text: ; 0x980ad
db $0, $52, " received", $4f
db "TM34!@@"
; 0x980c0
@@ -65730,7 +66674,7 @@
db "my favorite TM!", $57
; 0x98ab0 + 205 bytes
-ReceivedTM11Text: ; 0x98b7d
+_ReceivedTM11Text: ; 0x98b7d
db $0, $52, " received", $4f
db "TM11!@@"
; 0x98b90
@@ -65740,7 +66684,7 @@
db "room for this!", $57
; 0x98b90 + 32 bytes
-UnnamedText_98bb0: ; 0x98bb0
+_UnnamedText_5c7d8: ; 0x98bb0
db $0, "Wow!", $4f
db "You're too much!", $51
db "All right!", $51
--- a/extras/pretty_trainer_headers.py
+++ b/extras/pretty_trainer_headers.py
@@ -6,16 +6,16 @@
from extract_maps import calculate_pointer
import sys
spacing = "\t"
+rom = None
def pretty_print_trainer_header(address, label=None):
"""make pretty text for a trainer header"""
+ global rom
output = ""
bank_id = 0
if address > 0x4000:
bank_id = address / 0x4000
- rom = open("../baserom.gbc", "r").read()
-
#convert address to an integer if necessary
if type(address) == str:
if "$" in address: address = address.replace("$", "0x")
@@ -97,6 +97,12 @@
return output
+def all_trainer_headers_at(address):
+ i = 0
+ while ord(rom[address + (i*12)]) != 0xff:
+ print pretty_print_trainer_header(address + (i*12))
+ i += 1
+
def main():
load_labels()
@@ -111,7 +117,11 @@
address = int(args[0], 16)
label = args[1]
- print pretty_print_trainer_header(address, label)
+ global rom
+ rom = open("../baserom.gbc", "r").read()
+
+ #print pretty_print_trainer_header(address, label)
+ print all_trainer_headers_at(address)
if __name__ == "__main__":
main()