summaryrefslogtreecommitdiff
path: root/main.asm
diff options
context:
space:
mode:
authoryenatch <yenatch@gmail.com>2015-09-09 16:02:55 -0400
committeryenatch <yenatch@gmail.com>2015-09-09 16:02:55 -0400
commitcc0d5d4c8bb9721f8ab0354d87c8f6d848dbe23b (patch)
tree2ab9e19e9f85d1894b42cb93dd969fa57327b0ed /main.asm
parentc432709715df83f5cd063fd5b14684389e037e15 (diff)
parent0d4c2776d927e5d3162d9a4430fc82f35bf50be5 (diff)
Merge pull request #312 from JimB16/master
Added comments and changed labels (mainly for BattleTower)
Diffstat (limited to 'main.asm')
-rw-r--r--main.asm263
1 files changed, 139 insertions, 124 deletions
diff --git a/main.asm b/main.asm
index 55d7116a3..3e8b22060 100644
--- a/main.asm
+++ b/main.asm
@@ -2938,7 +2938,7 @@ SpecialGiveShuckle: ; 7305
; Caught data.
ld b, 0
- callba Function4dba3
+ callba SetPkmnCaughtData
; Holding a Berry.
ld bc, PartyMon2 - PartyMon1
@@ -4464,11 +4464,11 @@ Functionc699: ; c699
jr z, .zero
push hl
xor a
- ld [hMultiplicand], a
+ ld [hMultiplicand + 0], a
ld a, b
- ld [$ffb5], a
+ ld [hMultiplicand + 1], a
ld a, c
- ld [$ffb6], a
+ ld [hMultiplicand + 2], a
ld a, $30
ld [hMultiplier], a
call Multiply
@@ -4479,23 +4479,23 @@ Functionc699: ; c699
rr e
srl d
rr e
- ld a, [$ffb5]
+ ld a, [hProduct + 2]
ld b, a
- ld a, [$ffb6]
+ ld a, [hProduct + 3]
srl b
rr a
srl b
rr a
- ld [$ffb6], a
+ ld [hDividend + 3], a
ld a, b
- ld [$ffb5], a
+ ld [hDividend + 2], a
.divide
ld a, e
- ld [hMultiplier], a
+ ld [hDivisor], a
ld b, $4
call Divide
- ld a, [$ffb6]
+ ld a, [hQuotient + 2]
ld e, a
pop hl
and a
@@ -8340,7 +8340,7 @@ Functionda96: ; da96
; db3f
Functiondb3f: ; db3f
- ld a, $1
+ ld a, BANK(sBoxCount)
call GetSRAMBank
ld a, [wd10b]
and a
@@ -8799,11 +8799,12 @@ Functionde44: ; de44
call AddNTimes
ld bc, sBoxMon1End - sBoxMon1
jp CopyBytes
-; de6e
-Functionde6e: ; de6e
- ld a, 1 ; BANK(sBoxCount)
+SentPkmnIntoBox: ; de6e
+; Sents the Pkmn into one of Bills Boxes
+; the data comes mainly from 'EnemyMon:'
+ ld a, BANK(sBoxCount)
call GetSRAMBank
ld de, sBoxCount
ld a, [de]
@@ -8811,6 +8812,7 @@ Functionde6e: ; de6e
jp nc, Functiondf42
inc a
ld [de], a
+
ld a, [CurPartySpecies]
ld [CurSpecies], a
ld c, a
@@ -8823,23 +8825,29 @@ Functionde6e: ; de6e
ld [de], a
inc a
jr nz, .asm_de85
+
call GetBaseData
call ShiftBoxMon
+
ld hl, PlayerName
ld de, sBoxMonOT
ld bc, NAME_LENGTH
call CopyBytes
+
ld a, [CurPartySpecies]
ld [wd265], a
call GetPokemonName
+
ld de, sBoxMonNicknames
ld hl, StringBuffer1
ld bc, PKMN_NAME_LENGTH
call CopyBytes
+
ld hl, EnemyMon
ld de, sBoxMon1
ld bc, 1 + 1 + NUM_MOVES ; species + item + moves
call CopyBytes
+
ld hl, PlayerID
ld a, [hli]
ld [de], a
@@ -8861,6 +8869,7 @@ Functionde6e: ; de6e
ld a, [$ffb6]
ld [de], a
inc de
+
xor a
ld b, $a
.asm_dee5
@@ -8868,6 +8877,7 @@ Functionde6e: ; de6e
inc de
dec b
jr nz, .asm_dee5
+
ld hl, EnemyMonDVs
ld b, 2 + NUM_MOVES ; DVs and PP ; EnemyMonHappiness - EnemyMonDVs
.asm_deef
@@ -8876,6 +8886,7 @@ Functionde6e: ; de6e
inc de
dec b
jr nz, .asm_deef
+
ld a, BASE_HAPPINESS
ld [de], a
inc de
@@ -8909,6 +8920,7 @@ Functionde6e: ; de6e
call CopyBytes
ld b, 0
call Functiondcb6
+
call CloseSRAM
scf
ret
@@ -9067,7 +9079,7 @@ Functione039: ; e039
and a
jr z, .asm_e04a
- ld a, 1 ; BANK(sBoxCount)
+ ld a, BANK(sBoxCount)
call GetSRAMBank
ld hl, sBoxCount
@@ -9378,22 +9390,22 @@ endr
inc d
.asm_e20f
- ld [$ffb6], a
+ ld [hMultiplicand + 2], a
ld a, d
- ld [$ffb5], a
+ ld [hMultiplicand + 1], a
xor a
- ld [hMultiplicand], a
+ ld [hMultiplicand + 0], a
ld a, [CurPartyLevel]
ld [hMultiplier], a
call Multiply
- ld a, [hMultiplicand]
- ld [hProduct], a
- ld a, [$ffb5]
- ld [hMultiplicand], a
- ld a, [$ffb6]
- ld [$ffb5], a
+ ld a, [hProduct + 1]
+ ld [hDividend + 0], a
+ ld a, [hProduct + 2]
+ ld [hDividend + 1], a
+ ld a, [hProduct + 3]
+ ld [hDividend + 2], a
ld a, $64
- ld [hMultiplier], a
+ ld [hDivisor], a
ld a, $3
ld b, a
call Divide
@@ -9403,11 +9415,11 @@ endr
jr nz, .asm_e24e
ld a, [CurPartyLevel]
ld b, a
- ld a, [$ffb6]
+ ld a, [hQuotient + 2]
add b
ld [$ffb6], a
jr nc, .asm_e24c
- ld a, [$ffb5]
+ ld a, [hQuotient + 1]
inc a
ld [$ffb5], a
@@ -9482,7 +9494,7 @@ GivePoke:: ; e277
ld a, [CurPartySpecies]
ld [TempEnemyMonSpecies], a
callab LoadEnemyMon
- call Functionde6e
+ call SentPkmnIntoBox
jp nc, Functione3d4
ld a, $2
ld [MonType], a
@@ -9562,11 +9574,11 @@ endr
ld [hli], a
ld [hl], $e9
pop bc
- callba Function4dba3
+ callba SetPkmnCaughtData
jr .asm_e3b2
.asm_e35e
- ld a, $1
+ ld a, BANK(sBoxMonOT)
call GetSRAMBank
ld de, sBoxMonOT
.asm_e366
@@ -9604,7 +9616,7 @@ endr
callba Function4db49
.asm_e3a6
- callba Function4db3b
+ callba GiveANickname_YesNo
pop de
jr c, .asm_e3b2
call Functione3de
@@ -9615,9 +9627,9 @@ endr
ld a, b
and a
ret z
- ld hl, UnknownText_0xe3d9
+ ld hl, TextJump_WasSentToBillsPC
call PrintText
- ld a, $1
+ ld a, BANK(sBoxMonNicknames)
call GetSRAMBank
ld hl, wd050
ld de, sBoxMonNicknames
@@ -9635,9 +9647,9 @@ Functione3d4: ; e3d4
ret
; e3d9
-UnknownText_0xe3d9: ; 0xe3d9
+TextJump_WasSentToBillsPC: ; 0xe3d9
; was sent to BILL's PC.
- text_jump UnknownText_0x1c0feb
+ text_jump Text_WasSentToBillsPC
db "@"
; 0xe3de
@@ -9945,7 +9957,7 @@ Functione5bb: ; e5bb
call AddNTimes
ld de, TempMonSpecies
ld bc, $0020
- ld a, $1
+ ld a, BANK(sBoxMon1Species)
call GetSRAMBank
call CopyBytes
call CloseSRAM
@@ -9969,7 +9981,7 @@ Functione5d9: ; e5d9
jr .asm_e5f6
.asm_e5f1
- ld a, $1
+ ld a, BANK(sBoxCount)
ld hl, sBoxCount
.asm_e5f6
@@ -25865,11 +25877,11 @@ Function2509f: ; 2509f
Function250a9: ; 250a9
xor a
- ld [hMultiplicand], a
+ ld [hMultiplicand + 0], a
ld a, [Buffer1]
- ld [$ffb5], a
+ ld [hMultiplicand + 1], a
ld a, [Buffer2]
- ld [$ffb6], a
+ ld [hMultiplicand + 2], a
ld a, [wd10c]
ld [hMultiplier], a
push hl
@@ -35563,7 +35575,7 @@ INCLUDE "trainers/attributes.asm"
ReadTrainerParty: ; 39771
- ld a, [wcfc0]
+ ld a, [InBattleTowerBattle]
bit 0, a
ret nz
@@ -35873,7 +35885,7 @@ TrainerType4: ; 3989d
; 3991b
Function3991b: ; 3991b (e:591b)
- ld hl, $ffb3
+ ld hl, hMultiplicand - 1
xor a
rept 3
ld [hli], a
@@ -35886,15 +35898,15 @@ endr
ld hl, wc686
xor a
ld [hli], a
- ld a, [$ffb5]
+ ld a, [hProduct + 2]
ld [hli], a
- ld a, [$ffb6]
+ ld a, [hProduct + 3]
ld [hl], a
ret
Battle_GetTrainerName:: ; 39939
- ld a, [wcfc0]
+ ld a, [InBattleTowerBattle]
bit 0, a
ld hl, wd26b
jp nz, CopyTrainerName
@@ -36806,7 +36818,9 @@ endr
.ApplyLayers
ld hl, TrainerClassAttributes + 3
- ld a, [wcfc0]
+ ; If we have a battle in BattleTower just load the Attributes of the first TrainerClass (Falkner)
+ ; so we have always the same AI, regardless of the loaded cass of trainer
+ ld a, [InBattleTowerBattle]
bit 0, a
jr nz, .asm_4412f
@@ -39624,8 +39638,8 @@ Function48d4a: ; 48d4a (12:4d4a)
add c
ld [hld], a
xor a
- ld [hQuotient], a ; $ff00+$b4 (aliases: hMultiplicand)
- ld [$ffb5], a
+ ld [hMultiplicand + 0], a
+ ld [hMultiplicand + 1], a
ld a, [hl]
srl a
srl a
@@ -39637,13 +39651,13 @@ Function48d4a: ; 48d4a (12:4d4a)
ld a, [hli]
and $f
add b
- ld [$ffb6], a
+ ld [hMultiplicand + 2], a
ld a, 100
- ld [hDivisor], a ; $ff00+$b7 (aliases: hMultiplier)
+ ld [hMultiplier], a
call Multiply
- ld a, [$ffb5]
+ ld a, [hProduct + 2]
ld b, a
- ld a, [$ffb6]
+ ld a, [hProduct + 3]
ld c, a
ld e, [hl]
add e
@@ -39658,10 +39672,10 @@ Function48d4a: ; 48d4a (12:4d4a)
Function48d94: ; 48d94 (12:4d94)
xor a
- ld [$ffb3], a
+ ld [hDividend + 0], a
ld [hQuotient], a ; $ff00+$b4 (aliases: hMultiplicand)
ld a, [hli]
- ld [$ffb3], a
+ ld [hDividend + 0], a
ld a, [hl]
ld [hQuotient], a ; $ff00+$b4 (aliases: hMultiplicand)
ld a, 100
@@ -39677,7 +39691,7 @@ Function48d94: ; 48d94 (12:4d94)
sla b
or b
ld [hld], a
- ld a, [$ffb6]
+ ld a, [hQuotient + 2]
ld c, 10
call SimpleDivide
sla b
@@ -42221,7 +42235,7 @@ CheckOwnMonAnywhere: ; 0x4a721
jr nz, .partymon
; Run CheckOwnMon on each Pokémon in the PC.
- ld a, 1
+ ld a, BANK(sBoxCount)
call GetSRAMBank
ld a, [sBoxCount]
and a
@@ -42443,7 +42457,7 @@ MobileCheckOwnMonAnywhere: ; 4a843
call Function4a91e
dec d
jr nz, .asm_4a851
- ld a, 1
+ ld a, BANK(sBoxCount)
call GetSRAMBank
ld a, [sBoxCount]
and a
@@ -44546,7 +44560,7 @@ Function4d87a: ; 4d87a
pop bc
dec d
jr nz, .asm_4d88d
- ld a, $1
+ ld a, BANK(sBoxMon1ID)
call GetSRAMBank
ld a, [sBoxCount]
and a
@@ -44804,7 +44818,7 @@ CheckPartyFullAfterContest: ; 4d9e5
ld de, wd050
ld bc, $000b
call CopyBytes
- call Function4db3b
+ call GiveANickname_YesNo
jr c, .asm_4da66
ld a, [PartyCount]
dec a
@@ -44847,7 +44861,7 @@ CheckPartyFullAfterContest: ; 4d9e5
; 4daa3
Function4daa3: ; 4daa3
- ld a, $1
+ ld a, BANK(sBoxCount)
call GetSRAMBank
ld hl, sBoxCount
ld a, [hl]
@@ -44868,7 +44882,7 @@ Function4daa3: ; 4daa3
ld a, [CurPartySpecies]
ld [wd265], a
call GetPokemonName
- call Function4db3b
+ call GiveANickname_YesNo
ld hl, StringBuffer1
jr c, .asm_4daf7
ld a, BOXMON
@@ -44878,7 +44892,7 @@ Function4daa3: ; 4daa3
ld hl, wd050
.asm_4daf7
- ld a, $1
+ ld a, BANK(sBoxMonNicknames)
call GetSRAMBank
ld de, sBoxMonNicknames
ld bc, PKMN_NAME_LENGTH
@@ -44886,13 +44900,13 @@ Function4daa3: ; 4daa3
call CloseSRAM
.asm_4db08
- ld a, $1
+ ld a, BANK(sBoxMon1Level)
call GetSRAMBank
ld a, [sBoxMon1Level]
ld [CurPartyLevel], a
call CloseSRAM
call Function4db83
- ld a, $1
+ ld a, BANK(sBoxMon1CaughtLocation)
call GetSRAMBank
ld hl, sBoxMon1CaughtLocation
ld a, [hl]
@@ -44915,13 +44929,13 @@ Function4db35: ; 4db35
; 4db3b
-Function4db3b: ; 4db3b
- ld hl, UnknownText_0x4db44
+GiveANickname_YesNo: ; 4db3b
+ ld hl, TextJump_GiveANickname
call PrintText
jp YesNoBox
; 4db44
-UnknownText_0x4db44: ; 0x4db44
+TextJump_GiveANickname: ; 0x4db44
; Give a nickname to the @ you received?
text_jump UnknownText_0x1c12fc
db "@"
@@ -44968,7 +44982,7 @@ Function4db53: ; 4db53
; 4db83
Function4db83: ; 4db83
- ld a, $1
+ ld a, BANK(sBoxMon1CaughtLevel)
call GetSRAMBank
ld hl, sBoxMon1CaughtLevel
call Function4db53
@@ -44978,7 +44992,7 @@ Function4db83: ; 4db83
Function4db92: ; 4db92
push bc
- ld a, $1
+ ld a, BANK(sBoxMon1CaughtLevel)
call GetSRAMBank
ld hl, sBoxMon1CaughtLevel
pop bc
@@ -44987,7 +45001,7 @@ Function4db92: ; 4db92
ret
; 4dba3
-Function4dba3: ; 4dba3
+SetPkmnCaughtData: ; 4dba3
ld a, [PartyCount]
dec a
ld hl, PartyMon1CaughtLevel
@@ -48623,7 +48637,7 @@ Function508d5: ; 508d5
jr .done
.boxmon
- ld a, 1 ; BANK(sBoxSpecies)
+ ld a, BANK(sBoxSpecies)
call GetSRAMBank
ld hl, sBoxSpecies
call .done
@@ -49375,11 +49389,11 @@ endr
ld b, $4
call Divide
- ld a, [hMultiplicand]
+ ld a, [hMultiplicand + 0]
push af
- ld a, [$ffb5]
+ ld a, [hMultiplicand + 1]
push af
- ld a, [$ffb6]
+ ld a, [hMultiplicand + 2]
push af
call Function50eed
@@ -49388,33 +49402,33 @@ endr
ld [hMultiplier], a
call Multiply
- ld a, [hMultiplicand]
+ ld a, [hProduct + 1]
push af
- ld a, [$ffb5]
+ ld a, [hProduct + 2]
push af
- ld a, [$ffb6]
+ ld a, [hProduct + 3]
push af
ld a, [hli]
push af
xor a
- ld [hMultiplicand], a
- ld [$ffb5], a
+ ld [hMultiplicand + 0], a
+ ld [hMultiplicand + 1], a
ld a, d
- ld [$ffb6], a
+ ld [hMultiplicand + 2], a
ld a, [hli]
ld [hMultiplier], a
call Multiply
ld b, [hl]
- ld a, [$ffb6]
+ ld a, [hProduct + 3]
sub b
ld [$ffb6], a
ld b, $0
- ld a, [$ffb5]
+ ld a, [hProduct + 2]
sbc b
ld [$ffb5], a
- ld a, [hMultiplicand]
+ ld a, [hProduct + 1]
sbc b
ld [hMultiplicand], a
@@ -49468,10 +49482,10 @@ endr
Function50eed: ; 50eed
xor a
- ld [hMultiplicand], a
- ld [$ffb5], a
+ ld [hMultiplicand + 0], a
+ ld [hMultiplicand + 1], a
ld a, d
- ld [$ffb6], a
+ ld [hMultiplicand + 2], a
ld [hMultiplier], a
jp Multiply
; 50efa
@@ -50156,7 +50170,7 @@ Function512f2: ; 512f2
; 51322
Function51322: ; 51322
- ld a, $1
+ ld a, BANK(sBoxCount)
call GetSRAMBank
ld hl, sBoxCount
call Function513cb
@@ -51399,7 +51413,7 @@ Function806ff: ; 806ff
Function80715: ; 80715
; Remaining slots in the current box.
- ld a, 1 ; BANK(sBoxCount)
+ ld a, BANK(sBoxCount)
call GetSRAMBank
ld hl, sBoxCount
ld a, MONS_PER_BOX
@@ -60873,12 +60887,12 @@ UnknownText_0x8b1fc: ; 0x8b1fc
db "@"
; 0x8b201
-Function8b201: ; 8b201
+CheckForBattleTowerRules: ; 8b201
ld hl, StringBuffer2
ld [hl], "3"
inc hl
ld [hl], "@"
- ld de, Unknown_8b215
+ ld de, CheckForBattleTowerRules_FunctionsText
call Function8b25b
ret z
call Function8b231
@@ -60886,29 +60900,29 @@ Function8b201: ; 8b201
ret
; 8b215
-Unknown_8b215: ; 8b215
+CheckForBattleTowerRules_FunctionsText: ; 8b215
db 4
- dw Unknown_8b21a
- dw Unknown_8b222
+ dw CheckForBattleTowerRules_Functions
+ dw CheckForBattleTowerRules_Text
-Unknown_8b21a: ; 8b21a
- dw Function8b2da
+CheckForBattleTowerRules_Functions: ; 8b21a
+ dw Function_PartyCountEq3
dw Function8b2e2
dw Function8b32a
- dw Function8b331
+ dw Function_HasPartyAnEgg
; 8b222
-Unknown_8b222: ; 8b222
- dw UnknownText_0x8b22c
- dw UnknownText_0x8b247
- dw UnknownText_0x8b24c
- dw UnknownText_0x8b251
- dw UnknownText_0x8b256
+CheckForBattleTowerRules_Text: ; 8b222
+ dw JumpText_ExcuseMeYoureNotReady
+ dw JumbText_OnlyThreePkmnMayBeEntered
+ dw JumpText_ThePkmnMustAllBeDifferentKinds
+ dw JumpText_ThePkmnMustNotHoldTheSameItems
+ dw JumpText_YouCantTakeAnEgg
; 8b22c
-UnknownText_0x8b22c: ; 0x8b22c
+JumpText_ExcuseMeYoureNotReady: ; 0x8b22c
; Excuse me. You're not ready.
- text_jump UnknownText_0x1c5944
+ text_jump Text_ExcuseMeYoureNotReady
db "@"
; 0x8b231
@@ -60936,27 +60950,27 @@ UnknownText_0x8b242: ; 0x8b242
db "@"
; 0x8b247
-UnknownText_0x8b247: ; 0x8b247
+JumbText_OnlyThreePkmnMayBeEntered: ; 0x8b247
; Only three #MON may be entered.
- text_jump UnknownText_0x1c59c3
+ text_jump Text_OnlyThreePkmnMayBeEntered
db "@"
; 0x8b24c
-UnknownText_0x8b24c: ; 0x8b24c
+JumpText_ThePkmnMustAllBeDifferentKinds: ; 0x8b24c
; The @ #MON must all be different kinds.
- text_jump UnknownText_0x1c59e5
+ text_jump Text_ThePkmnMustAllBeDifferentKinds
db "@"
; 0x8b251
-UnknownText_0x8b251: ; 0x8b251
+JumpText_ThePkmnMustNotHoldTheSameItems: ; 0x8b251
; The @ #MON must not hold the same items.
- text_jump UnknownText_0x1c5a13
+ text_jump Text_ThePkmnMustNotHoldTheSameItems
db "@"
; 0x8b256
-UnknownText_0x8b256: ; 0x8b256
+JumpText_YouCantTakeAnEgg: ; 0x8b256
; You can't take an EGG!
- text_jump UnknownText_0x1c5a42
+ text_jump Text_YouCantTakeAnEgg
db "@"
; 0x8b25b
@@ -61085,7 +61099,7 @@ Function8b2c1: ; 8b2c1
ret
; 8b2da
-Function8b2da: ; 8b2da
+Function_PartyCountEq3: ; 8b2da
ld a, [PartyCount]
cp 3
ret z
@@ -61169,7 +61183,7 @@ Function8b32a: ; 8b32a
ret
; 8b331
-Function8b331: ; 8b331
+Function_HasPartyAnEgg: ; 8b331
ld hl, PartyCount
ld a, [hli]
ld c, a
@@ -87382,12 +87396,12 @@ endr
.ApplyModifier
xor a
- ld [hMultiplicand], a
+ ld [hMultiplicand + 0], a
ld hl, CurDamage
ld a, [hli]
- ld [$ffb5], a
+ ld [hMultiplicand + 1], a
ld a, [hl]
- ld [$ffb6], a
+ ld [hMultiplicand + 2], a
inc de
ld a, [de]
@@ -87396,18 +87410,18 @@ endr
call Multiply
ld a, 10
- ld [hMultiplier], a
+ ld [hDivisor], a
ld b, $4
call Divide
- ld a, [hMultiplicand]
+ ld a, [hQuotient + 0]
and a
ld bc, $ffff
jr nz, .Update
- ld a, [$ffb5]
+ ld a, [hQuotient + 1]
ld b, a
- ld a, [$ffb6]
+ ld a, [hQuotient + 2]
ld c, a
or b
jr nz, .Update
@@ -87441,7 +87455,7 @@ DoBadgeTypeBoosts: ; fbe24
and a
ret nz
- ld a, [wcfc0]
+ ld a, [InBattleTowerBattle]
and a
ret nz
@@ -87759,7 +87773,7 @@ Functionfcc63: ; fcc63
jr c, .asm_fcd1c
ld b, 1
.asm_fcd1c
- callba Function4dba3
+ callba SetPkmnCaughtData
ld e, TRADE_NICK
call GetTradeAttribute
@@ -93532,7 +93546,8 @@ INCLUDE "text/battle_tower.asm"
SECTION "bank7C", ROMX, BANK[$7C]
-Unknown_1f0000::
+BattleTowerTrainerData:: ; What exactly it is, I don't know
+; Size is 70 (Nr of Trainers in BattleTower) * 0x24 (Nr of Bytes that are copied)
INCBIN "unknown/1f0000.bin"