About time I got to these functions

This commit is contained in:
PikalaxALT
2015-10-24 10:34:19 -04:00
parent 97cc513f54
commit 119d6b4119
409 changed files with 5218 additions and 4233 deletions

View File

@@ -123,18 +123,18 @@ Function3c000: ; 3c000
WildFled_EnemyFled_LinkBattleCanceled: ; 3c0e5 WildFled_EnemyFled_LinkBattleCanceled: ; 3c0e5
call Function30b4 call Function30b4
ld a, [wd0ee] ld a, [wBattleResult]
and $c0 and $c0
add $2 add $2
ld [wd0ee], a ld [wBattleResult], a
ld a, [wLinkMode] ld a, [wLinkMode]
and a and a
ld hl, BattleText_WildFled ld hl, BattleText_WildFled
jr z, .asm_3c115 jr z, .asm_3c115
ld a, [wd0ee] ld a, [wBattleResult]
and $c0 and $c0
ld [wd0ee], a ld [wBattleResult], a
ld hl, BattleText_EnemyFled ld hl, BattleText_EnemyFled
call Function3d2e0 call Function3d2e0
jr nc, .asm_3c115 jr nc, .asm_3c115
@@ -584,10 +584,10 @@ Function3c3f5: ; 3c3f5
ld a, [wdc79] ld a, [wdc79]
and a and a
jr nz, .asm_3c40e jr nz, .asm_3c40e
ld a, [wd0ee] ld a, [wBattleResult]
and $c0 and $c0
add $2 add $2
ld [wd0ee], a ld [wBattleResult], a
scf scf
ret ret
@@ -2245,9 +2245,9 @@ Function3ce01: ; 3ce01
call z, Function3d0ea call z, Function3d0ea
call EmptyBattleTextBox call EmptyBattleTextBox
call Function309d call Function309d
ld a, [wd0ee] ld a, [wBattleResult]
and $c0 and $c0
ld [wd0ee], a ld [wBattleResult], a
call Function3ceaa call Function3ceaa
jr z, .asm_3ce72 jr z, .asm_3ce72
ld hl, EnemyMonBaseStats ld hl, EnemyMonBaseStats
@@ -2633,7 +2633,7 @@ Function3d0be: ; 3d0be
push bc push bc
ld b, h ld b, h
ld c, l ld c, l
callba Function106008 callba MobileFn_106008
pop bc pop bc
pop hl pop hl
.asm_3d0ce .asm_3d0ce
@@ -2831,10 +2831,10 @@ Function3d1aa: ; 3d1aa
ld a, [CurBattleMon] ld a, [CurBattleMon]
ld [CurPartyMon], a ld [CurPartyMon], a
callab ChangeHappiness callab ChangeHappiness
ld a, [wd0ee] ld a, [wBattleResult]
and %11000000 and %11000000
add $1 add $1
ld [wd0ee], a ld [wBattleResult], a
ld a, [wc6f7] ld a, [wc6f7]
and a and a
ret z ret z
@@ -3136,10 +3136,10 @@ LostBattle: ; 3d38e
call CheckEnemyTrainerDefeated call CheckEnemyTrainerDefeated
jr nz, .asm_3d40a jr nz, .asm_3d40a
ld hl, TiedAgainstText ld hl, TiedAgainstText
ld a, [wd0ee] ld a, [wBattleResult]
and $c0 and $c0
add 2 add 2
ld [wd0ee], a ld [wBattleResult], a
jr .text jr .text
.asm_3d40a .asm_3d40a
@@ -4009,10 +4009,10 @@ Function3d8b3: ; 3d8b3
dec a dec a
.asm_3d9cf .asm_3d9cf
ld b, a ld b, a
ld a, [wd0ee] ld a, [wBattleResult]
and $c0 and $c0
add b add b
ld [wd0ee], a ld [wBattleResult], a
call StopDangerSound call StopDangerSound
push de push de
ld de, SFX_RUN ld de, SFX_RUN
@@ -5251,7 +5251,7 @@ Function3e234: ; 3e234
and a and a
jr nz, .asm_3e279 jr nz, .asm_3e279
callab CheckItemPocket callab CheckItemPocket
ld a, [wd142] ld a, [wItemAttributeParamBuffer]
cp $3 cp $3
jr z, .asm_3e24a jr z, .asm_3e24a
call WhiteBGMap call WhiteBGMap
@@ -5282,9 +5282,9 @@ Function3e234: ; 3e234
.asm_3e279 .asm_3e279
xor a xor a
ld [wc64e], a ld [wc64e], a
ld a, [wd0ee] ld a, [wBattleResult]
and $c0 and $c0
ld [wd0ee], a ld [wBattleResult], a
call ResetTextRelatedRAM call ResetTextRelatedRAM
call Function32f9 call Function32f9
scf scf
@@ -8403,9 +8403,13 @@ Function3f4b4: ; 3f4b4
StartBattle: ; 3f4c1 StartBattle: ; 3f4c1
; This check prevents you from entering a battle without any Pokemon.
; Those using walk-through-walls to bypass getting a Pokemon experience
; the effects of this check.
ld a, [PartyCount] ld a, [PartyCount]
and a and a
ret z ret z
ld a, [TimeOfDayPal] ld a, [TimeOfDayPal]
push af push af
call Function3f4dd call Function3f4dd
@@ -8425,17 +8429,17 @@ Function3f4d9: ; 3f4d9
Function3f4dd: ; 3f4dd Function3f4dd: ; 3f4dd
callba Function106050 callba MobileFn_106050 ; mobile
call Function3f54e call LoadTrainerOrWildMonPic
xor a xor a
ld [TempBattleMonSpecies], a ld [TempBattleMonSpecies], a
ld [wd0d2], a ld [wd0d2], a
xor a xor a
ld [$ffde], a ld [$ffde], a
callba PlayBattleMusic callba PlayBattleMusic
callba Function2ee18 callba ShowLinkBattleParticipants
callba Function2ee2f callba FindFirstAliveMon
call Function2ed3 call DisableSpriteUpdates
callba ClearBattleRAM callba ClearBattleRAM
call Function3f55e call Function3f55e
call Function3f568 call Function3f568
@@ -8465,14 +8469,14 @@ Function3f4dd: ; 3f4dd
ret ret
; 3f54e ; 3f54e
Function3f54e: ; 3f54e LoadTrainerOrWildMonPic: ; 3f54e
ld a, [OtherTrainerClass] ld a, [OtherTrainerClass]
and a and a
jr nz, .asm_3f55a jr nz, .Trainer
ld a, [TempWildMonSpecies] ld a, [TempWildMonSpecies]
ld [CurPartySpecies], a ld [CurPartySpecies], a
.asm_3f55a .Trainer
ld [TempEnemyMonSpecies], a ld [TempEnemyMonSpecies], a
ret ret
; 3f55e ; 3f55e
@@ -8480,8 +8484,8 @@ Function3f54e: ; 3f54e
Function3f55e: ; 3f55e Function3f55e: ; 3f55e
ld a, [OtherTrainerClass] ld a, [OtherTrainerClass]
and a and a
jp nz, Function3f594 jp nz, Function3f594 ; trainer
jp Function3f607 jp Function3f607 ; wild
; 3f568 ; 3f568
Function3f568: ; 3f568 Function3f568: ; 3f568
@@ -8510,7 +8514,7 @@ Function3f568: ; 3f568
Function3f594: ; 3f594 Function3f594: ; 3f594
ld [TrainerClass], a ld [TrainerClass], a
callba Function10606a callba MobileFn_10606a
xor a xor a
ld [TempEnemyMonSpecies], a ld [TempEnemyMonSpecies], a
callab Function3957b callab Function3957b
@@ -8566,7 +8570,7 @@ Function3f594: ; 3f594
Function3f607: ; 3f607 Function3f607: ; 3f607
ld a, $1 ld a, $1
ld [wBattleMode], a ld [wBattleMode], a
callba Function10605d callba MobileFn_10605d
call LoadEnemyMon call LoadEnemyMon
ld hl, EnemyMonMoves ld hl, EnemyMonMoves
ld de, wc735 ld de, wc735
@@ -8660,15 +8664,15 @@ Function3f69e: ; 3f69e
Function3f6a5: ; 3f6a5 Function3f6a5: ; 3f6a5
ld a, [wLinkMode] ld a, [wLinkMode]
and a and a
jr z, .asm_3f6b7 jr z, .not_linked
call Function3f759 call Function3f759
ld c, 150 ld c, 150
call DelayFrames call DelayFrames
call Function3f77c call Function3f77c
ret ret
.asm_3f6b7 .not_linked
ld a, [wd0ee] ld a, [wBattleResult]
and $f and $f
ret nz ret nz
call Function3f71d call Function3f71d
@@ -8692,11 +8696,11 @@ Function3f6d0: ; 3f6d0
ld [wd267], a ld [wd267], a
ld [wd232], a ld [wd232], a
ld [wd0d8], a ld [wd0d8], a
ld [wd0da], a ld [wKeyItemsPocketPointerLocation], a
ld [wd0d9], a ld [wItemsPocketPointerLocation], a
ld [wd0d2], a ld [wd0d2], a
ld [CurMoveNum], a ld [CurMoveNum], a
ld [wd0db], a ld [wBallsPocketPointerLocation], a
ld [wd0d6], a ld [wd0d6], a
ld [wd0e4], a ld [wd0e4], a
ld [wd0e0], a ld [wd0e0], a
@@ -8750,7 +8754,7 @@ endr
; 3f759 ; 3f759
Function3f759: ; 3f759 Function3f759: ; 3f759
callba Function1060df callba MobileFn_1060df
callba Function106187 callba Function106187
ld a, [CurOTMon] ld a, [CurOTMon]
ld hl, OTPartyMon1Status ld hl, OTPartyMon1Status
@@ -8758,7 +8762,7 @@ Function3f759: ; 3f759
ld a, [EnemyMonStatus] ld a, [EnemyMonStatus]
ld [hl], a ld [hl], a
call ClearTileMap call ClearTileMap
callba Function2c1b2 callba _ShowLinkBattleParticipants
ret ret
; 3f77c ; 3f77c
@@ -8773,22 +8777,22 @@ Function3f77c: ; 3f77c
callba Function2b930 callba Function2b930
.asm_3f797 .asm_3f797
ld a, [wd0ee] ld a, [wBattleResult]
and $f and $f
cp $1 cp $1
jr c, .asm_3f7ad jr c, .asm_3f7ad
jr z, .asm_3f7b8 jr z, .asm_3f7b8
callba Function106107 callba MobileFn_106107
ld de, .Draw ld de, .Draw
jr .asm_3f7c3 jr .asm_3f7c3
.asm_3f7ad .asm_3f7ad
callba Function1060fb callba MobileFn_1060fb
ld de, .Win ld de, .Win
jr .asm_3f7c3 jr .asm_3f7c3
.asm_3f7b8 .asm_3f7b8
callba Function106101 callba MobileFn_106101
ld de, .Lose ld de, .Lose
jr .asm_3f7c3 jr .asm_3f7c3
@@ -9006,7 +9010,7 @@ Function3f998: ; 3f998
ld a, [BattleType] ld a, [BattleType]
cp BATTLETYPE_ROAMING cp BATTLETYPE_ROAMING
jr nz, .asm_3f9c4 jr nz, .asm_3f9c4
ld a, [wd0ee] ld a, [wBattleResult]
and $f and $f
jr z, .asm_3f9af jr z, .asm_3f9af
call GetRoamMonHP call GetRoamMonHP
@@ -9170,7 +9174,7 @@ endr
; 3faa0 ; 3faa0
Function3faa0: ; 3faa0 Function3faa0: ; 3faa0
ld a, [wd0ee] ld a, [wBattleResult]
and $f and $f
cp $1 cp $1
ld bc, $000d ld bc, $000d
@@ -9405,7 +9409,7 @@ GetBattleBackpic: ; 3fbff
jr z, .Decompress jr z, .Decompress
; What gender are we? ; What gender are we?
ld a, [wd45b] ld a, [wPlayerSpriteSetupFlags]
bit 2, a bit 2, a
jr nz, .Chris jr nz, .Chris
ld a, [PlayerGender] ld a, [PlayerGender]
@@ -9542,7 +9546,7 @@ BattleStartMessage: ; 3fc8b
cp BATTLETYPE_FISH cp BATTLETYPE_FISH
jr nz, .asm_3fcfd jr nz, .asm_3fcfd
callba Function106086 callba MobileFn_106086
ld hl, HookedPokemonAttackedText ld hl, HookedPokemonAttackedText
jr .asm_3fd0e jr .asm_3fd0e

