版を指定して表示しています。
理由が無い限り、最新版の閲覧をお願いします。

PC以降の音楽演奏

目次

Music of a sort(1975)

演奏データ形式もっと知りたい

SCORTOS (1977/9)

演奏データ形式もっと知りたい

Altair 8800 の MUSIC (1978/3)

演奏データ形式もっと知りたい

ここまでのまとめ

アメリカのパソコンブーム日本のパソコン事情

NEC TK-80(1976/8)

演奏データ形式もっと知りたい

日立ベーシックマスター(1978/9)

演奏データ形式もっと知りたい

MZ-80K(1978/12)

演奏データ形式もっと知りたい

沖電気if800(1980/5)

演奏データ形式もっと知りたい

パソピア(1981/9)

NEC PC-6001(1981/11)

演奏データ形式もっと知りたい

ふたたび、次回へ続く…


MZ-80K(1978/12)

MZ-80K に MML が搭載されていたのは有名で、一部には「世界初の MML」だと主張する人もいます。しかし、上に書いたベーシックマスターが MZ-80K の3か月前に発売になっています。

そして、ベーシックマスターの発売のころ、MZ-80K は発売を予告する、プロトタイプ機時点でのパンフレットを作っています。


時期が同じなのは、1978年の10月頭に東京で家電品の展示会があったためと思われます。
ベーシックマスターはそこで「新発売」展示し、MZ-80K は「近日発売」でパンフレットを配布したのでしょう。

プロトタイプ段階では、「音楽の自動演奏が BASIC ソフト処理で可能」とは書かれていますが、MML 命令(MUSIC 命令)は載っていません。ソフト処理、ですから、I/O ポートを直接操作するような方法が想定されていたのでしょうね。

しかし、ベーシックマスターへの対抗上、この後で BASIC に急遽 MML が搭載されたのではないかと思います。ハード的にはやはり、CPU から直接スピーカーを駆動します。TX-0 の音楽演奏と同じような形式です。


おそらく、ベーシックマスターに対抗する際に、音楽関連の先行技術を調べています。…もしくは、ベーシックマスターを見た瞬間に、「あれだ!」と気づいたかも知れません。ベーシックマスターのところでも書きましたが、当時の技術者ならアメリカの BYTE 誌を読んでいるのはある意味当たり前。そして、MZ-80K も、再度 SCORTOS と Altair MUSIC を見つけ出しているように思います。


MML をベーシックマスターと比べると、非常に似ています。しかし、機能的にはずっと貧弱になっています。転調機能はありません。音色を変える機能も、ボリュームを変える機能もありません。これらは開発期間が短かった影響ではないかと思います。

しかし、一方で機能が削られた分命令は整理され、さらに扱いやすくなっています。

最大の違いは、ベーシックマスターが音長指定に Altair MUSIC の方式を使ったのに対し、MZ-80K は SCORTOS の方式を使ったこと。

また、音符をカタカナではなく英字表現に戻したこと、でしょうか。


演奏データ形式

音は CDEFGAB 、休符は R で示します。ベーシックマスターと同じく、音域は3オクターブ。

やはり、該当の音の直前に上げ下げの記号を付けることでオクターブを変えます。ただし、MZ-80 では、グラフィックキャラクタの  ̄ で上のオクターブ、 _ で下のオクターブを示します。

半音上げる、は音名の前に # を付けます。半音下げ、はありません。これらも、ベーシックマスターと同じように各音符の前全てにつける必要があります。


そして、次が最大の違い。

音長の指定は、音名の後ろに数字1桁で行うようになりました。数字の意味は、ベーシックマスターと同じです。

ベーシックマスターのように、指定するとその後の音符が全部変わる、と言う命令はありません。数字は省略できるのですが、その際は常に 5 (4分音符)となります。


「トッカータとフーガ ニ短調」は次のように記述されます。

A1G1A3A7G1F1E1D1#CD7R


比較してみると、見た目は違えどベーシックマスターとほぼ同じ構成であることがわかります。

特に「シャープを音名の前につける」などは、まだ現代の MML とは大きく違います。


もっと知りたい

MZ-80 BASIC解説書

シャープの電子書籍として、無料配布されています。読むには会員登録が必要。以前は PDF で無料配布していたのですけど、電子書籍化でPDFの配布は終了したみたい。

とにかく、当時の BASIC マニュアルそのものなので、これ以上ないくらい細かな説明が残されています。

