Look in /roms/ for roms (in addition to /)
This commit is contained in:
parent
07143696fe
commit
aed4baee1c
1 changed files with 41 additions and 28 deletions
31
src/main.cpp
31
src/main.cpp
|
@ -1067,8 +1067,15 @@ static bool AttemptToLoadROM(char* ROMName)
|
||||||
FIL fp;
|
FIL fp;
|
||||||
FRESULT res;
|
FRESULT res;
|
||||||
|
|
||||||
res = f_open(&fp, ROMName, FA_READ);
|
char ROMName2[256] = "/roms/";
|
||||||
if (res == FR_OK)
|
|
||||||
|
if (ROMName[0] != '/') // not a full path, prepend /roms/
|
||||||
|
strncat (ROMName2, ROMName, 240);
|
||||||
|
else
|
||||||
|
ROMName2[0] = 0;
|
||||||
|
|
||||||
|
if ( (FR_OK == f_open(&fp, ROMName, FA_READ))
|
||||||
|
|| (FR_OK == f_open(&fp, ROMName2, FA_READ)) )
|
||||||
{
|
{
|
||||||
u32 bytesRead;
|
u32 bytesRead;
|
||||||
SetACTLed(true);
|
SetACTLed(true);
|
||||||
|
@ -1191,8 +1198,7 @@ static void CheckOptions()
|
||||||
if (ROMName)
|
if (ROMName)
|
||||||
{
|
{
|
||||||
//DEBUG_LOG("%d Rom Name = %s\r\n", ROMIndex, ROMName);
|
//DEBUG_LOG("%d Rom Name = %s\r\n", ROMIndex, ROMName);
|
||||||
res = f_open(&fp, ROMName, FA_READ);
|
if (FR_OK == f_open(&fp, ROMName, FA_READ))
|
||||||
if (res == FR_OK)
|
|
||||||
{
|
{
|
||||||
u32 bytesRead;
|
u32 bytesRead;
|
||||||
|
|
||||||
|
@ -1221,11 +1227,19 @@ static void CheckOptions()
|
||||||
{
|
{
|
||||||
roms.ROMValid[ROMIndex] = false;
|
roms.ROMValid[ROMIndex] = false;
|
||||||
const char* ROMName = options.GetRomName(ROMIndex);
|
const char* ROMName = options.GetRomName(ROMIndex);
|
||||||
if (ROMName[0])
|
char ROMName2[256] = "/roms/";
|
||||||
{
|
|
||||||
|
if (ROMName[0] == 0)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
if (ROMName[0] != '/') // not a full path, prepend /roms/
|
||||||
|
strncat (ROMName2, ROMName, 240);
|
||||||
|
else
|
||||||
|
ROMName2[0] = 0;
|
||||||
|
|
||||||
//DEBUG_LOG("%d Rom Name = %s\r\n", ROMIndex, ROMName);
|
//DEBUG_LOG("%d Rom Name = %s\r\n", ROMIndex, ROMName);
|
||||||
res = f_open(&fp, ROMName, FA_READ);
|
if ( (FR_OK == f_open(&fp, ROMName, FA_READ))
|
||||||
if (res == FR_OK)
|
|| (FR_OK == f_open(&fp, ROMName2, FA_READ)) )
|
||||||
{
|
{
|
||||||
u32 bytesRead;
|
u32 bytesRead;
|
||||||
|
|
||||||
|
@ -1249,7 +1263,6 @@ static void CheckOptions()
|
||||||
//DEBUG_LOG("Read ROM %s from options\r\n", ROMName);
|
//DEBUG_LOG("Read ROM %s from options\r\n", ROMName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (roms.ROMValid[0] == false && !(AttemptToLoadROM("d1541.rom") || AttemptToLoadROM("dos1541") || AttemptToLoadROM("d1541II") || AttemptToLoadROM("Jiffy.bin")))
|
if (roms.ROMValid[0] == false && !(AttemptToLoadROM("d1541.rom") || AttemptToLoadROM("dos1541") || AttemptToLoadROM("d1541II") || AttemptToLoadROM("Jiffy.bin")))
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue