mirror of https://github.com/pret/pokecrystal.git
Merge branch 'master' of https://github.com/pret/pokecrystal
This commit is contained in:
commit
9aa6b55d7b
|
@ -63,7 +63,7 @@ MOVE_LENGTH EQU const_value
|
|||
const STAT_SATK
|
||||
NUM_EXP_STATS EQU const_value + -1
|
||||
const STAT_SDEF
|
||||
NUM_STATS EQU const_value
|
||||
NUM_STATS EQU const_value +- 1
|
||||
STAT_SPC EQU STAT_SATK
|
||||
|
||||
; stat formula constants
|
||||
|
|
|
@ -49,6 +49,6 @@ NUM_SPRITE_OAM_STRUCTS EQU 40 ; see wVirtualOAM
|
|||
const ANIM_MON_TRADE
|
||||
const ANIM_MON_EVOLVE
|
||||
const ANIM_MON_HATCH
|
||||
const ANIM_MON_UNUSED
|
||||
const ANIM_MON_HOF
|
||||
const ANIM_MON_EGG1
|
||||
const ANIM_MON_EGG2
|
||||
|
|
|
@ -94,7 +94,7 @@ OddEgg1End:
|
|||
bigdw 0
|
||||
bigdw 0
|
||||
bigdw 0
|
||||
db $0, $0 ; DVs
|
||||
dn 0, 0, 0, 0 ; DVs
|
||||
db 35, 20, 10, 0 ; PP
|
||||
db 20 ; Happiness
|
||||
db 0, 0, 0 ; Pokerus, Caught data
|
||||
|
@ -146,7 +146,7 @@ OddEgg1End:
|
|||
bigdw 0
|
||||
bigdw 0
|
||||
bigdw 0
|
||||
db $0, $0 ; DVs
|
||||
dn 0, 0, 0, 0 ; DVs
|
||||
db 15, 20, 10, 0 ; PP
|
||||
db 20 ; Happiness
|
||||
db 0, 0, 0 ; Pokerus, Caught data
|
||||
|
@ -198,7 +198,7 @@ OddEgg1End:
|
|||
bigdw 0
|
||||
bigdw 0
|
||||
bigdw 0
|
||||
db $0, $0 ; DVs
|
||||
dn 0, 0, 0, 0 ; DVs
|
||||
db 35, 30, 10, 0 ; PP
|
||||
db 20 ; Happiness
|
||||
db 0, 0, 0 ; Pokerus, Caught data
|
||||
|
@ -250,7 +250,7 @@ OddEgg1End:
|
|||
bigdw 0
|
||||
bigdw 0
|
||||
bigdw 0
|
||||
db $0, $0 ; DVs
|
||||
dn 0, 0, 0, 0 ; DVs
|
||||
db 25, 10, 0, 0 ; PP
|
||||
db 20 ; Happiness
|
||||
db 0, 0, 0 ; Pokerus, Caught data
|
||||
|
@ -302,7 +302,7 @@ OddEgg1End:
|
|||
bigdw 0
|
||||
bigdw 0
|
||||
bigdw 0
|
||||
db $0, $0 ; DVs
|
||||
dn 0, 0, 0, 0 ; DVs
|
||||
db 30, 30, 10, 0 ; PP
|
||||
db 20 ; Happiness
|
||||
db 0, 0, 0 ; Pokerus, Caught data
|
||||
|
@ -354,7 +354,7 @@ OddEgg1End:
|
|||
bigdw 0
|
||||
bigdw 0
|
||||
bigdw 0
|
||||
db $0, $0 ; DVs
|
||||
dn 0, 0, 0, 0 ; DVs
|
||||
db 35, 10, 0, 0 ; PP
|
||||
db 20 ; Happiness
|
||||
db 0, 0, 0 ; Pokerus, Caught data
|
||||
|
|
|
@ -530,7 +530,7 @@ DetermineMoveOrder:
|
|||
ld de, wBattleMonSpeed
|
||||
ld hl, wEnemyMonSpeed
|
||||
ld c, 2
|
||||
call StringCmp
|
||||
call CompareBytes
|
||||
jr z, .speed_tie
|
||||
jp nc, .player_first
|
||||
jp .enemy_first
|
||||
|
@ -3715,19 +3715,19 @@ TryToRunAwayFromBattle:
|
|||
inc a
|
||||
ld [wNumFleeAttempts], a
|
||||
ld a, [hli]
|
||||
ld [hStringCmpString2 + 0], a
|
||||
ld [hPartyMon1Speed + 0], a
|
||||
ld a, [hl]
|
||||
ld [hStringCmpString2 + 1], a
|
||||
ld [hPartyMon1Speed + 1], a
|
||||
ld a, [de]
|
||||
inc de
|
||||
ld [hStringCmpString1 + 0], a
|
||||
ld [hEnemyMonSpeed + 0], a
|
||||
ld a, [de]
|
||||
ld [hStringCmpString1 + 1], a
|
||||
ld [hEnemyMonSpeed + 1], a
|
||||
call Call_LoadTempTileMapToTileMap
|
||||
ld de, hStringCmpString2
|
||||
ld hl, hStringCmpString1
|
||||
ld c, $2
|
||||
call StringCmp
|
||||
ld de, hPartyMon1Speed
|
||||
ld hl, hEnemyMonSpeed
|
||||
ld c, 2
|
||||
call CompareBytes
|
||||
jr nc, .can_escape
|
||||
|
||||
xor a
|
||||
|
@ -3739,9 +3739,9 @@ TryToRunAwayFromBattle:
|
|||
ld [hDividend + 0], a
|
||||
ld a, [hProduct + 3]
|
||||
ld [hDividend + 1], a
|
||||
ld a, [hStringCmpString1 + 0]
|
||||
ld a, [hEnemyMonSpeed + 0]
|
||||
ld b, a
|
||||
ld a, [hStringCmpString1 + 1]
|
||||
ld a, [hEnemyMonSpeed + 1]
|
||||
srl b
|
||||
rr a
|
||||
srl b
|
||||
|
@ -7113,7 +7113,7 @@ GiveExperiencePoints:
|
|||
push bc
|
||||
call LoadTileMapToTempTileMap
|
||||
pop bc
|
||||
ld hl, MON_STAT_EXP - 1
|
||||
ld hl, MON_EXP + 2
|
||||
add hl, bc
|
||||
ld d, [hl]
|
||||
ld a, [hQuotient + 2]
|
||||
|
@ -7145,7 +7145,7 @@ GiveExperiencePoints:
|
|||
ld d, MAX_LEVEL
|
||||
callfar CalcExpAtLevel
|
||||
pop bc
|
||||
ld hl, MON_STAT_EXP - 1
|
||||
ld hl, MON_EXP + 2
|
||||
add hl, bc
|
||||
push bc
|
||||
ld a, [hQuotient]
|
||||
|
@ -8712,7 +8712,7 @@ AddLastMobileBattleToLinkRecord:
|
|||
push de
|
||||
ld bc, 12
|
||||
ld de, wStringBuffer1
|
||||
call CompareLong
|
||||
call CompareBytesLong
|
||||
pop de
|
||||
pop hl
|
||||
jr c, .done
|
||||
|
@ -8821,7 +8821,7 @@ AddLastMobileBattleToLinkRecord:
|
|||
pop hl
|
||||
push bc
|
||||
ld c, 3
|
||||
call StringCmp
|
||||
call CompareBytes
|
||||
pop bc
|
||||
jr z, .equal
|
||||
jr nc, .done2
|
||||
|
@ -9094,7 +9094,7 @@ BattleStartMessage:
|
|||
jr .skip_cry ; cry is played during the animation
|
||||
|
||||
.cry_no_anim
|
||||
ld a, $0f
|
||||
ld a, $f
|
||||
ld [wCryTracks], a
|
||||
ld a, [wTempEnemyMonSpecies]
|
||||
call PlayStereoCry
|
||||
|
|
|
@ -6154,7 +6154,7 @@ BattleCommand_Heal:
|
|||
push de
|
||||
push bc
|
||||
ld c, 2
|
||||
call StringCmp
|
||||
call CompareBytes
|
||||
pop bc
|
||||
pop de
|
||||
pop hl
|
||||
|
@ -6573,7 +6573,7 @@ BattleCommand_TimeBasedHealContinue:
|
|||
|
||||
; Don't bother healing if HP is already full.
|
||||
push bc
|
||||
call StringCmp
|
||||
call CompareBytes
|
||||
pop bc
|
||||
jr z, .Full
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ BattleCommand_FalseSwipe:
|
|||
ld c, 2
|
||||
push hl
|
||||
push de
|
||||
call StringCmp
|
||||
call CompareBytes
|
||||
pop de
|
||||
pop hl
|
||||
jr c, .done
|
||||
|
|
|
@ -171,7 +171,7 @@ DetermineContestWinners:
|
|||
ld de, wBugContestTempScore
|
||||
ld hl, wBugContestFirstPlaceScore
|
||||
ld c, 2
|
||||
call StringCmp
|
||||
call CompareBytes
|
||||
jr c, .not_first_place
|
||||
ld hl, wBugContestSecondPlaceWinnerID
|
||||
ld de, wBugContestThirdPlaceWinnerID
|
||||
|
@ -189,7 +189,7 @@ DetermineContestWinners:
|
|||
ld de, wBugContestTempScore
|
||||
ld hl, wBugContestSecondPlaceScore
|
||||
ld c, 2
|
||||
call StringCmp
|
||||
call CompareBytes
|
||||
jr c, .not_second_place
|
||||
ld hl, wBugContestSecondPlaceWinnerID
|
||||
ld de, wBugContestThirdPlaceWinnerID
|
||||
|
@ -203,7 +203,7 @@ DetermineContestWinners:
|
|||
ld de, wBugContestTempScore
|
||||
ld hl, wBugContestThirdPlaceScore
|
||||
ld c, 2
|
||||
call StringCmp
|
||||
call CompareBytes
|
||||
jr c, .done
|
||||
ld hl, wBugContestThirdPlaceWinnerID
|
||||
call CopyTempContestant
|
||||
|
|
|
@ -124,7 +124,7 @@ AnimateHallOfFame:
|
|||
call PlaceString
|
||||
call WaitBGMap
|
||||
decoord 6, 5
|
||||
ld c, $6
|
||||
ld c, ANIM_MON_HOF
|
||||
predef HOF_AnimateFrontpic
|
||||
ld c, 60
|
||||
call DelayFrames
|
||||
|
@ -390,7 +390,7 @@ _HallOfFamePC:
|
|||
call GetSGBLayout
|
||||
call SetPalettes
|
||||
decoord 6, 5
|
||||
ld c, $6
|
||||
ld c, ANIM_MON_HOF
|
||||
predef HOF_AnimateFrontpic
|
||||
and a
|
||||
ret
|
||||
|
|
|
@ -36,7 +36,7 @@ CheckMagikarpLength:
|
|||
ld hl, wMagikarpLength
|
||||
ld de, wBestMagikarpLengthFeet
|
||||
ld c, 2
|
||||
call StringCmp
|
||||
call CompareBytes
|
||||
jr nc, .not_long_enough
|
||||
|
||||
; NEW RECORD!!! Let's save that.
|
||||
|
|
|
@ -478,21 +478,21 @@ PlayerDepositItemMenu:
|
|||
push af
|
||||
ld a, [wBuffer2]
|
||||
push af
|
||||
call .DepositItem_
|
||||
call .DepositItem
|
||||
pop af
|
||||
ld [wBuffer2], a
|
||||
pop af
|
||||
ld [wBuffer1], a
|
||||
ret
|
||||
|
||||
.DepositItem_:
|
||||
.DepositItem:
|
||||
farcall _CheckTossableItem
|
||||
ld a, [wItemAttributeParamBuffer]
|
||||
and a
|
||||
jr z, .AskQuantity
|
||||
ld a, $1
|
||||
ld [wItemQuantityChangeBuffer], a
|
||||
jr .DepositItem
|
||||
jr .ContinueDeposit
|
||||
|
||||
.AskQuantity:
|
||||
ld hl, .HowManyText
|
||||
|
@ -504,7 +504,7 @@ PlayerDepositItemMenu:
|
|||
pop af
|
||||
jr c, .DeclinedToDeposit
|
||||
|
||||
.DepositItem:
|
||||
.ContinueDeposit:
|
||||
ld a, [wItemQuantityChangeBuffer]
|
||||
ld [wBuffer1], a
|
||||
ld a, [wCurItemQuantity]
|
||||
|
|
|
@ -266,7 +266,7 @@ _CGB_Pokedex:
|
|||
jr .got_palette
|
||||
|
||||
.is_pokemon
|
||||
call GetMonPalettePointer_
|
||||
call GetMonPalettePointer
|
||||
call LoadPalette_White_Col1_Col2_Black ; mon palette
|
||||
.got_palette
|
||||
call WipeAttrMap
|
||||
|
@ -352,7 +352,7 @@ _CGB_PokedexUnownMode:
|
|||
call GetPredefPal
|
||||
call LoadHLPaletteIntoDE
|
||||
ld a, [wCurPartySpecies]
|
||||
call GetMonPalettePointer_
|
||||
call GetMonPalettePointer
|
||||
call LoadPalette_White_Col1_Col2_Black
|
||||
call WipeAttrMap
|
||||
hlcoord 7, 5, wAttrMap
|
||||
|
@ -914,7 +914,7 @@ _CGB_PlayerOrMonFrontpicPals:
|
|||
_CGB1e:
|
||||
ld de, wBGPals1
|
||||
ld a, [wCurPartySpecies]
|
||||
call GetMonPalettePointer_
|
||||
call GetMonPalettePointer
|
||||
call LoadPalette_White_Col1_Col2_Black
|
||||
call WipeAttrMap
|
||||
call ApplyAttrMap
|
||||
|
|
|
@ -94,9 +94,9 @@ Unreferenced_Function8aa4:
|
|||
ld a, d
|
||||
ld [wSGBPals + 6], a
|
||||
ld hl, wSGBPals
|
||||
call PushSGBPals_
|
||||
call PushSGBPals
|
||||
ld hl, BlkPacket_9a86
|
||||
call PushSGBPals_
|
||||
call PushSGBPals
|
||||
ret
|
||||
|
||||
InitPartyMenuPalettes:
|
||||
|
@ -173,7 +173,7 @@ Unreferenced_Function8b3f:
|
|||
and a
|
||||
ret z
|
||||
ld hl, BlkPacket_9a86
|
||||
jp PushSGBPals_
|
||||
jp PushSGBPals
|
||||
|
||||
Unreferenced_Function8b4d:
|
||||
call CheckCGB
|
||||
|
@ -182,7 +182,7 @@ Unreferenced_Function8b4d:
|
|||
and a
|
||||
ret z
|
||||
ld hl, PalPacket_BetaIntroVenusaur
|
||||
jp PushSGBPals_
|
||||
jp PushSGBPals
|
||||
|
||||
.cgb
|
||||
ld de, wOBPals1
|
||||
|
@ -197,7 +197,7 @@ Unreferenced_Function8b67:
|
|||
and a
|
||||
ret z
|
||||
ld hl, PalPacket_Pack
|
||||
jp PushSGBPals_
|
||||
jp PushSGBPals
|
||||
|
||||
.cgb
|
||||
ld de, wOBPals1
|
||||
|
@ -218,7 +218,7 @@ Unreferenced_Function8b81:
|
|||
ld bc, PALPACKET_LENGTH
|
||||
call CopyBytes
|
||||
pop af
|
||||
call GetMonPalettePointer_
|
||||
call GetMonPalettePointer
|
||||
ld a, [hli]
|
||||
ld [wSGBPals + 3], a
|
||||
ld a, [hli]
|
||||
|
@ -228,12 +228,12 @@ Unreferenced_Function8b81:
|
|||
ld a, [hl]
|
||||
ld [wSGBPals + 6], a
|
||||
ld hl, wSGBPals
|
||||
jp PushSGBPals_
|
||||
jp PushSGBPals
|
||||
|
||||
.cgb
|
||||
ld de, wOBPals1
|
||||
ld a, c
|
||||
call GetMonPalettePointer_
|
||||
call GetMonPalettePointer
|
||||
call LoadPalette_White_Col1_Col2_Black
|
||||
ret
|
||||
|
||||
|
@ -245,7 +245,7 @@ LoadTrainerClassPaletteAsNthBGPal:
|
|||
|
||||
LoadMonPaletteAsNthBGPal:
|
||||
ld a, [wCurPartySpecies]
|
||||
call GetMonPalettePointer
|
||||
call _GetMonPalettePointer
|
||||
ld a, e
|
||||
bit 7, a
|
||||
jr z, got_palette_pointer_8bd7
|
||||
|
@ -278,7 +278,7 @@ Unreferenced_Function8bec:
|
|||
and a
|
||||
jr nz, .cgb
|
||||
ld hl, wPlayerLightScreenCount
|
||||
jp PushSGBPals_
|
||||
jp PushSGBPals
|
||||
|
||||
.cgb
|
||||
ld a, [wEnemyLightScreenCount] ; col
|
||||
|
@ -310,7 +310,7 @@ ApplyMonOrTrainerPals:
|
|||
and a
|
||||
jr z, .get_trainer
|
||||
ld a, [wCurPartySpecies]
|
||||
call GetMonPalettePointer_
|
||||
call GetMonPalettePointer
|
||||
jr .load_palettes
|
||||
|
||||
.get_trainer
|
||||
|
@ -426,9 +426,9 @@ LoadMailPalettes:
|
|||
ld a, [hli]
|
||||
ld [wSGBPals + 6], a
|
||||
ld hl, wSGBPals
|
||||
call PushSGBPals_
|
||||
call PushSGBPals
|
||||
ld hl, BlkPacket_9a86
|
||||
call PushSGBPals_
|
||||
call PushSGBPals
|
||||
ret
|
||||
|
||||
.cgb
|
||||
|
@ -732,8 +732,8 @@ GetTrainerPalettePointer:
|
|||
add hl, bc
|
||||
ret
|
||||
|
||||
GetMonPalettePointer_:
|
||||
call GetMonPalettePointer
|
||||
GetMonPalettePointer:
|
||||
call _GetMonPalettePointer
|
||||
ret
|
||||
|
||||
Unreferenced_Function9779:
|
||||
|
@ -781,7 +781,7 @@ Unreferenced_Function97cc:
|
|||
jr nz, .loop
|
||||
ret
|
||||
|
||||
GetMonPalettePointer:
|
||||
_GetMonPalettePointer:
|
||||
ld l, a
|
||||
ld h, $0
|
||||
add hl, hl
|
||||
|
@ -793,7 +793,7 @@ GetMonPalettePointer:
|
|||
|
||||
GetMonNormalOrShinyPalettePointer:
|
||||
push bc
|
||||
call GetMonPalettePointer
|
||||
call _GetMonPalettePointer
|
||||
pop bc
|
||||
push hl
|
||||
call CheckShininess
|
||||
|
@ -804,17 +804,17 @@ rept 4
|
|||
endr
|
||||
ret
|
||||
|
||||
PushSGBPals_:
|
||||
PushSGBPals:
|
||||
ld a, [wcfbe]
|
||||
push af
|
||||
set 7, a
|
||||
ld [wcfbe], a
|
||||
call PushSGBPals
|
||||
call _PushSGBPals
|
||||
pop af
|
||||
ld [wcfbe], a
|
||||
ret
|
||||
|
||||
PushSGBPals:
|
||||
_PushSGBPals:
|
||||
ld a, [hl]
|
||||
and $7
|
||||
ret z
|
||||
|
@ -878,7 +878,7 @@ InitSGBBorder:
|
|||
call SGBDelayCycles
|
||||
call SGB_ClearVRAM
|
||||
ld hl, MaskEnCancelPacket
|
||||
call PushSGBPals
|
||||
call _PushSGBPals
|
||||
|
||||
.skip
|
||||
pop af
|
||||
|
@ -950,7 +950,7 @@ _InitSGBBorderPals:
|
|||
push hl
|
||||
ld h, [hl]
|
||||
ld l, a
|
||||
call PushSGBPals
|
||||
call _PushSGBPals
|
||||
pop hl
|
||||
inc hl
|
||||
pop bc
|
||||
|
@ -974,12 +974,12 @@ Unreferenced_Function9911:
|
|||
xor a
|
||||
ld [rJOYP], a
|
||||
ld hl, MaskEnFreezePacket
|
||||
call PushSGBPals
|
||||
call _PushSGBPals
|
||||
call PushSGBBorder
|
||||
call SGBDelayCycles
|
||||
call SGB_ClearVRAM
|
||||
ld hl, MaskEnCancelPacket
|
||||
call PushSGBPals
|
||||
call _PushSGBPals
|
||||
ei
|
||||
ret
|
||||
|
||||
|
@ -1005,7 +1005,7 @@ SGB_ClearVRAM:
|
|||
|
||||
PushSGBBorderPalsAndWait:
|
||||
ld hl, MltReq2Packet
|
||||
call PushSGBPals
|
||||
call _PushSGBPals
|
||||
call SGBDelayCycles
|
||||
ld a, [rJOYP]
|
||||
and $3
|
||||
|
@ -1050,7 +1050,7 @@ endr
|
|||
|
||||
.FinalPush:
|
||||
ld hl, MltReq1Packet
|
||||
call PushSGBPals
|
||||
call _PushSGBPals
|
||||
jp SGBDelayCycles
|
||||
|
||||
SGBBorder_PushBGPals:
|
||||
|
@ -1065,7 +1065,7 @@ SGBBorder_PushBGPals:
|
|||
ld a, LCDC_DEFAULT
|
||||
ld [rLCDC], a
|
||||
ld hl, PalTrnPacket
|
||||
call PushSGBPals
|
||||
call _PushSGBPals
|
||||
xor a
|
||||
ld [rBGP], a
|
||||
ret
|
||||
|
@ -1099,7 +1099,7 @@ SGBBorder_MorePalPushing:
|
|||
ld a, LCDC_DEFAULT
|
||||
ld [rLCDC], a
|
||||
ld hl, PctTrnPacket
|
||||
call PushSGBPals
|
||||
call _PushSGBPals
|
||||
xor a
|
||||
ld [rBGP], a
|
||||
ret
|
||||
|
@ -1123,7 +1123,7 @@ SGBBorder_YetMorePalPushing:
|
|||
ld a, LCDC_DEFAULT
|
||||
ld [rLCDC], a
|
||||
ld hl, ChrTrnPacket
|
||||
call PushSGBPals
|
||||
call _PushSGBPals
|
||||
xor a
|
||||
ld [rBGP], a
|
||||
ret
|
||||
|
|
|
@ -284,7 +284,7 @@ _InitMG_Mobile_LinkTradePalMap:
|
|||
call ByteFill
|
||||
ret
|
||||
|
||||
LoadTradeRoomBGPals:
|
||||
_LoadTradeRoomBGPals:
|
||||
ld hl, TradeRoomPalette
|
||||
ld de, wBGPals1 palette PAL_BG_GREEN
|
||||
ld bc, 6 palettes
|
||||
|
|
|
@ -40,8 +40,8 @@ AnimateMon_Hatch:
|
|||
call AnimateFrontpic
|
||||
ret
|
||||
|
||||
AnimateMon_Unused:
|
||||
ld e, ANIM_MON_UNUSED
|
||||
AnimateMon_HOF:
|
||||
ld e, ANIM_MON_HOF
|
||||
ld d, $0
|
||||
call AnimateFrontpic
|
||||
ret
|
||||
|
@ -59,13 +59,14 @@ endr
|
|||
ENDM
|
||||
|
||||
PokeAnims:
|
||||
; entries correspond to ANIM_MON_* constants
|
||||
dw .Slow
|
||||
dw .Normal
|
||||
dw .Menu
|
||||
dw .Trade
|
||||
dw .Evolve
|
||||
dw .Hatch
|
||||
dw .Unused ; same as .Menu
|
||||
dw .HOF
|
||||
dw .Egg1
|
||||
dw .Egg2
|
||||
|
||||
|
@ -75,7 +76,7 @@ PokeAnims:
|
|||
.Trade: pokeanim Idle, Play2, Idle, Play, SetWait, Wait, Cry, Setup, Play
|
||||
.Evolve: pokeanim Idle, Play, SetWait, Wait, CryNoWait, Setup, Play
|
||||
.Hatch: pokeanim Idle, Play, CryNoWait, Setup, Play, SetWait, Wait, Idle, Play
|
||||
.Unused: pokeanim CryNoWait, Setup, Play, SetWait, Wait, Idle, Play
|
||||
.HOF: pokeanim CryNoWait, Setup, Play, SetWait, Wait, Idle, Play
|
||||
.Egg1: pokeanim Setup, Play
|
||||
.Egg2: pokeanim Idle, Play
|
||||
|
||||
|
@ -108,7 +109,7 @@ LoadMonAnimation:
|
|||
SetUpPokeAnim:
|
||||
ld a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wPokeAnimSceneIndex)
|
||||
ld a, BANK(wPokeAnimStruct)
|
||||
ld [rSVBK], a
|
||||
ld a, [wPokeAnimSceneIndex]
|
||||
ld c, a
|
||||
|
@ -283,14 +284,14 @@ AnimateMon_CheckIfPokemon:
|
|||
PokeAnim_InitPicAttributes:
|
||||
ld a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wPokeAnimSceneIndex)
|
||||
ld a, BANK(wPokeAnimStruct)
|
||||
ld [rSVBK], a
|
||||
|
||||
push bc
|
||||
push de
|
||||
push hl
|
||||
ld hl, wPokeAnimSceneIndex
|
||||
ld bc, wPokeAnimStructEnd - wPokeAnimSceneIndex
|
||||
ld hl, wPokeAnimStruct
|
||||
ld bc, wPokeAnimStructEnd - wPokeAnimStruct
|
||||
xor a
|
||||
call ByteFill
|
||||
pop hl
|
||||
|
|
|
@ -61,7 +61,7 @@ LoadSGBLayout:
|
|||
|
||||
.SGB_BattleColors:
|
||||
ld hl, BlkPacket_Battle
|
||||
call PushSGBPals_
|
||||
call PushSGBPals
|
||||
|
||||
ld hl, PalPacket_9ce6
|
||||
ld de, wSGBPals
|
||||
|
@ -210,7 +210,7 @@ LoadSGBLayout:
|
|||
inc hl
|
||||
ld [hl], HIGH(palred 26 + palgreen 10 + palblue 6)
|
||||
ld a, [wCurPartySpecies]
|
||||
call GetMonPalettePointer_
|
||||
call GetMonPalettePointer
|
||||
ld a, [hli]
|
||||
ld [wSGBPals + 9], a
|
||||
ld a, [hli]
|
||||
|
@ -566,6 +566,6 @@ INCLUDE "data/maps/sgb_roof_pal_inds.asm"
|
|||
|
||||
_LoadSGBLayout_ReturnFromJumpTable:
|
||||
push de
|
||||
call PushSGBPals_
|
||||
call PushSGBPals
|
||||
pop hl
|
||||
jp PushSGBPals_
|
||||
jp PushSGBPals
|
||||
|
|
|
@ -1971,7 +1971,7 @@ LoadTradeScreenBorder:
|
|||
ret
|
||||
|
||||
SetTradeRoomBGPals:
|
||||
farcall LoadTradeRoomBGPals_ ; just a nested farcall; so wasteful
|
||||
farcall LoadTradeRoomBGPals ; just a nested farcall; so wasteful
|
||||
call SetPalettes
|
||||
ret
|
||||
|
||||
|
|
|
@ -133,8 +133,8 @@ LinkComms_LoadPleaseWaitTextboxBorderGFX:
|
|||
call Get2bpp
|
||||
ret
|
||||
|
||||
LoadTradeRoomBGPals_:
|
||||
farcall LoadTradeRoomBGPals
|
||||
LoadTradeRoomBGPals:
|
||||
farcall _LoadTradeRoomBGPals
|
||||
ret
|
||||
|
||||
Function16d6ae:
|
||||
|
|
|
@ -164,7 +164,7 @@ AddHallOfFameEntry:
|
|||
ret
|
||||
|
||||
SaveGameData:
|
||||
call SaveGameData_
|
||||
call _SaveGameData
|
||||
ret
|
||||
|
||||
AskOverwriteSaveFile:
|
||||
|
@ -228,7 +228,7 @@ CompareLoadedAndSavedPlayerID:
|
|||
_SavingDontTurnOffThePower:
|
||||
call SavingDontTurnOffThePower
|
||||
SavedTheGame:
|
||||
call SaveGameData_
|
||||
call _SaveGameData
|
||||
; wait 32 frames
|
||||
ld c, $20
|
||||
call DelayFrames
|
||||
|
@ -252,7 +252,7 @@ SavedTheGame:
|
|||
call DelayFrames
|
||||
ret
|
||||
|
||||
SaveGameData_:
|
||||
_SaveGameData:
|
||||
ld a, TRUE
|
||||
ld [wSaveFileExists], a
|
||||
farcall StageRTCTimeForSave
|
||||
|
|
|
@ -29,7 +29,7 @@ StartMenu::
|
|||
call .SetUpMenuItems
|
||||
ld a, [wBattleMenuCursorBuffer]
|
||||
ld [wMenuCursorBuffer], a
|
||||
call .DrawMenuAccount_
|
||||
call .DrawMenuAccount
|
||||
call DrawVariableLengthMenuBox
|
||||
call .DrawBugContestStatusBox
|
||||
call SafeUpdateSprites
|
||||
|
@ -49,7 +49,7 @@ StartMenu::
|
|||
.Select:
|
||||
call .GetInput
|
||||
jr c, .Exit
|
||||
call .DrawMenuAccount
|
||||
call ._DrawMenuAccount
|
||||
ld a, [wMenuCursorBuffer]
|
||||
ld [wBattleMenuCursorBuffer], a
|
||||
call PlayClickSFX
|
||||
|
@ -96,7 +96,7 @@ StartMenu::
|
|||
; Return carry on exit, and no-carry on selection.
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
call .DrawMenuAccount
|
||||
call ._DrawMenuAccount
|
||||
call SetUpMenu
|
||||
ld a, $ff
|
||||
ld [wMenuSelection], a
|
||||
|
@ -147,7 +147,7 @@ StartMenu::
|
|||
call ClearBGPalettes
|
||||
call Call_ExitMenu
|
||||
call ReloadTilesetAndPalettes
|
||||
call .DrawMenuAccount_
|
||||
call .DrawMenuAccount
|
||||
call DrawVariableLengthMenuBox
|
||||
call .DrawBugContestStatus
|
||||
call UpdateSprites
|
||||
|
@ -360,17 +360,17 @@ endr
|
|||
inc c
|
||||
ret
|
||||
|
||||
.DrawMenuAccount_:
|
||||
jp .DrawMenuAccount
|
||||
.DrawMenuAccount:
|
||||
jp ._DrawMenuAccount
|
||||
|
||||
.PrintMenuAccount:
|
||||
call .IsMenuAccountOn
|
||||
ret z
|
||||
call .DrawMenuAccount
|
||||
call ._DrawMenuAccount
|
||||
decoord 0, 14
|
||||
jp .MenuDesc
|
||||
|
||||
.DrawMenuAccount:
|
||||
._DrawMenuAccount:
|
||||
call .IsMenuAccountOn
|
||||
ret z
|
||||
hlcoord 0, 13
|
||||
|
|
|
@ -99,7 +99,7 @@ EvolveAfterBattle_MasterLoop:
|
|||
ld de, wTempMonAttack
|
||||
ld hl, wTempMonDefense
|
||||
ld c, 2
|
||||
call StringCmp
|
||||
call CompareBytes
|
||||
ld a, ATK_EQ_DEF
|
||||
jr z, .got_tyrogue_evo
|
||||
ld a, ATK_LT_DEF
|
||||
|
|
|
@ -59,7 +59,7 @@ ReadAnyMail:
|
|||
.pressed_start
|
||||
ld a, [wJumptableIndex]
|
||||
push af
|
||||
callfar PrintMail ; printer
|
||||
callfar PrintMailAndExit ; printer
|
||||
pop af
|
||||
ld [wJumptableIndex], a
|
||||
jr .loop
|
||||
|
|
|
@ -268,12 +268,12 @@ PrintUnownStamp:
|
|||
ld [wPrinterQueueLength], a
|
||||
ret
|
||||
|
||||
PrintMail:
|
||||
call PrintMail_
|
||||
PrintMailAndExit:
|
||||
call PrintMail
|
||||
call Printer_ExitPrinter
|
||||
ret
|
||||
|
||||
PrintMail_:
|
||||
PrintMail:
|
||||
ld a, [wPrinterQueueLength]
|
||||
push af
|
||||
xor a
|
||||
|
|
|
@ -44,14 +44,14 @@ PrinterJumptableIteration:
|
|||
dw Printer_WaitUntilFinished ; 0c
|
||||
dw Printer_Quit ; 0d
|
||||
|
||||
dw Printer_NextSection_ ; 0e
|
||||
dw Printer_NextSection ; 0e
|
||||
dw Printer_WaitSerial ; 0f
|
||||
dw Printer_SignalLoopBack ; 10
|
||||
dw Printer_SectionOne ; 11
|
||||
dw Printer_WaitLoopBack ; 12
|
||||
dw Printer_WaitLoopBack_ ; 13
|
||||
dw Printer_NextSectionWaitLoopBack ; 12
|
||||
dw Printer_WaitLoopBack ; 13
|
||||
|
||||
Printer_NextSection:
|
||||
_Printer_NextSection:
|
||||
ld hl, wJumptableIndex
|
||||
inc [hl]
|
||||
ret
|
||||
|
@ -68,8 +68,8 @@ Printer_Quit:
|
|||
set 7, [hl]
|
||||
ret
|
||||
|
||||
Printer_NextSection_:
|
||||
call Printer_NextSection
|
||||
Printer_NextSection:
|
||||
call _Printer_NextSection
|
||||
ret
|
||||
|
||||
Printer_SectionOne:
|
||||
|
@ -86,7 +86,7 @@ Print_InitPrinterHandshake:
|
|||
ld [wPrinterSendByteCounter + 1], a
|
||||
ld a, [wPrinterQueueLength]
|
||||
ld [wPrinterRowIndex], a
|
||||
call Printer_NextSection
|
||||
call _Printer_NextSection
|
||||
call Printer_WaitHandshake
|
||||
ld a, PRINTER_STATUS_CHECKING
|
||||
ld [wPrinterStatus], a
|
||||
|
@ -110,7 +110,7 @@ Printer_StartTransmittingTilemap:
|
|||
ld [wPrinterSendByteCounter + 1], a
|
||||
; compute the checksum
|
||||
call Printer_ComputeChecksum
|
||||
call Printer_NextSection
|
||||
call _Printer_NextSection
|
||||
call Printer_WaitHandshake
|
||||
ld a, PRINTER_STATUS_TRANSMITTING
|
||||
ld [wPrinterStatus], a
|
||||
|
@ -127,7 +127,7 @@ Printer_EndTilemapTransmission:
|
|||
xor a
|
||||
ld [wPrinterSendByteCounter], a
|
||||
ld [wPrinterSendByteCounter + 1], a
|
||||
call Printer_NextSection
|
||||
call _Printer_NextSection
|
||||
call Printer_WaitHandshake
|
||||
ret
|
||||
|
||||
|
@ -143,7 +143,7 @@ Printer_SignalSendHeader:
|
|||
ld [wPrinterSendByteCounter + 1], a
|
||||
; compute the checksum
|
||||
call Printer_ComputeChecksum
|
||||
call Printer_NextSection
|
||||
call _Printer_NextSection
|
||||
call Printer_WaitHandshake
|
||||
ld a, PRINTER_STATUS_PRINTING
|
||||
ld [wPrinterStatus], a
|
||||
|
@ -160,7 +160,7 @@ Printer_SignalLoopBack:
|
|||
ld [wPrinterSendByteCounter + 1], a
|
||||
ld a, [wPrinterQueueLength]
|
||||
ld [wPrinterRowIndex], a
|
||||
call Printer_NextSection
|
||||
call _Printer_NextSection
|
||||
call Printer_WaitHandshake
|
||||
ret
|
||||
|
||||
|
@ -172,7 +172,7 @@ Printer_WaitSerial:
|
|||
ret c
|
||||
xor a
|
||||
ld [hl], a
|
||||
call Printer_NextSection
|
||||
call _Printer_NextSection
|
||||
ret
|
||||
|
||||
Printer_WaitSerialAndLoopBack2:
|
||||
|
@ -211,7 +211,7 @@ Printer_CheckConnectionStatus:
|
|||
set 1, [hl]
|
||||
ld a, $5
|
||||
ld [wHandshakeFrameDelay], a
|
||||
call Printer_NextSection
|
||||
call _Printer_NextSection
|
||||
ret
|
||||
|
||||
.printer_error
|
||||
|
@ -232,7 +232,7 @@ Printer_TransmissionLoop:
|
|||
ld a, [wPrinterStatusFlags]
|
||||
and $1
|
||||
jr nz, .cycle_back
|
||||
call Printer_NextSection
|
||||
call _Printer_NextSection
|
||||
ret
|
||||
|
||||
.cycle_back
|
||||
|
@ -240,7 +240,7 @@ Printer_TransmissionLoop:
|
|||
ret
|
||||
|
||||
.enter_wait_loop
|
||||
ld a, $12 ; Printer_WaitLoopBack
|
||||
ld a, $12 ; Printer_NextSectionWaitLoopBack
|
||||
ld [wJumptableIndex], a
|
||||
ret
|
||||
|
||||
|
@ -251,12 +251,12 @@ Printer_WaitUntilFinished:
|
|||
ld a, [wPrinterStatusFlags]
|
||||
and $f3
|
||||
ret nz
|
||||
call Printer_NextSection
|
||||
call _Printer_NextSection
|
||||
ret
|
||||
|
||||
Printer_NextSectionWaitLoopBack:
|
||||
call _Printer_NextSection
|
||||
Printer_WaitLoopBack:
|
||||
call Printer_NextSection
|
||||
Printer_WaitLoopBack_:
|
||||
ld a, [wPrinterOpcode]
|
||||
and a
|
||||
ret nz
|
||||
|
@ -474,31 +474,31 @@ _PrinterReceive::
|
|||
dw Printer_SendNextByte ; 06
|
||||
dw Printer_SendwPrinterChecksumLo ; 07
|
||||
dw Printer_SendwPrinterChecksumHi ; 08
|
||||
dw Printer_Send0x00 ; 09
|
||||
dw Printer_ReceiveTowPrinterHandshakeAndSend0x00 ; 0a
|
||||
dw Printer_ReceiveTowPrinterStatusFlagsAndExitSendLoop ; 0b
|
||||
dw Printer_Send0x00_2 ; 09
|
||||
dw Printer_ReceiveTwoPrinterHandshakeAndSend0x00 ; 0a
|
||||
dw Printer_ReceiveTwoPrinterStatusFlagsAndExitSendLoop ; 0b
|
||||
|
||||
dw Printer_Send0x33 ; 0c triggered by AskSerial
|
||||
dw Printer_Send0x0f ; 0d
|
||||
dw Printer_Send0x00_ ; 0e
|
||||
dw Printer_Send0x00_ ; 0f
|
||||
dw Printer_Send0x00_ ; 10
|
||||
dw Printer_Send0x00 ; 0e
|
||||
dw Printer_Send0x00 ; 0f
|
||||
dw Printer_Send0x00 ; 10
|
||||
dw Printer_Send0x0f ; 11
|
||||
dw Printer_Send0x00_ ; 12
|
||||
dw Printer_Send0x00 ; 13
|
||||
dw Printer_ReceiveTowPrinterHandshakeAndSend0x00 ; 14
|
||||
dw Printer_ReceiveTowPrinterStatusFlagsAndExitSendLoop_ ; 15
|
||||
dw Printer_Send0x00 ; 12
|
||||
dw Printer_Send0x00_2 ; 13
|
||||
dw Printer_ReceiveTwoPrinterHandshakeAndSend0x00 ; 14
|
||||
dw Printer_ReceiveTwoPrinterStatusFlagsAndExitSendLoop_2 ; 15
|
||||
|
||||
dw Printer_Send0x33 ; 16 triggered by pressing B
|
||||
dw Printer_Send0x08 ; 17
|
||||
dw Printer_Send0x00_ ; 18
|
||||
dw Printer_Send0x00_ ; 19
|
||||
dw Printer_Send0x00_ ; 1a
|
||||
dw Printer_Send0x00 ; 18
|
||||
dw Printer_Send0x00 ; 19
|
||||
dw Printer_Send0x00 ; 1a
|
||||
dw Printer_Send0x08 ; 1b
|
||||
dw Printer_Send0x00_ ; 1c
|
||||
dw Printer_Send0x00 ; 1d
|
||||
dw Printer_ReceiveTowPrinterHandshakeAndSend0x00 ; 1e
|
||||
dw Printer_ReceiveTowPrinterStatusFlagsAndExitSendLoop ; 1f
|
||||
dw Printer_Send0x00 ; 1c
|
||||
dw Printer_Send0x00_2 ; 1d
|
||||
dw Printer_ReceiveTwoPrinterHandshakeAndSend0x00 ; 1e
|
||||
dw Printer_ReceiveTwoPrinterStatusFlagsAndExitSendLoop ; 1f
|
||||
|
||||
Printer_NextInstruction:
|
||||
ld hl, wPrinterOpcode
|
||||
|
@ -580,13 +580,14 @@ Printer_SendwPrinterChecksumHi:
|
|||
call Printer_NextInstruction
|
||||
ret
|
||||
|
||||
Printer_Send0x00:
|
||||
Printer_Send0x00_2:
|
||||
; identical to Printer_Send0x00, but referenced less
|
||||
ld a, $0
|
||||
call Printer_SerialSend
|
||||
call Printer_NextInstruction
|
||||
ret
|
||||
|
||||
Printer_ReceiveTowPrinterHandshakeAndSend0x00:
|
||||
Printer_ReceiveTwoPrinterHandshakeAndSend0x00:
|
||||
ld a, [rSB]
|
||||
ld [wPrinterHandshake], a
|
||||
ld a, $0
|
||||
|
@ -594,7 +595,7 @@ Printer_ReceiveTowPrinterHandshakeAndSend0x00:
|
|||
call Printer_NextInstruction
|
||||
ret
|
||||
|
||||
Printer_ReceiveTowPrinterStatusFlagsAndExitSendLoop:
|
||||
Printer_ReceiveTwoPrinterStatusFlagsAndExitSendLoop:
|
||||
ld a, [rSB]
|
||||
ld [wPrinterStatusFlags], a
|
||||
xor a
|
||||
|
@ -607,7 +608,7 @@ Printer_Send0x0f:
|
|||
call Printer_NextInstruction
|
||||
ret
|
||||
|
||||
Printer_Send0x00_:
|
||||
Printer_Send0x00:
|
||||
ld a, $0
|
||||
call Printer_SerialSend
|
||||
call Printer_NextInstruction
|
||||
|
@ -627,7 +628,8 @@ Printer_SerialSend:
|
|||
ld [rSC], a
|
||||
ret
|
||||
|
||||
Printer_ReceiveTowPrinterStatusFlagsAndExitSendLoop_:
|
||||
Printer_ReceiveTwoPrinterStatusFlagsAndExitSendLoop_2:
|
||||
; identical to Printer_ReceiveTwoPrinterStatusFlagsAndExitSendLoop, but referenced less
|
||||
ld a, [rSB]
|
||||
ld [wPrinterStatusFlags], a
|
||||
xor a
|
||||
|
|
51
home.asm
51
home.asm
|
@ -162,55 +162,8 @@ CallPointerAt::
|
|||
rst Bankswitch
|
||||
ret
|
||||
|
||||
QueueScript::
|
||||
; Push pointer hl in the current bank to wQueuedScriptBank.
|
||||
ld a, [hROMBank]
|
||||
|
||||
FarQueueScript::
|
||||
; Push pointer a:hl to wQueuedScriptBank.
|
||||
ld [wQueuedScriptBank], a
|
||||
ld a, l
|
||||
ld [wQueuedScriptAddr], a
|
||||
ld a, h
|
||||
ld [wQueuedScriptAddr + 1], a
|
||||
ret
|
||||
|
||||
StringCmp::
|
||||
; Compare c bytes at de and hl.
|
||||
; Return z if they all match.
|
||||
.loop
|
||||
ld a, [de]
|
||||
cp [hl]
|
||||
ret nz
|
||||
inc de
|
||||
inc hl
|
||||
dec c
|
||||
jr nz, .loop
|
||||
ret
|
||||
|
||||
CompareLong::
|
||||
; Compare bc bytes at de and hl.
|
||||
; Return carry if they all match.
|
||||
|
||||
ld a, [de]
|
||||
cp [hl]
|
||||
jr nz, .Diff
|
||||
|
||||
inc de
|
||||
inc hl
|
||||
dec bc
|
||||
|
||||
ld a, b
|
||||
or c
|
||||
jr nz, CompareLong
|
||||
|
||||
scf
|
||||
ret
|
||||
|
||||
.Diff:
|
||||
and a
|
||||
ret
|
||||
|
||||
INCLUDE "home/queue_script.asm"
|
||||
INCLUDE "home/compare.asm"
|
||||
INCLUDE "home/tilemap.asm"
|
||||
INCLUDE "home/hp_pals.asm"
|
||||
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
CompareBytes::
|
||||
; Compare c bytes at de and hl.
|
||||
; Return z if they all match.
|
||||
.loop
|
||||
ld a, [de]
|
||||
cp [hl]
|
||||
ret nz
|
||||
inc de
|
||||
inc hl
|
||||
dec c
|
||||
jr nz, .loop
|
||||
ret
|
||||
|
||||
CompareBytesLong::
|
||||
; Compare bc bytes at de and hl.
|
||||
; Return carry if they all match.
|
||||
.loop
|
||||
ld a, [de]
|
||||
cp [hl]
|
||||
jr nz, .diff
|
||||
|
||||
inc de
|
||||
inc hl
|
||||
dec bc
|
||||
|
||||
ld a, b
|
||||
or c
|
||||
jr nz, .loop
|
||||
|
||||
scf
|
||||
ret
|
||||
|
||||
.diff:
|
||||
and a
|
||||
ret
|
|
@ -0,0 +1,12 @@
|
|||
QueueScript::
|
||||
; Push pointer hl in the current bank to wQueuedScriptBank.
|
||||
ld a, [hROMBank]
|
||||
|
||||
FarQueueScript::
|
||||
; Push pointer a:hl to wQueuedScriptBank.
|
||||
ld [wQueuedScriptBank], a
|
||||
ld a, l
|
||||
ld [wQueuedScriptAddr], a
|
||||
ld a, h
|
||||
ld [wQueuedScriptAddr + 1], a
|
||||
ret
|
4
hram.asm
4
hram.asm
|
@ -48,8 +48,8 @@ hConnectedMapWidth EQU $ffb0
|
|||
|
||||
hPastLeadingZeroes EQU $ffb3
|
||||
|
||||
hStringCmpString1 EQU $ffb1
|
||||
hStringCmpString2 EQU $ffb5
|
||||
hEnemyMonSpeed EQU $ffb1
|
||||
hPartyMon1Speed EQU $ffb5
|
||||
|
||||
hDividend EQU $ffb3 ; length in b register, before 'call Divide' (max 4 bytes)
|
||||
hDivisor EQU $ffb7 ; 1 byte long
|
||||
|
|
|
@ -2063,7 +2063,7 @@ Function89d0d:
|
|||
ld [rSVBK], a
|
||||
|
||||
call SetPalettes
|
||||
farcall PrintMail_
|
||||
farcall PrintMail
|
||||
call Mobile22_SetBGMapMode1
|
||||
ld c, 24
|
||||
call DelayFrames
|
||||
|
|
|
@ -2967,7 +2967,7 @@ endr
|
|||
ENDM
|
||||
|
||||
IncCrashCheckPointer_SaveGameData:
|
||||
inc_crash_check_pointer_farcall SaveGameData_
|
||||
inc_crash_check_pointer_farcall _SaveGameData
|
||||
|
||||
IncCrashCheckPointer_SaveAfterLinkTrade:
|
||||
inc_crash_check_pointer_farcall SaveAfterLinkTrade
|
||||
|
|
2
wram.asm
2
wram.asm
|
@ -2893,6 +2893,7 @@ wTempTileMap::
|
|||
ds SCREEN_WIDTH * SCREEN_HEIGHT ; $168 = 360
|
||||
|
||||
; PokeAnim data
|
||||
wPokeAnimStruct::
|
||||
wPokeAnimSceneIndex:: db
|
||||
wPokeAnimPointer:: dw
|
||||
wPokeAnimSpecies:: db
|
||||
|
@ -2901,7 +2902,6 @@ wPokeAnimSpeciesOrUnown:: db
|
|||
wPokeAnimGraphicStartTile:: db
|
||||
wPokeAnimCoord:: dw
|
||||
wPokeAnimFrontpicHeight:: db
|
||||
; PokeAnim Data
|
||||
wPokeAnimIdleFlag:: db
|
||||
wPokeAnimSpeed:: db
|
||||
wPokeAnimPointerBank:: db
|
||||
|
|
Loading…
Reference in New Issue