この機能は、BASIC に用意されていたわけではなく、システム ROM に納められていたのを BASIC から呼び出していたのだそうです。(GORRY さんの証言


MZ-80Kのプロトタイプ考察

Oh!石氏のページより。実は、この記事の公開後(当日中)、MZ 関連の記述でおかしなところを多数指摘していただきました。

僕の記事、細かな間違いは一杯あると思います。気づいたらどんどん指摘していただけるとありがたいです。


沖電気if800(1980/5)

if800 はビジネス向けに販売していたために、それほど普及した機械ではありません。

しかし、販売がビジネス向けだった、というだけで、マシン設計にはホビー向けを指向した個所も見られます。

音楽演奏機能も、ベーシックマスターと MZ-80K 、そして SCORTOS と Altair MUSIC と MUSYS の音楽演奏機能の、良いところを取って組み合わせ、さらに洗練させたようなものになっています、


演奏データ形式

ベーシックマスターと MZ-80K に対抗しよう…として、SCORTOS と Altair MUSIC を再発見しているように思います。ふたたび文法は練り直され、現代の物に近くなっています。

音階指定は CDEFGAB です。これは MZ-80K と同じ。なんと、音域は5オクターブもあります。こうなると「音の前に上か下かを指定する」程度では足りなくなってくるため、オクターブ指定は SCORTOS 式になっています。A=440Hz が O3 、というところまで SCORTOS と同じ。

半音上げ下げは、音名の「後ろ」に指定する、これも SCORTOS 式。ただし、+ - に加え、ベーシックマスターと MZ-80K が使用していた # も使えます。

休符は R ではなく、P でした。恐らくここは、ベーシックマスターや MZ-80K を真似せずに、Altair MUSIC の内部表現を使ったのでしょう。

また、オクターブの中での音階を、「N」と数値で示すことも出来ました。N1 が C 、N2 が C#、N3 が D 、… N12 が B 、と言う具合です。これ、次回やりますが MUSYS の影響かと思います。


音長指定は、別途指定するベーシックマスター方式と、音階の後ろにつける MZ-80K 方式の両方が使えます。直接指定があればその音長が使用され、指定がなければあらかじめ指定しておいた音長になります。

ただし、音長の「数値」は、ベーシックマスターやMZ-80K とはちがい、SCORTOS 式に戻されました。4分音符なら 4、8分音符なら 8 を指定する方法です。

別途指定の際は L の後ろに音長を指定します。これも、現代の MML ではおなじみの文法。

音長指定で付点が使用できたかどうかは、調査不足でわかりません。(というか、この調査はほとんど MORIYA Ma.氏の調査にのっかっているだけ…)


「トッカータとフーガ ニ短調」は次のようになります。

l16aga8a2gfedc+4d2p4




現代 MML とは多少異なりますが、こうしてみると基本は if800 が作り上げたように思います。

そして実は… if800 の BASIC は、マイクロソフト製でした。西和彦の指示により、究極の BASIC として他機種の良いところを全部取り入れた BASIC 。

これ以降、if800 と基本構造が同じ MML が、多くの機種に搭載されていきます。


この後、マイクロソフトBASICが全盛となり、メーカーによっては互換性を棄ててもマイクロソフト製に切り替えていきます。
しかし、シャープは自社製ベーシックを使い続けました。
このためシャープの PC は他機種との BASIC 互換性(移植性)が悪く、MML もかなり違う文法のままでした。

もっと知りたい

やる夫と学ぶホビーパソコンの歴史 第6話

if800 、非常に高くてホビーユーザーが変える機械ではなかったため、残されている資料が少ないです…

そんな中、タイニーP氏(ベーシックマスターの項でもMMLの文法を示していた方です)の連載記事である、「ホビーパソコンの歴史」で詳しく取り上げられています。


パソピア(1981/9)

東芝のパソピアには、ハードウェアは同じで搭載する BASIC がちがう、2つのモデルがありました。マイクロソフトによる T-BASIC と、東芝オリジナルの OA-BASIC です。

このうち、T-BASIC には音楽の演奏機能があった…ことになっているのですが、いわゆる MML ではありません。MML ではないのに取り上げるのは、これが MML の謎を解く、最後のカギだと思っているから。詳細は次回に書きます。


それはさておき、パソピアの BASIC では、

SOUND 音階,音長

で音が鳴ります。(参考資料)


カタログによれば3オクターブが出せ、「音長が指定できる」ことをわざわざアピールしています。

音階は 11~84 の数値で指定したらしいので、半音階のさらに半分単位で音を出せたのではないかと思いますが、詳細不明。数字が中途半端な理由も不明。音長をどのように指定するのかも不明 (^^;


次ページ: NEC PC-6001(1981/11)


前ページ 1 2 3 4 5 次ページ

(ページ作成 2014-07-17)
第1版 …他の版 最新版

前記事:世界初のMML     戻る     次記事:MMLの成立
トップページへ

-- share --

6000

-- follow --




- Reverse Link -