View File

@@ -7188,10 +7188,10 @@ BattleCommanda0: ; 36778
Function36804: ; 36804 Function36804: ; 36804
ld a, [wd0ee] ld a, [wBattleResult]
and $c0 and $c0
or $2 or $2
ld [wd0ee], a ld [wBattleResult], a
ret ret
; 3680f ; 3680f
@@ -8519,7 +8519,7 @@ BattleCommand35: ; 36f9d
BattleCommand36: ; 36fe1 BattleCommand36: ; 36fe1
call AnimateCurrentMove call AnimateCurrentMove
callba Function1060e5 callba MobileFn_1060e5
jp PrintNothingHappened jp PrintNothingHappened
; 36fed ; 36fed
@@ -9152,7 +9152,7 @@ CheckSubstituteOpp: ; 37378
BattleCommand1a: ; 37380 BattleCommand1a: ; 37380
callba Function10610d callba MobileFn_10610d
ld a, $4 ld a, $4
ld [wcfca], a ld [wcfca], a
ld c, $3 ld c, $3

215
battle/magikarp_length.asm Normal file
View File

@@ -0,0 +1,215 @@
CalcMagikarpLength: ; fbbfc
; Return Magikarp's length (in mm) at MagikarpLength (big endian).
;
; input:
; de: EnemyMonDVs
; bc: PlayerID
; This function is poorly commented.
; In short, it generates a value between 190 and 1786 using
; a Magikarp's DVs and its trainer ID. This value is further
; filtered in LoadEnemyMon to make longer Magikarp even rarer.
; The value is generated from a lookup table.
; The index is determined by the dv xored with the player's trainer id.
; bc = rrc(dv[0]) ++ rrc(dv[1]) ^ rrc(id)
; if bc < 10: [MagikarpLength] = c + 190
; if bc >= $ff00: [MagikarpLength] = c + 1370
; else: [MagikarpLength] = z * 100 + (bc - x) / y
; X, Y, and Z depend on the value of b as follows:
; if b = 0: x = 310, y = 2, z = 3
; if b = 1: x = 710, y = 4, z = 4
; if b = 2-9: x = 2710, y = 20, z = 5
; if b = 10-29: x = 7710, y = 50, z = 6
; if b = 30-68: x = 17710, y = 100, z = 7
; if b = 69-126: x = 32710, y = 150, z = 8
; if b = 127-185: x = 47710, y = 150, z = 9
; if b = 186-224: x = 57710, y = 100, z = 10
; if b = 225-243: x = 62710, y = 50, z = 11
; if b = 244-251: x = 64710, y = 20, z = 12
; if b = 252-253: x = 65210, y = 5, z = 13
; if b = 254: x = 65410, y = 2, z = 14
; bc = rrc(dv[0]) ++ rrc(dv[1]) ^ rrc(id)
; id
ld h, b
ld l, c
ld a, [hli]
ld b, a
ld c, [hl]
rrc b
rrc c
; dv
ld a, [de]
inc de
rrca
rrca
xor b
ld b, a
ld a, [de]
rrca
rrca
xor c
ld c, a
; if bc < 10:
; de = bc + 190
; break
ld a, b
and a
jr nz, .no
ld a, c
cp 10
jr nc, .no
ld hl, 190
add hl, bc
ld d, h
ld e, l
jr .done
.no
ld hl, .Lengths
ld a, 2
ld [wd265], a
.read
ld a, [hli]
ld e, a
ld a, [hli]
ld d, a
call .BCLessThanDE
jr nc, .next
; c = (bc - de) / [hl]
call .BCMinusDE
ld a, b
ld [hDividend + 0], a
ld a, c
ld [hDividend + 1], a
ld a, [hl]
ld [hDivisor], a
ld b, 2
call Divide
ld a, [hQuotient + 2]
ld c, a
; de = c + 100 * (2 + i)
xor a
ld [hMultiplicand + 0], a
ld [hMultiplicand + 1], a
ld a, 100
ld [hMultiplicand + 2], a
ld a, [wd265]
ld [hMultiplier], a
call Multiply
ld b, 0
ld a, [hProduct + 3]
add c
ld e, a
ld a, [hProduct + 2]
adc b
ld d, a
jr .done
.next
inc hl ; align to next triplet
ld a, [wd265]
inc a
ld [wd265], a
cp 16
jr c, .read
call .BCMinusDE
ld hl, 1600
add hl, bc
ld d, h
ld e, l
.done
; hl = de * 10
ld h, d
ld l, e
rept 2
add hl, hl
endr
add hl, de
add hl, hl
; hl = hl / 254
ld de, -254
ld a, -1
.div_254
inc a
add hl, de
jr c, .div_254
; d, e = hl / 12, hl % 12
ld d, 0
.mod_12
cp 12
jr c, .ok
sub 12
inc d
jr .mod_12
.ok
ld e, a
ld hl, MagikarpLength
ld [hl], d
inc hl
ld [hl], e
ret
; fbc9a
.BCLessThanDE: ; fbc9a
; Intention: Return bc < de.
; Reality: Return b < d.
ld a, b
cp d
ret c
ret nc ; whoops
ld a, c
cp e
ret
; fbca1
.BCMinusDE: ; fbca1
; bc -= de
ld a, c
sub e
ld c, a
ld a, b
sbc d
ld b, a
ret
; fbca8
.Lengths: ; fbca8
; ????, divisor
dwb 110, 1
dwb 310, 2
dwb 710, 4
dwb 2710, 20
dwb 7710, 50
dwb 17710, 100
dwb 32710, 150
dwb 47710, 150
dwb 57710, 100
dwb 62710, 50
dwb 64710, 20
dwb 65210, 5
dwb 65410, 2
dwb 65510, 1 ; not used
; fbcd2

View File

@@ -10,6 +10,7 @@ INCLUDE "constants/type_constants.asm"
INCLUDE "constants/move_constants.asm" INCLUDE "constants/move_constants.asm"
INCLUDE "constants/battle_constants.asm" INCLUDE "constants/battle_constants.asm"
INCLUDE "constants/map_constants.asm" INCLUDE "constants/map_constants.asm"
INCLUDE "constants/map_setup_constants.asm"
INCLUDE "constants/landmark_constants.asm" INCLUDE "constants/landmark_constants.asm"
INCLUDE "constants/item_constants.asm" INCLUDE "constants/item_constants.asm"
INCLUDE "constants/trainer_constants.asm" INCLUDE "constants/trainer_constants.asm"

