Musiqiy so'l tili - Music Macro Language

Musiqiy so'l tili (MML) a musiqani tavsiflash tili ichida ishlatilgan ketma-ketlik musiqa yoqilgan kompyuter va video o'yin tizimlari.

Fon

Dastlabki avtomatik musiqa yaratish funktsiyalari ko'plab kompyuter tovushlarini ishlatadigan arcade o'yinlarida ishlatilgan. Musiqa bilan erta mashhur Arkada o'yinining misoli The Sirk dan Exidy korporatsiyasi 1977 yilda.

Yapon video o'yinlaridagi o'sish 1978 yilda Yaponiyaning o'yin markazlarida paydo bo'lishi bilan e'lon qilindi (O'yin-kulgi o'yinlari ) ning Space Invaders tomonidan TAITO korporatsiyasi.[1]

Musiqa hammaga tegishli edi (yopiq manba ). 1978 yilda chiqarilgan Dasturlashtiriladigan intervalli taymer tomonidan Intel muhim edi. The Intel 8253 3-tartibli kvadrat to'lqin generatori Kit kompyuterida musiqa uchun ishlatilgan MZ-40K (Mikrokompyuter shifokori (Maykon Hakase, イ コ ン 博士 / ま い こ ん は か せ)) tomonidan SHARP korporatsiyasi, 1978 yil may oyida Yaponiyada ishlab chiqarilgan. Boshqa bir mikro kompyuter BASIC MASTER MB-6880 (ja) BASIC Magistr (BASIC Magistr, ー シ ッ ク マ ス タ ー) 5Bit D / A konvertorli musiqa avtomatlashtirilgan mos yozuvlar signalidan foydalanilgan. Shuningdek, foydalanish usulini ishlab chiqish muhim edi ASOSIY dasturiy ta'minot.[2] Mashina tomonidan yig'ilgan Hitachi, Ltd va 1978 yil sentyabr oyida Yaponiyada ishlab chiqarilgan.

MZ-40K samolyotida an ochiq me'morchilik va dastur manbalari, shuning uchun bir xil edi ochiq kodli dasturiy ta'minot.[3]

Versiyalar

Klassik MML

Klassik MML uchun birinchi buyruqlar SP-1002 MONITOR ichki arxitekturasida paydo bo'ldi XOQ[4] va SP-5001 ASOSIY Operatsion tizimlari MZ-80K 8-bit[5] kompyuter. Tamonidan qilingan SHARP korporatsiyasi 1978 yilda Yaponiya.[6] U kiritilgan Intel 8253 apparat va xotira xaritaga kiritilgan. Ovoz bilan bog'liq ASOSIY Bayonotlar MUSIC, TEMPO va BEEP edi.[7]

Sintaksis

110-betning ochiq manbali skaneri Sharp korporatsiyasi MML sintaksisining kelib chiqishini tavsiflovchi 1987 yil MZ-80 BASIC qo'llanmasi.

Qanday ishlatilgan bo'lsa, klassik MML ASOSIY bu erda tasvirlangan. "MML buyruqlari"MUSIC bayonotiga beriladi. Eslatmalar uch oktava diapazonda ko'rsatilgan. Qo'shiq - bu mono yakka ohanglar ketma-ketligi.

"+" (yoki ba'zi eski kodlarda " ̄") yuqori oktavani, "-" (yoki ba'zi eski kodlarda "_") pastki oktavani bildiradi. "CDEFGAB" belgilar o'lchovga mos keladi ("Doremi Faso Lassi"). Yarim ton '#' belgisiga ega yozuvni kuzatib borish orqali ko'rsatiladi. Nota nomlaridan keyin ohang uzunligi qo'shilib, 0-9 raqamlari ko'rsatilgan. Xuddi shunday, R dam olishni bildiradi va undan keyin uzunlikni bildiruvchi 0-9 gacha bo'lgan raqam qo'shiladi, tovush balandligi ichki qiymat × TEMPO qiymatlari, ohang uzunligi Demisemiquaver 0 (SP-1002 ichki qiymat 1) - butun yozuv 9 (SP) -1002 Ichki qiymati 32) .Musiqa $ 0030 SP-1002 raqamiga qo'ng'iroqda ijro etildi XOQ dasturning muntazamligi.[8]

