From GameBrew - a wiki dedicated to Video Game Homebrew.

Last Updated2020/04/09
TypeOther Apps

GBAVCSM (Game Boy Advance Virtual Console Save Manager)


A gm9 script dedicated to handling GBA VC saves.


  • Automatically mass dump all the GBA VC saves in one go. Caching the titles list is not required.

Carefully read the top screen's ~ INSTRUCTIONS ~.

  • Extract the *.gba roms from the individual injections.
  • User customizable script icon, title box art, and save folder's name & directory.
    • See further details in the option, About the script.
    • Edit the settings with a text editor like Notepad or Programmer's Notepad.
  • Supports up to four (4) separate Nintendo 3DS folders. Compatible with:

Box Arts, Banners, Screenshots, Rom Info Lookup


InjectHBLtogamecart.png OptionA-DescriptionInstructions.png OptionB-DescriptionInstructions.png OptionC-DescriptionInstructions.png signs_damaged_database.png H2testw_menu.png Restore_nonlegit_titles_tickets.png H2testw_results.png


1.This initial v1.0 release does not support direct injection. The user is required to manually select their save file copied to the [9:] RAMDRIVE and then inject it to the agbsave.bin found in [S:] SYSNAND VIRTUAL.

  • Update edit (January-17-2020): The v1.2 release supports direct injection.

2. The [9:] RAMDRIVE was chosen for its availability on both o3DS and n3DS series systems, close proximity to the [S:] SYSNAND VIRTUAL, and no need for post cleanup as the file erases itself after closing GodMode9.

  • Update edit (January-17-2020): For the v1.2 release, this only applies for EEPROM 64k saves when the EEPROM 64k Mode is set to manual.

3. Unlike the method found below, you can inject saves for multiple titles in a single session. The process of going back and forth exiting GodMode9, launching the GBA VC title, and going back to GodMode9 is eliminated.

4. A newly installed GBA VC title needs to be launched at least once in order to initialized its save. If the save isn't initialized, the script will fail to find the title in a cache search.

5. Rebuild Cache (Auto) - Carefully read the top screen's ~ INSTRUCTIONS ~.

6. Update Cache (Manual) - To find newly installed games so that they can be added, [A:] SYSNAND SD/title/00040000 → hold (R)-shoulder and press (A) → Search for titles. Use pen(cil) and paper to write down their TitleIDs.

7. A title's folder name and NAME_* cache are adjustable. However, changing the NAME_* affect its save folder's name.

8. GodMode9 v1.9.1 (or newer) is available here.

9. To quickly switch from HOME Menu / NATIVE_FIRM to GodMode9, press (L)-shoulder + (DOWN) d-pad + (SELECT) to open Rosalina menu, press (UP) d-pad twice, Reboot, and then quickly press & hold (START) button to access Luma3DS chainloader.

10. Early in its development, this script was internally known as project TOTO. The code name was adopted in jest to the person who helped out the most, and it stems from this individual's game character. However, the actual meaning or backstory of the name and how it came to be was never divulged; whoever this original TOTO refers to remains a mystery.​


  • @Aurora Wright - Research in AGB_FIRM save types and sizes.
  • @d0k3 - Research in GBA VC *.sav and agbsave.bin CMACs.
  • @Wolfvak - Peer reviewed the initial rough draft code for CMAC handling the GBA VC saves on the SD card.
  • @CheatFreak47 - Research in EEPROM saves 0x8 bytes flipping.
  • @KleinesSinchen - Very thorough safety, critical functions, validation, and stress testings.
  • @EventAssistant (Bernardo Giordano) - Save manager ideas of cache and naming conventions borrowed from Checkpoint.
  • @JK_ - Save manager ideas of a bare minimum user interference appropriate for gm9 script borrowed from JKSM.
  • Nintendo - Box icon's simple style inspired from CTR SDK dev tools.