Microsoft DirectX 8.1 (C++)

Chord Track List

The chord track list contains chord data for a Track Form. It is organized as follows:

<cord-list> -> LIST( 'cord'
  <crdh-ck>    // Header
  <crdb-ck>... // Chord body chunks
  )

<crdh-ck>

<crdh-ck> -> crdh ( <DWORD> )

The header is a DWORD containing the chord root in the upper 8 bits and the scale in the lower 24 bits. For an explanation of what these bits represent, see DMUS_IO_SUBCHORD.

The body of data for the chord track list consists of information about a chord change and the component subchords:

<crdb-ck> -> crdb(
  <DWORD>     // Size of DMUS_IO_CHORD
  <DMUS_IO_CHORD>
  <DWORD>     // Number of subchords
  <DWORD>     // Size of DMUS_IO_SUBCHORD
  <DMUS_IO_SUBCHORD>...
  )