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

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


msx:using_musical_means_in_basic:using_musical_means_in_basic

Различия

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

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

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
msx:using_musical_means_in_basic:using_musical_means_in_basic [2020-12-13 22:09]
GreyWolf [2.10 Примеры программ]
msx:using_musical_means_in_basic:using_musical_means_in_basic [2022-09-09 22:15] (текущий)
GreyWolf
Строка 1: Строка 1:
 ====== 📖 Использование музыкальных средств диалогового языка программирования MSX BASIC ====== ====== 📖 Использование музыкальных средств диалогового языка программирования MSX BASIC ======
-FIXME 
  
 <hidden Обложка и выходные данные>​ <hidden Обложка и выходные данные>​
Строка 30: Строка 29:
 Рекомендации рассчитаны на использование персонального MSX–компьютера. ​ Рекомендации рассчитаны на использование персонального MSX–компьютера. ​
  
-Составители:​ А.Р. Есаян, Л.П.Лапицкая,​ Т.Н.Карякина (Тульский государственный педагогический институт имени Л.Н. Толстого),​ В.И. Ефимов (Минпрос СССР)+Составители:​ А.Р. Есаян, Л.П. Лапицкая,​ Т.Н. Карякина (Тульский государственный педагогический институт имени Л.Н. Толстого),​ В.И. Ефимов (Минпрос СССР)
  
 Научный редактор:​ А.Р. Есаян, к.ф.–м.н.,​ доцент ТГПИ ​ Научный редактор:​ А.Р. Есаян, к.ф.–м.н.,​ доцент ТГПИ ​
Строка 38: Строка 37:
 ====== 1. Звуковой сигнал ====== ====== 1. Звуковой сигнал ======
  
