第004回  プログラミング   11/17/2001
この頁読んでる皆はほとんどが私のことを知ってる人だと思うから何をやってる奴ってのはたぶん知ってるんでしょうね。まだ4回目だからロボットさんもまだ見つけてないでしょうしね。
まあ偶然見つけて3回まで読んで、更に他の私の頁とか見たら大体どんなことをやってるのか推測もつくでしょうね。

「プログラミング」ってタイトルなんだけど、私プログラミング嫌いよ。この嫌いって意味は仕事としてちゃんとやるのは嫌いってこと。苦手っていう方がいいかな。
仕様考えて仕様書書いてプレゼンして設計書書いてレビューしてコーディングしてデバッグして・・・この最後の部分。デバッグが嫌い。すすすって虫退治が順調にすすんであっという間に完成!って時は苦にならないけど(あたりまえ)、原因わからなくてロジアナやデバッガとにらめっこして徹夜して・・・もう体力持たないよ。歳だもん。そんなん若いのにやらせて俺は仕様書書きに専念したいね。
でも趣味でプログラミングするのは好きですね。いろんな言語とか好きでperl、awk(*2)、sed(*3)、ruby(*4)・・・なんか普通だな。あとcとかc++とかjavaとかpascalとか・・・
perlってかなり昔、1993年2月にO'Reilly&Asociates,Inc.のらくだ本の日本語訳が出たときは速攻で買いました。
当時はPC-9801(私の使っていたのは互換機のPC-286VE(*5))で動かしてました。そんときはそういったスクリプト言語が大好きでいろんなのに手を出してあそんでいたっけ。
某大企業の部品表管理ソフトを膨大なawkスクリプトで作成したっけ。プリンタが京セラの名前は忘れたけどレーザープリンタ。LIPS(だっけ?)なんかと似ててコマンド送るとフォントとか変えられるんだけど、なんかコマンドがちゃんとした意味のある文字列で面白かったのは覚えてる。latex(*6)みたいな感じ。そのプリンタ用のテキストを出力する様になっていてリダイレクトでプリンタに送って目的とする部品表を印刷できるって仕組みだったっけ。
バッチとawkスクリプトとその他を組み合わせて、画面はエスケープシーケンスで作って。面白かった。環境変数のメモリを多く取っとかないとちゃんと動かないの。config.sysでshell=c:\command.com /e=2048とかね。あ、PC-9801だと起動ディスクがAドライブになっちゃうんだけど、PC/ATも使っていたからHDDをCドライブとするためにわざとFDDを入れっぱなしにしてFDDをAにしてHDDをCにしてました。ちなみにいまだにそのマシンは老いてじゃない置いてあって電源スイッチ押せば火もはいるよ。テプラでドライブ名が貼ってあってGまである。
たかが500MBのHDDを3分割して5"FDDが2ドライブ、外付けの3.5"が1ドライブ。らむ蔵(*7)っていうメモリカードドライブが一基。4MBのEMSの2MBをRAMディスクに割り当ててあってこれで全部でG。いまはlantasticでちゃんとwindowsからも見えるんだよ。すごいよ。nicはアライドテレシスだったと思う。高かったよ。いくらだったか忘れたけど。
なんでこんな骨董品がまだ家にあるかっていうと、Cバスのボードを使うICEがまだあるんですよ。もちろんデバッガは98(NEC PC-9801のことね。以後紛らわしいから"旧八")のDOS用。DOSは6.0にしてあるからだいぶ新しいじゃん。
windowsマシンで秀丸でコーディングしてdos窓でmakeして(旧八版もpc/at版もかわんない。画面があるわけじゃないからね。)旧八でデバッガ起動してネットワーク越しの実行ファイルとソースを見てデバッグすんの。
いまでもやってる?って聞かれると・・・実はそのチップ使った仕事をしばらくしてないから・・・最後にそれやったのは2年ぐらい前かな。でもそのチップのピギーバックとか書き込みツール(変換アダプタ)とか買っちゃったしね。それにそのシリーズのチップがいろいろ合計でまだ500個ぐらいは残ってる。おもちゃ作ってもそんなに使わないしねぇ。

