Из дистрибутива программы Super Sonic v1.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 POPSNARE HIHAT STRP05 STRP06 STRP07 SINTEZ STRP09 NOISE STRP0B STRP0C Их можно использовать наравне с остальными. 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.