-Для синтезирования звука в [[msx:​basic:​|]] имеются довольно широкие возможности,​ предоставляемые командами:​ ''​[[msx:​basic_programming_guide:06#​beep|BEEP]]'',​ ''​[[msx:​basic_programming_guide:06#​play|PLAY]]'',​ ''​[[msx:​basic_programming_guide:06#​sound|SOUND]]'',​ функцией ''​[[msx:​basic_programming_guide:​06#​play1|PLAY()]]''​ и кодом ''​CHR$(7)''​.+Для синтезирования звука в [[msx:​basic:​|]] имеются довольно широкие возможности,​ предоставляемые командами:​ ''​[[msx:​basic_dialogue_programming_language:006#​beep|BEEP]]'',​ ''​[[msx:​basic_dialogue_programming_language:006#​play|PLAY]]'',​ ''​[[msx:​basic_dialogue_programming_language:006#​sound|SOUND]]'',​ функцией ''​[[msx:​basic_dialogue_programming_language:​006#​play1|PLAY()]]''​ и кодом ''​CHR$(7)''​.
  
 Наиболее простым способом вывода звука является команда:​ Наиболее простым способом вывода звука является команда:​
Строка 50: Строка 49:
 </​WRAP>​ </​WRAP>​
 </​WRAP>​ </​WRAP>​
-по которой исполнение текущей музыки прекращается,​ выдаётся короткий сигнал и устанавливаются в начальное состояние все регистры ''​[[msx:​basic_programming_guide:06#​play|PLAY]]''​ и ''​[[msx:​basic_programming_guide:06#​sound|SOUND]]''​. В трёх случаях команда ''​[[msx:​basic_programming_guide:06#​beep|BEEP]]''​ реализуется автоматически:​ при выдаче сообщения об ошибке,​ нажатии на клавишу <​key>​STOP</​key>​ и при выполнении команды ''​[[msx:​basic_programming_guide:​02#​stop|STOP]]''​.+по которой исполнение текущей музыки прекращается,​ выдаётся короткий сигнал и устанавливаются в начальное состояние все регистры ''​[[msx:​basic_dialogue_programming_language:006#​play|PLAY]]''​ и ''​[[msx:​basic_dialogue_programming_language:006#​sound|SOUND]]''​. В трёх случаях команда ''​[[msx:​basic_dialogue_programming_language:006#​beep|BEEP]]''​ реализуется автоматически:​ при выдаче сообщения об ошибке,​ нажатии на клавишу <​key>​STOP</​key>​ и при выполнении команды ''​[[msx:​basic_dialogue_programming_language:​002#​stop|STOP]]''​.
  
-Команда <​code>​PRINT CHR$(7)</​code>​ реализуется аналогично команде ''​[[msx:​basic_programming_guide:​06#​beep|BEEP]]''​.+Команда <​code>​PRINT CHR$(7)</​code>​ реализуется аналогично команде ''​[[msx:​basic_dialogue_programming_language:​006#​beep|BEEP]]''​.
  
-Команду ''​[[msx:​basic_programming_guide:​06#​sound|SOUND]]''​ мы описывать не будем, в лишь кажем, что она обеспечивает доступ к 14 имеющимся регистрам звукового генератора и используется для создания разнообразных звуковых эффектов типа: "​гудок паровоза",​ "​падающая бомба",​ "​взрыв"​ и т.п. (см. [[#​b1|[1]]]).+Команду ''​[[msx:​basic_dialogue_programming_language:​006#​sound|SOUND]]''​ мы описывать не будем, в лишь кажем, что она обеспечивает доступ к 14 имеющимся регистрам звукового генератора и используется для создания разнообразных звуковых эффектов типа: "​гудок паровоза",​ "​падающая бомба",​ "​взрыв"​ и т.п. (см. [[#​b1|[1]]]).
  
 Другие "​звуковые"​ возможности [[msx:​basic:​|]] подробно описаны в следующем разделе. Другие "​звуковые"​ возможности [[msx:​basic:​|]] подробно описаны в следующем разделе.
Строка 541: Строка 540:
  
 {{anchor:​e10}} {{anchor:​e10}}
-__//​Пример 10.//__ Здесь функция ''​PLAY''​ используется для задержки выполнения программы, ​тока играет музыка. \\ {{:​msx:​using_musical_means_in_basic:​10.bas|}} \\ [[+tab|wmsx>?​DISK_FILES=/​_media/​msx/​using_musical_means_in_basic/​10.bas&​BASIC_RUN=10.bas&​FAST_BOOT|10.bas]]+__//​Пример 10.//__ Здесь функция ''​PLAY''​ используется для задержки выполнения программы, ​пока играет музыка. \\ {{:​msx:​using_musical_means_in_basic:​10.bas|}} \\ [[+tab|wmsx>?​DISK_FILES=/​_media/​msx/​using_musical_means_in_basic/​10.bas&​BASIC_RUN=10.bas&​FAST_BOOT|10.bas]]
 <​code>​ <​code>​
 10 ' ​     ПОДМОСКОВНЫЕ ВЕЧЕРА ​                   В.Соловьев-Седой 10 ' ​     ПОДМОСКОВНЫЕ ВЕЧЕРА ​                   В.Соловьев-Седой
Строка 577: Строка 576:
  
 ===== 2.10 Примеры программ ===== ===== 2.10 Примеры программ =====
-FIXME 
  
 Пусть задана нотная запись музыкального произведения. Учитывая знаки сокращения,​ применяемые в нотном письме,​ часть из которых приведены в [[#​t3|таблице 3]], нетрудно перекодировать это произведение на языке MML. Причём сделать это может даже человек,​ имеющий весьма поверхностное представление о музыкальной грамоте,​ но, разумеется,​ освоивший язык MML и весьма аккуратно реализующий соответствующее кодирование. Пусть задана нотная запись музыкального произведения. Учитывая знаки сокращения,​ применяемые в нотном письме,​ часть из которых приведены в [[#​t3|таблице 3]], нетрудно перекодировать это произведение на языке MML. Причём сделать это может даже человек,​ имеющий весьма поверхностное представление о музыкальной грамоте,​ но, разумеется,​ освоивший язык MML и весьма аккуратно реализующий соответствующее кодирование.
Строка 652: Строка 650:
 360 PLAY X$,Y$,Z$ 360 PLAY X$,Y$,Z$
 </​code>​ </​code>​
- 
-FIXME 
  
 {{anchor:​e13}} {{anchor:​e13}}
Строка 660: Строка 656:
 10 ' ПРИМЕР 13 10 ' ПРИМЕР 13
 20 ' -------------------------------------------------------------- 20 ' --------------------------------------------------------------
-30 ' ​                 А НА ПОСЛЕДОК Я СКАЖУ +30 ' ​               А НА ПОСЛЕДОК Я СКАЖУ 
-40 ' ​      ​А.Петров ​                  ​на стихи Б.Ахмадулиной+40 ' ​     А.Петров ​                 на стихи Б.Ахмадулиной
 50 ' -------------------------------------------------------------- 50 ' --------------------------------------------------------------
 60 A$="​T70V8L8O5RBGAB-V9AG4R8 D4.O4B- V8O5D4V7R4.O4B-16.R32 60 A$="​T70V8L8O5RBGAB-V9AG4R8 D4.O4B- V8O5D4V7R4.O4B-16.R32
-       ​B-16.R32B-16.R32XA1$;" +       ​B-16.R32B-16.R32xA1$;" 
-70 B$="​T70V8O3GFV9E-.R8 R4D V8O2GO3GV7O2GO3GXB1$;" +70 B$="​T70V8O3GFV9E-.R8 R4D V8O2GO3GV7O2GO3GxB1$;" 
-80 A1$="​B-A4.O5C4.O4B- G4GR2G O5D4.O4G15.R32G16.R32GF+GXA2$;" +80 A1$="​B-A4.O5C4.O4B- G4GR2G O5D4.O4G15.R32G16.R32GF+GxA2$;" 
-90 B1$="​CGDF+ O2GO3GO2DO3G ​O2G16O3D16F16B16O4DO2GO3FXB2$;" +90 B1$="​CGDF+ O2GO3GO2DO3G ​O2G16O3D16F16B16O4DO2GO3FxB2$;" 
-100 +100 A2$="​O5D4C4R4.G16.R32 G.F32R32F4FCEF- D4D16.R32D"​ 
 +110 B2$="​C16C64E-16E-64G16.O4CO2G16G64O3E-16E-64G16.O4C 
 +         ​O2FO3FO2AO3F O2B-O3F"​ 
 +120 A3$="​E-4E-16.R32E-DO4AB-O5C E-4D4R4.O4V6B-16.R32 
 +         ​B-.A32.R32A4A16.R32AB-O5CxA4$;"​ 
 +130 B3$="​O2AO3GL8F+O2F+GA B-O3CDGB-AB-O4D 
 +         ​V6L4O3F+O4CO3FO4CxB4$;"​ 
 +140 A4$="​V7D4D16.R32D V8C.O4B32R32B4B16.R32BO5CD 
 +         ​V9A-2G4R8B-16.R32xA5$;"​ 
 +150 B4$="​V7O2B-O3F VBO2A-O3FO2GO3F V9C16E-16A-16 
 +         ​O4C16E-O3CO2B-xB5$;"​ 
 +160 A5$="​B-.A32.R32A4A16.R32AO6CO5B- A4G4R8G16. 
 +         ​R32G16.R32G16.R32 V8G4O4A4V7R8AG+A"​ 
 +170 B5$="​A16O3E-16G16O4C16O3GO2DO3F+ O2E-16E-64 
 +         ​G16G64B-16.O3E-16E-64G16G64B-16.O4E-8R4. C2C8R4."​ 
 +180 A6$="​O5E-2D4.R8 V8R8GAB-V9AG4R8 D4.O4B-xA7$;"​ 
 +190 B6$="​R8O2D8A8O3C8D8A8O4C8D8 O3GFE-.R8 R4DxB7$;"​ 
 +200 A7$="​V8O5D4R4.V7O4B-16.R32B-16.R32B-16.R32 
 +         ​B-4.AO5C4.O4B- G4GR4GF+GxA8$;"​ 
 +210 B7$="​O2GO3GO2GO3G CGDF+ O2GO3GO2DO3GxB8$;"​ 
 +220 A8$="​O5D2R8O4GF+G O5D4D4R4.G16.R32.G.F32.R32F4FCFE-"​ 
 +230 B8$="​O2G16O3D1GF16B16O4DO2GO3F C16C64E-16E-64G16.O4C 
 +         ​O2G16G6403E-16E-64G16.O4C O2FO3FO2AO3F"​ 
 +240 A9$="​D4R8D E-4E-16.R32E-DO4AB-O5C E-4D4R8 
 +         ​O4B-16.R32B-16.R32B-16.R32xC1$;"​ 
 +250 B9$="​O2B-O3F O2AO3GLBF+O2F+GA B-O3CDGB-DB-O4DxD1$;"​ 
 +260 C1$="​B-A4.R4B-O5C V8D4D16.R32D CO4BR8V9B16.R32B16.R32BO5CD"​ 
 +270 D1$="​L4O3F+O4CO3FO4C O2B-O3F O2A-O3FO2GO3F"​ 
 +280 C2$="​A-2G4R8V10B-16.R32 B-.A32.R32A4A16.R32AO6CO4B- 
 +         ​A4G4R8G16.R32G16.R32G16.R32xC3$;"​ 
 +290 D2$="​L16CE-A-O4CL4E-O3CO2B- L16AO3E-GO4CL4O3GO2DO3F#​ 
 +         ​02E-16E-64G16G64B-16.O3E-16E-64G16G64B-16.O2E8R4.xD3$;"​ 
 +300 C3$="​V9G.O4A32.R32A4AV8R4A V7O5E-2D4.R8 V8R8GAB-AG4R8xC4$;"​ 
 +310 D3$="​O2A.O3E-8G8O4C8G8R8 R8O2D8A8O3C8D8A8O4C8D8 O3GFE-.R8xD4$;"​ 
 +320 C4$="​D4.O4B- O5D2.R4 B-1" 
 +330 D4$="​R4D R8O2G8O3D8A8 O3L16B-O4DAB-O5DO4B-O5DAL4 R1"
 340 PLAY A$,B$ 340 PLAY A$,B$
 350 PLAY A3$,B3$ 350 PLAY A3$,B3$
Строка 682: Строка 713:
  
 {{anchor:​b1}} {{anchor:​b1}}
-1. Справочное руководство по языку программирования Бейсик для КУВТ на базе персональных компьютеров “Ямаха (перевод с английского),​ 1986+1. Справочное руководство по языку программирования Бейсик для КУВТ на базе персональных компьютеров “Ямаха (перевод с английского),​ 1986.
  
 {{anchor:​b2}} {{anchor:​b2}}
-2. Ю.Булучевский,​ В. Фомин. Краткий музыкальный словарь для учащихся. ​-Л.: Музыка,​ 1984+2. Ю.Булучевский,​ В. Фомин. Краткий музыкальный словарь для учащихся. ​Л.: Музыка,​ 1984.
  
 {{anchor:​b3}} {{anchor:​b3}}
-3. С.Максимов,​ Музыкальная грамота. ​-М.:, Музыка,​ 1979+3. С.Максимов,​ Музыкальная грамота. ​М.:, Музыка,​ 1979.
  
 {{anchor:​b4}} {{anchor:​b4}}
-4. А.Петров,​ Романсы из вино фильма "​Жестокий романс"​. ​-М.: Советский композитор,​ 1984+4. А.Петров,​ Романсы из кинофильма "​Жестокий романс"​. ​М.: Советский композитор,​ 1984.
  
 ====== Ссылки ====== ====== Ссылки ======
Строка 700: Строка 731:
  
  
-{{tag>​MSX BASIC Music}}+{{tag>​MSX BASIC Music Artyom_Chitailo ​}}
  
msx/using_musical_means_in_basic/using_musical_means_in_basic.1607886575.txt.gz · Последние изменения: 2020-12-13 22:09 — GreyWolf