Difference between revisions of "Mohawk MIDI"

From A look inside The Link @ wiki
Jump to: navigation, search
(first parts of the Mohawk MIDI format)
 
(documenting the rest of the format (it's really the standard MIDI format...))
Line 1: Line 1:
This is the Mohawk MIDI format.
+
This is the Mohawk MIDI format. It resembles the [[Mohawk archive format]] and [[Mohawk Sounds]] format. And, it's just a wrapper around the [http://faydoc.tripod.com/formats/mid.htm standard MIDI format]. It is in Big Endian order.
 
+
It resembles the [[Mohawk archive format]] and [[Mohawk Sounds]] format. This is a work in progress and not everything is known about it yet. It is in Big Endian order.
+
  
 
== The Header ==
 
== The Header ==
Line 19: Line 17:
  
 
== The MThd Chunk ==
 
== The MThd Chunk ==
''(MIDI Header?)''
+
See [http://faydoc.tripod.com/formats/mid.htm here] for information on this chunk.
 
+
{| class="structure"
+
|unsigned long||chunk_size
+
|-
+
|unsigned long||u0
+
|-
+
|unsigned short||u1
+
|}
+
  
 
== The Prg# Chunk ==
 
== The Prg# Chunk ==
Line 43: Line 33:
  
 
== The MTrk Chunk ==
 
== The MTrk Chunk ==
''(MIDI Track?)''
+
See [http://faydoc.tripod.com/formats/mid.htm here] for information on this chunk.
 
+
{| class="structure"
+
|unsigned long||chunk_size
+
|}
+
 
+
Following this, it's unknown. It looks like it two shorts followed by a byte (''string_length'') and then ''string_length'' + 1 bytes that form a string. Here are some string examples:
+
 
+
* "Loop start"
+
* "Setup end"
+
* "Loop end"
+
* "Glowing.eff"
+
** Looks like a filename, but the file doesn't exist!
+
* "Ac bass"
+

Revision as of 23:03, 17 September 2008

This is the Mohawk MIDI format. It resembles the Mohawk archive format and Mohawk Sounds format. And, it's just a wrapper around the standard MIDI format. It is in Big Endian order.

The Header

4 bytes mhwk_magic
unsigned long size
4 bytes midi_magic
  • mhwk_magic is the string 'MHWK'. It's equal to the Mohawk format signature!
  • size is the effective resource size, minus the ADPC chunk size, minus 2.
  • midi_magic is the string 'MIDI'.

After this header come the chunks. Until now, 3 chunk types have been identified: 'MThd', 'Prg#' and 'MTrk'.

The MThd Chunk

See here for information on this chunk.

The Prg# Chunk

(MIDI Programs?)

unsigned long chunk_size
unsigned short u0
unsigned short u1
unsigned short u2

The MTrk Chunk

See here for information on this chunk.