Ovoz uzunligi
QiymatUzunlik
01/32
11/16
2nuqta 1/16
31/8
4nuqta 1/8
51/4
6nuqta 1/4
71/2
8nuqta 1/2
91

Bayonotlar TEMPO n 1-9, eng sekin 1.TEMPO 4 o'xshash T = 120.

Misol

Quyida mashhur yapon qo'shig'i "ōryanse "MZ-731 SHARP-da MML yordamida yozilgan S-BASIC 1Z-007B (SP-5001 Yuqori mos).[9]

10TEMPO420$ A="E5R1E3R0D3R0E3R0E1R0D1R0-G4R1"30B $="F3R0F1R0F1R0A3R0F1R0E1R0D1R0D1R0E5R0"40C $="C3R0C1R0C1R0E3R0C1R0-B1R0C1R0-B1R0-A1R0-A1-B5R0"50D $="E1R0E1R0E1R0E1R0E1R0E1R0D1R0E1R0E1R0E1R0D1R0-A1R0-A1R0B3R1"60E $="-A1R0-B1R0C1R0D1R0E1R0F1R0E1R0F3R1A3R1B1R0A1R0F3R0E3R0E1R0E4R0"100MUSIQA$ A+B $+B $110MUSIQAC $+C $+B $120MUSIQAC $+D $+E $

Zamonaviy MML

Zamonaviy MML dastlab paydo bo'lgan Microsoft BASIC va 1970 va 1980-yillarning boshlarida keng tarqalgan edi 8-bit va 16-bit davr Yapon shaxsiy kompyuterlar. The NEC PC-6001 Microsoft BASIC va Dasturlashtiriladigan ovoz ishlab chiqaruvchisi 1981 yilda. MML ayniqsa mashhur edi NEC kabi shaxsiy kompyuterlar NEC PC-8801.[10] 2001 yilda mck-ni musiqa tinglash uchun MML-ni kompilyatsiya qilish uchun mck (Music Creation Kit) dasturi chiqarilishi bilan Nintendo ko'ngilochar tizimi,[11] xabardorlik va MMLdan foydalanish darajasi oshdi.[12] MML hozirgi kunda mashhur Yapon elektron musiqachilar[10] va yaratadigan musiqachilar chiptunlar[13] uchun musiqa yozish usuli sifatida Nintendo ko'ngilochar tizimi.

Sintaksis

Zamonaviy MML ning sub-tili sifatida paydo bo'lgan ASOSIY, keyin odatda kiritilgan ROM mikro-kompyuterlarda. A O'YIN bayonotida dalil ovozli chip o'ynagan ohanglar qatorini aniqlash uchun. MML kodi oddiy matn formatiga ega, bu orqali harflar va raqamlar tasvirlangan musiqiy notalar o'ynash[10] Bundan tashqari, MML-ning turli xil qo'llanmalariga parametrlarga ruxsat beruvchi tizim kengaytmalari qo'shiladi audio sintez kabi maxsus buyruqlar bilan o'zgartirish yoki kabi keng tarqalgan musiqiy figuralarni kiritishni soddalashtirish arpeggios.

