mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-06 22:43:15 -06:00
SD Card Driver Compatibility Improvement
Handle SD Cards that do not support ACMD41 by using CMD1 instead.
This commit is contained in:
@@ -3,7 +3,7 @@ ifndef ROM_CONFIG
|
||||
endif
|
||||
|
||||
ifdef ROM_PLATFORM
|
||||
OBJECTS = ${ROM_PLATFORM}_${ROM_CONFIG}.rom ${ROM_PLATFORM}_${ROM_CONFIG}.com
|
||||
OBJECTS = ${ROM_PLATFORM}_${ROM_CONFIG}.rom ${ROM_PLATFORM}_${ROM_CONFIG}.com ${ROM_PLATFORM}_${ROM_CONFIG}.upd
|
||||
else
|
||||
OBJECTS += DYNO_std.rom DYNO_std.com DYNO_std.upd
|
||||
OBJECTS += EZZ80_std.rom EZZ80_std.com EZZ80_std.upd
|
||||
|
||||
@@ -946,7 +946,16 @@ SD_INITCARD3:
|
||||
LD A,$40 ; P0 = $40 INDICATES WE SUPPORT V2 CARDS
|
||||
LD (SD_CMDP0),A ; SET COMMAND PARM 0
|
||||
CALL SD_EXECCMDND ; EXEC COMMAND W/ NO DATA RETURNED
|
||||
;RET NZ ; ABORT ON ERROR
|
||||
JR Z,SD_INITCARD3AA ; IF GOOD SKIP AHEAD
|
||||
; SOME CARDS DON'T SUPPORT ACMD41, SO TRY CMD1 AS ALTERNATIVE
|
||||
LD A,SD_CMD_SEND_OP_COND ; SD_CMD_SEND_OP_COND
|
||||
CALL SD_INITCMD ; SETUP COMMAND BUFFER
|
||||
LD A,$40 ; P0 = $40 INDICATES WE SUPPORT V2 CARDS
|
||||
LD (SD_CMDP0),A ; SET COMMAND PARM 0
|
||||
CALL SD_EXECCMDND ; EXEC COMMAND W/ NO DATA RETURNED
|
||||
RET NZ ; ABORT ON ERROR
|
||||
SD_INITCARD3AA:
|
||||
; CHECK FOR IDLE, EXIT LOOP IF IDLE CLEARED
|
||||
LD A,(SD_RC) ; GET CARD RESULT CODE
|
||||
OR A ; SET FLAGS
|
||||
|
||||
Reference in New Issue
Block a user