summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpikalaxalt <PikalaxALT@gmail.com>2016-06-18 09:03:29 -0400
committerpikalaxalt <PikalaxALT@gmail.com>2016-06-18 09:03:29 -0400
commitd4d3a92e62c985ffad6a198ce389db51ff13cb0d (patch)
treed9828052a404af6394b3beb0c60f17f55a89158d
parent9170a9a13efbf06fb7a306f457380a7b4cef5caa (diff)
Getting closer with HOME
-rw-r--r--home.asm709
-rw-r--r--home/audio.asm5
-rw-r--r--home/cry.asm88
-rw-r--r--home/map.asm14
-rw-r--r--main.asm28
-rw-r--r--wram.asm19
6 files changed, 775 insertions, 88 deletions
diff --git a/home.asm b/home.asm
index fde744da..dab571a9 100644
--- a/home.asm
+++ b/home.asm
@@ -641,7 +641,7 @@ Function33e9:: ; 33e9 (0:33e9)
.digits db "0123456789ABCDEF"
-Function3404::
+FarPrintText::
ld [wBuffer], a
ld a, [hROMBank]
push af
@@ -1013,11 +1013,710 @@ GetBasePokemonName::
pop hl
ret
-GetPokemonName::
- dr $367e, $39f9
+GetPokemonName:: ; 367e (0:367e)
+ ld a, [hROMBank]
+ push af
+ push hl
+ ld a, BANK(PokemonNames)
+ rst Bankswitch
+ ld a, [wd151]
+ dec a
+ ld hl, PokemonNames
+ ld e, a
+ ld d, $0
+rept PKMN_NAME_LENGTH +- 1
+ add hl, de
+endr
+ ld de, wStringBuffer1
+ push de
+ ld bc, PKMN_NAME_LENGTH - 1
+ call CopyBytes
+ ld hl, wStringBuffer1 + PKMN_NAME_LENGTH - 1
+ ld [hl], "@"
+ pop de
+ pop hl
+ pop af
+ rst Bankswitch
+ ret
+
+GetItemName
+ push hl
+ push bc
+ ld a, [wd151]
+ cp TM01
+ jr nc, .TM
+ ld [wce60], a
+ ld a, $4
+ ld [wce61], a
+ call GetName
+ jr .copied
+
+.TM
+ call GetTMHMName
+.copied
+ ld de, wStringBuffer1
+ pop bc
+ pop hl
+ ret
+
+GetTMHMName:: ; 36cc (0:36cc)
+ push hl
+ push de
+ push bc
+ ld a, [wd151]
+ push af
+ cp HM01
+ push af
+ jr c, .TM
+ ld hl, .HMText ; $3721
+ ld bc, $2
+ jr .copy
+
+.TM
+ ld hl, .TMText ; $371e
+ ld bc, $2
+.copy
+ ld de, wStringBuffer1
+ call CopyBytes
+ push de
+ ld a, [wd151]
+ ld c, a
+ callab GetTMHMNumber
+ pop de
+ pop af
+ ld a, c
+ jr c, .not_hm
+ sub NUM_TMS
+.not_hm
+ ld b, "0"
+.mod10
+ sub 10
+ jr c, .done_mod
+ inc b
+ jr .mod10
+
+.done_mod
+ add 10
+ push af
+ ld a, b
+ ld [de], a
+ inc de
+ pop af
+ ld b, "0"
+ add b
+ ld [de], a
+ inc de
+ ld a, "@"
+ ld [de], a
+ pop af
+ ld [wd151], a
+ pop bc
+ pop de
+ pop hl
+ ret
+
+.TMText db "TM@"
+.HMText db "HM@"
+
+IsHM::
+ cp HM01
+ jr c, .not_HM
+ scf
+ ret
+
+.not_HM
+ and a
+ ret
+
+IsHMMove::
+ ld hl, .HMMoves
+ ld de, $1
+ jp IsInArray
+
+.HMMoves
+ db CUT, FLY, SURF, STRENGTH, FLASH, WATERFALL, WHIRLPOOL, $FF
+
+GetMoveName::
+ push hl
+ ld a, $2
+ ld [wce61], a
+ ld a, [wd151]
+ ld [wce60], a
+ call GetName
+ ld de, wStringBuffer1
+ pop hl
+ ret
+
+ScrollingMenu::
+ call CopyMenuData2
+ ld a, [hROMBank]
+ push af
+ ld a, BANK(ScrollingMenu_)
+ rst Bankswitch
+ call InitScrollingMenu
+ call ScrollingMenuUpdatePalettes
+ call ScrollingMenu_
+ pop af
+ rst Bankswitch
+ ld a, [wMenuJoypad]
+ ret
+
+ScrollingMenuUpdatePalettes:: ; 3769 (0:3769)
+ ld hl, wVramState
+ bit 0, [hl]
+ jp nz, UpdateTimePals
+ jp SetPalettes
+
+DrawScrollingMenu::
+ ld a, [wMenuBorderTopCoord]
+ dec a
+ ld b, a
+ ld a, [wMenuBorderBottomCoord]
+ sub b
+ ld d, a
+ ld a, [wMenuBorderLeftCoord]
+ dec a
+ ld c, a
+ ld a, [wMenuBorderRightCoord]
+ sub c
+ ld e, a
+ push de
+ call Coord2Tile
+ pop bc
+ jp TextBox
+
+ScrollingMenuJoyTextDelay::
+ call DelayFrame
+ ld a, [hInMenu]
+ push af
+ ld a, $1
+ ld [hInMenu], a
+ call JoyTextDelay
+ pop af
+ ld [hInMenu], a
+ ld a, [hJoyLast]
+ and $f0
+ ld c, a
+ ld a, [hJoyPressed]
+ and $f
+ or c
+ ld c, a
+ ret
+
+HandleStoneQueue::
+ ld a, [hROMBank]
+ push af
+ call SwitchToMapScriptHeaderBank
+ call StoneQueueWarpAction
+ pop bc
+ ld a, b
+ rst Bankswitch
+ ret
+
+StoneQueueWarpAction:: ; 37b9 (0:37b9)
+ ld hl, $1
+ add hl, de
+ ld a, [hl]
+ cp $ff
+ jr z, .asm_37dc
+ ld l, a
+ push hl
+ call IsAnyMapObjectOnAWarp
+ pop hl
+ jr nc, .asm_37dc
+ ld d, a
+ ld e, l
+ call IsThisObjectInTheStoneTable
+ jr nc, .asm_37dc
+ call CallMapScript
+ callba EnableScriptMode
+ scf
+ ret
+
+.asm_37dc
+ and a
+ ret
+
+IsAnyMapObjectOnAWarp:: ; 37de (0:37de)
+ push de
+ ld hl, $10
+ add hl, de
+ ld a, [hl]
+ ld hl, $11
+ add hl, de
+ ld e, [hl]
+ sub $4
+ ld d, a
+ ld a, e
+ sub $4
+ ld e, a
+ call IsThisMapObjectOnAWarp
+ pop de
+ ret
+
+IsThisMapObjectOnAWarp:: ; 37f5 (0:37f5)
+ ld hl, wCurrMapWarpHeaderPointer
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [wCurrMapWarpCount]
+ and a
+ jr z, .no_warps
+.find_warp_loop
+ push af
+ ld a, [hl]
+ cp e
+ jr nz, .next
+ inc hl
+ ld a, [hld]
+ cp d
+ jr nz, .next
+ jr .yes
+
+.next
+ ld a, $5
+ add l
+ ld l, a
+ jr nc, .asm_3814
+ inc h
+.asm_3814
+ pop af
+ dec a
+ jr nz, .find_warp_loop
+.no_warps
+ and a
+ ret
+
+.yes
+ pop af
+ ld d, a
+ ld a, [wCurrMapWarpCount]
+ sub d
+ inc a
+ scf
+ ret
+
+IsThisObjectInTheStoneTable:: ; 3823 (0:3823)
+ ld hl, $1
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+.asm_382a
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_3840
+ cp d
+ jr nz, .asm_383b
+ ld a, [hli]
+ cp e
+ jr nz, .asm_383c
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jr .asm_3842
+
+.asm_383b
+ inc hl
+.asm_383c
+ inc hl
+ inc hl
+ jr .asm_382a
+
+.asm_3840
+ and a
+ ret
+
+.asm_3842
+ scf
+ ret
+
+CheckTrainerBattle2::
+ ld a, [hROMBank]
+ push af
+ call SwitchToMapScriptHeaderBank
+ call CheckTrainerBattle
+ pop bc
+ ld a, b
+ rst Bankswitch
+ ret
-PlayCry::
- dr $39f9, $3ade
+CheckTrainerBattle:: ; 3851 (0:3851)
+ ld a, $2
+ ld de, wMap2Object
+.asm_3856
+ push af
+ push de
+ ld hl, $1
+ add hl, de
+ ld a, [hl]
+ and a
+ jr z, .asm_389b
+ ld hl, $8
+ add hl, de
+ ld a, [hl]
+ and $f
+ cp $2
+ jr nz, .asm_389b
+ ld hl, MBC3SRamEnable
+ add hl, de
+ ld a, [hl]
+ cp $ff
+ jr z, .asm_389b
+ call GetObjectStruct
+ call FacingPlayerDistance_bc
+ jr nc, .asm_389b
+ ld hl, $9
+ add hl, de
+ ld a, [hl]
+ cp b
+ jr c, .asm_389b
+ push bc
+ push de
+ ld hl, $a
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ ld b, $2
+ call EventFlagAction
+ ld a, c
+ pop de
+ pop bc
+ and a
+ jr z, .asm_38aa
+.asm_389b
+ pop de
+ ld hl, $10
+ add hl, de
+ ld d, h
+ ld e, l
+ pop af
+ inc a
+ cp $10
+ jr nz, .asm_3856
+ xor a
+ ret
+
+.asm_38aa
+ pop de
+ pop af
+ ld [hLastTalked], a
+ ld a, b
+ ld [wcf2a], a
+ ld a, c
+ ld [wcf2b], a
+ jr continue_trainer_function
+
+TalkToTrainer::
+ ld a, $1
+ ld [wcf2a], a
+ ld a, $ff
+ ld [wcf2b], a
+continue_trainer_function
+ call GetMapScriptHeaderBank
+ ld [wcf29], a
+ ld a, [hLastTalked]
+ call GetMapObject
+ ld hl, $a
+ add hl, bc
+ ld a, [wcf29]
+ call GetFarHalfword
+ ld de, wcf2c
+ ld bc, $d
+ ld a, [wcf29]
+ call FarCopyBytes
+ xor a
+ ld [wcf38], a
+ scf
+ ret
+
+FacingPlayerDistance_bc:: ; 38e9 (0:38e9)
+ push de
+ call FacingPlayerDistance
+ ld b, d
+ ld c, e
+ pop de
+ ret
+
+FacingPlayerDistance:: ; 38f1 (0:38f1)
+ ld hl, $10
+ add hl, bc
+ ld d, [hl]
+ ld hl, $11
+ add hl, bc
+ ld e, [hl]
+ ld a, [wPlayerStandingMapX]
+ cp d
+ jr z, .asm_3909
+ ld a, [wPlayerStandingMapY]
+ cp e
+ jr z, .asm_391d
+ and a
+ ret
+
+.asm_3909
+ ld a, [wPlayerStandingMapY]
+ sub e
+ jr z, .asm_3937
+ jr nc, .asm_3918
+ cpl
+ inc a
+ ld d, a
+ ld e, $4
+ jr .asm_392f
+
+.asm_3918
+ ld d, a
+ ld e, $0
+ jr .asm_392f
+
+.asm_391d
+ ld a, [wPlayerStandingMapX]
+ sub d
+ jr z, .asm_3937
+ jr nc, .asm_392c
+ cpl
+ inc a
+ ld d, a
+ ld e, $8
+ jr .asm_392f
+
+.asm_392c
+ ld d, a
+ ld e, $c
+.asm_392f
+ call GetSpriteDirection
+ cp e
+ jr nz, .asm_3937
+ scf
+ ret
+
+.asm_3937
+ and a
+ ret
+
+CheckTrainerFlag::
+ push bc
+ ld hl, $1
+ add hl, bc
+ ld a, [hl]
+ call GetMapObject
+ ld hl, $a
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ call GetMapScriptHeaderBank
+ call GetFarHalfword
+ ld d, h
+ ld e, l
+ push de
+ ld b, $2
+ call EventFlagAction
+ pop de
+ ld a, c
+ and a
+ pop bc
+ ret
+
+PrintWinLossText::
+ ld a, [wBattleType]
+ cp $1
+ jr which_battle_end_text
+
+PrintWinText::
+ ld hl, wWinTextPointer
+ jr continue_battle_end_text
+
+which_battle_end_text
+ ld a, [wcfe9]
+ ld hl, wWinTextPointer
+ and a
+ jr z, continue_battle_end_text
+ ld hl, wLossTextPointer
+continue_battle_end_text
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ call GetMapScriptHeaderBank
+ call FarPrintText
+ call WaitBGMap
+ call WaitPressAorB_BlinkCursor
+ ret
+
+DrawBattleHPBar::
+ push hl
+ push de
+ push bc
+ ld a, $60
+ ld [hli], a
+ ld a, $61
+ ld [hli], a
+ push hl
+ ld a, $62
+.asm_3990
+ ld [hli], a
+ dec d
+ jr nz, .asm_3990
+ ld a, $6b
+ add b
+ ld [hl], a
+ pop hl
+ ld a, e
+ and a
+ jr nz, .asm_39a3
+ ld a, c
+ and a
+ jr z, .asm_39b6
+ ld e, $1
+.asm_39a3
+ ld a, e
+ sub $8
+ jr c, .asm_39b2
+ ld e, a
+ ld a, $6a
+ ld [hli], a
+ ld a, e
+ and a
+ jr z, .asm_39b6
+ jr .asm_39a3
+
+.asm_39b2
+ ld a, $62
+ add e
+ ld [hl], a
+.asm_39b6
+ pop bc
+ pop de
+ pop hl
+ ret
+
+PrepMonFrontpic::
+ ld a, $1
+ ld [wcf3b], a
+PrepMonFrontpic_::
+ ld a, [wd004]
+ and a
+ jr z, .not_pokemon
+ cp EGG
+ jr z, .egg
+ cp NUM_POKEMON + 1
+ jr nc, .not_pokemon
+.egg
+ push hl
+ ld de, $9000
+ predef GetFrontpic
+ pop hl
+ xor a
+ ld [hGraphicStartTile], a
+ lb bc, 7, 7
+ predef PlaceGraphic
+ xor a
+ ld [wcf3b], a
+ ret
+
+.not_pokemon
+ xor a
+ ld [wcf3b], a
+ inc a
+ ld [wd004], a
+ ret
+
+INCLUDE "home/cry.asm"
+
+PrintLevel:: ; 3a50
+ ld a, [wd02a]
+ ld [hl], $6e
+ inc hl
+ ld c, $2
+ cp MAX_LEVEL
+ jr c, Print8BitNumRightAlign
+ dec hl
+ inc c
+ jr Print8BitNumRightAlign
+
+PrintLevel_Force3Digits::
+ ld [hl], $6e
+ inc hl
+ ld c, $3
+Print8BitNumRightAlign::
+ ld [wd151], a
+ ld de, wd151
+ ld b, PRINTNUM_RIGHTALIGN | 1
+ jp PrintNum
+
+Function3a70::
+ ld hl, wd149
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [hl]
+ ret
+
+GetBaseData::
+ push bc
+ push de
+ push hl
+ ld a, [hROMBank]
+ push af
+ ld a, BANK(BaseData) ; $14
+ rst Bankswitch
+ ld a, [wce60]
+ cp EGG
+ jr z, .egg
+ dec a
+ ld bc, $20
+ ld hl, BaseData ; $5b0b
+ call AddNTimes
+ ld de, wd120
+ ld bc, $20
+ call CopyBytes
+ jr .asm_3ab3
+
+.egg
+ ld de, UnknownEggPic ; $7a83
+ ln b, 5, 5
+ ld hl, wd131
+ ld [hl], b
+ ld hl, wd132
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ inc hl
+ ld [hl], e
+ inc hl
+ ld [hl], d
+ jr .asm_3ab3
+
+.asm_3ab3
+ ld a, [wce60]
+ ld [wd120], a
+ pop af
+ rst Bankswitch
+ pop hl
+ pop de
+ pop bc
+ ret
+
+GetCurNick::
+ ld a, [wd005]
+ ld hl, wPartyMon1Nickname
+ push hl
+ push bc
+ call SkipNames
+ ld de, wStringBuffer1
+ push de
+ ld bc, $b
+ call CopyBytes
+ pop de
+ callab CheckNickErrors
+ pop bc
+ pop hl
+ ret
PrintBCDNumber::
dr $3ade, $3d4f
diff --git a/home/audio.asm b/home/audio.asm
index 8acbc14b..d868b4b7 100644
--- a/home/audio.asm
+++ b/home/audio.asm
@@ -1,5 +1,8 @@
DisableAudio::
- dr $3d4f, $3e24
+ dr $3d4f, $3de4
+
+Function3de4::
+ dr $3de4, $3e24
PlaySFX::
dr $3e24, $3e56
diff --git a/home/cry.asm b/home/cry.asm
index aea7af03..d4219d07 100644
--- a/home/cry.asm
+++ b/home/cry.asm
@@ -1,108 +1,74 @@
-PlayStereoCry:: ; 37b6
+PlayStereoCry:: ; 39f0 (0:39f0)
push af
- ld a, 1
+ ld a, $1
ld [wStereoPanningMask], a
pop af
- call _PlayCry
- call WaitSFX
- ret
-; 37c4
-
-PlayStereoCry2:: ; 37c4
-; Don't wait for the cry to end.
-; Used during pic animations.
- push af
- ld a, 1
- ld [wStereoPanningMask], a
- pop af
- jp _PlayCry
-; 37ce
-
-PlayCry:: ; 37ce
- call PlayCry2
- call WaitSFX
- ret
-; 37d5
+ jr continue_cry_fn
-PlayCry2:: ; 37d5
-; Don't wait for the cry to end.
+PlayCry:: ; 39f9 (0:39f9)
push af
xor a
ld [wStereoPanningMask], a
- ld [CryTracks], a
+ ld [wCryTracks], a
pop af
- call _PlayCry
- ret
-; 37e2
-
-_PlayCry:: ; 37e2
+continue_cry_fn
push hl
push de
push bc
-
call GetCryIndex
- jr c, .done
-
+ jr c, .asm_3a12
ld e, c
ld d, b
- call PlayCryHeader
-
-.done
+ call Function3de4
+ call WaitSFX
+.asm_3a12
pop bc
pop de
pop hl
ret
-; 37f3
-
-LoadCryHeader:: ; 37f3
-; Load cry header bc.
+LoadCryHeader::
call GetCryIndex
ret c
-
ld a, [hROMBank]
push af
- ld a, BANK(CryHeaders)
+ ld a, $3c
rst Bankswitch
-
- ld hl, CryHeaders
-rept 6
+ ld hl, $6747
+ add hl, bc
+ add hl, bc
+ add hl, bc
+ add hl, bc
+ add hl, bc
add hl, bc
-endr
-
ld e, [hl]
inc hl
ld d, [hl]
inc hl
-
ld a, [hli]
- ld [CryPitch], a
+ ld [wCryPitch], a
ld a, [hli]
- ld [CryPitch + 1], a
+ ld [wCryPitch + 1], a
ld a, [hli]
- ld [CryLength], a
+ ld [wCryLength], a
ld a, [hl]
- ld [CryLength + 1], a
-
+ ld [wCryLength + 1], a
pop af
rst Bankswitch
and a
ret
-; 381e
-GetCryIndex:: ; 381e
+GetCryIndex:: ; 3a41 (0:3a41)
and a
- jr z, .no
+ jr z, .asm_3a4e
cp NUM_POKEMON + 1
- jr nc, .no
-
+ jr nc, .asm_3a4e
dec a
ld c, a
- ld b, 0
+ ld b, $0
and a
ret
-.no
+.asm_3a4e
scf
ret
-; 382d
diff --git a/home/map.asm b/home/map.asm
index e5063e42..ac5cf541 100644
--- a/home/map.asm
+++ b/home/map.asm
@@ -516,11 +516,11 @@ Function22c1:: ; 22c1 (0:22c1)
ld a, [wPlayerStandingMapX]
sub $4
ld d, a
- ld a, [wd945]
+ ld a, [wCurrMapWarpCount]
and a
ret z
ld c, a
- ld hl, wd946
+ ld hl, wCurrMapWarpHeaderPointer
ld a, [hli]
ld h, [hl]
ld l, a
@@ -551,7 +551,7 @@ Function22c1:: ; 22c1 (0:22c1)
pop hl
call Function22fe
ret nc
- ld a, [wd945]
+ ld a, [wCurrMapWarpCount]
inc a
sub c
ld c, a
@@ -576,7 +576,7 @@ Function2302:: ; 2302 (0:2302)
Function230f:: ; 230f (0:230f)
push bc
- ld hl, wd946
+ ld hl, wCurrMapWarpHeaderPointer
ld a, [hli]
ld h, [hl]
ld l, a
@@ -829,11 +829,11 @@ ReadMapCallbacks:: ; 24a2 (0:24a2)
ReadWarps:: ; 24b9 (0:24b9)
ld a, [hli]
ld c, a
- ld [wd945], a
+ ld [wCurrMapWarpCount], a
ld a, l
- ld [wd946], a
+ ld [wCurrMapWarpHeaderPointer], a
ld a, h
- ld [wd947], a
+ ld [wCurrMapWarpHeaderPointer + 1], a
ld a, c
and a
ret z
diff --git a/main.asm b/main.asm
index b6a4cf11..1c92ec6c 100644
--- a/main.asm
+++ b/main.asm
@@ -26,7 +26,9 @@ GameInit:: ; 6545
ReanchorBGMap_NoOAMUpdate:: ; 6551
dr $6551, $65cb
LoadFonts_NoOAMUpdate:: ; 65cb
- dr $65cb, $67bd
+ dr $65cb, $677e
+CheckNickErrors:: ; 677e
+ dr $677e, $67bd
Multiply_:: ; 67bd
dr $67bd, $681d
Divide_:: ; 681d
@@ -40,7 +42,9 @@ GameInit:: ; 650b
ReanchorBGMap_NoOAMUpdate:: ; 6517
dr $6517, $6591
LoadFonts_NoOAMUpdate:: ; 6591
- dr $6591, $6783
+ dr $6591, $6744
+CheckNickErrors:: ; 6744
+ dr $6744, $6783
Multiply_:: ; 6783
dr $6783, $67e3
Divide_:: ; 67e3
@@ -74,7 +78,9 @@ ReceiveItem_::
TossItem_::
dr $d21a, $d251
CheckItem_::
- dr $d251, $d434
+ dr $d251, $d414
+GetTMHMNumber::
+ dr $d414, $d434
CheckTossableItem_::
dr $d434, $e7a6
DoItemEffect_::
@@ -88,7 +94,9 @@ ReceiveItem_::
TossItem_::
dr $d218, $d24f
CheckItem_::
- dr $d24f, $d432
+ dr $d24f, $d412
+GetTMHMNumber::
+ dr $d412, $d432
CheckTossableItem_::
dr $d432, $e7a4
DoItemEffect_::
@@ -152,7 +160,11 @@ PushWindow_::
ExitMenu_::
dr $24307, $24395
InitVerticalMenuCursor_::
- dr $24395, $28000
+ dr $24395, $244d7
+InitScrollingMenu::
+ dr $244d7, $244f3
+ScrollingMenu_::
+ dr $244f3, $28000
SECTION "banka", DATA, BANK[$a]
dr $28000, $2c000
@@ -190,7 +202,11 @@ SECTION "bank13", DATA, BANK[$13]
dr $4c000, $50000
SECTION "bank14", DATA, BANK[$14]
- dr $50000, $54000
+ dr $50000, $51b0b
+BaseData:: ; 51b0b
+ dr $51b0b, $53a83
+UnknownEggPic:: ; 53a83
+ dr $53a83, $54000
SECTION "bank15", DATA, BANK[$15]
dr $54000, $58000
diff --git a/wram.asm b/wram.asm
index 1bce7ed1..31da1d8b 100644
--- a/wram.asm
+++ b/wram.asm
@@ -2287,19 +2287,19 @@ wcf28:: ds 1 ; cf28
wcf29:: ds 1 ; cf29
wcf2a:: ds 1 ; cf2a
wcf2b:: ds 1 ; cf2b
+wTempTrainerHeader::
wcf2c:: ds 1 ; cf2c
wcf2d:: ds 1 ; cf2d
wcf2e:: ds 1 ; cf2e
wcf2f:: ds 1 ; cf2f
wcf30:: ds 1 ; cf30
wcf31:: ds 1 ; cf31
-wcf32:: ds 1 ; cf32
-wcf33:: ds 1 ; cf33
-wcf34:: ds 1 ; cf34
-wcf35:: ds 1 ; cf35
+wWinTextPointer:: dw ; cf32
+wLossTextPointer:: dw ; cf34
wcf36:: ds 1 ; cf36
wcf37:: ds 1 ; cf37
wcf38:: ds 1 ; cf38
+wTempTrainerHeaderEnd::
wcf39:: ds 1 ; cf39
wcf3a:: ds 1 ; cf3a
wcf3b:: ds 1 ; cf3b
@@ -2665,13 +2665,15 @@ wd115:: ds 1 ; d115
wd116:: ds 1 ; d116
wd117:: ds 1 ; d117
wd118:: ds 1 ; d118
-wd119:: ds 1 ; d119
+wBattleType:: ds 1 ; d119
wd11a:: ds 1 ; d11a
wd11b:: ds 1 ; d11b
wd11c:: ds 1 ; d11c
wTrainerClass:: ds 1 ; d11d
wd11e:: ds 1 ; d11e
wd11f:: ds 1 ; d11f
+
+wBaseData::
wd120:: ds 1 ; d120
wd121:: ds 1 ; d121
wd122:: ds 1 ; d122
@@ -2704,6 +2706,8 @@ wd13c:: ds 1 ; d13c
wd13d:: ds 1 ; d13d
wd13e:: ds 1 ; d13e
wd13f:: ds 1 ; d13f
+wBaseDataEnd::
+
wd140:: ds 1 ; d140
wd141:: ds 1 ; d141
wd142:: ds 1 ; d142
@@ -3720,9 +3724,8 @@ wd940:: ds 1 ; d940
wCurrentMapTriggerPointer:: dw ; d941
wd943:: ds 1 ; d943
wd944:: ds 1 ; d944
-wd945:: ds 1 ; d945
-wd946:: ds 1 ; d946
-wd947:: ds 1 ; d947
+wCurrMapWarpCount:: ds 1 ; d945
+wCurrMapWarpHeaderPointer:: dw ; d946
wd948:: ds 1 ; d948
wd949:: ds 1 ; d949
wd94a:: ds 1 ; d94a