Ko'p platformalarda maxsus kengaytmalar mavjud bo'lsa-da xat ishi talablar va boshqa kichik sintaktik xususiyatlar ba'zi dasturlarda biroz farq qiladi, MML-ni belgilaydigan va to'liq yoki qisman bajariladigan sintaksisning asosiy qoidalari, buyruqlari va xususiyatlari quyidagicha:[10][14]

  • cdefgab - harflar a ga g ga mos keladi musiqiy maydonlar va mos keladigan sabab Eslatma o'ynash O'tkir yozuvlari qo'shib ishlab chiqarilgan a + yoki #va yassi qo'shimchalar orqali yozuvlar -. Notaning uzunligi uning uzunligini a ning qismi sifatida ifodalovchi raqamni qo'shish orqali aniqlanadi butun eslatma - masalan, c8 ifodalaydi C sakkizinchi eslatma va f + 2 an F♯ yarim eslatma.
  • p - A pauza qilish yoki dam olish. Ba'zan ham r, garchi asl IBM va Microsoft BASIC ishlatilgan p,[15] barcha klonlar singari (masalan, Linux va BSD dinamiklari qurilmalari).[16] Qolganlarning uzunligi notaning uzunligi bilan bir xil tarzda belgilanadi - masalan, r1 ishlab chiqaradi butun dam olish.
  • o - Keyin raqam, o ni tanlaydi oktava asbob o'ynaydi.
  • >, < - Bittasini yuqoriga yoki pastga tushirish uchun ishlatiladi oktava.
  • l - Raqam bilan ta'qib qilinadi, eslatmalar tomonidan ishlatiladigan standart uzunlikni belgilaydi yoki aniq belgilamaydi. Masalan, l8 g a b g l16 g a b g to'rttasini ishlab chiqaradi sakkizinchi eslatmalar keyin to'rt kishilik ketma-ketlik o'n oltinchi eslatma.
  • v - Raqam ortidan, belgilanadi hajmi asbobning. Ruxsat berilgan qiymatlar diapazoni ishlatilayotgan ovozli qo'shimcha qurilmalarga bog'liq. Ba'zi dasturlar ham ADSR konverti har bir eslatma amplitudasiga qo'llanilishi kerak.
  • t - Raqam ortidan, belgilanadi temp yilda daqiqada urish. Bir nechta ovozli kanallarga ega bo'lgan apparatda ko'pincha har bir kanalni har xil tempda sozlash mumkin.

Bunga qo'shimcha ravishda, aksariyat dasturlar tizimga xos kengaytmalar yoki kengaytmalar uchun o'zlarining kalit so'zlari va belgilarini qo'shadilar.

SMX

Standard Musical eXpression (SMX) - bu Microsoft tomonidan taqdim etilgan Zamonaviy MML versiyasi QBASIC, BASICA va GW-BASIC "s O'YIN bayonot.[10] GW-BASIC tomonidan ishlatiladigan versiya zamonaviy BSDlarning bir qismidir, FreeBSD,[17] NetBSD, OpenBSD va MirOS; til uchun karnayga (4) qarang.[18]

