Это оригинальный некомпилированный модуль Sound Tracker v1.1 – музыкальный AY редактор для ZX Spectrum, автор Jarek Burczynski (Bzyk) из Pentagram.
Файл модуля – просто несжатый дамп памяти редактора с адреса 25000. В нём могут быть некоторые паттерны и все внутренние структуры, сэмплы и орнаменты (даже те, что не используются и не влияют на звучание). Поэтому у многих некомпилированных модулей Sound Tracker такой большой размер.
Оригинальные файлы на дисках TR-DOS можно идентифицировать по расширению 'S' с адресом загрузки 25000 и особыми значениями размера файла (см. далее).
Файлы с расширением ST1 – всего лишь переименованные копии оригинальных модулей, их можно найти в различных музыкальных коллекциях. Знаменитый формат AY-файла может быть контейнером и для ST1 (см. тип данных ST11 в описании AY-файлов).
Ramsoft в 1993 году хорошо задокументировал структуру ST1 в документе SoundTracker Technical Reference.
Далее приведена выдержка из этого документа (файл ST11FMT.TXT), посвящённая структуре некомпилированных песен.
---------------------------cut here-------------------
UNCOMPILED SONGS STRUCTURE Start address= 25000 (61A8h) Lenght= 3009 (0BC1h)+576 (0240h)x[number of patterns] Start = uncompiled samples Start + 1950 (079Eh) = positions map Start + 2462 (099Eh) = song's lenght in patterns Start + 2463 (099Fh) = uncompiled ornaments Start + 3007 (0BBFh) = delay value Start + 3008 (0BC0h) = patterns lenght Start + 3009 (0BC1h) = patterns data UNCOMPILED SAMPLES STRUCTURE Length= 130 (82h) bytes per sample Bytes 00-31 (00h-1Fh) = envelope values (volumes) Bytes 32-63 (20h-3Fh) = noise values Bytes 64-127 (40h-7Fh) = addition for effects Byte 128 (80h) = repeat value Byte 129 (81h) = repeat lenght value Note: bit 4 of additions is for sign. UNCOMPILED POSITIONS MAP STRUCTURE Lenght= 2 bytes per positions Byte 1 = pattern number in position Byte 2 = height of pattern in this position UNCOMPILED ORNAMENT STRUCTURE Lenght= 32 (20h) bytes per ornament Positive values = normal Negative values = obtained with one's complement UNCOMPILED PATTERN STRUCTURE Lenght= 576 (0240h) bytes per pattern Lenght of location data= 9 bytes (3 bytes per channel) Channel data sequence= A,B,C. Byte n.1: bits 0-2 = octave number bit 3 = flat note flag (0=no;1=yes) bits 4-6 = note name (0=A;7=G) bit 7 = rest flag Byte n.2: bits 0-3 = effect selected number bits 4-7 = sample number Byte n.3: bits 0-3 = low part of effect or ornament number bits 4-7 = high part of effect
---------------------------cut here-------------------