View File

@@ -352,7 +352,7 @@ const_value SET 70
const HELD_TRADE_EVOLVE const HELD_TRADE_EVOLVE
const HELD_AMULET_COIN const HELD_AMULET_COIN
const HELD_BRIGHTPOWDER const HELD_BRIGHTPOWDER
const HELD_4E const HELD_78
const HELD_FOCUS_BAND const HELD_FOCUS_BAND
const_def const_def
@@ -364,3 +364,12 @@ const_value SET 70
const ITEMATTR_POCKET const ITEMATTR_POCKET
const ITEMATTR_HELP const ITEMATTR_HELP
NUM_ITEMATTRS EQU const_value NUM_ITEMATTRS EQU const_value
ITEMMENU_NOUSE EQU 0
ITEMMENU_CURRENT EQU 4
ITEMMENU_PARTY EQU 5
ITEMMENU_FIELD EQU 6
ITEMCONTEXT_NOTINBATTLE EQU 0
ITEMCONTEXT_BATTLEANDFIELD EQU 5
ITEMCONTEXT_BATTLEONLY EQU 6

View File

@@ -0,0 +1,13 @@
const_def
const MAPSETUP_00
const MAPSETUP_01
const MAPSETUP_02
const MAPSETUP_03
const MAPSETUP_04
const MAPSETUP_05
const MAPSETUP_06
const MAPSETUP_07
const MAPSETUP_08
const MAPSETUP_09
const MAPSETUP_10
const MAPSETUP_11

View File

@@ -156,3 +156,6 @@ const_value = 1
const LINK_TRADECENTER const LINK_TRADECENTER
const LINK_COLOSSEUM const LINK_COLOSSEUM
const LINK_MOBILE const LINK_MOBILE
HMENURETURN_SCRIPT EQU %10000000
HMENURETURN_ASM EQU %11111111

View File

@@ -40,13 +40,28 @@
const PHONE_BUENA const PHONE_BUENA
const_def const_def
const ELMCALL_NONE const SPECIALCALL_NONE
const ELMCALL_POKERUS const SPECIALCALL_POKERUS
const ELMCALL_ROBBED const SPECIALCALL_ROBBED
const ELMCALL_ASSISTANT const SPECIALCALL_ASSISTANT
const ELMCALL_WEIRDBROADCAST const SPECIALCALL_WEIRDBROADCAST
const ELMCALL_SSTICKET const SPECIALCALL_SSTICKET
const ELMCALL_UNKNOWN const SPECIALCALL_BIKESHOP
const MOMCALL_WORRIED const SPECIALCALL_WORRIED
const ELMCALL_MASTERBALL const SPECIALCALL_MASTERBALL
const_def
const PHONE_CONTACT_TRAINER_CLASS
const PHONE_CONTACT_TRAINER_NUMBER
const PHONE_CONTACT_MAP_GROUP
const PHONE_CONTACT_MAP_NUMBER
const PHONE_CONTACT_SCRIPT1_TIME
const PHONE_CONTACT_SCRIPT1_BANK
const PHONE_CONTACT_SCRIPT1_ADDR_LO
const PHONE_CONTACT_SCRIPT1_ADDR_HI
const PHONE_CONTACT_SCRIPT2_TIME
const PHONE_CONTACT_SCRIPT2_BANK
const PHONE_CONTACT_SCRIPT2_ADDR_LO
const PHONE_CONTACT_SCRIPT2_ADDR_HI
PHONE_TABLE_WIDTH EQU const_value
CONTACT_LIST_SIZE EQU 10

View File

@@ -5,7 +5,7 @@ LAST_TALKED EQU -2
const_def const_def
const VAR_STRINGBUFFER2 const VAR_STRINGBUFFER2
const VAR_PARTYCOUNT const VAR_PARTYCOUNT
const VAR_02 const VAR_BATTLERESULT
const VAR_BATTLETYPE const VAR_BATTLETYPE
const VAR_TIMEOFDAY const VAR_TIMEOFDAY
const VAR_DEXCAUGHT const VAR_DEXCAUGHT
@@ -23,11 +23,15 @@ LAST_TALKED EQU -2
const VAR_CONTESTMINUTES const VAR_CONTESTMINUTES
const VAR_XCOORD const VAR_XCOORD
const VAR_YCOORD const VAR_YCOORD
const VAR_POKERUS const VAR_SPECIALPHONECALL
const VAR_15 const VAR_15
const VAR_16 const VAR_KURT_APRICORNS
const VAR_CALLERID const VAR_CALLERID
const VAR_BLUECARDBALANCE const VAR_BLUECARDBALANCE
const VAR_19 const VAR_BUENASPASSWORD
const VAR_KENJI_BREAK const VAR_KENJI_BREAK
NUM_VARS EQU const_value NUM_VARS EQU const_value
RETVAR_STRBUF2 EQU (0 << 6)
RETVAR_ADDR_DE EQU (1 << 6)
RETVAR_EXECUTE EQU (2 << 6)

View File

@@ -614,3 +614,33 @@
const EUSINE const EUSINE
NUM_TRAINER_CLASSES EQU __enum__ NUM_TRAINER_CLASSES EQU __enum__
const_def
const NO_AI
const_value = 0
shift_const AI_BASIC
shift_const AI_SETUP
shift_const AI_TYPES
shift_const AI_OFFENSIVE
shift_const AI_SMART
shift_const AI_OPPORTUNIST
shift_const AI_AGGRESSIVE
shift_const AI_CAUTIOUS
shift_const AI_STATUS
shift_const AI_RISKY
shift_const AI_10
shift_const AI_11
shift_const AI_12
shift_const AI_13
shift_const AI_14
shift_const AI_15
const_def
const TRNATTR_ITEM1
const TRNATTR_ITEM2
const TRNATTR_BASEMONEY
const TRNATTR_AI1
const TRNATTR_AI2
const TRNATTR_AI3
const TRNATTR_AI4
NUM_TRAINER_ATTRIBUTES EQU const_value

View File

@@ -785,16 +785,16 @@ Function973a: ; 973a
Function974b: ; 974b Function974b: ; 974b
and a and a
jp nz, Function97f9 jp nz, Function97f9
ld a, [wd45b] ld a, [wPlayerSpriteSetupFlags]
bit 2, a bit 2, a
jr nz, .asm_9760 jr nz, .male
ld a, [PlayerGender] ld a, [PlayerGender]
and a and a
jr z, .asm_9760 jr z, .male
ld hl, KrisPalette ld hl, KrisPalette
ret ret
.asm_9760 .male
ld hl, PlayerPalette ld hl, PlayerPalette
ret ret
; 9764 ; 9764

View File