ちょっと話が脱線。プログラミングってテーマに話を戻します。
私が一番始めにプログラミングってえのを体験したのは「casio fx502(*8)」っていうプログラミング関数電卓です。親父が測量設計の仕事をしていたので家にいくつもころがっていたのでした。
うちってまるで電卓博物館の様でしたよ。手動式のタイガー計算機(*9)も何台かあった。そのころはそいつと三角関数表で三斜面積とかST計算とかトラバー計算とかやってたんだね。親父にタイガーを使って平方根を解く手順を教わりました。小学生んときの話。
そして電気式の電卓がはじめて我が家に登場したのが・・・いつだったか忘れたけど、CASIOのバカでっかい計算機。蛍光表示管で平方根とかすると計算に時間がかかってたのを覚えています。計算中に表示がちらちらちらちらって変わって楽しかったよ。メモリ機能もあって"K"ってキーがあって、こいつがカチカチッってオルタネートなスイッチになってて下がっているときにメモリするんだったかな?8桁表示の四則演算+平方根+メモリで当時8万円以上したって言ってた記憶があります。今なら100円だね。

また脱線!
えっとfx502pのプログラミングなんだけど、最初のうちは「このプログラム入れておいて」って言われて「ソフトウェアライブラリ」って本を渡されました。その本の「測量編」は多分全部打ち込んだとおもう。要求は更にエスカレート。機能拡張にはじまってそのうち完全オリジナルのプログラムも何本もつくりました。すごーくソフトに興味を持っていた時だったのでなんの苦でもなく次の要求を楽しみに待っていたぐらいです。入力したらカセットテープに記録。社員全員が当時中学生のガキが作ったプログラム使って設計してたと思うと恐ろしいやね。
そのプログラミング関数電卓とほぼ同時期に「TK80(*1)」ってワンボードマイコンートレーニングキットみたいなものーも購入(買ってもらったんじゃないかな。)このときに始めてZ80に遭遇したのでした。
あれれ?混乱してますTK-85ってボードもありましたっけ?。NECが出したトレーニングキットがTK-80でしたよね??東芝が作ったトレーニングキットとかありませんでしたっけ?そっくりな名前の??サイトで探したけどなかったです。勘違いか。
方眼用紙に線ひいてコーディング用紙の原紙を作って親父に会社で大量コピーしてもらったっけ。アセンブラなんて無かったからニーモニック表見ながらハンドアセンブル。相対ジャンプでよくハマッテました。相対値計算するソフトをfx502で作ったのを覚えています。
このfx502pの流れはかなり続きまして、ドットマトリクス表示が出来るようになったfx602p。メモリアップしてメモリ数とステップ数が大幅アップしたfx-603pと全て愛用してました。もとい、fx-603pは現在でも使用しています。こいつ確か3万円ぐらいしたんだよなー。

このプログラミング電卓ってのはcasioの計算手順どおりにプログラミングして条件分岐はまるでマシン語そのまま。"IND(indirect)"なんて間接アドレッシングそのままだもん。このプログラミング電卓つかってるとアセンブラがわかるよ。
sharpのプログラミング電卓はbasicなんだよね。これはこれで面白かったけど私にあってたのはcasio方式。sharpのポケコンも持っていたけどそれほど愛着湧かなかったしね。
HPの逆ポーランド電卓はあこがれたけど買わなかった。買ってたらはまっていた事でしょう。HPの100LXにはずっぽしとはまりこみましたが。

我がプログラミング人生はまだ序章。fxの後にPC-8001、VXをはじめとする数々の旧八、appleII互換機、amiga、X68000、PC、Mac、数々のワンチップマイコンと続くのでした。

プログラミングって終わった後に絶対にやり直したくなるもの。「あーすればよかった」とか「きたねーコード」とか「とりあえず動いてるからいいか」とか・・
今までで最高のプログラミングは計2回だな。
二人の娘は最高の出来だよ!

プログラミングねた、まだまだあるよ。
続きはまた今度ね。
本日のbookmarks
*1 TK80 http://web.kyoto-inet.or.jp/people/s-oga/tk80/
*2 Gawk http://www.gnu.org/software/gawk/gawk.html
*3 unix man page : sed() http://unixhelp.ed.ac.uk/CGI/man-cgi?sed
*4 オブジェクト指向スクリプト言語 Ruby http://www.ruby-lang.org/ja/
*5 286VE 機能仕様書 http://www.geocities.co.jp/SiliconValley/5860/spve.html#TOP
*6 LaTeX: A document preparation system http://www.latex-project.org/
*7 PCカードアダプタ らむ蔵シリーズ http://www.adtek.co.jp/seihin/ami/
*8 プログラム電卓 FX-502P http://ay.nu/~sivaco/fx/fx_index.html
*9 懐かしのタイガー計算機 http://www.nn.iij4u.or.jp/~masa-s/tiger/tiger.htm

[<prev]  [index]  [>next]