well, still if vc had that fixed it would be good. the hard parts is snes rom ripping...
I'll try to make this explanation as simplified as possible, but I'm ultimately just reexplaining what the GitHub tutorial says in simpler terms. Since you specifically want Earthbound, I'll specifically go over the steps for that one.
I agree that the audio problems would be nice to fix, but a solution hasn't been addressed yet. Maybe you could take the time to look into it.
Step 1: Dump your personal SSB4 copy
There are a lot of guides on how to do this, I've used the one
here before. It requires the Dumpling application, which dumps your game to data readable by other systems. After this, you'll need to hook up your SD Card to a computer and use
Sm4shExplorer to retrieve Earthbound from the dumped copy.
The Earthbound file is called
JBM.bin, as listed in the guide. That's the one you'll need to open on your computer.
Step 2: Hex editing
Now that you've extracted and located the Earthbound file, you need to open it in a hex editor. I'm assuming that you're using Windows, so
HxD is your best option, but MacOS has
Hex Fiend, and Linux has
GHex for GNOME and
Okteta for KDE. At their core, these hex editors all do the same thing.
Open the file with your hex editor. The ROM itself is split into
3 sections:
Section 1: Header
The header is purely for Smash Bros. and will make the ROM unusable. The header is exactly 48 bytes. In hexadecimal editors, each byte is represented by 2 hexadecimal digits (e.g. FF or 6E), which means that you'll need to remove the first 96 digits from the file. Hex editors usually tell you how many bytes you have currently selected. Delete these first 48, you don't need them.
Section 2: Game Data
The majority of the game takes up this area. Your guide lists 0x2FFFFF as the final byte of the ROM. Put simply, here's what this means:
0x just specifies the hex format, so it won't be a part of the file.
2FFFFF is the actual data, and you can use your editor's search function to find it - it will be written as 2F FF FF, in 3 separate bytes.
Section 3: PCM Audio
The PCM audio will be below the game ROM in the JBM.bin file. You will first find byte x300000 (formatted as 30 00 00 in the editor). From that byte onward is the PCM audio, so you want to select from the 30 all the way to the end of the file. You want to cut it from the JBM.bin file and give it its own dedicated binary file, which can apparently be called anything, but I would recommend JBM.pcm for simplicity. Congrats, you're finished hex editing, which was the hard part.
Step 3: Python Script
Now that you've separated the two files, all that's left to do is run snesrestore.py in the same directory, and it will merge the JBM.bin and JBM.pcm file into one readable ROM, and will create a new file. From there, the new game should be completely readable in an emulator.
Congrats, you now have a playable ROM extracted straight from SSB4.