DRM (format pliku)
From Atariki
Format modułu muzycznego obsługiwany przez programy:
- Automat Perkusyjny w wersji 4.10,
- Atari Drum Machine w wersji 3.3,
- Chaos Drums w wersji 1.3 (nieco zmodyfikowany format).
offset | długość | opis |
$0000 | $0004 | Sygnatura: $00 $00 $FF $FF |
$0004 | $0001 | Tempo |
$0005 | $0001 | Barwa |
$0006 | $0640 | Definicje patternów (100*16) |
$0646 | $0064 | Długości patternów |
$06AA | $0002 | Ilość wolnych pozycji w songu (max 500 kiedy song jest pusty) zapisana jako LSB-MSB |
$06AC | ... | Definicja songu |
Spis treści |
Tempo
Liczba zapisana w pliku a wyznaczająca tempo określa ilość uderzeń na minutę (bpm). Wylicza się ją wg wzoru:
1475 bpm = ----------- wartość+1
Wg programu kolejnym wartościom odpowiadają tempa:
- 34: 44
- 33: 45
- 32: 46
- 31: 48
- 30: 50
- 29: 52
- 28: 54
- 27: 56
- 26: 58
- 25: 60
- 24: 62
- 23: 64
- 22: 66
- 21: 70
- 20: 74
- 19: 78
- 18: 82
- 17: 88
- 16: 92
- 15: 100
- 14: 108
- 13: 115
- 12: 125 bpm
- 11: 136
- 10: 150
- 9: 176
- 8: 188
- 7: 214
- 6: 248
- 5: 296
Barwa
Barwa instrumentów oznaczana jest wartościami:
- 4: -1
- 5: 0
- 6: +1
Metrum
Metrum jest w pliku reprezentowane, jako konkretna długość patternu. Metrum 3/4 to pattern o 12 pozycjach, zaś 4/4 - o 16.
Pattern
Do pliku zapisywane jest zawsze 100 pełnych patternów.
Pattern złożony jest zawsze z 16 bajtów (niezależnie od wybranego metrum), które definiują kolejne pozycje w patternie:
- $HL - gdzie L to instrument grany na 1 kanale, H to instrument grany na 2 kanale.
Kolejne cyfry odpowiadają instrumentom:
- 1 - bass drum
- 2 - snare drum
- 3 - middle tom
- 4 - low tom
- 5 - rimshot (lub cowbell w Chaos Drums)
- 6 - hi-hat closed
- 7 - hi-hat open
- 8 - clap
0 oznacza, że na danym kanale nie odgrywany jest żaden instrument.
Song
Definicja songu składa się z kolejno zapisanych numerów patternów (0..99). Całość zakończona jest bajtem o wartości $FF.
Uwagi
1. Utwór demonstracyjny nie jest zapisywany przez Automat Perkusyjny do pliku w poprawnej postaci (ma niewłaściwą ilość wolnych pozycji w songu i urwaną definicję songu).
2. Format Chaos Drums jest niemal identyczny z formatem Automatu Perkusyjnego i Atari Drum Machine. Różni się jedynie w dwóch szczegółach:
- Nie zapisuje sygnatury pliku $00 $00 $FF $FF,
- Zamiast instrumentu rimshot używany jest cowbell.