多伊登宇母乃賀多利 PART.2
哀愁の流れプログラマ
by N.SAT

序章・『ご挨拶』

 零壱症候群を御愛読のみなさん、初めまして。私、N.SAT(※1)と申します。以後、ごひいきに。

 何故このデヂシンに『絵夢絶党』の存在すら知らなかった者がこのようなつたない文章を書くことになったかと言いますと、零細ソフトハウスに所属し、プログラマーを本業(?)としていた私が、ひょんな事から出向社員としてかの有名なT社に勤務している阿閉氏(※2)と一緒に仕事をするようになり、そこで私が『パソコンは持っていますか?』と聞いたことに端を発します。

 職業・プログラマー。週末・キーボードを忘れる。やはり男はこうありたいね……

 汝、プログラマーになることなかれ!

 

第1章・ゲームプログラマーの部

 『MSX2に潜む大蛸の怪』

 みなさんMSX2って知ってますよね。アスキー出版社が推奨した共通仕様のマシンのことなんだけど、仕事で使ってみてびっくり仰天!

 MSX2にはBIOSと称するROMが載っている。コーリングシーケンスはもちろん同じだけど、各機種によってタイミングがまちまちで使えない部分が出てくるのである。特にジョイスティック入力周りは、違うメーカーのプログラムをパクってしまった。(おいおい....:編)

 それとVDP(※3)。あれがまたタコで、スプライトが一応存在するが、1ライン1色というお粗末なもの。だから、たくさん色を使いたい場合は2枚スプライトを重ねて3色出す奥義をよく使う。データは当然2枚分必要なので、キャラクタ用にとっておいたメモリーがパンクし、泣く泣くプログラムを削ることもある。さらにそのスプライトは8枚横に並ぶと9枚目が消えてしまうので優先順位の入れ替え(※4)が必要。だが、Z80のタイムステートを暗算でやってのける阿閉氏特製のプログラムでさえ、メインの処理の1/4も処理時間を喰ってしまうので、処理オーバが頻繁に起こる。

 まだまだあるぞ!

 ある程度プログラムが完成すると、恐怖のバージョンチェック(※5)が待っている。これはどういうことかというと、まずアスキーの分室へプログラムをROMに焼いて持って行く。そこには発売中のMSXマシンが置いてあり、ROMがちゃんと動くかどうかをとっかえひっかえしながら調べることなのだ。ひどいことに、ハードが悪いんだかソフトが悪いんだかわからない(要するに壊れている)マシンまである。

 ここで初めてわかったバグというと、

 『〇菱のあるマシンは、当然初期化されているはずのVDPレジスタに値を代入しないと、コンポジット(ビデオ出力)とRF(テレビのアンテナ端子につなぐやつ)が白黒になってしまう。』

というものである(他社製品はちゃんと初期化しているらしい)。当然、ここで出たバグは対策を施し、再度チェックする。

 『フック』はごまんと(現在確認済みのものだけでも○○○個)あるし、ディスクドライブがつながっていると勝手に初期化しなおすし、メーカーに問い合わせても共通仕様のはずなのに『ソフトの方で対応するんでしょ?』なんて平気で言ってくる。さらにタライ回しにされるし………(特に三○の鳥取工場! 俺は一生忘れないぞ!)。ついに残業時間は280時間/月にもなってしまった。ああ、今度生れ変わるとしたら、私は海の底に沈む貝になりたい………。

第2章・OAプログラマーの部

 『尻拭いはいやだ!』

 『バグが出た!』この一言にどれだけ寿命が縮まったことか。自分のソフトのバグなら自業自得。しかし他人の作ったソフトのバグほど厄介なものはない。

 もう辞めてしまった人の作った、あるクリーニング会社の(バグ付き)管理プログラムのバグ取りと追加仕様の組み込みを担当したことがある(社名は敢えて伏せておく。別にばれてクビになってもいいんだが………)。そのプログラムは何とBASICで138本の処理(合計3Mバイト)と2Mバイトのデータファイルを扱っている。

 そんな化け物にバグが発生したらもう大変! リストを見ようとフォルダーを引っ張り出せば、厚みはゆうに20cmを越え、ドキュメント(※6)はお情け程度。さらに保存状態が悪く、あちこちのページが抜けているときたもんだ!

 金銭がからむものだけに客先に出向くこともしばしばあったが、相手はパートのおばちゃん(※7)。やはり恐いもの知らずなのだ。コンピュータを特大電卓としか思っていないから、その扱い方といったらひどいものだ。マシンを設置してある机は作りが悪くてぐらぐらだし(ハードディスクを使ってるからちょっとしたことでクラッシュする。2Mのデータがどれだけのものかおばちゃんたちにはわからないだろう)、フロッピーが裸のまま埃まみれになっているのはまだいい方、しまいには指紋押捺されているものまである。とまあ、通常では考えられない使い方をされている。マシンもうかばれまい。そんな状態だから、たまに使用上のバグがソフトのバグにされてしまう。

 ああ、ボケもツッコミもバグも無い世界へ行きたい………。

 

