12.5. WinModem

モデムを見ると、 そこには中央処理装置と専用のデジタルシグナルプロセッサがあります。 また、最近の PC を見ると、 そこには大きな CPU があり、 サウンドボードは汎用の DSP を搭載しています。 変だと思いませんか? 外付けモデムと、ハードウェアがダブッてますけど、 そうしないといけないのでしょうか?

‘WinModem’ というのは、 PC の構造を若干拡張して、 その中にモデムの CPUDSP を組み込んだものです。 そういうモデムはもともと、 Microsoft Windows のデバイスドライバを組み込んで出荷しているものしかなかったので、 "WinModems" といいます。 これらのデバイスドライバのせいで、 "WinModem" はヘイズの AT 互換モデムにシリアルポートが付いているものだ、 という錯覚が起きました。長い間、使えるものといえば、 Windows 版のドライバしかなかったのです。 でも今では Linux 版のデバイスドライバも提供している業者が何社かあり、 そのモデムを ‘LinModems’ と洒落ています。

LinModem はたぶん、 Linux のコンソールに使えます。必要なのはせいぜい、 ソースコードを変更して、 そのモデムの AT コマンドエミュレーションをダム化することと、 カーネルを再コンパイルすることくらいです。

しかし、ブートローダーは非常に限られたソフトウェア環境で動作しており、 簡単なシリアルチップのサポートですら悪戦苦闘しています。 ブートローダーの中には、割り込み処理さえ無いものがあることを考えると、 LinModem の複雑な DSP 処理を行なわせるのは、 実用の範囲を優に越えています。