card flip (checkpoint commit)

This commit is contained in:
PikalaxALT 2015-12-11 08:17:38 -05:00
parent 3980d2d736
commit f198dfd862
4 changed files with 253 additions and 243 deletions

View File

@ -10,24 +10,26 @@ _CardFlip: ; e00ee (38:40ee)
call DisableLCD call DisableLCD
call LoadStandardFont call LoadStandardFont
call LoadFontsExtra call LoadFontsExtra
ld hl, LZ_e0d16
ld hl, CardFlipLZ01
ld de, VTiles2 tile $00 ld de, VTiles2 tile $00
call Decompress call Decompress
ld hl, LZ_e0ea8 ld hl, CardFlipLZ02
ld de, VTiles2 tile $3e ld de, VTiles2 tile $3e
call Decompress call Decompress
ld hl, LZ_e0cdb ld hl, CardFlipLZ03
ld de, VTiles0 tile $00 ld de, VTiles0 tile $00
call Decompress call Decompress
ld hl, GFX_e0cf6 ld hl, CardFlipOffButtonGFX
ld de, VTiles1 tile $6f ld de, VTiles1 tile $6f
ld bc, $10 ld bc, 1 tiles
call CopyBytes call CopyBytes
ld hl, GFX_e0d06 ld hl, CardFlipOnButtonGFX
ld de, VTiles1 tile $75 ld de, VTiles1 tile $75
ld bc, $10 ld bc, 1 tiles
call CopyBytes call CopyBytes
call Functione0521
call CardFlip_ShiftDigitsLeftTwoPixels
call Functione04c1 call Functione04c1
call Functione0c37 call Functione0c37
call EnableLCD call EnableLCD
@ -75,14 +77,15 @@ endr
; e01a0 (38:41a0) ; e01a0 (38:41a0)
.Jumptable: ; e01a0 .Jumptable: ; e01a0
dw .AskPlayWithThree jumptable_start
dw .DeductCoins jumptable .AskPlayWithThree
dw .ChooseACard jumptable .DeductCoins
dw .PlaceYourBet jumptable .ChooseACard
dw .CheckTheCard jumptable .PlaceYourBet
dw .TabulateTheResult jumptable .CheckTheCard
dw .PlayAgain jumptable .TabulateTheResult
dw .Quit jumptable .PlayAgain
jumptable .Quit
; e01b0 ; e01b0
.Increment: ; e01b0 .Increment: ; e01b0
@ -93,15 +96,15 @@ endr
.AskPlayWithThree: ; e01b5 .AskPlayWithThree: ; e01b5
ld hl, .PlayWithThreeCoinsText ld hl, .PlayWithThreeCoinsText
call Functione0489 call CardFlip_UpdateCoinBalanceDisplay
call YesNoBox call YesNoBox
jr c, .SaidNo jr c, .SaidNo
call Functione0366 call CardFlip_ShuffleDeck
call .Increment call .Increment
ret ret
.SaidNo .SaidNo
ld a, $7 ld a, 7 ; .QuitTableIndex
ld [wJumptableIndex], a ld [wJumptableIndex], a
ret ret
; e01cd ; e01cd
@ -124,8 +127,8 @@ endr
cp 3 cp 3
jr nc, .deduct ; You have at least 3 coins. jr nc, .deduct ; You have at least 3 coins.
ld hl, .NotEnoughCoinsText ld hl, .NotEnoughCoinsText
call Functione0489 call CardFlip_UpdateCoinBalanceDisplay
ld a, $7 ld a, 7 ; .QuitTableIndex
ld [wJumptableIndex], a ld [wJumptableIndex], a
ret ret
@ -140,7 +143,7 @@ endr
call PlaySFX call PlaySFX
xor a xor a
ld [hBGMapMode], a ld [hBGMapMode], a
call Functione049c call CardFlip_PrintCoinBalance
ld a, $1 ld a, $1
ld [hBGMapMode], a ld [hBGMapMode], a
call WaitSFX call WaitSFX
@ -159,7 +162,7 @@ endr
ld [hBGMapMode], a ld [hBGMapMode], a
hlcoord 0, 0 hlcoord 0, 0
lb bc, 12, 9 lb bc, 12, 9
call Functione04e5 call CardFlip_FillGreenBox
hlcoord 9, 0 hlcoord 9, 0
ld bc, SCREEN_WIDTH ld bc, SCREEN_WIDTH
ld a, [wc6e8] ld a, [wc6e8]
@ -179,7 +182,7 @@ endr
call Functione03c1 call Functione03c1
call WaitBGMap call WaitBGMap
ld hl, .ChooseACardText ld hl, .ChooseACardText
call Functione0489 call CardFlip_UpdateCoinBalanceDisplay
xor a xor a
ld [wcf66], a ld [wcf66], a
.loop .loop
@ -220,7 +223,7 @@ endr
ld [hl], a ld [hl], a
call Functione03ac call Functione03ac
lb bc, 6, 5 lb bc, 6, 5
call Functione04e5 call CardFlip_FillGreenBox
pop af pop af
ld [wcf66], a ld [wcf66], a
call .Increment call .Increment
@ -235,7 +238,7 @@ endr
.PlaceYourBet: ; e02b7 .PlaceYourBet: ; e02b7
ld hl, .PlaceYourBetText ld hl, .PlaceYourBetText
call Functione0489 call CardFlip_UpdateCoinBalanceDisplay
.betloop .betloop
call JoyTextDelay call JoyTextDelay
ld a, [hJoyLast] ld a, [hJoyLast]
@ -268,7 +271,7 @@ endr
ld a, [wc6e8] ld a, [wc6e8]
ld e, a ld e, a
ld d, 0 ld d, 0
ld hl, wc6d0 ld hl, wDeck
rept 2 rept 2
add hl, de add hl, de
endr endr
@ -276,13 +279,13 @@ endr
ld e, a ld e, a
add hl, de add hl, de
ld a, [hl] ld a, [hl]
ld [CurEnemyMoveNum], a ld [wc6e9], a
ld e, a ld e, a
ld hl, wc6ea ld hl, wc6ea
add hl, de add hl, de
ld [hl], $1 ld [hl], $1
call Functione03ac call Functione03ac
call Functione03ec call CardFlip_DisplayCardFaceUp
call Function3200 call Function3200
call .Increment call .Increment
ret ret
@ -298,7 +301,7 @@ endr
.PlayAgain: ; e031e .PlayAgain: ; e031e
call ClearSprites call ClearSprites
ld hl, .PlayAgainText ld hl, .PlayAgainText
call Functione0489 call CardFlip_UpdateCoinBalanceDisplay
call YesNoBox call YesNoBox
jr nc, .Continue jr nc, .Continue
call .Increment call .Increment
@ -313,7 +316,7 @@ endr
call Functione04c1 call Functione04c1
ld a, $1 ld a, $1
ld [hBGMapMode], a ld [hBGMapMode], a
call Functione0366 call CardFlip_ShuffleDeck
ld hl, .CardsShuffledText ld hl, .CardsShuffledText
call PrintText call PrintText
jr .LoopAround jr .LoopAround
@ -322,7 +325,7 @@ endr
call Functione0534 call Functione0534
.LoopAround .LoopAround
ld a, $1 ld a, 1 ; .DeductCoinsTableIndex
ld [wJumptableIndex], a ld [wJumptableIndex], a
ret ret
; e0356 ; e0356
@ -345,27 +348,27 @@ endr
ret ret
; e0366 ; e0366
Functione0366: ; e0366 CardFlip_ShuffleDeck: ; e0366
ld hl, wc6d0 ld hl, wDeck
ld bc, $18 ld bc, wDeckEnd - wDeck
xor a xor a
call ByteFill call ByteFill
ld de, wc6d0 ld de, wDeck
ld c, $17 ld c, wDeckEnd - wDeck - 1
.asm_e0375 .loop
call Random call Random
and $1f and $1f
cp $18 cp wDeckEnd - wDeck
jr nc, .asm_e0375 jr nc, .loop
ld l, a ld l, a
ld h, $0 ld h, $0
add hl, de add hl, de
ld a, [hl] ld a, [hl]
and a and a
jr nz, .asm_e0375 jr nz, .loop
ld [hl], c ld [hl], c
dec c dec c
jr nz, .asm_e0375 jr nz, .loop
xor a xor a
ld [wc6e8], a ld [wc6e8], a
ld hl, wc6ea ld hl, wc6ea
@ -420,18 +423,18 @@ Unknown_e03ce: ; e03ce
db $0d, $0e, $0e, $0e, $0f db $0d, $0e, $0e, $0e, $0f
; e03ec ; e03ec
Functione03ec: ; e03ec CardFlip_DisplayCardFaceUp: ; e03ec
xor a xor a
ld [hBGMapMode], a ld [hBGMapMode], a
push hl push hl
push hl push hl
ld de, Unknown_e043b ld de, .Unknown_e043b
lb bc, 6, 5 lb bc, 6, 5
call Functione04f7 call Functione04f7
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
ld e, a ld e, a
ld d, 0 ld d, 0
ld hl, Unknown_e0459 ld hl, .Deck
rept 2 rept 2
add hl, de add hl, de
endr endr
@ -465,15 +468,15 @@ endr
ret z ret z
ld de, AttrMap - TileMap ld de, AttrMap - TileMap
add hl, de add hl, de
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and 3 and 3
inc a inc a
lb bc, 6, 5 lb bc, 6, 5
call Functione04e7 call CardFlip_FillBox
ret ret
; e043b ; e043b
Unknown_e043b: ; e043b .Unknown_e043b: ; e043b
db $18, $19, $19, $19, $1a db $18, $19, $19, $19, $1a
db $1b, $35, $7f, $7f, $1c db $1b, $35, $7f, $7f, $1c
db $0b, $28, $28, $28, $0c db $0b, $28, $28, $28, $0c
@ -482,34 +485,34 @@ Unknown_e043b: ; e043b
db $1d, $1e, $1e, $1e, $1f db $1d, $1e, $1e, $1e, $1f
; e0459 ; e0459
Unknown_e0459: ; e0459 .Deck: ; e0459
db $f7,$4e, $f7,$57, $f7,$69, $f7,$60 db "1",$4e, "1",$57, "1",$69, "1",$60
db $f8,$4e, $f8,$57, $f8,$69, $f8,$60 db "2",$4e, "2",$57, "2",$69, "2",$60
db $f9,$4e, $f9,$57, $f9,$69, $f9,$60 db "3",$4e, "3",$57, "3",$69, "3",$60
db $fa,$4e, $fa,$57, $fa,$69, $fa,$60 db "4",$4e, "4",$57, "4",$69, "4",$60
db $fb,$4e, $fb,$57, $fb,$69, $fb,$60 db "5",$4e, "5",$57, "5",$69, "5",$60
db $fc,$4e, $fc,$57, $fc,$69, $fc,$60 db "6",$4e, "6",$57, "6",$69, "6",$60
; e0489 ; e0489
Functione0489: ; e0489 CardFlip_UpdateCoinBalanceDisplay: ; e0489
push hl push hl
hlcoord 0, 12 hlcoord 0, 12
ld b, $4 ld b, 4
ld c, $12 ld c, SCREEN_WIDTH - 2
call TextBox call TextBox
pop hl pop hl
call PrintTextBoxText call PrintTextBoxText
call Functione049c call CardFlip_PrintCoinBalance
ret ret
; e049c ; e049c
Functione049c: ; e049c CardFlip_PrintCoinBalance: ; e049c
hlcoord 9, 15 hlcoord 9, 15
ld b, $1 ld b, 1
ld c, $9 ld c, 9
call TextBox call TextBox
hlcoord 10, 16 hlcoord 10, 16
ld de, String_e04bc ld de, .CoinStr
call PlaceString call PlaceString
hlcoord 15, 16 hlcoord 15, 16
ld de, Coins ld de, Coins
@ -518,7 +521,7 @@ Functione049c: ; e049c
ret ret
; e04bc ; e04bc
String_e04bc: .CoinStr:
db "COIN@" db "COIN@"
; e04c1 ; e04c1
@ -539,33 +542,34 @@ Functione04c1: ; e04c1 (38:44c1)
ret ret
; e04e5 (38:44e5) ; e04e5 (38:44e5)
Functione04e5: ; e04e5 CardFlip_FillGreenBox: ; e04e5
ld a, $29 ld a, $29
Functione04e7: ; e04e7 (38:44e7) CardFlip_FillBox: ; e04e7 (38:44e7)
.row
push bc push bc
push hl push hl
.asm_e04e9 .col
ld [hli], a ld [hli], a
dec c dec c
jr nz, .asm_e04e9 jr nz, .col
pop hl pop hl
ld bc, $14 ld bc, SCREEN_WIDTH
add hl, bc add hl, bc
pop bc pop bc
dec b dec b
jr nz, Functione04e7 jr nz, .row
ret ret
Functione04f7: ; e04f7 (38:44f7) Functione04f7: ; e04f7 (38:44f7)
push bc push bc
push hl push hl
.asm_e04f9 .loop
ld a, [de] ld a, [de]
inc de inc de
ld [hli], a ld [hli], a
dec c dec c
jr nz, .asm_e04f9 jr nz, .loop
pop hl pop hl
ld bc, $14 ld bc, $14
add hl, bc add hl, bc
@ -578,7 +582,7 @@ Functione04f7: ; e04f7 (38:44f7)
Functione0509: ; e0509 Functione0509: ; e0509
ld de, Sprites ld de, Sprites
ld a, [hli] ld a, [hli]
.asm_e050d .loop
push af push af
ld a, [hli] ld a, [hli]
add b add b
@ -596,16 +600,16 @@ Functione0509: ; e0509
inc de inc de
pop af pop af
dec a dec a
jr nz, .asm_e050d jr nz, .loop
ret ret
; e0521 ; e0521
Functione0521: ; e0521 (38:4521) CardFlip_ShiftDigitsLeftTwoPixels: ; e0521 (38:4521)
ld de, VTiles1 tile $76 ld de, VTiles1 tile ("0" & $7f)
ld hl, $8f62 ld hl, VTiles1 tile ("0" & $7f) + 2
ld bc, $9e ld bc, 10 tiles - 2
call CopyBytes call CopyBytes
ld hl, $8ffe ld hl, VTiles1 tile $7f + 1 tiles - 2
xor a xor a
ld [hli], a ld [hli], a
ld [hl], a ld [hl], a
@ -615,7 +619,7 @@ Functione0521: ; e0521 (38:4521)
Functione0534: ; e0534 Functione0534: ; e0534
xor a xor a
ld [hBGMapMode], a ld [hBGMapMode], a
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
ld e, a ld e, a
ld d, 0 ld d, 0
and 3 and 3
@ -624,10 +628,10 @@ Functione0534: ; e0534
ld a, e ld a, e
and $1c and $1c
srl a srl a
add Jumptable_e0553 % $100 add .Jumptable % $100
ld l, a ld l, a
ld a, 0 ld a, 0
adc Jumptable_e0553 / $100 adc .Jumptable / $100
ld h, a ld h, a
ld a, [hli] ld a, [hli]
ld h, [hl] ld h, [hl]
@ -635,13 +639,14 @@ Functione0534: ; e0534
jp [hl] jp [hl]
; e0553 ; e0553
Jumptable_e0553: ; e0553 .Jumptable: ; e0553
dw Functione055f jumptable_start
dw Functione0583 jumptable Functione055f
dw Functione05a7 jumptable Functione0583
dw Functione05cb jumptable Functione05a7
dw Functione05ef jumptable Functione05cb
dw Functione0613 jumptable Functione05ef
jumptable Functione0613
; e055f ; e055f
Functione055f: ; e055f Functione055f: ; e055f
@ -815,7 +820,7 @@ endr
Functione0637: ; e0637 Functione0637: ; e0637
call Functione0398 call Functione0398
add hl, hl add hl, hl
ld de, Jumptable_e0643 ld de, .Jumptable
add hl, de add hl, de
ld a, [hli] ld a, [hli]
ld h, [hl] ld h, [hl]
@ -823,55 +828,56 @@ Functione0637: ; e0637
jp [hl] jp [hl]
; e0643 ; e0643
Jumptable_e0643: ; e0643 .Jumptable: ; e0643
dw Functione06a3 jumptable_start
dw Functione06a3 jumptable Functione06a3
dw Functione06a6 jumptable Functione06a3
dw Functione06a6 jumptable Functione06a6
dw Functione06b0 jumptable Functione06a6
dw Functione06b0 jumptable Functione06b0
dw Functione06a3 jumptable Functione06b0
dw Functione06a3 jumptable Functione06a3
dw Functione06ec jumptable Functione06a3
dw Functione06f6 jumptable Functione06ec
dw Functione0702 jumptable Functione06f6
dw Functione070e jumptable Functione0702
dw Functione06c2 jumptable Functione070e
dw Functione0722 jumptable Functione06c2
dw Functione0770 jumptable Functione0722
dw Functione0774 jumptable Functione0770
dw Functione0778 jumptable Functione0774
dw Functione077c jumptable Functione0778
dw Functione06c2 jumptable Functione077c
dw Functione072c jumptable Functione06c2
dw Functione0780 jumptable Functione072c
dw Functione0784 jumptable Functione0780
dw Functione0788 jumptable Functione0784
dw Functione078c jumptable Functione0788
dw Functione06cc jumptable Functione078c
dw Functione0738 jumptable Functione06cc
dw Functione0790 jumptable Functione0738
dw Functione0794 jumptable Functione0790
dw Functione0798 jumptable Functione0794
dw Functione079c jumptable Functione0798
dw Functione06cc jumptable Functione079c
dw Functione0744 jumptable Functione06cc
dw Functione07a0 jumptable Functione0744
dw Functione07a4 jumptable Functione07a0
dw Functione07a8 jumptable Functione07a4
dw Functione07ac jumptable Functione07a8
dw Functione06d8 jumptable Functione07ac
dw Functione0750 jumptable Functione06d8
dw Functione07b0 jumptable Functione0750
dw Functione07b4 jumptable Functione07b0
dw Functione07b8 jumptable Functione07b4
dw Functione07bc jumptable Functione07b8
dw Functione06d8 jumptable Functione07bc
dw Functione075c jumptable Functione06d8
dw Functione07c0 jumptable Functione075c
dw Functione07c4 jumptable Functione07c0
dw Functione07c8 jumptable Functione07c4
dw Functione07cc jumptable Functione07c8
jumptable Functione07cc
; e06a3 ; e06a3
Functione06a3: ; e06a3 Functione06a3: ; e06a3
@ -879,13 +885,13 @@ Functione06a3: ; e06a3
; e06a6 ; e06a6
Functione06a6: ; e06a6 Functione06a6: ; e06a6
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $2 and $2
jp nz, Functione07db jp nz, Functione07db
jr Functione06ba jr Functione06ba
Functione06b0: ; e06b0 Functione06b0: ; e06b0
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $2 and $2
jr nz, Functione06ba jr nz, Functione06ba
jp Functione07db jp Functione07db
@ -897,20 +903,20 @@ Functione06ba: ; e06ba
; e06c2 ; e06c2
Functione06c2: ; e06c2 Functione06c2: ; e06c2
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $18 and $18
jr z, Functione06e4 jr z, Functione06e4
jp Functione07db jp Functione07db
Functione06cc: ; e06cc Functione06cc: ; e06cc
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $18 and $18
cp $8 cp $8
jr z, Functione06e4 jr z, Functione06e4
jp Functione07db jp Functione07db
Functione06d8: ; e06d8 Functione06d8: ; e06d8
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $18 and $18
cp $10 cp $10
jr z, Functione06e4 jr z, Functione06e4
@ -923,27 +929,27 @@ Functione06e4: ; e06e4
; e06ec ; e06ec
Functione06ec: ; e06ec Functione06ec: ; e06ec
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $3 and $3
jr z, Functione071a jr z, Functione071a
jp Functione07db jp Functione07db
Functione06f6: ; e06f6 Functione06f6: ; e06f6
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $3 and $3
cp $1 cp $1
jr z, Functione071a jr z, Functione071a
jp Functione07db jp Functione07db
Functione0702: ; e0702 Functione0702: ; e0702
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $3 and $3
cp $2 cp $2
jr z, Functione071a jr z, Functione071a
jp Functione07db jp Functione07db
Functione070e: ; e070e Functione070e: ; e070e
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $3 and $3
cp $3 cp $3
jr z, Functione071a jr z, Functione071a
@ -956,41 +962,41 @@ Functione071a: ; e071a
; e0722 ; e0722
Functione0722: ; e0722 Functione0722: ; e0722
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $1c and $1c
jr z, Functione0768 jr z, Functione0768
jp Functione07db jp Functione07db
Functione072c: ; e072c Functione072c: ; e072c
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $1c and $1c
cp $4 cp $4
jr z, Functione0768 jr z, Functione0768
jp Functione07db jp Functione07db
Functione0738: ; e0738 Functione0738: ; e0738
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $1c and $1c
cp $8 cp $8
jr z, Functione0768 jr z, Functione0768
jp Functione07db jp Functione07db
Functione0744: ; e0744 Functione0744: ; e0744
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $1c and $1c
cp $c cp $c
jr z, Functione0768 jr z, Functione0768
jp Functione07db jp Functione07db
Functione0750: ; e0750 Functione0750: ; e0750
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $1c and $1c
cp $10 cp $10
jr z, Functione0768 jr z, Functione0768
jp Functione07db jp Functione07db
Functione075c: ; e075c Functione075c: ; e075c
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
and $1c and $1c
cp $14 cp $14
jr z, Functione0768 jr z, Functione0768
@ -1099,7 +1105,7 @@ Functione07cc: ; e07cc
ld e, $17 ld e, $17
Functione07ce: ; e07ce Functione07ce: ; e07ce
ld a, [CurEnemyMoveNum] ld a, [wc6e9]
cp e cp e
jr nz, Functione07db jr nz, Functione07db
ld c, $48 ld c, $48
@ -1110,7 +1116,7 @@ Functione07db: ; e07db
ld de, SFX_WRONG ld de, SFX_WRONG
call PlaySFX call PlaySFX
ld hl, UnknownText_0xe0816 ld hl, UnknownText_0xe0816
call Functione0489 call CardFlip_UpdateCoinBalanceDisplay
call WaitSFX call WaitSFX
ret ret
@ -1118,7 +1124,7 @@ Functione07eb: ; e07eb
push bc push bc
push de push de
ld hl, UnknownText_0xe0811 ld hl, UnknownText_0xe0811
call Functione0489 call CardFlip_UpdateCoinBalanceDisplay
pop de pop de
call PlaySFX call PlaySFX
call WaitSFX call WaitSFX
@ -1130,7 +1136,7 @@ Functione07eb: ; e07eb
call Functione081b call Functione081b
.asm_e0804 .asm_e0804
call Functione049c call CardFlip_PrintCoinBalance
ld c, 2 ld c, 2
call DelayFrames call DelayFrames
pop bc pop bc
@ -1364,12 +1370,12 @@ Functione0960: ; e0960
call ClearSprites call ClearSprites
ld a, [hCGB] ld a, [hCGB]
and a and a
jr nz, .asm_e096d jr nz, .skip
ld a, [hVBlankCounter] ld a, [hVBlankCounter]
and $4 and $4
ret nz ret nz
.asm_e096d .skip
call Functione0398 call Functione0398
rept 2 rept 2
add hl, hl add hl, hl
@ -1388,61 +1394,61 @@ endr
; e0981 ; e0981
Unknown_e0981: ; e0981 Unknown_e0981: ; e0981
dbbw $58, $10, Unknown_e0c26 dbbw 11 * 8, 2 * 8, Unknown_e0c26
dbbw $60, $10, Unknown_e0c26 dbbw 12 * 8, 2 * 8, Unknown_e0c26
dbbw $68, $10, Unknown_e0b8d dbbw 13 * 8, 2 * 8, Unknown_e0b8d
dbbw $68, $10, Unknown_e0b8d dbbw 13 * 8, 2 * 8, Unknown_e0b8d
dbbw $88, $10, Unknown_e0b8d dbbw 17 * 8, 2 * 8, Unknown_e0b8d
dbbw $88, $10, Unknown_e0b8d dbbw 17 * 8, 2 * 8, Unknown_e0b8d
dbbw $58, $18, Unknown_e0c26 dbbw 11 * 8, 3 * 8, Unknown_e0c26
dbbw $60, $18, Unknown_e0c26 dbbw 12 * 8, 3 * 8, Unknown_e0c26
dbbw $68, $18, Unknown_e0a5a dbbw 13 * 8, 3 * 8, Unknown_e0a5a
dbbw $78, $18, Unknown_e0a5a dbbw 15 * 8, 3 * 8, Unknown_e0a5a
dbbw $88, $18, Unknown_e0a5a dbbw 17 * 8, 3 * 8, Unknown_e0a5a
dbbw $98, $18, Unknown_e0a5a dbbw 19 * 8, 3 * 8, Unknown_e0a5a
dbbw $58, $28, Unknown_e0b14 dbbw 11 * 8, 5 * 8, Unknown_e0b14
dbbw $60, $28, Unknown_e0ac3 dbbw 12 * 8, 5 * 8, Unknown_e0ac3
dbbw $68, $28, Unknown_e0a41 dbbw 13 * 8, 5 * 8, Unknown_e0a41
dbbw $78, $28, Unknown_e0a41 dbbw 15 * 8, 5 * 8, Unknown_e0a41
dbbw $88, $28, Unknown_e0a41 dbbw 17 * 8, 5 * 8, Unknown_e0a41
dbbw $98, $28, Unknown_e0a41 dbbw 19 * 8, 5 * 8, Unknown_e0a41
dbbw $58, $28, Unknown_e0b14
dbbw $60, $34, Unknown_e0ac3 dbbw 11 * 8, 5 * 8, Unknown_e0b14
dbbw $68, $34, Unknown_e0a41 dbbw 12 * 8, 6 * 8 + 4, Unknown_e0ac3
dbbw $78, $34, Unknown_e0a41 dbbw 13 * 8, 6 * 8 + 4, Unknown_e0a41
dbbw $88, $34, Unknown_e0a41 dbbw 15 * 8, 6 * 8 + 4, Unknown_e0a41
dbbw $98, $34, Unknown_e0a41 dbbw 17 * 8, 6 * 8 + 4, Unknown_e0a41
dbbw 19 * 8, 6 * 8 + 4, Unknown_e0a41
dbbw $58, $40, Unknown_e0b14 dbbw 11 * 8, 8 * 8, Unknown_e0b14
dbbw $60, $40, Unknown_e0ac3 dbbw 12 * 8, 8 * 8, Unknown_e0ac3
dbbw $68, $40, Unknown_e0a41 dbbw 13 * 8, 8 * 8, Unknown_e0a41
dbbw $78, $40, Unknown_e0a41 dbbw 15 * 8, 8 * 8, Unknown_e0a41
dbbw $88, $40, Unknown_e0a41 dbbw 17 * 8, 8 * 8, Unknown_e0a41
dbbw $98, $40, Unknown_e0a41 dbbw 19 * 8, 8 * 8, Unknown_e0a41
dbbw $58, $40, Unknown_e0b14
dbbw $60, $4c, Unknown_e0ac3 dbbw 11 * 8, 8 * 8, Unknown_e0b14
dbbw $68, $4c, Unknown_e0a41 dbbw 12 * 8, 9 * 8 + 4, Unknown_e0ac3
dbbw $78, $4c, Unknown_e0a41 dbbw 13 * 8, 9 * 8 + 4, Unknown_e0a41
dbbw $88, $4c, Unknown_e0a41 dbbw 15 * 8, 9 * 8 + 4, Unknown_e0a41
dbbw $98, $4c, Unknown_e0a41 dbbw 17 * 8, 9 * 8 + 4, Unknown_e0a41
dbbw 19 * 8, 9 * 8 + 4, Unknown_e0a41
dbbw $58, $58, Unknown_e0b14 dbbw 11 * 8, 11 * 8, Unknown_e0b14
dbbw $60, $58, Unknown_e0ac3 dbbw 12 * 8, 11 * 8, Unknown_e0ac3
dbbw $68, $58, Unknown_e0a41 dbbw 13 * 8, 11 * 8, Unknown_e0a41
dbbw $78, $58, Unknown_e0a41 dbbw 15 * 8, 11 * 8, Unknown_e0a41
dbbw $88, $58, Unknown_e0a41 dbbw 17 * 8, 11 * 8, Unknown_e0a41
dbbw $98, $58, Unknown_e0a41 dbbw 19 * 8, 11 * 8, Unknown_e0a41
dbbw $58, $58, Unknown_e0b14
dbbw $60, $64, Unknown_e0ac3 dbbw 11 * 8, 11 * 8, Unknown_e0b14
dbbw $68, $64, Unknown_e0a41 dbbw 12 * 8, 12 * 8 + 4, Unknown_e0ac3
dbbw $78, $64, Unknown_e0a41 dbbw 13 * 8, 12 * 8 + 4, Unknown_e0a41
dbbw $88, $64, Unknown_e0a41 dbbw 15 * 8, 12 * 8 + 4, Unknown_e0a41
dbbw $98, $64, Unknown_e0a41 dbbw 17 * 8, 12 * 8 + 4, Unknown_e0a41
dbbw 19 * 8, 12 * 8 + 4, Unknown_e0a41
; e0a41 ; e0a41
Unknown_e0a41: ; e0a41 Unknown_e0a41: ; e0a41
@ -1599,23 +1605,23 @@ Functione0c37: ; e0c37 (38:4c37)
hlcoord 12, 1, AttrMap hlcoord 12, 1, AttrMap
lb bc, 2, 2 lb bc, 2, 2
ld a, $1 ld a, $1
call Functione04e7 call CardFlip_FillBox
hlcoord 14, 1, AttrMap hlcoord 14, 1, AttrMap
lb bc, 2, 2 lb bc, 2, 2
ld a, $2 ld a, $2
call Functione04e7 call CardFlip_FillBox
hlcoord 16, 1, AttrMap hlcoord 16, 1, AttrMap
lb bc, 2, 2 lb bc, 2, 2
ld a, $3 ld a, $3
call Functione04e7 call CardFlip_FillBox
hlcoord 18, 1, AttrMap hlcoord 18, 1, AttrMap
lb bc, 2, 2 lb bc, 2, 2
ld a, $4 ld a, $4
call Functione04e7 call CardFlip_FillBox
hlcoord 9, 0, AttrMap hlcoord 9, 0, AttrMap
lb bc, 12, 1 lb bc, 12, 1
ld a, $1 ld a, $1
call Functione04e7 call CardFlip_FillBox
ld a, [rSVBK] ld a, [rSVBK]
push af push af
ld a, $5 ld a, $5
@ -1676,19 +1682,19 @@ Palette_e0c93: ; e0c93
RGB 31, 00, 00 RGB 31, 00, 00
; e0cdb ; e0cdb
LZ_e0cdb: ; e0cdb CardFlipLZ03: ; e0cdb
INCBIN "gfx/unknown/0e0cdb.2bpp.lz" INCBIN "gfx/unknown/0e0cdb.2bpp.lz"
GFX_e0cf6: ; e0cf6 CardFlipOffButtonGFX: ; e0cf6
INCBIN "gfx/unknown/0e0cf6.2bpp" INCBIN "gfx/unknown/0e0cf6.2bpp"
GFX_e0d06: ; e0d06 CardFlipOnButtonGFX: ; e0d06
INCBIN "gfx/unknown/0e0d06.2bpp" INCBIN "gfx/unknown/0e0d06.2bpp"
LZ_e0d16: ; e0d16 CardFlipLZ01: ; e0d16
INCBIN "gfx/unknown/0e0d16.2bpp.lz" INCBIN "gfx/unknown/0e0d16.2bpp.lz"
LZ_e0ea8: ; e0ea8 CardFlipLZ02: ; e0ea8
INCBIN "gfx/unknown/0e0ea8.2bpp.lz" INCBIN "gfx/unknown/0e0ea8.2bpp.lz"
Unknown_e110c: ; e110c Unknown_e110c: ; e110c
@ -1806,7 +1812,7 @@ Functione124e: ; e124e
ld d, $0 ld d, $0
add hl, de add hl, de
ld e, [hl] ld e, [hl]
ld hl, wc6d0 ld hl, wDeck
add hl, de add hl, de
ld a, [hl] ld a, [hl]
and a and a
@ -2168,7 +2174,7 @@ endr
; e1475 ; e1475
Functione1475: ; e1475 Functione1475: ; e1475
ld hl, wc6d0 ld hl, wDeck
ld a, [wcf65] ld a, [wcf65]
ld e, a ld e, a
ld d, $0 ld d, $0
@ -2199,7 +2205,7 @@ Unknown_e148f: ; e148f
Functione14a0: ; e14a0 Functione14a0: ; e14a0
ld hl, Unknown_e14b5 ld hl, Unknown_e14b5
ld de, wc6d0 ld de, wDeck
ld c, $24 ld c, $24
.asm_e14a8 .asm_e14a8
ld a, [de] ld a, [de]

