Emulation Goomba Save Manager (export & replace Goomba SRAM)

libertyernie

Well-Known Member
OP
Member
Joined
Apr 6, 2011
Messages
115
Trophies
0
XP
358
Country
United States
Over the past week or two I've been writing a program to export and replace the GB/GBC save files that are compressed within Goomba/Goomba Color save files. With this program, you can export your Pokemon (RBYGSC) save files, and trade between them. I have a command-line version that's written in C (so it'll work on any OS), and a GUI version for Windows (XP and newer) that uses .NET.

Here's the GUI program, running in a Windows XP VM:
H8bnWuu.png


NEW: for version 2014-05-13, I implemented the GUI in two parts - a library and a C# GUI - so you can use the library from a custom C# or VB.NET program.

Source code
Download (just grab goombasav_net.dll and goombasav_cs.exe)

As of now, you can only extract SRAM (not savestates, although Goomba Color doesn't support those anyway.)
 

Psionic Roshambo

Well-Known Member
Member
Joined
Aug 12, 2011
Messages
2,193
Trophies
1
Age
48
XP
2,635
Country
United States
This is pretty cool, I love tools like these for random tasks that if not for people like you.... They simply would not exist and we would all be poorer for it.

Thank you!
 

DanTheManMS

aka Ricochet Otter
Member
Joined
Jun 2, 2007
Messages
4,404
Trophies
0
Age
32
Location
Georgia
XP
595
Country
United States
Awesome man! In the past I had to do this manually with the VBA memory editor, so it's great to see an easier method. Thanks!
 

libertyernie

Well-Known Member
OP
Member
Joined
Apr 6, 2011
Messages
115
Trophies
0
XP
358
Country
United States
I updated the program so the Save As function works correctly (before, it saved to the original file and not the new one). There's also a GTK version now - mainly, I just wanted to figure out how to make a GTK app.
You can get the new versions from the download link already posted. The date in the about screen should be 20140430.
 

j2k15

Member
Newcomer
Joined
Jun 24, 2016
Messages
24
Trophies
0
XP
52
Country
United States
Hi,

I'm playing some Game Boy and Game Boy Color games on the integrated emulator which is integrated in the SuperCard SD (goomba). I play those games using a GBA SP.

I tried without success to copy a .sav file of a game I started to play on SMYGB to the SD card so that I can continue the game I started on PC on the GBA SP.

After some interesting reading here, I discovered that goomba uses a different format for sav files.

I thus came accross this topic and to the Git repo of program Goomba Save Manager.

I'm running 7 (64 bits) and when I try to start the program, I'm said that it cannot run on 64 bits Windows version.

Has anyone succeeded in running it on a 64-bit system ?
 

j2k15

Member
Newcomer
Joined
Jun 24, 2016
Messages
24
Trophies
0
XP
52
Country
United States
I've in the meantime managed to find a workaround.
For this, I use last version of TGB Dual (1.2).

Here are the steps :
1) Copy the .sav from the SD card I use in my SuperCard SD to the directory "save" of TGB Dual.
2) Load the rom (shall be named as the .sav).
3) Delete the .sav file from "save" directory.
4) In game, save.
5) Quit TGB Dual.

A new .sav file is created in "save" directory which is in "normal" format.

To do the opposite (save a normal format .sav into Goomba's format) :
1) Copy the normal .sav in "save" directory.
2) Load the rom.
3) Replace the normal .sav with a Goomba .sav format (e.g. an older save of the same game).
4) In game, save.
5) Quite TGB Dual.

The .sav in the "save" directory is in Goomba's format and can be copied to SD card so that it can be used in GBA SP with SuperCard SD.

This trick is possible thanks to the fact that now TGB Dual supports out of the box Goomba save files. See more explanation here : http://www.lakora.us/gba/tgbdual/

Anyway, I hope that I'll find a way to use the Goomba Save Manager instead of this manual procedure.
 

libertyernie

Well-Known Member
OP
Member
Joined
Apr 6, 2011
Messages
115
Trophies
0
XP
358
Country
United States
I just checked PocketNES and SMSAdvance, and they both use the same SRAM compression format as Goomba. (I'm guessing it started in PocketNES and then was used for the others?)

So I'd like to add support for extracting/replacing SRAM for PocketNES and SMSAdvance. (SMSAdvance doesn't support SRAM for all games, though - at least not for Golden Axe Warrior which was the only one I had handy to test.)

I also would like to add a feature to extract the original ROMs from the .gba file. I've done this in my GitHub repo for Game Boy ROMs, since I already wrote that code for my vba-gx fork; I'd like to have that for NES ROMs too.
 

libertyernie

Well-Known Member
OP
Member
Joined
Apr 6, 2011
Messages
115
Trophies
0
XP
358
Country
United States
Last edited by libertyernie,

nibbles27

Active Member
Newcomer
Joined
May 24, 2008
Messages
35
Trophies
0
XP
328
Country
Canada
Thats awsome thanks man saves me alot of trouble oh by the way to enable autosaving in SMS Advance you have to manually go through the menu save the sram then it will autosave everytime you go to the menu but you must do that first.

If you hadn't of added that i could see myself wasting time trying to add the support even though i only understand how to read code and write a tiny bit.
 

Ninentales93

Member
Newcomer
Joined
Aug 1, 2017
Messages
7
Trophies
0
Age
28
XP
34
Country
Italy
I wanted to ask you how I can upload gbc sav files into goomba, i tried so many time to upload the sav in saver folder and not work
 

libertyernie

