Last active
December 20, 2015 03:49
-
-
Save drhelius/6066684 to your computer and use it in GitHub Desktop.
MBC3 RTC save format
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
MBC3 RTC save format | |
the RTC data is appended after the sav file, 44 or 48 bytes. you can detect its presence by the save data being 44 or 48 bytes bigger than the cart's ram size, or 44 or 48 bytes bigger than a multiple of 8192. | |
old VBA (from 2005) saves the 44 bytes version, and can load both the 44 and 48 bytes version. | |
VBA-M saves the 48 bytes version, and can *only* load the 48 bytes version. | |
one should load both types, and always save the 48 bytes version. | |
the data consists entirely of little endian (intel order) dwords. as the registers are bytes, it's in the first byte of the field, the other bytes should always be 0. | |
time is the internal "hidden" version. latched time is what you're reading from the registers. | |
the unix timestamp is UTC seconds since 1970-01-01 00:00, a very common standard on internet. again, the lowest byte goes first. | |
offset size desc | |
0 4 time seconds | |
4 4 time minutes | |
8 4 time hours | |
12 4 time days | |
16 4 time days high | |
20 4 latched time seconds | |
24 4 latched time minutes | |
28 4 latched time hours | |
32 4 latched time days | |
36 4 latched time days high | |
40 4 unix timestamp when saving | |
44 4 0 (probably the high dword of 64 bits time), absent in the 44 bytes version |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment