ref: f671ebc14350eb3fb9c2c9ea23b837ec7aa5c790
parent: 197efee45811e1416576c1c96093ba4a1bcf0319
author: yenatch <yenatch@gmail.com>
date: Sun Dec 8 09:48:17 EST 2013
wram labels and clarify safari zone step counter
--- a/main.asm
+++ b/main.asm
@@ -21210,7 +21210,7 @@
call TextBoxBorder
FuncCoord 1, 1 ; $c3b5
ld hl, Coord
- ld de, W_SAFARITIMER1 ; $d70d
+ ld de, wSafariSteps ; $d70d
ld bc, $203
call PrintNumber
FuncCoord 4, 1 ; $c3b8
@@ -43819,17 +43819,17 @@
jr asm_1e9ab
Func_1e997: ; 1e997 (7:6997)
- ld a, [W_SAFARITIMER1] ; $d70d
+ ld a, [wSafariSteps] ; $d70d
ld b, a
- ld a, [W_SAFARITIMER2] ; $d70e
+ ld a, [wSafariSteps + 1] ; $d70e
ld c, a
or b
jr z, asm_1e9b0
dec bc
ld a, b
- ld [W_SAFARITIMER1], a ; $d70d
+ ld [wSafariSteps], a ; $d70d
ld a, c
- ld [W_SAFARITIMER2], a ; $d70e
+ ld [wSafariSteps + 1], a ; $d70e
asm_1e9ab: ; 1e9ab (7:69ab)
xor a
ld [$da46], a
@@ -108087,10 +108087,10 @@
call PrintText
ld a, $1e
ld [$da47], a
- ld a, $1
- ld [$d70d], a
- ld a, $f6
- ld [$d70e], a
+ ld a, 502 / $100
+ ld [wSafariSteps], a
+ ld a, 502 % $100
+ ld [wSafariSteps + 1], a
ld a, $40
ld c, $3
call Func_752a3
--- a/wram.asm
+++ b/wram.asm
@@ -1069,133 +1069,255 @@
; terminated with $FF
ds 17 * 2
-W_GAMEPROGRESSFLAGS EQU $D5F0 ; $c8 bytes
-W_OAKSLABCURSCRIPT EQU $D5F0
-W_PALLETTOWNCURSCRIPT EQU $D5F1
+W_GAMEPROGRESSFLAGS: ; d5f0
+; $c8 bytes
+ ds 0
-W_BLUESHOUSECURSCRIPT EQU $D5F3
-W_VIRIDIANCITYCURSCRIPT EQU $D5F4
+W_OAKSLABCURSCRIPT: ; d5f0
+ ds 1
+W_PALLETTOWNCURSCRIPT: ; d5f1
+ ds 1
+ ds 1
+W_BLUESHOUSECURSCRIPT: ; d5f3
+ ds 1
+W_VIRIDIANCITYCURSCRIPT: ; d5f4
+ ds 1
+ ds 2
+W_PEWTERCITYCURSCRIPT: ; d5f7
+ ds 1
+W_ROUTE3CURSCRIPT: ; d5f8
+ ds 1
+W_ROUTE4CURSCRIPT: ; d5f9
+ ds 1
+ ds 1
+W_VIRIDIANGYMCURSCRIPT: ; d5fb
+ ds 1
+W_PEWTERGYMCURSCRIPT: ; d5fc
+ ds 1
+W_CERULEANGYMCURSCRIPT: ; d5fd
+ ds 1
+W_VERMILIONGYMCURSCRIPT: ; d5fe
+ ds 1
+W_CELADONGYMCURSCRIPT: ; d5ff
+ ds 1
+W_ROUTE6CURSCRIPT: ; d600
+ ds 1
+W_ROUTE8CURSCRIPT: ; d601
+ ds 1
+W_ROUTE24CURSCRIPT: ; d602
+ ds 1
+W_ROUTE25CURSCRIPT: ; d603
+ ds 1
+W_ROUTE9CURSCRIPT: ; d604
+ ds 1
+W_ROUTE10CURSCRIPT: ; d605
+ ds 1
+W_MTMOON1CURSCRIPT: ; d606
+ ds 1
+W_MTMOON3CURSCRIPT: ; d607
+ ds 1
+W_SSANNE8CURSCRIPT: ; d608
+ ds 1
+W_SSANNE9CURSCRIPT: ; d609
+ ds 1
+W_ROUTE22CURSCRIPT: ; d60a
+ ds 1
+ ds 1
+W_REDSHOUSE2CURSCRIPT: ; d60c
+ ds 1
+W_VIRIDIANMARKETCURSCRIPT: ; d60d
+ ds 1
+W_ROUTE22GATECURSCRIPT: ; d60e
+ ds 1
+W_CERULEANCITYCURSCRIPT: ; d60f
+ ds 1
+ ds 7
+W_SSANNE5CURSCRIPT: ; d617
+ ds 1
+W_VIRIDIANFORESTCURSCRIPT: ; d618
+ ds 1
+W_MUSEUMF1CURSCRIPT: ; d619
+ ds 1
+W_ROUTE13CURSCRIPT: ; d61a
+ ds 1
+W_ROUTE14CURSCRIPT: ; d61b
+ ds 1
+W_ROUTE17CURSCRIPT: ; d61c
+ ds 1
+W_ROUTE19CURSCRIPT: ; d61d
+ ds 1
+W_ROUTE21CURSCRIPT: ; d61e
+ ds 1
+W_SAFARIZONEENTRANCECURSCRIPT: ; d61f
+ ds 1
+W_ROCKTUNNEL2CURSCRIPT: ; d620
+ ds 1
+W_ROCKTUNNEL1CURSCRIPT: ; d621
+ ds 1
+ ds 1
+W_ROUTE11CURSCRIPT: ; d623
+ ds 1
+W_ROUTE12CURSCRIPT: ; d624
+ ds 1
+W_ROUTE15CURSCRIPT: ; d625
+ ds 1
+W_ROUTE16CURSCRIPT: ; d626
+ ds 1
+W_ROUTE18CURSCRIPT: ; d627
+ ds 1
+W_ROUTE20CURSCRIPT: ; d628
+ ds 1
+W_SSANNE10CURSCRIPT: ; d629
+ ds 1
+W_VERMILIONCITYCURSCRIPT: ; d62a
+ ds 1
+W_POKEMONTOWER2CURSCRIPT: ; d62b
+ ds 1
+W_POKEMONTOWER3CURSCRIPT: ; d62c
+ ds 1
+W_POKEMONTOWER4CURSCRIPT: ; d62d
+ ds 1
+W_POKEMONTOWER5CURSCRIPT: ; d62e
+ ds 1
+W_POKEMONTOWER6CURSCRIPT: ; d62f
+ ds 1
+W_POKEMONTOWER7CURSCRIPT: ; d630
+ ds 1
+W_ROCKETHIDEOUT1CURSCRIPT: ; d631
+ ds 1
+W_ROCKETHIDEOUT2CURSCRIPT: ; d632
+ ds 1
+W_ROCKETHIDEOUT3CURSCRIPT: ; d633
+ ds 1
+W_ROCKETHIDEOUT4CURSCRIPT: ; d634
+ ds 2
+W_ROUTE6GATECURSCRIPT: ; d636
+ ds 1
+W_ROUTE8GATECURSCRIPT: ; d637
+ ds 2
+W_CINNABARISLANDCURSCRIPT: ; d639
+ ds 1
+W_MANSION1CURSCRIPT: ; d63a
+ ds 2
+W_MANSION2CURSCRIPT: ; d63c
+ ds 1
+W_MANSION3CURSCRIPT: ; d63d
+ ds 1
+W_MANSION4CURSCRIPT: ; d63e
+ ds 1
+W_VICTORYROAD2CURSCRIPT: ; d63f
+ ds 1
+W_VICTORYROAD3CURSCRIPT: ; d640
+ ds 2
+W_FIGHTINGDOJOCURSCRIPT: ; d642
+ ds 1
+W_SILPHCO2CURSCRIPT: ; d643
+ ds 1
+W_SILPHCO3CURSCRIPT: ; d644
+ ds 1
+W_SILPHCO4CURSCRIPT: ; d645
+ ds 1
+W_SILPHCO5CURSCRIPT: ; d646
+ ds 1
+W_SILPHCO6CURSCRIPT: ; d647
+ ds 1
+W_SILPHCO7CURSCRIPT: ; d648
+ ds 1
+W_SILPHCO8CURSCRIPT: ; d649
+ ds 1
+W_SILPHCO9CURSCRIPT: ; d64a
+ ds 1
+W_HALLOFFAMEROOMCURSCRIPT: ; d64b
+ ds 1
+W_GARYCURSCRIPT: ; d64c
+ ds 1
+W_LORELEICURSCRIPT: ; d64d
+ ds 1
+W_BRUNOCURSCRIPT: ; d64e
+ ds 1
+W_AGATHACURSCRIPT: ; d64f
+ ds 1
+W_UNKNOWNDUNGEON3CURSCRIPT: ; d650
+ ds 1
+W_VICTORYROAD1CURSCRIPT: ; d651
+ ds 1
+ ds 1
+W_LANCECURSCRIPT: ; d653
+ ds 1
+ ds 4
+W_SILPHCO10CURSCRIPT: ; d658
+ ds 1
+W_SILPHCO11CURSCRIPT: ; d659
+ ds 1
+ ds 1
+W_FUCHSIAGYMCURSCRIPT: ; d65b
+ ds 1
+W_SAFFRONGYMCURSCRIPT: ; d65c
+ ds 1
+ ds 1
+W_CINNABARGYMCURSCRIPT: ; d65e
+ ds 1
+W_CELADONGAMECORNERCURSCRIPT: ; d65f
+ ds 1
+W_ROUTE16GATECURSCRIPT: ; d660
+ ds 1
+W_BILLSHOUSECURSCRIPT: ; d661
+ ds 1
+W_ROUTE5GATECURSCRIPT: ; d662
+ ds 1
+W_POWERPLANTCURSCRIPT: ; d663
+; overload
+ ds 0
+W_ROUTE7GATECURSCRIPT: ; d663
+; overload
+ ds 1
+ ds 1
+W_SSANNE2CURSCRIPT: ; d665
+ ds 1
+W_SEAFOAMISLANDS4CURSCRIPT: ; d666
+ ds 1
+W_ROUTE23CURSCRIPT: ; d667
+ ds 1
+W_SEAFOAMISLANDS5CURSCRIPT: ; d668
+ ds 1
+W_ROUTE18GATECURSCRIPT: ; d669
+ ds 1
-W_PEWTERCITYCURSCRIPT EQU $D5F7
-W_ROUTE3CURSCRIPT EQU $D5F8
-W_ROUTE4CURSCRIPT EQU $D5F9
+ ds 161
-W_VIRIDIANGYMCURSCRIPT EQU $D5FB
-W_PEWTERGYMCURSCRIPT EQU $D5FC
-W_CERULEANGYMCURSCRIPT EQU $D5FD
-W_VERMILIONGYMCURSCRIPT EQU $D5FE
-W_CELADONGYMCURSCRIPT EQU $D5FF
-W_ROUTE6CURSCRIPT EQU $D600
-W_ROUTE8CURSCRIPT EQU $D601
-W_ROUTE24CURSCRIPT EQU $D602
-W_ROUTE25CURSCRIPT EQU $D603
-W_ROUTE9CURSCRIPT EQU $D604
-W_ROUTE10CURSCRIPT EQU $D605
-W_MTMOON1CURSCRIPT EQU $D606
-W_MTMOON3CURSCRIPT EQU $D607
-W_SSANNE8CURSCRIPT EQU $D608
-W_SSANNE9CURSCRIPT EQU $D609
-W_ROUTE22CURSCRIPT EQU $D60A
+W_TOWNVISITEDFLAG: ; d70b
+; 2 bytes bit array, 1 means visited
+ ds 2
-W_REDSHOUSE2CURSCRIPT EQU $D60C
-W_VIRIDIANMARKETCURSCRIPT EQU $D60D
-W_ROUTE22GATECURSCRIPT EQU $D60E
-W_CERULEANCITYCURSCRIPT EQU $D60F
+wSafariSteps: ; d70d
+; starts at 502
+ ds 2
-W_SSANNE5CURSCRIPT EQU $D617
-W_VIRIDIANFORESTCURSCRIPT EQU $D618
-W_MUSEUMF1CURSCRIPT EQU $D619
-W_ROUTE13CURSCRIPT EQU $D61A
-W_ROUTE14CURSCRIPT EQU $D61B
-W_ROUTE17CURSCRIPT EQU $D61C
-W_ROUTE19CURSCRIPT EQU $D61D
-W_ROUTE21CURSCRIPT EQU $D61E
-W_SAFARIZONEENTRANCECURSCRIPT EQU $D61F
-W_ROCKTUNNEL2CURSCRIPT EQU $D620
-W_ROCKTUNNEL1CURSCRIPT EQU $D621
+W_FOSSILITEM: ; d70f
+; item given to cinnabar lab
+ ds 1
-W_ROUTE11CURSCRIPT EQU $D623
-W_ROUTE12CURSCRIPT EQU $D624
-W_ROUTE15CURSCRIPT EQU $D625
-W_ROUTE16CURSCRIPT EQU $D626
-W_ROUTE18CURSCRIPT EQU $D627
-W_ROUTE20CURSCRIPT EQU $D628
-W_SSANNE10CURSCRIPT EQU $D629
-W_VERMILIONCITYCURSCRIPT EQU $D62A
-W_POKEMONTOWER2CURSCRIPT EQU $D62B
-W_POKEMONTOWER3CURSCRIPT EQU $D62C
-W_POKEMONTOWER4CURSCRIPT EQU $D62D
-W_POKEMONTOWER5CURSCRIPT EQU $D62E
-W_POKEMONTOWER6CURSCRIPT EQU $D62F
-W_POKEMONTOWER7CURSCRIPT EQU $D630
-W_ROCKETHIDEOUT1CURSCRIPT EQU $D631
-W_ROCKETHIDEOUT2CURSCRIPT EQU $D632
-W_ROCKETHIDEOUT3CURSCRIPT EQU $D633
-W_ROCKETHIDEOUT4CURSCRIPT EQU $D634
+W_FOSSILMON: ; d710
+; mon that will result from the item
+ ds 1
-W_ROUTE6GATECURSCRIPT EQU $D636
-W_ROUTE8GATECURSCRIPT EQU $D637
+ ds 2
-W_CINNABARISLANDCURSCRIPT EQU $D639
-W_MANSION1CURSCRIPT EQU $D63A
+W_ENEMYMONORTRAINERCLASS: ; d713
+; trainer classes start at $c8
+ ds 1
-W_MANSION2CURSCRIPT EQU $D63C
-W_MANSION3CURSCRIPT EQU $D63D
-W_MANSION4CURSCRIPT EQU $D63E
-W_VICTORYROAD2CURSCRIPT EQU $D63F
-W_VICTORYROAD3CURSCRIPT EQU $D640
+ ds 1
-W_FIGHTINGDOJOCURSCRIPT EQU $D642
-W_SILPHCO2CURSCRIPT EQU $D643
-W_SILPHCO3CURSCRIPT EQU $D644
-W_SILPHCO4CURSCRIPT EQU $D645
-W_SILPHCO5CURSCRIPT EQU $D646
-W_SILPHCO6CURSCRIPT EQU $D647
-W_SILPHCO7CURSCRIPT EQU $D648
-W_SILPHCO8CURSCRIPT EQU $D649
-W_SILPHCO9CURSCRIPT EQU $D64A
-W_HALLOFFAMEROOMCURSCRIPT EQU $D64B
-W_GARYCURSCRIPT EQU $D64C
-W_LORELEICURSCRIPT EQU $D64D
-W_BRUNOCURSCRIPT EQU $D64E
-W_AGATHACURSCRIPT EQU $D64F
-W_UNKNOWNDUNGEON3CURSCRIPT EQU $D650
-W_VICTORYROAD1CURSCRIPT EQU $D651
+W_RIVALSTARTER: ; d715
+ ds 1
-W_LANCECURSCRIPT EQU $D653
+ ds 1
-W_SILPHCO10CURSCRIPT EQU $D658
-W_SILPHCO11CURSCRIPT EQU $D659
+W_PLAYERSTARTER: ; d717
+ ds 1
-W_FUCHSIAGYMCURSCRIPT EQU $D65B
-W_SAFFRONGYMCURSCRIPT EQU $D65C
-
-W_CINNABARGYMCURSCRIPT EQU $D65E
-W_CELADONGAMECORNERCURSCRIPT EQU $D65F
-W_ROUTE16GATECURSCRIPT EQU $D660
-W_BILLSHOUSECURSCRIPT EQU $D661
-W_ROUTE5GATECURSCRIPT EQU $D662
-W_POWERPLANTCURSCRIPT EQU $D663 ; overload
-W_ROUTE7GATECURSCRIPT EQU $D663 ; overload
-
-W_SSANNE2CURSCRIPT EQU $D665
-W_SEAFOAMISLANDS4CURSCRIPT EQU $D666
-W_ROUTE23CURSCRIPT EQU $D667
-W_SEAFOAMISLANDS5CURSCRIPT EQU $D668
-W_ROUTE18GATECURSCRIPT EQU $D669
-
-W_TOWNVISITEDFLAG EQU $D70B ; 2 bytes bit array, 1 means visited
-
-W_SAFARITIMER1 EQU $D70D ; use 01 for maximum
-W_SAFARITIMER2 EQU $D70E ; use F4 for maximum
-W_FOSSILITEM EQU $D70F ; item given to cinnabar lab
-W_FOSSILMON EQU $D710 ; mon that will result from the item
-
-W_ENEMYMONORTRAINERCLASS EQU $D713 ; trainer classes start at $c8
-
-W_RIVALSTARTER EQU $D715
-
-W_PLAYERSTARTER EQU $D717
+ ds 27
; bit 4: use variable [W_CURMAPSCRIPT] instead of the provided index for next frame's map script (used to start battle when talking to trainers)
W_FLAGS_D733 EQU $D733