Well-Known Member
OP
Member
Joined
Apr 6, 2011
Messages
115
Trophies
0
XP
358
Country
United States
I wanted to ask you how I can upload gbc sav files into goomba, i tried so many time to upload the sav in saver folder and not work
First make a new Goomba save file. I do it by running Goomba inside VBA-M but as long as you can play your game in Goomba, save it, and it works, that's good enough.
Then use the tool I posted to open the Goomba save file (which should be 64 kilobytes), find the SRAM data inside it, and click Replace, using your GBC save (which should be 32 kilobytes or less.)
 

vree

Well-Known Member
Member
Joined
Sep 12, 2005
Messages
664
Trophies
0
XP
1,256
Country
United Kingdom
Does this also work if I compiled multiple games into one .gba file to extract the different save files?
 

migles

All my gbatemp friends are now mods, except for me
Member
Joined
Sep 19, 2013
Messages
8,034
Trophies
0
Location
Earth-chan
XP
5,234
Country
China
Does this also work if I compiled multiple games into one .gba file to extract the different save files?
that's exactly what this does...
I made a new version, which can extract SRAM from PocketNES/SMSAdvance .sav files, and also extract the original Game Boy/NES/Sega ROMs from the emulator ROMs (in case you ever need to do that.)

If you don't know what file to grab, use goomabsav_cs.exe.

https://github.com/libertyernie/goombasav/releases/tag/v20161012_2


just used this since the compiled original version, op shared is down
my goomba compilation save got a weird issue, it sopped being able to write into the save and it was displaying free space as a big ass number
with this i was able to rescue the saves i cared about, let the flashcart create a new save file, and injecting back the saves
 

alnt88

New Member
Newbie
Joined
Sep 23, 2017
Messages
4
Trophies
0
Age
33
XP
35
Country
United States
I was excited to find this tool you created - but I don't think it will work for me. Hopefully someone can help me with this though.

I've been playing Pokemon Gold on an Everdrive GBA which uses the Goomba emulator. I'm trying to extract my save file and inject it into my 3DS virtual console game. I have a .srm save file and I can open it with your tool but I can't extract anything. Apparently Goomba can't normally save the Pokemon games because they use a 32kb file, so I save by using a save state. If this program can't do it, is there any way to extract the save state in a usable format? I'm really lost and just about ready to give up on this.
 
General chit-chat
Help Users
  • KenniesNewName @ KenniesNewName:
    We're talking about exercise balls of course
    Gift
  • x65943 @ x65943:
    what to do if I am a doctor
    Gift
  • KenniesNewName @ KenniesNewName:
    Re-read WebMD articles
    Gift
  • KenniesNewName @ KenniesNewName:
    I got myself a cheapo steering wheel cover here's to hoping the sun doesn't burn my finger tips over hot steering wheels
    Gift
  • x65943 @ x65943:
    I have never experienced that
    Gift
  • x65943 @ x65943:
    just where do you live mate
    Gift
  • KenniesNewName @ KenniesNewName:
    Midwest weathers been like 90 all week
    Gift
  • KenniesNewName @ KenniesNewName:
    We don't have garage parking areas at the apartment either so my car bakes in the sun
    Gift
  • KenniesNewName @ KenniesNewName:
    Midwest weather is so bipolar in the summer
    Gift
  • x65943 @ x65943:
    also in midwest, and today at least was really nice - in the 70s with light drizzle and good cloud cover
    Gift
  • x65943 @ x65943:
    have been quite a few scorchers this year tho
    Gift
  • KenniesNewName @ KenniesNewName:
    Depends on the area I'm more up north
    Gift
  • KenniesNewName @ KenniesNewName:
    Supposed to be in the 80s all next week
    Gift
  • Mariposa @ Mariposa:
    hiii! how's everyone doingg
    Gift
  • Dark_Phoras @ Dark_Phoras:
    Hi, I'm fine, how are you?
    Gift
  • Dark_Phoras @ Dark_Phoras:
    Good morning folk
    Gift
  • Dark_Phoras @ Dark_Phoras:
    Everyone is sleeping, I wonder if it's a holiday in the other countries as well
    Gift
  • The Real Jdbye @ The Real Jdbye:
    no, it's just the universal internet dead zone
    Gift
  • The Real Jdbye @ The Real Jdbye:
    and a monday
    Gift
  • Dark_Phoras @ Dark_Phoras:
    It's a holiday in a lot of countries, I checked in the meantime. This is usually one of the most moved periods of the day
    Gift
  • Dark_Phoras @ Dark_Phoras:
    It marks the death of Shmi, Anakin's mother
    Gift
  • The Real Jdbye @ The Real Jdbye:
    but Anakin isn't real
    Gift
  • Gift
  • Gift
  • Dark_Phoras @ Dark_Phoras:
    Assumption Day on 15 August is a nationwide public holiday in Andorra, Austria, Belgium, Burundi, Cameroon, Central African Republic, Chile, Republic of Congo, Côte d'Ivoire, Croatia, Colombia, Costa Rica, Cyprus, East Timor, France, Gabon, Greece, Georgia, Republic of Guinea, Haiti, Italy, Lebanon, Lithuania, Luxembourg, Republic of North Macedonia, Madagascar, Malta, Mauritius, Republic of Moldova, Monaco, Montenegro (Albanian Catholics), Paraguay, Poland (coinciding with Polish Army Day), Portugal, Romania, Rwanda, Senegal, Seychelles, Slovenia, Spain, Syria, Tahiti, Togo, and Vanuatu;
    Gift
    Dark_Phoras @ Dark_Phoras: Assumption Day on 15 August is a nationwide public holiday in Andorra, Austria, Belgium...