zxtunes.com news musicians software harware interviews podcasts stats forum faq music: games demos press parties MP3 remixes
World's largest ZX Spectrum music collection language rus eng

Software  

views 11763
last update
10.11.2007



Super Sonic
version 1.20




1. Введение.

Музыкальный редактор "SUPER SONIC" был задуман по случаю отсутствия на данный момент "человеческого" редактора музыки для музыкального сопроцессора ( рабочая версия редактора появилась еще в январе 1993 года ) . В основу данной программы положен проигрыватель музыки , "выдранный" из игры "STARTRIP" ( как позже оказалось , этот проигрыватель "принадлежит" музыкальному редактору "SOUND TRACKER" ) . Принимая во внимание этот факт можно сказать , что возможности этих редакторов в принципе одинаковы , но в программе "SUPER SONIC" есть некоторые функции , которые позволяют обрабатывать различные музыкальные файлы ( в частности STM-ы ) .

Автор программы выражает огромную благодарность всем своим друзьям и знакомым за ценные советы и помощь в написании данной программы .

2. Как работать с редактором.

Редактор поставляется на дискете , на которой кроме самого редактора содержится несколько десятков инструментов , а также 4 музыкальных файла, которые вошли в программу "SS_DEMO".

После запуска программы редактор переходит в режим ввода текста. Нажмите CAPS SHIFT и 1 для вызова окна помощи . Внимательно изучив его , вы поймете , как управлять курсором , вставлять и удалять строки , перемещаться по тексту и др.
Попробуйте ввести маленькую музыку:
I1=STRP09
PA
*VA O3I1CDEFGABO4T3CT0O3BAGFEDC
*VB T8..
*VC T8..
EP
SA
Нажмите SYMBOL SHIFT (SS) и A для выхода в меню. Выберите опцию PLAY и в ней пункт PARAGRAPH . После успешной компиляции от вас запросят имя параграфа , который предстоит проиграть. Нажмите A и наша музыка начнет играть . Нажав SPACE , вы вернетесь в главное меню.

Для примера можете попробовать проиграть готовыю музыку , записанную на диске . Для этого ее надо загрузить ( через пункт LOAD меню FILE ) и откомпилировать полностью с помощью опции WHOLE MUSIC меню PLAY.

3. Описание главного меню.

FILE - опции работы с диском :
+ SAVE - запись на диск музыкального файла
+ LOAD - загрузка с диска музыкального файла
+ MERGE - догрузка музыкального файла
+ CLEAR TEXT - очистка текущего текста (выполняется после ответа "Y" на запрос "ARE YOU SURE ?" ).
+ CATALOGUE - просмотр оглавления диска
Выход из любого подменю , а также возврат в главное меню осуществляется по нажатию клавиш CS+1.

PLAY - проигрывание параграфа или всей музыки :
+ PARAGRAPH - проигрывание параграфа . На запрос "WHICH PARAGRAPH ?" необходимо ввести имя параграфа ( одна латинская буква от A до Z ).
+ WHOLE MUSIC - исполнение всей мелодии целиком.

TEST - опция для подсчета количества нот в каждом канале произвольно заданного параграфа.

COMPILER - компиляция и выгрузка на диск готового к исполнению файла. После успешной компиляции выдается запрос "INCLUDE PLAYER ? " , при ответе "Y" на который происходит подстыковка проигрывателя музыки ( в противном случае на диск записываются только данные ) . Затем запрашивается имя файла и происходит запись результатов компиляции на диск.

INSTRUMENT - переход в редактор инструментов.

PL.SPEED - ввод скорости проигрывания музыки: число в пределах 1..9 . Стандартно 6.

EDITOR - возврат в текстовый редактор.

Пункты меню выбираются при помощи клавиш управления курсором и клавиши . Выбор пунктов меню возможен также и при нажатии на клавишу , соответствующую первой букве названия меню.

4. Редактор инструментов.

После запуска редактора инструментов происходит запрос имени файла-инструмента, после чего осуществляется поиск его в памяти и , в случае неудачи, на диске . Если файл не найден , то инструмент считается новым.

В этом проигрывателе инструмент представляется как цепочка последовательных описаний параметров звучания. Всего их 32 . Итак :

+ клавишами CS+5 и CS+8 осуществляется выбор текущего момента .
+ клавишами CS+6 и CS+7 устанавливается уровень громкости.
+ P - PERIOD - число от 0 до 31 - определяет период шума в текущий момент.
+ T - TONE - YES/NO - определяет генерацию тона.
+ N - NOISE - YES/NO - определяет генерацию шума.
+ R - REJECT - число от 0 до 4095 - определяет отклонение от рассчитанного коэффициента деления (используется для получения эффекта частотного вибрато).
+ S - SIGN - знак +/- - определяет направление отклонения ( + REJECT или - REJECT ).

В редакторе существуют также следующие "глобальные" команды :
+ - проигрывание инструмента.
+ F - FREQ - ввод коэффициента деления для звукового канала , относительно которого проигрывается инструмент.
+ C - CLEAR - очистка всего инструмента.

Выход из редактора осуществляется по нажатию клавиши , и при ответе "Y" на запрос "SAVE INSTRUMENT ?" происходит сохранение редактируемого инструмента в памяти и на диске.

5. Структура данных редактора.

Как вы уже успели заметить, музыкальный файл для редактора составляется по определенным правилам. Перечислим их:
1. Вначале описываются инструменты в виде:
"In=filename" , где n - номер инструмента от 0 до 9 и от A до F, filename - имя файла , содержащего инструмент. При компиляции музыки из файла инструмента берутся данные, описывающие его и подставляются в проигрыватель вместо заданного номера.

Кроме инструментов, содержащихся на поставляемом диске, после загрузки редактора в памяти уже находятся несколько инструментов:
BASSDRUM<I>  POPSNARE<I>  HIHAT   <I>  STRP05  <I>
STRP06  <I>  STRP07  <I>  SINTEZ  <I>  STRP09  <I>
NOISE   <I>  STRP0B  <I>  STRP0C  <I>
Их можно использовать наравне с остальными.
2. Описание параграфов музыки в виде:
" Pn
*VA партия для канала A
*VB партия для канала B
*VC партия для канала C
EP " , где
n - номер параграфа - от A до Z (всего 26).
После составления параграфа неплохо воспользоваться опцией TEST главного меню для проверки количества нот в каналах.

3. Описание очереди параграфов в виде:
"S..." , сразу после оператора S записываются имена параграфов (от A до Z).
Отсутствие одного из перечисленных пунктов в музыкальном файле приведет в лучшем случае к ошибке при попытке проиграть музыку или откомпилировать ее. Если в описаниях партий использован неописанный в начале файла инструмент, то выдается сообщение об ошибке 'MISSING INSTRUMENT n'; если описанный инструмент не найден в памяти и на диске , то выдается сообщение 'NOT FOUND "filename".'.
Если не найдена очередь параграфов, то выдается сообщение "NOT FOUND TURN PARAGRAPHS".

6. Синтаксис редактора.

Синтаксис описания партитуры напоминает оператор PLAY Basicа 128, но имеются некоторые отличия. Итак, перечслим полностью:
Ноты : символы C,D,E,F,G,A,B , а именно:
C-до , D-ре , E-ми , F-фа , G-соль , A-ля , B-си;
# - диез и & - бемоль (ставится перед нотой: #C);
In - переключение текущего инструмента (n=0..F);
Wn - переключение текущего орнамента (n=0..9);
On - выбор текущей октавы (n=0..7);
Tn - выбор текущего темпа (n=0,1,...,Z);
Rnmm - выбор номера огибающей (n=4..E) и младшего байта ее периода (mm=0..FF). Старший байт=0;
. - пауза;
! - функция рассчета периода огибающей для задан ной ноты ( ставится перед нотой: !D или !#F). Предназначена для "подзвучки" басовых партий.

7. Использование откомпилированных блоков.

Откомпилированная музыка загружается в память с адреса 49152 (при условии подключения проигрывателя). Инициализация музыки : RANDOMIZE USR 49152 . Точка входа для "играния" : RANDOMIZE USR 49155 .

Вот , похоже , и все на этот раз ...

В следующих версиях редактора ожидается:
- расширение возможностей текстового редактора,
- редактор орнаментов,
- кое-что другое ...

P.S. I'd like to tell my best whishes for:
RST7 - thanks for all your help and offer, R-soft - for some testing this program.


© 2006—2014...?
ZXTUNES — ex'World's largest ZX Spectrum music collection