mirror of https://github.com/pret/pokecrystal.git
2561 lines
37 KiB
NASM
Executable File
2561 lines
37 KiB
NASM
Executable File
_CardFlip: ; e00ee (38:40ee)
|
|
ld hl, Options
|
|
set 4, [hl]
|
|
call ClearBGPalettes
|
|
call ClearTileMap
|
|
call ClearSprites
|
|
ld de, MUSIC_NONE
|
|
call PlayMusic
|
|
call DelayFrame
|
|
call DisableLCD
|
|
call LoadStandardFont
|
|
call LoadFontsExtra
|
|
ld hl, LZ_e0d16
|
|
ld de, VTiles2 tile $00
|
|
call Decompress
|
|
ld hl, LZ_e0ea8
|
|
ld de, VTiles2 tile $3e
|
|
call Decompress
|
|
ld hl, LZ_e0cdb
|
|
ld de, VTiles0 tile $00
|
|
call Decompress
|
|
ld hl, GFX_e0cf6
|
|
ld de, VTiles1 tile $6f
|
|
ld bc, $10
|
|
call CopyBytes
|
|
ld hl, GFX_e0d06
|
|
ld de, VTiles1 tile $75
|
|
ld bc, $10
|
|
call CopyBytes
|
|
call Functione0521
|
|
call Functione04c1
|
|
call Functione0c37
|
|
call EnableLCD
|
|
call Function3200
|
|
ld a, $e4
|
|
call DmgToCgbBGPals
|
|
ld de, $e4e4
|
|
call DmgToCgbObjPals
|
|
call DelayFrame
|
|
xor a
|
|
ld [wJumptableIndex], a
|
|
ld a, $2
|
|
ld [wcf64], a
|
|
ld [wcf65], a
|
|
ld de, MUSIC_GAME_CORNER
|
|
call PlayMusic
|
|
.MasterLoop
|
|
ld a, [wJumptableIndex]
|
|
bit 7, a
|
|
jr nz, .leavethegame
|
|
call .CardFlip
|
|
jr .MasterLoop
|
|
.leavethegame
|
|
call WaitSFX
|
|
ld de, SFX_QUIT_SLOTS
|
|
call PlaySFX
|
|
call WaitSFX
|
|
call ClearBGPalettes
|
|
ld hl, Options
|
|
res 4, [hl]
|
|
ret
|
|
|
|
.CardFlip: ; e0191 (38:4191)
|
|
ld a, [wJumptableIndex]
|
|
ld e, a
|
|
ld d, 0
|
|
ld hl, .Jumptable
|
|
rept 2
|
|
add hl, de
|
|
endr
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
jp [hl]
|
|
; e01a0 (38:41a0)
|
|
|
|
.Jumptable: ; e01a0
|
|
dw .AskPlayWithThree
|
|
dw .DeductCoins
|
|
dw .ChooseACard
|
|
dw .PlaceYourBet
|
|
dw .CheckTheCard
|
|
dw .TabulateTheResult
|
|
dw .PlayAgain
|
|
dw .Quit
|
|
; e01b0
|
|
|
|
.Increment: ; e01b0
|
|
ld hl, wJumptableIndex
|
|
inc [hl]
|
|
ret
|
|
; e01b5
|
|
|
|
.AskPlayWithThree: ; e01b5
|
|
ld hl, .PlayWithThreeCoinsText
|
|
call Functione0489
|
|
call YesNoBox
|
|
jr c, .SaidNo
|
|
call Functione0366
|
|
call .Increment
|
|
ret
|
|
|
|
.SaidNo
|
|
ld a, $7
|
|
ld [wJumptableIndex], a
|
|
ret
|
|
; e01cd
|
|
|
|
.PlayWithThreeCoinsText: ; 0xe01cd
|
|
; Play with three coins?
|
|
text_jump UnknownText_0x1c5793
|
|
db "@"
|
|
; 0xe01d2
|
|
|
|
.DeductCoins: ; e01d2
|
|
ld a, [Coins]
|
|
ld h, a
|
|
ld a, [Coins + 1]
|
|
ld l, a
|
|
ld a, h
|
|
and a
|
|
jr nz, .deduct ; You have at least 256 coins.
|
|
ld a, l
|
|
cp 3
|
|
jr nc, .deduct ; You have at least 3 coins.
|
|
ld hl, .NotEnoughCoinsText
|
|
call Functione0489
|
|
ld a, $7
|
|
ld [wJumptableIndex], a
|
|
ret
|
|
|
|
.deduct
|
|
ld de, -3
|
|
add hl, de
|
|
ld a, h
|
|
ld [Coins], a
|
|
ld a, l
|
|
ld [Coins + 1], a
|
|
ld de, SFX_TRANSACTION
|
|
call PlaySFX
|
|
xor a
|
|
ld [hBGMapMode], a
|
|
call Functione049c
|
|
ld a, $1
|
|
ld [hBGMapMode], a
|
|
call WaitSFX
|
|
call .Increment
|
|
ret
|
|
; e0212
|
|
|
|
.NotEnoughCoinsText: ; 0xe0212
|
|
; Not enough coins…
|
|
text_jump UnknownText_0x1c57ab
|
|
db "@"
|
|
; 0xe0217
|
|
|
|
.ChooseACard: ; e0217
|
|
xor a
|
|
ld [hBGMapMode], a
|
|
hlcoord 0, 0
|
|
lb bc, 12, 9
|
|
call Functione04e5
|
|
hlcoord 9, 0
|
|
ld bc, SCREEN_WIDTH
|
|
ld a, [wc6e8]
|
|
call AddNTimes
|
|
ld [hl], $f5
|
|
ld a, $1
|
|
ld [hBGMapMode], a
|
|
ld c, 20
|
|
call DelayFrames
|
|
hlcoord 2, 0
|
|
call Functione03c1
|
|
ld a, $1
|
|
ld [hBGMapMode], a
|
|
ld c, 20
|
|
call DelayFrames
|
|
hlcoord 2, 6
|
|
call Functione03c1
|
|
call WaitBGMap
|
|
ld hl, .ChooseACardText
|
|
call Functione0489
|
|
xor a
|
|
ld [wcf66], a
|
|
.loop
|
|
call JoyTextDelay
|
|
ld a, [hJoyLast]
|
|
and A_BUTTON
|
|
jr nz, .next
|
|
ld de, SFX_KINESIS
|
|
call PlaySFX
|
|
call Functione0849
|
|
ld c, 4
|
|
call DelayFrames
|
|
ld hl, wcf66
|
|
ld a, [hl]
|
|
xor $1
|
|
ld [hl], a
|
|
jr .loop
|
|
|
|
.next
|
|
ld de, SFX_SLOT_MACHINE_START
|
|
call PlaySFX
|
|
ld a, $3
|
|
.loop2
|
|
push af
|
|
call Functione0849
|
|
ld c, 4
|
|
call DelayFrames
|
|
call ClearSprites
|
|
ld c, 4
|
|
call DelayFrames
|
|
pop af
|
|
dec a
|
|
jr nz, .loop2
|
|
ld hl, wcf66
|
|
ld a, [hl]
|
|
push af
|
|
xor $1
|
|
ld [hl], a
|
|
call Functione03ac
|
|
lb bc, 6, 5
|
|
call Functione04e5
|
|
pop af
|
|
ld [wcf66], a
|
|
call .Increment
|
|
ret
|
|
; e02b2
|
|
|
|
.ChooseACardText: ; 0xe02b2
|
|
; Choose a card.
|
|
text_jump UnknownText_0x1c57be
|
|
db "@"
|
|
; 0xe02b7
|
|
|
|
.PlaceYourBet: ; e02b7
|
|
ld hl, .PlaceYourBetText
|
|
call Functione0489
|
|
.betloop
|
|
call JoyTextDelay
|
|
ld a, [hJoyLast]
|
|
and A_BUTTON
|
|
jr nz, .betdone
|
|
call Functione089c
|
|
call Functione0960
|
|
call DelayFrame
|
|
jr .betloop
|
|
|
|
.betdone
|
|
call .Increment
|
|
ret
|
|
; e02d5
|
|
|
|
.PlaceYourBetText: ; 0xe02d5
|
|
; Place your bet.
|
|
text_jump UnknownText_0x1c57ce
|
|
db "@"
|
|
; 0xe02da
|
|
|
|
.CheckTheCard: ; e02da
|
|
xor a
|
|
ld [hVBlankCounter], a
|
|
call Functione0960
|
|
call WaitSFX
|
|
ld de, SFX_CHOOSE_A_CARD
|
|
call PlaySFX
|
|
call WaitSFX
|
|
ld a, [wc6e8]
|
|
ld e, a
|
|
ld d, 0
|
|
ld hl, wc6d0
|
|
rept 2
|
|
add hl, de
|
|
endr
|
|
ld a, [wcf66]
|
|
ld e, a
|
|
add hl, de
|
|
ld a, [hl]
|
|
ld [CurEnemyMoveNum], a
|
|
ld e, a
|
|
ld hl, wc6ea
|
|
add hl, de
|
|
ld [hl], $1
|
|
call Functione03ac
|
|
call Functione03ec
|
|
call Function3200
|
|
call .Increment
|
|
ret
|
|
; e0314
|
|
|
|
.TabulateTheResult: ; e0314
|
|
call Functione0637
|
|
call WaitPressAorB_BlinkCursor
|
|
call .Increment
|
|
ret
|
|
; e031e
|
|
|
|
.PlayAgain: ; e031e
|
|
call ClearSprites
|
|
ld hl, .PlayAgainText
|
|
call Functione0489
|
|
call YesNoBox
|
|
jr nc, .Continue
|
|
call .Increment
|
|
ret
|
|
|
|
.Continue
|
|
ld a, [wc6e8]
|
|
inc a
|
|
ld [wc6e8], a
|
|
cp $c
|
|
jr c, .KeepTheCurrentDeck
|
|
call Functione04c1
|
|
ld a, $1
|
|
ld [hBGMapMode], a
|
|
call Functione0366
|
|
ld hl, .CardsShuffledText
|
|
call PrintText
|
|
jr .LoopAround
|
|
|
|
.KeepTheCurrentDeck
|
|
call Functione0534
|
|
|
|
.LoopAround
|
|
ld a, $1
|
|
ld [wJumptableIndex], a
|
|
ret
|
|
; e0356
|
|
|
|
.PlayAgainText: ; 0xe0356
|
|
; Want to play again?
|
|
text_jump UnknownText_0x1c57df
|
|
db "@"
|
|
; 0xe035b
|
|
|
|
.CardsShuffledText: ; 0xe035b
|
|
; The cards have been shuffled.
|
|
text_jump UnknownText_0x1c57f4
|
|
db "@"
|
|
; 0xe0360
|
|
|
|
.Quit: ; e0360
|
|
ld hl, wJumptableIndex
|
|
set 7, [hl]
|
|
ret
|
|
; e0366
|
|
|
|
Functione0366: ; e0366
|
|
ld hl, wc6d0
|
|
ld bc, $18
|
|
xor a
|
|
call ByteFill
|
|
ld de, wc6d0
|
|
ld c, $17
|
|
.asm_e0375
|
|
call Random
|
|
and $1f
|
|
cp $18
|
|
jr nc, .asm_e0375
|
|
ld l, a
|
|
ld h, $0
|
|
add hl, de
|
|
ld a, [hl]
|
|
and a
|
|
jr nz, .asm_e0375
|
|
ld [hl], c
|
|
dec c
|
|
jr nz, .asm_e0375
|
|
xor a
|
|
ld [wc6e8], a
|
|
ld hl, wc6ea
|
|
ld bc, $18
|
|
call ByteFill
|
|
ret
|
|
; e0398
|
|
|
|
Functione0398: ; e0398
|
|
ld hl, 0
|
|
ld bc, 6
|
|
ld a, [wcf64]
|
|
call AddNTimes
|
|
ld b, $0
|
|
ld a, [wcf65]
|
|
ld c, a
|
|
add hl, bc
|
|
ret
|
|
; e03ac
|
|
|
|
Functione03ac: ; e03ac
|
|
ld a, [wcf66]
|
|
and a
|
|
jr nz, .asm_e03ba
|
|
hlcoord 2, 0
|
|
ld bc, $1018
|
|
jr .asm_e03c0
|
|
|
|
.asm_e03ba
|
|
hlcoord 2, 6
|
|
ld bc, $4018
|
|
|
|
.asm_e03c0
|
|
ret
|
|
; e03c1
|
|
|
|
Functione03c1: ; e03c1
|
|
xor a
|
|
ld [hBGMapMode], a
|
|
ld de, Unknown_e03ce
|
|
lb bc, 6, 5
|
|
call Functione04f7
|
|
ret
|
|
; e03ce
|
|
|
|
Unknown_e03ce: ; e03ce
|
|
db $08, $09, $09, $09, $0a
|
|
db $0b, $28, $2b, $28, $0c
|
|
db $0b, $2c, $2d, $2e, $0c
|
|
db $0b, $2f, $30, $31, $0c
|
|
db $0b, $32, $33, $34, $0c
|
|
db $0d, $0e, $0e, $0e, $0f
|
|
; e03ec
|
|
|
|
Functione03ec: ; e03ec
|
|
xor a
|
|
ld [hBGMapMode], a
|
|
push hl
|
|
push hl
|
|
ld de, Unknown_e043b
|
|
lb bc, 6, 5
|
|
call Functione04f7
|
|
ld a, [CurEnemyMoveNum]
|
|
ld e, a
|
|
ld d, 0
|
|
ld hl, Unknown_e0459
|
|
rept 2
|
|
add hl, de
|
|
endr
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld d, [hl]
|
|
pop hl
|
|
ld bc, $17
|
|
add hl, bc
|
|
ld [hl], e
|
|
ld bc, SCREEN_HEIGHT
|
|
add hl, bc
|
|
ld a, d
|
|
ld de, SCREEN_WIDTH
|
|
ld b, $3
|
|
.asm_e0418
|
|
push hl
|
|
ld c, $3
|
|
.asm_e041b
|
|
ld [hli], a
|
|
inc a
|
|
dec c
|
|
jr nz, .asm_e041b
|
|
pop hl
|
|
add hl, de
|
|
dec b
|
|
jr nz, .asm_e0418
|
|
pop hl
|
|
ld a, [hCGB]
|
|
and a
|
|
ret z
|
|
ld de, AttrMap - TileMap
|
|
add hl, de
|
|
ld a, [CurEnemyMoveNum]
|
|
and 3
|
|
inc a
|
|
lb bc, 6, 5
|
|
call Functione04e7
|
|
ret
|
|
; e043b
|
|
|
|
Unknown_e043b: ; e043b
|
|
db $18, $19, $19, $19, $1a
|
|
db $1b, $35, $7f, $7f, $1c
|
|
db $0b, $28, $28, $28, $0c
|
|
db $0b, $28, $28, $28, $0c
|
|
db $0b, $28, $28, $28, $0c
|
|
db $1d, $1e, $1e, $1e, $1f
|
|
; e0459
|
|
|
|
Unknown_e0459: ; e0459
|
|
db $f7,$4e, $f7,$57, $f7,$69, $f7,$60
|
|
db $f8,$4e, $f8,$57, $f8,$69, $f8,$60
|
|
db $f9,$4e, $f9,$57, $f9,$69, $f9,$60
|
|
db $fa,$4e, $fa,$57, $fa,$69, $fa,$60
|
|
db $fb,$4e, $fb,$57, $fb,$69, $fb,$60
|
|
db $fc,$4e, $fc,$57, $fc,$69, $fc,$60
|
|
; e0489
|
|
|
|
Functione0489: ; e0489
|
|
push hl
|
|
hlcoord 0, 12
|
|
ld b, $4
|
|
ld c, $12
|
|
call TextBox
|
|
pop hl
|
|
call PrintTextBoxText
|
|
call Functione049c
|
|
ret
|
|
; e049c
|
|
|
|
Functione049c: ; e049c
|
|
hlcoord 9, 15
|
|
ld b, $1
|
|
ld c, $9
|
|
call TextBox
|
|
hlcoord 10, 16
|
|
ld de, String_e04bc
|
|
call PlaceString
|
|
hlcoord 15, 16
|
|
ld de, Coins
|
|
lb bc, PRINTNUM_LEADINGZEROS | 2, 4
|
|
call PrintNum
|
|
ret
|
|
; e04bc
|
|
|
|
String_e04bc:
|
|
db "COIN@"
|
|
; e04c1
|
|
|
|
Functione04c1: ; e04c1 (38:44c1)
|
|
xor a
|
|
ld [hBGMapMode], a
|
|
hlcoord 0, 0
|
|
ld bc, SCREEN_HEIGHT * SCREEN_WIDTH
|
|
ld a, $29
|
|
call ByteFill
|
|
hlcoord 9, 0
|
|
ld de, Unknown_e110c
|
|
lb bc, 12, 11
|
|
call Functione04f7
|
|
hlcoord 0, 12
|
|
lb bc, 4, 18
|
|
call TextBox
|
|
ret
|
|
; e04e5 (38:44e5)
|
|
|
|
Functione04e5: ; e04e5
|
|
ld a, $29
|
|
|
|
Functione04e7: ; e04e7 (38:44e7)
|
|
push bc
|
|
push hl
|
|
.asm_e04e9
|
|
ld [hli], a
|
|
dec c
|
|
jr nz, .asm_e04e9
|
|
pop hl
|
|
ld bc, $14
|
|
add hl, bc
|
|
pop bc
|
|
dec b
|
|
jr nz, Functione04e7
|
|
ret
|
|
|
|
Functione04f7: ; e04f7 (38:44f7)
|
|
push bc
|
|
push hl
|
|
.asm_e04f9
|
|
ld a, [de]
|
|
inc de
|
|
ld [hli], a
|
|
dec c
|
|
jr nz, .asm_e04f9
|
|
pop hl
|
|
ld bc, $14
|
|
add hl, bc
|
|
pop bc
|
|
dec b
|
|
jr nz, Functione04f7
|
|
ret
|
|
; e0509 (38:4509)
|
|
|
|
Functione0509: ; e0509
|
|
ld de, Sprites
|
|
ld a, [hli]
|
|
.asm_e050d
|
|
push af
|
|
ld a, [hli]
|
|
add b
|
|
ld [de], a
|
|
inc de
|
|
ld a, [hli]
|
|
add c
|
|
ld [de], a
|
|
inc de
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
pop af
|
|
dec a
|
|
jr nz, .asm_e050d
|
|
ret
|
|
; e0521
|
|
|
|
Functione0521: ; e0521 (38:4521)
|
|
ld de, VTiles1 tile $76
|
|
ld hl, $8f62
|
|
ld bc, $9e
|
|
call CopyBytes
|
|
ld hl, $8ffe
|
|
xor a
|
|
ld [hli], a
|
|
ld [hl], a
|
|
ret
|
|
; e0534 (38:4534)
|
|
|
|
Functione0534: ; e0534
|
|
xor a
|
|
ld [hBGMapMode], a
|
|
ld a, [CurEnemyMoveNum]
|
|
ld e, a
|
|
ld d, 0
|
|
and 3
|
|
ld c, a
|
|
ld b, 0
|
|
ld a, e
|
|
and $1c
|
|
srl a
|
|
add Jumptable_e0553 % $100
|
|
ld l, a
|
|
ld a, 0
|
|
adc Jumptable_e0553 / $100
|
|
ld h, a
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
jp [hl]
|
|
; e0553
|
|
|
|
Jumptable_e0553: ; e0553
|
|
dw Functione055f
|
|
dw Functione0583
|
|
dw Functione05a7
|
|
dw Functione05cb
|
|
dw Functione05ef
|
|
dw Functione0613
|
|
; e055f
|
|
|
|
Functione055f: ; e055f
|
|
ld hl, wc6e6 + 8
|
|
add hl, de
|
|
ld a, [hl]
|
|
and a
|
|
jr nz, .asm_e0575
|
|
hlcoord 13, 3
|
|
rept 2
|
|
add hl, bc
|
|
endr
|
|
ld [hl], $36
|
|
ld bc, SCREEN_WIDTH
|
|
add hl, bc
|
|
ld [hl], $37
|
|
ret
|
|
|
|
.asm_e0575
|
|
hlcoord 13, 3
|
|
rept 2
|
|
add hl, bc
|
|
endr
|
|
ld [hl], $36
|
|
ld bc, SCREEN_WIDTH
|
|
add hl, bc
|
|
ld [hl], $3d
|
|
ret
|
|
; e0583
|
|
|
|
Functione0583: ; e0583
|
|
ld hl, wc6e6
|
|
add hl, de
|
|
ld a, [hl]
|
|
and a
|
|
jr nz, .asm_e0599
|
|
hlcoord 13, 4
|
|
rept 2
|
|
add hl, bc
|
|
endr
|
|
ld [hl], $3b
|
|
ld bc, SCREEN_WIDTH
|
|
add hl, bc
|
|
ld [hl], $3a
|
|
ret
|
|
|
|
.asm_e0599
|
|
hlcoord 13, 4
|
|
rept 2
|
|
add hl, bc
|
|
endr
|
|
ld [hl], $3d
|
|
ld bc, SCREEN_WIDTH
|
|
add hl, bc
|
|
ld [hl], $3a
|
|
ret
|
|
; e05a7
|
|
|
|
Functione05a7: ; e05a7
|
|
ld hl, wc6e6 + 8
|
|
add hl, de
|
|
ld a, [hl]
|
|
and a
|
|
jr nz, .asm_e05bd
|
|
hlcoord 13, 6
|
|
rept 2
|
|
add hl, bc
|
|
endr
|
|
ld [hl], $36
|
|
ld bc, SCREEN_WIDTH
|
|
add hl, bc
|
|
ld [hl], $38
|
|
ret
|
|
|
|
.asm_e05bd
|
|
hlcoord 13, 6
|
|
rept 2
|
|
add hl, bc
|
|
endr
|
|
ld [hl], $36
|
|
ld bc, SCREEN_WIDTH
|
|
add hl, bc
|
|
ld [hl], $3d
|
|
ret
|
|
; e05cb
|
|
|
|
Functione05cb: ; e05cb
|
|
ld hl, wc6e6
|
|
add hl, de
|
|
ld a, [hl]
|
|
and a
|
|
jr nz, .asm_e05e1
|
|
hlcoord 13, 7
|
|
rept 2
|
|
add hl, bc
|
|
endr
|
|
ld [hl], $3c
|
|
ld bc, SCREEN_WIDTH
|
|
add hl, bc
|
|
ld [hl], $3a
|
|
ret
|
|
|
|
.asm_e05e1
|
|
hlcoord 13, 7
|
|
rept 2
|
|
add hl, bc
|
|
endr
|
|
ld [hl], $3d
|
|
ld bc, SCREEN_WIDTH
|
|
add hl, bc
|
|
ld [hl], $3a
|
|
ret
|
|
; e05ef
|
|
|
|
Functione05ef: ; e05ef
|
|
ld hl, wc6e6 + 8
|
|
add hl, de
|
|
ld a, [hl]
|
|
and a
|
|
jr nz, .asm_e0605
|
|
hlcoord 13, 9
|
|
rept 2
|
|
add hl, bc
|
|
endr
|
|
ld [hl], $36
|
|
ld bc, SCREEN_WIDTH
|
|
add hl, bc
|
|
ld [hl], $39
|
|
ret
|
|
|
|
.asm_e0605
|
|
hlcoord 13, 9
|
|
rept 2
|
|
add hl, bc
|
|
endr
|
|
ld [hl], $36
|
|
ld bc, SCREEN_WIDTH
|
|
add hl, bc
|
|
ld [hl], $3d
|
|
ret
|
|
; e0613
|
|
|
|
Functione0613: ; e0613
|
|
ld hl, wc6e6
|
|
add hl, de
|
|
ld a, [hl]
|
|
and a
|
|
jr nz, .asm_e0629
|
|
hlcoord 13, 10
|
|
rept 2
|
|
add hl, bc
|
|
endr
|
|
ld [hl], $3c
|
|
ld bc, SCREEN_WIDTH
|
|
add hl, bc
|
|
ld [hl], $3a
|
|
ret
|
|
|
|
.asm_e0629
|
|
hlcoord 13, 10
|
|
rept 2
|
|
add hl, bc
|
|
endr
|
|
ld [hl], $3d
|
|
ld bc, SCREEN_WIDTH
|
|
add hl, bc
|
|
ld [hl], $3a
|
|
ret
|
|
; e0637
|
|
|
|
Functione0637: ; e0637
|
|
call Functione0398
|
|
add hl, hl
|
|
ld de, Jumptable_e0643
|
|
add hl, de
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
jp [hl]
|
|
; e0643
|
|
|
|
Jumptable_e0643: ; e0643
|
|
dw Functione06a3
|
|
dw Functione06a3
|
|
dw Functione06a6
|
|
dw Functione06a6
|
|
dw Functione06b0
|
|
dw Functione06b0
|
|
dw Functione06a3
|
|
dw Functione06a3
|
|
dw Functione06ec
|
|
dw Functione06f6
|
|
dw Functione0702
|
|
dw Functione070e
|
|
dw Functione06c2
|
|
dw Functione0722
|
|
dw Functione0770
|
|
dw Functione0774
|
|
dw Functione0778
|
|
dw Functione077c
|
|
dw Functione06c2
|
|
dw Functione072c
|
|
dw Functione0780
|
|
dw Functione0784
|
|
dw Functione0788
|
|
dw Functione078c
|
|
dw Functione06cc
|
|
dw Functione0738
|
|
dw Functione0790
|
|
dw Functione0794
|
|
dw Functione0798
|
|
dw Functione079c
|
|
dw Functione06cc
|
|
dw Functione0744
|
|
dw Functione07a0
|
|
dw Functione07a4
|
|
dw Functione07a8
|
|
dw Functione07ac
|
|
dw Functione06d8
|
|
dw Functione0750
|
|
dw Functione07b0
|
|
dw Functione07b4
|
|
dw Functione07b8
|
|
dw Functione07bc
|
|
dw Functione06d8
|
|
dw Functione075c
|
|
dw Functione07c0
|
|
dw Functione07c4
|
|
dw Functione07c8
|
|
dw Functione07cc
|
|
; e06a3
|
|
|
|
Functione06a3: ; e06a3
|
|
jp Functione07db
|
|
; e06a6
|
|
|
|
Functione06a6: ; e06a6
|
|
ld a, [CurEnemyMoveNum]
|
|
and $2
|
|
jp nz, Functione07db
|
|
jr Functione06ba
|
|
|
|
Functione06b0: ; e06b0
|
|
ld a, [CurEnemyMoveNum]
|
|
and $2
|
|
jr nz, Functione06ba
|
|
jp Functione07db
|
|
|
|
Functione06ba: ; e06ba
|
|
ld c, $6
|
|
ld de, SFX_2ND_PLACE
|
|
jp Functione07eb
|
|
; e06c2
|
|
|
|
Functione06c2: ; e06c2
|
|
ld a, [CurEnemyMoveNum]
|
|
and $18
|
|
jr z, Functione06e4
|
|
jp Functione07db
|
|
|
|
Functione06cc: ; e06cc
|
|
ld a, [CurEnemyMoveNum]
|
|
and $18
|
|
cp $8
|
|
jr z, Functione06e4
|
|
jp Functione07db
|
|
|
|
Functione06d8: ; e06d8
|
|
ld a, [CurEnemyMoveNum]
|
|
and $18
|
|
cp $10
|
|
jr z, Functione06e4
|
|
jp Functione07db
|
|
|
|
Functione06e4: ; e06e4
|
|
ld c, $9
|
|
ld de, SFX_2ND_PLACE
|
|
jp Functione07eb
|
|
; e06ec
|
|
|
|
Functione06ec: ; e06ec
|
|
ld a, [CurEnemyMoveNum]
|
|
and $3
|
|
jr z, Functione071a
|
|
jp Functione07db
|
|
|
|
Functione06f6: ; e06f6
|
|
ld a, [CurEnemyMoveNum]
|
|
and $3
|
|
cp $1
|
|
jr z, Functione071a
|
|
jp Functione07db
|
|
|
|
Functione0702: ; e0702
|
|
ld a, [CurEnemyMoveNum]
|
|
and $3
|
|
cp $2
|
|
jr z, Functione071a
|
|
jp Functione07db
|
|
|
|
Functione070e: ; e070e
|
|
ld a, [CurEnemyMoveNum]
|
|
and $3
|
|
cp $3
|
|
jr z, Functione071a
|
|
jp Functione07db
|
|
|
|
Functione071a: ; e071a
|
|
ld c, $c
|
|
ld de, SFX_2ND_PLACE
|
|
jp Functione07eb
|
|
; e0722
|
|
|
|
Functione0722: ; e0722
|
|
ld a, [CurEnemyMoveNum]
|
|
and $1c
|
|
jr z, Functione0768
|
|
jp Functione07db
|
|
|
|
Functione072c: ; e072c
|
|
ld a, [CurEnemyMoveNum]
|
|
and $1c
|
|
cp $4
|
|
jr z, Functione0768
|
|
jp Functione07db
|
|
|
|
Functione0738: ; e0738
|
|
ld a, [CurEnemyMoveNum]
|
|
and $1c
|
|
cp $8
|
|
jr z, Functione0768
|
|
jp Functione07db
|
|
|
|
Functione0744: ; e0744
|
|
ld a, [CurEnemyMoveNum]
|
|
and $1c
|
|
cp $c
|
|
jr z, Functione0768
|
|
jp Functione07db
|
|
|
|
Functione0750: ; e0750
|
|
ld a, [CurEnemyMoveNum]
|
|
and $1c
|
|
cp $10
|
|
jr z, Functione0768
|
|
jp Functione07db
|
|
|
|
Functione075c: ; e075c
|
|
ld a, [CurEnemyMoveNum]
|
|
and $1c
|
|
cp $14
|
|
jr z, Functione0768
|
|
jp Functione07db
|
|
|
|
Functione0768: ; e0768
|
|
ld c, $12
|
|
ld de, SFX_2ND_PLACE
|
|
jp Functione07eb
|
|
; e0770
|
|
|
|
|
|
Functione0770: ; e0770
|
|
ld e, $0
|
|
jr Functione07ce
|
|
|
|
Functione0774: ; e0774
|
|
ld e, $1
|
|
jr Functione07ce
|
|
|
|
Functione0778: ; e0778
|
|
ld e, $2
|
|
jr Functione07ce
|
|
|
|
Functione077c: ; e077c
|
|
ld e, $3
|
|
jr Functione07ce
|
|
|
|
Functione0780: ; e0780
|
|
ld e, $4
|
|
jr Functione07ce
|
|
|
|
Functione0784: ; e0784
|
|
ld e, $5
|
|
jr Functione07ce
|
|
|
|
Functione0788: ; e0788
|
|
ld e, $6
|
|
jr Functione07ce
|
|
|
|
Functione078c: ; e078c
|
|
ld e, $7
|
|
jr Functione07ce
|
|
|
|
Functione0790: ; e0790
|
|
ld e, $8
|
|
jr Functione07ce
|
|
|
|
Functione0794: ; e0794
|
|
ld e, $9
|
|
jr Functione07ce
|
|
|
|
Functione0798: ; e0798
|
|
ld e, $a
|
|
jr Functione07ce
|
|
|
|
Functione079c: ; e079c
|
|
ld e, $b
|
|
jr Functione07ce
|
|
|
|
Functione07a0: ; e07a0
|
|
ld e, $c
|
|
jr Functione07ce
|
|
|
|
Functione07a4: ; e07a4
|
|
ld e, $d
|
|
jr Functione07ce
|
|
|
|
Functione07a8: ; e07a8
|
|
ld e, $e
|
|
jr Functione07ce
|
|
|
|
Functione07ac: ; e07ac
|
|
ld e, $f
|
|
jr Functione07ce
|
|
|
|
Functione07b0: ; e07b0
|
|
ld e, $10
|
|
jr Functione07ce
|
|
|
|
Functione07b4: ; e07b4
|
|
ld e, $11
|
|
jr Functione07ce
|
|
|
|
Functione07b8: ; e07b8
|
|
ld e, $12
|
|
jr Functione07ce
|
|
|
|
Functione07bc: ; e07bc
|
|
ld e, $13
|
|
jr Functione07ce
|
|
|
|
Functione07c0: ; e07c0
|
|
ld e, $14
|
|
jr Functione07ce
|
|
|
|
Functione07c4: ; e07c4
|
|
ld e, $15
|
|
jr Functione07ce
|
|
|
|
Functione07c8: ; e07c8
|
|
ld e, $16
|
|
jr Functione07ce
|
|
|
|
Functione07cc: ; e07cc
|
|
ld e, $17
|
|
|
|
Functione07ce: ; e07ce
|
|
ld a, [CurEnemyMoveNum]
|
|
cp e
|
|
jr nz, Functione07db
|
|
ld c, $48
|
|
ld de, SFX_2ND_PLACE
|
|
jr Functione07eb
|
|
|
|
Functione07db: ; e07db
|
|
ld de, SFX_WRONG
|
|
call PlaySFX
|
|
ld hl, UnknownText_0xe0816
|
|
call Functione0489
|
|
call WaitSFX
|
|
ret
|
|
|
|
Functione07eb: ; e07eb
|
|
push bc
|
|
push de
|
|
ld hl, UnknownText_0xe0811
|
|
call Functione0489
|
|
pop de
|
|
call PlaySFX
|
|
call WaitSFX
|
|
pop bc
|
|
.asm_e07fb
|
|
push bc
|
|
call Functione0833
|
|
jr c, .asm_e0804
|
|
call Functione081b
|
|
|
|
.asm_e0804
|
|
call Functione049c
|
|
ld c, 2
|
|
call DelayFrames
|
|
pop bc
|
|
dec c
|
|
jr nz, .asm_e07fb
|
|
ret
|
|
; e0811
|
|
|
|
UnknownText_0xe0811: ; 0xe0811
|
|
; Yeah!
|
|
text_jump UnknownText_0x1c5813
|
|
db "@"
|
|
; 0xe0816
|
|
|
|
UnknownText_0xe0816: ; 0xe0816
|
|
; Darn…
|
|
text_jump UnknownText_0x1c581a
|
|
db "@"
|
|
; 0xe081b
|
|
|
|
Functione081b: ; e081b
|
|
ld a, [Coins]
|
|
ld h, a
|
|
ld a, [Coins + 1]
|
|
ld l, a
|
|
inc hl
|
|
ld a, h
|
|
ld [Coins], a
|
|
ld a, l
|
|
ld [Coins + 1], a
|
|
ld de, SFX_PAY_DAY
|
|
call PlaySFX
|
|
ret
|
|
; e0833
|
|
|
|
Functione0833: ; e0833
|
|
ld a, [Coins]
|
|
cp 9999 / $100
|
|
jr c, .asm_e0847
|
|
jr z, .asm_e083e
|
|
jr .asm_e0845
|
|
|
|
.asm_e083e
|
|
ld a, [Coins + 1]
|
|
cp 9999 % $100
|
|
jr c, .asm_e0847
|
|
|
|
.asm_e0845
|
|
scf
|
|
ret
|
|
|
|
.asm_e0847
|
|
and a
|
|
ret
|
|
; e0849
|
|
|
|
Functione0849: ; e0849
|
|
call Functione03ac
|
|
ld hl, Unknown_e0853
|
|
call Functione0509
|
|
ret
|
|
; e0853
|
|
|
|
Unknown_e0853: ; e0853
|
|
db 18
|
|
db $00, $00, $04, $00
|
|
db $00, $08, $06, $00
|
|
db $00, $10, $06, $00
|
|
db $00, $18, $06, $00
|
|
db $00, $20, $04, $20
|
|
db $08, $00, $05, $00
|
|
db $08, $20, $05, $20
|
|
db $10, $00, $05, $00
|
|
db $10, $20, $05, $20
|
|
db $18, $00, $05, $00
|
|
db $18, $20, $05, $20
|
|
db $20, $00, $05, $00
|
|
db $20, $20, $05, $20
|
|
db $28, $00, $04, $40
|
|
db $28, $08, $06, $40
|
|
db $28, $10, $06, $40
|
|
db $28, $18, $06, $40
|
|
db $28, $20, $04, $60
|
|
; e089c
|
|
|
|
Functione089c: ; e089c
|
|
ld hl, hJoyLast
|
|
ld a, [hl]
|
|
and D_LEFT
|
|
jp nz, Functione08b8
|
|
ld a, [hl]
|
|
and D_RIGHT
|
|
jp nz, Functione08ef
|
|
ld a, [hl]
|
|
and D_UP
|
|
jp nz, Functione090a
|
|
ld a, [hl]
|
|
and D_DOWN
|
|
jp nz, Functione093d
|
|
ret
|
|
; e08b8
|
|
|
|
Functione08b8: ; e08b8
|
|
ld hl, wcf65
|
|
ld a, [wcf64]
|
|
and a
|
|
jr z, .asm_e08d5
|
|
cp $1
|
|
jr z, .asm_e08cc
|
|
ld a, [hl]
|
|
and a
|
|
ret z
|
|
dec [hl]
|
|
jp Functione0959
|
|
|
|
.asm_e08cc
|
|
ld a, [hl]
|
|
cp $3
|
|
jr c, .asm_e08e2
|
|
dec [hl]
|
|
jp Functione0959
|
|
|
|
.asm_e08d5
|
|
ld a, [hl]
|
|
and $e
|
|
ld [hl], a
|
|
cp $3
|
|
jr c, .asm_e08e2
|
|
rept 2
|
|
dec [hl]
|
|
endr
|
|
jp Functione0959
|
|
|
|
.asm_e08e2
|
|
ld a, $2
|
|
ld [wcf64], a
|
|
ld a, $1
|
|
ld [wcf65], a
|
|
jp Functione0959
|
|
; e08ef
|
|
|
|
Functione08ef: ; e08ef
|
|
ld hl, wcf65
|
|
ld a, [wcf64]
|
|
and a
|
|
jr z, .asm_e08ff
|
|
ld a, [hl]
|
|
cp $5
|
|
ret nc
|
|
inc [hl]
|
|
jr Functione0959
|
|
|
|
.asm_e08ff
|
|
ld a, [hl]
|
|
and $e
|
|
ld [hl], a
|
|
cp $4
|
|
ret nc
|
|
rept 2
|
|
inc [hl]
|
|
endr
|
|
jr Functione0959
|
|
|
|
Functione090a: ; e090a
|
|
ld hl, wcf64
|
|
ld a, [wcf65]
|
|
and a
|
|
jr z, .asm_e0925
|
|
cp $1
|
|
jr z, .asm_e091d
|
|
ld a, [hl]
|
|
and a
|
|
ret z
|
|
dec [hl]
|
|
jr Functione0959
|
|
|
|
.asm_e091d
|
|
ld a, [hl]
|
|
cp $3
|
|
jr c, .asm_e0931
|
|
dec [hl]
|
|
jr Functione0959
|
|
|
|
.asm_e0925
|
|
ld a, [hl]
|
|
and $e
|
|
ld [hl], a
|
|
cp $3
|
|
jr c, .asm_e0931
|
|
rept 2
|
|
dec [hl]
|
|
endr
|
|
jr Functione0959
|
|
|
|
.asm_e0931
|
|
ld a, $1
|
|
ld [wcf64], a
|
|
ld a, $2
|
|
ld [wcf65], a
|
|
jr Functione0959
|
|
|
|
Functione093d: ; e093d
|
|
ld hl, wcf64
|
|
ld a, [wcf65]
|
|
and a
|
|
jr z, .asm_e0950
|
|
ld hl, wcf64
|
|
ld a, [hl]
|
|
cp $7
|
|
ret nc
|
|
inc [hl]
|
|
jr Functione0959
|
|
|
|
.asm_e0950
|
|
ld a, [hl]
|
|
and $e
|
|
ld [hl], a
|
|
cp $6
|
|
ret nc
|
|
rept 2
|
|
inc [hl]
|
|
endr
|
|
|
|
Functione0959: ; e0959
|
|
ld de, SFX_POKEBALLS_PLACED_ON_TABLE
|
|
call PlaySFX
|
|
ret
|
|
; e0960
|
|
|
|
Functione0960: ; e0960
|
|
call ClearSprites
|
|
ld a, [hCGB]
|
|
and a
|
|
jr nz, .asm_e096d
|
|
ld a, [hVBlankCounter]
|
|
and $4
|
|
ret nz
|
|
|
|
.asm_e096d
|
|
call Functione0398
|
|
rept 2
|
|
add hl, hl
|
|
endr
|
|
ld de, Unknown_e0981
|
|
add hl, de
|
|
ld a, [hli]
|
|
ld c, a
|
|
ld a, [hli]
|
|
ld b, a
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
call Functione0509
|
|
ret
|
|
; e0981
|
|
|
|
Unknown_e0981: ; e0981
|
|
dbbw $58, $10, Unknown_e0c26
|
|
dbbw $60, $10, Unknown_e0c26
|
|
dbbw $68, $10, Unknown_e0b8d
|
|
dbbw $68, $10, Unknown_e0b8d
|
|
dbbw $88, $10, Unknown_e0b8d
|
|
dbbw $88, $10, Unknown_e0b8d
|
|
|
|
dbbw $58, $18, Unknown_e0c26
|
|
dbbw $60, $18, Unknown_e0c26
|
|
dbbw $68, $18, Unknown_e0a5a
|
|
dbbw $78, $18, Unknown_e0a5a
|
|
dbbw $88, $18, Unknown_e0a5a
|
|
dbbw $98, $18, Unknown_e0a5a
|
|
|
|
dbbw $58, $28, Unknown_e0b14
|
|
dbbw $60, $28, Unknown_e0ac3
|
|
dbbw $68, $28, Unknown_e0a41
|
|
dbbw $78, $28, Unknown_e0a41
|
|
dbbw $88, $28, Unknown_e0a41
|
|
dbbw $98, $28, Unknown_e0a41
|
|
dbbw $58, $28, Unknown_e0b14
|
|
|
|
dbbw $60, $34, Unknown_e0ac3
|
|
dbbw $68, $34, Unknown_e0a41
|
|
dbbw $78, $34, Unknown_e0a41
|
|
dbbw $88, $34, Unknown_e0a41
|
|
dbbw $98, $34, Unknown_e0a41
|
|
|
|
dbbw $58, $40, Unknown_e0b14
|
|
dbbw $60, $40, Unknown_e0ac3
|
|
dbbw $68, $40, Unknown_e0a41
|
|
dbbw $78, $40, Unknown_e0a41
|
|
dbbw $88, $40, Unknown_e0a41
|
|
dbbw $98, $40, Unknown_e0a41
|
|
dbbw $58, $40, Unknown_e0b14
|
|
|
|
dbbw $60, $4c, Unknown_e0ac3
|
|
dbbw $68, $4c, Unknown_e0a41
|
|
dbbw $78, $4c, Unknown_e0a41
|
|
dbbw $88, $4c, Unknown_e0a41
|
|
dbbw $98, $4c, Unknown_e0a41
|
|
|
|
dbbw $58, $58, Unknown_e0b14
|
|
dbbw $60, $58, Unknown_e0ac3
|
|
dbbw $68, $58, Unknown_e0a41
|
|
dbbw $78, $58, Unknown_e0a41
|
|
dbbw $88, $58, Unknown_e0a41
|
|
dbbw $98, $58, Unknown_e0a41
|
|
dbbw $58, $58, Unknown_e0b14
|
|
|
|
dbbw $60, $64, Unknown_e0ac3
|
|
dbbw $68, $64, Unknown_e0a41
|
|
dbbw $78, $64, Unknown_e0a41
|
|
dbbw $88, $64, Unknown_e0a41
|
|
dbbw $98, $64, Unknown_e0a41
|
|
; e0a41
|
|
|
|
Unknown_e0a41: ; e0a41
|
|
db 6
|
|
db $00, $ff, $00, $80
|
|
db $00, $00, $02, $80
|
|
db $00, $08, $03, $80
|
|
db $05, $ff, $00, $c0
|
|
db $05, $00, $02, $c0
|
|
db $05, $08, $03, $80
|
|
|
|
Unknown_e0a5a: ; e0a5a
|
|
db 26
|
|
db $00, $ff, $00, $80
|
|
db $00, $00, $02, $80
|
|
db $00, $08, $00, $a0
|
|
db $08, $ff, $01, $80
|
|
db $08, $08, $01, $a0
|
|
db $10, $ff, $01, $80
|
|
db $10, $08, $03, $80
|
|
db $18, $ff, $01, $80
|
|
db $18, $08, $03, $80
|
|
db $20, $ff, $01, $80
|
|
db $20, $08, $03, $80
|
|
db $28, $ff, $01, $80
|
|
db $28, $08, $03, $80
|
|
db $30, $ff, $01, $80
|
|
db $30, $08, $03, $80
|
|
db $38, $ff, $01, $80
|
|
db $38, $08, $03, $80
|
|
db $40, $ff, $01, $80
|
|
db $40, $08, $03, $80
|
|
db $48, $ff, $01, $80
|
|
db $48, $08, $03, $80
|
|
db $50, $ff, $01, $80
|
|
db $50, $08, $03, $80
|
|
db $51, $ff, $00, $c0
|
|
db $51, $00, $02, $c0
|
|
db $51, $08, $03, $80
|
|
|
|
Unknown_e0ac3: ; e0ac3
|
|
db 20
|
|
db $00, $ff, $00, $80
|
|
db $00, $00, $02, $80
|
|
db $00, $08, $02, $80
|
|
db $00, $10, $03, $80
|
|
db $00, $18, $02, $80
|
|
db $00, $20, $03, $80
|
|
db $00, $28, $02, $80
|
|
db $00, $30, $03, $80
|
|
db $00, $38, $02, $80
|
|
db $00, $40, $03, $80
|
|
db $05, $ff, $00, $c0
|
|
db $05, $00, $02, $c0
|
|
db $05, $08, $02, $c0
|
|
db $05, $10, $03, $80
|
|
db $05, $18, $02, $c0
|
|
db $05, $20, $03, $80
|
|
db $05, $28, $02, $c0
|
|
db $05, $30, $03, $80
|
|
db $05, $38, $02, $c0
|
|
db $05, $40, $03, $80
|
|
|
|
Unknown_e0b14: ; e0b14
|
|
db 30
|
|
db $00, $00, $00, $80
|
|
db $00, $08, $02, $80
|
|
db $00, $10, $02, $80
|
|
db $00, $18, $03, $80
|
|
db $00, $20, $02, $80
|
|
db $00, $28, $03, $80
|
|
db $00, $30, $02, $80
|
|
db $00, $38, $03, $80
|
|
db $00, $40, $02, $80
|
|
db $00, $48, $03, $80
|
|
db $08, $00, $01, $80
|
|
db $08, $18, $03, $80
|
|
db $08, $28, $03, $80
|
|
db $08, $38, $03, $80
|
|
db $08, $48, $03, $80
|
|
db $10, $00, $01, $80
|
|
db $10, $18, $03, $80
|
|
db $10, $28, $03, $80
|
|
db $10, $38, $03, $80
|
|
db $10, $48, $03, $80
|
|
db $11, $00, $00, $c0
|
|
db $11, $08, $02, $c0
|
|
db $11, $10, $02, $c0
|
|
db $11, $18, $03, $80
|
|
db $11, $20, $03, $80
|
|
db $11, $28, $03, $80
|
|
db $11, $30, $03, $80
|
|
db $11, $38, $03, $80
|
|
db $11, $40, $03, $80
|
|
db $11, $48, $03, $80
|
|
|
|
Unknown_e0b8d: ; e0b8d
|
|
db 38
|
|
db $00, $ff, $00, $80
|
|
db $00, $18, $00, $a0
|
|
db $08, $ff, $01, $80
|
|
db $08, $18, $01, $a0
|
|
db $10, $ff, $01, $80
|
|
db $10, $18, $01, $a0
|
|
db $18, $ff, $01, $80
|
|
db $18, $08, $03, $80
|
|
db $18, $18, $03, $80
|
|
db $20, $ff, $01, $80
|
|
db $20, $08, $03, $80
|
|
db $20, $18, $03, $80
|
|
db $28, $ff, $01, $80
|
|
db $28, $08, $03, $80
|
|
db $28, $18, $03, $80
|
|
db $30, $ff, $01, $80
|
|
db $30, $08, $03, $80
|
|
db $30, $18, $03, $80
|
|
db $38, $ff, $01, $80
|
|
db $38, $08, $03, $80
|
|
db $38, $18, $03, $80
|
|
db $40, $ff, $01, $80
|
|
db $40, $08, $03, $80
|
|
db $40, $18, $03, $80
|
|
db $48, $ff, $01, $80
|
|
db $48, $08, $03, $80
|
|
db $48, $18, $03, $80
|
|
db $50, $ff, $01, $80
|
|
db $50, $08, $03, $80
|
|
db $50, $18, $03, $80
|
|
db $58, $ff, $01, $80
|
|
db $58, $08, $03, $80
|
|
db $58, $18, $03, $80
|
|
db $59, $ff, $00, $c0
|
|
db $59, $00, $02, $c0
|
|
db $59, $08, $03, $c0
|
|
db $59, $10, $02, $c0
|
|
db $59, $18, $03, $e0
|
|
|
|
Unknown_e0c26: ; e0c26
|
|
db 4
|
|
db $00, $00, $00, $80
|
|
db $00, $08, $00, $a0
|
|
db $08, $00, $00, $c0
|
|
db $08, $08, $00, $e0
|
|
; e0c37
|
|
|
|
Functione0c37: ; e0c37 (38:4c37)
|
|
ld a, [hCGB]
|
|
and a
|
|
ret z
|
|
hlcoord 0, 0, AttrMap
|
|
ld bc, SCREEN_HEIGHT * SCREEN_WIDTH
|
|
xor a
|
|
call ByteFill
|
|
hlcoord 12, 1, AttrMap
|
|
lb bc, 2, 2
|
|
ld a, $1
|
|
call Functione04e7
|
|
hlcoord 14, 1, AttrMap
|
|
lb bc, 2, 2
|
|
ld a, $2
|
|
call Functione04e7
|
|
hlcoord 16, 1, AttrMap
|
|
lb bc, 2, 2
|
|
ld a, $3
|
|
call Functione04e7
|
|
hlcoord 18, 1, AttrMap
|
|
lb bc, 2, 2
|
|
ld a, $4
|
|
call Functione04e7
|
|
hlcoord 9, 0, AttrMap
|
|
lb bc, 12, 1
|
|
ld a, $1
|
|
call Functione04e7
|
|
ld a, [rSVBK]
|
|
push af
|
|
ld a, $5
|
|
ld [rSVBK], a
|
|
ld hl, Palette_e0c93
|
|
ld de, wMapPals
|
|
ld bc, $48
|
|
call CopyBytes
|
|
pop af
|
|
ld [rSVBK], a
|
|
ret
|
|
; e0c93 (38:4c93)
|
|
|
|
Palette_e0c93: ; e0c93
|
|
RGB 31, 31, 31
|
|
RGB 17, 07, 31
|
|
RGB 06, 19, 08
|
|
RGB 00, 00, 00
|
|
|
|
RGB 31, 31, 31
|
|
RGB 29, 25, 00
|
|
RGB 06, 19, 08
|
|
RGB 00, 00, 00
|
|
|
|
RGB 31, 31, 31
|
|
RGB 31, 13, 30
|
|
RGB 06, 19, 08
|
|
RGB 00, 00, 00
|
|
|
|
RGB 31, 31, 31
|
|
RGB 08, 17, 30
|
|
RGB 06, 19, 08
|
|
RGB 00, 00, 00
|
|
|
|
RGB 31, 31, 31
|
|
RGB 08, 31, 08
|
|
RGB 06, 19, 08
|
|
RGB 00, 00, 00
|
|
|
|
RGB 31, 31, 31
|
|
RGB 17, 07, 31
|
|
RGB 06, 19, 08
|
|
RGB 00, 00, 00
|
|
|
|
RGB 31, 31, 31
|
|
RGB 17, 07, 31
|
|
RGB 06, 19, 08
|
|
RGB 00, 00, 00
|
|
|
|
RGB 31, 31, 31
|
|
RGB 17, 07, 31
|
|
RGB 06, 19, 08
|
|
RGB 00, 00, 00
|
|
|
|
RGB 31, 31, 31
|
|
RGB 31, 31, 31
|
|
RGB 31, 00, 00
|
|
RGB 31, 00, 00
|
|
; e0cdb
|
|
|
|
LZ_e0cdb: ; e0cdb
|
|
INCBIN "gfx/unknown/0e0cdb.2bpp.lz"
|
|
|
|
GFX_e0cf6: ; e0cf6
|
|
INCBIN "gfx/unknown/0e0cf6.2bpp"
|
|
|
|
GFX_e0d06: ; e0d06
|
|
INCBIN "gfx/unknown/0e0d06.2bpp"
|
|
|
|
LZ_e0d16: ; e0d16
|
|
INCBIN "gfx/unknown/0e0d16.2bpp.lz"
|
|
|
|
LZ_e0ea8: ; e0ea8
|
|
INCBIN "gfx/unknown/0e0ea8.2bpp.lz"
|
|
|
|
Unknown_e110c: ; e110c
|
|
db $ef, $15, $27, $2a, $2a, $06, $27, $2a, $2a, $06, $27
|
|
db $ef, $07, $27, $3e, $3f, $42, $43, $46, $47, $4a, $4b
|
|
db $ef, $17, $26, $40, $41, $44, $45, $48, $49, $4c, $4d
|
|
db $ef, $25, $04, $00, $01, $00, $01, $00, $01, $00, $01
|
|
db $ef, $05, $14, $10, $11, $10, $11, $10, $11, $10, $11
|
|
db $ef, $16, $24, $20, $21, $20, $21, $20, $21, $20, $21
|
|
db $ef, $25, $04, $00, $02, $00, $02, $00, $02, $00, $02
|
|
db $ef, $05, $14, $10, $12, $10, $12, $10, $12, $10, $12
|
|
db $ef, $16, $24, $20, $22, $20, $22, $20, $22, $20, $22
|
|
db $ef, $25, $04, $00, $03, $00, $03, $00, $03, $00, $03
|
|
db $ef, $05, $14, $10, $13, $10, $13, $10, $13, $10, $13
|
|
db $ef, $16, $24, $20, $23, $20, $23, $20, $23, $20, $23
|
|
; e1190
|
|
|
|
Functione1190: ; e1190
|
|
ld a, [hInMenu]
|
|
push af
|
|
ld a, $1
|
|
ld [hInMenu], a
|
|
call ClearBGPalettes
|
|
call ClearTileMap
|
|
call ClearSprites
|
|
xor a
|
|
ld [hBGMapMode], a
|
|
call DisableLCD
|
|
ld hl, wc608
|
|
ld bc, $1e0
|
|
xor a
|
|
call ByteFill
|
|
ld hl, GFX_e17c5
|
|
ld de, VTiles1 tile $60
|
|
ld bc, $40
|
|
call CopyBytes
|
|
ld hl, LZ_e1805
|
|
ld de, VTiles1 tile $6d
|
|
call Decompress
|
|
call Functione17a3
|
|
hlcoord 0, 0
|
|
ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
|
|
ld a, $ee
|
|
call ByteFill
|
|
hlcoord 4, 3
|
|
lb bc, 12, 12
|
|
ld a, $ef
|
|
call Functione13ee
|
|
call Functione124e
|
|
call Functione13fe
|
|
call Functione127d
|
|
xor a
|
|
ld [hSCY], a
|
|
ld [hSCX], a
|
|
ld [rWY], a
|
|
ld [wJumptableIndex], a
|
|
ld [wcf64], a
|
|
ld [wcf65], a
|
|
ld [wcf66], a
|
|
ld a, $93
|
|
ld [rLCDC], a
|
|
call WaitBGMap
|
|
ld b, $18
|
|
call GetSGBLayout
|
|
ld a, $e4
|
|
call DmgToCgbBGPals
|
|
ld a, $24
|
|
call Functioncf8
|
|
xor a
|
|
ld [wd0ec], a
|
|
call DelayFrame
|
|
.asm_e1217
|
|
call JoyTextDelay
|
|
ld a, [wJumptableIndex]
|
|
bit 7, a
|
|
jr nz, .asm_e123d
|
|
call Functione12ca
|
|
ld a, [wcf64]
|
|
and a
|
|
jr nz, .asm_e1230
|
|
ld a, [hVBlankCounter]
|
|
and $10
|
|
jr z, .asm_e1235
|
|
|
|
.asm_e1230
|
|
call Functione14d9
|
|
jr .asm_e1238
|
|
|
|
.asm_e1235
|
|
call ClearSprites
|
|
|
|
.asm_e1238
|
|
call DelayFrame
|
|
jr .asm_e1217
|
|
|
|
.asm_e123d
|
|
pop af
|
|
ld [hInMenu], a
|
|
call ClearBGPalettes
|
|
call ClearTileMap
|
|
call ClearSprites
|
|
ld a, $e3
|
|
ld [rLCDC], a
|
|
ret
|
|
; e124e
|
|
|
|
Functione124e: ; e124e
|
|
ld c, $1
|
|
ld b, $10
|
|
.asm_e1252
|
|
call Random
|
|
and $f
|
|
ld hl, Unknown_e126d
|
|
ld e, a
|
|
ld d, $0
|
|
add hl, de
|
|
ld e, [hl]
|
|
ld hl, wc6d0
|
|
add hl, de
|
|
ld a, [hl]
|
|
and a
|
|
jr nz, .asm_e1252
|
|
ld [hl], c
|
|
inc c
|
|
dec b
|
|
jr nz, .asm_e1252
|
|
ret
|
|
; e126d
|
|
|
|
Unknown_e126d: ; e126d
|
|
db $00, $01, $02, $03
|
|
db $04, $05, $06, $0b
|
|
db $0c, $11, $12, $17
|
|
db $18, $1d, $1e, $23
|
|
; e127d
|
|
|
|
Functione127d: ; e127d
|
|
call Functione128d
|
|
hlcoord 5, 16
|
|
ld a, $f6
|
|
ld c, $a
|
|
.asm_e1287
|
|
ld [hli], a
|
|
inc a
|
|
dec c
|
|
jr nz, .asm_e1287
|
|
ret
|
|
; e128d
|
|
|
|
Functione128d: ; e128d
|
|
hlcoord 4, 15
|
|
ld a, $f0
|
|
ld [hli], a
|
|
ld bc, $a
|
|
ld a, $f1
|
|
call ByteFill
|
|
hlcoord 15, 15
|
|
ld a, $f2
|
|
ld [hli], a
|
|
hlcoord 4, 16
|
|
ld a, $f3
|
|
ld [hli], a
|
|
ld bc, $a
|
|
ld a, $ef
|
|
call ByteFill
|
|
hlcoord 15, 16
|
|
ld a, $f3
|
|
ld [hli], a
|
|
hlcoord 4, 17
|
|
ld a, $f4
|
|
ld [hli], a
|
|
ld bc, $a
|
|
ld a, $f1
|
|
call ByteFill
|
|
hlcoord 15, 17
|
|
ld a, $f5
|
|
ld [hl], a
|
|
ret
|
|
; e12ca
|
|
|
|
Functione12ca: ; e12ca
|
|
ld a, [wJumptableIndex]
|
|
ld e, a
|
|
ld d, 0
|
|
ld hl, Jumptable_e12d9
|
|
rept 2
|
|
add hl, de
|
|
endr
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
jp [hl]
|
|
; e12d9
|
|
|
|
Jumptable_e12d9: ; e12d9
|
|
dw Functione12db
|
|
; e12db
|
|
|
|
Functione12db: ; e12db
|
|
ld a, [hJoyPressed]
|
|
and START
|
|
jp nz, Functione13de
|
|
ld a, [hJoyPressed]
|
|
and A_BUTTON
|
|
jp nz, Functione1376
|
|
ld hl, hJoyLast
|
|
ld a, [hl]
|
|
and D_UP
|
|
jr nz, .asm_e1301
|
|
ld a, [hl]
|
|
and D_DOWN
|
|
jr nz, .asm_e130d
|
|
ld a, [hl]
|
|
and D_LEFT
|
|
jr nz, .asm_e1325
|
|
ld a, [hl]
|
|
and D_RIGHT
|
|
jr nz, .asm_e1345
|
|
ret
|
|
|
|
.asm_e1301
|
|
ld hl, wcf65
|
|
ld a, [hl]
|
|
cp $6
|
|
ret c
|
|
sub $6
|
|
ld [hl], a
|
|
jr .asm_e1364
|
|
|
|
.asm_e130d
|
|
ld hl, wcf65
|
|
ld a, [hl]
|
|
cp $19
|
|
ret z
|
|
cp $1a
|
|
ret z
|
|
cp $1b
|
|
ret z
|
|
cp $1c
|
|
ret z
|
|
cp $1e
|
|
ret nc
|
|
add $6
|
|
ld [hl], a
|
|
jr .asm_e1364
|
|
|
|
.asm_e1325
|
|
ld hl, wcf65
|
|
ld a, [hl]
|
|
and a
|
|
ret z
|
|
cp $6
|
|
ret z
|
|
cp $c
|
|
ret z
|
|
cp $12
|
|
ret z
|
|
cp $18
|
|
ret z
|
|
cp $1e
|
|
ret z
|
|
cp $23
|
|
jr z, .asm_e1341
|
|
dec [hl]
|
|
jr .asm_e1364
|
|
|
|
.asm_e1341
|
|
ld [hl], $1e
|
|
jr .asm_e1364
|
|
|
|
.asm_e1345
|
|
ld hl, wcf65
|
|
ld a, [hl]
|
|
cp $5
|
|
ret z
|
|
cp $b
|
|
ret z
|
|
cp $11
|
|
ret z
|
|
cp $17
|
|
ret z
|
|
cp $1d
|
|
ret z
|
|
cp $23
|
|
ret z
|
|
cp $1e
|
|
jr z, .asm_e1362
|
|
inc [hl]
|
|
jr .asm_e1364
|
|
|
|
.asm_e1362
|
|
ld [hl], $23
|
|
|
|
.asm_e1364
|
|
ld a, [wcf64]
|
|
and a
|
|
jr nz, .asm_e136f
|
|
ld de, SFX_POUND
|
|
jr .asm_e1372
|
|
|
|
.asm_e136f
|
|
ld de, SFX_MOVE_PUZZLE_PIECE
|
|
|
|
.asm_e1372
|
|
call PlaySFX
|
|
ret
|
|
; e1376
|
|
|
|
Functione1376: ; e1376
|
|
ld a, [wcf64]
|
|
and a
|
|
jr nz, .asm_e139f
|
|
call Functione1475
|
|
and a
|
|
jr z, Functione13e4
|
|
ld de, SFX_MEGA_KICK
|
|
call PlaySFX
|
|
ld [hl], $0
|
|
ld [wcf66], a
|
|
call Functione14d9
|
|
call Functione1441
|
|
call WaitBGMap
|
|
call WaitSFX
|
|
ld a, $1
|
|
ld [wcf64], a
|
|
ret
|
|
|
|
.asm_e139f
|
|
call Functione1475
|
|
and a
|
|
jr nz, Functione13e4
|
|
ld de, SFX_PLACE_PUZZLE_PIECE_DOWN
|
|
call PlaySFX
|
|
ld a, [wcf66]
|
|
ld [hl], a
|
|
call Functione141f
|
|
call WaitBGMap
|
|
xor a
|
|
ld [wcf66], a
|
|
call Functione14d9
|
|
xor a
|
|
ld [wcf64], a
|
|
call WaitSFX
|
|
call Functione14a0
|
|
ret nc
|
|
call Functione128d
|
|
call ClearSprites
|
|
ld de, SFX_1ST_PLACE
|
|
call PlaySFX
|
|
call WaitSFX
|
|
call SimpleWaitPressAorB
|
|
ld a, $1
|
|
ld [wd0ec], a
|
|
|
|
Functione13de: ; e13de
|
|
ld hl, wJumptableIndex
|
|
set 7, [hl]
|
|
ret
|
|
|
|
Functione13e4: ; e13e4
|
|
ld de, SFX_WRONG
|
|
call PlaySFX
|
|
call WaitSFX
|
|
ret
|
|
; e13ee
|
|
|
|
Functione13ee: ; e13ee
|
|
ld de, SCREEN_WIDTH
|
|
.asm_e13f1
|
|
push bc
|
|
push hl
|
|
.asm_e13f3
|
|
ld [hli], a
|
|
dec c
|
|
jr nz, .asm_e13f3
|
|
pop hl
|
|
add hl, de
|
|
pop bc
|
|
dec b
|
|
jr nz, .asm_e13f1
|
|
ret
|
|
; e13fe
|
|
|
|
Functione13fe: ; e13fe
|
|
xor a
|
|
ld [wcf65], a
|
|
ld c, $24
|
|
.asm_e1404
|
|
push bc
|
|
call Functione1475
|
|
ld [wcf66], a
|
|
and a
|
|
jr z, .asm_e1413
|
|
call Functione141f
|
|
jr .asm_e1416
|
|
|
|
.asm_e1413
|
|
call Functione1441
|
|
|
|
.asm_e1416
|
|
ld hl, wcf65
|
|
inc [hl]
|
|
pop bc
|
|
dec c
|
|
jr nz, .asm_e1404
|
|
ret
|
|
; e141f
|
|
|
|
Functione141f: ; e141f
|
|
ld a, $2
|
|
call Functione1463
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
push hl
|
|
call Functione1481
|
|
pop hl
|
|
ld de, SCREEN_WIDTH
|
|
ld b, $3
|
|
.asm_e1431
|
|
ld c, $3
|
|
push hl
|
|
.asm_e1434
|
|
ld [hli], a
|
|
inc a
|
|
dec c
|
|
jr nz, .asm_e1434
|
|
add $9
|
|
pop hl
|
|
add hl, de
|
|
dec b
|
|
jr nz, .asm_e1431
|
|
ret
|
|
; e1441
|
|
|
|
Functione1441: ; e1441
|
|
ld a, $2
|
|
call Functione1463
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
push hl
|
|
ld a, $4
|
|
call Functione1463
|
|
ld a, [hl]
|
|
pop hl
|
|
ld de, SCREEN_WIDTH
|
|
ld b, $3
|
|
.asm_e1456
|
|
ld c, $3
|
|
push hl
|
|
.asm_e1459
|
|
ld [hli], a
|
|
dec c
|
|
jr nz, .asm_e1459
|
|
pop hl
|
|
add hl, de
|
|
dec b
|
|
jr nz, .asm_e1456
|
|
ret
|
|
; e1463
|
|
|
|
Functione1463: ; e1463
|
|
ld e, a
|
|
ld d, 0
|
|
ld hl, Unknown_e1559
|
|
add hl, de
|
|
ld a, [wcf65]
|
|
ld e, a
|
|
rept 4
|
|
add hl, de
|
|
endr
|
|
rept 2
|
|
add hl, de
|
|
endr
|
|
ret
|
|
; e1475
|
|
|
|
Functione1475: ; e1475
|
|
ld hl, wc6d0
|
|
ld a, [wcf65]
|
|
ld e, a
|
|
ld d, $0
|
|
add hl, de
|
|
ld a, [hl]
|
|
ret
|
|
; e1481
|
|
|
|
Functione1481: ; e1481
|
|
ld a, [wcf66]
|
|
ld hl, Unknown_e148f
|
|
add l
|
|
ld l, a
|
|
ld a, $0
|
|
adc h
|
|
ld h, a
|
|
ld a, [hl]
|
|
ret
|
|
; e148f
|
|
|
|
Unknown_e148f: ; e148f
|
|
db $e0
|
|
db $00, $03, $06, $09
|
|
db $24, $27, $2a, $2d
|
|
db $48, $4b, $4e, $51
|
|
db $6c, $6f, $72, $75
|
|
; e14a0
|
|
|
|
Functione14a0: ; e14a0
|
|
ld hl, Unknown_e14b5
|
|
ld de, wc6d0
|
|
ld c, $24
|
|
.asm_e14a8
|
|
ld a, [de]
|
|
cp [hl]
|
|
jr nz, .asm_e14b3
|
|
inc de
|
|
inc hl
|
|
dec c
|
|
jr nz, .asm_e14a8
|
|
scf
|
|
ret
|
|
|
|
.asm_e14b3
|
|
and a
|
|
ret
|
|
; e14b5
|
|
|
|
Unknown_e14b5: ; e14b5
|
|
db $00, $00, $00, $00, $00, $00
|
|
db $00, $01, $02, $03, $04, $00
|
|
db $00, $05, $06, $07, $08, $00
|
|
db $00, $09, $0a, $0b, $0c, $00
|
|
db $00, $0d, $0e, $0f, $10, $00
|
|
db $00, $00, $00, $00, $00, $00
|
|
; e14d9
|
|
|
|
Functione14d9: ; e14d9
|
|
call Functione1481
|
|
ld [wd002], a
|
|
xor a
|
|
call Functione1463
|
|
ld a, [hli]
|
|
ld b, [hl]
|
|
ld c, a
|
|
ld a, [wd002]
|
|
cp $e0
|
|
jr z, .asm_e14f2
|
|
ld hl, Unknown_e150f
|
|
jr .asm_e14f5
|
|
|
|
.asm_e14f2
|
|
ld hl, Unknown_e1534
|
|
|
|
.asm_e14f5
|
|
ld de, Sprites
|
|
.asm_e14f8
|
|
ld a, [hli]
|
|
cp $ff
|
|
ret z
|
|
add b
|
|
ld [de], a
|
|
inc de
|
|
ld a, [hli]
|
|
add c
|
|
ld [de], a
|
|
inc de
|
|
ld a, [wd002]
|
|
add [hl]
|
|
ld [de], a
|
|
inc hl
|
|
inc de
|
|
ld a, [hli]
|
|
ld [de], a
|
|
inc de
|
|
jr .asm_e14f8
|
|
; e150f
|
|
|
|
Unknown_e150f: ; e150f
|
|
db $f4, $f4, $00, $00
|
|
db $f4, $fc, $01, $00
|
|
db $f4, $04, $02, $00
|
|
db $fc, $f4, $0c, $00
|
|
db $fc, $fc, $0d, $00
|
|
db $fc, $04, $0e, $00
|
|
db $04, $f4, $18, $00
|
|
db $04, $fc, $19, $00
|
|
db $04, $04, $1a, $00
|
|
db $ff
|
|
|
|
Unknown_e1534: ; e1534
|
|
db $f4, $f4, $00, $00
|
|
db $f4, $fc, $01, $00
|
|
db $f4, $04, $00, $20
|
|
db $fc, $f4, $02, $00
|
|
db $fc, $fc, $03, $00
|
|
db $fc, $04, $02, $20
|
|
db $04, $f4, $00, $40
|
|
db $04, $fc, $01, $40
|
|
db $04, $04, $00, $60
|
|
db $ff
|
|
|
|
Unknown_e1559: ; e1559
|
|
|
|
macro_e1559: macro
|
|
db \1, \2
|
|
dwcoord \3, \4
|
|
db \5, \6
|
|
endm
|
|
|
|
macro_e1559 $1c, $1c, 1, 0, $ee, $00
|
|
macro_e1559 $34, $1c, 4, 0, $ee, $00
|
|
macro_e1559 $4c, $1c, 7, 0, $ee, $00
|
|
macro_e1559 $64, $1c, 10, 0, $ee, $00
|
|
macro_e1559 $7c, $1c, 13, 0, $ee, $00
|
|
macro_e1559 $94, $1c, 16, 0, $ee, $00
|
|
macro_e1559 $1c, $34, 1, 3, $ee, $00
|
|
macro_e1559 $34, $34, 4, 3, $ef, $00
|
|
macro_e1559 $4c, $34, 7, 3, $ef, $00
|
|
macro_e1559 $64, $34, 10, 3, $ef, $00
|
|
macro_e1559 $7c, $34, 13, 3, $ef, $00
|
|
macro_e1559 $94, $34, 16, 3, $ee, $00
|
|
macro_e1559 $1c, $4c, 1, 6, $ee, $00
|
|
macro_e1559 $34, $4c, 4, 6, $ef, $00
|
|
macro_e1559 $4c, $4c, 7, 6, $ef, $00
|
|
macro_e1559 $64, $4c, 10, 6, $ef, $00
|
|
macro_e1559 $7c, $4c, 13, 6, $ef, $00
|
|
macro_e1559 $94, $4c, 16, 6, $ee, $00
|
|
macro_e1559 $1c, $64, 1, 9, $ee, $00
|
|
macro_e1559 $34, $64, 4, 9, $ef, $00
|
|
macro_e1559 $4c, $64, 7, 9, $ef, $00
|
|
macro_e1559 $64, $64, 10, 9, $ef, $00
|
|
macro_e1559 $7c, $64, 13, 9, $ef, $00
|
|
macro_e1559 $94, $64, 16, 9, $ee, $00
|
|
macro_e1559 $1c, $7c, 1, 12, $ee, $00
|
|
macro_e1559 $34, $7c, 4, 12, $ef, $00
|
|
macro_e1559 $4c, $7c, 7, 12, $ef, $00
|
|
macro_e1559 $64, $7c, 10, 12, $ef, $00
|
|
macro_e1559 $7c, $7c, 13, 12, $ef, $00
|
|
macro_e1559 $94, $7c, 16, 12, $ee, $00
|
|
macro_e1559 $1c, $94, 1, 15, $ee, $00
|
|
macro_e1559 $34, $94, 4, 15, $ee, $00
|
|
macro_e1559 $4c, $94, 7, 15, $ee, $00
|
|
macro_e1559 $64, $94, 10, 15, $ee, $00
|
|
macro_e1559 $7c, $94, 13, 15, $ee, $00
|
|
macro_e1559 $94, $94, 16, 15, $ee, $00
|
|
|
|
Functione1631: ; e1631
|
|
ld hl, VTiles2
|
|
ld de, VTiles0
|
|
ld b, $6
|
|
.asm_e1639
|
|
push bc
|
|
push hl
|
|
push hl
|
|
call Functione1654
|
|
pop hl
|
|
ld bc, 8
|
|
add hl, bc
|
|
call Functione1654
|
|
pop hl
|
|
ld bc, $60
|
|
add hl, bc
|
|
pop bc
|
|
dec b
|
|
jr nz, .asm_e1639
|
|
call Functione16c7
|
|
ret
|
|
; e1654
|
|
|
|
Functione1654: ; e1654
|
|
ld c, $6
|
|
.asm_e1656
|
|
push bc
|
|
push hl
|
|
push hl
|
|
ld c, $4
|
|
.asm_e165b
|
|
push bc
|
|
ld a, [hli]
|
|
and $f0
|
|
swap a
|
|
call Functione16aa
|
|
ld c, a
|
|
ld a, [hli]
|
|
and $f0
|
|
swap a
|
|
call Functione16aa
|
|
ld b, a
|
|
ld a, c
|
|
ld [de], a
|
|
inc de
|
|
ld a, b
|
|
ld [de], a
|
|
inc de
|
|
ld a, c
|
|
ld [de], a
|
|
inc de
|
|
ld a, b
|
|
ld [de], a
|
|
inc de
|
|
pop bc
|
|
dec c
|
|
jr nz, .asm_e165b
|
|
pop hl
|
|
ld c, $4
|
|
.asm_e1681
|
|
push bc
|
|
ld a, [hli]
|
|
and $f
|
|
call Functione16aa
|
|
ld c, a
|
|
ld a, [hli]
|
|
and $f
|
|
call Functione16aa
|
|
ld b, a
|
|
ld a, c
|
|
ld [de], a
|
|
inc de
|
|
ld a, b
|
|
ld [de], a
|
|
inc de
|
|
ld a, c
|
|
ld [de], a
|
|
inc de
|
|
ld a, b
|
|
ld [de], a
|
|
inc de
|
|
pop bc
|
|
dec c
|
|
jr nz, .asm_e1681
|
|
pop hl
|
|
ld bc, $10
|
|
add hl, bc
|
|
pop bc
|
|
dec c
|
|
jr nz, .asm_e1656
|
|
ret
|
|
; e16aa
|
|
|
|
Functione16aa: ; e16aa
|
|
push hl
|
|
ld hl, Unknown_e16b7
|
|
add l
|
|
ld l, a
|
|
ld a, 0
|
|
adc h
|
|
ld h, a
|
|
ld a, [hl]
|
|
pop hl
|
|
ret
|
|
; e16b7
|
|
|
|
Unknown_e16b7: ; e16b7
|
|
db $00, $03, $0c, $0f
|
|
db $30, $33, $3c, $3f
|
|
db $c0, $c3, $cc, $cf
|
|
db $f0, $f3, $fc, $ff
|
|
; e16c7
|
|
|
|
Functione16c7: ; e16c7
|
|
ld hl, Unknown_e1703
|
|
ld a, $8
|
|
.asm_e16cc
|
|
push af
|
|
push hl
|
|
ld a, [hli]
|
|
ld e, a
|
|
ld a, [hli]
|
|
ld d, a
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
call Functione16e2
|
|
pop hl
|
|
rept 4
|
|
inc hl
|
|
endr
|
|
pop af
|
|
dec a
|
|
jr nz, .asm_e16cc
|
|
ret
|
|
; e16e2
|
|
|
|
Functione16e2: ; e16e2
|
|
lb bc, 4, 4
|
|
.asm_e16e5
|
|
push bc
|
|
.asm_e16e6
|
|
push de
|
|
push hl
|
|
ld b, $10
|
|
.asm_e16ea
|
|
ld a, [de]
|
|
or [hl]
|
|
ld [hli], a
|
|
inc de
|
|
dec b
|
|
jr nz, .asm_e16ea
|
|
pop hl
|
|
ld de, $30
|
|
add hl, de
|
|
pop de
|
|
dec c
|
|
jr nz, .asm_e16e6
|
|
ld bc, $180
|
|
add hl, bc
|
|
pop bc
|
|
dec b
|
|
jr nz, .asm_e16e5
|
|
ret
|
|
; e1703
|
|
|
|
Unknown_e1703: ; e1703
|
|
dw GFX_e1723 + $00, $8000
|
|
dw GFX_e1723 + $10, $8010
|
|
dw GFX_e1723 + $20, $8020
|
|
dw GFX_e1723 + $30, $80c0
|
|
dw GFX_e1723 + $40, $80e0
|
|
dw GFX_e1723 + $50, $8180
|
|
dw GFX_e1723 + $60, $8190
|
|
dw GFX_e1723 + $70, $81a0
|
|
; e1723
|
|
|
|
GFX_e1723: ; e1723
|
|
INCBIN "gfx/unknown/0e1723.2bpp"
|
|
|
|
Functione17a3: ; e17a3
|
|
ld a, [ScriptVar]
|
|
and 3
|
|
ld e, a
|
|
ld d, 0
|
|
ld hl, Unknown_e17bd
|
|
rept 2
|
|
add hl, de
|
|
endr
|
|
ld a, [hli]
|
|
ld h, [hl]
|
|
ld l, a
|
|
ld de, VTiles2
|
|
call Decompress
|
|
call Functione1631
|
|
ret
|
|
; e17bd
|
|
|
|
Unknown_e17bd: ; e17bd
|
|
dw LZ_e1bab
|
|
dw LZ_e1c9b
|
|
dw LZ_e19fb
|
|
dw LZ_e18ab
|
|
; e17c5
|
|
|
|
GFX_e17c5: ; e17c5
|
|
INCBIN "gfx/unknown/0e17c5.2bpp"
|
|
|
|
LZ_e1805: ; e1805
|
|
INCBIN "gfx/unknown/0e1805.2bpp.lz"
|
|
|
|
LZ_e18ab: ; e18ab
|
|
INCBIN "gfx/unknown/0e18ab.2bpp.lz"
|
|
|
|
LZ_e19fb: ; e19fb
|
|
INCBIN "gfx/unknown/0e19fb.2bpp.lz"
|
|
|
|
LZ_e1bab: ; e1bab
|
|
INCBIN "gfx/unknown/0e1bab.2bpp.lz"
|
|
|
|
LZ_e1c9b: ; e1c9b
|
|
INCBIN "gfx/unknown/0e1c9b.2bpp.lz"
|