summaryrefslogtreecommitdiff
path: root/wram.asm
diff options
context:
space:
mode:
Diffstat (limited to 'wram.asm')
-rw-r--r--wram.asm273
1 files changed, 235 insertions, 38 deletions
diff --git a/wram.asm b/wram.asm
index 444856409..cbe51a7b4 100644
--- a/wram.asm
+++ b/wram.asm
@@ -476,12 +476,33 @@ BattleMonSpclAtk: ; c646
BattleMonSpclDef: ; c648
ds 2
- ds 25
+BattleMonType1: ; c64a
+ ds 1
+BattleMonType2: ; c64b
+ ds 1
+
+ ds 23
CurOTMon: ; c663
ds 1
- ds 4
+ ds 1
+
+TypeModifier: ; c665
+; >10: super-effective
+; 10: normal
+; <10: not very effective
+
+; bit 7: stab
+ ds 1
+
+CriticalHit: ; c666
+; nonzero for a critical hit
+ ds 1
+
+AttackMissed: ; c667
+; nonzero for a miss
+ ds 1
PlayerSubStatus1: ; c668
; bit
@@ -495,15 +516,23 @@ PlayerSubStatus1: ; c668
; 0 nightmare
ds 1
PlayerSubStatus2: ; c669
-; unknown
+; bit
+; 7
+; 6
+; 5
+; 4
+; 3
+; 2
+; 1
+; 0 curled
ds 1
PlayerSubStatus3: ; c66a
; bit
; 7 confusion
-; 6
-; 5
+; 6 flying
+; 5 underground
; 4 charged
-; 3
+; 3 flinch
; 2
; 1 rollout
; 0 bide
@@ -511,22 +540,30 @@ PlayerSubStatus3: ; c66a
PlayerSubStatus4: ; c66b
; bit
; 7 leech seed
-; 6
+; 6 rage
; 5 recharge
; 4 substitute
; 3
-; 2
+; 2 focus energy
; 1
-; 0
+; 0 bide: unleashed energy
ds 1
PlayerSubStatus5: ; c66c
-; unknown
+; bit
+; 7
+; 6 destiny bond
+; 5 lock-on
+; 4
+; 3
+; 2
+; 1
+; 0
ds 1
EnemySubStatus1: ; c66d
; see PlayerSubStatus1
ds 1
-EnemySubstatus2: ; c66e
+EnemySubStatus2: ; c66e
; see PlayerSubStatus2
ds 1
EnemySubStatus3: ; c66f
@@ -539,28 +576,42 @@ EnemySubStatus5: ; c671
; see PlayerSubStatus5
ds 1
- ds 4
-
+PlayerRolloutCount: ; c672
+ ds 1
+PlayerConfuseCount: ; c673
+ ds 1
+ ds 1
+PlayerDisableCount: ; c675
+ ds 1
PlayerEncoreCount: ; c676
ds 1
PlayerPerishCount: ; c677
ds 1
-
- ds 5
-
-EnemyEncoreCount: ; c67e
+PlayerFuryCutterCount: ; c678
ds 1
-EnemyPerishCount: ; c67f
ds 1
- ds 2
+EnemyRolloutCount: ; c67a
+ ds 1
+EnemyConfuseCount: ; c67b
+ ds 1
+ ds 1
+EnemyEncoreCount: ; c67d
+ ds 1
+EnemyPerishCount: ; c67e
+ ds 1
+ ds 1
+EnemyFuryCutterCount: ; c680
+ ds 1
-PlayerDamageTaken: ; c682
+PlayerDamageTaken: ; c681
ds 2
-EnemyDamageTaken: ; c684
+EnemyDamageTaken: ; c683
ds 2
ds 4
+
+ ds 1
BattleScriptBuffer: ; c68a
ds 40
@@ -568,14 +619,46 @@ BattleScriptBuffer: ; c68a
BattleScriptBufferLoc: ; c6b2
ds 2
- ds 25
+ ds 24
PlayerStatLevels: ; c6cc
; 07 neutral
- ds 8
+PlayerAtkLevel: ; c6cc
+ ds 1
+PlayerDefLevel: ; c6cd
+ ds 1
+PlayerSpdLevel: ; c6ce
+ ds 1
+PlayerSAtkLevel: ; c6cf
+ ds 1
+PlayerSDefLevel: ; c6d0
+ ds 1
+PlayerAccLevel: ; c6d1
+ ds 1
+PlayerEvaLevel: ; c6d2
+ ds 1
+; c6d3
+ ds 1
+PlayerStatLevelsEnd:
+
EnemyStatLevels: ; c6d4
; 07 neutral
- ds 8
+EnemyAtkLevel: ; c6d4
+ ds 1
+EnemyDefLevel: ; c6d5
+ ds 1
+EnemySpdLevel: ; c6d6
+ ds 1
+EnemySAtkLevel: ; c6d7
+ ds 1
+EnemySDefLevel: ; c6d8
+ ds 1
+EnemyAccLevel: ; c6d9
+ ds 1
+EnemyEvaLevel: ; c6da
+ ds 1
+; c6db
+ ds 1
EnemyTurnsTaken: ; c6dc
ds 1
@@ -593,12 +676,21 @@ LinkBattleRNCount: ; c6e5
; how far through the prng stream
ds 1
- ds 15
+ ds 3
-DisabledMove: ; c6f5
+CurEnemyMoveNum: ; c6e9
ds 1
- ds 2
+ ds 10
+
+AlreadyDisobeyed: ; c6f4
+ ds 1
+
+DisabledMove: ; c6f5
+ ds 1
+EnemyEncoredMove: ; c6f6
+ ds 1
+ ds 1
; exists so you can't counter on switch
LastEnemyCounterMove: ; c6f8
@@ -606,14 +698,38 @@ LastEnemyCounterMove: ; c6f8
LastPlayerCounterMove: ; c6f9
ds 1
- ds 8
+ ds 1
+
+AlreadyFailed: ; c6fb
+ ds 1
+
+ ds 3
+
+PlayerScreens: ; c6ff
+; bit 4: reflect
+; bit 3: light screen
+ ds 1
+
+EnemyScreens: ; c700
+; bit 4: reflect
+; bit 3: light screen
+ ds 1
+
+ ds 1
PlayerLightScreenCount: ; c702
ds 1
PlayerReflectCount: ; c703
ds 1
- ds 6
+ ds 2
+
+EnemyLightScreenCount: ; c706
+ ds 1
+EnemyReflectCount: ; c707
+ ds 1
+
+ ds 2
Weather: ; c70a
; 00 normal
@@ -647,7 +763,7 @@ LastEnemyMove: ; c71c
SECTION "overworldmap",BSS[$c800]
OverworldMap: ; c800
ds 1300
-OverworldMapEnd
+OverworldMapEnd:
ds 12
@@ -813,7 +929,76 @@ CurPartyMon: ; d109
; 0-5
ds 1
- ds 55
+ ds 4
+
+TempMon:
+TempMonSpecies: ; d10e
+ ds 1
+TempMonItem: ; d10f
+ ds 1
+TempMonMoves: ; d110
+TempMonMove1: ; d110
+ ds 1
+TempMonMove2: ; d111
+ ds 1
+TempMonMove3: ; d112
+ ds 1
+TempMonMove4: ; d113
+ ds 1
+TempMonID: ; d114
+ ds 2
+TempMonExp: ; d116
+ ds 3
+TempMonHPExp: ; d119
+ ds 2
+TempMonAtkExp: ; d11b
+ ds 2
+TempMonDefExp: ; d11d
+ ds 2
+TempMonSpdExp: ; d11f
+ ds 2
+TempMonSpclExp: ; d121
+ ds 2
+TempMonDVs: ; d123
+; hp = %1000 for each dv
+ ds 1 ; atk/def
+ ds 1 ; spd/spc
+TempMonPP: ; d125
+ ds 4
+TempMonHappiness: ; d129
+ ds 1
+TempMonPokerusStatus: ; d12a
+ ds 1
+TempMonCaughtData: ; d12b
+TempMonCaughtTime: ; d12b
+TempMonCaughtLevel: ; d12b
+ ds 1
+TempMonCaughtGender: ; d12c
+TempMonCaughtLocation: ; d12c
+ ds 1
+TempMonLevel: ; d12d
+ ds 1
+TempMonStatus: ; d12e
+ ds 1
+; d12f
+ ds 1
+TempMonCurHP: ; d130
+ ds 2
+TempMonMaxHP: ; d132
+ ds 2
+TempMonAtk: ; d134
+ ds 2
+TempMonDef: ; d136
+ ds 2
+TempMonSpd: ; d138
+ ds 2
+TempMonSpclAtk: ; d13a
+ ds 2
+TempMonSpclDef: ; d13c
+ ds 2
+TempMonEnd: ; d13e
+
+ ds 3
PartyMenuActionText ; d141
ds 1
@@ -847,7 +1032,10 @@ TileSetPalettes: ; d1e6
; bank 3f
ds 2
- ds 2
+EvolvableFlags: ; d1e8
+ ds 1
+
+ ds 1
Buffer1:
MagikarpLength: ; d1ea
@@ -928,6 +1116,12 @@ EnemyMonSpclAtk: ; d220
EnemyMonSpclDef: ; d222
ds 2
+EnemyMonType1: ; d224
+ ds 1
+EnemyMonType2: ; d225
+ ds 1
+
+
SECTION "Battle",BSS[$d22d]
IsInBattle: ; d22d
@@ -974,6 +1168,9 @@ UnownLetter: ; d234
CurBaseStats: ; d236
ds 32
+CurDamage: ; d256
+ ds 2
+
SECTION "TimeOfDay",BSS[$d269]
TimeOfDay: ; d269
@@ -994,7 +1191,7 @@ OTPartySpecies: ; d281
; or the routine will keep going
OTPartyMon1:
-OTPartyMon1Species2: ; d288
+OTPartyMon1Species: ; d288
ds 1
OTPartyMon1Item: ; d289
ds 1
@@ -1131,6 +1328,7 @@ PlayerID: ; d47b
ds 2
PlayerName: ; d47d
ds 11
+PlayerNameEnd: ; d478
ds 46
@@ -1322,9 +1520,8 @@ PartyCount: ; dcd7
ds 1 ; number of Pokémon in party
PartySpecies: ; dcd8
ds 6 ; species of each Pokémon in party
-; dcde
- ds 1 ; any empty slots including the 7th must be FF
- ; or the routine will keep going
+PartyEnd: ; dcde
+ ds 1 ; legacy functions don't check PartyCount
PartyMons:
PartyMon1:
@@ -1371,7 +1568,7 @@ PartyMon1PokerusStatus: ; dcfb
ds 1
PartyMon1CaughtData: ; dcfc
PartyMon1CaughtTime: ; dcfc
-PartyMon1CaughtLevel ; dcfc
+PartyMon1CaughtLevel: ; dcfc
ds 1
PartyMon1CaughtGender: ; dcfd
PartyMon1CaughtLocation: ; dcfd
@@ -1482,7 +1679,7 @@ BreedMon2Nick: ; df2f
BreedMon2OT: ; df3a
ds 11
BreedMon2Stats:
-BreedMon1Species: ; df45
+BreedMon2Species: ; df45
ds 1
ds 31