Dolphin, the GameCube and Wii emulator - Forums

Full Version: [Patch] Datel AGP support
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4
Yeah, Top Gun is one of the few exceptions, to the point where it makes it one VBA-M's list of games that need attention. Seems like Top Gun is the only one that does this; I haven't observed it to be a widespread issue myself.

Another thing to watch out for is that games that use EEPROM should technically disable the memory area reserved for SRAM (e.g. always return 0, never write anything here). Most games don't care as they never bother reading or writing there if they're using EEPROM to save, but Nintendo NES Classics do and refuse to boot if it can successfully change the SRAM memory area.
I think I got most of the bugs worked out.  Still no Flash command support (id, erase, write unlock, etc).  Still requires existing sav of the correct size.  If someone else wants to fix these issues, feel free.
EEPROM should work now, and so should SRAM/FRAM.
It looks like I have a few clone cartridges (ebay didn't describe them as such when I bought them).  They're interesting in the way they save.  In one example case, it looks like it has regular RAM (not battery backed) to hold the save as its written.  It patches the code to copy this RAM into a Flash ROM with commands that are similar to, but still different from all the ones described in GBATEK.  In fact, it looks like the code queries the Flash for an ID and changes the commands based on the ID, meaning it's written to handle whichever of the several supported Flash ROM chips is actually in the cartridge.  Maybe the cloners were uncertain of their supply chain? This is all in a cartridge that was originally EEPROM.
Okay, some more saves are definitely working now. I can get Zelda - The Four Swords in game and everything, which is awesome.

Minish Cap on the other hand "errors" when loading the cartridge now. Not entirely sure why or what changed about it. What causes it to error out is having a properly formatted save courtesy of VBA. With no save file there, the game loads fine. Maybe I copied the patch wrong (git's patch application failed, so I had to manually add everything in.)

I'll continue to go through it and see if I can't find if I screwed something up. Excellent work as usual.
Minish Cap works for me. Is your file 8192 bytes, just like Four Swords? I tried creating the file with VBA, creating the file and creating a character in VBA, and then saving the game after receiving the sword. All three of these loaded successfully in Dolphin.

Git patching works for me with the patch if Ignore Wh.spc. is checked. I'm not entirely certain why it doesn't like the white space in my patch. The patch is from clean Dolphin, so the previous patch should not be in place.
Okay, then I must have copied something wrong. Thanks again for your work.
Well, I automatically, with the ignore whitespace, applied the patch, and it still errors out trying to load Minish Cap if I have a save there. the rom size is 16,777,216 bytes, and save file size is 8,192 bytes.

It seems any 16MB game I have with a save file is failing?

Question: Are you using the NTSC Minish Cap? That's the version I have. I also have the NTSC Fire Emblem, and that one is erroring out for some reason too if it has a save file. Zelda - The Four Swords, Sonic Advance and Metroid Fusion are all fine (8MB games, though.)

I guess the last thing to note is that I have the version of the AGP without the construction kit. I don't know if it makes much of a difference.

Lastly: It seems to be creating an 8KB save file if I don't have one there.
Strange. I am using NTSC versions. I'm also using the AGP with the construction kit. I don't know if you're using save states, but you might try starting with a fresh boot if you are using save states.

Fire Emblem sav file should be 32768 bytes (the one created by VBA will be 65536, which should work, too). I don't know if you've verified your GBA ROMs. I think most good dumps have the first four bytes 0x2E 00 00 EA or similar, where my clones are jumping to the end to handle the save patching (in my case, copies the data from the Flash ROM at 0x87C0000 to the RAM at 0xE000000), so the first four bytes are something like FE FF 3D EA.

If the sav file doesn't exist, the code that resizes the data is being skipped, so it keeps the last used size (if you just ran a game with 8192 size file, it will save a new file with that size when it closes the missing sav). That should probably be changed.

If you let it create one with Minish Cap in Dolphin, does it work the next time you run it with Dolphin? Does the save file it creates work with VBA?

What does the error look like? Does it load the entire game (there's a yellow progress bar on my version)? Is the error in AGB (returns to the AGB menu) or in the GBA game itself or in Dolphin (crashing)?

I guess it's possible the commands might be different with the two different versions of the AGP. I've also wondered if the Construction Kit version is the USA version and the non is the PAL version (earlier release data). I've also wondered if the non-Construction Kit version has the 10 built in GBA homebrew games (selected by pressing right or left when the AGP is asking you to insert your cartridge and press 'A'.
When pressing left/right nothing happens. The version I have has no built-in games. I'm not using savestates of course (I've gotten burned by them enough in the past.)

I went back through with the properly patched version from you, and now even if there isn't a save file, I can't get it to load. Instead of having the yellow load bar come up, nothing happens at all (the error screen within the AGP program pops up, and it lets me try again and again, to no avail.)

I'll test Sacred Stones again when I'm back at that computer. I'm guessing the built-in homebrew titles were the ones from the MaxPlay?
Okay, went back and tested. All my 8 MB games (I only have like 5, so, it's not much) work, and all my 16 MB games fail to load. Not sure what else I can do. I tried using Linux instead of Windows (in case it was related to the file loading problem I ran into at first) and a portable install to avoid any possible bad settings from turning up.

I'm about out of ideas as to why I can't load them.
If you want you can try this one.
If this doesn't work, I might need to change what get returns from the 0x800000.
Pages: 1 2 3 4