Tillar, platformalar va dasturiy ta'minot

  • Epik o'yinlar "s ZZT va Super ZZT, shuningdek ochiq manbali klonlash nomlangan MegaZeux, PLAY buyrug'i uchun MML-ning juda ixcham variantidan foydalaning, faqat uchun bitta kanal mavjud Kompyuter karnay
  • Microsoft "s QBASIC, BASICA va GW-BASIC barcha xususiyatlari a O'YIN qabul qiladigan bayonot mag'lubiyat SMX formatidagi argument.[19][20][21] "Musiqiy so'l tili" nomi GW-BASIC-dan kelib chiqishi mumkin, bu "musiqiy so'l tilini mag'lubiyatga ma'lumotlar turiga qo'shib musiqa ijro etish uchun" imkoniyat yaratgan.[22] DMV Widuch tomonidan ishlab chiqarilgan DOS Extra nemis jurnalining SBasic kompilyatori xuddi shu PLAY buyrug'ini taqdim etadi va bir necha qatorli BASIC dasturi har qanday MML fayllarni (ko'pincha * .PLY deb nomlangan) ijro etish uchun kichik (bir necha KiB) vositaga to'planishi mumkin. ) buyruq satrida berilgan.
  • The NEC PC-8801 B88IC BASIC shevasi, N88-BASIC, unda MML ishlatilgan O'YIN BASIC tomonidan ishlab chiqarilgan yoki sotilgan bir nechta boshqa dasturlar singari bayonot NEC.[10][24]
    • Chiptun bastakor Yuzo Koshiro juda o'zgartirilgan versiyasini yaratdi. Koshironing so'zlariga ko'ra, bu "avvaliga BASIC uslubidagi til edi, lekin men uni shunga o'xshashroq qilib o'zgartirdim. Assambleya. Men buni "Musiqa sevgisi" deb nomladim. Men buni hamma uchun ishlatganman Yalang'och Knuckle O'yinlar. "[25]
  • Uchun turli xil MML yordam dasturlari yozilgan NEC PC-9801 kompyuterlar oilasi, shu jumladan PMD (Professional Music Driver)[12] o'yin bastakori tomonidan Masaxiro Kajixara (ko'pincha KAJA nomi bilan tanilgan),[26] bastakor tomonidan ishlatilgan Ryu Umemoto kabi o'yinlar uchun EVE burst xatosi va Grunseed, shuningdek, o'yinni ishlab chiquvchi tomonidan ZUN uning birinchi beshligining ko'p qismida Touhou loyihasi o'yinlar.
  • Yaratish uchun mck, pmck va ppmck yordam dasturlari Nintendo ko'ngilochar tizimi musiqa,[11][27] va boshqa apparat uchun musiqa yaratish uchun bir qator boshqa vositalar, masalan Bandai WonderSwan, NEC kompyuter mexanizmi, va Sega Mega Drive.[12]
  • Turli tizimlar uchun musiqa yaratish uchun xpmck yordam dasturi, shu jumladan Sega Master tizimi, Sega Game Gear, Sega Mega Drive, Nintendo O'yin bolasi va Commodore 64.[28]
  • Biroz uyali telefonlar sifatida MML-dan foydalaning rington format.[29] The RTTTL rington tili MML-ning ko'plab xususiyatlarini namoyish etadi.
  • An qochish ketma-ketligi terminal dasturlari MML-da kodlangan musiqani ijro etishlari uchun ruxsat berilgan. Ushbu musiqa tufayli MML-da ba'zan ANSI Music deb nomlanadi.[30]
  • Ustida MSX o'rnatilgan kompyuter tizimi MSX BASIC shuningdek PLML-buyrug'i bilan MML-dan foydalanadi. Vergul bilan ajratilgan satrlar alohida ovoz kanallarini ifodalaydi. MSX-Music, MSX-Audio va MSX-MIDI kabi musiqiy apparat kengaytmalari PLAY-buyrug'ini kengaytiradi, shu bilan FM-chiplari va tashqi MIDI qurilmalari MML orqali boshqarilishi mumkin.
  • Sharp Pocket kompyuter musiqa rejimi PLAYX - MyArchive.Nihongo -> ja: ポ ケ ッ ト コ ン ピ ュ ー タ の 製品 製品 一 覧.
  • Makrotune Windows va OS X uchun taqdim etiladigan bepul MML muharriri Umumiy kutubxonalar dasturiy ta'minot / o'yin ishlab chiquvchilari uchun.
  • FlopPI-musiqa (arxivlangan eski hujjatlar sahifasi ) kengaytirilgan formatni metadata (masalan, Muallif, Sarlavha va hk) bilan fayl sarlavhasi, yangi satr va undan keyin har bir xodim uchun bitta qatordan foydalanadi, bir nechta asboblarni qo'llab-quvvatlaydi, satrlar bilan. Raspberry Pi GPIO portlarida sakkiztagacha bo'lgan 3 dyuymli floppi disklarini chiqarishga mo'ljallangan. Bundan tashqari, a mustaqil MML ajralish dasturi va MusicXML eksportchisi kutubxona va yordam dasturi, bilan sinovdan o'tgan MuseScore, ayniqsa, ommaviy-parallel MML fayllarini osonlikcha disk raskadrovka qilishga imkon beradi, varaqlarni bosib chiqarish (minimal minimal ishlov berishdan keyin ideal, ammo standartlar odatda tushunarli) va boshqalar - Floppi-Music va MMLlib - bu sof Python-da yozilgan bepul dastur.
  • Petit Computer va SmileBASIC ikkala taklif BGMPLAY funktsiyalar, ular oldindan o'rnatilgan MML trekni olishi yoki mag'lubiyat sifatida taqdim etilishi mumkin.
  • An MMO deb nomlangan Mabinogi o'yinchilarga o'yinda MML kodini kiritish imkoniyatini beradi musiqa skorlari keyin uni har kim yonida tinglashi mumkin jihozlangan asbob. Ijtimoiy jihati tufayli foydalanuvchilar ko'pincha o'zlarining mashhur qo'shiqlarining MML versiyalarini tayyorladilar va ularni yukladilar muxlis saytlari. O'yin shuningdek foydalanuvchilarga sintaksis kodni yozishda kattaroq o'lchamdagi cheklovni ochish usuli sifatida ikki baravar oshirilgan mahorat kitoblari orqali.
  • A Windows deb nomlangan dastur 3MLE Mabinogi foydalanuvchisi tomonidan MML varaqalarini yozishda yordam berish uchun qilingan. Dastur an .ga o'xshash ishlaydi IDE, foydalanuvchiga turli xil asboblar uchun MML kodini yozish, optimallashtirish va sinovdan o'tkazish imkonini beradi.

