These files contain labeled RAM and ROM data, along with struct and enum definitions. They're used for the data maps website: http://labk.org/maps/
json
- Combined YAML files in JSON format; used for the data maps websitesym
- Symbols files for each game and version; can be used with no$gbatools
compress.py
- Functions for decompressing RLE and LZ77 compressed dataconstants.py
- Defines constants used by other scriptsdumper.py
- Script for finding and outputting data from a ROM filefunction.py
- Class for reading/outputting THUMB functionsgame_info.py
- Class for handling all info entries for a gameinfo_entry.py
- Classes for representing info entries of each typeoam_dumper.py
- Script for outputting OAM data as an ASM filepcm_dumper.py
- Script for outputting PCM samples as WAV or AIFFreferences.py
- Script for finding all references to an addressregion_find.py
- Script for finding an address from one region in anotherrom.py
- Class for handling a Fusion or Zero Mission ROM filesym_file.py
- Script for generating a sym file to use with no$gbasymbols.py
- Class for storing labels while disassembling functionstext_dumper.py
- Script for printing text from a ROM filethumb.py
- Class for representing THUMB instructionsvalidator.py
- Script for validating data and converting to JSON
yaml
- Info files in YAML format; large files are split for easier editing
Game directories are mf
for Fusion and zm
for Zero Mission. Files starting with unk
are for unlabeled data.
hex
is a hexadecimal string that matches the pattern0x[0-9A-F]+
- Labels must match the pattern
[A-Za-z]\w*
Region = Literal['U', 'E', 'J']
RegionDict = Dict[Region, hex]
RegionInt = Union[hex, RegionDict]
- GameEntry
desc
:str
label
:str
notes
:Optional[str]
- GameVar (extends GameEntry)
type
:str
count
:RegionInt
cat
:Optional[Category]
comp
:Optional[Compression]
enum
:Optional[str]
- RAM / ROM (extends GameVar)
addr
:RegionInt
- Code (extends GameEntry)
addr
:RegionInt
size
:RegionInt
mode
:Literal['thumb', 'arm']
params
:Union[List[GameVar], None]
return
:Union[GameVar, None]
- Struct (extends GameEntry)
size
:hex
vars
:List
(Extends GameVar)offset
:hex
- Enum (extends GameEntry)
vals
:List
desc
:str
label
:str
val
:hex
notes
:Optional[str]
u8
- Unsigned 8 bit integers8
- Signed 8 bit integeru16
- Unsigned 16 bit integers16
- Signed 16 bit integeru32
- Unsigned 32 bit integers32
- Signed 32 bit integer
bool
- Integer that only takes values 0 (false) or 1 (true)flags
- Integer used for bit flagsascii
- 8 bit ASCII charactersjis
- 8 bit Shift JIS charactertext
- 16 bit in-game text charactergfx
- Graphics, 32 bytes per tiletilemap
- Tilemap, 2 bytes per tilepalette
- Palette, 32 bytes per rowoam_frame
- OAM frame, 16 bit attributesbg_blocks
- Block map for a background (RLE)bg_map
- Tilemap for a background (LZ77)pcm
- Pulse-code modulation audio samplethumb
- 16 bit THUMB codearm
- 32 bit ARM code
rle
- RLE compressedlz
- LZ77 compressed
Alt
- AlternateAnim
- AnimationBG
- BackgroundCalc
- CalculateCurr
- CurrentDef
- DefinitionGfx
- GraphicsInit
- InitializeNav
- NavigationNum
- NumberPrev
- PreviousPtr
- PointerUnk
- Unknown