norimakihayateの日記

バーチャル旅日記からスタート。現在は私の国内旅行史に特化しています。

ベーシックで動くマイコン

f:id:norimakihayate:20150512130521j:plain

昨日は高崎から出発して北高崎、群馬八幡と過ぎ、安中まで到達した。高崎までは高崎線なのだが、高崎から先は信越本線になる。

 

 マイコンによるエンジン制御プロジェクトは結局、同じ車種のフルモデルチェンジも含め9年間でのべ11車種を立ち上げ、後輩に後を委ねて別の仕事に移った。

 

 11車種の開発中、車載するCPUのプログラム言語は一貫してアセンブラだったが、データ解析やサポートは当初はFORTRANを走らせる大型計算機で行っていた。それが途中から小型汎用計算機に変わった。ブラウン管のカラーモニタとフルキーボードが付いて、外部記憶装置は5インチのフロッピィディスクとRS232C規格のシリアル通信を使うカセットテープレコーダーを併用していた。今のパソコンに近いが通称マイコンと呼ばれていた。当時はまだパーソナルコンピューターという言葉は普及していないし、マウスもまだ無かった。

 

 世の中ではNECのPC8000シリーズが抜群に売れていたと思うのだが、会社で使っていたのは日立のMB6890だったと思う。ベーシックマスターというシリーズでNECのPC8000に対抗して作られたものだ。アセンブラコンパイルして作った機械語でも勿論動いていたが、画期的だったのはBASIC(ベーシック)という逐次翻訳型の言語が使えるようになったことだ。

 

 BASICは大学の選択課目で採って習ってはいたが、使う機会はそれまで全く無かった。そういう言語で走らせる装置がまだ殆ど無かったからだ。

 

 MB6890ではベーシックを駆使して、エンジン制御のデータの可視化をさせるのによく使っていた。16進数の羅列を意味のある10進数の物理変数に変更してリスト化するのは大型計算機の時代からやっていたが、ベーシックが使えるようになってからは、更に数値の列をグラフにしたり3次元のマップ表示に変換したりするようになる。シミュレーション結果を動きのあるドット表示のアニメーションにしたりもしていた。

 

 仕事で使うのの裏で、暇な時にはベーシックでゲームも作って遊んでいた。当時ゲームセンターなどで流行っていたものに、ロケットが水平に飛んでいて、色んな障害物や飛来物を避けたり、撃ち落としたりするものがあった。これに似たものをベーシックで作ったのだ。ベーシックは逐次翻訳式言語なので、機械語のプログラムと比較するとどうしても動作が遅くなる。そこで横一列に描いた模様を改行することで上から下に画面全体をスクロールさせてゆく手法で背景を描き、ロケットは画面中央付近を下から上に進んでいるように見せる工夫をしたのだ。このことによって、画面全体がかなり速く動くようになり、人間のキータッチのスピードの限界ぐらいまで高速で背景を動かせた。このゲームは職場ではかなり人気が出て、定時就業時間後は、このゲームをやるのに順番待ちをするほどになった。