diff --git a/00TheFool.inc b/00TheFool.inc index 54bbea0..195f5a4 100644 --- a/00TheFool.inc +++ b/00TheFool.inc @@ -59,6 +59,9 @@ def Card_Offset_functions equ @-TheFool ; height and width in a & %11110000 and a & %00001111 ??? that's deranged call BuildMetaSprite + ret ; we're getting rid of everything but the doggie + + ld hl, .zero ld de, MY_OAM + 6*4 ; we've already written six sprites for the doggie, 4 bytes each ld bc, $100*26+41 @@ -120,7 +123,8 @@ def Card_Offset_functions equ @-TheFool ld [CVS+1], a call .dogDance ; and make the dog dance .doneWithTimer1 - + ret ; don't need anything else + ld hl, CVS+3 call IncrementTimer diff --git a/04TheEmperor.inc b/04TheEmperor.inc index 972e6ea..9956ca6 100644 --- a/04TheEmperor.inc +++ b/04TheEmperor.inc @@ -346,22 +346,23 @@ TheEmperor: .SpriteTilesEnd: EmperorMap: - db $1b, $1c, $1d, $1e, $1f, $20, $21, $62 - db $22, $23, $24, $25, $26, $63, $64, $65 - db $28, $29, $2a, $2b, $2c, $6d, $66, $4d - db $6e, $2d, $2e, $2f, $30, $31, $27, $6e - db $6f, $32, $74, $1a, $1a, $76, $33, $6f - db $70, $34, $6a, $75, $72, $35, $36, $70 - db $37, $38, $6b, $77, $73, $39, $3a, $69 - db $3b, $3c, $3d, $77, $77, $3e, $3f, $40 - db $41, $42, $43, $77, $44, $45, $46, $47 - db $6c, $48, $49, $4a, $4b, $77, $4c, $79 - db $6c, $4e, $77, $77, $77, $4f, $50, $79 - db $6c, $51, $52, $53, $54, $55, $56, $79 - db $67, $57, $58, $59, $5a, $5b, $5c, $68 - db $5d, $5e, $5f, $71, $71, $60, $61, $78 - db $71, $71, $71, $7b, $7c, $71, $71, $71 - db $71, $71, $71, $7a, $7d, $71, $71, $71 + db $1b, $1c, $1d, $1e, $1f, $20, $21, $5f + db $22, $23, $24, $25, $26, $60, $61, $62 + db $28, $29, $2a, $2b, $2c, $6a, $63, $4c + db $6b, $2d, $2e, $2f, $30, $31, $27, $6b + db $6c, $32, $71, $1a, $1a, $73, $33, $6c + db $6d, $34, $67, $72, $6f, $35, $36, $6d + db $37, $38, $68, $7b, $70, $39, $3a, $66 + db $3b, $3c, $3d, $74, $74, $3e, $3f, $40 + db $41, $42, $43, $7d, $44, $45, $46, $47 + db $69, $48, $74, $49, $4a, $74, $4b, $76 + db $69, $4d, $74, $74, $74, $74, $4e, $76 + db $69, $4f, $50, $74, $51, $52, $53, $76 + db $64, $54, $55, $56, $57, $58, $59, $65 + db $5a, $5b, $5c, $7c, $6e, $5d, $5e, $75 + db $6e, $6e, $6e, $78, $79, $6e, $6e, $6e + db $6e, $6e, $6e, $77, $7a, $6e, $6e, $6e + EmperorMapEnd: EmperorTiles: @@ -374,96 +375,96 @@ EmperorTiles: db $ff,$ff,$ff,$ff,$f8,$ff,$f0,$fc,$f0,$f8,$f0,$f8,$f0,$f9,$00,$ff db $ff,$ff,$ff,$ff,$00,$ff,$00,$10,$00,$10,$00,$d0,$00,$70,$00,$fe db $74,$fe,$fc,$fe,$dc,$ff,$fe,$ff,$54,$ff,$fc,$ff,$dc,$fe,$fc,$ff - db $00,$30,$00,$2f,$00,$10,$00,$1f,$07,$18,$0f,$10,$0f,$30,$0f,$70 - db $0e,$91,$0e,$b1,$1e,$21,$3c,$c3,$fc,$03,$fc,$03,$fc,$03,$fc,$03 - db $00,$ff,$00,$ff,$00,$f8,$00,$f0,$00,$e0,$18,$98,$08,$98,$00,$82 - db $0f,$f0,$07,$f8,$03,$fc,$03,$7c,$03,$3c,$c1,$de,$81,$ce,$01,$0e - db $f5,$0f,$f3,$0f,$f5,$0f,$f7,$0f,$f5,$0f,$f3,$0f,$f5,$0f,$f6,$0f + db $00,$30,$00,$2f,$00,$10,$00,$1f,$07,$18,$07,$18,$07,$38,$07,$78 + db $00,$9f,$0e,$b1,$1e,$21,$3c,$c3,$fc,$03,$fc,$03,$fc,$03,$fc,$03 + db $00,$ff,$00,$ff,$07,$f8,$0f,$f0,$1f,$e0,$7f,$b8,$d7,$90,$bd,$c2 + db $00,$ff,$07,$f8,$03,$fc,$83,$7c,$c3,$3c,$e1,$fe,$59,$4e,$e9,$1e + db $e5,$1f,$e3,$1f,$e5,$1f,$e7,$1f,$e5,$1f,$e3,$1f,$e5,$1f,$e6,$1f db $54,$ff,$ff,$ff,$55,$ff,$ff,$ff,$55,$ff,$bb,$ff,$55,$ff,$ff,$ff - db $0f,$f0,$ef,$f0,$4f,$f0,$ef,$f0,$4f,$f0,$ef,$f0,$4f,$f0,$ef,$f0 + db $07,$f8,$e7,$f8,$47,$f8,$e7,$f8,$47,$f8,$e7,$f8,$47,$f8,$e7,$f8 db $fc,$03,$fc,$03,$fc,$03,$fd,$03,$ff,$03,$ff,$02,$ff,$00,$ff,$00 - db $40,$83,$40,$80,$b0,$c7,$80,$ff,$80,$70,$80,$7f,$c0,$7f,$e0,$7f - db $10,$0f,$11,$0e,$39,$0e,$09,$fe,$0d,$76,$0e,$f3,$0e,$f1,$7f,$f0 - db $4f,$f0,$af,$f0,$4f,$f0,$ef,$f0,$4f,$f0,$af,$f1,$4f,$f3,$ef,$f7 - db $ff,$00,$ff,$01,$ff,$0f,$ff,$3f,$f1,$71,$c0,$c0,$80,$80,$00,$00 - db $fd,$3f,$e7,$e7,$20,$20,$1f,$1f,$00,$00,$80,$80,$f9,$f9,$0f,$0f - db $ff,$e0,$3f,$3e,$23,$23,$c3,$c3,$06,$06,$0c,$0c,$f8,$f8,$00,$00 - db $ff,$00,$ff,$00,$ff,$80,$ff,$f0,$3f,$3c,$0f,$0c,$07,$06,$03,$03 - db $4e,$f6,$ae,$f6,$4e,$f6,$ae,$f6,$4e,$f6,$ae,$f6,$4f,$f7,$af,$f7 - db $f5,$8f,$f2,$8f,$f5,$cf,$76,$4f,$75,$6f,$32,$2f,$35,$2f,$32,$2f - db $0f,$f2,$af,$f2,$4f,$f2,$af,$f2,$0f,$f2,$af,$f2,$4f,$f6,$ad,$fc - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01 - db $35,$2f,$32,$2f,$35,$2f,$32,$2f,$71,$6f,$72,$6f,$f4,$cf,$f2,$cf - db $00,$ff,$aa,$ff,$04,$ff,$aa,$ff,$00,$ff,$a9,$ff,$03,$ff,$a7,$fa - db $0d,$f8,$95,$f0,$35,$e0,$55,$c0,$d5,$80,$55,$00,$55,$00,$54,$01 - db $ff,$ff,$35,$f0,$35,$f0,$35,$f0,$35,$f0,$35,$f0,$35,$f8,$39,$7c - db $71,$6f,$72,$3f,$5c,$1b,$56,$07,$57,$03,$55,$01,$55,$00,$55,$00 - db $0f,$f3,$1e,$e2,$3e,$c6,$7c,$8c,$f8,$1f,$f8,$18,$f0,$30,$30,$f0 - db $f4,$e3,$3d,$3b,$05,$07,$03,$0b,$02,$f3,$02,$13,$3a,$3b,$2a,$3b - db $c1,$fc,$91,$fc,$11,$fc,$11,$fc,$15,$f8,$35,$f0,$35,$f0,$75,$e0 - db $39,$7e,$1e,$7f,$17,$7f,$12,$7f,$49,$3f,$4c,$3f,$46,$1f,$53,$0f - db $55,$00,$55,$00,$f5,$e1,$3d,$fd,$87,$ff,$41,$ff,$21,$ff,$19,$ff + db $be,$c3,$df,$e0,$c8,$f7,$80,$ff,$8f,$70,$80,$7f,$c0,$7f,$e0,$7f + db $e9,$1e,$d9,$3e,$99,$7e,$09,$fe,$8d,$76,$0f,$f2,$1f,$f0,$3f,$f0 + db $47,$f8,$a7,$f8,$47,$f8,$e7,$f8,$47,$f8,$a7,$f9,$47,$fb,$e7,$ff + db $ff,$00,$ff,$01,$ff,$0f,$ff,$3f,$f3,$f3,$c3,$c3,$81,$81,$00,$00 + db $fd,$3f,$e7,$e7,$20,$20,$1f,$1f,$00,$00,$80,$80,$ff,$ff,$ff,$ff + db $ff,$e0,$3f,$3e,$23,$23,$c3,$c3,$07,$07,$0e,$0e,$fc,$fc,$f8,$f8 + db $ff,$00,$ff,$00,$ff,$80,$ff,$e0,$7f,$70,$3f,$38,$1f,$1c,$0f,$0e + db $46,$fe,$a6,$fe,$46,$fe,$a6,$fe,$46,$fe,$a7,$ff,$47,$ff,$a7,$ff + db $e5,$1f,$e2,$9f,$e5,$df,$e6,$df,$65,$7f,$62,$7f,$65,$7f,$62,$7f + db $07,$fb,$a7,$fb,$47,$fb,$a7,$fb,$07,$ff,$a7,$fe,$47,$fe,$ad,$fc + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$c0,$c0,$ff,$ff + db $65,$7f,$62,$7f,$65,$7f,$62,$7f,$61,$7f,$62,$7f,$e4,$ff,$e2,$ff + db $00,$ff,$aa,$ff,$04,$ff,$aa,$ff,$00,$ff,$a9,$ff,$03,$ff,$a7,$fb + db $0d,$fc,$9d,$f8,$35,$f0,$75,$e0,$d5,$c0,$d5,$80,$54,$01,$f4,$e3 + db $ff,$ff,$7f,$ff,$31,$fc,$31,$fc,$31,$fc,$31,$fc,$31,$fc,$39,$7e + db $f1,$ff,$7a,$7f,$7c,$3f,$5e,$1f,$5f,$0f,$57,$03,$55,$00,$55,$00 + db $0f,$f3,$1e,$e2,$3e,$c6,$7c,$8c,$f8,$1f,$f0,$10,$10,$f0,$10,$f0 + db $f9,$ff,$1f,$1f,$07,$07,$03,$0b,$03,$f3,$02,$13,$3b,$3b,$2b,$3b + db $f9,$fe,$f9,$fe,$b1,$fe,$71,$fc,$71,$fc,$e5,$f8,$e5,$f0,$c5,$f0 + db $38,$7f,$3e,$7f,$3f,$7f,$1b,$7f,$4d,$3f,$46,$3f,$43,$1f,$51,$0f + db $55,$80,$15,$e0,$c1,$fd,$ff,$ff,$8f,$ff,$c1,$ff,$61,$ff,$b9,$ff db $fd,$fd,$83,$8b,$01,$09,$01,$09,$01,$09,$01,$09,$01,$09,$81,$89 - db $70,$bf,$70,$90,$70,$90,$78,$98,$78,$98,$7f,$8f,$7f,$80,$7f,$80 - db $26,$ff,$11,$1f,$13,$1f,$33,$3e,$37,$3e,$ed,$fc,$ed,$18,$fd,$18 - db $d5,$c0,$d5,$80,$55,$00,$55,$00,$55,$00,$55,$20,$45,$30,$41,$1c + db $10,$ff,$70,$90,$70,$90,$70,$90,$78,$98,$7f,$8f,$7f,$80,$7f,$80 + db $27,$ff,$17,$1f,$1f,$1f,$3e,$3f,$3c,$3f,$fd,$fe,$f9,$3e,$f9,$3c + db $d5,$e0,$95,$e0,$15,$c0,$55,$80,$55,$00,$40,$3f,$54,$01,$55,$00 db $55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$54,$01,$50,$07 - db $51,$07,$54,$03,$54,$01,$54,$01,$55,$00,$00,$7f,$15,$c0,$55,$00 - db $8f,$ff,$8f,$ff,$cf,$ff,$6f,$fa,$37,$f8,$1f,$f8,$1f,$f8,$1f,$78 + db $50,$07,$54,$03,$54,$01,$54,$01,$55,$00,$00,$7f,$15,$c0,$55,$00 + db $df,$ff,$6f,$ff,$3f,$ff,$1f,$fa,$1f,$fc,$0f,$fc,$0f,$fc,$0f,$7e db $c3,$cb,$fe,$ff,$fe,$ff,$9e,$95,$9e,$91,$9e,$91,$9e,$91,$9e,$91 - db $f5,$10,$f5,$20,$f5,$20,$f5,$20,$f5,$20,$f5,$20,$f5,$20,$f5,$20 - db $54,$03,$55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$55,$00 - db $15,$e0,$05,$f0,$45,$30,$40,$1f,$55,$00,$55,$00,$55,$00,$55,$00 - db $51,$04,$55,$08,$05,$78,$15,$c0,$55,$00,$55,$00,$55,$00,$55,$00 - db $4f,$38,$47,$1e,$57,$0e,$53,$06,$53,$06,$53,$06,$57,$06,$57,$04 + db $f1,$3c,$f1,$7c,$f5,$78,$e5,$78,$e5,$78,$e5,$78,$e5,$78,$e5,$f0 + db $45,$18,$51,$0c,$50,$07,$54,$01,$55,$00,$55,$00,$55,$00,$55,$00 + db $51,$0c,$45,$18,$05,$70,$15,$c0,$55,$00,$55,$00,$55,$00,$55,$00 + db $0f,$7e,$07,$7e,$07,$7e,$07,$7e,$07,$7e,$07,$7e,$07,$7e,$0f,$7e db $55,$ff,$ff,$ff,$55,$ff,$ff,$ff,$55,$ff,$ef,$ff,$55,$ff,$ff,$ff - db $f5,$20,$f5,$20,$f5,$60,$d5,$60,$d5,$60,$d5,$60,$d5,$60,$d5,$e0 - db $55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$54,$03,$50,$07 - db $53,$0c,$5f,$08,$5f,$08,$57,$18,$5f,$10,$5f,$10,$7f,$30,$7f,$20 - db $d5,$e0,$c0,$ff,$80,$ff,$80,$ff,$9f,$f0,$90,$f0,$90,$f0,$90,$f0 - db $55,$00,$15,$c0,$15,$e0,$05,$f0,$c5,$38,$61,$1c,$31,$1e,$18,$1f - db $55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$55,$80 - db $55,$00,$55,$00,$55,$00,$55,$00,$54,$01,$54,$03,$50,$0f,$40,$1f - db $50,$0f,$40,$3f,$0c,$73,$1f,$e0,$71,$c1,$61,$c1,$e1,$c1,$c3,$c3 - db $7f,$e0,$7f,$c0,$7f,$c0,$ff,$c0,$ff,$80,$ff,$00,$ff,$00,$ff,$00 - db $d0,$70,$f0,$70,$f8,$38,$d8,$38,$df,$3f,$d9,$39,$d0,$30,$e0,$e0 - db $30,$3f,$30,$3f,$20,$3f,$20,$3f,$70,$6f,$f8,$e7,$3e,$21,$3f,$3f - db $15,$c0,$05,$f0,$01,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$c0,$ff - db $40,$3f,$00,$7f,$00,$ff,$00,$ff,$01,$fe,$03,$fc,$0f,$f0,$7f,$ff - db $c3,$c2,$c3,$c2,$c7,$c6,$c7,$ce,$e7,$fe,$ff,$ff,$80,$80,$80,$80 - db $ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$80,$ff,$ff + db $e5,$f0,$c5,$f0,$c5,$f0,$c5,$f0,$c5,$f0,$c5,$f0,$c5,$f0,$c5,$f0 + db $0f,$7c,$0f,$7c,$0f,$7c,$1f,$7c,$1f,$78,$3f,$78,$3f,$78,$7f,$70 + db $c5,$f0,$c5,$f0,$c5,$f0,$f5,$f0,$ff,$ff,$ff,$ff,$df,$ff,$ff,$f0 + db $55,$00,$55,$00,$55,$00,$55,$00,$d5,$c0,$f5,$f0,$fd,$f8,$ff,$7e + db $55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$57,$03,$57,$07 + db $55,$00,$57,$03,$5f,$0f,$7f,$3f,$7f,$7f,$ff,$f8,$f8,$e0,$e1,$c1 + db $ff,$e0,$ff,$e0,$ff,$c0,$ff,$c0,$ff,$80,$ff,$80,$ff,$80,$ff,$80 + db $f0,$f0,$f0,$70,$f8,$38,$d8,$3f,$df,$3f,$d0,$30,$30,$f0,$e0,$e0 + db $7f,$3f,$3f,$3f,$33,$3f,$39,$ff,$fc,$ff,$fe,$ff,$1f,$7f,$1f,$7f + db $55,$00,$d5,$80,$f5,$e0,$ff,$ff,$ff,$ff,$3f,$ff,$c0,$ff,$ff,$ff + db $5f,$1f,$7e,$3f,$fd,$ff,$f3,$ff,$c7,$ff,$9f,$ff,$7e,$ff,$ff,$ff + db $c1,$c1,$c1,$c1,$c1,$c1,$c1,$c1,$c3,$ff,$ff,$ff,$80,$c0,$80,$c0 + db $ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$80,$ff,$ff,$ff db $00,$ff,$00,$ff,$01,$ff,$03,$ff,$02,$fe,$06,$fe,$04,$fc,$07,$ff db $60,$e0,$c0,$c0,$80,$80,$00,$01,$00,$07,$07,$3f,$7c,$7f,$e0,$ff - db $10,$1f,$10,$1f,$10,$ff,$30,$ff,$e0,$ff,$80,$ff,$00,$ff,$00,$ff - db $80,$80,$80,$80,$80,$f0,$c0,$f0,$60,$f8,$30,$fc,$18,$ff,$0f,$ff + db $10,$7f,$10,$7f,$10,$ff,$30,$ff,$e0,$ff,$80,$ff,$00,$ff,$00,$ff + db $80,$c0,$80,$c0,$80,$e0,$c0,$f0,$60,$f8,$30,$fc,$18,$ff,$0f,$ff db $60,$7f,$20,$7f,$30,$3f,$10,$3f,$18,$1f,$08,$1f,$0c,$8f,$fc,$ff db $ff,$ff,$ff,$ff,$7f,$ff,$3f,$ff,$37,$7f,$3f,$7f,$3f,$7f,$3f,$7f - db $f0,$09,$f0,$0d,$f8,$04,$fc,$03,$ff,$00,$ff,$00,$ff,$00,$ff,$00 - db $00,$0c,$00,$fc,$00,$08,$00,$f8,$e0,$18,$f0,$08,$f0,$0c,$f0,$0e + db $00,$f9,$f0,$0d,$f8,$04,$fc,$03,$ff,$00,$ff,$00,$ff,$00,$ff,$00 + db $00,$0c,$00,$fc,$00,$08,$00,$f8,$e0,$18,$e0,$18,$e0,$1c,$e0,$1e db $37,$7f,$3f,$7f,$1d,$ff,$7f,$ff,$77,$ff,$3f,$ff,$1d,$7f,$3f,$ff - db $f4,$0f,$f7,$0f,$f5,$0f,$f7,$0f,$f5,$0f,$f6,$0f,$f5,$0f,$f7,$0f - db $7f,$80,$7f,$80,$7f,$80,$7f,$80,$7f,$80,$7f,$80,$7f,$80,$ff,$ff - db $9e,$91,$9e,$91,$9e,$91,$9e,$91,$9e,$91,$9e,$91,$9e,$91,$9f,$9f + db $e4,$1f,$e7,$1f,$e5,$1f,$e7,$1f,$e5,$1f,$e6,$1f,$e5,$1f,$e7,$1f + db $7f,$80,$7f,$80,$7f,$80,$7f,$80,$7f,$80,$7f,$80,$00,$ff,$ff,$ff + db $9e,$91,$9e,$91,$9e,$91,$9e,$91,$9e,$91,$9e,$91,$90,$9f,$9f,$9f db $01,$ff,$aa,$ff,$e4,$ff,$9a,$9f,$98,$9f,$fe,$ff,$94,$b7,$92,$93 - db $c0,$c0,$70,$30,$58,$18,$5c,$0e,$57,$07,$55,$07,$54,$07,$54,$07 - db $54,$0f,$45,$1e,$4d,$1e,$49,$3e,$19,$7e,$39,$7e,$21,$fe,$61,$fc + db $f0,$f0,$fc,$fc,$7f,$3f,$5f,$1f,$47,$1f,$47,$1f,$46,$1f,$46,$1f + db $46,$1f,$4e,$3f,$4c,$3f,$1c,$7f,$3c,$ff,$38,$ff,$78,$ff,$f8,$ff db $7f,$80,$7f,$80,$7f,$80,$7f,$80,$7f,$80,$7f,$80,$7f,$80,$7f,$80 db $ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00 db $55,$ff,$bb,$ff,$55,$ff,$ee,$ff,$55,$ff,$ba,$ff,$55,$ff,$ee,$ff db $55,$ff,$aa,$ff,$55,$ff,$aa,$ff,$55,$ff,$aa,$ff,$55,$ff,$aa,$ff db $11,$ff,$aa,$ff,$45,$ff,$aa,$ff,$11,$ff,$aa,$ff,$44,$ff,$aa,$ff db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$f0,$f0 - db $5f,$0f,$54,$01,$54,$01,$55,$00,$55,$00,$55,$00,$55,$00,$55,$00 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$f8,$f8,$57,$07,$55,$00 - db $01,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$fc,$fc,$ff,$ff,$ff,$ff + db $0f,$ff,$00,$ff,$00,$ff,$40,$1f,$54,$03,$55,$00,$55,$00,$55,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$c0,$c0 + db $00,$00,$00,$00,$80,$80,$f0,$f0,$ff,$ff,$ff,$ff,$1f,$ff,$00,$ff + db $07,$07,$03,$03,$01,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 db $55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$55,$00 db $b0,$bf,$e0,$ff,$c0,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff db $9e,$91,$9e,$91,$9e,$91,$9e,$91,$9e,$91,$9e,$91,$9e,$91,$9e,$91 - db $00,$e6,$00,$e7,$00,$e7,$00,$e7,$00,$80,$00,$ff,$00,$ff,$00,$ff - db $00,$ff,$00,$ff,$00,$ff,$00,$80,$00,$e5,$00,$e4,$00,$e6,$00,$e6 - db $00,$ff,$00,$ff,$00,$ff,$00,$01,$00,$f7,$00,$e7,$00,$ef,$00,$ef - db $00,$4f,$00,$5f,$00,$1f,$00,$bf,$00,$07,$00,$ff,$00,$ff,$00,$ff + db $10,$e7,$10,$e7,$10,$e7,$10,$e7,$10,$e7,$10,$e7,$00,$80,$00,$ff + db $00,$ff,$00,$80,$10,$e4,$12,$e4,$10,$e6,$10,$e6,$11,$e6,$11,$e6 + db $00,$ff,$00,$00,$00,$f9,$02,$f9,$00,$fb,$00,$73,$04,$73,$04,$73 + db $00,$77,$00,$27,$88,$27,$88,$27,$20,$8f,$00,$8f,$00,$01,$00,$ff + db $00,$ff,$00,$ff,$54,$83,$55,$00,$55,$00,$55,$00,$55,$00,$55,$00 + db $ff,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff + db $55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$55,$00,$15,$c0,$45,$30 EmperorTilesEnd: diff --git a/09TheHermit.inc b/09TheHermit.inc index c568f70..abdb5f7 100644 --- a/09TheHermit.inc +++ b/09TheHermit.inc @@ -15,118 +15,318 @@ TheHermit: dw .fDraw dw .fPrintPrep -.fInit: ret -.fUpdate: ret +.fInit: + ld hl, CVS + ld a, 0 + ld [hl+], a ; CVS timer for swing + ld [hl+], a + ld [hl+], a ; CVS+2 frame of animation + + ld a, %10010000 + ld [rOBP0], a + ret +.fUpdate: + ld hl, CVS + call IncrementTimer + + ld a, [CVS+1] ; checking the high byte of the timer + cp a, $02 ; $10 = 1 second, $02 = 1/8 of a second + jp c, :+ ; if the timer is less than $0600, skip + + ; if the timer is greater or equal to $0600, reset it + ld a, 0 + ld [CVS], a + ld [CVS+1], a + + ld b, 4 + ld a, [CVS+2] + inc a + call ArrayClampLoopingB + ld [CVS+2], a + + ld a, [CVS+2] + ld b, a + add a, a ; *2 + add a, a ; *4 + add a, a ; *8 + add a, a ; *16 + add a, b ; *17 + add a, b ; *18 + ld b, 0 + ld c, a + ld hl, .top + add hl, bc ; now hl holds the correct frame of .top + ld de, MY_OAM + ld b, 3*8 + ld c, 4*8 + ld a, $63 + call BuildMetaSprite + + ld a, [CVS+2] + add a, a + ld b, 0 + ld c, a + ld hl, .middle + add hl, bc ; now hl holds the correct frame of .middle + ld de, MY_OAM + 4*18 + ld b, 6*8+4 + ld c, 2*8 + ld a, $12 + call BuildMetaSprite + + ld a, [CVS+2] + add a, a ; *2 + add a, a ; *4 + ld b, a ; *4 + add a, a ; *8 + add a, b ; *12 + ld b, 0 + ld c, a + ld hl, .bottom + add hl, bc + ld de, MY_OAM + 4*20 + ld b, 14*8 + ld c, 2*8 + ld a, $34 + call BuildMetaSprite +: + ret .fDraw: ret .fPrintPrep: ret + +.top ; 6 x 3 + db $00, $25, $26 + db $01, $00, $27 + db $02, $00, $28 + db $00, $29, $2a + db $00, $1b, $2b + db $00, $00, $18 + + db $00, $00, $00 + db $06, $00, $00 + db $05, $07, $00 + db $08, $00, $00 + db $00, $00, $00 + db $00, $00, $00 + + db $00, $25, $26 + db $0b, $00, $27 + db $0c, $00, $28 + db $00, $1a, $19 + db $00, $1b, $17 + db $00, $00, $18 + + db $00, $00, $00 + db $0f, $10, $00 + db $13, $14, $00 + db $16, $15, $00 + db $00, $00, $00 + db $00, $00, $00 + +.middle ; 1 x 2 + db $03, $04 + + db $09, $0a + + db $0d, $0e + + db $12, $11 + +.bottom ; metatiles are 3 x 4 + db $00, $00, $2e, $2f + db $1f, $20, $21, $2d + db $2c, $2d, $00, $00 + + db $00, $00, $00, $00 + db $31, $22, $32, $00 + db $00, $00, $00, $00 + + db $00, $00, $34, $00 + db $1c, $1d, $1e, $00 + db $33, $00, $00, $00 + + + db $00, $00, $00, $00 + db $23, $24, $30, $00 + db $00, $00, $00, $00 + + .SpriteTiles: + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$02,$00,$04,$00,$08,$00,$30,$00,$47,$00,$b8,$00 + db $c3,$00,$fc,$00,$ff,$00,$60,$00,$dc,$00,$3b,$00,$06,$00,$01,$00 + db $00,$00,$00,$00,$07,$00,$07,$00,$04,$00,$0c,$00,$09,$00,$09,$00 + db $00,$00,$00,$00,$60,$00,$f8,$00,$c8,$00,$c4,$00,$22,$00,$20,$00 + db $ff,$00,$f8,$00,$f8,$00,$e7,$00,$60,$00,$fc,$00,$3f,$00,$10,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$12,$00,$06,$00,$38,$00,$c0,$00 + db $e0,$00,$00,$00,$00,$00,$e0,$00,$00,$00,$00,$00,$c0,$00,$00,$00 + db $04,$00,$03,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$07,$00,$07,$00,$0b,$00,$15,$00,$0d,$00,$01,$00,$00,$00 + db $00,$00,$a0,$00,$e0,$00,$60,$00,$50,$00,$20,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$20,$00,$66,$00,$f8,$00,$c0,$00 + db $ff,$00,$e0,$00,$f0,$00,$ff,$00,$ff,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$08,$00,$0a,$00,$12,$00,$12,$00,$24,$00,$24,$00 + db $00,$00,$00,$00,$10,$00,$90,$00,$c8,$00,$c8,$00,$c8,$00,$c4,$00 + db $00,$00,$00,$00,$18,$00,$12,$00,$26,$00,$68,$00,$f1,$00,$6e,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$c0,$00,$80,$00,$00,$00 + db $a0,$00,$f0,$00,$f8,$00,$dc,$00,$be,$00,$30,$00,$10,$00,$00,$00 + db $07,$00,$07,$00,$0b,$00,$1a,$00,$32,$00,$2b,$00,$53,$00,$02,$00 + db $f0,$00,$e0,$00,$ff,$00,$40,$00,$ff,$00,$00,$00,$f0,$00,$3f,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$c0,$00,$00,$00,$00,$00,$00,$00 + db $c0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $0e,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$02,$00,$44,$00,$68,$00,$68,$00,$a8,$00,$a8,$00,$30,$00 + db $10,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$a0,$00,$90,$00,$80,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$00 + db $01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$07,$18,$0f,$30,$0f,$30 + db $03,$00,$0f,$00,$7f,$00,$ff,$00,$ff,$00,$fe,$01,$e0,$18,$80,$00 + db $f8,$04,$f8,$04,$f0,$0c,$c0,$38,$80,$40,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$01,$00,$07,$00,$1f,$20,$1f,$60,$1f,$e0 + db $00,$03,$07,$08,$3f,$00,$ff,$00,$ff,$00,$fc,$03,$e0,$1e,$00,$f0 + db $fc,$03,$fc,$03,$e0,$1e,$80,$60,$00,$80,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$0f,$1e,$21,$7c,$83,$70,$8e,$00,$f8,$00,$c0,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$03,$01,$02,$01,$0e,$00,$0f + db $00,$00,$00,$03,$03,$3c,$3f,$c0,$7c,$83,$e0,$1e,$c0,$20,$00,$e0 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$07,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$c0,$00 + db $60,$00,$30,$00,$18,$00,$08,$00,$0c,$00,$04,$00,$04,$00,$04,$00 + db $04,$00,$04,$00,$04,$00,$04,$00,$04,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$01,$00,$01,$00,$01,$00,$01,$00 + db $00,$00,$00,$00,$80,$00,$80,$00,$40,$00,$28,$00,$15,$00,$05,$00 + db $01,$00,$03,$00,$46,$00,$6c,$00,$2c,$00,$ac,$00,$b8,$00,$38,$00 + db $00,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80 + db $00,$00,$00,$f0,$00,$e0,$00,$80,$00,$80,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$00,$03,$00,$03,$00,$00 + db $00,$00,$00,$c0,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$3f,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$7c .SpriteTilesEnd: ; original export script by gabriel reis, modified by shoofle .KeyArtTiles: db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $09,$09,$09,$09,$0f,$0f,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $99,$79,$09,$f9,$29,$db,$09,$f9,$a9,$59,$09,$f9,$29,$d9,$09,$f9 - db $88,$77,$00,$ff,$20,$df,$00,$ff,$8e,$77,$0f,$ff,$09,$e9,$19,$f9 - db $28,$57,$00,$ff,$22,$dd,$00,$ff,$b8,$7f,$e7,$ff,$80,$ff,$00,$ff - db $88,$77,$00,$ff,$20,$df,$00,$ff,$88,$77,$00,$ff,$00,$ff,$3f,$ff - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$c0,$c0 - db $41,$e1,$40,$c3,$46,$cf,$5c,$de,$70,$fc,$3f,$ff,$e7,$e7,$80,$80 - db $e8,$d7,$40,$ff,$62,$5d,$40,$7f,$ea,$f5,$e0,$ff,$ba,$b5,$d8,$df - db $8e,$8f,$c3,$c3,$41,$c1,$41,$47,$70,$7d,$58,$78,$78,$5c,$d8,$fe - db $a9,$59,$09,$f9,$89,$f9,$e9,$f9,$59,$d9,$49,$c9,$49,$c9,$49,$c9 - db $28,$d7,$00,$ff,$22,$dd,$00,$ff,$2a,$d5,$00,$ff,$2a,$d5,$00,$ff - db $2a,$d5,$40,$bf,$2a,$d5,$00,$ff,$2a,$d5,$44,$bb,$2a,$d5,$00,$ff - db $80,$80,$80,$a2,$80,$a2,$80,$a2,$80,$b2,$80,$b2,$80,$b2,$80,$b2 - db $2a,$d5,$44,$bb,$2a,$d5,$10,$ef,$2a,$d5,$44,$bb,$2a,$d5,$10,$ef - db $80,$a2,$80,$a2,$80,$a0,$8e,$8e,$f9,$ff,$44,$bb,$aa,$55,$10,$ef - db $a8,$df,$88,$fd,$a8,$df,$98,$ef,$a8,$df,$48,$bf,$ac,$5f,$14,$ef - db $8a,$75,$55,$aa,$aa,$55,$51,$ae,$aa,$55,$55,$aa,$aa,$55,$55,$aa - db $ad,$57,$55,$af,$af,$57,$53,$af,$aa,$57,$57,$ab,$ab,$55,$55,$aa - db $c9,$c9,$c9,$c9,$89,$89,$89,$89,$89,$89,$89,$89,$89,$89,$89,$89 - db $00,$1c,$c0,$f0,$40,$75,$40,$75,$40,$75,$60,$77,$20,$76,$20,$6f - db $a8,$57,$00,$ff,$22,$dd,$00,$ff,$2a,$d5,$00,$ff,$ca,$f5,$60,$ff - db $32,$fd,$10,$ff,$1a,$fd,$08,$ff,$0a,$fd,$0a,$6f,$12,$7f,$12,$d3 - db $12,$f3,$33,$f3,$21,$e1,$41,$e1,$40,$e0,$40,$60,$40,$40,$40,$40 - db $20,$2c,$20,$3c,$30,$38,$99,$d9,$4f,$ef,$40,$6e,$60,$60,$38,$78 - db $40,$40,$c0,$c0,$80,$c0,$80,$80,$00,$80,$00,$00,$00,$00,$00,$00 - db $00,$ff,$00,$fd,$00,$f1,$00,$80,$00,$b0,$00,$20,$00,$80,$00,$83 - db $2a,$d5,$44,$bb,$2a,$d5,$91,$ee,$ea,$d5,$45,$7a,$4a,$75,$71,$6e - db $2a,$35,$25,$3a,$2a,$35,$21,$3e,$2a,$35,$25,$3a,$2a,$35,$25,$3a - db $08,$18,$08,$18,$08,$18,$08,$f8,$e8,$f8,$e8,$f8,$f8,$f8,$f0,$f0 - db $00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$03,$03,$06,$07,$18,$1e - db $2a,$35,$25,$3a,$6a,$75,$55,$6a,$ee,$d1,$15,$aa,$3b,$34,$35,$3a - db $70,$70,$71,$71,$77,$77,$7c,$7f,$30,$3c,$00,$00,$00,$00,$00,$00 - db $70,$78,$c0,$e0,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $89,$89,$09,$09,$09,$09,$09,$09,$0d,$4d,$16,$df,$b0,$f1,$e0,$e0 - db $f0,$70,$50,$b0,$90,$70,$58,$bf,$ef,$1f,$58,$a9,$a8,$59,$58,$a9 - db $e9,$1b,$59,$a9,$b9,$49,$59,$a9,$e9,$19,$59,$a9,$b8,$48,$59,$a9 - db $2e,$31,$25,$3a,$2b,$34,$35,$3a,$1f,$10,$15,$1a,$13,$1c,$15,$1a - db $17,$18,$1d,$1a,$0b,$0c,$09,$0e,$0b,$0c,$09,$0e,$0b,$0c,$09,$0e - db $0b,$0c,$09,$0e,$0f,$0c,$05,$06,$07,$04,$05,$06,$05,$06,$07,$06 - db $03,$02,$02,$03,$02,$03,$02,$03,$02,$03,$02,$03,$02,$02,$03,$03 - db $fe,$01,$fc,$03,$fe,$01,$76,$89,$fe,$01,$7e,$81,$7e,$81,$7e,$81 - db $7e,$81,$7e,$81,$fe,$81,$be,$c1,$fe,$c1,$7e,$41,$5e,$61,$66,$79 - db $00,$00,$00,$00,$00,$00,$e7,$e7,$3c,$ff,$00,$00,$00,$00,$00,$00 - db $22,$2d,$20,$27,$e0,$f0,$c0,$e0,$00,$00,$00,$00,$00,$00,$00,$00 - db $00,$00,$00,$00,$00,$00,$e0,$e0,$7c,$7c,$07,$47,$71,$7f,$c0,$c3 - db $e6,$ee,$5c,$7c,$70,$70,$0c,$3c,$0f,$0f,$00,$00,$00,$00,$00,$00 - db $30,$70,$10,$30,$18,$78,$1f,$7f,$f0,$ff,$00,$00,$00,$00,$00,$00 - db $f9,$09,$f9,$09,$f9,$09,$79,$89,$f9,$09,$f9,$09,$f9,$09,$79,$89 - db $ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fc,$03,$f8,$06 - db $ff,$00,$ff,$00,$ff,$00,$fc,$03,$f0,$0e,$c0,$38,$00,$c0,$00,$00 - db $f9,$09,$f9,$09,$99,$69,$09,$f9,$09,$09,$09,$09,$09,$09,$09,$09 - db $7f,$80,$7f,$80,$7e,$81,$78,$87,$40,$bc,$00,$e0,$00,$80,$00,$00 - db $e0,$18,$80,$60,$00,$c0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $fe,$01,$dc,$23,$fe,$01,$74,$8b,$fe,$01,$dc,$23,$fe,$01,$76,$89 + db $00,$ff,$00,$80,$21,$cc,$20,$cc,$20,$ce,$20,$ce,$20,$cf,$20,$cf + db $00,$ff,$00,$01,$10,$e7,$00,$e7,$a0,$4f,$00,$4f,$40,$1f,$80,$1f + db $20,$cf,$20,$cf,$20,$ce,$20,$ce,$20,$cc,$21,$cc,$00,$80,$00,$ff + db $20,$1f,$40,$1f,$00,$4f,$a0,$4f,$00,$e7,$10,$e7,$00,$01,$00,$ff + db $ff,$ff,$c0,$c0,$9f,$9f,$bf,$bf,$63,$7f,$03,$7f,$0b,$74,$28,$57 + db $ff,$ff,$0f,$0f,$c7,$c7,$f3,$f3,$f9,$f9,$fd,$fd,$fc,$0c,$fc,$ec + db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$f4,$fc,$fd,$fc,$fb,$f8,$f7,$f0 + db $ff,$ff,$ff,$ff,$ff,$ff,$e0,$e0,$01,$0f,$c1,$3f,$e1,$1d,$f1,$0f + db $2c,$50,$38,$47,$30,$00,$87,$8f,$5f,$df,$d8,$d8,$d8,$d8,$d9,$d8 + db $3c,$2c,$fe,$2e,$e7,$e7,$fb,$fb,$ff,$ff,$07,$07,$96,$07,$26,$07 + db $77,$ff,$7f,$7f,$1f,$3f,$9f,$9f,$c7,$cf,$e7,$e7,$f1,$f3,$f9,$f9 + db $77,$f3,$f7,$f7,$d6,$f7,$f6,$f7,$76,$f7,$f6,$f7,$f6,$f6,$f6,$f6 + db $f8,$87,$fc,$c3,$1e,$01,$ce,$c1,$6e,$61,$26,$41,$06,$01,$86,$01 + db $7e,$fe,$3e,$fe,$3f,$ff,$1f,$ff,$0f,$ff,$0f,$ff,$07,$ff,$07,$ff + db $5a,$d8,$d8,$d8,$d9,$d8,$da,$d8,$58,$d8,$d8,$d8,$d9,$d9,$d9,$d9 + db $46,$07,$86,$07,$07,$07,$07,$07,$06,$06,$86,$86,$e7,$e7,$e7,$e7 + db $7c,$fc,$3c,$fe,$1e,$ff,$9f,$7f,$ef,$1f,$37,$0f,$cd,$03,$32,$c1 + db $76,$f7,$76,$77,$16,$37,$06,$87,$c3,$f7,$e2,$ff,$c3,$ff,$f9,$ff + db $06,$e1,$c6,$31,$06,$f1,$ae,$f9,$5e,$f9,$a8,$ff,$51,$f3,$f3,$f7 + db $03,$ff,$03,$ff,$03,$ff,$19,$ff,$fd,$ff,$ff,$ff,$ff,$ff,$df,$ff + db $59,$d9,$d8,$df,$5f,$df,$df,$df,$40,$c0,$ff,$ff,$d5,$ff,$ff,$ff + db $e7,$e7,$07,$ff,$ff,$ff,$ff,$ff,$03,$03,$fb,$fb,$d3,$fb,$fb,$fb + db $0f,$f0,$83,$fc,$80,$ff,$80,$ff,$80,$ff,$83,$ff,$9f,$ff,$df,$ff + db $38,$fe,$88,$7f,$00,$ff,$00,$ff,$00,$ff,$80,$ff,$e0,$ff,$f1,$fe + db $fb,$ff,$7b,$ff,$11,$ff,$80,$7f,$40,$3f,$28,$17,$10,$07,$01,$04 + db $9f,$bf,$9b,$bf,$1f,$bf,$1f,$bf,$18,$bb,$98,$3f,$98,$3f,$98,$3f + db $e1,$e3,$81,$f9,$81,$fc,$00,$fc,$1c,$fe,$3c,$ff,$1e,$ff,$0e,$ff + db $f1,$fe,$71,$fe,$71,$fe,$71,$fe,$f1,$fe,$f1,$fe,$f1,$fe,$01,$0e + db $98,$3f,$98,$3f,$98,$3f,$98,$3f,$98,$3f,$98,$3f,$9b,$3f,$9b,$3f + db $0f,$ff,$07,$ff,$07,$ff,$07,$ff,$03,$ff,$03,$ff,$03,$ff,$01,$ff + db $15,$3f,$3f,$bf,$15,$bf,$1f,$9f,$95,$df,$9b,$df,$85,$cf,$cf,$ef + db $44,$eb,$a4,$eb,$44,$eb,$e4,$eb,$44,$eb,$a4,$eb,$44,$eb,$e4,$eb + db $fd,$03,$fd,$03,$f5,$0b,$f0,$0f,$f0,$0f,$f0,$0f,$70,$8f,$60,$9f + db $9b,$3f,$9b,$3f,$9b,$3f,$98,$3f,$98,$3f,$1f,$be,$1b,$bf,$1c,$bf + db $01,$ff,$09,$ff,$08,$ff,$04,$fb,$7e,$81,$fe,$1f,$f0,$ff,$e0,$ff + db $c5,$e7,$e3,$f7,$e1,$f3,$f3,$fb,$f1,$f9,$fd,$f9,$79,$fd,$78,$fd + db $41,$be,$41,$be,$01,$fe,$01,$fe,$01,$fe,$20,$ff,$20,$ff,$20,$ff + db $06,$ff,$e7,$1f,$07,$ff,$e7,$1f,$87,$7e,$e7,$1f,$84,$7f,$ff,$9f + db $01,$ff,$3f,$ff,$1f,$ff,$5f,$ff,$5f,$ff,$5f,$ff,$df,$ff,$df,$ff + db $f9,$fd,$f9,$fd,$f9,$fd,$f8,$fd,$f9,$f9,$f0,$f9,$e1,$fb,$c2,$e3 + db $44,$eb,$a4,$eb,$44,$eb,$a4,$eb,$44,$eb,$a4,$eb,$44,$eb,$a0,$ef + db $20,$ff,$20,$df,$20,$df,$2d,$de,$2d,$de,$2d,$de,$2d,$de,$2d,$de + db $ff,$ff,$9f,$3f,$9f,$3f,$9f,$3f,$9f,$3f,$9b,$3f,$9b,$3f,$99,$3f + db $9f,$ff,$bf,$ff,$be,$ff,$bc,$ff,$bf,$ff,$37,$ff,$77,$ff,$c7,$ff + db $c5,$e7,$8a,$ef,$05,$ef,$8e,$ef,$85,$ef,$8a,$ef,$85,$ef,$8a,$ef + db $40,$ef,$a0,$ef,$40,$ef,$a0,$ef,$40,$cf,$80,$df,$40,$df,$80,$df + db $2d,$de,$2d,$de,$2d,$de,$2d,$de,$2d,$de,$2d,$de,$2d,$de,$2d,$de + db $07,$ff,$0f,$ff,$0f,$ff,$0f,$ff,$0f,$ff,$0f,$ff,$0f,$ff,$0f,$ff + db $85,$e7,$82,$f7,$85,$b7,$82,$b7,$c1,$f7,$c2,$f7,$c5,$f7,$c2,$f7 + db $08,$df,$88,$df,$4c,$df,$8c,$df,$0c,$9f,$9c,$bf,$18,$bf,$9c,$bf + db $2d,$de,$21,$de,$20,$df,$26,$df,$26,$df,$26,$df,$26,$df,$06,$ff + db $c1,$f7,$e2,$f7,$e5,$f7,$e2,$f7,$e1,$f7,$e2,$f7,$e4,$f7,$e2,$f7 + db $1c,$bf,$9c,$bf,$1e,$bf,$9a,$bf,$1b,$bf,$9f,$bf,$1f,$bf,$9b,$bf + db $06,$ff,$26,$ff,$66,$ff,$66,$ff,$66,$ff,$66,$ff,$ee,$ff,$ee,$ff + db $e1,$f7,$e2,$f7,$e4,$f7,$e2,$f7,$e0,$f7,$e2,$f7,$e4,$f7,$f2,$f7 + db $00,$ff,$aa,$ff,$04,$ff,$aa,$ff,$01,$ff,$af,$ff,$0f,$ff,$ff,$ff + db $00,$ff,$af,$ff,$7f,$ff,$ff,$ff,$f8,$ff,$c0,$ff,$80,$ff,$00,$ff + db $1f,$bf,$df,$ff,$df,$ff,$df,$ff,$1f,$ff,$1f,$ff,$1f,$ff,$1f,$ff + db $ef,$ff,$ef,$ff,$ef,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff + db $f0,$f3,$f2,$fb,$f0,$fb,$f2,$fb,$f0,$f9,$f8,$fd,$f8,$fd,$f8,$fc + db $01,$ff,$3f,$ff,$7f,$ff,$fe,$ff,$fc,$ff,$c0,$ff,$80,$ff,$00,$ff + db $fc,$ff,$f0,$ff,$c0,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff + db $00,$ff,$00,$ff,$01,$ff,$03,$ff,$03,$ff,$01,$ff,$00,$ff,$00,$ff + db $7f,$ff,$87,$ff,$0f,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$ff,$00,$ff + db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$ff,$00,$ff + db $9f,$bf,$9f,$bf,$9f,$bf,$9f,$bf,$9f,$bf,$9f,$bf,$18,$bf,$18,$bf + db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff + db $f8,$fe,$f8,$fe,$f8,$fe,$fc,$fe,$fc,$fe,$fc,$fe,$fc,$ff,$fe,$ff + db $20,$00,$20,$00,$20,$00,$20,$00,$20,$00,$20,$00,$30,$00,$30,$00 + db $19,$bf,$1b,$bf,$1b,$bf,$1b,$bf,$19,$bf,$18,$bf,$00,$ff,$00,$ff + db $cf,$ff,$1f,$ff,$7f,$ff,$fe,$ff,$f8,$ff,$e0,$ff,$00,$ff,$00,$ff + db $ce,$ff,$80,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff + db $01,$00,$03,$00,$47,$00,$6c,$03,$6d,$03,$ed,$03,$ed,$03,$fd,$03 + db $d7,$df,$cf,$cf,$ed,$ef,$ef,$ef,$e5,$ef,$ef,$ef,$e5,$e7,$f7,$e7 + db $ff,$ff,$ff,$ff,$ff,$ff,$1f,$1f,$c7,$c7,$f3,$f3,$f9,$f8,$fd,$fc + db $f7,$7f,$7f,$7f,$1f,$3f,$bf,$9f,$97,$9f,$df,$df,$dd,$df,$df,$df + db $53,$fb,$fb,$fb,$53,$fb,$fb,$fb,$53,$fb,$fb,$fb,$53,$fb,$f8,$f8 + db $ff,$ff,$ff,$ff,$ff,$ff,$7c,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00 + db $7f,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff + db $0f,$ff,$0f,$ff,$4f,$ff,$4f,$ff,$4f,$ff,$4f,$ff,$4f,$ff,$4f,$ff + db $4f,$ff,$4d,$ff,$4f,$ff,$5f,$ff,$5f,$ff,$5f,$ff,$7f,$ff,$7f,$ff + db $18,$bf,$18,$bf,$18,$bf,$18,$bf,$18,$bf,$18,$bf,$18,$bf,$18,$bf + db $45,$ea,$a5,$ea,$44,$eb,$e4,$eb,$44,$eb,$a4,$eb,$44,$eb,$e4,$eb db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff - db $7f,$80,$7f,$80,$7f,$80,$7f,$80,$7f,$80,$7f,$80,$7f,$80,$7f,$80 - db $08,$f7,$00,$ff,$20,$df,$00,$ff,$08,$f7,$00,$ff,$22,$dd,$00,$ff - db $88,$77,$00,$ff,$20,$df,$00,$ff,$88,$77,$00,$ff,$22,$dd,$00,$ff - db $a8,$57,$00,$ff,$22,$dd,$00,$ff,$aa,$55,$00,$ff,$2a,$d5,$00,$ff - db $aa,$55,$40,$bf,$aa,$55,$00,$ff,$aa,$55,$44,$bb,$aa,$55,$00,$ff - db $aa,$55,$44,$bb,$aa,$55,$10,$ef,$aa,$55,$44,$bb,$aa,$55,$10,$ef - db $2a,$d5,$55,$aa,$2a,$d5,$51,$ae,$2a,$d5,$55,$aa,$2a,$d5,$55,$aa - db $aa,$55,$54,$ab,$aa,$55,$50,$af,$aa,$55,$54,$ab,$aa,$55,$54,$ab - db $6a,$95,$55,$aa,$2a,$d5,$55,$aa,$6e,$91,$55,$aa,$2a,$d5,$55,$aa - db $ea,$15,$55,$aa,$aa,$55,$55,$aa,$ee,$11,$55,$aa,$ab,$54,$55,$aa - db $ea,$15,$54,$ab,$aa,$55,$54,$ab,$ee,$11,$54,$ab,$aa,$55,$54,$ab - db $6e,$91,$55,$aa,$3b,$c4,$55,$aa,$6f,$90,$55,$aa,$3b,$c4,$55,$aa - db $ee,$11,$55,$aa,$bb,$44,$55,$aa,$ef,$10,$55,$aa,$bb,$44,$55,$aa - db $ee,$11,$54,$ab,$ba,$45,$54,$ab,$ee,$11,$54,$ab,$ba,$45,$54,$ab - db $7f,$80,$55,$aa,$7b,$84,$55,$aa,$7f,$80,$55,$aa,$7f,$80,$55,$aa - db $ff,$00,$55,$aa,$fb,$04,$55,$aa,$ff,$00,$55,$aa,$ff,$00,$55,$aa - db $ff,$00,$55,$aa,$ff,$00,$55,$aa,$ff,$00,$55,$aa,$ff,$00,$55,$aa - db $f9,$09,$59,$a9,$f9,$09,$59,$a9,$f9,$09,$59,$a9,$f9,$09,$59,$a9 - db $fe,$01,$54,$ab,$fe,$01,$54,$ab,$fe,$01,$54,$ab,$fe,$01,$54,$ab - db $7f,$80,$5d,$a2,$7f,$80,$75,$8a,$7f,$80,$5d,$a2,$7f,$80,$77,$88 - db $ff,$00,$dd,$22,$ff,$00,$75,$8a,$ff,$00,$dd,$22,$ff,$00,$77,$88 - db $f9,$09,$d9,$29,$f9,$09,$79,$89,$f9,$09,$d9,$29,$f9,$09,$79,$89 - db $7f,$80,$7d,$82,$7f,$80,$77,$88,$7f,$80,$7f,$80,$7f,$80,$7f,$80 - db $ff,$00,$fd,$02,$ff,$00,$77,$88,$ff,$00,$ff,$00,$ff,$00,$7f,$80 - db $01,$01,$01,$01,$01,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $00,$00,$7f,$7f,$19,$19,$18,$18,$18,$18,$18,$18,$18,$18,$18,$18 - db $00,$00,$fe,$fe,$8c,$8c,$88,$88,$d8,$d8,$50,$50,$70,$70,$20,$20 - db $18,$18,$18,$18,$18,$18,$18,$18,$19,$19,$19,$19,$7f,$7f,$00,$00 - db $70,$70,$70,$70,$d8,$d8,$88,$88,$8c,$8c,$04,$04,$fe,$fe,$00,$00 + db $55,$ff,$ff,$ff,$5d,$ff,$ff,$ff,$55,$7f,$7f,$7f,$55,$7f,$7f,$7f + db $1a,$bf,$1a,$bf,$1a,$bf,$1a,$bf,$1a,$bf,$1a,$bf,$1a,$bf,$9a,$bf + db $18,$bf,$18,$bf,$18,$bf,$18,$bf,$18,$bf,$18,$bf,$1a,$bf,$1a,$bf + db $9a,$bf,$9a,$bf,$9b,$bf,$9f,$bf,$9f,$bf,$9f,$bf,$9f,$bf,$9f,$bf + db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$f7,$ff,$ff,$ff,$ff,$ff,$ff,$ff + db $77,$ff,$ff,$ff,$df,$ff,$ff,$ff,$77,$ff,$ff,$ff,$fd,$ff,$ff,$ff + db $77,$ff,$ff,$ff,$dd,$ff,$ff,$ff,$75,$ff,$ff,$ff,$dd,$ff,$ff,$ff + db $55,$ff,$ff,$ff,$55,$ff,$ff,$ff,$55,$ff,$fb,$ff,$55,$ff,$ff,$ff + db $55,$ff,$bb,$ff,$55,$ff,$ef,$ff,$55,$ff,$bb,$ff,$55,$ff,$ee,$ff + db $55,$ff,$ab,$ff,$55,$ff,$ee,$ff,$55,$ff,$ba,$ff,$55,$ff,$ee,$ff + db $55,$ff,$aa,$ff,$55,$ff,$ae,$ff,$55,$ff,$aa,$ff,$55,$ff,$aa,$ff + db $55,$ff,$aa,$ff,$55,$ff,$aa,$ff,$51,$ff,$aa,$ff,$55,$ff,$aa,$ff + db $11,$ff,$aa,$ff,$45,$ff,$aa,$ff,$11,$ff,$aa,$ff,$54,$ff,$aa,$ff + db $11,$ff,$aa,$ff,$44,$ff,$aa,$ff,$10,$ff,$aa,$ff,$44,$ff,$aa,$ff + db $00,$ff,$aa,$ff,$04,$ff,$aa,$ff,$00,$ff,$aa,$ff,$00,$ff,$aa,$ff .KeyArtTilesEnd: .BackgroundCopy: ; tiles start at 26 - db $51, $51, $51, $51, $51, $51, $51, $51 - db $53, $1f, $54, $1d, $54, $54, $54, $54 - db $25, $21, $22, $1c, $1e, $2f, $55, $55 - db $26, $27, $23, $24, $34, $30, $56, $56 - db $28, $29, $2a, $2d, $2e, $31, $35, $57 - db $58, $2b, $2c, $3c, $32, $33, $36, $59 - db $5a, $5b, $5b, $3d, $37, $38, $39, $5c - db $5d, $5e, $5e, $3e, $3a, $3b, $3f, $5f - db $60, $61, $62, $63, $1a, $1a, $40, $64 - db $65, $66, $66, $67, $1a, $1a, $41, $50 - db $68, $69, $69, $4a, $1a, $1a, $42, $43 - db $52, $4b, $4c, $4d, $47, $20, $6a, $44 - db $4e, $4f, $1a, $1b, $48, $49, $45, $46 - db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a - db $1a, $1a, $1a, $6b, $6c, $1a, $1a, $1a - db $1a, $1a, $1a, $6d, $6e, $1a, $1a, $1a + db $1f, $20, $73, $21, $22, $65, $73, $73 + db $23, $24, $25, $26, $27, $28, $66, $74 + db $29, $2a, $2b, $2c, $2d, $2e, $64, $75 + db $2f, $30, $31, $32, $33, $34, $35, $6f + db $76, $67, $68, $36, $63, $37, $38, $39 + db $77, $77, $77, $6d, $3b, $3c, $3d, $3e + db $78, $78, $78, $3a, $3f, $40, $41, $42 + db $79, $79, $79, $43, $44, $45, $46, $47 + db $7a, $7a, $7a, $48, $49, $6c, $4a, $4b + db $7b, $7b, $7b, $4c, $4d, $71, $6a, $4e + db $7c, $7c, $7c, $4f, $50, $70, $6b, $51 + db $7d, $52, $53, $54, $55, $72, $69, $56 + db $57, $58, $59, $5a, $5b, $5c, $5d, $5e + db $6e, $6e, $6e, $6e, $6e, $60, $61, $62 + db $6e, $6e, $6e, $1b, $1c, $6e, $6e, $6e + db $6e, $6e, $6e, $1d, $1e, $6e, $6e, $6e .BackgroundCopyEnd: diff --git a/12TheHangedMan.inc b/12TheHangedMan.inc index ebc6784..f8664e8 100644 --- a/12TheHangedMan.inc +++ b/12TheHangedMan.inc @@ -20,8 +20,6 @@ TheHangedMan: ld a, 0 ld [hl+], a ; CVS timer for swing ld [hl+], a - ; drawing 12 characters total - ; top sprites ld [hl+], a ; CVS+2 frame of animation ret diff --git a/21TheWorld.inc b/21TheWorld.inc index 26ef495..4da2dca 100644 --- a/21TheWorld.inc +++ b/21TheWorld.inc @@ -29,10 +29,7 @@ TheWorld: ld [hl+], a ; CVS timer ld [hl+], a ; ld [hl+], a ; CVS + 2 frame index for rotating earth - ld [hl+], a ; CVS + 3 flag for whether we've run out of OAM - - - + ld hl, MY_OAM .priorityLoop inc hl diff --git a/Async.inc b/Async.inc index f605dcd..f4f50cc 100644 --- a/Async.inc +++ b/Async.inc @@ -20,6 +20,20 @@ def ASYNC_THREAD_CALL equ ASYNC_STACK_TOP - 2 - 2 def SAFE_ASYNC_START EQU 145 def SAFE_ASYNC_END EQU 0 +Async_Kill: + ld hl, ASYNC_STACK_TOP ; - 2 ; commenting this out so we see if this ever produces an issues + ld a, l + ld [vAsyncThreadSP], a + ld a, h + ld [vAsyncThreadSP+1], a + + ; unset next call + ld hl, rIE + res 1, [hl] ; disable stat interrupt + ld hl, rIF + res 1, [hl] ; clear the interrupt + + ret Async_Spawn_HL: di ld a, l @@ -65,6 +79,8 @@ Async_Spawn: ld sp, hl + ; are these next two steps necessary? those values should always be prepopulated + ; push early return onto thread stack ld l, LOW(Async_EarlyReturn) ld h, HIGH(Async_EarlyReturn) @@ -242,8 +258,10 @@ Async_ExitThread: reti - Async_EarlyReturn: + rept 100 + nop + endr di ; don't care about current registers bc we're done executing. diff --git a/Printing.inc b/Printing.inc index e346a86..56afbef 100644 --- a/Printing.inc +++ b/Printing.inc @@ -1,6 +1,7 @@ PUSHS "Printer Variables", WRAM0[PRINTER_VARS_START] vTooBusyForPrinter: db ; one if we're too busy to use the async thread for printer stuff vPrinterState: db ; options: NONE, READY, ERROR, FULL, PRINTING +vPreviousPrinterState: db def PS_NONE equ 0 def PS_READY equ 1 def PS_ERROR equ 2 @@ -13,6 +14,7 @@ vBuildingByte: dw vPrinterIsReady: db vPrinterRow: db +print vPrinterRow vPrinterStart: db POPS @@ -23,78 +25,6 @@ CheckForPrinter: call SendPacket ret -UpdatePrintUI: - ld a, [vPrinterState] - - cp a, PS_NONE - ld hl, BanishPrinterUI - jp z, Async_Spawn_HL - - cp a, PS_READY - ld hl, SummonPrinterUI - jp z, Async_Spawn_HL - - cp a, PS_ERROR - ld hl, ShowErrorUI - jp z, Async_Spawn_HL - - cp a, PS_PRINTING - ld hl, ShowPrinting - jp z, Async_Spawn_HL - - cp a, PS_FULL - ld hl, ShowFull - jp z, Async_Spawn_HL - - ld hl, BanishPrinterUI - jp Async_Spawn_HL - -UpdatePrintUIImmediate: - ld a, [vPrinterReturnValue] - cp a, $81 - call z, SummonPrinterUI - - ld a, [vPrinterReturnValue] - cp a, $81 - call nz, BanishPrinterUI - ret - -BanishPrinterUI: - ld hl, PrinterNotDetected - ld de, _SCRN0 + 32*1 + 17 - ld b, 2 - ld c, 2 - call CopyTilesToMap - ret -ShowErrorUI: - ld hl, PrinterError - ld de, _SCRN0 + 32*1 + 17 - ld b, 2 - ld c, 2 - call CopyTilesToMap - ret -ShowPrinting: - ld hl, PrinterPrinting - ld de, _SCRN0 + 32*1 + 17 - ld b, 2 - ld c, 2 - call CopyTilesToMap - ret -ShowFull: - ld hl, PrinterFull - ld de, _SCRN0 + 32*1 + 17 - ld b, 2 - ld c, 2 - call CopyTilesToMap - ret -SummonPrinterUI: - ld hl, PrinterAvailable - ld de, _SCRN0 + 32*1 + 17 - ld b, 2 - ld c, 2 - call CopyTilesToMap - ret - SendPacket: ; a should be the command byte @@ -203,6 +133,9 @@ PrepNetwork: ld a, 0 ld [vPrinterStart], a + ld a, PS_NONE + ld [vPreviousPrinterState], a + ld hl, rSC set 0, [hl] ret @@ -326,7 +259,6 @@ PlanTopRow: ld bc, 10 ld de, BUFFER_ONE call CopyRange ; copy tiles for the top row to the first buffer - ld b, b ret PlanRowA: ; a should be which row of a tile map we should draw push af @@ -368,7 +300,6 @@ PlanBottomRow: ld bc, 10 ld de, BUFFER_ONE call CopyRange ; copy tiles for the top row to the first buffer - ld b, b ret BuildRow: @@ -397,7 +328,6 @@ BuildRow: pop bc dec c jp nz, .loop - ld b, b pop af ret DoubleTheBuffer: @@ -431,7 +361,6 @@ DoubleTheBuffer: dec a jp nz, .bottomHalfLoop - ld b, b ret PrintTheBuffer: call ClearBuffer @@ -511,33 +440,4 @@ ClearBuffer: call SendPacket ret - -PrinterTiles: - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $00,$1c,$00,$0e,$38,$3f,$64,$7f,$7f,$7f,$7f,$40,$7f,$40,$3f,$3f - db $00,$00,$00,$00,$00,$00,$06,$b6,$ff,$ff,$ff,$11,$ff,$11,$fe,$fe - db $00,$00,$00,$80,$0e,$8e,$12,$9e,$24,$bc,$38,$b8,$00,$80,$00,$00 - db $00,$00,$00,$00,$5a,$5a,$92,$92,$5a,$5a,$52,$52,$9b,$9b,$00,$00 - db $00,$00,$18,$98,$18,$98,$18,$98,$18,$98,$00,$80,$18,$98,$00,$00 - db $00,$00,$00,$00,$d8,$d8,$94,$94,$d8,$d8,$94,$94,$d2,$d2,$00,$00 - db $00,$00,$00,$80,$19,$99,$15,$95,$19,$99,$11,$91,$11,$91,$00,$00 - db $00,$00,$00,$00,$92,$92,$5a,$5a,$96,$96,$52,$52,$52,$52,$00,$00 - db $00,$00,$00,$80,$1d,$9d,$11,$91,$19,$99,$11,$91,$11,$91,$00,$00 - db $00,$00,$00,$00,$52,$52,$52,$52,$52,$52,$52,$52,$db,$db,$00,$00 -PrinterTiles.End: ; $22 - -PrinterNotDetected: - db $00, $00 - db $13, $00 -PrinterAvailable: - db $f1, $f2 - db $f3, $f4 -PrinterPrinting: - db $f1, $f2 - db $f7, $f8 -PrinterError: - db $f1, $f2 - db $f5, $f6 -PrinterFull: - db $f1, $f2 - db $f9, $fa + \ No newline at end of file diff --git a/RecreatingCards.inc b/RecreatingCards.inc index b0e62a8..3c00dc7 100644 --- a/RecreatingCards.inc +++ b/RecreatingCards.inc @@ -42,8 +42,9 @@ BuildRelevantSpritesList: jr z, .doneWithOAM ld a, c add a, 4 + ld c, a cp a, $A0 - jr z, .doneWithOAM + jr nc, .doneWithOAM jr .loop .doneWithOAM pop af diff --git a/ScreenCardBrowse.inc b/ScreenCardBrowse.inc index c2b04eb..48b04d2 100644 --- a/ScreenCardBrowse.inc +++ b/ScreenCardBrowse.inc @@ -26,19 +26,21 @@ CardBrowseSetup: ld hl, .asyncTask call Async_Spawn_HL + call CheckForPrinter ret .asyncTask: - ld hl, PrinterTiles - ld de, _VRAM + $1000 - $10*16 - ld bc, PrinterTiles.End - PrinterTiles - call CopyRange - ld hl, CardBrowse.UITilemap ; origin ld de, _SCRN0 ; destination ld b, 18 ; height ld c, 20 ; width call CopyTilesToMap + + ld hl, CardBrowse.PrinterTiles + ld de, _VRAM + $1000 - $10*16 + ld bc, CardBrowse.PrinterTilesEnd - CardBrowse.PrinterTiles + call CopyRange + ld a, 0 ld [vBlocked], a @@ -64,7 +66,7 @@ CardBrowseUpdate: .updatePrintUI ld a, [vPrinterStart] cp a, 0 - call z, UpdatePrintUI + call z, CardBrowse.UpdatePrintUI .runPrintJob ld a, [vPrinterStart] cp a, 0 @@ -81,7 +83,8 @@ CardBrowseUpdate: call KickOffPrintJob ret - .donePrinter + .donePrinter + ld hl, rMYBTNP bit 5, [hl] jp z, .doneWithB @@ -152,7 +155,7 @@ RefreshCardTask: call DrawDeckMinimap call LoadCardData - call UpdatePrintUIImmediate + call CardBrowse.UpdatePrintUIImmediate ld a, 0 ld [vTooBusyForPrinter], a @@ -169,44 +172,115 @@ DrawDeckMinimap: ld b, $ff ; start at -1 lol ld hl, _SCRN0 + 32 + 11 -.loop - inc b - ld a, b - cp a, 5 - jp nz, .noNewLine - ld [hl], $13 - ld hl, _SCRN0 + 32*2 + 11 -.noNewLine - ld a, b - cp a, c - jp nc, .doneDrawing - ld a, d - srl a - cp a, b - jp z, .drawSelectedCard -.drawUnselectedCards - ld [hl], $12 - inc hl - jp .loop -.drawSelectedCard - bit 0, d - jp nz, .drawSelectedSecond - ld [hl], $14 - inc hl - jp .loop -.drawSelectedSecond - ld [hl], $15 - inc hl - jp .loop -.doneDrawing + .loop + inc b + ld a, b + cp a, 5 + jp nz, .noNewLine + ld [hl], $13 + ld hl, _SCRN0 + 32*2 + 11 + .noNewLine + ld a, b + cp a, c + jp nc, .doneDrawing + ld a, d + srl a + cp a, b + jp z, .drawSelectedCard + .drawUnselectedCards + ld [hl], $12 + inc hl + jp .loop + .drawSelectedCard + bit 0, d + jp nz, .drawSelectedSecond + ld [hl], $14 + inc hl + jp .loop + .drawSelectedSecond + ld [hl], $15 + inc hl + jp .loop + .doneDrawing ld [hl], $13 ret +CardBrowse.UpdatePrintUI: + ld a, [vPrinterState] + ld hl, vPreviousPrinterState + cp a, [hl] + ret z ; if the printer state has not changed, return. + ; otherwise updae previous printer state and continue to change ui + ld [hl], a + ld hl, CardBrowse.UpdatePrintUIImmediate + call Async_Spawn_HL + ret + +CardBrowse.UpdatePrintUIImmediate: + ld a, [vPrinterState] + + ld hl, CardBrowse.PrinterNotDetected + cp a, PS_NONE + jp z, .setIt + + ld hl, CardBrowse.PrinterAvailable + cp a, PS_READY + jp z, .setIt + + ld hl, CardBrowse.PrinterFull + cp a, PS_FULL + jp z, .setIt + + ld hl, CardBrowse.PrinterPrinting + cp a, PS_PRINTING + jp z, .setIt + + ld hl, CardBrowse.PrinterError + cp a, PS_ERROR + jp z, .setIt + + .setIt + ld de, _SCRN0 + 32*1 + 17 + ld b, 2 + ld c, 2 + call CopyTilesToMap + ret + +CardBrowse.PrinterNotDetected: + db $00, $00 + db $13, $00 +CardBrowse.PrinterAvailable: + db $f1, $f2 + db $f3, $f4 +CardBrowse.PrinterFull: + db $f1, $f2 + db $f9, $fa +CardBrowse.PrinterPrinting: + db $f1, $f2 + db $f7, $f8 +CardBrowse.PrinterError: + db $f1, $f2 + db $f5, $f6 + CardBrowseTeardown: ret +CardBrowse.PrinterTiles: + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$1c,$00,$0e,$38,$3f,$64,$7f,$7f,$7f,$7f,$40,$7f,$40,$3f,$3f + db $00,$00,$00,$00,$00,$00,$06,$b6,$ff,$ff,$ff,$11,$ff,$11,$fe,$fe + db $00,$00,$00,$80,$0e,$8e,$12,$9e,$24,$bc,$38,$b8,$00,$80,$00,$00 + db $00,$00,$00,$00,$5a,$5a,$92,$92,$5a,$5a,$52,$52,$9b,$9b,$00,$00 + db $00,$00,$18,$98,$18,$98,$18,$98,$18,$98,$00,$80,$18,$98,$00,$00 + db $00,$00,$00,$00,$d8,$d8,$94,$94,$d8,$d8,$94,$94,$d2,$d2,$00,$00 + db $00,$00,$00,$80,$19,$99,$15,$95,$19,$99,$11,$91,$11,$91,$00,$00 + db $00,$00,$00,$00,$92,$92,$5a,$5a,$96,$96,$52,$52,$52,$52,$00,$00 + db $00,$00,$00,$80,$1d,$9d,$11,$91,$19,$99,$11,$91,$11,$91,$00,$00 + db $00,$00,$00,$00,$52,$52,$52,$52,$52,$52,$52,$52,$db,$db,$00,$00 +CardBrowse.PrinterTilesEnd: ; $22 + CardBrowse.UITilemap: db $0e, $0a, $0a, $0a, $0a, $0a, $0a, $0a, $0a, $0f, $09, $02, $02, $02, $02, $02, $02, $02, $02, $08 diff --git a/ScreenCardRead.inc b/ScreenCardRead.inc index 338ae96..6f5096d 100644 --- a/ScreenCardRead.inc +++ b/ScreenCardRead.inc @@ -12,6 +12,7 @@ ScreenCardRead: CardReadSetup: ld a, 1 ld [vBlocked], a + ld [vTooBusyForPrinter], a ld hl, .asyncTask call Async_Spawn_HL @@ -20,6 +21,9 @@ CardReadSetup: ld de, MY_OAM ld bc, $100 call CopyRange + + call CheckForPrinter + ret .asyncTask: @@ -29,6 +33,11 @@ CardReadSetup: ld b, 18 ; height ld c, 20 ; width call CopyTilesToMap + + ld hl, CardRead.PrinterTiles + ld de, _VRAM + $1000 - $10*16 + ld bc, CardRead.PrinterTilesEnd - CardRead.PrinterTiles + call CopyRange ld a, 0 ld [vBlocked], a @@ -38,10 +47,42 @@ CardReadSetup: ret CardReadUpdate: - call CardUpdate + ld a, [vPrinterStart] + cp a, 0 + call z, CardUpdate call ScrollBackgroundTile + ld a, [vTooBusyForPrinter] + cp a, 0 + jp nz, .donePrinter + + .checkForPrinter + ld a, [vPrinterStart] + cp a, 0 + call z, CheckForPrinter + .updatePrintUI + ld a, [vPrinterStart] + cp a, 0 + call z, CardRead.UpdatePrintUI + .runPrintJob + ld a, [vPrinterStart] + cp a, 0 + call nz, RunPrintJob + + .printButton + ld hl, rMYBTNP + bit 6, [hl] ; check select? + jp z, .donePrinter + + ld a, [vPrinterState] + cp a, PS_READY + jp nz, .donePrinter + + call KickOffPrintJob + ret + .donePrinter + ld hl, rMYBTNP bit 5, [hl] jp z, .doneWithB @@ -77,6 +118,8 @@ CardReadUpdate: cp a, 0 ret nz + ld a, 1 + ld [vTooBusyForPrinter], a ld hl, ChangedCardTask call Async_Spawn_HL @@ -142,9 +185,86 @@ ChangedCardTask: ld [vPreviousCardIndex], a call LoadCardData + call CardRead.UpdatePrintUIImmediate + + ld a, 0 + ld [vTooBusyForPrinter], a ret + +CardRead.UpdatePrintUI: + ld a, [vPrinterState] + ld hl, vPreviousPrinterState + cp a, [hl] + ret z ; if the printer state has not changed, return. + ; otherwise updae previous printer state and we're good + ld [hl], a + + ld hl, CardRead.UpdatePrintUIImmediate + call Async_Spawn_HL + ret + +CardRead.UpdatePrintUIImmediate: + ld a, [vPrinterState] + ld hl, CardRead.PrinterNotDetected + cp a, PS_NONE + jp z, .setIt + + ld hl, CardRead.PrinterAvailable + cp a, PS_READY + jp z, .setIt + + ld hl, CardRead.PrinterFull + cp a, PS_FULL + jp z, .setIt + + ld hl, CardRead.PrinterPrinting + cp a, PS_PRINTING + jp z, .setIt + + ld hl, CardRead.PrinterError + cp a, PS_ERROR + jp z, .setIt + + .setIt + ld de, _SCRN0 + 32*7 + 10 + ld b, 2 + ld c, 9 + call CopyTilesToMap + + ret + +CardRead.PrinterNotDetected: + db $06, $05, $05, $05, $05, $05, $05, $05, $07 + db $01, $01, $01, $01, $01, $01, $01, $01, $01 +CardRead.PrinterAvailable: + db $03, $00, $f1, $f2, $00, $f3, $f4, $00, $04 + db $06, $05, $05, $05, $05, $05, $05, $05, $07 +CardRead.PrinterFull: + db $03, $00, $f1, $f2, $00, $f9, $fa, $00, $04 + db $06, $05, $05, $05, $05, $05, $05, $05, $07 +CardRead.PrinterPrinting: + db $03, $00, $f1, $f2, $00, $f7, $f8, $00, $04 + db $06, $05, $05, $05, $05, $05, $05, $05, $07 +CardRead.PrinterError: + db $03, $00, $f1, $f2, $00, $f5, $f6, $00, $04 + db $06, $05, $05, $05, $05, $05, $05, $05, $07 + +CardRead.PrinterTiles: + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$1c,$00,$0e,$38,$3f,$64,$7f,$7f,$7f,$7f,$40,$7f,$40,$3f,$3f + db $00,$00,$00,$00,$00,$00,$06,$b6,$ff,$ff,$ff,$11,$ff,$11,$fe,$fe + db $00,$00,$00,$00,$0e,$0e,$12,$1e,$24,$3c,$38,$38,$00,$00,$00,$00 + db $00,$00,$00,$00,$5a,$5a,$92,$92,$5a,$5a,$52,$52,$9b,$9b,$00,$00 + db $00,$00,$18,$18,$18,$18,$18,$18,$18,$18,$00,$00,$18,$18,$00,$00 + db $00,$00,$00,$00,$d8,$d8,$94,$94,$d8,$d8,$94,$94,$d2,$d2,$00,$00 + db $00,$00,$00,$00,$19,$19,$15,$15,$19,$19,$11,$11,$11,$11,$00,$00 + db $00,$00,$00,$00,$92,$92,$5a,$5a,$96,$96,$52,$52,$52,$52,$00,$00 + db $00,$00,$00,$00,$1d,$1d,$11,$11,$19,$19,$11,$11,$11,$11,$00,$00 + db $00,$00,$00,$00,$52,$52,$52,$52,$52,$52,$52,$52,$db,$db,$00,$00 +CardRead.PrinterTilesEnd: + CardRead.UITilemap: db $0e, $0a, $0a, $0a, $0a, $0a, $0a, $0a, $0a, $0f, $09, $02, $02, $02, $02, $02, $02, $02, $08, $01 diff --git a/ScreenMainMenu.inc b/ScreenMainMenu.inc index 80b4f0d..8e3d51e 100644 --- a/ScreenMainMenu.inc +++ b/ScreenMainMenu.inc @@ -39,6 +39,8 @@ MainMenuSetup: ld a, 0 ldh [rLCDC], a + call Async_Kill ; ensure we're not loading anything elsewhere + ld hl, SquaresTileset8 ld de, _VRAM + $1000 + $10 ld bc, SquaresTilesetEnd - SquaresTileset8 @@ -131,10 +133,7 @@ MainMenuSetup: ld a, %11100100 ldh [rBGP], a ldh [rOBP0], a - - ld hl, .doNothing - call Async_Spawn_HL - + ld a, LCDCF_BLK21 | LCDCF_ON | LCDCF_BGON | LCDCF_OBJON | LCDCF_OBJ16 ldh [rLCDC], a @@ -202,8 +201,7 @@ MainMenuSetup: ; load graphics into vram for deck face ; set up variables: LFSR stuff ret ; return from cardreadsetup -.doNothing - ret + MainMenuUpdate: ; if pressing a key and unblocked: ; signal an animation to start diff --git a/card_art/02thehighpriestess.aseprite b/card_art/02thehighpriestess.aseprite index b1845e6..a29e912 100644 Binary files a/card_art/02thehighpriestess.aseprite and b/card_art/02thehighpriestess.aseprite differ diff --git a/card_art/03theempress.aseprite b/card_art/03theempress.aseprite index 1aa451f..fdeb1df 100644 Binary files a/card_art/03theempress.aseprite and b/card_art/03theempress.aseprite differ diff --git a/card_art/04theemperor.aseprite b/card_art/04theemperor.aseprite index 61cba67..f010dee 100644 Binary files a/card_art/04theemperor.aseprite and b/card_art/04theemperor.aseprite differ diff --git a/card_art/09thehermit.aseprite b/card_art/09thehermit.aseprite index c422fef..865ed8b 100644 Binary files a/card_art/09thehermit.aseprite and b/card_art/09thehermit.aseprite differ diff --git a/card_art/KeyArtTiles.asm b/card_art/KeyArtTiles.asm index c13a129..3f91890 100644 --- a/card_art/KeyArtTiles.asm +++ b/card_art/KeyArtTiles.asm @@ -4,122 +4,122 @@ KeyArtTiles: db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $00,$00,$00,$c0,$00,$30,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $ff,$00,$ff,$00,$00,$00,$1f,$1f,$04,$0d,$04,$0d,$04,$0d,$04,$0d - db $ff,$00,$ff,$00,$00,$00,$fc,$fc,$90,$b0,$90,$b0,$90,$b0,$90,$b0 - db $04,$0d,$04,$0d,$04,$0d,$04,$0d,$04,$0d,$1f,$1f,$00,$00,$00,$00 - db $90,$b0,$90,$b0,$90,$b0,$90,$b0,$90,$b0,$fc,$fc,$00,$00,$00,$00 - db $00,$ff,$00,$ff,$00,$ff,$00,$f0,$07,$e7,$0f,$cf,$1f,$9f,$3f,$3f - db $00,$ff,$03,$fc,$0f,$c0,$07,$00,$f1,$f0,$fc,$fc,$fe,$fe,$ff,$bf - db $7f,$7f,$7f,$7f,$7f,$7f,$ff,$ff,$ff,$ff,$fe,$fe,$f0,$e0,$f0,$ee - db $ff,$df,$fe,$ee,$ff,$ff,$cf,$cf,$8f,$8f,$07,$07,$03,$03,$03,$3b - db $7a,$66,$10,$20,$51,$a0,$10,$a0,$0a,$b1,$85,$18,$c2,$0c,$00,$0f - db $ab,$33,$80,$02,$00,$82,$04,$02,$28,$c4,$d0,$0d,$21,$18,$00,$f8 - db $00,$00,$00,$00,$0f,$0f,$1f,$1f,$3a,$3c,$78,$71,$70,$60,$70,$68 - db $00,$00,$80,$80,$f0,$f0,$78,$f8,$3c,$3c,$3c,$bc,$1e,$1e,$0f,$8f - db $70,$60,$60,$74,$60,$70,$68,$70,$68,$72,$60,$78,$20,$38,$34,$39 - db $00,$00,$80,$80,$c0,$c0,$f0,$f0,$f8,$f8,$fc,$fc,$fe,$fe,$ff,$ff - db $30,$3c,$3a,$3c,$19,$3e,$1d,$3e,$0c,$3f,$0e,$3f,$06,$3f,$07,$1f - db $80,$80,$c0,$c0,$e0,$e0,$f0,$f0,$f8,$f8,$c0,$f8,$c0,$7c,$c0,$6f - db $03,$1f,$01,$1d,$00,$1c,$00,$0e,$00,$0e,$00,$0e,$00,$0e,$00,$0e - db $bc,$c0,$9e,$e1,$cf,$f0,$67,$78,$33,$3c,$19,$1e,$0e,$0f,$07,$07 - db $00,$c0,$00,$f0,$00,$38,$00,$0c,$00,$06,$80,$03,$00,$81,$00,$aa - db $00,$0e,$00,$07,$00,$07,$00,$07,$00,$07,$00,$07,$00,$03,$00,$03 - db $03,$03,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$80,$00,$80 - db $00,$60,$00,$60,$00,$60,$10,$70,$18,$f8,$fc,$fc,$fc,$fc,$fe,$fe - db $00,$03,$00,$01,$00,$00,$00,$00,$01,$00,$03,$00,$03,$00,$07,$00 - db $00,$c0,$00,$c0,$00,$e0,$00,$f0,$80,$78,$c0,$3c,$e0,$3f,$f8,$7f - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$e0 - db $00,$07,$00,$03,$00,$03,$00,$03,$00,$01,$00,$01,$00,$01,$00,$01 - db $fe,$fe,$fe,$fe,$fe,$fe,$fe,$fe,$fe,$fe,$7c,$fc,$7c,$fc,$b0,$f8 - db $fc,$ff,$fe,$ff,$fd,$fe,$fb,$fc,$ff,$f8,$f7,$f8,$ff,$f0,$df,$e0 - db $00,$fc,$00,$ff,$c0,$3f,$f8,$07,$ff,$0f,$ff,$0f,$ff,$0e,$ff,$04 - db $00,$01,$00,$80,$00,$f0,$00,$fc,$00,$ff,$e0,$1f,$fe,$1f,$ff,$1f - db $1f,$ff,$0f,$ff,$0f,$ff,$03,$7f,$01,$ff,$01,$fe,$0f,$f0,$ff,$80 - db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$7f,$3f,$ff - db $a0,$f0,$d0,$f0,$d8,$f8,$dc,$fc,$ec,$fc,$ee,$fe,$f6,$fe,$f6,$fe - db $1f,$ff,$3f,$cf,$3f,$c7,$7f,$83,$7f,$81,$7f,$80,$ff,$80,$bf,$ff - db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$bf,$df - db $fa,$fe,$fc,$fc,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff - db $bf,$4f,$df,$27,$df,$23,$bf,$c1,$ff,$80,$ff,$00,$ff,$00,$ff,$00 - db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$7f,$ff,$3f,$ff,$1f - db $fe,$83,$fe,$87,$fe,$cf,$fe,$cf,$ff,$e7,$ff,$e3,$ff,$e3,$ff,$f1 - db $00,$7c,$00,$07,$00,$01,$00,$00,$c0,$00,$f0,$00,$00,$f8,$00,$fe - db $07,$06,$07,$07,$03,$83,$83,$03,$c3,$03,$c1,$21,$70,$80,$30,$c8 - db $06,$06,$04,$04,$cc,$0c,$d8,$28,$ff,$08,$ff,$08,$f8,$0f,$3f,$cf - db $cc,$ff,$fc,$ff,$70,$71,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $00,$ff,$0e,$ff,$00,$ff,$00,$ff,$00,$3f,$00,$1f,$00,$0f,$00,$0f - db $03,$ff,$7f,$ff,$7f,$ff,$7f,$ff,$3f,$ff,$3f,$ff,$1f,$ff,$1f,$ff - db $07,$18,$07,$78,$88,$f0,$e0,$c0,$60,$e0,$30,$30,$1f,$5c,$07,$17 - db $f0,$0c,$23,$07,$23,$03,$03,$03,$03,$03,$01,$01,$87,$01,$01,$01 - db $01,$05,$00,$01,$00,$00,$00,$00,$18,$18,$1c,$1c,$0c,$0c,$0e,$0e - db $07,$07,$03,$83,$03,$03,$01,$01,$01,$01,$01,$01,$01,$00,$03,$00 - db $0f,$00,$fe,$01,$f9,$06,$e4,$18,$90,$60,$40,$80,$80,$00,$00,$c0 - db $9f,$9f,$87,$07,$03,$03,$01,$01,$01,$00,$01,$00,$01,$00,$01,$00 - db $d0,$67,$d0,$61,$d8,$60,$dc,$e0,$c7,$f8,$f9,$fe,$7e,$ff,$3f,$ff - db $00,$a5,$00,$b5,$00,$f5,$e0,$f5,$e0,$f5,$e0,$f7,$e3,$ff,$7f,$ff + db $00,$ff,$00,$80,$21,$cc,$20,$cc,$20,$ce,$20,$ce,$20,$cf,$20,$cf + db $00,$ff,$00,$01,$10,$e7,$00,$e7,$a0,$4f,$00,$4f,$40,$1f,$80,$1f + db $20,$cf,$20,$cf,$20,$ce,$20,$ce,$20,$cc,$21,$cc,$00,$80,$00,$ff + db $20,$1f,$40,$1f,$00,$4f,$a0,$4f,$00,$e7,$10,$e7,$00,$01,$00,$ff + db $ff,$ff,$c0,$c0,$9f,$9f,$bf,$bf,$63,$7f,$03,$7f,$0b,$74,$28,$57 + db $ff,$ff,$0f,$0f,$c7,$c7,$f3,$f3,$f9,$f9,$fd,$fd,$fc,$0c,$fc,$ec + db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$f4,$fc,$fd,$fc,$fb,$f8,$f7,$f0 + db $ff,$ff,$ff,$ff,$ff,$ff,$e0,$e0,$01,$0f,$c1,$3f,$e1,$1d,$f1,$0f + db $2c,$50,$38,$47,$30,$00,$87,$8f,$5f,$df,$d8,$d8,$d8,$d8,$d9,$d8 + db $3c,$2c,$fe,$2e,$e7,$e7,$fb,$fb,$ff,$ff,$07,$07,$96,$07,$26,$07 + db $77,$ff,$7f,$7f,$1f,$3f,$9f,$9f,$c7,$cf,$e7,$e7,$f1,$f3,$f9,$f9 + db $77,$f3,$f7,$f7,$d6,$f7,$f6,$f7,$76,$f7,$f6,$f7,$f6,$f6,$f6,$f6 + db $f8,$87,$fc,$c3,$1e,$01,$ce,$c1,$6e,$61,$26,$41,$06,$01,$86,$01 + db $7e,$fe,$3e,$fe,$3f,$ff,$1f,$ff,$0f,$ff,$0f,$ff,$07,$ff,$07,$ff + db $5a,$d8,$d8,$d8,$d9,$d8,$da,$d8,$58,$d8,$d8,$d8,$d9,$d9,$d9,$d9 + db $46,$07,$86,$07,$07,$07,$07,$07,$06,$06,$86,$86,$e7,$e7,$e7,$e7 + db $7c,$fc,$3c,$fe,$1e,$ff,$9f,$7f,$ef,$1f,$37,$0f,$cd,$03,$32,$c1 + db $76,$f7,$76,$77,$16,$37,$06,$87,$c3,$f7,$e2,$ff,$c3,$ff,$f9,$ff + db $06,$e1,$c6,$31,$06,$f1,$ae,$f9,$5e,$f9,$a8,$ff,$51,$f3,$f3,$f7 + db $03,$ff,$03,$ff,$03,$ff,$19,$ff,$fd,$ff,$ff,$ff,$ff,$ff,$df,$ff + db $59,$d9,$d8,$df,$5f,$df,$df,$df,$40,$c0,$ff,$ff,$d5,$ff,$ff,$ff + db $e7,$e7,$07,$ff,$ff,$ff,$ff,$ff,$03,$03,$fb,$fb,$d3,$fb,$fb,$fb + db $0f,$f0,$83,$fc,$80,$ff,$80,$ff,$80,$ff,$83,$ff,$9f,$ff,$df,$ff + db $38,$fe,$88,$7f,$00,$ff,$00,$ff,$00,$ff,$80,$ff,$e0,$ff,$f1,$fe + db $fb,$ff,$7b,$ff,$11,$ff,$80,$7f,$40,$3f,$28,$17,$10,$07,$01,$04 + db $9f,$bf,$9b,$bf,$1f,$bf,$1f,$bf,$18,$bb,$98,$3f,$98,$3f,$98,$3f + db $e1,$e3,$81,$f9,$81,$fc,$00,$fc,$1c,$fe,$3c,$ff,$1e,$ff,$0e,$ff + db $f1,$fe,$71,$fe,$71,$fe,$71,$fe,$f1,$fe,$f1,$fe,$f1,$fe,$01,$0e + db $98,$3f,$98,$3f,$98,$3f,$98,$3f,$98,$3f,$98,$3f,$9b,$3f,$9b,$3f + db $0f,$ff,$07,$ff,$07,$ff,$07,$ff,$03,$ff,$03,$ff,$03,$ff,$01,$ff + db $15,$3f,$3f,$bf,$15,$bf,$1f,$9f,$95,$df,$9b,$df,$85,$cf,$cf,$ef + db $44,$eb,$a4,$eb,$44,$eb,$e4,$eb,$44,$eb,$a4,$eb,$44,$eb,$e4,$eb + db $fd,$03,$fd,$03,$f5,$0b,$f0,$0f,$f0,$0f,$f0,$0f,$70,$8f,$60,$9f + db $9b,$3f,$9b,$3f,$9b,$3f,$98,$3f,$98,$3f,$1f,$be,$1b,$bf,$1c,$bf + db $01,$ff,$09,$ff,$08,$ff,$04,$fb,$7e,$81,$fe,$1f,$f0,$ff,$e0,$ff + db $c5,$e7,$e3,$f7,$e1,$f3,$f3,$fb,$f1,$f9,$fd,$f9,$79,$fd,$78,$fd + db $41,$be,$41,$be,$01,$fe,$01,$fe,$01,$fe,$20,$ff,$20,$ff,$20,$ff + db $06,$ff,$e7,$1f,$07,$ff,$e7,$1f,$87,$7e,$e7,$1f,$84,$7f,$ff,$9f + db $01,$ff,$3f,$ff,$1f,$ff,$5f,$ff,$5f,$ff,$5f,$ff,$df,$ff,$df,$ff + db $f9,$fd,$f9,$fd,$f9,$fd,$f8,$fd,$f9,$f9,$f0,$f9,$e1,$fb,$c2,$e3 + db $44,$eb,$a4,$eb,$44,$eb,$a4,$eb,$44,$eb,$a4,$eb,$44,$eb,$a0,$ef + db $20,$ff,$20,$df,$20,$df,$2d,$de,$2d,$de,$2d,$de,$2d,$de,$2d,$de + db $ff,$ff,$9f,$3f,$9f,$3f,$9f,$3f,$9f,$3f,$9b,$3f,$9b,$3f,$99,$3f + db $9f,$ff,$bf,$ff,$be,$ff,$bc,$ff,$bf,$ff,$37,$ff,$77,$ff,$c7,$ff + db $c5,$e7,$8a,$ef,$05,$ef,$8e,$ef,$85,$ef,$8a,$ef,$85,$ef,$8a,$ef + db $40,$ef,$a0,$ef,$40,$ef,$a0,$ef,$40,$cf,$80,$df,$40,$df,$80,$df + db $2d,$de,$2d,$de,$2d,$de,$2d,$de,$2d,$de,$2d,$de,$2d,$de,$2d,$de + db $07,$ff,$0f,$ff,$0f,$ff,$0f,$ff,$0f,$ff,$0f,$ff,$0f,$ff,$0f,$ff + db $85,$e7,$82,$f7,$85,$b7,$82,$b7,$c1,$f7,$c2,$f7,$c5,$f7,$c2,$f7 + db $08,$df,$88,$df,$4c,$df,$8c,$df,$0c,$9f,$9c,$bf,$18,$bf,$9c,$bf + db $2d,$de,$21,$de,$20,$df,$26,$df,$26,$df,$26,$df,$26,$df,$06,$ff + db $c1,$f7,$e2,$f7,$e5,$f7,$e2,$f7,$e1,$f7,$e2,$f7,$e4,$f7,$e2,$f7 + db $1c,$bf,$9c,$bf,$1e,$bf,$9a,$bf,$1b,$bf,$9f,$bf,$1f,$bf,$9b,$bf + db $06,$ff,$26,$ff,$66,$ff,$66,$ff,$66,$ff,$66,$ff,$ee,$ff,$ee,$ff + db $e1,$f7,$e2,$f7,$e4,$f7,$e2,$f7,$e0,$f7,$e2,$f7,$e4,$f7,$f2,$f7 + db $00,$ff,$aa,$ff,$04,$ff,$aa,$ff,$01,$ff,$af,$ff,$0f,$ff,$ff,$ff + db $00,$ff,$af,$ff,$7f,$ff,$ff,$ff,$f8,$ff,$c0,$ff,$80,$ff,$00,$ff + db $1f,$bf,$df,$ff,$df,$ff,$df,$ff,$1f,$ff,$1f,$ff,$1f,$ff,$1f,$ff + db $ef,$ff,$ef,$ff,$ef,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff + db $f0,$f3,$f2,$fb,$f0,$fb,$f2,$fb,$f0,$f9,$f8,$fd,$f8,$fd,$f8,$fc + db $01,$ff,$3f,$ff,$7f,$ff,$fe,$ff,$fc,$ff,$c0,$ff,$80,$ff,$00,$ff + db $fc,$ff,$f0,$ff,$c0,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff + db $00,$ff,$00,$ff,$01,$ff,$03,$ff,$03,$ff,$01,$ff,$00,$ff,$00,$ff + db $7f,$ff,$87,$ff,$0f,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$ff,$00,$ff + db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$ff,$00,$ff + db $9f,$bf,$9f,$bf,$9f,$bf,$9f,$bf,$9f,$bf,$9f,$bf,$18,$bf,$18,$bf db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff - db $01,$00,$01,$00,$3f,$c0,$1f,$60,$07,$39,$01,$0f,$00,$03,$00,$00 - db $3f,$7f,$3f,$7f,$2f,$7f,$37,$7f,$3b,$ff,$fd,$ff,$fe,$ff,$ff,$ff - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$c0 - db $00,$00,$00,$00,$f3,$00,$ff,$00,$ff,$80,$ff,$e0,$ff,$ff,$1f,$1f - db $ff,$e3,$eb,$f5,$f3,$7d,$ff,$3f,$ff,$0f,$ff,$03,$ff,$00,$ff,$00 - db $ff,$0f,$ff,$07,$ff,$03,$ff,$01,$ff,$00,$0f,$00,$02,$00,$00,$00 - db $00,$00,$80,$01,$80,$01,$c0,$05,$40,$95,$00,$d5,$00,$d5,$00,$d7 - db $ff,$1f,$ff,$0f,$ff,$0f,$ff,$07,$ff,$07,$ff,$03,$ff,$03,$ff,$01 - db $ff,$f0,$ff,$f8,$ff,$f8,$ff,$7c,$ff,$7c,$ff,$3e,$ff,$1e,$ff,$0e - db $ff,$01,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00 - db $0f,$00,$0f,$00,$1f,$01,$1f,$01,$3f,$01,$3f,$03,$3f,$03,$3f,$07 - db $ff,$c0,$ff,$80,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00 - db $3f,$0f,$3f,$0f,$3f,$1f,$3f,$1e,$3f,$0c,$3f,$00,$3f,$00,$1f,$00 - db $e3,$e3,$3f,$3f,$07,$47,$00,$15,$00,$00,$00,$00,$00,$00,$00,$00 - db $02,$3f,$1c,$7f,$3f,$1f,$3f,$00,$bf,$80,$bf,$80,$bf,$80,$bf,$80 - db $ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00 - db $0f,$00,$07,$00,$03,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $ff,$00,$ff,$00,$ff,$00,$ff,$00,$7f,$00,$0f,$00,$03,$00,$00,$00 - db $1f,$00,$03,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $ff,$00,$c1,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $ff,$00,$ff,$00,$3f,$00,$07,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $00,$80,$03,$03,$00,$80,$00,$50,$00,$fc,$60,$fe,$60,$ff,$70,$ff - db $00,$01,$00,$01,$00,$03,$00,$10,$00,$40,$00,$7c,$00,$f6,$00,$ff - db $00,$00,$00,$80,$00,$c0,$00,$00,$00,$00,$00,$40,$00,$7c,$00,$98 - db $00,$02,$00,$1c,$00,$00,$00,$c0,$00,$e0,$00,$3c,$00,$3c,$00,$1e - db $73,$ff,$7f,$ff,$3e,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff - db $80,$ff,$f8,$f9,$7f,$ff,$3f,$ff,$3c,$ff,$1d,$ff,$1d,$ff,$1c,$ff - db $00,$f8,$00,$fe,$e0,$fb,$f0,$f6,$d8,$ff,$bf,$ff,$0f,$ff,$0f,$ff - db $00,$00,$00,$00,$01,$01,$01,$fd,$83,$ff,$c2,$ff,$0e,$ff,$fc,$ff - db $f9,$1f,$fa,$1f,$fa,$1f,$fa,$1f,$fa,$1f,$f0,$1f,$72,$1f,$72,$1f - db $7f,$8d,$7f,$80,$ff,$80,$ff,$80,$ff,$80,$ff,$80,$ff,$80,$7f,$80 - db $ff,$e0,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00 - db $3f,$c0,$1f,$e0,$ff,$c0,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00 + db $f8,$fe,$f8,$fe,$f8,$fe,$fc,$fe,$fc,$fe,$fc,$fe,$fc,$ff,$fe,$ff + db $20,$00,$20,$00,$20,$00,$20,$00,$20,$00,$20,$00,$30,$00,$30,$00 + db $19,$bf,$1b,$bf,$1b,$bf,$1b,$bf,$19,$bf,$18,$bf,$00,$ff,$00,$ff + db $cf,$ff,$1f,$ff,$7f,$ff,$fe,$ff,$f8,$ff,$e0,$ff,$00,$ff,$00,$ff + db $ce,$ff,$80,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff + db $01,$00,$03,$00,$47,$00,$6c,$03,$6d,$03,$ed,$03,$ed,$03,$fd,$03 + db $d7,$df,$cf,$cf,$ed,$ef,$ef,$ef,$e5,$ef,$ef,$ef,$e5,$e7,$f7,$e7 + db $ff,$ff,$ff,$ff,$ff,$ff,$1f,$1f,$c7,$c7,$f3,$f3,$f9,$f8,$fd,$fc + db $f7,$7f,$7f,$7f,$1f,$3f,$bf,$9f,$97,$9f,$df,$df,$dd,$df,$df,$df + db $53,$fb,$fb,$fb,$53,$fb,$fb,$fb,$53,$fb,$fb,$fb,$53,$fb,$f8,$f8 + db $ff,$ff,$ff,$ff,$ff,$ff,$7c,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00 + db $7f,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff + db $0f,$ff,$0f,$ff,$4f,$ff,$4f,$ff,$4f,$ff,$4f,$ff,$4f,$ff,$4f,$ff + db $4f,$ff,$4d,$ff,$4f,$ff,$5f,$ff,$5f,$ff,$5f,$ff,$7f,$ff,$7f,$ff + db $18,$bf,$18,$bf,$18,$bf,$18,$bf,$18,$bf,$18,$bf,$18,$bf,$18,$bf + db $45,$ea,$a5,$ea,$44,$eb,$e4,$eb,$44,$eb,$a4,$eb,$44,$eb,$e4,$eb db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff - db $00,$ff,$0f,$f0,$06,$f8,$00,$fe,$00,$fe,$00,$fe,$02,$fc,$06,$f8 - db $02,$fc,$00,$fe,$00,$ff,$00,$ff,$e0,$1f,$ff,$00,$00,$00,$00,$00 - db $3f,$00,$7f,$00,$01,$7e,$00,$ff,$00,$ff,$00,$ff,$80,$7f,$ff,$00 - db $ff,$00,$ff,$00,$ff,$00,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$fe,$01 - db $ff,$00,$ff,$00,$ff,$00,$07,$f8,$00,$ff,$00,$ff,$00,$ff,$00,$ff - db $00,$ff,$00,$1f,$00,$3f,$00,$ff,$00,$ff,$00,$7f,$00,$03,$00,$00 - db $ff,$00,$ff,$00,$ff,$00,$ff,$00,$03,$fc,$00,$ff,$00,$ff,$00,$ff - db $ff,$00,$ff,$00,$ff,$00,$ff,$00,$00,$ff,$00,$ff,$00,$ff,$00,$ff - db $bf,$ff,$df,$ff,$ef,$ff,$f7,$ff,$f9,$ff,$fe,$ff,$ff,$ff,$ff,$ff - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff,$00,$ff,$00,$ff + db $55,$ff,$ff,$ff,$5d,$ff,$ff,$ff,$55,$7f,$7f,$7f,$55,$7f,$7f,$7f + db $1a,$bf,$1a,$bf,$1a,$bf,$1a,$bf,$1a,$bf,$1a,$bf,$1a,$bf,$9a,$bf + db $18,$bf,$18,$bf,$18,$bf,$18,$bf,$18,$bf,$18,$bf,$1a,$bf,$1a,$bf + db $9a,$bf,$9a,$bf,$9b,$bf,$9f,$bf,$9f,$bf,$9f,$bf,$9f,$bf,$9f,$bf + db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$f7,$ff,$ff,$ff,$ff,$ff,$ff,$ff + db $77,$ff,$ff,$ff,$df,$ff,$ff,$ff,$77,$ff,$ff,$ff,$fd,$ff,$ff,$ff + db $77,$ff,$ff,$ff,$dd,$ff,$ff,$ff,$75,$ff,$ff,$ff,$dd,$ff,$ff,$ff + db $55,$ff,$ff,$ff,$55,$ff,$ff,$ff,$55,$ff,$fb,$ff,$55,$ff,$ff,$ff + db $55,$ff,$bb,$ff,$55,$ff,$ef,$ff,$55,$ff,$bb,$ff,$55,$ff,$ee,$ff + db $55,$ff,$ab,$ff,$55,$ff,$ee,$ff,$55,$ff,$ba,$ff,$55,$ff,$ee,$ff + db $55,$ff,$aa,$ff,$55,$ff,$ae,$ff,$55,$ff,$aa,$ff,$55,$ff,$aa,$ff + db $55,$ff,$aa,$ff,$55,$ff,$aa,$ff,$51,$ff,$aa,$ff,$55,$ff,$aa,$ff + db $11,$ff,$aa,$ff,$45,$ff,$aa,$ff,$11,$ff,$aa,$ff,$54,$ff,$aa,$ff + db $11,$ff,$aa,$ff,$44,$ff,$aa,$ff,$10,$ff,$aa,$ff,$44,$ff,$aa,$ff + db $00,$ff,$aa,$ff,$04,$ff,$aa,$ff,$00,$ff,$aa,$ff,$00,$ff,$aa,$ff BackgroundCopy: - db $7d, $7d, $67, $68, $69, $6a, $7d, $7d - db $73, $73, $6b, $6c, $6d, $6e, $73, $73 - db $73, $20, $21, $6f, $70, $71, $61, $61 - db $74, $22, $23, $60, $72, $61, $61, $61 - db $75, $24, $25, $76, $77, $78, $7a, $7b - db $26, $49, $4a, $27, $1a, $79, $73, $73 - db $28, $4b, $5f, $4c, $29, $1a, $1a, $1a - db $2a, $44, $55, $4d, $4e, $2b, $1a, $1a - db $2c, $2d, $45, $43, $52, $4f, $2e, $54 - db $2f, $30, $46, $47, $58, $53, $50, $31 - db $32, $33, $34, $35, $48, $51, $7c, $36 - db $5c, $37, $38, $39, $3a, $3b, $51, $3c - db $5e, $5d, $61, $59, $42, $3d, $3e, $3f - db $62, $63, $61, $5b, $5a, $56, $40, $41 - db $1a, $1a, $64, $1c, $1d, $65, $66, $57 - db $1a, $1a, $1a, $1e, $1f, $1a, $1a, $1a + db $1f, $20, $73, $21, $22, $65, $73, $73 + db $23, $24, $25, $26, $27, $28, $66, $74 + db $29, $2a, $2b, $2c, $2d, $2e, $64, $75 + db $2f, $30, $31, $32, $33, $34, $35, $6f + db $76, $67, $68, $36, $63, $37, $38, $39 + db $77, $77, $77, $6d, $3b, $3c, $3d, $3e + db $78, $78, $78, $3a, $3f, $40, $41, $42 + db $79, $79, $79, $43, $44, $45, $46, $47 + db $7a, $7a, $7a, $48, $49, $6c, $4a, $4b + db $7b, $7b, $7b, $4c, $4d, $71, $6a, $4e + db $7c, $7c, $7c, $4f, $50, $70, $6b, $51 + db $7d, $52, $53, $54, $55, $72, $69, $56 + db $57, $58, $59, $5a, $5b, $5c, $5d, $5e + db $6e, $6e, $6e, $6e, $6e, $60, $61, $62 + db $6e, $6e, $6e, $1b, $1c, $6e, $6e, $6e + db $6e, $6e, $6e, $1d, $1e, $6e, $6e, $6e diff --git a/card_art/PrinterTilesRead.asm b/card_art/PrinterTilesRead.asm new file mode 100644 index 0000000..db92ed6 --- /dev/null +++ b/card_art/PrinterTilesRead.asm @@ -0,0 +1,21 @@ + ; original export script by gabriel reis, modified by shoofle + + +PrinterTilesRead: + + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$1c,$00,$0e,$38,$3f,$64,$7f,$7f,$7f,$7f,$40,$7f,$40,$3f,$3f + db $00,$00,$00,$00,$00,$00,$06,$b6,$ff,$ff,$ff,$11,$ff,$11,$fe,$fe + db $00,$00,$00,$00,$0e,$0e,$12,$1e,$24,$3c,$38,$38,$00,$00,$00,$00 + db $00,$00,$00,$00,$5a,$5a,$92,$92,$5a,$5a,$52,$52,$9b,$9b,$00,$00 + db $00,$00,$18,$18,$18,$18,$18,$18,$18,$18,$00,$00,$18,$18,$00,$00 + db $00,$00,$00,$00,$d8,$d8,$94,$94,$d8,$d8,$94,$94,$d2,$d2,$00,$00 + db $00,$00,$00,$00,$19,$19,$15,$15,$19,$19,$11,$11,$11,$11,$00,$00 + db $00,$00,$00,$00,$92,$92,$5a,$5a,$96,$96,$52,$52,$52,$52,$00,$00 + db $00,$00,$00,$00,$1d,$1d,$11,$11,$19,$19,$11,$11,$11,$11,$00,$00 + db $00,$00,$00,$00,$52,$52,$52,$52,$52,$52,$52,$52,$db,$db,$00,$00 + + + +PrinterUI(Read): + db $f7, $f8 diff --git a/card_art/SpriteTiles.asm b/card_art/SpriteTiles.asm index 2653d3d..a7e14a3 100644 --- a/card_art/SpriteTiles.asm +++ b/card_art/SpriteTiles.asm @@ -4,50 +4,62 @@ SpriteTiles: db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $1e,$18,$6c,$08,$7d,$09,$b7,$83,$9f,$87,$8c,$84,$cc,$c4,$4c,$44 - db $00,$00,$c0,$c0,$c0,$c0,$80,$80,$00,$00,$00,$00,$00,$00,$8a,$00 - db $4c,$44,$2c,$04,$25,$05,$a1,$81,$81,$81,$01,$01,$00,$00,$00,$00 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$63,$60,$73,$70 - db $40,$40,$40,$40,$03,$03,$23,$23,$61,$21,$68,$20,$6c,$24,$4c,$04 - db $16,$14,$12,$10,$12,$10,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $ca,$00,$4a,$00,$5a,$10,$10,$10,$10,$10,$00,$00,$00,$00,$00,$00 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0c,$00 - db $0f,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $f0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$07,$00,$00,$00 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$f8,$00,$00,$00 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$3f,$00,$00,$00 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$3e,$00,$00,$00,$00,$00 - db $01,$01,$01,$01,$01,$01,$08,$08,$0a,$0a,$02,$02,$00,$00,$00,$00 - db $00,$00,$c7,$c7,$c7,$c7,$8e,$8e,$0c,$0c,$08,$08,$08,$08,$8e,$0c - db $40,$40,$41,$41,$01,$01,$20,$20,$60,$20,$68,$20,$6c,$24,$4c,$04 - db $c0,$00,$00,$00,$61,$61,$e1,$e1,$83,$83,$06,$06,$04,$04,$8e,$0c - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0c,$0c,$0d,$0c - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff,$00 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$3c,$00,$00,$00 - db $0f,$0c,$de,$c4,$de,$c4,$da,$c0,$cd,$c1,$4d,$41,$4a,$42,$4a,$42 - db $00,$00,$60,$60,$e3,$e3,$83,$83,$06,$06,$0c,$0c,$08,$08,$8e,$0c - db $0b,$08,$ba,$88,$b6,$84,$db,$c1,$cd,$c1,$4b,$43,$4a,$42,$4e,$46 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$31,$30,$33,$30 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$bf,$00,$00,$00 - db $1a,$18,$2c,$08,$bc,$88,$b5,$81,$9b,$83,$4a,$42,$4c,$44,$4c,$44 - db $40,$40,$40,$40,$01,$01,$21,$21,$61,$21,$68,$20,$6c,$24,$4c,$04 - db $40,$40,$40,$40,$00,$00,$20,$20,$60,$20,$68,$20,$6c,$24,$4c,$04 - db $ce,$0c,$5e,$14,$5e,$14,$10,$10,$10,$10,$00,$00,$00,$00,$00,$00 - db $00,$00,$63,$63,$e7,$e7,$87,$87,$0c,$0c,$08,$08,$08,$08,$8e,$0c - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0f,$00 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0c,$00,$f0,$00 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$03,$00,$00,$00,$00,$00 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$f0,$00,$00,$00,$00,$00 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$19,$18,$19,$18 - db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$ff,$00 + db $00,$00,$00,$00,$02,$00,$04,$00,$08,$00,$30,$00,$47,$00,$b8,$00 + db $c3,$00,$fc,$00,$ff,$00,$60,$00,$dc,$00,$3b,$00,$06,$00,$01,$00 + db $00,$00,$00,$00,$07,$00,$07,$00,$04,$00,$0c,$00,$09,$00,$09,$00 + db $00,$00,$00,$00,$60,$00,$f8,$00,$c8,$00,$c4,$00,$22,$00,$20,$00 + db $ff,$00,$f8,$00,$f8,$00,$e7,$00,$60,$00,$fc,$00,$3f,$00,$10,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$12,$00,$06,$00,$38,$00,$c0,$00 + db $e0,$00,$00,$00,$00,$00,$e0,$00,$00,$00,$00,$00,$c0,$00,$00,$00 + db $04,$00,$03,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$07,$00,$07,$00,$0b,$00,$15,$00,$0d,$00,$01,$00,$00,$00 + db $00,$00,$a0,$00,$e0,$00,$60,$00,$50,$00,$20,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$20,$00,$66,$00,$f8,$00,$c0,$00 + db $ff,$00,$e0,$00,$f0,$00,$ff,$00,$ff,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$08,$00,$0a,$00,$12,$00,$12,$00,$24,$00,$24,$00 + db $00,$00,$00,$00,$10,$00,$90,$00,$c8,$00,$c8,$00,$c8,$00,$c4,$00 + db $00,$00,$00,$00,$18,$00,$12,$00,$26,$00,$68,$00,$f1,$00,$6e,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$c0,$00,$80,$00,$00,$00 + db $a0,$00,$f0,$00,$f8,$00,$dc,$00,$be,$00,$30,$00,$10,$00,$00,$00 + db $07,$00,$07,$00,$0b,$00,$1a,$00,$32,$00,$2b,$00,$53,$00,$02,$00 + db $f0,$00,$e0,$00,$ff,$00,$40,$00,$ff,$00,$00,$00,$f0,$00,$3f,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$c0,$00,$00,$00,$00,$00,$00,$00 + db $c0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $0e,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$02,$00,$44,$00,$68,$00,$68,$00,$a8,$00,$a8,$00,$30,$00 + db $10,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$a0,$00,$90,$00,$80,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$00 + db $01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$07,$18,$0f,$30,$0f,$30 + db $03,$00,$0f,$00,$7f,$00,$ff,$00,$ff,$00,$fe,$01,$e0,$18,$80,$00 + db $f8,$04,$f8,$04,$f0,$0c,$c0,$38,$80,$40,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$01,$00,$07,$00,$1f,$20,$1f,$60,$1f,$e0 + db $00,$03,$07,$08,$3f,$00,$ff,$00,$ff,$00,$fc,$03,$e0,$1e,$00,$f0 + db $fc,$03,$fc,$03,$e0,$1e,$80,$60,$00,$80,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$0f,$1e,$21,$7c,$83,$70,$8e,$00,$f8,$00,$c0,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$03,$01,$02,$01,$0e,$00,$0f + db $00,$00,$00,$03,$03,$3c,$3f,$c0,$7c,$83,$e0,$1e,$c0,$20,$00,$e0 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$07,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$c0,$00 + db $60,$00,$30,$00,$18,$00,$08,$00,$0c,$00,$04,$00,$04,$00,$04,$00 + db $04,$00,$04,$00,$04,$00,$04,$00,$04,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$01,$00,$01,$00,$01,$00,$01,$00 + db $00,$00,$00,$00,$80,$00,$80,$00,$40,$00,$28,$00,$15,$00,$05,$00 + db $01,$00,$03,$00,$46,$00,$6c,$00,$2c,$00,$ac,$00,$b8,$00,$38,$00 + db $00,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80 + db $00,$00,$00,$f0,$00,$e0,$00,$80,$00,$80,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$00,$03,$00,$03,$00,$00 + db $00,$00,$00,$c0,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$3f,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$7c Sprites: - db $00, $00, $08, $00, $00, $00, $0b, $0c - db $00, $09, $0a, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $00, $00, $00 - db $00, $00, $00, $00, $00, $0e, $04, $0d - db $00, $00, $00, $00, $0f, $05, $01, $10 - db $00, $00, $00, $00, $00, $06, $03, $1e + db $00, $00, $34, $00 + db $1c, $1d, $1e, $00 + db $33, $00, $00, $00 diff --git a/card_art/screendesigns.aseprite b/card_art/screendesigns.aseprite index 0529816..6c7a314 100644 Binary files a/card_art/screendesigns.aseprite and b/card_art/screendesigns.aseprite differ diff --git a/card_art/tileset.asm b/card_art/tileset.asm new file mode 100644 index 0000000..1033281 --- /dev/null +++ b/card_art/tileset.asm @@ -0,0 +1,37 @@ + ; original export script by gabriel reis, modified by shoofle + + +tileset: + + db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $05,$00,$05,$00,$05,$00,$05,$00,$05,$00,$fd,$00,$00,$00,$fd,$00 + db $00,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$ff,$00,$00,$00,$00,$00,$00 + db $70,$e8,$70,$e8,$70,$e8,$70,$e8,$70,$e8,$70,$e8,$70,$e8,$70,$e8 + db $0e,$17,$0e,$17,$0e,$17,$0e,$17,$0e,$17,$0e,$17,$0e,$17,$0e,$17 + db $00,$00,$00,$00,$00,$00,$00,$ff,$ff,$00,$ff,$ff,$ff,$ff,$00,$ff + db $70,$e8,$70,$e8,$70,$e8,$70,$ef,$7f,$f0,$3f,$7f,$1f,$3f,$00,$1f + db $0e,$17,$0e,$17,$0e,$17,$0e,$f7,$fe,$0f,$fc,$fe,$f8,$fc,$00,$f8 + db $00,$f8,$f8,$fc,$fc,$fe,$fe,$0f,$0e,$f7,$0e,$17,$0e,$17,$0e,$17 + db $00,$1f,$1f,$3f,$3f,$7f,$7f,$f0,$70,$ef,$70,$e8,$70,$e8,$70,$e8 + db $00,$00,$ff,$00,$ff,$00,$aa,$55,$00,$ff,$00,$ff,$ff,$ff,$ff,$ff + db $63,$1f,$73,$0f,$63,$1f,$73,$0f,$63,$1f,$73,$0f,$63,$1f,$73,$0f + db $ce,$f0,$c6,$f8,$ce,$f0,$c6,$f8,$ce,$f0,$c6,$f8,$ce,$f0,$c6,$f8 + db $ff,$ff,$ff,$ff,$00,$ff,$00,$ff,$55,$aa,$ff,$00,$ff,$00,$00,$00 + db $00,$00,$3f,$00,$7f,$00,$7a,$05,$68,$17,$70,$0f,$63,$1f,$73,$0f + db $00,$00,$fc,$00,$fe,$00,$ae,$50,$1e,$e0,$06,$f8,$ce,$f0,$c6,$f8 + db $ce,$f0,$c6,$f8,$0e,$f0,$16,$e8,$5e,$a0,$fe,$00,$fc,$00,$00,$00 + db $63,$1f,$73,$0f,$60,$1f,$78,$07,$75,$0a,$7f,$00,$3f,$00,$00,$00 + db $00,$77,$00,$88,$00,$88,$00,$88,$00,$88,$00,$88,$00,$88,$00,$77 + db $00,$00,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$00 + db $00,$77,$00,$88,$20,$a8,$20,$a8,$20,$a8,$20,$a8,$00,$88,$00,$77 + db $00,$77,$00,$88,$02,$8a,$02,$8a,$02,$8a,$02,$8a,$00,$88,$00,$77 + db $56,$c3,$6a,$c3,$56,$c3,$6a,$c3,$56,$c3,$6a,$c3,$7e,$ff,$00,$ff + db $00,$ff,$7e,$ff,$56,$c3,$6a,$c3,$56,$c3,$6a,$c3,$56,$c3,$6a,$c3 + db $99,$5a,$99,$5a,$99,$5a,$99,$5a,$99,$5a,$81,$42,$81,$7e,$ff,$00 + db $ff,$00,$81,$7e,$81,$42,$99,$5a,$99,$5a,$99,$5a,$99,$5a,$99,$5a + + + +BasicUI: + db $03, $00, $00, $00, $00, $00, $00, $00, $04 + db $06, $05, $05, $05, $05, $05, $05, $05, $07 diff --git a/main.asm b/main.asm index 77104ce..7ace3be 100644 --- a/main.asm +++ b/main.asm @@ -61,7 +61,7 @@ rLFSR: dw ; equ rDELTAT + 1 ; 16 bit POPS -def SAFE_DMA_LOCATION equ $ffc0 +def SAFE_DMA_LOCATION equ $ff80 def VARIABLE_TILES_START equ 26 ; where in VRAM the variable tiles start ; (i.e. we allocate VARIABLE_TILES_START-1 slots out of that block of 128 @@ -95,6 +95,21 @@ EntryPoint: ldh [rIE], a ldh [rIF], a + ; TODO remove this + ; just setting up hram with clears and sentinel values for bugfinding + ld a, 0 + ld hl, $ff80 + rept 16*8 - 1 + ld [hl+], a + endr + + ld a, %01110111 + ld hl, $ffc0 + rept 16 + ld [hl+], a + endr + + ld a, 0 ld hl, ZEROES ld bc, $200 @@ -319,6 +334,7 @@ println "scene draw is ", SCENE_DRAW - 1 jp Loop ChangeScene: ; hl should be a pointer to, in sequence, setup update draw teardown + di ;call SCENE_TEARDOWN - 1 ld a, [hl+] @@ -340,6 +356,7 @@ ChangeScene: ; hl should be a pointer to, in sequence, setup update draw teardow call SCENE_SETUP - 1 + ei ret AwaitLine: ; put the line you want to reach in b @@ -351,37 +368,35 @@ AwaitLine: ; put the line you want to reach in b ArrayClampLoopingB: cp a, b jp nz, :+ - ld a, 0 -: + ld a, 0 + : cp a, $FF jp nz, :+ - ld a, b - dec a -: + ld a, b + dec a + : ret ArrayClampLooping: ; loops a to be in the array, assuming hl points to the length cp a, [hl] ; if a == length... jp nz, :+ - ld a, 0 ; set it to 0 -: + ld a, 0 ; set it to 0 + : cp a, $FF ; otherwise if a == $FF... jp nz, :+ - ld a, [hl] - dec a ; then set it to length-1 -: + ld a, [hl] + dec a ; then set it to length-1 + : ret ; a is return value ArrayClamp: cp a, $FF jp nz, :+ - ld a, 0 - ret + ld a, 0 + ret : cp a, [hl] - ret c + ret c : ld a, [hl] dec a ret -: - PassList: ; hl has the address of a list. step past it. ld b, 0 diff --git a/source.zip b/source.zip index 192378c..d7c3df1 100644 Binary files a/source.zip and b/source.zip differ