Difference between revisions of "CSNG (File Format)"
From Retro Modding Wiki
MrSinistar (Talk | contribs) (Thanks to jackoalan for helping crack this format even further!) |
|||
Line 1: | Line 1: | ||
− | The '''CSNG format''' contains MIDI data. It appears in Metroid Prime 1 and 2. It is essentially MusyX's SON music format. | + | The '''CSNG format''' contains MIDI data. It appears in Metroid Prime 1 and 2. It is essentially MusyX's SON music format, with a custom header. |
{{research|3|Nothing is known about this format.}} | {{research|3|Nothing is known about this format.}} | ||
+ | __TOC__ | ||
+ | |||
+ | == Format == | ||
+ | |||
+ | === Custom Header === | ||
+ | |||
+ | This 0x14-byte header isn't part of the MusyX format; it appears at the start of the file. After parsing this the rest of the file is copied into a buffer and then passed to the MusyX functions. | ||
{| class="wikitable" | {| class="wikitable" | ||
Line 28: | Line 35: | ||
| 4 | | 4 | ||
| '''File Length''' | | '''File Length''' | ||
+ | |} | ||
+ | |||
+ | === Header === | ||
+ | |||
+ | {| class="wikitable" | ||
+ | ! Offset | ||
+ | ! Size | ||
+ | ! Description | ||
|- | |- | ||
− | | | + | | 0x0 |
| 4 | | 4 | ||
| '''Voice Header Table Offset''' (start of MusyX SON data) | | '''Voice Header Table Offset''' (start of MusyX SON data) | ||
|- | |- | ||
− | | | + | | 0x4 |
| 4 | | 4 | ||
| '''Voice Sequence Offsets Table Offset''' | | '''Voice Sequence Offsets Table Offset''' | ||
|- | |- | ||
− | | | + | | 0x8 |
| 4 | | 4 | ||
| '''Wave Index Table Offset''' | | '''Wave Index Table Offset''' | ||
|- | |- | ||
− | | | + | | 0xC |
| 4 | | 4 | ||
| {{unknown|'''Unknown'''}}; (always 0...probably another offset) | | {{unknown|'''Unknown'''}}; (always 0...probably another offset) | ||
|- | |- | ||
− | | | + | | 0x10 |
| 4 | | 4 | ||
| '''Initial BPM Rate'''; AKA Tempo (always 0x78 = 120 beats per minute) | | '''Initial BPM Rate'''; AKA Tempo (always 0x78 = 120 beats per minute) | ||
|- | |- | ||
− | | | + | | colspan=3 {{unknown|WIP}} |
− | + | ||
− | + | ||
|} | |} | ||
Revision as of 13:05, 6 March 2015
The CSNG format contains MIDI data. It appears in Metroid Prime 1 and 2. It is essentially MusyX's SON music format, with a custom header.
This file format needs a lot of research Nothing is known about this format. |
Contents
Format
Custom Header
This 0x14-byte header isn't part of the MusyX format; it appears at the start of the file. After parsing this the rest of the file is copied into a buffer and then passed to the MusyX functions.
Offset | Size | Description |
---|---|---|
0x0 | 4 | Magic; (always 0x2) |
0x4 | 4 | Sequence Index |
0x8 | 4 | Voice Count |
0xC | 4 | AGSC ID |
0x10 | 4 | File Length |
Header
Offset | Size | Description |
---|---|---|
0x0 | 4 | Voice Header Table Offset (start of MusyX SON data) |
0x4 | 4 | Voice Sequence Offsets Table Offset |
0x8 | 4 | Wave Index Table Offset |
0xC | 4 | Unknown; (always 0...probably another offset) |
0x10 | 4 | Initial BPM Rate; AKA Tempo (always 0x78 = 120 beats per minute) |
WIP |