@@ -1,198 +1,200 @@
; All locations are in WRAM bank 1. ; All locations are in WRAM bank 1.
engine_flag: MACRO
dwb \1, 1 << \2
ENDM
; location, bit ; location, bit
; pokegear ; pokegear
dwb wPokegearFlags, %00000010 ; radio card ; $0 engine_flag wPokegearFlags, 1 ; radio card ; $0
dwb wPokegearFlags, %00000001 ; map card engine_flag wPokegearFlags, 0 ; map card
dwb wPokegearFlags, %00000100 ; phone card engine_flag wPokegearFlags, 2 ; phone card
dwb wPokegearFlags, %00001000 ; expn card engine_flag wPokegearFlags, 3 ; expn card
dwb wPokegearFlags, %10000000 ; on/off engine_flag wPokegearFlags, 7 ; on/off
; wDaycareMan, %10000000 ; daycare 1 on ; wDaycareMan, 7 ; daycare 1 on
dwb wDaycareMan, %01000000 ; monster 1 and 2 are compatible engine_flag wDaycareMan, 6 ; monster 1 and 2 are compatible
; wDaycareMan, %00100000 ; egg is ready ; wDaycareMan, 5 ; egg is ready
dwb wDaycareMan, %00000001 ; monster 1 in daycare engine_flag wDaycareMan, 0 ; monster 1 in daycare
; wDaycareLady, %10000000 = daycare 2 on ; wDaycareLady, 7 = daycare 2 on
dwb wDaycareLady, %00000001 ; monster 2 in daycare engine_flag wDaycareLady, 0 ; monster 2 in daycare
dwb wMomSavingMoney, %00000001 ; mom saving money ; $8 engine_flag wMomSavingMoney, 0 ; mom saving money ; $8
dwb wMomSavingMoney, %10000000 ; dst engine_flag wMomSavingMoney, 7 ; dst
dwb wdc39, %00000001 engine_flag wdc39, 0
dwb StatusFlags, %00000001 ; pokedex engine_flag StatusFlags, 0 ; pokedex
dwb StatusFlags, %00000010 ; unown dex engine_flag StatusFlags, 1 ; unown dex
dwb StatusFlags, %00001000 ; pokerus engine_flag StatusFlags, 3 ; pokerus
dwb StatusFlags, %00010000 ; rocket signal on ch20 engine_flag StatusFlags, 4 ; rocket signal on ch20
dwb StatusFlags, %01000000 ; credits skip engine_flag StatusFlags, 6 ; credits skip
dwb StatusFlags, %10000000 ; bug contest on ; $10 engine_flag StatusFlags, 7 ; bug contest on ; $10
dwb StatusFlags2, %00000100 ; bug contest timer engine_flag StatusFlags2, 2 ; bug contest timer
dwb StatusFlags2, %00000010 engine_flag StatusFlags2, 1
dwb StatusFlags2, %00000001 ; rockets in radio tower engine_flag StatusFlags2, 0 ; rockets in radio tower
dwb StatusFlags2, %00010000 ; bike shop call enabled (1024 bike steps reqd) engine_flag StatusFlags2, 4 ; bike shop call enabled (1024 bike steps reqd)
dwb StatusFlags2, %00100000 ; give pokerus; berry -> berry juice when trading? engine_flag StatusFlags2, 5 ; give pokerus
dwb StatusFlags2, %01000000 engine_flag StatusFlags2, 6 ; berry -> berry juice when trading?
dwb StatusFlags2, %10000000 ; rockets in mahogany engine_flag StatusFlags2, 7 ; rockets in mahogany
dwb BikeFlags, %00000001 ; strength active ; $18 engine_flag BikeFlags, 0 ; strength active ; $18
dwb BikeFlags, %00000010 ; always on bike (cant surf) engine_flag BikeFlags, 1 ; always on bike (cant surf)
dwb BikeFlags, %00000100 ; downhill (cycling road) engine_flag BikeFlags, 2 ; downhill (cycling road)
dwb JohtoBadges, %00000001 ; zephyrbadge engine_flag JohtoBadges, 0 ; zephyrbadge
dwb JohtoBadges, %00000010 ; hivebadge engine_flag JohtoBadges, 1 ; hivebadge
dwb JohtoBadges, %00000100 ; plainbadge engine_flag JohtoBadges, 2 ; plainbadge
dwb JohtoBadges, %00001000 ; fogbadge engine_flag JohtoBadges, 3 ; fogbadge
dwb JohtoBadges, %00010000 ; mineralbadge engine_flag JohtoBadges, 4 ; mineralbadge
dwb JohtoBadges, %00100000 ; stormbadge ; $20 engine_flag JohtoBadges, 5 ; stormbadge ; $20
dwb JohtoBadges, %01000000 ; glacierbadge engine_flag JohtoBadges, 6 ; glacierbadge
dwb JohtoBadges, %10000000 ; risingbadge engine_flag JohtoBadges, 7 ; risingbadge
dwb KantoBadges, %00000001 ; boulderbadge engine_flag KantoBadges, 0 ; boulderbadge
dwb KantoBadges, %00000010 ; cascadebadge engine_flag KantoBadges, 1 ; cascadebadge
dwb KantoBadges, %00000100 ; thunderbadge engine_flag KantoBadges, 2 ; thunderbadge
dwb KantoBadges, %00001000 ; rainbowbadge engine_flag KantoBadges, 3 ; rainbowbadge
dwb KantoBadges, %00010000 ; soulbadge engine_flag KantoBadges, 4 ; soulbadge
dwb KantoBadges, %00100000 ; marshbadge ; $28 engine_flag KantoBadges, 5 ; marshbadge ; $28
dwb KantoBadges, %01000000 ; volcanobadge engine_flag KantoBadges, 6 ; volcanobadge
dwb KantoBadges, %10000000 ; earthbadge engine_flag KantoBadges, 7 ; earthbadge
; unown sets ; unown sets
dwb UnlockedUnowns, %00000001 ; 1 engine_flag UnlockedUnowns, 0 ; 1
dwb UnlockedUnowns, %00000010 ; 2 engine_flag UnlockedUnowns, 1 ; 2
dwb UnlockedUnowns, %00000100 ; 3 engine_flag UnlockedUnowns, 2 ; 3
dwb UnlockedUnowns, %00001000 ; 4 engine_flag UnlockedUnowns, 3 ; 4
dwb UnlockedUnowns, %00010000 ; 5 engine_flag UnlockedUnowns, 4 ; 5
dwb UnlockedUnowns, %00100000 ; 6 ; $30 engine_flag UnlockedUnowns, 5 ; 6 ; $30
dwb UnlockedUnowns, %01000000 ; 7 engine_flag UnlockedUnowns, 6 ; 7
dwb UnlockedUnowns, %10000000 ; 8 engine_flag UnlockedUnowns, 7 ; 8
; fly ; fly
dwb VisitedSpawns, %00000001 ; your house engine_flag VisitedSpawns, 0 ; your house
dwb VisitedSpawns, %00000010 ; viridian pokecenter engine_flag VisitedSpawns, 1 ; viridian pokecenter
dwb VisitedSpawns, %00000100 ; pallet engine_flag VisitedSpawns, 2 ; pallet
dwb VisitedSpawns, %00001000 ; viridian engine_flag VisitedSpawns, 3 ; viridian
dwb VisitedSpawns, %00010000 ; pewter engine_flag VisitedSpawns, 4 ; pewter
dwb VisitedSpawns, %00100000 ; cerulean ; $38 engine_flag VisitedSpawns, 5 ; cerulean ; $38
dwb VisitedSpawns, %01000000 ; rock tunnel engine_flag VisitedSpawns, 6 ; rock tunnel
dwb VisitedSpawns, %10000000 ; vermilion engine_flag VisitedSpawns, 7 ; vermilion
dwb VisitedSpawns + 1, %00000001 ; lavender engine_flag VisitedSpawns + 1, 0 ; lavender
dwb VisitedSpawns + 1, %00000010 ; saffron engine_flag VisitedSpawns + 1, 1 ; saffron
dwb VisitedSpawns + 1, %00000100 ; celadon engine_flag VisitedSpawns + 1, 2 ; celadon
dwb VisitedSpawns + 1, %00001000 ; fuchsia engine_flag VisitedSpawns + 1, 3 ; fuchsia
dwb VisitedSpawns + 1, %00010000 ; cinnabar engine_flag VisitedSpawns + 1, 4 ; cinnabar
dwb VisitedSpawns + 1, %00100000 ; indigo plateau ; $40 engine_flag VisitedSpawns + 1, 5 ; indigo plateau ; $40
dwb VisitedSpawns + 1, %01000000 ; new bark engine_flag VisitedSpawns + 1, 6 ; new bark
dwb VisitedSpawns + 1, %10000000 ; cherrygrove engine_flag VisitedSpawns + 1, 7 ; cherrygrove
dwb VisitedSpawns + 2, %00000001 ; violet engine_flag VisitedSpawns + 2, 0 ; violet
dwb VisitedSpawns + 2, %00000100 ; azalea engine_flag VisitedSpawns + 2, 2 ; azalea
dwb VisitedSpawns + 2, %00001000 ; cianwood engine_flag VisitedSpawns + 2, 3 ; cianwood
dwb VisitedSpawns + 2, %00010000 ; goldenrod engine_flag VisitedSpawns + 2, 4 ; goldenrod
dwb VisitedSpawns + 2, %00100000 ; olivine engine_flag VisitedSpawns + 2, 5 ; olivine
dwb VisitedSpawns + 2, %01000000 ; ecruteak ; $48 engine_flag VisitedSpawns + 2, 6 ; ecruteak ; $48
dwb VisitedSpawns + 2, %10000000 ; mahogany engine_flag VisitedSpawns + 2, 7 ; mahogany
dwb VisitedSpawns + 3, %00000001 ; lake of rage engine_flag VisitedSpawns + 3, 0 ; lake of rage
dwb VisitedSpawns + 3, %00000010 ; blackthorn engine_flag VisitedSpawns + 3, 1 ; blackthorn
dwb VisitedSpawns + 3, %00000100 ; silver cave engine_flag VisitedSpawns + 3, 2 ; silver cave
dwb VisitedSpawns + 3, %00010000 ; unused engine_flag VisitedSpawns + 3, 4 ; unused
dwb wLuckyNumberShowFlag, %00000001 ; lucky number show engine_flag wLuckyNumberShowFlag, 0 ; lucky number show
dwb StatusFlags2, %00001000 engine_flag StatusFlags2, 3 ; ????
dwb DailyFlags, %00000001 ; kurt making balls ; $50 engine_flag DailyFlags, 0 ; kurt making balls ; $50
dwb DailyFlags, %00000010 engine_flag DailyFlags, 1 ; ????
dwb DailyFlags, %00000100 ; special wilddata? engine_flag DailyFlags, 2 ; special wilddata?
dwb DailyFlags, %00001000 ; time capsule (24h wait) engine_flag DailyFlags, 3 ; time capsule (24h wait)
dwb DailyFlags, %00010000 ; all fruit trees engine_flag DailyFlags, 4 ; all fruit trees
dwb DailyFlags, %00100000 ; shuckle given engine_flag DailyFlags, 5 ; shuckle given
dwb DailyFlags, %01000000 ; goldenrod underground merchant closed engine_flag DailyFlags, 6 ; goldenrod underground merchant closed
dwb DailyFlags, %10000000 ; fought in trainer hall today engine_flag DailyFlags, 7 ; fought in trainer hall today
dwb WeeklyFlags, %00000001 ; mt moon square clefairy ; $58 engine_flag WeeklyFlags, 0 ; mt moon square clefairy ; $58
dwb WeeklyFlags, %00000010 ; union cave lapras engine_flag WeeklyFlags, 1 ; union cave lapras
dwb WeeklyFlags, %00000100 ; goldenrod underground haircut used engine_flag WeeklyFlags, 2 ; goldenrod underground haircut used
dwb WeeklyFlags, %00001000 ; goldenrod mall happiness event floor05 person07 engine_flag WeeklyFlags, 3 ; goldenrod mall happiness event floor05 person07
dwb WeeklyFlags, %00010000 ; tea in blues house engine_flag WeeklyFlags, 4 ; tea in blues house
dwb WeeklyFlags, %00100000 ; indigo plateau rival fight engine_flag WeeklyFlags, 5 ; indigo plateau rival fight
dwb WeeklyFlags, %01000000 ; move tutor engine_flag WeeklyFlags, 6 ; move tutor
dwb WeeklyFlags, %10000000 ; buenas password engine_flag WeeklyFlags, 7 ; buenas password
dwb SwarmFlags, %00000001 ; $60 engine_flag SwarmFlags, 0 ; $60
dwb SwarmFlags, %00000010 ; goldenrod dept store sale is on engine_flag SwarmFlags, 1 ; goldenrod dept store sale is on
dwb GameTimerPause, %10000000 ; $62 engine_flag GameTimerPause, 7 ; $62
dwb PlayerGender, %00000001 ; player is female engine_flag PlayerGender, 0 ; player is female
dwb wdbf3, %00000100 ; have gs ball after kurt examined it engine_flag wCelebiEvent, 2 ; have gs ball after kurt examined it
; rematches ; rematches
dwb wDailyRematchFlags, %00000001 ; jack engine_flag wDailyRematchFlags, 0 ; jack
dwb wDailyRematchFlags, %00000010 ; huey engine_flag wDailyRematchFlags, 1 ; huey
dwb wDailyRematchFlags, %00000100 ; gaven engine_flag wDailyRematchFlags, 2 ; gaven
dwb wDailyRematchFlags, %00001000 ; beth ; $68 engine_flag wDailyRematchFlags, 3 ; beth ; $68
dwb wDailyRematchFlags, %00010000 ; jose engine_flag wDailyRematchFlags, 4 ; jose
dwb wDailyRematchFlags, %00100000 ; reena engine_flag wDailyRematchFlags, 5 ; reena
dwb wDailyRematchFlags, %01000000 ; joey engine_flag wDailyRematchFlags, 6 ; joey
dwb wDailyRematchFlags, %10000000 ; wade engine_flag wDailyRematchFlags, 7 ; wade
dwb wDailyRematchFlags + 1, %00000001 ; ralph engine_flag wDailyRematchFlags + 1, 0 ; ralph
dwb wDailyRematchFlags + 1, %00000010 ; liz engine_flag wDailyRematchFlags + 1, 1 ; liz
dwb wDailyRematchFlags + 1, %00000100 ; anthony engine_flag wDailyRematchFlags + 1, 2 ; anthony
dwb wDailyRematchFlags + 1, %00001000 ; todd ; $70 engine_flag wDailyRematchFlags + 1, 3 ; todd ; $70
dwb wDailyRematchFlags + 1, %00010000 ; gina engine_flag wDailyRematchFlags + 1, 4 ; gina
dwb wDailyRematchFlags + 1, %00100000 ; arnie engine_flag wDailyRematchFlags + 1, 5 ; arnie
dwb wDailyRematchFlags + 1, %01000000 ; alan engine_flag wDailyRematchFlags + 1, 6 ; alan
dwb wDailyRematchFlags + 1, %10000000 ; dana engine_flag wDailyRematchFlags + 1, 7 ; dana
dwb wDailyRematchFlags + 2, %00000001 ; chad engine_flag wDailyRematchFlags + 2, 0 ; chad
dwb wDailyRematchFlags + 2, %00000010 ; tully engine_flag wDailyRematchFlags + 2, 1 ; tully
dwb wDailyRematchFlags + 2, %00000100 ; brent engine_flag wDailyRematchFlags + 2, 2 ; brent
dwb wDailyRematchFlags + 2, %00001000 ; tiffany ; $78 engine_flag wDailyRematchFlags + 2, 3 ; tiffany ; $78
dwb wDailyRematchFlags + 2, %00010000 ; vance engine_flag wDailyRematchFlags + 2, 4 ; vance
dwb wDailyRematchFlags + 2, %00100000 ; wilton engine_flag wDailyRematchFlags + 2, 5 ; wilton
dwb wDailyRematchFlags + 2, %01000000 ; parry engine_flag wDailyRematchFlags + 2, 6 ; parry
dwb wDailyRematchFlags + 2, %10000000 ; erin engine_flag wDailyRematchFlags + 2, 7 ; erin
dwb wDailyPhoneItemFlags, %00000001 ; beverly has nugget engine_flag wDailyPhoneItemFlags, 0 ; beverly has nugget
dwb wDailyPhoneItemFlags, %00000010 ; jose has star piece engine_flag wDailyPhoneItemFlags, 1 ; jose has star piece
dwb wDailyPhoneItemFlags, %00000100 ; wade has item (see bittable1 $032b-e) engine_flag wDailyPhoneItemFlags, 2 ; wade has item (see bittable1 $032b-e)
dwb wDailyPhoneItemFlags, %00001000 ; gina has leaf stone ; $80 engine_flag wDailyPhoneItemFlags, 3 ; gina has leaf stone ; $80
dwb wDailyPhoneItemFlags, %00010000 ; alan has fire stone engine_flag wDailyPhoneItemFlags, 4 ; alan has fire stone
dwb wDailyPhoneItemFlags, %00100000 ; liz has thunderstone engine_flag wDailyPhoneItemFlags, 5 ; liz has thunderstone
dwb wDailyPhoneItemFlags, %01000000 ; derek has nugget engine_flag wDailyPhoneItemFlags, 6 ; derek has nugget
dwb wDailyPhoneItemFlags, %10000000 ; tully has water stone engine_flag wDailyPhoneItemFlags, 7 ; tully has water stone
dwb wDailyPhoneItemFlags + 1, %00000001 ; tiffany has pink bow engine_flag wDailyPhoneItemFlags + 1, 0 ; tiffany has pink bow
dwb wDailyPhoneItemFlags + 1, %00000010 ; wilton has item (see bittable1 $032f-31) engine_flag wDailyPhoneItemFlags + 1, 1 ; wilton has item (see bittable1 $032f-31)
dwb wDailyPhoneTimeOfDayFlags, %00000001 engine_flag wDailyPhoneTimeOfDayFlags, 0
dwb wDailyPhoneTimeOfDayFlags, %00000010 ; $88 engine_flag wDailyPhoneTimeOfDayFlags, 1 ; $88
dwb wDailyPhoneTimeOfDayFlags, %00000100 engine_flag wDailyPhoneTimeOfDayFlags, 2
dwb wDailyPhoneTimeOfDayFlags, %00001000 engine_flag wDailyPhoneTimeOfDayFlags, 3
dwb wDailyPhoneTimeOfDayFlags, %00010000 engine_flag wDailyPhoneTimeOfDayFlags, 4
dwb wDailyPhoneTimeOfDayFlags, %00100000 engine_flag wDailyPhoneTimeOfDayFlags, 5
dwb wDailyPhoneTimeOfDayFlags, %01000000 engine_flag wDailyPhoneTimeOfDayFlags, 6
dwb wDailyPhoneTimeOfDayFlags, %10000000 engine_flag wDailyPhoneTimeOfDayFlags, 7
dwb wDailyPhoneTimeOfDayFlags + 1, %00000001 engine_flag wDailyPhoneTimeOfDayFlags + 1, 0
dwb wDailyPhoneTimeOfDayFlags + 1, %00000010 ; $90 engine_flag wDailyPhoneTimeOfDayFlags + 1, 1 ; $90
dwb wDailyPhoneTimeOfDayFlags + 1, %00000100 engine_flag wDailyPhoneTimeOfDayFlags + 1, 2
dwb wDailyPhoneTimeOfDayFlags + 1, %00001000 engine_flag wDailyPhoneTimeOfDayFlags + 1, 3
dwb wDailyPhoneTimeOfDayFlags + 1, %00010000 engine_flag wDailyPhoneTimeOfDayFlags + 1, 4
dwb wDailyPhoneTimeOfDayFlags + 1, %00100000 engine_flag wDailyPhoneTimeOfDayFlags + 1, 5
dwb wDailyPhoneTimeOfDayFlags + 1, %01000000 engine_flag wDailyPhoneTimeOfDayFlags + 1, 6
dwb wDailyPhoneTimeOfDayFlags + 1, %10000000 engine_flag wDailyPhoneTimeOfDayFlags + 1, 7
dwb wDailyPhoneTimeOfDayFlags + 2, %00000001 engine_flag wDailyPhoneTimeOfDayFlags + 2, 0
dwb wDailyPhoneTimeOfDayFlags + 2, %00000010 ; $98 engine_flag wDailyPhoneTimeOfDayFlags + 2, 1 ; $98
dwb wDailyPhoneTimeOfDayFlags + 2, %00000100 engine_flag wDailyPhoneTimeOfDayFlags + 2, 2
dwb wDailyPhoneTimeOfDayFlags + 2, %00001000 engine_flag wDailyPhoneTimeOfDayFlags + 2, 3
dwb wDailyPhoneTimeOfDayFlags + 2, %00010000 engine_flag wDailyPhoneTimeOfDayFlags + 2, 4
dwb wDailyPhoneTimeOfDayFlags + 2, %00100000 engine_flag wDailyPhoneTimeOfDayFlags + 2, 5
dwb wDailyPhoneTimeOfDayFlags + 2, %01000000 engine_flag wDailyPhoneTimeOfDayFlags + 2, 6
dwb wDailyPhoneTimeOfDayFlags + 2, %10000000 engine_flag wDailyPhoneTimeOfDayFlags + 2, 7
dwb wd45b, %00000100 ; female player has been transformed into male engine_flag wPlayerSpriteSetupFlags, 2 ; female player has been transformed into male
dwb SwarmFlags, %00000100 ; dunsparce swarm ; $a0 engine_flag SwarmFlags, 2 ; dunsparce swarm ; $a0
dwb SwarmFlags, %00001000 ; yanma swarm engine_flag SwarmFlags, 3 ; yanma swarm