Shuningdek qarang

Adabiyotlar

  1. ^ Muallif "Tomohiro Nishikado " (角 友 宏 / に し ど と も ひ ろ) Pacific Pacific Co., Ltd kompaniyasida ishlagan. Hammasi yolg'iz.
  2. ^ PDF fayli; Micro Computer BASIC MASTER MB-6880 Musiqa usuli[doimiy o'lik havola ] - Kunihiko (圀 彦), Nagai (長 井); Teruxiro (輝 洋), Takezava (竹 澤); Kazuma (一 馬), Yoshimura (吉 村); KaTsutoshi (活 利), Tajima (田島) (1979 yil 26 aprel). "Hitachi Hyoron 1979 yil aprel. Xususiyatlari: mikro kompyuter, qo'llash usuli". raqamli.hitachihyoron. HITACHI. Arxivlandi asl nusxasi 2015 yil 8 mayda. Olingan 26 avgust 2013.
  3. ^ Qoladi olma Tomonidan ochiq texnologiya Stiv Voznyak 1977 yilda shunga o'xshash olma Qizil kitob Apple Computers.
  4. ^ "SHARP MZ.org MZ-80K monitor sub $ 0030". 2012-09-20. Arxivlandi asl nusxasi 2015-09-26. Olingan 2012-09-19.
  5. ^ Markaziy protsessor bu Z-80 Zilog Litsenziyalangan ikkilamchi manba
  6. ^ Nobuaki Ohishi (2012-09-20). "Nibbles laboratoriyasi. SHARP muzeyi, MZ-80K foto va katalogi".
  7. ^ SHARP korporatsiyasi; nagusa_kei (1978). MZ-80 BASIC SP-5030 ニ ニ ュ ア ル. SHARP korporatsiyasi. p. 110.-Hujjat (tasdiqlash) SP-5030 yuqori versiyasi "twitter oec_Nibbleslab". 2012-09-22.-"twitter PlayTrueName". 2012-09-22. Olingan 2012-09-22."twitter (twilog) PlayTrueName". 2012-09-22. Olingan 2012-12-28.SHARP korporatsiyasi (1978). MZ-80 BASIC マ ニ ュ ア ル. SHARP korporatsiyasi. p. 110.
  8. ^ "SHARP MZ.org MZ-80K monitor sub $ 0030". 2012-09-20. Arxivlandi asl nusxasi 2015-09-26. Olingan 2012-09-19./"SHARP MZ.org MZ-700 monitor sub $ 0030". 2012-09-20. Arxivlandi asl nusxasi 2015-05-09 da. Olingan 2012-09-19.
  9. ^ Motoi, Kenkichi. "Ko'z nuqtai nazari. U" sen "Men yig'layapman / Awamomo Office" o'ynab "dedi. Arxivlandi asl nusxasi 2013-02-18. Olingan 2012-09-20. Dasturlangan va tartibga solingan Motoi, Kenkichi. "Twitter @PlayTrueName Σ: D『 Shunday qilib, uzoq vaqtdan beri ◎ musiqa sadolari ostida dasturlash ". Olingan 2012-09-22. Litsenziyalangan #AAAP (shu jumladan Creative Commons CC-BY-SA va GNU Free Documentation Litsenziyasining matni. ).
  10. ^ a b v d e f Selfridge-Field, Eleanor (1997). Mididan tashqari: Musiqiy kodlar bo'yicha qo'llanma. Kembrij: MIT Press. ISBN  0-262-19394-9.
  11. ^ a b "VORC Internet Chiptune Entsiklopediyasi - mck". Arxivlandi asl nusxasi 2008-01-03 da. Olingan 2008-02-13.
  12. ^ a b v "VORC Internet Chiptune Entsiklopediyasi - MML". Arxivlandi asl nusxasi 2007-11-23 kunlari. Olingan 2008-02-13.
  13. ^ "VORC: VGM yoki 2001 yil Chiptuni". 2001-12-31.
  14. ^ Jonson, Eremiyo. "MCK / MML yangi boshlanuvchilar uchun qo'llanma". Arxivlandi asl nusxasi 2007-12-14 kunlari. Olingan 2008-02-13.
  15. ^ "IBM BASIC qo'llanmasi, Ikkinchi nashr (1982 yil may), 1.10 versiyasi". (PDF). Arxivlandi asl nusxasi (PDF) 2015-06-15. Olingan 2016-03-26.
  16. ^ MirBSD karnay qurilmasi hujjatlari
  17. ^ FreeBSD dinamik (4) qo'llanma sahifasi
  18. ^ a b karnay (4) qo'llanma sahifasi
  19. ^ "QBasic qo'llanma". Microsoft korporatsiyasi. 1991 yil. Iqtibos jurnali talab qiladi | jurnal = (Yordam bering)
  20. ^ "IBM Personal Computer BASIC qo'llanmasi". IBM korporatsiyasi. 1982 yil. Iqtibos jurnali talab qiladi | jurnal = (Yordam bering)
  21. ^ "BASICA qo'llanmasi". Microsoft korporatsiyasi. 1982 yil. Iqtibos jurnali talab qiladi | jurnal = (Yordam bering)
  22. ^ "GW-BASIC qo'llanmasi". Microsoft korporatsiyasi. 1987 yil. Iqtibos jurnali talab qiladi | jurnal = (Yordam bering)
  23. ^ Raymond, Erik (1995 yil 7-may). "Erik Raymondning ochiq manbali asarlari". Erik S. Raymondning asosiy sahifasi. Olingan 3 iyul 2020.
  24. ^ Koshiro, Yzō. "Yuzo Koshiro bilan intervyu" (Suhbat). Kikizo o'yinlari bilan suhbatlashdi. Olingan 2008-02-13.
  25. ^ Shzepaniak, Jon. "Retro Yaponiya Kompyuterlari: O'yinning so'nggi chegarasi". 101. O'yin. Olingan 2011-03-29. Qayta nashr etilgan Retro geymer, 2009
  26. ^ "ツ ー ル の お 部屋" (yapon tilida). Olingan 2019-12-01.
  27. ^ "VORC Internet Chiptune Entsiklopediyasi - ppmck". Arxivlandi asl nusxasi 2006-10-12 kunlari.
  28. ^ Swimm, Peter (2009 yil 21-dekabr). "XPMCK - Cross Platform Music Compiler Kit yangilandi". O'limgacha haqiqiy chip. Olingan 29 dekabr, 2011.
  29. ^ "着 信 メ ロ デ ィ は び 自 分 で 作 る 時代 に ──MIDI フ ァ イ ル や WAV フ ァ イ ル を 着 ロ に 変 換". ITmedia, Inc. 2001-04-03. Olingan 2008-02-13.
  30. ^ "ANSI Music - Texnik tafsilotlar". Olingan 2009-01-16.