ПАРТИТУРА В АЛГОРИТМИЧЕСКИХ РАМКАХ
Автор делится своим опытом работы в музыкальном редакторе MUSIC.COM (разработчики А. Андреев и С. Ларионов, Москва) или, как они еще его называют - музыкальная система МС 89 В качестве примера взяты музыкальные партитуры, расписанные для одновременного звучания сразу двух ПК 8010 Корветов. Автор считает, что MUSIC.COM является настоящим кладом для внеклассной работы учителя-"корветчика", особенно для школ с музыкальным уклоном, хотя, конечно, годится и для-общеобразовательных школ.
Когда я впервые "озвучил" свою первую партитуру (трехголосную), то сразу обратил внимание на довольно тихое звучание мелодии и тогда же попробовал одну и ту же партитуру загрузить на два соседних РМУ и после набора Р (PLAY) дать одновременный ввод. Звучание было явно лучшим. Ну а затем пришла мысль: "А почему, собственно, надо засылать одну и ту же партитуру, когда можно расписать ее на две партии и получать, таким образом, одновременное звучание шести разных голосов?" И громче, и красивее. И с тех пор я непрерывно занимаюсь этим редактором.
Но есть у меня к авторам и несколько критических замечаний. И первое из них относится к документации MUSIC.DOC, прилагаемой к музыкальному редактору. Особенно к тому месту, где авторы показывают, как осуществляется кодирование нот в МС-89. Судите сами. Нотоносец у них состоит из 15 линий вместо традиционных пяти. А нот на нем нет и вовсе. И поэтому о кодировке нот в МС-89 можно только догадываться. Не сомневаюсь, что человек, не имеющий специального музыкального образования, в этот музыкальный редактор "не влезет" ни за что на свете по их документации.
Конечно, авторы мне могут возразить - в конце документации говорится, что можно ознакомиться с партитурами HANDEL.MUS и CHORUS.MUS и самому создать нечто подобное. Возможно, но тогда авторам надо было обязательно указать, в каких нотных сборниках можно отыскать вышеуказанные произведения, и дать возможность сравнивать нотную и машинную партитуры. И, кроме того, произведения эти довольно малоизвестные широкому кругу любителей музыки На мой взгляд, надо было в качестве демонстрационного примера взять всем хорошо известную мелодию (например, "Подмосковные вечера" или хотя бы "Чижик-пыжик") и на их примере показать кодирование в МС-89. Ведь самое главное на первом этапе - видеть сразу и ноты, и их кодировку.
Я, например, вначале показал учащимся рис. 1,2,3 (см. далее), затем пару примеров и к концу первого урока они озвучили песню "Перепелочка". А на втором мы уже занялись двух- и трехголосными партитурами. Однако опять вернусь к замечаниям На мой взгляд, авторы в документации допустили несколько неточностей:
- символ % они почему-то называют "ключ до", хотя это самый настоящий знак бекар (♮);
- символы ' или ", по мнению авторов, вызывают режим исполнения стаккато, но точнее здесь было бы применить термин "поп legato", т. е. "исполнять не очень связанно"; а вот символ "," (запятая), записанный после ноты, как раз и вызывает режим стаккато;
- к счастью, авторы ошиблись, утверждая что знак "басовый ключ" "может применяться в пределах данного голоса только один раз". Нет. Практически - сколько надо, столько раз и можно применять. А к счастью потому, что весь аккомпанемент мелодий как раз и держится на чередовании басовых и скрипичных нот (см. далее пример аккомпанемента).
И еще Авторы "забыли" указать, что действие знака ♯ или ♭ распространяется на "помеченную" ноту до конца такта.
Однако главные трудности освоения позади, и я от работы с МС-89 получаю в основном удовлетворение.
Считаю, что любой желающий может достать ноты в местной нотно-музыкальной библиотеке и глядя на ноты и на "машинную" программу освоить программирование в МС 89. В качестве примера "стерео"-партитуры лучше всего подходит русская народная песня "По муромской дорожке" (см листинг в конце статьи). Она и по объему не самая большая (всего 34 такта), и по звучанию самая удачная.
Введение в МС-89
Обозначения нот в скрипичном и басовом ключах, а также их длительностей приведены на рисунках 1, 2 и 3.
Рисунок 1.
Рисунок 2.
Рисунок 3.
Скрипичный ключ 𝄞 обозначается символом *. Басовый ключ 𝄢 обозначается символом @. M1, М2, М3, ... - обозначения тактов. VI, V2, V3 - обозначения голосов (в МС-89 их всего три).
Примеры кодирования нот:
Рисунок 4.
Кодировка: *Q0I3I5Q4Q$ или *Q0I35Q4$ Примечание: знаки длительности перед каждой нотой можно опускать, если они чередуются
Рисунок 5.
Кодировка: @Q7H5I:765 (i:765 - кодировка триоли)
Рисунок 6.
Кодировка: *Ш34564'7'6'5'7,6,5,4, Пояснение: Первые четыре ноты записаны в режиме legato, следующие четыре - в режиме non legato, и последняя четверка - в режиме staccato.
Более качественный (или "более выраженный") режим non legato или staccato можно получить следующим образом:
а) для получения non legato можно "забирать" у каждой ноты 1/4 часть ее длительности и заменять эту часть паузой. Так, например, вместо *Q1"2"4" можно набрать *I.1S$I.2S$I.4S$;
б) для получения же режима staccato можно "забирать" уже 1/2 часть ее длительности и так же поступать со второй ее половиной, да еще и вводить символ ",". Так, вместо *Q3,5,7, получим: *I3,$5,$7,$.
Это необходимо учитывать, так как в MUSIC.COM режим исполнения, вызываемый символами " или ', практически ничем не отличается от режима legato, да и staccato далеко не идеальное.
Рисунок 7.
Кодировка: 10 M1 V1 * Q346 V2 * Q124 10 M2 V1 * Q9B$ V2 * Q565 V3 * Q343
Осталось познакомиться со знаками, повышающими или понижающими ноты на полтона.
- Знак диез ( ♯ ) - обозначается символом #;
- знак бемоль ( ♭ ) - обозначается символом &;
- знак бекар ( ♮ ) - обозначается символом %.
Ключ альтерации, т. е. количество бемолей или диезов, соответствующих данной тональности, обозначается символом К. После него указывается количество диезов или бемолей, постоянных для данного произведения. Он применяется в партитуре только один раз.
И еще. В МС-89 действует следующий закон: знак #, & или %, поставленный после ноты, действует для этой ноты до конца такта, как в пределах данного голоса, так и в остальных (если нота находилась в первом голосе). Собственно, так же обстоит дело и в нотной грамоте.
Примеры:
Рисунок 8.
Кодировка: *Q213#45433 (последние 2 ноты будут исполняться как фа♯)
Пример начала музыкального произведения имеющего в ключе альтерации три бемоля:
Рисунок 9.
Кодировка: 10 K3& M1V1 * Q356 20 M2 V2 * Q6%56
Пример кодирования такта сопровождения мелодии (аккомпанемента):
Рисунок 10.
V1@Q7,*0@A,*0, V2@Q7,*2,@A,*2, V3@Q7,*4,@A,*4, Пояснение: аккорд ми-соль-до переведен из басового ключа в скрипичный для более приятного звучания.
Редактирование
С помощью команды LIST (L␣n1 или L␣n1 n2) можно вызвать строку (или строки) и, нажав клавишу "забой" (⇐) поднять курсор на любую из них.
Двигаться по строке слева направо можно с помощью комбинации УПР+Х "Уйти" с любой строки можно с помощью клавиши ВВОД. К сожалению, в МС-89 отсутствует режим вставки, что, конечно, затрудняет редактирование. Удаление символов производится клавишей ПРОБЕЛ.
Просмотр всей программы осуществляется с помощью L, ВВОД. Остановка просмотра программы осуществляется нажатием любой черной клавиши. При остановке просмотра с помощью клавиши F3 (или F1) можно вызвать на экран по две следующие строчки. Комбинация УПР+L сразу же переводит курсор в левый верхний угол экрана. Спуск - с помощью ВВОД и УПР+Х.
Запуск (озвучивание) программы
Надо иметь в виду что набранная программа не будет звучать, если в начало программы не вставить символы Р и N. Что же они обозначают и для чего нужны?
С помощью символа Р и следующей за ним любой буквой латинского алфавита в МС-89 обозначается начало любого фрагмента (участка) данного музыкального произведения, а если фрагмент нуждается в повторении, то выделяются его начало и конец.
В любом случае надо зафиксировать начало музыкального произведения (например РА).
Рассмотрим следующий пример. Пусть некоторое музыкальное произведение состоит из 30 тактов. Если вы наберете в программе перед первым тактом сочетание РВ, а перед 15-м тактом - РА, то машина исполнит вначале такты с 15-го по 30-й, а затем только с 1-го по 14-й. Если вы поменяете местами РВ и РА, то произведение начнет исполняться "нормально", т. е. с 1-го по 30-й по порядку. Впрочем, во втором случае РВ можно убрать и вовсе - результат будет тем-же. Таким образом, напрашивается вывод: машина исполняет помеченные участки строго в алфавитном порядке.
Ну а с помощью символа N задается темп исполнения музыкального произведения. Надо только после него записать одну из четырех букв Н, Q I или S и после знака равенства указать какое-нибудь число (оно характеризует циклы задержки). Например: NS=75. Буква и число для каждого произведения подбираются экспериментально.
Итак, если вы ввели в начало вашей программы символы Р и N, то для прослушивания вам останется только набрать PLAY и нажать ВВОД.
Организация повторов в МС-89
Чтобы организовать повторение какого-либо фрагмента музыкального произведения, применяется символ R. После него надо указать букву (метку), стоящую в начале участка, нуждающегося в повторении.
Рассмотрим организацию повторов на следующих примерах.
Пример 1. Возьмем опять 30-тактное произведение и допустим, что надо повторить такты с 15-го по 30-й. Распределим метки следующим образом перед первым тактом наберем РА перед пятнадцатым - РВ, после тридцатого - PC␣RB - и получим повторение тактов с 15-го по 30-й.
Пример 2. Пусть в этом же 30-тактном произведении нотные знаки повтора 𝄇 стоят в начале 15-го и в конце 28-го тактов, а знаки 𝄍, 𝄎 сигнализируют о том, что при повторе надо исполнить такты с 15-го по 26-й включительно, а затем, минуя 27-й и 28-й такты, "перепрыгнуть" сразу на 29-й. Поступим на этот раз следующим образом: перед первым тактом наберем РА, перед пятнадцатым - РВ, перед двадцать седьмым - PC, перед двадцать девятым - PD␣RB, а затем (можно в следующей строке) РЕ.
И поставленная задача будет решена. Вероятно, этих двух примеров вполне достаточно, чтобы в будущем организовать любой повтор в ваших будущих партитурах.
Рекомендации учителю
Записать MUSIC.СОМ на диск с СОС "Альтернатива" и использовать ее при загрузке. Загружается музыкальный редактор довольно быстро - около 3 мин на 12 РМУ.
После загрузки с помощью команды HELP вызывается список всех команд, имеющихся в арсенале МС-89, и потом достаточно набирать только первую букву любой из них, чтобы добиться их исполнения в среде MUSIC.COM
Учащиеся начинают набирать программы с места нахождения курсора (под заставкой *МС-89*), вводя каждую строку с помощью клавиши ВВОД. Желательно (на начальном этапе) каждую строку после ввода компилировать (С, ВВОД) и получать сообщения о наличии возможных ошибок. Прослушивание мелодии можно в любой момент прервать нажатием клавиши ПРОБЕЛ. Запись набранных на РМУ партитур на "головной" диск осуществляется с помощью W␣"имя файла" (пробел после W обязателен). Расширение MUS присваивается автоматически.
Загрузку, просмотр и прослушивание созданных на РМУ программ можно осуществлять следующим образом:
I вариант
А>MUSIC R "имя файла" (без расширения) L (или STOP) Р
II вариант
А>MUSIC R "имя файла" (без расширения) L
Если вдруг при записи на диск произойдет "зависание" ученической и головной машины, можно поступить следующим образом:
- отключить провод "локальная сеть" на "зависшем" РМУ;
- сделать сброс на головной машине;
- снова загрузить СОС "Альтернатива";
- на любой действующей ученической машине набрать простенькую программу (если нет готовой) типа
10 РА 20 NS=100 30 М1 V1*Q123
и дать W "имя файла". (Например, W "PROBА") и дождаться окончания записи; - снова подключить провод АС на "зависшем" РМУ, и созданная программа начнет "сбрасываться" на диск.
Для надежности можно тут же еще раз записать созданную партитуру под каким-нибудь другим новым именем и для проверки сразу же вызвать ее на свободное РМУ и прослушать (или просмотреть). Вообще, это лучше делать постоянно, так как случается, что при записи файла на диск внешне все выглядит благополучно, но в дальнейшем, при попытке его загрузить вдруг появляется сообщение "Ошибка синтаксиса партитуры", и мы понимаем, что время на создание программы потеряно зря. Поэтому лучше (пока программа находится в ОЗУ) потратить одну-две минуты на проверку, чем иметь возможность потерять намного больше времени и пережить в дальнейшем чувство досады.
И последнее. В случае возникновения непредвиденной ситуации при работе с программой (случайное нажатие другой клавиши, появление какого-то сообщения, отсутствие звучания и т. д.) можно всегда выйти из нее, нажав клавишу STOP, а затем (к примеру) L, ВВОД и снова вернуться к программе.
В заключение приводим одну из практических работ автора. -программу для известной народной песни "По муромской дорожке".
I партия 10 РА 20 NS=70 25 КЗ& 30 М1 V1*QB V2*Q9 40 М2 V1*HCQA V2*HAQ8 45 V3@QB,*0,0, 50 М3 V1*H8QC V2*H7QA 55 V3@QB,*0,0, 60 M4 V1*HBQ9 V2*H9Q7 65 V3@QA,*0,0, 70 M5 V1*H7Q4 V2*H4Q4 75 V3@QC,*0,0, 80 M6 V1*H6Q5 V2*H.3 85 V3@QB,*0,0, 90 M7 V1*H4Q3 V2*H2Q3 95 V3@QA,*3,3, 100 M8 V1*H.0 105 V2@Q7,*0,0, V3@7,*4,4. 110 M9 V1*Q0$-3 115 V2*Q0,$$ V3*Q4,$S 116 PB 120 M10 V1*H0Q0 125 V2@Q7,*0,0, V3@Q7,*4,4. 130 M11 V1*H1Q1 135 V2@QA,*4,4, V3©QA,*6%,6, 140 M12 V1*H,2 145 V2@Q7,*0,0, V3@Q7,*4,4, 150 M13 V1*H0Q0 155 V2@QC,*0,0, V3@Q7,*4,4, 160 M14 V1*H7Q6% 165 V2@QB,*0,0, V3@QB,*5,5, 170 M15 V1*H7Q5 175 V2@Q8,*1,1, V3©Q8,*5,5, 180 M16 V1*H.4 185 V2@QC,*4,4, V3@QC,*6,6, 190 M17 V1*Q4$6 V2*Q2%$4 195 V3@Q7,*0,0, 200 M18 V1*H5Q3 V2*H3Q1 205 V3@QB,*0,0, 210 M19 V1*H1Q5 V2*H1Q3 215 V3@QB,*0,0, 220 M20 V1*H4Q2 V2*H2Q0 225 V3@QA,*0,0, 230 M21 V1*H0Q4 V2*H0Q2 235 V3@Q7,*0,0, 240 M22 V1*H6Q5 V2*H4Q3 245 V3@QB,*0,0, 250 M23 V1*H4Q3 V2*H2Q1 255 V3@QA,*4,4. 260 M24 V1*H,7 V2*I012345 265 V3@Q9,*0,0, 270 M25 V1*H7Q7 V2*I6789%AB 275 V3@QA,*0,0, 280 M26 V1*H3Q1 285 V2@QB,*3,3, V3@QB,*5,5 290 M27 V1*H1Q3 295 V2@QB,*3,3, V3®QB,*5,5 300 M28 V1*H.2 305 V2@QA,*2,2, V3©QA,*4,4, 310 M29 V1*H0Q2 315 V2@QC,*2,2, V3©QC,*4,4, 320 M30 V1*H4Q3 325 V2@QB,*3,3, V3@0B,*5,5, 330 M31 V1*H2Q3 335 V2@QA,*3,3 V3@QA,*6%,6, 340 M32 V1*00I2479 345 V2@Q7,*2,2, V3®Q7,*4,4, 346 PC 350 M33 V1*I876543 355 V2@QB,*3,®A, V3©QB,*5,®A, 356 PD 357 PE RB 358 PF RC 359 PG RB 360 PH RC 361 PI RB 362 PK RC 363 PP RB 369 PX 370 M34 V1*Q7$$ V2*0$$ |
II партия 10 PA 20 NS=70 25 K3& 30 M1 V1*Q9 V2*Q7 V3*Q$ 40 М2 V1*H7Q7 45 V2@QB,*3,3, V3©QB,*5,5, 50 М3 V1*H5Q8 55 V2@QB,*3,3, V3©QB,*5,5. 60 M4 V1*H7Q4 65 V2@QA,*2,2, V3@QA,*4,4, 70 M5 V1*H2Q4 75 V2@QC,*2,2, V3©QC,*4,4. 80 M6 V1*H.O 85 V2@QB,*3,3, V3®QB,*5,5, 90 M7 V1*H-1%Q1 95 V2@QA,*4,4, V3@QA,*6%,6, 100 M8 V1*H.O 105 V2@Q7,*0,0, V3@Q7,*2,2, 110 M9 V1*Q0$-3 115 V2*Q0,$$ V3*Q2,$$ 116 PB 120 M10 V1*Q0I2479 125 V2@Q7,*2,2, V3®Q7,*4,4, 130 M11 V1*Q1I346%8 135 V2@QA,*3,3, V3@QA,*4,4, 140 M12 V1*Q2I46%79 145 V2@Q7,*2,2, V3®Q7,*4,4, 150 M13 V1*Q0I2479 155 V2@QC,*2,2, V3©QC,*4,4, 160 М14 V1*OOI8ACD% 165 V2@QB,*0,0, V3@QB,*3,3, 170 M15 V1*Q113578 175 V2@Q8,*1,1, V3@Q8,*6,6, 180 M16 V1*0216543 185 V2@QC,*2,2, V3@QC,M,4, 190 M17 V1*Q2%I7646 195 V2@Q7,*2%,2, V3®Q7,*6,6, 200 M18 V1*Q3I578A 205 V2@QB,*3,3, V3@QB,*5,5, 210 M19 V1*Q113578 215 V2@QB,*3,3, V3®QB,*5,5, 220 M20 V1*Q2I4798 225 V2@QA,*2,2, V3®QA,*4,4, 230 M21 V1*I765420 235 V2@Q7,*2,2, V3®Q7,*4,4, 240 M22 V1*H1Q0 245 V2@QB,*3,3, V3®QB,*5,5, 250 M23 V1*H.-1% 255 V2@QA,*3,3, V3®QA,*6%,6, 260 M24 V1*I012345 265 V2@Q9,*2,2, V3®Q9,*5,5, 270 M25 V1*I6789%AB 275 V2@QA,~2%,2, V3®QA,*6,6, 280 M26 V1*H7Q7 V2*H5Q5 285 V3®QB,*0,0, 290 M27 V1*H5Q7 V2*H3Q5 295 V3@QB,*0,0, 300 M28 V1*H.7 V2*H.4 305 V3@QA,*0,0, 310 M29 V1*H4Q7 V2*H2Q4 315 V3@QC,*0,0, 320 M30 V1*H7Q8 V2*H6Q5 325 V3®QB,*0,0, 330 M31 V1*H9Q8 V2*H4Q4 335 V3@QA,*4,4, 340 M32 V1*H.7 345 V2@Q7,*0,0, V3®Q7,*4,4, 346 PC 350 M33 V1*Q7$-3 355 V2@Q7,*0,0, V3®Q*4,4, 356 PD 357 PE RB 358 PF RC 359 PG RB 360 PH RC 361 PI RB 362 PK RC 363 PP RB 369 PX 370 M34 V1*Q2&$$ V3*Q4$$ |