Files
2023-03-17 11:59:21 +00:00

48 lines
1.1 KiB
C++

void cleaneeprom(int i) {
printBottomHeader(F("Cleaning EEPROM"));
gb.display.update();
for (; i < 1024; i++) {
if (EEPROM.read(i))
EEPROM.write(i, 0);
}
}
void loadeeprom() {
strcpy(completeName, nextGameName);
for (byte i = 0; i < 8; i++) {
if (completeName[i] == ' ')
completeName[i] = '\0';
}
strcat(completeName, ".SAV");
int i = 0;
if (file.open(completeName, O_READ))
{
printBottomHeader(F("Loading saved game"));
gb.display.update();
word result=0;
int k = 0;
do {
k = file.read(buffer, BUFFER_SIZE);
if (k > 0)
{
for(byte j = 0; j<k; j++){
if(EEPROM.read(i)!=buffer[j]){
EEPROM.write(i,buffer[j]);
}
i++;
if (i >= 1024) {
break;
}
}
}
else if (i == 0) {
printBottomHeader(F("File empty"));
}
} while (k > 0);
file.close();
}
else{
printBottomHeader(F("No saved game"));
}
cleaneeprom(i); // if the file is empty or non-existing this'll also get run, i will be 0 --> win
}