20数年前の話。
今でこそほとんどがWindows(と一部MacOS・・)に収斂されているが、当時は現在と違ってパソコンもメーカ毎にOSも含めて群雄割拠していた時代。したがって処理をOSに依存しないのでかなりの部分がAssemblerを使って実現できた(今と違って標準化なんぞは糞食らえの時代であった)
OAブームとやらで私たちも、とあるメーカ(今はもう無いが)の8Bitパソコンで事務処理のプログラムをBasic(懐かしい・・)やらAssemblerやらCOBOLでごりごり力任せで組んでいた頃の話。
部下が、とある印刷メーカの仕事でRS232CインターフェースでOCR印刷のドロップアウトカラーの計測システムを開発していた。
パソコンにドロップカラー印刷の反射をフットスイッチオンをトリガーとして読み取り画面上に色分布をグラフ表示する、規定範囲外は警告を画面表示するという代物。
プログラムはAssemblerで組み、インターフェースボードはICやら何やらをユニバーサルボード上に演算回路ともども設計・試作しテストしてOKとなった。
みんなでテストしても問題ないことを確認し、ボードの量産化(数十台だったと思うが)のために外注メーカに設計書・回路図共渡して発注した。
数週間後にボードが納品されその部下が量産したインターフェースボード他を開発用パソコンにセットしAssemblerプログラムを組み込む(当時はインストールなんて言っていなかった気がする?)。
いよいよ量産品のテスト、本人はにこにこしながらテストの準備、そして電源ON。
私はいつものように「パソコンの後ろから煙が出てるぞ~」と冗談を言っていた。本人は一生懸命テストピースのOCR帳票と画面をにらめっこ、しいよいよテスト、「冗談はやめてよ~」などと言いながら・・・
ところが、他のメンバーが「ほんとに煙が出てるぞ!」と大騒ぎ、
あわてて、パソコンの電源を落とし原因究明(本人真っ青!!!!)
よく調べてみたら回路をエッチングするときに外注先が裏返しに焼いたらしい、ほぼ対照の回路なので開発者本人も気づかなかったようだ。
対策としてはエッチングされた回路の数箇所の回路を切断して裏表を数本ジャンパー線で半田付けすることに。(とりあえず納期は間に合いそうなので、ホッ)
枚数が多いので5名位で手分けして、内職のようにカッターでボード上の回路を切るそして切断した回路を裏表リード線で半田付け。
しょうがないので納品用の量産ボード全数チェックで徹夜。
しかし納品してからでなくて良かったー(滝汗)