View File

@@ -123,7 +123,7 @@ StartMap: ; 96724
ld hl, MapStatus ld hl, MapStatus
ld bc, $3e ; 62 ld bc, $3e ; 62
call ByteFill call ByteFill
callba Function113e5 callba InitCallReceiveDelay
call ClearJoypad call ClearJoypad
; fallthrough ; fallthrough
; 9673e ; 9673e
@@ -138,19 +138,19 @@ EnterMap: ; 9673e
call ClearAllScriptFlags3 call ClearAllScriptFlags3
ld a, [hMapEntryMethod] ld a, [hMapEntryMethod]
cp $f7 cp ($f << 4) + MAPSETUP_07
jr nz, .dontset jr nz, .dontset
call SetAll_ScriptFlags3 call SetAll_ScriptFlags3
.dontset .dontset
ld a, [hMapEntryMethod] ld a, [hMapEntryMethod]
cp $f3 cp ($f << 4) + MAPSETUP_03
jr nz, .dontresetpoison jr nz, .dontresetpoison
xor a xor a
ld [PoisonStepCount], a ld [PoisonStepCount], a
.dontresetpoison .dontresetpoison
xor a xor a ; ($0 << 4) + MAPSETUP_00
ld [hMapEntryMethod], a ld [hMapEntryMethod], a
ld a, 2 ; HandleMap ld a, 2 ; HandleMap
ld [MapStatus], a ld [MapStatus], a
@@ -285,12 +285,12 @@ Function96812: ; 96812
PlayerEvents: ; 9681f PlayerEvents: ; 9681f
xor a xor a
; If there's already a player event, don't interrupt it.
ld a, [ScriptRunning] ld a, [ScriptRunning]
and a and a
ret nz ret nz
call Function968e4 call Dummy_CheckScriptFlags3Bit5 ; This is a waste of time
call CheckTrainerBattle3 call CheckTrainerBattle3
jr c, .ok jr c, .ok
@@ -298,13 +298,13 @@ PlayerEvents: ; 9681f
call CheckTileEvent call CheckTileEvent
jr c, .ok jr c, .ok
call Function97c30 call RunMemScript
jr c, .ok jr c, .ok
call Function968ec call DoMapTrigger
jr c, .ok jr c, .ok
call Function9693a call CheckTimeEvents
jr c, .ok jr c, .ok
call OWPlayerInput call OWPlayerInput
@@ -436,11 +436,7 @@ SetUpFiveStepWildEncounterCooldown: ; 968d1
ret ret
; 968d7 ; 968d7
Function968d7: ; 968d7 SetMinTwoStepWildEncounterCooldown: mobile ; 968d7
ret
; 968d8
Function968d8: ; 968d8
ld a, [wWildEncounterCooldown] ld a, [wWildEncounterCooldown]
cp 2 cp 2
ret nc ret nc
@@ -449,14 +445,14 @@ Function968d8: ; 968d8
ret ret
; 968e4 ; 968e4
Function968e4: ; 968e4 Dummy_CheckScriptFlags3Bit5: ; 968e4
call CheckBit5_ScriptFlags3 call CheckBit5_ScriptFlags3
ret z ret z
call Function2f3e call ret_2f3e
ret ret
; 968ec ; 968ec
Function968ec: ; 968ec DoMapTrigger: ; 968ec
ld a, [wdc07] ld a, [wdc07]
and a and a
jr z, .nope jr z, .nope
@@ -468,7 +464,7 @@ Function968ec: ; 968ec
ld e, a ld e, a
ld d, 0 ld d, 0
ld hl, wdc07 + 1 ld hl, wdc08
ld a, [hli] ld a, [hli]
ld h, [hl] ld h, [hl]
ld l, a ld l, a
@@ -505,23 +501,23 @@ endr
ret ret
; 9693a ; 9693a
Function9693a: ; 9693a CheckTimeEvents: ; 9693a
ld a, [wLinkMode] ld a, [wLinkMode]
and a and a
jr nz, .nothing jr nz, .nothing
ld hl, StatusFlags2 ld hl, StatusFlags2
bit 2, [hl] bit 2, [hl]
jr z, .asm_96951 jr z, .do_daily
callba Function114a4 callba CheckBugContestTimer
jr c, .elevator jr c, .end_bug_contest
xor a xor a
ret ret
.asm_96951 .do_daily
callba Function11452 callba CheckDailyResetTimer
callba Function114e7 callba CheckPokerusTrick
callba CheckPhoneCall callba CheckPhoneCall
ret c ret c
@@ -529,7 +525,7 @@ Function9693a: ; 9693a
xor a xor a
ret ret
.elevator .end_bug_contest
ld a, BANK(BugCatchingContestOverScript) ld a, BANK(BugCatchingContestOverScript)
ld hl, BugCatchingContestOverScript ld hl, BugCatchingContestOverScript
call CallScript call CallScript
@@ -537,7 +533,7 @@ Function9693a: ; 9693a
ret ret
; 96970 ; 96970
Function96970: ; 96970 .unused ; 96970
ld a, 8 ld a, 8
scf scf
ret ret
@@ -856,7 +852,7 @@ PlayerMovement: ; 96af0
; 96b10 ; 96b10
.seven ; 96b10 .seven ; 96b10
call Function968d7 ; empty call SetMinTwoStepWildEncounterCooldown ; mobile
xor a xor a
ld c, a ld c, a
ret ret
@@ -898,7 +894,7 @@ PlayerMovement: ; 96af0
CheckMenuOW: ; 96b30 CheckMenuOW: ; 96b30
xor a xor a
ld [$ffa0], a ld [hMenuReturn], a
ld [$ffa1], a ld [$ffa1], a
ld a, [hJoyPressed] ld a, [hJoyPressed]
@@ -940,9 +936,9 @@ SelectMenuScript: ; 96b5f
StartMenuCallback: StartMenuCallback:
SelectMenuCallback: ; 96b66 SelectMenuCallback: ; 96b66
copybytetovar $ffa0 copybytetovar hMenuReturn
if_equal %10000000, .Script if_equal HMENURETURN_SCRIPT, .Script
if_equal -1, .Asm if_equal HMENURETURN_ASM, .Asm
end end
; 96b72 ; 96b72
@@ -957,75 +953,85 @@ SelectMenuCallback: ; 96b66
CountStep: ; 96b79 CountStep: ; 96b79
; Don't count steps in link communication rooms.
ld a, [wLinkMode] ld a, [wLinkMode]
and a and a
jr nz, .done jr nz, .done
callba Function90136 ; If there is a special phone call, don't count the step.
jr c, .setminus1 callba CheckSpecialPhoneCall
jr c, .doscript
call Function96bd7 ; If Repel wore off, don't count the step.
jr c, .setminus1 call DoRepelStep
jr c, .doscript
; Count the step for poison and total steps
ld hl, PoisonStepCount ld hl, PoisonStepCount
inc [hl] inc [hl]
ld hl, StepCount ld hl, StepCount
inc [hl] inc [hl]
jr nz, .asm_96b9c ; Every 256 steps, increase the happiness of all your Pokemon.
jr nz, .skip_happiness
callba StepHappiness callba StepHappiness
.asm_96b9c .skip_happiness
; Every 256 steps, offset from the happiness incrementor by 128 steps,
; decrease the hatch counter of all your eggs until you reach the first
; one that is ready to hatch.
ld a, [StepCount] ld a, [StepCount]
cp $80 cp $80
jr nz, .asm_96bab jr nz, .skip_egg
callba Function16f3e callba DoEggStep
jr nz, .set8 jr nz, .hatch
.asm_96bab .skip_egg
; Increase the EXP of (both) DayCare Pokemon by 1.
callba DaycareStep callba DaycareStep
; Every four steps, deal damage to all Poisoned Pokemon
ld hl, PoisonStepCount ld hl, PoisonStepCount
ld a, [hl] ld a, [hl]
cp 4 cp 4
jr c, .poisoned jr c, .skip_poison
ld [hl], 0 ld [hl], 0
callba Function505da callba DoPoisonStep
jr c, .setminus1 jr c, .doscript
.poisoned .skip_poison
callba Function97db3 callba DoBikeStep
.done .done
xor a xor a
ret ret
.setminus1 .doscript
ld a, -1 ld a, -1
scf scf
ret ret
.set8 .hatch
ld a, 8 ld a, 8
scf scf
ret ret
; 96bd3 ; 96bd3
Function96bd3: ; 96bd3 .unreferenced: ; 96bd3
ld a, 7 ld a, 7
scf scf
ret ret
; 96bd7 ; 96bd7
Function96bd7: ; 96bd7 DoRepelStep: ; 96bd7
ld a, [wdca1] ld a, [wRepelEffect]
and a and a
ret z ret z
dec a dec a
ld [wdca1], a ld [wRepelEffect], a
ret nz ret nz
ld a, BANK(RepelWoreOffScript) ld a, BANK(RepelWoreOffScript)
ld hl, RepelWoreOffScript ld hl, RepelWoreOffScript
@@ -1038,7 +1044,7 @@ Function96beb: ; 96beb
ld a, [ScriptRunning] ld a, [ScriptRunning]
and a and a
ret z ret z
cp -1 cp -1 ; run script
ret z ret z
cp 10 cp 10
ret nc ret nc
@@ -1059,17 +1065,17 @@ endr
; 96c0c ; 96c0c
ScriptPointers96c0c: ; 96c0c ScriptPointers96c0c: ; 96c0c
dbw BANK(Invalid_0x96c2d), Invalid_0x96c2d dba Invalid_0x96c2d
dbw BANK(SeenByTrainerScript), SeenByTrainerScript dba SeenByTrainerScript
dbw BANK(TalkToTrainerScript), TalkToTrainerScript dba TalkToTrainerScript
dbw BANK(FindItemInBallScript), FindItemInBallScript dba FindItemInBallScript
dbw BANK(UnknownScript_0x96c4d), UnknownScript_0x96c4d dba UnknownScript_0x96c4d
dbw BANK(WarpToNewMapScript), WarpToNewMapScript dba WarpToNewMapScript
dbw BANK(FallIntoMapScript), FallIntoMapScript dba FallIntoMapScript
dbw BANK(UnknownScript_0x124c8), UnknownScript_0x124c8 dba UnknownScript_0x124c8
dbw BANK(HatchEggScript), HatchEggScript dba HatchEggScript
dbw BANK(UnknownScript_0x96c4f), UnknownScript_0x96c4f dba UnknownScript_0x96c4f
dbw BANK(Invalid_0x96c2d), Invalid_0x96c2d dba Invalid_0x96c2d
; 96c2d ; 96c2d
Invalid_0x96c2d: ; 96c2d Invalid_0x96c2d: ; 96c2d
@@ -1087,12 +1093,12 @@ HatchEggScript: ; 96c2f
WarpToNewMapScript: ; 96c34 WarpToNewMapScript: ; 96c34
warpsound warpsound
newloadmap $f5 newloadmap ($f << 4) + MAPSETUP_05
end end
; 96c38 ; 96c38
FallIntoMapScript: ; 96c38 FallIntoMapScript: ; 96c38
newloadmap $f6 newloadmap ($f << 4) + MAPSETUP_06
playsound SFX_KINESIS playsound SFX_KINESIS
applymovement PLAYER, MovementData_0x96c48 applymovement PLAYER, MovementData_0x96c48
playsound SFX_STRENGTH playsound SFX_STRENGTH

