V1.1: Add support for Intel 512M29EW (64MB) N64 repro

Haven't tested it myself but should work thx to BASSIX
This commit is contained in:
sanni 2018-06-11 09:42:35 +02:00 committed by GitHub
parent cc10c5ae02
commit f7bd4878eb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 27 additions and 6 deletions

View File

@ -2,8 +2,8 @@
Cartridge Reader for Arduino Mega2560
Author: sanni
Date: 05-05-2018
Version: 1.0
Date: 11-06-2018
Version: 1.1
SD lib: https://github.com/greiman/SdFat
LCD lib: https://github.com/adafruit/Adafruit_SSD1306
@ -35,7 +35,7 @@
infinest - help with GB Memory cart
**********************************************************************************/
char ver[5] = "1.0";
char ver[5] = "1.1";
/******************************************
Define Starting Point

View File

@ -1789,8 +1789,8 @@ void writeFram(byte flashramType) {
display_Update();
}
else {
println_Msg("FAILED");
print_Error(F("Flash is not blank"), true);
println_Msg("FAIL");
display_Update();
}
// Create filepath
@ -2223,6 +2223,8 @@ void flashRepro_N64() {
println_Msg(F("Fujitsu MSP55LV100S"));
else if ((strcmp(flashid, "227E") == 0) && (strcmp(cartID, "2301") == 0))
println_Msg(F("Fujitsu MSP55LV512"));
else if ((strcmp(flashid, "227E") == 0) && (strcmp(cartID, "3901") == 0))
println_Msg(F("Intel 512M29EW"));
// Print info
print_Msg(F("ID: "));
@ -2290,7 +2292,12 @@ void flashRepro_N64() {
println_Msg(filePath);
display_Update();
if (strcmp(flashid, "227E") == 0) {
if ((strcmp(cartID, "3901") == 0) && (strcmp(flashid, "227E") == 0)) {
// Intel 512M29EW(64MB) with 0x20000 sector size and 128 byte buffer
writeFlashBuffer_N64(0x20000, 128);
}
else if (strcmp(flashid, "227E") == 0) {
// Spansion S29GL128N/S29GL256N or Fujitsu MSP55LV512 with 0x20000 sector size and 32 byte buffer
writeFlashBuffer_N64(0x20000, 32);
}
@ -2497,6 +2504,20 @@ void idFlashrom_N64() {
resetFlashrom_N64(romBase);
}
// Intel 512M29EW(64MB) with one flashrom chip
else if ((strcmp(cartID, "3901") == 0) && (strcmp(flashid, "227E") == 0)) {
cartSize = 64;
// Reset flashrom
resetFlashrom_N64(romBase);
}
// Unknown 227E type
else if (strcmp(flashid, "227E") == 0) {
cartSize = 0;
// Reset flashrom
resetFlashrom_N64(romBase);
}
//Test for Fujitsu MSP55LV100S (64MB)
else {
// Send flashrom ID command