diff --git a/include/mgba/internal/gba/savedata.h b/include/mgba/internal/gba/savedata.h index e69d07834..7fec242c4 100644 --- a/include/mgba/internal/gba/savedata.h +++ b/include/mgba/internal/gba/savedata.h @@ -45,9 +45,13 @@ enum FlashStateMachine { FLASH_STATE_CONTINUE = 2, }; -enum FlashManufacturer { - FLASH_MFG_PANASONIC = 0x1B32, - FLASH_MFG_SANYO = 0x1362 +enum FlashId { + FLASH_ATMEL_AT29LV512 = 0x3D1F, // 512k + FLASH_MACRONIX_MX29L512 = 0x1CC2, // 512k, unused + FLASH_MACRONIX_MX29L010 = 0x09C2, // 1M + FLASH_PANASONIC_MN63F805MNP = 0x1B32, // 512k, unused + FLASH_SANYO_LE26FV10N1TS = 0x1362, // 1M + FLASH_SST_39LVF512 = 0xD4BF, // 512k }; enum { diff --git a/src/gba/savedata.c b/src/gba/savedata.c index 50d2be381..13204cbb3 100644 --- a/src/gba/savedata.c +++ b/src/gba/savedata.c @@ -372,11 +372,11 @@ uint8_t GBASavedataReadFlash(struct GBASavedata* savedata, uint16_t address) { if (savedata->command == FLASH_COMMAND_ID) { if (savedata->type == GBA_SAVEDATA_FLASH512) { if (address < 2) { - return FLASH_MFG_PANASONIC >> (address * 8); + return FLASH_PANASONIC_MN63F805MNP >> (address * 8); } } else if (savedata->type == GBA_SAVEDATA_FLASH1M) { if (address < 2) { - return FLASH_MFG_SANYO >> (address * 8); + return FLASH_SANYO_LE26FV10N1TS >> (address * 8); } } }