View File

@ -265,7 +265,7 @@ Slots_Init: ; 9287e (24:687e)
Slots_BetAndStart: ; 9288e (24:688e) Slots_BetAndStart: ; 9288e (24:688e)
call Slots_AskBet call Slots_AskBet
jr nc, .proceed jr nc, .proceed
ld a, Slots_QuitJumptableIndex ld a, Slots_QuitTableIndex
ld [wJumptableIndex], a ld [wJumptableIndex], a
ret ret
@ -275,7 +275,7 @@ Slots_BetAndStart: ; 9288e (24:688e)
call Slots_InitBias call Slots_InitBias
ld a, 32 ld a, 32
ld [wcf64], a ld [wcf64], a
ld a, 4 ; ReelAction_NormalRateJumptableIndex ld a, 4 ; ReelAction_NormalRateTableIndex
ld [wReel1ReelAction], a ld [wReel1ReelAction], a
ld [wReel2ReelAction], a ld [wReel2ReelAction], a
ld [wReel3ReelAction], a ld [wReel3ReelAction], a
@ -455,12 +455,12 @@ Slots_RestartOrQuit: ; 929d9 (24:69d9)
call WaitPressAorB_BlinkCursor call WaitPressAorB_BlinkCursor
call Slots_AskPlayAgain call Slots_AskPlayAgain
jr c, .exit_slots jr c, .exit_slots
ld a, Slots_InitJumptableIndex ld a, Slots_InitTableIndex
ld [wJumptableIndex], a ld [wJumptableIndex], a
ret ret
.exit_slots .exit_slots
ld a, Slots_QuitJumptableIndex ld a, Slots_QuitTableIndex
ld [wJumptableIndex], a ld [wJumptableIndex], a
ret ret

