この間HTML Help WorkshopでWindows(Microsoft)とOS/2(IBM)の話をしましたが、今日はもっと昔のお話を。
私がコンピューターに触れたのは、28歳で所帯をもった後実家に行った際に、兄貴のシャープのポケコン(注)に触った時でした。
注:確かこんな奴だった。とても簡単なBASICがついており、プログラムはデータレコーダー(テープレコーダー)で記憶していました。
面白いので、兄からかっぱらって仕事場に持ち込み、定型の四則演算業務をやらせて結果を印字出力させていました。しかし、更なる「高度なBASIC」でプログラミングしたくなり、へそくりをためて初めて買ったのが、ソニーのHitBitというMSXマシン(注)。
注:これです。MSXというのはビルゲイツと西和彦が組んで日本のホームPCを席捲しようという野望戦略でした。ザイログ社のZ80 4MHチップでテレビにテキストのみならず、画像、音楽等の出力ができて、基本は内蔵ROMのBASICですが、カートリッジでDOS(MS-DOSとコマンド、ディスクフォーマット互換のMSX-DOS)に拡張できる、という、当時NECが8 Bitマシンを2-30万、MS-DOSマシンを40~100万で販売していた時代としては破格のコストパフォーマンスでしたね。しかし、2DKのアパート住まいで、生まれたばかりの長男が邪魔する中、キー入力でのプログラミングは困難を極め、入力中や録音中(プログラムをセーブするときにピーヒョロロと鳴ります)に目を離すと長男がキーボードをバンバンと手でたたき、父は涙していました。
人間の欲は果てしがないもので、MSXの画像の粗さ(512X256)に飽き足らず、矢張り一級品の640X400(未だPC互換の640X480ではなかった)が欲しくなり、且つディスク(といってもフロッピーです)とスピードも求めたことから、当時最速のZ80 6MH、MS-BASIC互換、通信(RS-232Cインターフェースによる電話通信です)可などが売りだったシャープの「スーパーMZ(MZ-2500)」を購入。最大256色(320X200)や16色高細精度画像(640X400)、音響や(当時としては珍しい)マウスインターフェース標準装備等、楽しくて、楽しくて、色んなものをプログラムし、当時のWindows1.0をまねた、ドロップダウンメニューでFileやEditのディスク基本操作をするGUI環境も作りました。
しかし、如何にMS=BASIC互換で当時最速のBASIC-M25といえども、インタープリター言語であり、Z80ネイティブの機械語でプログラミングするには、BASICで組んだモニター(注)で1バイトづつ16進数を打ち込むしかありませんでした。
(注)Z80の「広大(!)な64Kバイトメモリー空間(0~0FFFFH)」を、アドレスを指定してPeek関数で読み出し(Dump)、Poke関数で書き込むというプログラム。
これでは本当のプログラミングができない、という焦りがあり、当時カーニハン・リッチーの"C Primer"(邦題「プログラミング言語C」)を読んでいたこともあり、(またまた女房に内緒でへそ喰って)MZ-2500用のPersonal CP/MとCのサブセット(注)であるBDS-Cを購入しました。
注:色々と制限がありましたが、最大のものは「整数だけで、実数が使えない」kとでした。しかしMZ-2500にはIOCS(入出力制御システム-グラフィック等も含むSVCコールと実数での算術計算を行うFNCコール)が提供されていて、全く苦になりませんでした。実際、MZ-2500とBDS-Cを使い、SVCコールグラフィックを、FNCコールで実数を扱ったサンプルプログラムも組んでいました。
BDS-Cを使った最初のCプログラムは、なんとZ80アッセンブラー(「ZASM」と命名していました。現在Z80アセンブラーエミュレーターに同名のものがあります)というもので、ソースファイル(*.zsm)を読み込み、第1passでラベルをDB登録して、命令を解釈し、第2passで実行可能なcomファイル(注)を出力するものです。なお、ZCASMというプログラムを使い、ZASMでアセンブルして作る実行ファイル(com)をリンクファイル(crl)に名前変更して、BDS-Cでリンクすることもできましたので、MZ-2500のIOCS(入出力制御システム)をすべて使いこなせました。
注:BASIC-M25等では機械語の実行ファイルの拡張子はobjですが、CP/MではMS-DOSと同じくcomになります。
このようにMZ-2500でプログラミングを援助していましたが、世の中で8Bitマシンが使われたのも1980年代までで、本格的なIBM互換PCが市場に出た1990年代には駆逐されました。実際私は1991年に米国に駐在するまで(当時の日本のMS-DOSマシンは45万位しましたので)MZ-2500で遊んでいましたが、米国でIBM互換PCを使うようになって帰国した1996年には「MZ-2500は郷愁をもって眺めるだけ」のマシンとなり、場所ふさぎだからと処分されてしまいました。(泣;)