第3章・制御系プログラマーの部

 『ココムがなんだ!!』

 高圧電線を作る工場のライン制御プログラムを作った。プラント自体はとんでもなくでかい。ビル6階分もあろうか………しかし、ターゲットマシン(※8)はP○-8801FRが2台。『98ぐらいなら1台で済むのに?!』と思うでしょ。しかしココム(※9)の壁は厚く、打ち破ることはできないのだった。

 その2台の88をどのように使い分けているかというと、直接ハードをコントロールする制御系と、製品データを入力・修正・保存するための管理系に分けている。私は管理系を担当した。データを索引付き検索ファイルに落とさなければならなかったのであるが、98ならそのようなパッケージがあるが88用には無いのでBASICで疑似的に作ってしまった。とんでもないプログラムになったのを覚えているが、未だにバグが発生していない(当り前のことだが)。これだけは胸を張って言える。

 

第4章・『それでもやっぱりプログラマ』

 なんだかんだ言いながらも、プログラマをやっている私は何なのだろう。まぁ、この仕事が面白くてやっているんだからいいんだけれど………。

 今の会社は残業をいくらやっても手当てが2時間分しか出ないし(※10)、給料も少ないから9月中に辞めようと思っている。2年ぐらい『プログラマー修行(※11)』をするのもいいんじゃないかな。みなさんの中でプログラマーになろうと考えている人は参考にして下さい(こんなんじゃ参考にもならないが)。

最後に一言

 『好きこそものの上手なれ!』

         おそまつさまでした。

 


※1)学生時代に、Oh!MZ(今のOh!X)に載せてもらったことがある。バックナンバーを持っている人は、’85.11月号辺りを見てもらえれば本名がわかるかもしれない。あの頃は良かったなぁ。

※2)阿閉雅宏(アツジマサヒロ)。絵夢絶党員としての活躍は有名。現在('89年5月)もゲームメーカーT社に在職。MSX2版の「バブルボブル」やセガマークIV版の「ファイナル バブルボブル」は彼と筆者の手によるものである。

※3)ビデオ・データ・プロセッサーのこと。GCC(グラフィック・CRT・コントローラ)等と同じもの。各社で呼び方が違っているのはなぜだろう。ちなみにこの石は、素晴らしいほど見事に外れたNTTのキャプテン(翼じゃないよ)システムに使っていたものらしい。余ったからMSXに載ったという噂もある。

※4)よくゲームを見ると(特にファミコンゲーム)、画面に敵などがたくさん出るとキャラクターがちらついて見えるようになりますね。あれのことです。

※5)ファミコンにもバージョンチェックがあり、Version AからIまであるらしい。

※6)フローチャートやファイル定義etc.が書き込まれた書類のこと。なんでもそうだが、特にOA関係はしっかり作られていなければならない。

※7)原付きに乗っているおばちゃんを思い出してもらえればわかると思う。

※8)実際にプログラムを実行するマシン。または、開発の対象となるマシンのこと。

※9)○芝で一躍有名になった『対共産圏輸出規制』のこと。戦争に使われる可能性のあるものは共産圏には輸出してはだめだよというわけのわからないもの。潜水艦に使う音の静かなスクリューはどうなったんだろう。

※10)『残業2時間分…』の通達にこう書いてあった。“世界一流のI社では、月30時間まで支給。それ以上残業しないと仕事のできない人は能力が無いと言われている”なーにいってんだ! この会社のどこが一流だ?悔しかったら一流会社並の給料出してみろっ!! てなもんで、他にも色々と腹の立つことがあるのだが、また別の機会に書きます。

※11)“流しのプログラマー”でもやろうかな?キーボード背負ってさ…………。