View File

@@ -8,33 +8,39 @@ WarpToSpawnPoint:: ; 97c28
ret ret
; 97c30 ; 97c30
Function97c30:: ; 97c30 RunMemScript:: ; 97c30
ld a, [wd45c] ; If there is no script here, we don't need to be here.
ld a, [wMapReentryScriptQueueFlag]
and a and a
ret z ret z
ld hl, wd45c + 2 ; Execute the script at (wMapReentryScriptBank):(wMapReentryScriptAddress).
ld hl, wMapReentryScriptAddress
ld a, [hli] ld a, [hli]
ld h, [hl] ld h, [hl]
ld l, a ld l, a
ld a, [wd45c + 1] ld a, [wMapReentryScriptBank]
call CallScript call CallScript
scf scf
; Clear the buffer for the next script.
push af push af
xor a xor a
ld hl, wd45c ld hl, wMapReentryScriptQueueFlag
ld bc, 8 ld bc, 8
call ByteFill call ByteFill
pop af pop af
ret ret
; 97c4f ; 97c4f
Function97c4f:: ; 97c4f LoadScriptBDE:: ; 97c4f
ld hl, wd45c ; If there's already a script here, don't overwrite.
ld hl, wMapReentryScriptQueueFlag
ld a, [hl] ld a, [hl]
and a and a
ret nz ret nz
; Set the flag
ld [hl], 1 ld [hl], 1
inc hl inc hl
; Load the script pointer b:de into (wMapReentryScriptBank):(wMapReentryScriptAddress)
ld [hl], b ld [hl], b
inc hl inc hl
ld [hl], e ld [hl], e
@@ -262,46 +268,60 @@ ContestMons: ; 97d87
db -1, VENOMOTH, 30, 40 db -1, VENOMOTH, 30, 40
; 97db3 ; 97db3
Function97db3:: ; 97db3 DoBikeStep:: ; 97db3
nop nop
nop nop
; fallthrough ; If the bike shop owner doesn't have our number, or
; 97db5 ; if we've already gotten the call, we don't have to
; be here.
Function97db5: ; 97db5
ld hl, StatusFlags2 ld hl, StatusFlags2
bit 4, [hl] bit 4, [hl]
jr z, .NoCall jr z, .NoCall
; If we're not on the bike, we don't have to be here.
ld a, [PlayerState] ld a, [PlayerState]
cp 1 cp PLAYER_BIKE
jr nz, .NoCall jr nz, .NoCall
; If we're not in an area of phone service, we don't
; have to be here.
call GetMapHeaderPhoneServiceNybble call GetMapHeaderPhoneServiceNybble
and a and a
jr nz, .NoCall jr nz, .NoCall
ld hl, wdca1 + 1
; Check the bike step count and check whether we've
; taken 65536 of them yet.
ld hl, wBikeStep
ld a, [hli] ld a, [hli]
ld d, a ld d, a
ld e, [hl] ld e, [hl]
cp -1 cp 255
jr nz, .asm_97dd8 jr nz, .increment
ld a, e ld a, e
cp -1 cp 255
jr z, .asm_97ddc jr z, .dont_increment
.asm_97dd8 .increment
inc de inc de
ld [hl], e ld [hl], e
dec hl dec hl
ld [hl], d ld [hl], d
.asm_97ddc .dont_increment
; If we've taken at least 1024 steps, have the bike
; shop owner try to call us.
ld a, d ld a, d
cp $4 cp 1024 >> 8
jr c, .NoCall jr c, .NoCall
; If a call has already been queued, don't overwrite
; that call.
ld a, [wSpecialPhoneCallID] ld a, [wSpecialPhoneCallID]
and a and a
jr nz, .NoCall jr nz, .NoCall
ld a, 6
; Queue the call.
ld a, SPECIALCALL_BIKESHOP
ld [wSpecialPhoneCallID], a ld [wSpecialPhoneCallID], a
xor a xor a
ld [wSpecialPhoneCallID + 1], a ld [wSpecialPhoneCallID + 1], a
@@ -488,7 +508,7 @@ Function97eb7: ; 97eb7
; 97eb8 ; 97eb8
Function97eb8: ; 97eb8 Function97eb8: ; 97eb8
call Function2f3e call ret_2f3e
ret ret
; 97ebc ; 97ebc

