mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-11-16 11:27:33 -08:00
1704 lines
26 KiB
NASM
Executable File
1704 lines
26 KiB
NASM
Executable File
DoMysteryGift: ; 1048ba (41:48ba)
|
|
call ClearTileMap
|
|
call ClearSprites
|
|
call WaitBGMap
|
|
call Function105153
|
|
hlcoord 3, 8
|
|
ld de, .String_PressAToLink_BToCancel
|
|
call PlaceString
|
|
call WaitBGMap
|
|
callba Function2c642
|
|
call Function1050fb
|
|
ld a, $2
|
|
ld [wca01], a
|
|
ld a, $14
|
|
ld [wca02], a
|
|
ld a, [rIE]
|
|
push af
|
|
call Function104a95
|
|
ld d, a
|
|
xor a
|
|
ld [rIF], a
|
|
pop af
|
|
ld [rIE], a
|
|
push de
|
|
call ClearTileMap
|
|
call EnableLCD
|
|
call WaitBGMap
|
|
ld b, SCGB_08
|
|
call GetSGBLayout
|
|
call SetPalettes
|
|
pop de
|
|
hlcoord 2, 8
|
|
ld a, d
|
|
ld de, .Text_LinkCanceled ; Link has been canceled
|
|
cp $10
|
|
jp z, .LinkCanceled
|
|
cp $6c
|
|
jp nz, .CommunicationError
|
|
ld a, [wc900]
|
|
cp $3
|
|
jr z, .skip_checks
|
|
call .CheckAlreadyGotFiveGiftsToday
|
|
ld hl, .Text_MaxFiveGifts ; Only 5 gifts a day
|
|
jp nc, .PrintTextAndExit
|
|
call .CheckAlreadyGotAGiftFromThatPerson
|
|
ld hl, .Text_MaxOneGiftPerPerson ; Only one gift a day per person
|
|
jp c, .PrintTextAndExit
|
|
.skip_checks
|
|
ld a, [wc962]
|
|
and a
|
|
jp nz, .GiftWaiting
|
|
ld a, [wc912]
|
|
and a
|
|
jp nz, .FriendNotReady
|
|
ld a, [wc900]
|
|
cp $3
|
|
jr z, .skip_append_save
|
|
call .AddMysteryGiftPartnerID
|
|
ld a, [wc900]
|
|
cp $4
|
|
jr z, .skip_append_save
|
|
call .SaveMysteryGiftTrainerName
|
|
callba RestoreMobileEventIndex
|
|
callba MobileFn_1060a9
|
|
callba BackupMobileEventIndex
|
|
.skip_append_save
|
|
ld a, [wc90f]
|
|
and a
|
|
jr z, .item
|
|
ld a, [wc911]
|
|
ld c, a
|
|
callba MysteryGiftGetDecoration
|
|
push bc
|
|
call Function105069
|
|
pop bc
|
|
jr nz, .item
|
|
callab GetDecorationName_c
|
|
ld h, d
|
|
ld l, e
|
|
ld de, StringBuffer1
|
|
ld bc, ITEM_NAME_LENGTH
|
|
call CopyBytes
|
|
ld hl, .Text_SentToHome ; sent decoration to home
|
|
jr .PrintTextAndExit
|
|
|
|
.item
|
|
call GetMysteryGiftBank
|
|
ld a, [wc910]
|
|
ld c, a
|
|
callba MysteryGiftGetItemHeldEffect
|
|
ld a, c
|
|
ld [sBackupMysteryGiftItem], a
|
|
ld [wNamedObjectIndexBuffer], a
|
|
call CloseSRAM
|
|
call GetItemName
|
|
ld hl, .Text_Sent ; sent item
|
|
jr .PrintTextAndExit
|
|
|
|
.LinkCanceled: ; 1049af (41:49af)
|
|
ld hl, .Text_LinkCanceled ; Link has been canceled
|
|
jr .PrintTextAndExit
|
|
|
|
.CommunicationError: ; 1049b4 (41:49b4)
|
|
ld hl, .Text_CommunicationError ; Communication error
|
|
call PrintText
|
|
jp DoMysteryGift
|
|
|
|
.GiftWaiting: ; 1049bd (41:49bd)
|
|
ld hl, .Text_ReceiveGiftAtCounter ; receive gift at counter
|
|
jr .PrintTextAndExit
|
|
|
|
.FriendNotReady: ; 1049c2 (41:49c2)
|
|
ld hl, .Text_FriendNotReady ; friend not ready
|
|
|
|
.PrintTextAndExit: ; 1049c5 (41:49c5)
|
|
call PrintText
|
|
ld a, $e3
|
|
ld [rLCDC], a
|
|
ret
|
|
; 1049cd (41:49cd)
|
|
|
|
.String_PressAToLink_BToCancel: ; 1049cd
|
|
db "Press A to"
|
|
next "link IR-Device"
|
|
next "Press B to"
|
|
next "cancel it."
|
|
db "@"
|
|
; 1049fd
|
|
|
|
.Text_LinkCanceled: ; 1049fd
|
|
text_jump UnknownText_0x1c0436
|
|
db "@"
|
|
; 104a02
|
|
|
|
.Text_CommunicationError: ; 104a02
|
|
text_jump UnknownText_0x1c0454
|
|
db "@"
|
|
; 104a07
|
|
|
|
.Text_ReceiveGiftAtCounter: ; 104a07
|
|
text_jump UnknownText_0x1c046a
|
|
db "@"
|
|
; 104a0c
|
|
|
|
.Text_FriendNotReady: ; 104a0c
|
|
text_jump UnknownText_0x1c048e
|
|
db "@"
|
|
; 104a11
|
|
|
|
.Text_MaxFiveGifts: ; 104a11
|
|
text_jump UnknownText_0x1c04a7
|
|
db "@"
|
|
; 104a16
|
|
|
|
.Text_MaxOneGiftPerPerson: ; 104a16
|
|
text_jump UnknownText_0x1c04c6
|
|
db "@"
|
|
; 104a1b
|
|
|
|
.Text_Sent: ; 104a1b
|
|
text_jump UnknownText_0x1c04e9
|
|
db "@"
|
|
; 104a20
|
|
|
|
.Text_SentToHome: ; 104a20
|
|
text_jump UnknownText_0x1c04fa
|
|
db "@"
|
|
; 104a25
|
|
|
|
.CheckAlreadyGotFiveGiftsToday: ; 104a25 (41:4a25)
|
|
call GetMysteryGiftBank
|
|
ld a, [sNumDailyMysteryGiftPartnerIDs]
|
|
cp $5
|
|
jp CloseSRAM
|
|
|
|
.CheckAlreadyGotAGiftFromThatPerson: ; 104a30 (41:4a30)
|
|
call GetMysteryGiftBank
|
|
ld a, [wMysteryGiftPartnerID]
|
|
ld b, a
|
|
ld a, [wMysteryGiftPartnerID + 1]
|
|
ld c, a
|
|
ld a, [sNumDailyMysteryGiftPartnerIDs]
|
|
ld d, a
|
|
ld hl, sDailyMysteryGiftPartnerIDs
|
|
.loop
|
|
ld a, d
|
|
and a
|
|
jr z, .No
|
|
ld a, [hli]
|
|
cp b
|
|
jr nz, .skip
|
|
ld a, [hl]
|
|
cp c
|
|
jr z, .Yes
|
|
.skip
|
|
inc hl
|
|
dec d
|
|
jr .loop
|
|
.Yes
|
|
scf
|
|
.No
|
|
jp CloseSRAM
|
|
|
|
.AddMysteryGiftPartnerID: ; 104a56 (41:4a56)
|
|
call GetMysteryGiftBank
|
|
ld hl, sNumDailyMysteryGiftPartnerIDs
|
|
ld a, [hl]
|
|
inc [hl]
|
|
ld hl, sDailyMysteryGiftPartnerIDs ; inc hl
|
|
ld e, a
|
|
ld d, $0
|
|
rept 2
|
|
add hl, de
|
|
endr
|
|
ld a, [wMysteryGiftPartnerID]
|
|
ld [hli], a
|
|
ld a, [wMysteryGiftPartnerID + 1]
|
|
ld [hl], a
|
|
jp CloseSRAM
|
|
|
|
.SaveMysteryGiftTrainerName: ; 104a71 (41:4a71)
|
|
call GetMysteryGiftBank
|
|
ld a, $1
|
|
ld [sMysteryGiftTrainerHouseFlag], a
|
|
ld hl, wMysteryGiftPartnerName
|
|
ld de, sMysteryGiftPartnerName
|
|
ld bc, NAME_LENGTH
|
|
call CopyBytes
|
|
ld a, $1
|
|
ld [de], a
|
|
inc de
|
|
ld hl, wMysteryGiftTrainerData
|
|
ld bc, (1 + 1 + NUM_MOVES) * PARTY_LENGTH + 2
|
|
call CopyBytes
|
|
jp CloseSRAM
|
|
|
|
Function104a95: ; 104a95 (41:4a95)
|
|
di
|
|
callba ClearChannels
|
|
call Function104d5e
|
|
.loop2
|
|
call Function104d96
|
|
call Function104ddd
|
|
ld a, [hPrintNum10]
|
|
cp $10
|
|
jp z, Function104bd0
|
|
cp $6c
|
|
jr nz, .loop2
|
|
ld a, [hPrintNum9]
|
|
cp $2
|
|
jr z, Function104b22
|
|
ld hl, $ffb3
|
|
ld b, $1
|
|
call Function104d56
|
|
jr nz, .ly_loop
|
|
call Function104b49
|
|
jp nz, Function104bd0
|
|
jr asm_104b0a
|
|
.ly_loop
|
|
ld a, [rLY]
|
|
cp $90
|
|
jr c, .ly_loop
|
|
ld c, rRP % $100
|
|
ld a, $c0
|
|
ld [$ff00+c], a
|
|
ld b, $f0
|
|
.loop3
|
|
push bc
|
|
call Function105038
|
|
ld b, $2
|
|
ld c, rRP % $100
|
|
.ly_loop2
|
|
ld a, [$ff00+c]
|
|
and b
|
|
ld b, a
|
|
ld a, [rLY]
|
|
cp $90
|
|
jr nc, .ly_loop2
|
|
.ly_loop3
|
|
ld a, [$ff00+c]
|
|
and b
|
|
ld b, a
|
|
ld a, [rLY]
|
|
cp $90
|
|
jr c, .ly_loop3
|
|
ld a, b
|
|
pop bc
|
|
dec b
|
|
jr z, .loop2
|
|
or a
|
|
jr nz, .loop2
|
|
ld a, [hMoneyTemp + 1]
|
|
bit 1, a
|
|
jr z, .loop3
|
|
ld a, $10
|
|
ld [hPrintNum10], a
|
|
jp Function104bd0
|
|
|
|
Function104b04: ; 104b04 (41:4b04)
|
|
call Function104b40
|
|
jp nz, Function104bd0
|
|
|
|
asm_104b0a: ; 104b0a (41:4b0a)
|
|
call Function104d38
|
|
jp nz, Function104bd0
|
|
call Function104b88
|
|
jp nz, Function104bd0
|
|
call Function104d43
|
|
jp nz, Function104bd0
|
|
call Function105033
|
|
jp Function104bd0
|
|
|
|
Function104b22: ; 104b22 (41:4b22)
|
|
call Function104b88
|
|
jp nz, Function104bd0
|
|
call Function104d43
|
|
jp nz, Function104bd0
|
|
call Function104b40
|
|
jp nz, Function104bd0
|
|
call Function104d38
|
|
jp nz, Function104bd0
|
|
call Function10502e
|
|
jp Function104bd0
|
|
|
|
Function104b40: ; 104b40 (41:4b40)
|
|
ld hl, $ffb3
|
|
ld b, $1
|
|
call Function104d56
|
|
ret nz
|
|
|
|
Function104b49: ; 104b49 (41:4b49)
|
|
call Function105033
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret nz
|
|
ld a, [$ffb3]
|
|
cp $96
|
|
jp nz, Function104d32
|
|
ld a, $90
|
|
ld [$ffb3], a
|
|
call Function104d38
|
|
ret nz
|
|
ld hl, $ffb3
|
|
ld b, $1
|
|
call Function104d4e
|
|
ret nz
|
|
call Function10502e
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret nz
|
|
call Function104d43
|
|
ret nz
|
|
ld hl, wMysteryGiftTrainerData
|
|
ld a, [wca02]
|
|
ld b, a
|
|
call Function104d56
|
|
ret nz
|
|
call Function105033
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret
|
|
|
|
Function104b88: ; 104b88 (41:4b88)
|
|
ld a, $96
|
|
ld [$ffb3], a
|
|
ld hl, $ffb3
|
|
ld b, $1
|
|
call Function104d4e
|
|
ret nz
|
|
call Function10502e
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret nz
|
|
call Function104d43
|
|
ret nz
|
|
ld hl, $ffb3
|
|
ld b, $1
|
|
call Function104d56
|
|
ret nz
|
|
call Function105033
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret nz
|
|
ld a, [$ffb3]
|
|
cp $90
|
|
jp nz, Function104d32
|
|
call Function104d38
|
|
ret nz
|
|
ld hl, OverworldMap
|
|
ld a, [wca02]
|
|
ld b, a
|
|
call Function104d4e
|
|
ret nz
|
|
call Function10502e
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret
|
|
|
|
Function104bd0: ; 104bd0 (41:4bd0)
|
|
nop
|
|
ld a, [hPrintNum10]
|
|
cp $10
|
|
jr z, .asm_104c18
|
|
cp $6c
|
|
jr nz, .asm_104c18
|
|
ld hl, wca01
|
|
dec [hl]
|
|
jr z, .asm_104c18
|
|
ld hl, wMysteryGiftTrainerData
|
|
ld de, wc900
|
|
ld bc, $14
|
|
call CopyBytes
|
|
ld a, [wMysteryGiftTrainerData]
|
|
cp $3
|
|
jr nc, .asm_104c18
|
|
callba Function10510b
|
|
call Function1050fb
|
|
ld a, $26
|
|
ld [wca02], a
|
|
ld a, [hPrintNum9]
|
|
cp $2
|
|
jr z, .asm_104c10
|
|
call Function104d43
|
|
jr nz, Function104bd0
|
|
jp Function104b04
|
|
.asm_104c10
|
|
call Function104d38
|
|
jr nz, Function104bd0
|
|
jp Function104b22
|
|
.asm_104c18
|
|
ld a, [hPrintNum10]
|
|
push af
|
|
call Function104da0
|
|
xor a
|
|
ld [rIF], a
|
|
ld a, [rIE]
|
|
or $1
|
|
ld [rIE], a
|
|
ei
|
|
call DelayFrame
|
|
pop af
|
|
ret
|
|
|
|
Function104c2d: ; 104c2d (41:4c2d)
|
|
di
|
|
callba ClearChannels
|
|
call Function104d5e
|
|
.asm_104c37
|
|
call Function104d96
|
|
call Function104ddd
|
|
ld a, [hPrintNum10]
|
|
cp $10
|
|
jp z, Function104d1c
|
|
cp $6c
|
|
jr nz, .asm_104c37
|
|
ld a, [hPrintNum9]
|
|
cp $2
|
|
jr z, .asm_104c6c
|
|
call Function104c8a
|
|
jp nz, Function104d1c
|
|
call Function104d38
|
|
jp nz, Function104d1c
|
|
call Function104cd2
|
|
jp nz, Function104d1c
|
|
call Function104d43
|
|
jp nz, Function104d1c
|
|
call Function105033
|
|
jp Function104d1c
|
|
.asm_104c6c
|
|
call Function104cd2
|
|
jp nz, Function104d1c
|
|
call Function104d43
|
|
jp nz, Function104d1c
|
|
call Function104c8a
|
|
jp nz, Function104d1c
|
|
call Function104d38
|
|
jp nz, Function104d1c
|
|
call Function10502e
|
|
jp Function104d1c
|
|
|
|
Function104c8a: ; 104c8a (41:4c8a)
|
|
ld hl, $ffb3
|
|
ld b, $1
|
|
call Function104d56
|
|
ret nz
|
|
call Function105033
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret nz
|
|
ld a, [$ffb3]
|
|
cp $3c
|
|
jp nz, Function104d32
|
|
swap a
|
|
ld [$ffb3], a
|
|
call Function104d38
|
|
ret nz
|
|
ld hl, $ffb3
|
|
ld b, $1
|
|
call Function104d4e
|
|
ret nz
|
|
call Function10502e
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret nz
|
|
call Function104d43
|
|
ret nz
|
|
ld hl, wMysteryGiftTrainerData
|
|
ld a, [wca02]
|
|
ld b, a
|
|
call Function104d56
|
|
ret nz
|
|
call Function105033
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret
|
|
|
|
Function104cd2: ; 104cd2 (41:4cd2)
|
|
ld a, $3c
|
|
ld [$ffb3], a
|
|
ld hl, $ffb3
|
|
ld b, $1
|
|
call Function104d4e
|
|
ret nz
|
|
call Function10502e
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret nz
|
|
call Function104d43
|
|
ret nz
|
|
ld hl, $ffb3
|
|
ld b, $1
|
|
call Function104d56
|
|
ret nz
|
|
call Function105033
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret nz
|
|
ld a, [$ffb3]
|
|
swap a
|
|
cp $3c
|
|
jp nz, Function104d32
|
|
call Function104d38
|
|
ret nz
|
|
ld hl, OverworldMap
|
|
ld a, [wca02]
|
|
ld b, a
|
|
call Function104d4e
|
|
ret nz
|
|
call Function10502e
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret
|
|
|
|
Function104d1c: ; 104d1c (41:4d1c)
|
|
nop
|
|
ld a, [hPrintNum10]
|
|
push af
|
|
call Function104da0
|
|
xor a
|
|
ld [rIF], a
|
|
ld a, [rIE]
|
|
or $1
|
|
ld [rIE], a
|
|
ei
|
|
call DelayFrame
|
|
pop af
|
|
ret
|
|
|
|
Function104d32: ; 104d32 (41:4d32)
|
|
ld a, $80
|
|
ld [hPrintNum10], a
|
|
and a
|
|
ret
|
|
|
|
Function104d38: ; 104d38 (41:4d38)
|
|
call Function104d96
|
|
call Function104e46
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret
|
|
|
|
Function104d43: ; 104d43 (41:4d43)
|
|
call Function104d96
|
|
call Function104dfe
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret
|
|
|
|
Function104d4e: ; 104d4e (41:4d4e)
|
|
call Function104e93
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret
|
|
|
|
Function104d56: ; 104d56 (41:4d56)
|
|
call Function104f57
|
|
ld a, [hPrintNum10]
|
|
cp $6c
|
|
ret
|
|
|
|
Function104d5e: ; 104d5e (41:4d5e)
|
|
call Function104d74
|
|
ld a, $4
|
|
ld [rIE], a
|
|
xor a
|
|
ld [rIF], a
|
|
call Function104d96
|
|
xor a
|
|
ld b, a
|
|
.asm_104d6d
|
|
inc a
|
|
jr nz, .asm_104d6d
|
|
inc b
|
|
jr nz, .asm_104d6d
|
|
ret
|
|
|
|
Function104d74: ; 104d74 (41:4d74)
|
|
xor a
|
|
ld [rTAC], a
|
|
ld a, $fe
|
|
ld [rTMA], a
|
|
ld [rTIMA], a
|
|
ld a, $2
|
|
ld [rTAC], a
|
|
or $4
|
|
ld [rTAC], a
|
|
ret
|
|
|
|
Function104d86: ; 104d86 (41:4d86)
|
|
xor a
|
|
ld [rTAC], a
|
|
ld [rTMA], a
|
|
ld [rTIMA], a
|
|
ld a, $2
|
|
ld [rTAC], a
|
|
or $4
|
|
ld [rTAC], a
|
|
ret
|
|
|
|
Function104d96: ; 104d96 (41:4d96)
|
|
ld a, $c0
|
|
call Function104e8c
|
|
ld a, $1
|
|
ld [hPrintNum9], a
|
|
ret
|
|
|
|
Function104da0: ; 104da0 (41:4da0)
|
|
xor a
|
|
call Function104e8c
|
|
ld a, $2
|
|
ld [rTAC], a
|
|
ret
|
|
|
|
Function104da9: ; 104da9 (41:4da9)
|
|
inc d
|
|
ret z
|
|
xor a
|
|
ld [rIF], a
|
|
halt
|
|
ld a, [$ff00+c]
|
|
bit 1, a
|
|
jr z, Function104da9
|
|
or a
|
|
ret
|
|
|
|
Function104db7: ; 104db7 (41:4db7)
|
|
inc d
|
|
ret z
|
|
xor a
|
|
ld [rIF], a
|
|
halt
|
|
ld a, [$ff00+c]
|
|
bit 1, a
|
|
jr nz, Function104db7
|
|
or a
|
|
ret
|
|
|
|
Function104dc5: ; 104dc5 (41:4dc5)
|
|
ld a, $c1
|
|
ld [$ff00+c], a
|
|
.asm_104dc8
|
|
dec d
|
|
ret z
|
|
xor a
|
|
ld [rIF], a
|
|
halt
|
|
jr .asm_104dc8
|
|
|
|
Function104dd1: ; 104dd1 (41:4dd1)
|
|
ld a, $c0
|
|
ld [$ff00+c], a
|
|
.asm_104dd4
|
|
dec d
|
|
ret z
|
|
xor a
|
|
ld [rIF], a
|
|
halt
|
|
jr .asm_104dd4
|
|
|
|
Function104ddd: ; 104ddd (41:4ddd)
|
|
ld d, $0
|
|
ld e, d
|
|
ld a, $1
|
|
ld [hPrintNum9], a
|
|
.loop
|
|
call Function105038
|
|
ld b, $2
|
|
ld c, rRP % $100
|
|
ld a, [hMoneyTemp + 1]
|
|
bit 1, a
|
|
jr z, .next
|
|
ld a, $10
|
|
ld [hPrintNum10], a
|
|
ret
|
|
|
|
.next
|
|
bit 0, a
|
|
jr nz, asm_104e3a
|
|
ld a, [$ff00+c]
|
|
and b
|
|
jr nz, .loop
|
|
|
|
Function104dfe: ; 104dfe (41:4dfe)
|
|
ld c, rRP % $100
|
|
ld d, $0
|
|
ld e, d
|
|
call Function104db7
|
|
jp z, Function104f42
|
|
ld d, e
|
|
call Function104da9
|
|
jp z, Function104f42
|
|
call Function104db7
|
|
jp z, Function104f42
|
|
call Function104da9
|
|
jp z, Function104f42
|
|
ld a, $6c
|
|
ld [hPrintNum10], a
|
|
ld d, $3d
|
|
call Function104dd1
|
|
ld d, $5
|
|
call Function104dc5
|
|
ld d, $15
|
|
call Function104dd1
|
|
ld d, $5
|
|
call Function104dc5
|
|
ld d, $5
|
|
call Function104dd1
|
|
ret
|
|
|
|
asm_104e3a: ; 104e3a (41:4e3a)
|
|
call Random
|
|
ld e, a
|
|
and $f
|
|
ld d, a
|
|
.asm_104e41
|
|
dec de
|
|
ld a, d
|
|
or e
|
|
jr nz, .asm_104e41
|
|
|
|
Function104e46: ; 104e46 (41:4e46)
|
|
ld a, $2
|
|
ld [hPrintNum9], a
|
|
ld c, $56
|
|
ld d, $0
|
|
ld e, d
|
|
ld d, $3d
|
|
call Function104dd1
|
|
ld d, $5
|
|
call Function104dc5
|
|
ld d, $15
|
|
call Function104dd1
|
|
ld d, $5
|
|
call Function104dc5
|
|
ld d, $5
|
|
call Function104dd1
|
|
ld d, e
|
|
call Function104db7
|
|
jp z, Function104f42
|
|
ld d, e
|
|
call Function104da9
|
|
jp z, Function104f42
|
|
call Function104db7
|
|
jp z, Function104f42
|
|
call Function104da9
|
|
jp z, Function104f42
|
|
ld d, $3d
|
|
call Function104dd1
|
|
ld a, $6c
|
|
ld [hPrintNum10], a
|
|
ret
|
|
|
|
Function104e8c: ; 104e8c (41:4e8c)
|
|
ld [rRP], a
|
|
ld a, $ff
|
|
ld [hPrintNum10], a
|
|
ret
|
|
|
|
Function104e93: ; 104e93 (41:4e93)
|
|
xor a
|
|
ld [hDivisor], a
|
|
ld [hMathBuffer], a
|
|
push hl
|
|
push bc
|
|
ld c, $56
|
|
ld d, $3d
|
|
call Function104dd1
|
|
ld hl, hQuotient ; $ffb4 (aliases: hMultiplicand)
|
|
ld a, $5a
|
|
ld [hli], a
|
|
ld [hl], b
|
|
dec hl
|
|
ld b, $2
|
|
call Function104ed6
|
|
pop bc
|
|
pop hl
|
|
call Function104ed6
|
|
ld a, [hDivisor]
|
|
ld [hQuotient], a
|
|
ld a, [hMathBuffer]
|
|
ld [$ffb5], a
|
|
push hl
|
|
ld hl, hQuotient ; $ffb4 (aliases: hMultiplicand)
|
|
ld b, $2
|
|
call Function104ed6
|
|
ld hl, hPrintNum10
|
|
ld b, $1
|
|
call Function104faf
|
|
ld a, [hQuotient]
|
|
ld [hDivisor], a
|
|
ld a, [$ffb5]
|
|
ld [hMathBuffer], a
|
|
pop hl
|
|
ret
|
|
|
|
Function104ed6: ; 104ed6 (41:4ed6)
|
|
ld c, $56
|
|
ld d, $5
|
|
call Function104dd1
|
|
ld d, $5
|
|
call Function104dc5
|
|
ld d, $15
|
|
call Function104dd1
|
|
ld a, b
|
|
cpl
|
|
ld b, a
|
|
ld a, $f4
|
|
ld [rTMA], a
|
|
.asm_104eee
|
|
inc b
|
|
jr z, .asm_104f2e
|
|
ld a, $8
|
|
ld [$ffb6], a
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld a, [hDivisor]
|
|
add e
|
|
ld [hDivisor], a
|
|
ld a, [hMathBuffer]
|
|
adc $0
|
|
ld [hMathBuffer], a
|
|
.asm_104f02
|
|
xor a
|
|
ld [rIF], a
|
|
halt
|
|
ld a, $c1
|
|
ld [rRP], a
|
|
ld d, $1
|
|
ld a, e
|
|
rlca
|
|
ld e, a
|
|
jr nc, .asm_104f13
|
|
inc d
|
|
.asm_104f13
|
|
ld a, [rTIMA]
|
|
cp $f8
|
|
jr c, .asm_104f13
|
|
ld a, $c0
|
|
ld [rRP], a
|
|
dec d
|
|
jr z, .asm_104f25
|
|
xor a
|
|
ld [rIF], a
|
|
halt
|
|
.asm_104f25
|
|
ld a, [$ffb6]
|
|
dec a
|
|
jr z, .asm_104eee
|
|
ld [$ffb6], a
|
|
jr .asm_104f02
|
|
.asm_104f2e
|
|
ld a, $fe
|
|
ld [rTMA], a
|
|
xor a
|
|
ld [rIF], a
|
|
halt
|
|
ld d, $5
|
|
call Function104dc5
|
|
ld d, $11
|
|
call Function104dd1
|
|
ret
|
|
|
|
Function104f42: ; 104f42 (41:4f42)
|
|
ld a, [hPrintNum10]
|
|
or $2
|
|
ld [hPrintNum10], a
|
|
ret
|
|
|
|
Function104f49: ; 104f49 (41:4f49)
|
|
ld a, [hPrintNum10]
|
|
or $1
|
|
ld [hPrintNum10], a
|
|
ret
|
|
|
|
Function104f50: ; 104f50 (41:4f50)
|
|
ld a, [hPrintNum10]
|
|
or $80
|
|
ld [hPrintNum10], a
|
|
ret
|
|
|
|
Function104f57: ; 104f57 (41:4f57)
|
|
xor a
|
|
ld [hDivisor], a
|
|
ld [hMathBuffer], a
|
|
push bc
|
|
push hl
|
|
ld hl, hQuotient ; $ffb4 (aliases: hMultiplicand)
|
|
ld b, $2
|
|
call Function104faf
|
|
ld a, [$ffb5]
|
|
ld [$ffba], a
|
|
ld b, a
|
|
pop hl
|
|
pop af
|
|
cp b
|
|
jp c, Function104f50
|
|
ld a, [hQuotient]
|
|
cp $5a
|
|
jp nz, Function104f50
|
|
call Function104faf
|
|
ld a, [hDivisor]
|
|
ld d, a
|
|
ld a, [hMathBuffer]
|
|
ld e, a
|
|
push hl
|
|
push de
|
|
ld hl, hQuotient ; $ffb4 (aliases: hMultiplicand)
|
|
ld b, $2
|
|
call Function104faf
|
|
pop de
|
|
ld hl, hQuotient ; $ffb4 (aliases: hMultiplicand)
|
|
ld a, [hli]
|
|
xor d
|
|
ld b, a
|
|
ld a, [hl]
|
|
xor e
|
|
or b
|
|
call nz, Function104f49
|
|
push de
|
|
ld d, $3d
|
|
call Function104dd1
|
|
ld hl, hPrintNum10
|
|
ld b, $1
|
|
call Function104ed6
|
|
pop de
|
|
pop hl
|
|
ld a, d
|
|
ld [hDivisor], a
|
|
ld a, e
|
|
ld [hMathBuffer], a
|
|
ret
|
|
|
|
Function104faf: ; 104faf (41:4faf)
|
|
ld c, rRP % $100
|
|
ld d, $0
|
|
call Function104db7
|
|
jp z, Function104f42
|
|
ld d, $0
|
|
call Function104da9
|
|
jp z, Function104f42
|
|
ld d, $0
|
|
call Function104db7
|
|
jp z, Function104f42
|
|
ld a, b
|
|
cpl
|
|
ld b, a
|
|
xor a
|
|
ld [hMoneyTemp + 2], a
|
|
call Function104d86
|
|
.asm_104fd2
|
|
inc b
|
|
jr z, .asm_10501a
|
|
ld a, $8
|
|
ld [$ffb6], a
|
|
.asm_104fd9
|
|
ld d, $0
|
|
.asm_104fdb
|
|
inc d
|
|
jr z, .asm_104fe5
|
|
ld a, [$ff00+c]
|
|
bit 1, a
|
|
jr z, .asm_104fdb
|
|
ld d, $0
|
|
.asm_104fe5
|
|
inc d
|
|
jr z, .asm_104fed
|
|
ld a, [$ff00+c]
|
|
bit 1, a
|
|
jr nz, .asm_104fe5
|
|
.asm_104fed
|
|
ld a, [hMoneyTemp + 2]
|
|
ld d, a
|
|
ld a, [rTIMA]
|
|
ld [hMoneyTemp + 2], a
|
|
sub d
|
|
cp $12
|
|
jr c, .asm_104ffd
|
|
set 0, e
|
|
jr .asm_104fff
|
|
.asm_104ffd
|
|
res 0, e
|
|
.asm_104fff
|
|
ld a, [$ffb6]
|
|
dec a
|
|
ld [$ffb6], a
|
|
jr z, .asm_10500b
|
|
ld a, e
|
|
rlca
|
|
ld e, a
|
|
jr .asm_104fd9
|
|
.asm_10500b
|
|
ld a, e
|
|
ld [hli], a
|
|
ld a, [hDivisor]
|
|
add e
|
|
ld [hDivisor], a
|
|
ld a, [hMathBuffer]
|
|
adc $0
|
|
ld [hMathBuffer], a
|
|
jr .asm_104fd2
|
|
.asm_10501a
|
|
call Function104d74
|
|
xor a
|
|
ld [rIF], a
|
|
ld d, $0
|
|
call Function104da9
|
|
jp z, Function104f42
|
|
ld d, $10
|
|
call Function104dd1
|
|
ret
|
|
|
|
Function10502e: ; 10502e (41:502e)
|
|
ld b, $0
|
|
jp Function104e93
|
|
|
|
Function105033: ; 105033 (41:5033)
|
|
ld b, $0
|
|
jp Function104f57
|
|
|
|
Function105038: ; 105038 (41:5038)
|
|
ld a, $20
|
|
ld [rJOYP], a
|
|
rept 2
|
|
ld a, [rJOYP]
|
|
endr
|
|
cpl
|
|
and $f
|
|
swap a
|
|
ld b, a
|
|
ld a, $10
|
|
ld [rJOYP], a
|
|
rept 6
|
|
ld a, [rJOYP]
|
|
endr
|
|
cpl
|
|
and $f
|
|
or b
|
|
ld c, a
|
|
ld a, [hMoneyTemp]
|
|
xor c
|
|
and c
|
|
ld [hMoneyTemp + 1], a
|
|
ld a, c
|
|
ld [hMoneyTemp], a
|
|
ld a, $30
|
|
ld [rJOYP], a
|
|
ret
|
|
|
|
Function105069: ; 105069 (41:5069)
|
|
call GetMysteryGiftBank
|
|
ld d, $0
|
|
ld b, CHECK_FLAG
|
|
ld hl, sMysteryGiftDecorationsReceived
|
|
predef_id FlagPredef
|
|
push hl
|
|
push bc
|
|
call Predef
|
|
call CloseSRAM
|
|
ld a, c
|
|
and a
|
|
pop bc
|
|
pop hl
|
|
ret nz
|
|
call GetMysteryGiftBank
|
|
ld b, SET_FLAG
|
|
predef FlagPredef
|
|
call CloseSRAM
|
|
xor a
|
|
ret
|
|
|
|
Function105091: ; 105091 (41:5091)
|
|
call GetMysteryGiftBank
|
|
ld c, $0
|
|
.loop
|
|
push bc
|
|
ld d, $0
|
|
ld b, CHECK_FLAG
|
|
ld hl, sMysteryGiftDecorationsReceived
|
|
predef FlagPredef
|
|
ld a, c
|
|
and a
|
|
pop bc
|
|
jr z, .skip
|
|
push bc
|
|
callab SetSpecificDecorationFlag
|
|
pop bc
|
|
.skip
|
|
inc c
|
|
ld a, c
|
|
cp Trophys - DecorationIDs
|
|
jr c, .loop
|
|
jp CloseSRAM
|
|
|
|
Special_UnlockMysteryGift: ; 1050b9
|
|
call GetMysteryGiftBank
|
|
ld hl, sMysteryGiftUnlocked
|
|
ld a, [hl]
|
|
inc a
|
|
jr nz, .ok
|
|
ld [hld], a
|
|
ld [hl], a
|
|
.ok
|
|
jp CloseSRAM
|
|
; 1050c8
|
|
|
|
Function1050c8: ; 1050c8
|
|
call GetMysteryGiftBank
|
|
ld a, [sNumDailyMysteryGiftPartnerIDs]
|
|
cp $ff
|
|
jr z, .okay
|
|
xor a
|
|
ld [sNumDailyMysteryGiftPartnerIDs], a
|
|
.okay
|
|
jp CloseSRAM
|
|
; 1050d9
|
|
|
|
|
|
BackupMysteryGift: ; 1050d9
|
|
call GetMysteryGiftBank
|
|
ld hl, sMysteryGiftItem
|
|
ld de, sBackupMysteryGiftItem
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
ld a, [hl]
|
|
ld [de], a
|
|
jp CloseSRAM
|
|
; 1050ea
|
|
|
|
|
|
RestoreMysteryGift: ; 1050ea (41:50ea)
|
|
call GetMysteryGiftBank
|
|
ld hl, sBackupMysteryGiftItem
|
|
ld de, sMysteryGiftItem
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
ld a, [hl]
|
|
ld [de], a
|
|
jp CloseSRAM
|
|
|
|
Function1050fb: ; 1050fb (41:50fb)
|
|
ld hl, wMysteryGiftTrainerData
|
|
xor a
|
|
ld b, wMysteryGiftTrainerDataEnd - wMysteryGiftTrainerData
|
|
.loop
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .loop
|
|
ret
|
|
|
|
|
|
GetMysteryGiftBank: ; 105106
|
|
ld a, BANK(sBackupMysteryGiftItem)
|
|
jp GetSRAMBank
|
|
; 10510b
|
|
|
|
|
|
Function10510b: ; 10510b (41:510b)
|
|
ld a, BANK(sPokemonData)
|
|
call GetSRAMBank
|
|
ld de, OverworldMap
|
|
ld bc, sPokemonData + PartyMons - wPokemonData
|
|
ld hl, sPokemonData + PartySpecies - wPokemonData
|
|
.asm_105119
|
|
ld a, [hli]
|
|
cp $ff
|
|
jr z, .asm_105148
|
|
cp EGG
|
|
jr z, .asm_10513e
|
|
push hl
|
|
ld hl, MON_LEVEL
|
|
add hl, bc
|
|
ld a, [hl]
|
|
ld [de], a
|
|
inc de
|
|
ld hl, MON_SPECIES
|
|
add hl, bc
|
|
ld a, [hl]
|
|
ld [de], a
|
|
inc de
|
|
ld hl, MON_MOVES
|
|
add hl, bc
|
|
push bc
|
|
ld bc, NUM_MOVES
|
|
call CopyBytes
|
|
pop bc
|
|
pop hl
|
|
.asm_10513e
|
|
push hl
|
|
ld hl, PARTYMON_STRUCT_LENGTH
|
|
add hl, bc
|
|
ld b, h
|
|
ld c, l
|
|
pop hl
|
|
jr .asm_105119
|
|
.asm_105148
|
|
ld a, $ff
|
|
ld [de], a
|
|
ld a, $26
|
|
ld [wca00], a
|
|
jp CloseSRAM
|
|
|
|
Function105153: ; 105153 (41:5153)
|
|
call ClearBGPalettes
|
|
call DisableLCD
|
|
ld hl, MysteryGiftGFX
|
|
ld de, VTiles2 tile $00
|
|
ld a, BANK(MysteryGiftGFX)
|
|
ld bc, Function105688 - MysteryGiftGFX
|
|
call FarCopyBytes
|
|
hlcoord 0, 0
|
|
ld a, $42
|
|
ld bc, SCREEN_HEIGHT * SCREEN_WIDTH
|
|
call ByteFill
|
|
hlcoord 3, 7
|
|
lb bc, 9, 15
|
|
call ClearBox
|
|
hlcoord 0, 0
|
|
ld a, $0
|
|
ld [hli], a
|
|
inc a
|
|
ld [hl], a
|
|
hlcoord 0, 1
|
|
inc a
|
|
ld [hli], a
|
|
inc a
|
|
ld [hl], a
|
|
hlcoord 7, 1
|
|
ld a, $12
|
|
call Function10522e
|
|
hlcoord 2, 2
|
|
ld a, $17
|
|
call Function105236
|
|
hlcoord 2, 3
|
|
ld a, $27
|
|
call Function105236
|
|
hlcoord 9, 4
|
|
ld a, $37
|
|
ld [hli], a
|
|
inc a
|
|
ld [hl], a
|
|
hlcoord 1, 2
|
|
ld [hl], $4
|
|
hlcoord 1, 3
|
|
ld a, $5
|
|
call Function105246
|
|
ld a, $9
|
|
hlcoord 18, 5
|
|
call Function105242
|
|
hlcoord 2, 5
|
|
ld a, $b
|
|
call Function105251
|
|
hlcoord 2, 16
|
|
ld a, $7
|
|
call Function105251
|
|
hlcoord 2, 5
|
|
ld a, $d
|
|
call Function10522e
|
|
hlcoord 7, 5
|
|
ld [hl], $c
|
|
hlcoord 18, 5
|
|
ld [hl], $a
|
|
hlcoord 18, 16
|
|
ld [hl], $8
|
|
hlcoord 1, 16
|
|
ld [hl], $6
|
|
hlcoord 2, 6
|
|
ld a, $3a
|
|
call Function105251
|
|
hlcoord 2, 15
|
|
ld a, $40
|
|
call Function105251
|
|
hlcoord 2, 6
|
|
ld a, $3c
|
|
call Function10523e
|
|
hlcoord 17, 6
|
|
ld a, $3e
|
|
call Function10523e
|
|
hlcoord 2, 6
|
|
ld [hl], $39
|
|
hlcoord 17, 6
|
|
ld [hl], $3b
|
|
hlcoord 2, 15
|
|
ld [hl], $3f
|
|
hlcoord 17, 15
|
|
ld [hl], $41
|
|
call EnableLCD
|
|
call WaitBGMap
|
|
ld b, SCGB_1D
|
|
call GetSGBLayout
|
|
call SetPalettes
|
|
ret
|
|
|
|
Function10522e: ; 10522e (41:522e)
|
|
ld b, $5
|
|
jr asm_105238
|
|
; 105232 (41:5232)
|
|
|
|
Function105232: ; unreferenced
|
|
ld b, 6
|
|
jr asm_105238
|
|
|
|
Function105236: ; 105236 (41:5236)
|
|
ld b, $10
|
|
|
|
asm_105238: ; 105238 (41:5238)
|
|
ld [hli], a
|
|
inc a
|
|
dec b
|
|
jr nz, asm_105238
|
|
ret
|
|
|
|
Function10523e: ; 10523e (41:523e)
|
|
ld b, $9
|
|
jr asm_105248
|
|
|
|
Function105242: ; 105242 (41:5242)
|
|
ld b, $b
|
|
jr asm_105248
|
|
|
|
Function105246: ; 105246 (41:5246)
|
|
ld b, $e
|
|
|
|
asm_105248: ; 105248 (41:5248)
|
|
ld [hl], a
|
|
ld de, $14
|
|
add hl, de
|
|
dec b
|
|
jr nz, asm_105248
|
|
ret
|
|
|
|
Function105251: ; 105251 (41:5251)
|
|
ld b, $10
|
|
.asm_105253
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_105253
|
|
ret
|
|
|
|
MysteryGiftGFX: ; 105258
|
|
INCBIN "gfx/misc/mystery_gift.2bpp"
|
|
|
|
|
|
Function105688: ; 105688 (41:5688)
|
|
call ClearTileMap
|
|
call ClearSprites
|
|
call WaitBGMap
|
|
call Function1057d7
|
|
hlcoord 3, 8
|
|
ld de, String_10572e
|
|
call PlaceString
|
|
call WaitBGMap
|
|
call Function10578c
|
|
call Function1050fb
|
|
ld a, $24
|
|
ld [wca02], a
|
|
ld a, [rIE]
|
|
push af
|
|
call Function104c2d
|
|
ld d, a
|
|
xor a
|
|
ld [rIF], a
|
|
pop af
|
|
ld [rIE], a
|
|
ld a, d
|
|
cp $10
|
|
jp z, Function105712
|
|
cp $6c
|
|
jp nz, Function10571a
|
|
call Function1056eb
|
|
ld c, 60
|
|
call DelayFrames
|
|
call Function105777
|
|
ld hl, Text_10575e
|
|
call PrintText
|
|
ld de, wMysteryGiftTrainerData
|
|
callba Function8ac70
|
|
ld a, c
|
|
ld [wd265], a
|
|
ld hl, Text_105768
|
|
jr c, asm_105726
|
|
ld hl, Text_105763
|
|
jr asm_105726
|
|
|
|
Function1056eb: ; 1056eb (41:56eb)
|
|
ld c, $10
|
|
.asm_1056ed
|
|
ld hl, Sprites
|
|
ld b, $8
|
|
.asm_1056f2
|
|
dec [hl]
|
|
rept 4
|
|
inc hl
|
|
endr
|
|
dec b
|
|
jr nz, .asm_1056f2
|
|
ld hl, Sprites + $20
|
|
ld b, $8
|
|
.asm_1056ff
|
|
inc [hl]
|
|
rept 4
|
|
inc hl
|
|
endr
|
|
dec b
|
|
jr nz, .asm_1056ff
|
|
dec c
|
|
ret z
|
|
push bc
|
|
ld c, 4
|
|
call DelayFrames
|
|
pop bc
|
|
jr .asm_1056ed
|
|
|
|
Function105712: ; 105712 (41:5712)
|
|
call Function105777
|
|
ld hl, Text_10576d
|
|
jr asm_105726
|
|
|
|
Function10571a: ; 10571a (41:571a)
|
|
call Function105777
|
|
ld hl, Text_105772
|
|
call PrintText
|
|
jp Function105688
|
|
|
|
asm_105726: ; 105726 (41:5726)
|
|
call PrintText
|
|
ld a, $e3
|
|
ld [rLCDC], a
|
|
ret
|
|
; 10572e (41:572e)
|
|
|
|
String_10572e: ; 10572e
|
|
db "エーボタン¯おすと"
|
|
next "つうしん", $4a, "おこなわれるよ!"
|
|
next "ビーボタン¯おすと"
|
|
next "つうしん¯ちゅうし します"
|
|
db "@"
|
|
|
|
; 10575e
|
|
|
|
Text_10575e: ; 10575e
|
|
text_jump UnknownText_0x1c051a
|
|
db "@"
|
|
|
|
Text_105763: ; 105763
|
|
text_jump UnknownText_0x1c0531
|
|
db "@"
|
|
|
|
Text_105768: ; 105768
|
|
text_jump UnknownText_0x1c0555
|
|
db "@"
|
|
|
|
Text_10576d: ; 10576d
|
|
text_jump UnknownText_0x1c0573
|
|
db "@"
|
|
|
|
Text_105772: ; 105772
|
|
text_jump UnknownText_0x1c0591
|
|
db "@"
|
|
; 105777
|
|
|
|
Function105777: ; 105777 (41:5777)
|
|
call ClearSprites
|
|
call ClearTileMap
|
|
call EnableLCD
|
|
call WaitBGMap
|
|
ld b, SCGB_08
|
|
call GetSGBLayout
|
|
call SetPalettes
|
|
ret
|
|
|
|
Function10578c: ; 10578c (41:578c)
|
|
ld de, OverworldMap
|
|
ld a, BANK(sPlayerData)
|
|
call GetSRAMBank
|
|
ld hl, sPlayerData + PlayerName - wPlayerData
|
|
ld bc, NAME_LENGTH
|
|
call CopyBytes
|
|
ld hl, sPlayerData + PlayerID - wPlayerData
|
|
ld bc, 2
|
|
call CopyBytes
|
|
ld hl, sPlayerData + wSecretID - wPlayerData
|
|
ld bc, 2
|
|
call CopyBytes
|
|
call CloseSRAM
|
|
ld a, BANK(sCrystalData)
|
|
call GetSRAMBank
|
|
ld a, [sCrystalData + 0]
|
|
ld [de], a
|
|
inc de
|
|
ld a, $4
|
|
call GetSRAMBank
|
|
ld hl, $a603
|
|
ld bc, $8
|
|
call CopyBytes
|
|
ld hl, $a007
|
|
ld bc, $c
|
|
call CopyBytes
|
|
call CloseSRAM
|
|
ret
|
|
|
|
Function1057d7: ; 1057d7 (41:57d7)
|
|
call ClearBGPalettes
|
|
call DisableLCD
|
|
ld hl, MysteryGiftJP_GFX
|
|
ld de, VTiles2 tile $00
|
|
ld a, BANK(MysteryGiftJP_GFX)
|
|
lb bc, 4, 0
|
|
call FarCopyBytes
|
|
ld hl, MysteryGiftJP_GFX + $400
|
|
ld de, VTiles0 tile $00
|
|
ld a, BANK(MysteryGiftJP_GFX)
|
|
ld bc, $80
|
|
call FarCopyBytes
|
|
hlcoord 0, 0
|
|
ld a, $3f
|
|
ld bc, SCREEN_HEIGHT * SCREEN_WIDTH
|
|
call ByteFill
|
|
hlcoord 3, 7
|
|
lb bc, 9, 15
|
|
call ClearBox
|
|
hlcoord 0, 0
|
|
ld a, $0
|
|
ld [hli], a
|
|
inc a
|
|
ld [hl], a
|
|
hlcoord 0, 1
|
|
inc a
|
|
ld [hli], a
|
|
inc a
|
|
ld [hl], a
|
|
hlcoord 4, 2
|
|
ld a, $13
|
|
call Function1058ca
|
|
hlcoord 4, 3
|
|
ld a, $1e
|
|
call Function1058ce
|
|
hlcoord 4, 4
|
|
ld a, $2a
|
|
call Function1058ce
|
|
hlcoord 1, 2
|
|
ld [hl], $4
|
|
hlcoord 1, 3
|
|
ld a, $5
|
|
call Function1058de
|
|
ld a, $9
|
|
hlcoord 18, 5
|
|
call Function1058da
|
|
hlcoord 2, 5
|
|
ld a, $b
|
|
call Function1058e9
|
|
hlcoord 2, 16
|
|
ld a, $7
|
|
call Function1058e9
|
|
hlcoord 2, 5
|
|
ld a, $d
|
|
call Function1058c6
|
|
hlcoord 8, 5
|
|
ld [hl], $c
|
|
hlcoord 18, 5
|
|
ld [hl], $a
|
|
hlcoord 18, 16
|
|
ld [hl], $8
|
|
hlcoord 1, 16
|
|
ld [hl], $6
|
|
hlcoord 2, 6
|
|
ld a, $37
|
|
call Function1058e9
|
|
hlcoord 2, 15
|
|
ld a, $3d
|
|
call Function1058e9
|
|
hlcoord 2, 6
|
|
ld a, $39
|
|
call Function1058d6
|
|
hlcoord 17, 6
|
|
ld a, $3b
|
|
call Function1058d6
|
|
hlcoord 2, 6
|
|
ld [hl], $36
|
|
hlcoord 17, 6
|
|
ld [hl], $38
|
|
hlcoord 2, 15
|
|
ld [hl], $3c
|
|
hlcoord 17, 15
|
|
ld [hl], $3e
|
|
ld de, Sprites
|
|
ld hl, OAM_1058f0
|
|
ld bc, $40
|
|
call CopyBytes
|
|
call EnableLCD
|
|
call WaitBGMap
|
|
ld b, $2
|
|
callba Function4930f
|
|
jp SetPalettes
|
|
|
|
Function1058c6: ; 1058c6 (41:58c6)
|
|
ld b, $6
|
|
jr asm_1058d0
|
|
|
|
Function1058ca: ; 1058ca (41:58ca)
|
|
ld b, $b
|
|
jr asm_1058d0
|
|
|
|
Function1058ce: ; 1058ce (41:58ce)
|
|
ld b, $c
|
|
|
|
asm_1058d0: ; 1058d0 (41:58d0)
|
|
ld [hli], a
|
|
inc a
|
|
dec b
|
|
jr nz, asm_1058d0
|
|
ret
|
|
|
|
Function1058d6: ; 1058d6 (41:58d6)
|
|
ld b, $9
|
|
jr asm_1058e0
|
|
|
|
Function1058da: ; 1058da (41:58da)
|
|
ld b, $b
|
|
jr asm_1058e0
|
|
|
|
Function1058de: ; 1058de (41:58de)
|
|
ld b, $e
|
|
|
|
asm_1058e0: ; 1058e0 (41:58e0)
|
|
ld [hl], a
|
|
ld de, SCREEN_WIDTH
|
|
add hl, de
|
|
dec b
|
|
jr nz, asm_1058e0
|
|
ret
|
|
|
|
Function1058e9: ; 1058e9 (41:58e9)
|
|
ld b, $10
|
|
.asm_1058eb
|
|
ld [hli], a
|
|
dec b
|
|
jr nz, .asm_1058eb
|
|
ret
|
|
; 1058f0 (41:58f0)
|
|
|
|
OAM_1058f0: ; 1058f0
|
|
db $11, $34, $00, $00
|
|
db $11, $3c, $01, $00
|
|
db $11, $44, $02, $00
|
|
db $11, $4c, $03, $00
|
|
db $19, $34, $04, $00
|
|
db $19, $3c, $05, $00
|
|
db $19, $44, $06, $00
|
|
db $19, $4c, $07, $00
|
|
db $01, $5c, $00, $00
|
|
db $01, $64, $01, $00
|
|
db $01, $6c, $02, $00
|
|
db $01, $74, $03, $00
|
|
db $09, $5c, $04, $00
|
|
db $09, $64, $05, $00
|
|
db $09, $6c, $06, $00
|
|
db $09, $74, $07, $00
|
|
|
|
; japanese mystery gift gfx
|
|
MysteryGiftJP_GFX: ; 105930
|
|
INCBIN "gfx/misc/mystery_gift_jp.2bpp"
|