View File

@ -212,7 +212,7 @@ ENDM
palettes EQUS "* 8" palettes EQUS "* 8"
ldpixel: MACRO ldpixel: MACRO
if _NARG == 5 if _NARG >= 5
lb \1, \2 * 8 + \4, \3 * 8 + \5 lb \1, \2 * 8 + \4, \3 * 8 + \5
else else
lb \1, \2 * 8, \3 * 8 lb \1, \2 * 8, \3 * 8
@ -222,7 +222,7 @@ endm
depixel EQUS "ldpixel de," depixel EQUS "ldpixel de,"
dbpixel: MACRO dbpixel: MACRO
if _NARG == 4 if _NARG >= 4
db \1 * 8 + \3, \2 * 8 + \4 db \1 * 8 + \3, \2 * 8 + \4
else else
db \1 * 8, \2 * 8 db \1 * 8, \2 * 8
@ -230,7 +230,7 @@ endc
endm endm
bgcoord: MACRO bgcoord: MACRO
IF _NARG == 4 IF _NARG >= 4
ld \1, \3 * $20 + \2 + \4 ld \1, \3 * $20 + \2 + \4
ELSE ELSE
ld \1, \3 * $20 + \2 + VBGMap0 ld \1, \3 * $20 + \2 + VBGMap0
@ -249,7 +249,7 @@ palblue EQUS "$0001 *"
dsprite: MACRO dsprite: MACRO
; conditional segment is there because not every instance of ; conditional segment is there because not every instance of
; this macro is directly OAM ; this macro is directly OAM
if _NARG == 7 ; y tile, y pxl, x tile, x pxl, vtile offset, flags, palette if _NARG >= 7 ; y tile, y pxl, x tile, x pxl, vtile offset, flags, palette
db (\1 * 8) % $100 + \2, (\3 * 8) % $100 + \4, \5, (\6 << 3) + (\7 & 7) db (\1 * 8) % $100 + \2, (\3 * 8) % $100 + \4, \5, (\6 << 3) + (\7 & 7)
else else
db (\1 * 8) % $100 + \2, (\3 * 8) % $100 + \4, \5, \6 db (\1 * 8) % $100 + \2, (\3 * 8) % $100 + \4, \5, \6
@ -257,27 +257,24 @@ endc
endm endm
jumptable_start: MACRO jumptable_start: MACRO
; Use the declare opname you want to use,
; either "dw", "dba", or "dab".
if def(__far)
purge __far
endc
if _NARG == 0 if _NARG == 0
__far = 0 __far EQUS "dw"
else else
__far = \1 ; 0: dw | 1: dba | 2: dab __far EQUS "\1"
endc endc
enum_start enum_start
endm endm
jumptable: MACRO jumptable: MACRO
if DEF(\1JumptableIndex) if DEF(\1TableIndex)
__enum__ = __enum__ + 1 __enum__ = __enum__ + 1
else else
enum \1JumptableIndex enum \1TableIndex
endc
if __far == 0
dw \1
else
if __far == 1
dba \1
else
dab \1
endc
endc endc
__far \1
endm endm

View File

@ -808,6 +808,13 @@ wSlotsDataEnd::
wSlotsEnd:: wSlotsEnd::
ds wSlots - @ ds wSlots - @
; Card Flip
wCardFlip::
wDeck:: ds 24
wDeckEnd::
wCardFlipEnd::
ds wCardFlip - @
wc6d0:: wc6d0::
PlayerSDefLevel:: ; c6d0 PlayerSDefLevel:: ; c6d0
ds 1 ds 1