1989年 MS-DOS<=>Appleマッキントッシュをピアツーピア接続する擬似LAN「XIN/XOUT」の開発
1990年 MS-DOS<=>Appleマッキントッシュをピアツーピア接続する擬似LAN「XIN/XOUT II」の開発

インターネットはまだ研究の存在であり、Ether-netすら日本では普及していない時代。ハードディスクは黎明期で、容量20MBの物が販売を開始したところ。日本市場はNEC製のPC9801(MS-DOS機)が主流で、パソコンの記憶装置が5”フロッピーディスクの2基がカタカタ音を立てて動いていて…。その頃、ようやくAppleマッキントッシュ製も日本市場で普及し始めたのですが、スティーブ・ジョブス氏のデザイン優先、初物食いが仇をなして、MS-DOS(Windowsの前身)のPC9801の5″とMacの3.5″のフロッピーしかないAppleマッキントッシュ製ではまったく互換性がない。つまり実用的にはフロッピーでのデータ交換ができない状態。この製品はApple社の排他性から生まれた隙間製品とも思えるものだった。とは言うものの、PC9801とMacとの間でデータ交換を行いたい。2機種のパソコンを通信用ケーブルで接続して、データ通信できれば良いのではないか!?そういうコンセプトから開発、制作したのが「XIN/XOUT」。

当時、オフィスでは業務用にMS-DOS搭載のPC9801が普及していたが、伝票や文章作成など、単純な文字ベースの処理はできたが、画像の解像度が低く、DTPすなわち、イラストデザインでは不向きなもの(どれくらい単純化されているかいうと文字は1倍と2倍角のみ、画像は16色までという体)で、活用できないモノ。解像度を必要としたマニュアル作成、印刷物など、イラスト・デザイン業界では急速にAppleマッキントッシュ製が普及し始め、OA用途でPC9801、印刷、イラスト、デザイン用途ではMacと住み分けする形で使われるようになった。つまり気の利いた事務処理などのオフィス業務ではPC9801、ビジュアルを要する印刷向けデザインではMacが共存する状況になった。

では両者でデータのやり取りをどうするか?・・・実用的には手段がなかったわけです…。

多くの顧客にとっては、PC9801から吐き出された5″フロッピーディスクによるデータ渡しが都合が良い。印刷物を作成するイラスト・デザイン会社ではMacが都合良い。PC9801に3.5″フロッピーディスク装置を接続すれば良いと思うところですが、Macではフロッピーのフォーマットが独自仕様のもので、PC9801とは互換性がない。簡単に言えば、フロッピーディスクで常識的にメディアコンバートは不可能な状態でした。厳密にはMacのスーパードライブというフロッピーディスク装置を使用すると3.5″MS-DOSフォーマット3.5″Macフォーマットの変換が出来るのですが、このスーパードライブ、価格は10万円近くして気軽に買える物ではなかった。またMacはその解像度を表現するにはハードディスクがないと動かない。つまりフロッピーに収まらない、入らないデータ処理が苦手だった。このような課題、情報処理の問題を解決するために擬似LAN「XIN/XOUT」を開発、制作。「XIN/XOUT」は2機種のPCをケーブルで接続すればディスク装置の内容を自由に転送できるソフトウェアとして実現。このソフトは大きな需要がありました。

このソフトウェア開発は次のテクノロジーを模索するために動員し、最高速度38400bpsを実現した記憶がある。通信速度は同機種間では更に速くできるが、NEC、IBM、Appleのそれぞれを指定できる速度となると、38400bps以上では共通する速度がないという問題があり、この現象から開発の研究へ舵をきった。

  • ・MS-DOS上のC言語でアプリ層を作る。
  • ・PC9801が採用しているインテルi8086用のアセンブラ。

MS-DOSの標準機能は通信機能が極端に遅いため、ハードウェアを直接制御する必要がある。

  • ・マッキントッシュ上のC言語でアプリ層を作る。
  • ・マッキントッシュが採用しているモトローラ MC68000用のアセンブラ。

MS-DOS同様、標準機能では通信機能が極端に遅いため、ハードウェアを直接制御する必要がある。

MS-DOSとマッキントッシュでは何もかも違う…。2つの異なるコンピュータのプログラミング、加えてアセンブラで組む必要があり、2倍、2倍に合せて4倍の手間隙かかってしまって…。互換性がないというのはなんとも罪であるとつくづく感じる開発でした。

解決した技術的問題点。アメリカ製のコンピュータの落とし穴。

マッキントッシュにせよ、IBM-PCにせよ、共通する欠点がある。当時のパソコンはRS232Cというデータ通信方式が主流だった。パソコン本体には拡張用コネクタとして、プリンタ用と電話回線に繋ぐデータ通信用のコネクタがある。マッキントッシュではRS232Cと互換性のあるRS422というのを採用していた。この通信機構、単体では問題なく動く。しかしデータ通信しながらディスクに書き込みをすると、通信データが消えてなくなる。つまり通信の受信データをディスクに保存すると、後続の通信データが櫛が欠けるように消えていく。結論を言うとデータ通信の現実的な総合テストをしていない。この現象はIBM-PCで発見し、ヤレヤレと思った矢先、マッキントッシュでも同様であったため、あぁこれがアメリカ人の気質なのかと嘆息した。IT先進国のアメリカと言えども、良く観ると細部が雑に見える。後日、Apple社のソフト開発は多くが英国で行っていると聞いて、納得した次第だった。

解決した技術的問題点。日本製のコンピュータの落とし穴。

通信ポートのデータ消失問題はNEC製PC9801では発生しない。ところがMS-DOSがサポートする通信速度が、確か9600BPSか19200BPS(BPSは1秒間に通信できるビット数、単純には1/10にした値がバイト数と考えてもらえば良い)。例えば9600BPSを指定しても実際には2400~4800BPSしか速度が出ない。総合テストをしっかりやっているのだと思う…だけど速度は指定した値の半分しか出ない。通信用LSIを直接制御すれば38400~57600BPSの速度がスルスルと出る。なんというのか、プログラム1行1行を考えて作っているか否か、いささか疑問を感じる。こういう所が日本人にも詰めの甘さを感じた。

アップグレード改良版の擬似LAN「XIN/XOUT II」の制作。

「XIN/XOUT」の改良版のソフトウェア。前作は当時、一般的であったコマンドライン形式であった。与えられた開発期間は1ヶ月程度。開発工数を考えると手一杯の期間だった。しかしGUIに成れたマッキントッシュユーザにはその形式が辛いということで、GUI化したのが本ソフト。マッキントッシュ用の「Lightspeed C」はC++というか、C++的という過渡期C++を装備していた。これを使いGUIアプリを実装したもの。これが電机本舗で作った最初のGUIソフトとして誕生した。