Инструменты пользователя

Инструменты сайта


msx:maestro:med:med

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
Последняя версия Следующая версия справа и слева
msx:maestro:med:med [2022-03-29 10:52]
GreyWolf [EDIT]
msx:maestro:med:med [2023-05-30 19:06]
GreyWolf [Музыкальный пакет MEDIA]
Строка 1: Строка 1:
 ====== Музыкальный пакет MEDIA ====== ====== Музыкальный пакет MEDIA ======
 FIXME FIXME
 +
 +{{med230.png?​nolink}}
  
 Автор: Сергей Новосельцев (1987-1988). Автор: Сергей Новосельцев (1987-1988).
Строка 6: Строка 8:
 Музыкальный пакет "​MEDIA"​ является инструментальным программным средством (ПС) для разработки музыкального сопровождения учебных,​ игровых и демонстрационных программ для ПЭВМ MSX. Пакет состоит из музыкального редактора MED и [[msx:​maestro:​maestro#​GRPLIBM|библиотеки функций для языка C]]. Музыкальный пакет "​MEDIA"​ является инструментальным программным средством (ПС) для разработки музыкального сопровождения учебных,​ игровых и демонстрационных программ для ПЭВМ MSX. Пакет состоит из музыкального редактора MED и [[msx:​maestro:​maestro#​GRPLIBM|библиотеки функций для языка C]].
  
-ПЭВМ MSX оснащены трёхголосным программируемым звукогенератором ([[msx:​psg:​psg|PSG]]) GI AY-3-8910, имеющим диапазон 8 октав и генератор шума. Для программной поддержки [[msx:​psg:​psg|PSG]] в языке [[msx:​basic:​|]] имеется оператор ''​[[msx:​basic_programming_guide:06#​play|PLAY]]''​ с встроенным языком MML (Music Macro Language), позволяющим в символической форме представлять нотную запись а также управлять громкостью и формой звукового сигнала;​ однако среда [[msx:​basic:​|]] мало приспособлена для создания программ профессионального уровня. В системе же [[msx:​dos|]] музыкальные средства отсутствуют.+ПЭВМ MSX оснащены трёхголосным программируемым звукогенератором ([[msx:​psg:​psg|PSG]]) GI AY-3-8910, имеющим диапазон 8 октав и генератор шума. Для программной поддержки [[msx:​psg:​psg|PSG]] в языке [[msx:​basic:​|]] имеется оператор ''​[[msx:​basic_dialogue_programming_language:006#​play|PLAY]]''​ с встроенным языком MML (Music Macro Language), позволяющим в символической форме представлять нотную запись а также управлять громкостью и формой звукового сигнала;​ однако среда [[msx:​basic:​|]] мало приспособлена для создания программ профессионального уровня. В системе же [[msx:dos:|]] музыкальные средства отсутствуют.
  
-Пакет "​MEDIA"​ предоставляет разработчикам программ в [[msx:​dos|]] удобный инструмент подготовки музыкальных фрагментов для [[msx:psg:psg|PSG]], включения их в программу и управления исполнением,​ создания музыкальных и шумовых эффектов.+Пакет "​MEDIA"​ предоставляет разработчикам программ в [[msx:dos:|]] удобный инструмент подготовки музыкальных фрагментов для [[msx:​psg:​|PSG]],​ включения их в программу и управления исполнением,​ создания музыкальных и шумовых эффектов.
  
 Пакет "​MEDIA"​ разработан в рамках идеологии [[msx:​maestro:​maestro|ПС "​МАЭСТРО"​]] и предназначен для использования вместе с ним. Пакет "​MEDIA"​ разработан в рамках идеологии [[msx:​maestro:​maestro|ПС "​МАЭСТРО"​]] и предназначен для использования вместе с ним.
Строка 15: Строка 17:
  
 Дополнительную информацию о музыкальных возможностях [[msx:​basic:​|]] можно узнать тут: Дополнительную информацию о музыкальных возможностях [[msx:​basic:​|]] можно узнать тут:
-  * [[msx:basic_programming_guide:06]]+  * [[msx:basic_dialogue_programming_language:006]]
   * [[msx:​using_musical_means_in_basic:​using_musical_means_in_basic|]]   * [[msx:​using_musical_means_in_basic:​using_musical_means_in_basic|]]
  
 +
 +8-) В нём написана музыка:​ [[msx:​ar_games:​|]]
 ====== Язык MML+ ====== ====== Язык MML+ ======
-В качестве основы нотной записи использован язык [[msx:basic_programming_guide:06:#​mml|MML]],​ реализованый в [[msx:​basic:​|]] со следующими дополнениями:​+В качестве основы нотной записи использован язык [[msx:basic_dialogue_programming_language:006:#​mml|MML]],​ реализованный в [[msx:​basic:​|]] со следующими дополнениями:​
   * при записи нот большие и малые буквы обозначают разные октавы,​ большие буквы относятся к октаве,​ указанной в операторе ''​О'',​ a a малые — к ''​O+1''​ ; это существенно сокращает количество операторов ''​О''​ в нотной записи.   * при записи нот большие и малые буквы обозначают разные октавы,​ большие буквы относятся к октаве,​ указанной в операторе ''​О'',​ a a малые — к ''​O+1''​ ; это существенно сокращает количество операторов ''​О''​ в нотной записи.
 Например Например
Строка 33: Строка 37:
 Операторы для ​ управления LFO и шумом (LFO — Low Frequency Oscillation — изменение частоты звучания генератора относительно основной загруженной ноты): Операторы для ​ управления LFO и шумом (LFO — Low Frequency Oscillation — изменение частоты звучания генератора относительно основной загруженной ноты):
   * операторы ''​[''​ и ''​]''​ включают и выключают LFO для соответствующего голоса;​ за оператором [ может следовать цифра 0, 1 или 2, задающая форму ​ LFO:    * операторы ''​[''​ и ''​]''​ включают и выключают LFO для соответствующего голоса;​ за оператором [ может следовать цифра 0, 1 или 2, задающая форму ​ LFO: 
-    * <​code>​╱╲</​code> ​ +    * ''​╱╲''​ 
-    * <​code>​╲╱</​code>​ +    * ''​╲╱''​ 
-    * <​code> ​ ┌─┐ +    * ''​_∏''​
-──┘ └</​code>​+
   * операторы ''​{''​ и ''​}''​ включают и выключают LFO для шума; за оператором ''​{''​ может следовать цифра 0, 1 или 2, задающая форму LFO:    ​   * операторы ''​{''​ и ''​}''​ включают и выключают LFO для шума; за оператором ''​{''​ может следовать цифра 0, 1 или 2, задающая форму LFO:    ​
-    * <​code>​╱╲</​code> ​ +    * ''​╱╲''​ 
-    * <​code>​╲╱</​code>​ +    * ''​╲╱''​ 
-    * <​code> ​ ┌─┐ +    * ''​_∏''​
-──┘ └</​code>​+
   * операторы ( и ) включают и выключают ​ шум в соответствующем голосе.   * операторы ( и ) включают и выключают ​ шум в соответствующем голосе.
   * оператор ''​*a''​ задаёт амплитуду LFO для данного голоса.   * оператор ''​*a''​ задаёт амплитуду LFO для данного голоса.
Строка 52: Строка 54:
  
 Данный язык будет в дальнейшем обозначаться MML+. Данный язык будет в дальнейшем обозначаться MML+.
- 
- 
- 
  
 ====== Работа с музыкальным редактором MED ====== ====== Работа с музыкальным редактором MED ======
  
-Музыкальный редактор MED позволяет вести экранное редактирование нотной строки,​ состоящей из четырёх строк - по одной для каждого из трёх голосов и строки комментариев. При этом осуществляется горизонтальный скроллинг нотной строки. ​+Музыкальный редактор MED позволяет вести экранное редактирование нотной строки,​ состоящей из четырёх строк - по одной для каждого из трёх голосов и строки комментариев. При этом осуществляется горизонтальный скроллинг нотной строки.
  
 MED транслирует нотную запись MML+ в формат системной музыкальной очереди,​ обеспечивает прослушивание полученных фрагментов однократно или в цикле. Можно также включать шум в каждом из голосов,​ менять характеристики шума, управлять LFO независимо в каждом голосе. MED транслирует нотную запись MML+ в формат системной музыкальной очереди,​ обеспечивает прослушивание полученных фрагментов однократно или в цикле. Можно также включать шум в каждом из голосов,​ менять характеристики шума, управлять LFO независимо в каждом голосе.
Строка 69: Строка 68:
 После вызова программы MED на экране появляются нотная строка,​ CUT/PASTE буфер, окно музыкальной очереди,​ окно прямого управления PSG и строка главного меню с подсвеченным курсором. После вызова программы MED на экране появляются нотная строка,​ CUT/PASTE буфер, окно музыкальной очереди,​ окно прямого управления PSG и строка главного меню с подсвеченным курсором.
  
 +Нажатием клавишей <​key>​→</​key>​ и <​key>​←</​key>​ курсор меню устанавливается на нужную функцию;​ для вызова функции надо нажать пробел или <​key>'​Ввод '​⏎</​key>​.
  
-Нажатием клавишей <​key>​→</​key>​ и <​key>​←</​key>​ курсор меню устанавливается на нужную функцию;​ для вызова функции надо нажать пробел или <​key>'​Ввод '​⏎</​key>​. ​Из главного меню вызываются функции:​+Из главного меню вызываются функции:​
   * [[#EDIT]]   * [[#EDIT]]
   * [[#LOAD]]   * [[#LOAD]]
Строка 78: Строка 78:
   * [[#QUIT]]   * [[#QUIT]]
  
-Во всех четырёх дисковых функциях:​ [[#LOAD]], [[#SAVE]], [[#BLOAD]], [[#BSAVE]] после выбора функции в верхнем окне экрана появляется запрос:​ "enter file name:",​ в ответ на который следует ввести требуемое имя файла. ​+Во всех четырёх дисковых функциях:​ [[#LOAD]], [[#SAVE]], [[#BLOAD]], [[#BSAVE]] после выбора функции в верхнем окне экрана появляется запрос:​ "enter file name:",​ в ответ на который следует ввести требуемое имя файла.
  
 Для отмены функции и возврата в меню можно нажать <​key>​STOP</​key>​ или <​key>​ESC</​key>​. Для отмены функции и возврата в меню можно нажать <​key>​STOP</​key>​ или <​key>​ESC</​key>​.
Строка 84: Строка 84:
 ===== EDIT ===== ===== EDIT =====
 Переход в режим редактирования. Переход в режим редактирования.
- 
  
 Режим редактирования. Режим редактирования.
Строка 103: Строка 102:
 |<​key>​SHIFT+CTRL+DEL</​key>​|стирает все символы текущей строки справа от курсора.| |<​key>​SHIFT+CTRL+DEL</​key>​|стирает все символы текущей строки справа от курсора.|
 |<​key>​GRAPH</​key>​|PASTE:​ содержимое CUT/PASTE буфера копируется в нотную строку,​ начиная с позиции курсора.| |<​key>​GRAPH</​key>​|PASTE:​ содержимое CUT/PASTE буфера копируется в нотную строку,​ начиная с позиции курсора.|
 +|<​key>​SELECT</​key>​|транслирует содержимое строчных буферов голосов 1-3 в  музыкальную очередь;​ в каждой из строк трансляция прекращается по достижении последнего не пробела или символа '​%'​. В окне музыкальной очереди высвечивается информации о длине музыкальной очереди для каждого из голосов и общей длине музыкального фрагмента,​ а также продолжительность звучания каждого голоса - в тиках и в секундах. \\ Запускает исполнение музыки.|
 +|<​key>'​Ввод '​⏎</​key>​|play;​ запускает исполнение музыки,​ однократно или в цикле. Во время исполнения можно продолжать редактирование.|
 +|<​key>​STOP</​key>​|"​выключает"​ музыку.|
 +|<​key>​STOP+SHIFT</​key>​|приостанавливает/​продолжает исполнение музыки.|
 +|<​key>​F1</​key>,​ <​key>​F2</​key>,​ <​key>​F3</​key>,​ <​key>​F4</​key>​|включает/​выключает LFO для голосов 1-3 и шума. Для голосов,​ в которых включён LFO, подсвечивается соответствующая колонка в строке "LFO on" окна прямого управления.|
 +|<​key>​F5</​key>​|устанавливает/​сбрасывает признак циклического исполнения. \\ Если установлен признак цикла, на экране появляется подсвеченная надпись "​CYCLE"​.|
 +|<​key>​F1+SHIFT</​key>,​ <​key>​F2+SHIFT</​key>,​ <​key>​F3+SHIFT</​key>​|включает/​выключает шум в голосах 1-3. \\ Для голосов,​ в которых включён шум, подсвечивается колонка в строке "Noise on" окна прямого управления.|
 +|<​key>​F1+CTRL</​key>,​ <​key>​F2+CTRL</​key>,​ <​key>​F3+CTRL</​key>,​ <​key>​F4+CTRL</​key>​|меняет форму LFO для голосов 1-3 и шума.|
 +|<​key>​←+CTRL</​key>,​ <​key>​→+CTRL</​key>​|перемещение курсора LFO по строке параметров LFO. \\ В этой строке отображаются текущие значения параметров *a, *t для каждого из голосов и /a, /t, /f для шума.|
 +|<​key>​↑+CTRL</​key>,​ <​key>​↓+CTRL</​key>​|увеличение или уменьшение параметра LFO, на который указывает курсор LFO.|
 +|<​key>​ESC+SHIFT</​key>​|сброс всех параметров LFO, выключение LFO и шума.|
 +|<​key>​ESC</​key>​|выход из режима редактирования в главное меню. ​ Окно подсказки стирается,​ музыка выключается.|
 +|<​key>​SHIFT+F5</​key>​|Вывод справки (подсказки)|
  
-<​code>​ 
-    CUT/YANK: 
-TAB (1-е нажатие) - переход из режима редактирования в режим ​ 
-        CUT/YANK; в этом режиме можно только управлять движением ​ 
-        нотной строки;​ при этом помечается блок текста. 
-    Выход из режима CUT/YANK может осуществляться следующими ​ 
-    способами:​ 
-TAB (2-e нажатие) - YANK:  отмеченный блок копируется в CUT/​PASTE ​ 
-        буфер; возврат в режим редактирования. 
-TAB (2-e нажатие)+SHIFT - CUT:  отмеченный блок пересылается в  
-        CUT/PASTE буфер; возврат в режим редактирования. 
-TAB (2-e нажатие)+CTRL ​ -   ​возврат в режим редактирования. 
  
  
-SELECT ​транслирует содержимое строчных буферов голосов 1-3  +==== CUT/YANK ==== 
-        в  музыкальную очередь; в каждой ​из строк трансля- +|<​key>​TAB</​key>​ (1-е нажатие)|переход из режима редактирования ​в режим CUT/YANK; в этом ​режиме можно только управлять движением ​нотной ​строки; при этом помечается ​блок текста.|
- ция прекращается по достижении последнего непробела +
-        или символа '​%'​. В окне музыкальной очереди высвечи+
- вается информации о длине музыкальной очереди для  ​          +
- каждого ​из голосов ​и общей длине ​музыкального фрагмента+
-        а также продолжительность звучания каждого голоса - +
-        в тиках и в секундах.  +
-        Запускает исполнение музыки.+
  
-  +Выход из режима CUT/YANK может осуществляться следующими способами:​ 
-CR  - play; запускает исполнение музыкиоднократно +|<​key>​TAB</​key>​ (2-e нажатие)|YANK: отмеченный блок копируется в CUT/PASTE буфер; возврат в режим редактирования.| 
- или в цикле.  Во время исполнения ​можно продолжать +|<​key>​TAB</​key>​ (2-e нажатие)+<​key>​SHIFT</​key>​|CUT:​ отмеченный блок пересылается в CUT/PASTE буфер; возврат ​в режим редактирования.| 
-        ​редактирование.+|<​key>​TAB</​key>​ (2-e нажатие)+<​key>​CTRL</​key>​|возврат ​в режим ​редактирования.|
  
-STOP - "​выключает"​ музыку. 
  
-STOP+SHIFT ​ -  приостанавливает/​продолжает исполнение музыки. 
- 
-F1-F3,F4 - включает/​выключает LFO для голосов 1-3 и шума. Для голосов, ​ 
-        в которых включен LFO, подсвечивается соответствующая колонка 
-        в строке 'LFO on' окна прямого управления. 
- 
-F5   ​- ​ устанавливает/​сбрасывает признак циклического исполнения. 
-        Если установлен признак цикла, на экране появляется ​ 
-        подсвеченная надпись '​CYCLE'​. 
- 
-F1-F3+SHIFT - включает/​выключает шум в голосах 1-3. 
-        Для голосов,​ в которых включен шум, подсвечивается колонка 
-        в строке 'Noise on' окна прямого управления. 
- 
-F1-F4+CTRL - меняет форму LFO для голосов 1-3 и шума. 
- 
-<​-,​->​+CTRL - перемещение курсора LFO по строке параметров LFO. 
-        В этой строке отображаются текущие значения параметров 
-        *a, *t для каждого из голосов и /a, /t, /f для шума. 
- 
-Up+CTRL, Down+CTRL - увеличение или уменьшение параметра LFO, 
-        на который указывает курсор LFO.  
- 
-ESC+SHIFT - сброс всех параметров LFO, выключение LFO и шума. 
- 
-ESC - выход из режима редактирования в главное меню. ​ Окно подсказки ​ 
-        стирается,​ музыка выключается. 
- 
-</​code>​ 
 ===== LOAD ===== ===== LOAD =====
 Загрузка символического файла для редактирования. ​ Загрузка символического файла для редактирования. ​
Строка 188: Строка 151:
  
 ===== QUIT ===== ===== QUIT =====
-Выход из редактора в MSX DOS. +Выход из редактора в [[msx:dos:|]].
- +
- +
-<​code>​ +
------------------------------------------------------------------------- ​       +
-      Литература. +
-[1] MSX Technical Data Book. +
-[2Справочное руководство по языку Бейсик для КУВТ Ямаха.+
  
-------------------------------------------------------------------------- 
-</​code>​ 
  
 {{tag>​MSX Programming Rodionov_A_B}} {{tag>​MSX Programming Rodionov_A_B}}
msx/maestro/med/med.txt · Последние изменения: 2024-03-07 11:16 — GreyWolf