View File

@@ -58,7 +58,7 @@ CheckFruitTree: ; 44055
; 4405f ; 4405f
PickedFruitTree: ; 4405f PickedFruitTree: ; 4405f
callba Function10609b ; empty function callba MobileFn_10609b ; empty function
ld b, 1 ld b, 1
jp GetFruitTreeFlag jp GetFruitTreeFlag
; 4406a ; 4406a

View File

@@ -2196,7 +2196,7 @@ Function4ecd: ; 4ecd
add hl, bc add hl, bc
ld a, [hl] ld a, [hl]
ld b, a ld b, a
callba Function807e callba CopyDECoordsToMapObject
pop bc pop bc
ld hl, OBJECT_FLAGS ld hl, OBJECT_FLAGS
add hl, bc add hl, bc
@@ -3064,7 +3064,7 @@ Function579d: ; 579d
; 57bc ; 57bc
Function57bc: ; 57bc Function57bc: ; 57bc
ld hl, wd45b ld hl, wPlayerSpriteSetupFlags
bit 7, [hl] bit 7, [hl]
jr nz, .ok jr nz, .ok
ret ret
@@ -3076,10 +3076,10 @@ Function57bc: ; 57bc
; 57ca ; 57ca
Function57ca: ; 57ca Function57ca: ; 57ca
ld hl, wd45b ld hl, wPlayerSpriteSetupFlags
bit 5, [hl] bit 5, [hl]
ret z ret z
ld a, [wd45b] ld a, [wPlayerSpriteSetupFlags]
and 3 and 3
rept 2 rept 2
add a add a

View File

