fygar256’s blog

fygar256のブログ・備忘録

GAME言語の思い出

GAME言語が流行ったのは、パソコン黎明期1980年前後。GAME言語には思い入れがあります。僕がコンピュータをやり始めた中学一年の時、まだパソコンはパソコンという呼称ではなくマイコンと呼ばれ、今のように広まっていず、マニアだけがやっていました。当時、国民機と呼ばれたPC-8001PC-8801が発売され、僕はそれらのコンピュータを買ってもらい、ゲームを作って雑誌に投稿していたマイコン少年でした。ゲームを作るときに問題になるのがコンピュータの処理速度で、Z80の8ビットマイコンにはマイクロソフトのN88-BASICは重くてリアルタイムゲームは無理と言われていました。そこで登場したのが月刊ASCIIに載っていた「GAME言語」で、MZ-80やPC-8001APPLE][、CBM-3032などの機種で、コンパクトで軽量で高速な処理を実現していました。実行速度はアセンブラには敵わないけれど、雑誌にいろんなGAME言語のプログラムが載り、一世を風靡しました。ちょっと恥ずかしいですが、僕はGAME言語を参考に、自作の言語処理系を作り、インタプリタコンパイラでゲームを開発していました。自作言語の第一号はMIEP(MICRO INTEGER EXPRESSION PROCESSOR)と言い、エディタとインタプリタコンパイラで構成されていました。PC-8801用でした。これで、PC-8801向けに、PACK'N BOYとGALACKという、パックマンギャラクシアンのクローンを作り、PSK(パソコンショップ高知)から発売していました。自作言語の第二号は、これも、GAME言語から派生したものですが、MIGといい、これは略称ではなく、「速いゲームを作りたい」という思いで、旧ソ連の超音速戦闘機から取りました。GAME言語は’General Algorithmic Micro Expression’の略だった様に記憶しています。MIGはIDEを作ろうと思ったのですが、エディタとコンパイラだけで断念。それでも、インラインアセンブラを装備していました。MIGでStarStruck とInternalTroubleというゲームを作り、PSKから発売をしました。このゲームもPC-8801用でした。<div>この間、ふとハックアタックがあり、Ubuntu20.04で、スクラッチからC言語で、GAME言語のインタプリタを二晩徹夜で作り、GithubとQiitaに上げました。いまではGAME言語は廃れており、資料を手に入れるのが困難ですが、GAME言語と聞いてノスタルジーを覚える同世代のエンジニア達のなんかのお役に立てれば、また、思い出を温めるお手伝いができれば、と思っています。

 

qiita.com

github.com