• Login
  • Register
  • Dolphin Forums
  • Home
  • FAQ
  • Download
  • Wiki
  • Code


Dolphin, the GameCube and Wii emulator - Forums › Dolphin Emulator Discussion and Support › General Discussion v
« Previous 1 ... 50 51 52 53 54 ... 369 Next »

GameCube save format
View New Posts | View Today's Posts

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Thread Modes
GameCube save format
09-01-2018, 12:59 AM
#1
Seregon
Unregistered
 
I am currently developing a save converter tool, where the user should be able to switch between GameCube regions and different save formats with the click of a button. I have researched and compared file footers and headers, but haven't quite yet figured out how they are built. Does anybody know how the save file structure is built on the different file formats of GCI, GCS and SAV?
Reply
09-01-2018, 01:46 AM
#2
Jack Frost Offline
aka. BhaaL
**********
Developers (Some Administrators and Super Moderators)
Posts: 511
Threads: 3
Joined: Oct 2009
YAGCD has next to nothing on them, so they might be game specific or something? At least the headers and stuff are part of the Memory Card and not the save itself.
Find
Reply
09-01-2018, 01:54 AM
#3
JosJuice Offline
Developer
**********
Developers (Some Administrators and Super Moderators)
Posts: 8,946
Threads: 7
Joined: Oct 2014
According to the code I can find in Dolphin, this is how GCS and SAV differ from GCI:

1. SAV has an extra 0x80 byte header and GCS has an extra 0x110 byte header, whereas GCI has none

2. A little bit of extra conversion has to be performed as described by this function: https://github.com/dolphin-emu/dolphin/blob/beeb6754d2c653c05ab5ed7def0abbfa8fb0e9c4/Source/Core/Core/HW/GCMemcard/GCMemcard.cpp#L1017 (also see the comment at https://github.com/dolphin-emu/dolphin/blob/beeb6754d2c653c05ab5ed7def0abbfa8fb0e9c4/Source/Core/Core/HW/GCMemcard/GCMemcard.h#L389-L390)

And in case you're not familiar with converting the region of a save file: For some games, you just have to edit the fourth byte of the GCI file (or the equivalent byte in one of the other file formats). For some other games, you have to do some non-trivial work that is specific to the game.
Find
Reply
09-01-2018, 01:58 AM
#4
Seregon
Unregistered
 
(09-01-2018, 01:54 AM)JosJuice Wrote: According to the code I can find in Dolphin, this is how GCS and SAV differ from GCI:

1. SAV has an extra 0x80 byte header and GCS has an extra 0x110 byte header, whereas GCI has none

2. A little bit of extra conversion has to be performed as described by this function: https://github.com/dolphin-emu/dolphin/blob/beeb6754d2c653c05ab5ed7def0abbfa8fb0e9c4/Source/Core/Core/HW/GCMemcard/GCMemcard.cpp#L1017 (also see the comment at https://github.com/dolphin-emu/dolphin/blob/beeb6754d2c653c05ab5ed7def0abbfa8fb0e9c4/Source/Core/Core/HW/GCMemcard/GCMemcard.h#L389-L390)

And in case you're not familiar with converting the region of a save file: For some games, you just have to edit the fourth byte of the GCI file (or the equivalent byte in one of the other file formats). For some other games, you have to do some non-trivial work that is specific to the game.
Thanks! That's the perfect place to start Smile
Reply
« Next Oldest | Next Newest »


  • View a Printable Version
  • Subscribe to this thread
Forum Jump:


Users browsing this thread: 1 Guest(s)



Powered By MyBB | Theme by Fragma

Linear Mode
Threaded Mode