@@ -31,222 +31,171 @@ MapSetupScripts: ; 15377
dw MapSetupScript12 dw MapSetupScript12
; 1538f ; 1538f
; Command descriptions from Condensation water's scripting compendium.
const_def
const map_lcd_on ; 00 = Turn LCD on
const map_lcd_off ; 01 = Turn LCD off
const map_sound_off ; 02 = Turn speakers off
const map_music ; 03 = Music check for current map/ special check for bug catcher contest
const map_start_music ; 04 = Start map music anew
const map_fade_music ; 05 = Music check for current map / special check for Bug Contest/ music with FadeOut (old) and FadeIn
const map_fade ; 06 = Fade out music + screen
const map_bike_music ; 07 = If HIRO is on bike = bike music, else play map music
const map_music_force ; 08 = Play map music
const map_max_volume ; 09 = Turn music to highest volume
const map_load_blocks ; 0A = Write map data to MapRAM
const map_connection_blocks ; 0B = Compute maps connection pars and write into MapRAM
const map_save_screen ; 0C = Write current part of map into temporary memory
const map_buffer_screen ; 0D = Write current part of map into read-from memory
const map_load_graphics ; 0E = Write tileset header to ram/ load tileset/ load sprite tiles/ load special tiles
const map_load_tileset_header ; 0F = Write tileset header to ram
const map_time_of_day ; 10 = Compute time of day/ Update screen
const map_palettes ; 11 = Load map palettes
const map_wildmons ; 12 = Load probabilities for wild Pokémon battles
const map_sprites ; 13 = Delete sprite data and draw new sprites
const map_change_callback ; 14 = Check 2nd script header for 05 and 03 callbacks
const map_start_callback ; 15 = Check 2nd script header for 03 callbacks
const map_load_objects ; 16 = Analyze people data anew and check 2nd script header for 02 callbacks
const map_load_spawn ; 17 = Writes arrival data for arrival by flying/Blackout from table 05:5319 to ram
const map_load_connection ; 18 = Writes arrival data for entering a map by connection to ram
const map_load_warp ; 19 = Write warp data to ram when entering warp
const map_attributes ; 1A = Load complete map data (primary, secondary, event, script headers)
const map_attributes_2 ; 1B = Same as 1A, but some settings arent loaded new from the rom, such as hide function of the people events
const map_clear_bg_palettes ; 1C = Fill palette data with FFFF (=white)
const map_fade_out_palettes ; 1D = All BG pallet color are converted to 0|0 (Pal0, Col0), all sprite colors to x|0 (FadeOut)
const map_fade_in_palettes ; 1E = Palette FadeIn
const map_anchor_screen ; 1F = Compute position of upper left-most block visible on screen
const map_warp_face ; 20 = Position computation when HIRO leaves a warp
const map_face_down ; 21 = Set HIROs facing to “down”
const map_spawn_coord ; 22 = Prepare HIRO data for arrival by flight
const map_player_coord ; 23 = Compute HIRO x/y data anew
const map_prolong_sprites ; 24 = Prolong old sprites before removing them
const map_delay_sprites ; 25 = Delay rendering new sprites
const map_update_roam ; 26 = Compute chances to meet Raikou, Entei or Suicune
const map_keep_roam ; 27 = Recover chances to meet Raikou, Entei or Suicune
const map_fade_out_music ; 28 = Temporarily stop music playing
const map_animations_on ; 29 = Activate animations
const map_animations_off ; 2A = Deactivate animations
const map_keep_palettes ; 2B = Recover all palettes
const map_text_scroll_off ; 2C = Turn off text scroll (for town name overlays)
const map_stop_script ; 2D = Deactivate code prolonging
MapSetupScript4: ; 1538f MapSetupScript4: ; 1538f
db map_prolong_sprites map_prolong_sprites
MapSetupScript12: ; 15390 MapSetupScript12: ; 15390
db map_fade_out_palettes map_fade_out_palettes
db map_keep_roam map_keep_roam
MapSetupScript1: ; 15392 MapSetupScript1: ; 15392
db map_lcd_off map_lcd_off
db map_sound_off map_sound_off
db map_load_spawn map_load_spawn
db map_attributes map_attributes
db map_change_callback map_change_callback
db map_spawn_coord map_spawn_coord
db map_player_coord map_player_coord
db map_anchor_screen map_anchor_screen
db map_load_blocks map_load_blocks
db map_buffer_screen map_buffer_screen
db map_load_graphics map_load_graphics
db map_time_of_day map_time_of_day
db map_load_objects map_load_objects
db map_lcd_on map_lcd_on
db map_palettes map_palettes
db map_face_down map_face_down
db map_sprites map_sprites
db map_bike_music map_bike_music
db map_max_volume map_max_volume
db map_fade_in_palettes map_fade_in_palettes
db map_animations_on map_animations_on
db map_wildmons map_wildmons
db -1 map_end_setup_script
MapSetupScript11: ; 153a9 MapSetupScript11: ; 153a9
db map_load_spawn map_load_spawn
db map_attributes map_attributes
db map_change_callback map_change_callback
db map_spawn_coord map_spawn_coord
db map_player_coord map_player_coord
db map_anchor_screen map_anchor_screen
db map_load_blocks map_load_blocks
db map_buffer_screen map_buffer_screen
db map_lcd_off map_lcd_off
db map_load_graphics map_load_graphics
db map_time_of_day map_time_of_day
db map_fade_out_music map_fade_out_music
db map_lcd_on map_lcd_on
db map_load_objects map_load_objects
db map_palettes map_palettes
db map_face_down map_face_down
db map_sprites map_sprites
db map_fade_music map_fade_music
db map_fade_in_palettes map_fade_in_palettes
db map_animations_on map_animations_on
db map_wildmons map_wildmons
db -1 map_end_setup_script
MapSetupScript7: ; 153bf MapSetupScript7: ; 153bf
db map_animations_off map_animations_off
db map_load_connection map_load_connection
db map_attributes map_attributes
db map_change_callback map_change_callback
db map_player_coord map_player_coord
db map_load_blocks map_load_blocks
db map_load_tileset_header map_load_tileset_header
db map_save_screen map_save_screen
db map_load_objects map_load_objects
db map_fade_music map_fade_music
db map_palettes map_palettes
db map_stop_script map_stop_script
db map_keep_palettes map_keep_palettes
db map_wildmons map_wildmons
db map_update_roam map_update_roam
db map_animations_on map_animations_on
db -1 map_end_setup_script
MapSetupScript6: ; 153d0 MapSetupScript6: ; 153d0
db map_prolong_sprites map_prolong_sprites
MapSetupScript5: ; 153d1 MapSetupScript5: ; 153d1
db map_fade_out_palettes map_fade_out_palettes
MapSetupScript9: ; 153d2 MapSetupScript9: ; 153d2
db map_load_warp map_load_warp
db map_attributes map_attributes
db map_warp_face map_warp_face
db map_change_callback map_change_callback
db map_player_coord map_player_coord
db map_load_blocks map_load_blocks
db map_buffer_screen map_buffer_screen
db map_lcd_off map_lcd_off
db map_load_graphics map_load_graphics
db map_time_of_day map_time_of_day
db map_fade_out_music map_fade_out_music
db map_lcd_on map_lcd_on
db map_load_objects map_load_objects
db map_palettes map_palettes
db map_sprites map_sprites
db map_fade_music map_fade_music
db map_fade_in_palettes map_fade_in_palettes
db map_animations_on map_animations_on
db map_wildmons map_wildmons
db map_update_roam map_update_roam
db -1 map_end_setup_script
MapSetupScript3: ; 153e7 MapSetupScript3: ; 153e7
db map_fade map_fade
db map_clear_bg_palettes map_clear_bg_palettes
db map_lcd_off map_lcd_off
db map_sound_off map_sound_off
db map_load_blocks map_load_blocks
db map_connection_blocks map_connection_blocks
db map_load_graphics map_load_graphics
db map_time_of_day map_time_of_day
db map_lcd_on map_lcd_on
db map_palettes map_palettes
db map_sprites map_sprites
db map_music_force map_music_force
db map_fade_in_palettes map_fade_in_palettes
db map_animations_on map_animations_on
db map_wildmons map_wildmons
db -1 map_end_setup_script
MapSetupScript8: ; 153f7 MapSetupScript8: ; 153f7
db map_fade map_fade
db map_lcd_off map_lcd_off
db map_sound_off map_sound_off
db map_change_callback map_change_callback
db map_load_blocks map_load_blocks
db map_buffer_screen map_buffer_screen
db map_load_graphics map_load_graphics
db map_time_of_day map_time_of_day
db map_lcd_on map_lcd_on
db map_palettes map_palettes
db map_sprites map_sprites
db map_bike_music map_bike_music
db map_fade_in_palettes map_fade_in_palettes
db map_animations_on map_animations_on
db map_wildmons map_wildmons
db map_text_scroll_off map_text_scroll_off
db -1 map_end_setup_script
MapSetupScript2: ; 15408 MapSetupScript2: ; 15408
db map_lcd_off map_lcd_off
db map_sound_off map_sound_off
db map_attributes_2 map_attributes_2
db map_anchor_screen map_anchor_screen
db map_start_callback map_start_callback
db map_load_blocks map_load_blocks
db map_connection_blocks map_connection_blocks
db map_buffer_screen map_buffer_screen
db map_load_graphics map_load_graphics
db map_time_of_day map_time_of_day
db map_lcd_on map_lcd_on
db map_palettes map_palettes
db map_sprites map_sprites
db map_bike_music map_bike_music
db map_fade_in_palettes map_fade_in_palettes
db map_animations_on map_animations_on
db map_wildmons map_wildmons
db -1 map_end_setup_script
MapSetupScript10: ; 1541a MapSetupScript10: ; 1541a
db map_load_blocks map_load_blocks
db map_connection_blocks map_connection_blocks
db -1 map_end_setup_script
ReadMapSetupScript: ; 1541d ReadMapSetupScript: ; 1541d
@@ -374,13 +323,13 @@ Function154ea: ; 154ea
; 154eb ; 154eb
DelayClearingOldSprites: ; 154eb DelayClearingOldSprites: ; 154eb
ld hl, wd45b ld hl, wPlayerSpriteSetupFlags
set 7, [hl] set 7, [hl]
ret ret
; 154f1 ; 154f1
DelayLoadingNewSprites: ; 154f1 DelayLoadingNewSprites: ; 154f1
ld hl, wd45b ld hl, wPlayerSpriteSetupFlags
set 6, [hl] set 6, [hl]
ret ret

View File

@@ -1656,5 +1656,5 @@ UnknownScript_0xa0b04:
BikeShopPhoneScript: BikeShopPhoneScript:
farwritetext UnknownText_0x174000 farwritetext UnknownText_0x174000
clearflag ENGINE_BIKE_SHOP_CALL_ENABLED clearflag ENGINE_BIKE_SHOP_CALL_ENABLED
specialphonecall ELMCALL_NONE specialphonecall SPECIALCALL_NONE
end end

File diff suppressed because it is too large Load Diff

884
engine/phone.asm Normal file

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More