PlayStation (PS1) Dragon Quest VII and IV Music Format (SEQQ)
Dragon Quest VII and IV (DQ7/DQ4) do not use the generic SEQ/VAB driver. Both games are developed by Heart Beat and use the same custom driver (there could be some minor differences, as usual).
. Dragon Quest Monsters does not use SEQq because the game is probably developed by Enix and Tose, not Heart Beat.)). It is very similar to Generic SEQ, however, it is slightly different.
Overview
PSX Dragon Quest games have a single large archive in CD, which is named like HBD1PS1D.Q71 (note that it is a hidden file). A lot of virtual files (music data included) are stored in this file.
A sound file can have both wave banks and sequence at the same time. However, to share wave banks with multiple songs, the game seems to have a file for banks and files for sequences separately.
Offset | Size | Description |
---|---|---|
0x00 | 60 | Sound format header |
0x3c | variable | VB and regions |
- | variable | SEQ entry |
Sound Format Header
A sound file has a 60 bytes header at the beginning.
Offset | Size | Description |
---|---|---|
0x00 | 4 | SEQ size (could be 0) |
0x04 | 2 | SEQ id (msq_id) |
0x06 | 1 | Wave bank count (usually 4) |
0x07 | 1 | Unknown (usually 0 for BGM?) |
0x08 | 4 | Unknown |
0x0c | 4 | Wave bank #1 - size of VB (if 0, use preloaded bank) |
0x10 | 4 | Wave bank #1 - size of regions |
0x14 | 2 | Wave bank #1 - id/index? |
0x16 | 2 | Wave bank #1 - ? |
0x18 | 12 | Wave bank #2 - same as above |
0x24 | 12 | Wave bank #3 - same as above |
0x30 | 12 | Wave bank #4 - same as above |
Sequence Data
SEQq is a sequence format for those games. It looks very similar to Generic SEQ, however, it is slightly different.
I've made a simple converter for SEQq, seqq2mid. Check it out if you want.
You can rip sequences by using bin2seq.
SEQq Header
Name | Size | Description |
---|---|---|
ID | 4 bytes | Signature: "qQES" |
Version? | 2 bytes | 0 |
SEQ number? | 2 bytes | For instance, 0x1001 |
Resolution of quarter note | 2 bytes | TPQN |
Tempo | 3 bytes | Tempo (length of quarter note in microseconds) |
Rhythm (Numerator) | 1 byte | Numerator of time signature (n) |
Rhythm (Denominator) | 1 byte | Denominator of time signature (2n) |
Number of channels | 1 byte | Number of channels used in the sequence |
Control Change
It has more control changes than SEQ.
- 1
- 2, 11
- 4
- 5
- 6
- 7
- 9
- 10
- 20
- 21
- 22
- 23
- 32
- 52
- 53
- 54
- 55
- 56
- 64
- 69
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 91
- 92
- 98
- 99
- 121
- 126
- 127
Meta Event
Unlike SEQ, SEQq has data length.
End Marker
SEQ ends with a meta event, "delta-time FF 2F". On the other hand, SEQq ends with "FF 2F 00", without delta-time!