mirror of
https://github.com/a2-4am/4cade.git
synced 2024-11-28 00:52:00 +00:00
40 lines
1.0 KiB
Plaintext
40 lines
1.0 KiB
Plaintext
;license:MIT
|
|
;(c) 2018-9 by 4am
|
|
;
|
|
; VidHD support functions
|
|
;
|
|
|
|
;------------------------------------------------------------------------------
|
|
; HasVidHDCard
|
|
; detect VidHD card by searching for magic bytes across all slots
|
|
;
|
|
; in: none
|
|
; out: C set if VidHD card found in any slot
|
|
; if card was found, X = #$Cn where n is the slot number of the card
|
|
; C clear if no VidHD card found
|
|
; other flags clobbered
|
|
; A/Y clobbered
|
|
;------------------------------------------------------------------------------
|
|
HasVidHDCard
|
|
ldx #$C7
|
|
@slotLoop
|
|
stx @byteLoop+2
|
|
ldy #$02
|
|
@byteLoop
|
|
lda $FD00, y ; SMC (high byte)
|
|
cmp @kVidHDMagicBytes, y
|
|
bne @nextSlot
|
|
dey
|
|
bpl @byteLoop
|
|
@found
|
|
sec ; found
|
|
rts
|
|
@nextSlot
|
|
dex
|
|
cpx #$C0
|
|
bne @slotLoop
|
|
clc ; not found
|
|
rts
|
|
@kVidHDMagicBytes
|
|
!byte $24, $EA, $4C
|