CIT (File Format): Difference between revisions

From Luma's Workshop
Jump to navigation Jump to search
(Created page with "Category:File formats = File Format = '''CIT''' files are tables of chords, found in both ''Super Mario Galaxy'' and ''Super Mario Galaxy 2''. Each one corresponds to a separate BMS file. == Header == {| class="wikitable" ! Offset !! Type !! Description |- | 0x00 || Int32 || Padding. |- | 0x04 || String || File magic. '''CITS''' in ASCII. |- | 0x08 || Int32 || File length |- | 0x0C || Int16 || Chord Count |- | 0x0E || Int16 || ScalePair Count. |- | 0x10 || Int32[Cho...")
 
m (Super Hackio moved page CIT to CIT (File Format) without leaving a redirect: Title format change)
 
(No difference)

Latest revision as of 22:45, 26 January 2024

File Format

CIT files are tables of chords, found in both Super Mario Galaxy and Super Mario Galaxy 2. Each one corresponds to a separate BMS file.

Header

Offset Type Description
0x00 Int32 Padding.
0x04 String File magic. CITS in ASCII.
0x08 Int32 File length
0x0C Int16 Chord Count
0x0E Int16 ScalePair Count.
0x10 Int32[Chord Count] Chord Offsets
0x10 + (Chord Count*4) Int32[ScalePair Count] ScalePair Offsets

Chords

Offset Type Description
0x00 byte Root Note. I.e. 00 for C.
0x01 byte[3] Triad. I.e. 00 04 07 for a C major triad.
0x04 byte[4] Extensions. These bytes are Notes.

ScalesPair

A set of 2 music Scales. Usually the two scales are identical
ScalePair format below:

Offset Type Description
0x00 Int32 Scale A Pointer
0x04 Int32 Scale B Pointer

Located at the Scale A and B Pointers is a real scale. Format below:

Offset Type Description
0x00 byte[12] Scale Components. These bytes are Notes

Notes

Individual notes in a CIT file:

Value Note
00 C
01 C#/Db
02 D
03 D#/Eb
04 E
05 F
06 F#/Gb
07 G
08 G#/Ab
09 A
0A A#/Bb
0B B
7F None.