How to fix a GBA emulator save error with Flash 128K
When a GBA game in iGBA says its save failed, the game is almost always running with half the save memory it expects: 64K instead of a 128K flash chip. Update to iGBA 2.14.0 or later, where Auto reads the right size from the game file itself. If the error stays, set Flash memory size to Flash 128K in Settings → Saving and open the game again.
The quick fix
- Update iGBA from the App Store. Version 2.14.0 changed how the save memory is detected, and most of these errors disappear with it.
- Open Settings → Saving and look at Flash memory size. Leave it on Auto first.
- Close the game completely and open it again. The note under it says "Applies on next game launch", and it means it: changing it mid-game does nothing.
- Save in the game's own menu. If the game still complains, go back, pick Flash 128K, reopen the game and save again.
Why some GBA games need 128K of save memory
GBA cartridges saved to one of three kinds of chip: SRAM, EEPROM or flash. The large flash chip holds 128K split into two banks of 64K, and a game switches between the banks with a command.
Give that game a 64K chip and the bank switch goes nowhere. Its write lands on top of the first bank, the game reads the data back to check it, finds something else, and shows its own save error. That is where messages like "please exchange the backup memory" come from: the game is blaming the cartridge, because on real hardware that was the only explanation.
It also explains the timing, which confused us for a while. The early saves fit in the first bank, so everything works for hours. The error only appears when the game first writes a record that belongs in the second bank, often late in the story.
Before 2.14.0, iGBA only used 128K for games in its built-in list, or when the .sav file on disk already measured 131,072 bytes. Fan-made hacks and a few regional releases fell through and ran at 64K. Since 2.14.0, Auto reads the flash type the game file itself declares, and a 64K setting forced by hand is ignored for a game that declares 128K.
Check what your game is running with
You do not have to guess. Open the game that fails to save, then go to Settings → Saving and scroll to Save diagnostics, right under the flash setting. If no game is open it only says to open one first.
Two lines matter: the one starting with core: (the chip the emulator is really using) and the one starting with file: (the size of your .sav).
| What it shows | What it means | What to do |
|---|---|---|
core: flash 128K and a file of 131072 bytes | The memory is right | If the game still fails, the save itself is damaged: see the next section |
core: flash 64K on a game that fails late | Running with half the memory | Set Auto on 2.14.0 or later, or Flash 128K, and reopen the game |
| 64K file for a 128K cartridge | An older session saved at 64K | Half of that save was never written; recover an older copy |
file: no .sav on disk yet | The game has never saved | Save once in the game's menu, then check again |
The panel only reads; nothing is sent anywhere unless you copy it yourself. If you ask us for help, that text is the most useful thing you can paste.
GBA emulator save file corrupted: getting an older save back
Here is the uncomfortable part. If the game already wrote its save while running at 64K, changing the setting does not repair that file. The setting decides how future saves are written; it cannot recreate data that never reached the file.
Then, from the gentlest option to the last resort:
- Recover In-Game Save in the pause menu restores the save from before auto-load. It only appears when iGBA kept such a copy, so if you do not see it, there is none.
- A save state from before the error: load it from Save States, then save in the game's own menu with the right memory size active. On 2.14.0 an old state is loaded with the size the game needs, not the 64K it was made with.
- A backup made with Settings → Backup. Restoring it overwrites saves with the same name, so export the current one first.
- Restart & Load Game Save in the pause menu boots straight from the .sav, skipping the autosave, if you suspect the autosave is the part that is wrong.
Save versus save state, in this problem
A save state freezes the whole console, so it never fails the way the game's own save does. That makes it tempting to stop saving in the game and live on states. We would not: the game's own .sav is what you export, back up and link with, and a damaged one stays damaged underneath your states.
Importing a .sav from another emulator
Import .sav from the ⋯ menu in Game library applies a save to the matching game. Check its size first. A save for a 128K game should be 131,072 bytes; if the other emulator wrote 65,536 bytes, it was already running with half the memory there. iGBA will run the game at 128K, but the missing half of that file cannot be rebuilt.
iGBA does not include any games. Use only game files you have the right to use.
Questions and answers
Why does the save error only show up late in the game?
Should I leave Flash 128K on all the time?
Does Flash 128K fix a save that is already corrupted?
Does the flash setting matter for GBC games?
More iGBA guides
- How to save a state and load it back in a GBA emulator
- How to rewind a mistake and speed up a GBA emulator
- How to use cheat codes in a GBA or GBC emulator
- How to use the GBA link cable nearby or online, or trade with yourself on one iPhone
- How to Use an Xbox or PS5 Controller With a GBA Emulator on iPhone
- How to play GBA and GBC games on Apple Watch
- How to back up GBA save files before a reinstall or new phone
- How to transfer your GBA saves between iPhone and Android
- GBA emulator black screen: what to check, in order
- How to open a GBA file on an iPhone or iPad
- How to patch a ROM on iPhone with iGBA, then play the hack
- How to play Radical Red on iPhone, from patch to save file
- Play Unbound on iPhone and bring your old save along
- ROM hack white screen: what a bad patch does and how to fix it
- All questions about iGBA
- Back to iGBA