QuartetFileFormat
Jump to navigation
Jump to search
Quartet File Formats
Header
| Word | Contents |
|---|---|
| 0 | Playback Frequency |
| 1 | Bar measurement note |
| 2 | Tempo multiplier |
| 3 | Time signature as 2 bytes |
| 4 | 0 |
| 5 | 0 |
| 6 | 0 |
| 7 | 0 |
Instructions 12 bytes
Voices stored sequentially 1-2-3-4 with 1 finish marker per voice
Play Note
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B |
| 00 | "P" | Length | Frequency | 00 | 00 | 00 | 00 | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Slide to note
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B |
| 00 | ‘S’ | Length | Frequency | Step size | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Rest
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B |
| 00 | "R" | Length | Frequency | 00 | 00 | 00 | 00 | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Voice change
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B |
| 00 | ‘V’ | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | Table offset | |
|---|---|---|---|---|---|---|---|---|---|---|---|
Start loop
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B |
| 00 | ‘I’ | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 |
End loop
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B |
| 00 | ‘L’ | 00 | 00 | 00 | 00 | 00 | 00 | Times | 00 | 00 | |
|---|---|---|---|---|---|---|---|---|---|---|---|
End voice
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B |
| 00 | ‘F’ | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 |
Note lengths
The tempo is a number between 4 and 40. A semibreve is 16x this number. All other notes are multiples or fractions of this number.
| Tx | Note |
|---|---|
| 24 | Semibreve (dotted) |
| 16 | Semibreve |
| 12 | Minim (dotted) |
| 8 | Minim |
| 6 | Crotchet (dotted) |
| 4 | Crotchet |
| 3 | Quaver (dotted) |
| 2 | Quaver |
| 1 | Semiquaver |
Frequencies
| 00050A28 | C# |
| 0004C1BC | C |
| 00047D66 | B |
| 00043CE2 | A# |
| 00040000 | A |
| 0003C686 | G# |
| 00039046 | G |
| 00035D12 | F# |
| 00032CBC | F |
| 0002FF22 | E |
| 0002D412 | D# |
| 0002AB70 | D |
| 00028514 | C# |
| 000260DE | C |
| 00023EB3 | B |
| 00021E71 | A# |
| 00020000 | A |
| 0001E343 | G# |
| 0001C823 | G |
| 0001AE89 | F# |
| 0001965E | F |
| 00017F91 | E |
| 00016A09 | D# |
| 000155B8 | D |
| 0001428A | C# |
| 0001306F | C |
| 00011F59 | B |
| 00010F38 | A# |
| 00010000 | A |
| 0000F1A1 | G# |
| 0000E411 | G |
| 0000D744 | F# |
| 0000CB2F | F |
| 0000BF68 | E |
| 0000B504 | D# |
| 0000AADC | D |
| 0000A145 | C# |
| 00009837 | C |
| 00008FAC | B |
| 0000879C | A# |
| 00008000 | A |
| 000078D0 | G# |
| 00007208 | G |
| 00006BA2 | F# |
| 00006597 | F |
| 0005FEF | E |
| 00005A82 | D# |
| 0000556E | D |
| 000050A2 | C# |
| 00004C1B | C |
.SET Voiceset file
| Byte | set frequency |
| Byte | number of instruments + 1 |
| 20 * 7 byte blocks | []NAME[]0 |
| 20 * 4 byte blocks | offset to sample data |
All samples in AVR format (See http://www.atari-forum.com/wiki/index.php/AVR)