replace custom FLASH saving code with common function

This commit is contained in:
smesgr9000 2024-05-28 20:20:29 +02:00
parent cb111077f8
commit 0d9596eb70
2 changed files with 8 additions and 64 deletions

View File

@ -674,7 +674,11 @@ void createFolder(const char* system, const char* subfolder, const char* gameNam
// create a new folder for the rom file // create a new folder for the rom file
EEPROM_readAnything(0, foldern); EEPROM_readAnything(0, foldern);
sprintf(folder, "%s/%s/%s/%d", system, subfolder, gameName, foldern); if(subfolder == NULL) {
sprintf(folder, "%s/%s/%d", system, gameName, foldern);
} else {
sprintf(folder, "%s/%s/%s/%d", system, subfolder, gameName, foldern);
}
sd.mkdir(folder, true); sd.mkdir(folder, true);
sd.chdir(folder); sd.chdir(folder);
} }

View File

@ -1741,26 +1741,8 @@ void readFlash() {
// Reset to root directory // Reset to root directory
sd.chdir("/"); sd.chdir("/");
// Get name, add extension and convert to char array for sd lib createFolderAndOpenFile("FLASH", NULL, "FL", "bin");
EEPROM_readAnything(0, foldern);
sd.mkdir("FLASH", true);
sd.chdir("FLASH");
sprintf(fileName, "FL%d", foldern);
strcat(fileName, ".bin");
// write new folder number back to eeprom
foldern = foldern + 1;
EEPROM_writeAnything(0, foldern);
display_Clear();
print_STR(saving_to_STR, 0);
print_Msg(fileName);
println_Msg(F("..."));
display_Update();
// Open file on sd card
if (!myFile.open(fileName, O_RDWR | O_CREAT)) {
print_FatalError(create_file_STR);
}
for (unsigned long currByte = 0; currByte < flashSize; currByte += 512) { for (unsigned long currByte = 0; currByte < flashSize; currByte += 512) {
for (int c = 0; c < 512; c++) { for (int c = 0; c < 512; c++) {
sdBuffer[c] = readByte_Flash(currByte + c); sdBuffer[c] = readByte_Flash(currByte + c);
@ -2001,29 +1983,8 @@ void readFlash16() {
// Reset to root directory // Reset to root directory
sd.chdir("/"); sd.chdir("/");
// Get name, add extension and convert to char array for sd lib createFolderAndOpenFile("FLASH", NULL, "FL", "bin");
EEPROM_readAnything(0, foldern);
sd.mkdir("FLASH", true);
sd.chdir("FLASH");
sprintf(fileName, "FL%d", foldern);
strcat(fileName, ".bin");
// write new folder number back to eeprom
foldern = foldern + 1;
EEPROM_writeAnything(0, foldern);
display_Clear();
print_STR(saving_to_STR, 0);
print_Msg(fileName);
println_Msg(F("..."));
display_Update();
// Open file on sd card
if (!myFile.open(fileName, O_RDWR | O_CREAT)) {
println_Msg(F("Can't create file on SD."));
display_Update();
while (1)
;
}
word d = 0; word d = 0;
for (unsigned long currByte = 0; currByte < flashSize / 2; currByte += 256) { for (unsigned long currByte = 0; currByte < flashSize / 2; currByte += 256) {
for (word c = 0; c < 256; c++) { for (word c = 0; c < 256; c++) {
@ -2277,29 +2238,8 @@ void read_Eprom() {
// Reset to root directory // Reset to root directory
sd.chdir("/"); sd.chdir("/");
// Get name, add extension and convert to char array for sd lib createFolderAndOpenFile("FLASH", NULL, "FL", "bin");
EEPROM_readAnything(0, foldern);
sd.mkdir("FLASH", true);
sd.chdir("FLASH");
sprintf(fileName, "FL%d", foldern);
strcat(fileName, ".bin");
// write new folder number back to eeprom
foldern = foldern + 1;
EEPROM_writeAnything(0, foldern);
display_Clear();
print_STR(saving_to_STR, 0);
print_Msg(fileName);
println_Msg(F("..."));
display_Update();
// Open file on sd card
if (!myFile.open(fileName, O_RDWR | O_CREAT)) {
println_Msg(F("Can't create file on SD."));
display_Update();
while (1)
;
}
word d = 0; word d = 0;
for (unsigned long currWord = 0; currWord < flashSize / 2; currWord += 256) { for (unsigned long currWord = 0; currWord < flashSize / 2; currWord += 256) {
for (word c = 0; c < 256; c++) { for (word c = 0; c < 256; c++) {