« SF本読了 神は沈黙せず | メイン | ノンフィクション読了 フェルマーの最終定理 »

2009年06月26日

●MSXのおもひで

昔,MSXというパソコン(規格)があった。これは専用ディスプレイが不要で,家庭のテレビにファミコンと同じようにつなぐことができたので,入門用パソコンとしては最適だった。CPUはザイログのZ80(3.6MHz)。

規格としてはVRAMが16kBまでのMSX1と,64kBまで拡張されたMSX2があって,Webmasterが買ってもらったのはMSX2(パナソニックのFS-A1)だった。

ファミコンと同じようなカセットスロットが付いていて,ゲームもできたけれど,やっぱり面白かったのはプログラムだ。

カセットを何も挿し込まないで本体のみで起動すると,内蔵ROMに焼かれたBASIC(MSX BASIC)のインタプリタが表示される。青い背景に文字が出るだけの素っ気ない画面だ。メニューも何もないので指令はコマンドを打ち込むしかない。当然マウスもない。

プログラムは次のように書く。先頭の数字は行番号だ。


10 CLS
20 PRINT "BABEL ";
30 GOTO 20
40 END

エディタとかコマンドラインの区別もなくて,行番号に続けて書くとプログラムと認識され,命令を直接書くとその場で実行される。上のプログラムを実行するなら"RUN"と打てば良い。

お店に展示してあるMSXで,よく上記のようなプログラムを書いて走らせて遊んだものだ。無限ループなので電源を切るかブレイクコマンドを知っている人しか止められない。迷惑な子供である。


10 MOTOR
20 GOTO 10

これもMSX BASICのリファレンスマニュアルを熟読してWebmasterが開発(?)したはた迷惑なプログラム。MSXはデータレコーダ(カセットテープ)を制御するためのリレーを内蔵していて,そのリレーを高速開閉させて本体から「ビー」というけたたましい騒音を発生させるわけだ。

MSX2はグラフィック性能も優れていて,256色同時発色が可能だった。グラフィックもBASICから制御できて,LINEやCIRCLEといった命令を駆使して画面に絵を描く。

ゲームを作るならスプライトだ。飲み物のことではない。背景とは独立したレイヤーにドット絵を描いて,それを動かすというもので,背景や他のスプライトとの重なりや再描画などを自動で処理してくれる便利な機能で,これなしではゲームが作れない。

音は標準だとファミコンと同等(PSG3音+ノイズ1音)で,BASICからだとMMLという音楽言語を使って音を鳴らす。例えば,


10 PLAY "o4l4CDEFGABo5C"

というプログラムで,4分音符でドレミファソラシドと鳴る。あるときFM音源パックというカセットが発売されて,これを挿すと段違いに高音質なFM音源が使えるようになって,知っている曲をずいぶん打ちっこんで遊んだものだ。

MSXに標準でFDDが付いたのはかなり末期の頃で,データの保存にはもっぱらデータレコーダが使われた。データレコーダといっても専用の機械を買うまではラジカセで代用していた。MSXにラジカセをつないで,録音状態にしてからSAVEするわけだ。せっかく打ち込んだプログラムなどの大切なデータが消えたら悲しいので,何重にもバックアップを取ったり,高級なメタルテープを使ったりもした。今考えたらハイポジくらいでも充分だったと思う。