Merge pull request #37 from DSkywalk/master
allow request RETRO_MEMORY_SYSTEM_RAM to get cheevos
This commit is contained in:
@@ -1377,28 +1377,56 @@ unsigned retro_get_region(void)
|
|||||||
return FSettings.PAL ? RETRO_REGION_PAL : RETRO_REGION_NTSC;
|
return FSettings.PAL ? RETRO_REGION_PAL : RETRO_REGION_NTSC;
|
||||||
}
|
}
|
||||||
|
|
||||||
void *retro_get_memory_data(unsigned id)
|
|
||||||
|
void *retro_get_memory_data(unsigned type)
|
||||||
{
|
{
|
||||||
if (id != RETRO_MEMORY_SAVE_RAM)
|
uint8_t* data;
|
||||||
return NULL;
|
|
||||||
|
|
||||||
if (iNESCart.battery)
|
switch(type)
|
||||||
return iNESCart.SaveGame[0];
|
{
|
||||||
if (UNIFCart.battery)
|
case RETRO_MEMORY_SAVE_RAM:
|
||||||
return UNIFCart.SaveGame[0];
|
if (iNESCart.battery)
|
||||||
|
return iNESCart.SaveGame[0];
|
||||||
return 0;
|
else if (UNIFCart.battery)
|
||||||
|
return UNIFCart.SaveGame[0];
|
||||||
|
else
|
||||||
|
data = NULL;
|
||||||
|
break;
|
||||||
|
case RETRO_MEMORY_SYSTEM_RAM:
|
||||||
|
// TODO: add ExWRAM(0x2000) support ?
|
||||||
|
data = RAM;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
data = NULL;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t retro_get_memory_size(unsigned id)
|
size_t retro_get_memory_size(unsigned type)
|
||||||
{
|
{
|
||||||
if (id != RETRO_MEMORY_SAVE_RAM)
|
unsigned size;
|
||||||
return 0;
|
|
||||||
|
|
||||||
if (iNESCart.battery)
|
switch(type)
|
||||||
return iNESCart.SaveGameLen[0];
|
{
|
||||||
if (UNIFCart.battery)
|
case RETRO_MEMORY_SAVE_RAM:
|
||||||
return UNIFCart.SaveGameLen[0];
|
if (iNESCart.battery)
|
||||||
|
size = iNESCart.SaveGameLen[0];
|
||||||
return 0;
|
else if (UNIFCart.battery)
|
||||||
|
size = UNIFCart.SaveGameLen[0];
|
||||||
|
else
|
||||||
|
size = 0;
|
||||||
|
break;
|
||||||
|
case RETRO_MEMORY_SYSTEM_RAM:
|
||||||
|
// TODO: detect ExWRAM(0x2000) ?
|
||||||
|
// NES BASE RAM (0x800)
|
||||||
|
size = 0x800;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
size = 0;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
return size;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user