Mobile Gear MC-MK32 (MK12, MK22, for DoCoMo) は ほぼ IBM-PC/AT に互換ですが、 ディスプレイ周りなどが微妙にアーキテクチャが異なります。 このため MK32 上で linux を動かすには、これらのデバイス分について 書き直したカーネルが必要です。
また MobileGear はハードディスクを持たず、PCMCIA スロットを一つだけもちます。 ここに ATA カードを挿してハードディスクの代りとしますが、 linux カーネルは pcmcia デバイスを直接はサポートせず pcmcia-cs に任せており、 pcmcia-cs を使えるようにするために initrd という仕掛けを利用しています。
ひとたび linux が立ち上がれば、ATA カードを使わず ramdisk のみで使うシステムにも出来、 この場合には PCMCIA スロットは LAN カードなどのために利用することもできます。
Mobile Gear MC-MK32 はほぼ IBM-PC に互換であり、
という資源を有します。 IBM-PC との違いは次の通り。
ブートディスクの MBR には 通常のブートマーカ(55AA) 以外に専用のブートマーカが書かれている必要があります。 このブートマーカは disk partition table の 4 つ目を破壊するため、 PocketLinux のブートディスク (ATA カード) では基本パーティションは 3 つまでです。
この専用ブートマーカは LILO による bootloader 登録後、rdev することで付けることができます。
TEXT VRAM を持っていません。Graphics Video RAM の配置は比較的素直ですが 従来のどの IBM-PC Graihpcs Adapter とも互換性がありません。
PocketLinux では自力でフォント展開するドライバが組みこまれています。
キーボード配列はほぼ旧 JIS 配列になっていますが、 scancode は 106jp と部分的に互換性がありません。 ハードウエア的にも、 IBM-PC/AT でも XT でもありません。 また、ハードウエアレベルではキーリピート/ディレイが固定(18.5cps, 500ms)です。
PocketLinux ではキーリピート/ディレイについては kernel 側でソフト的に発生させることができます。
10bit DAC を経由して出力します。DMA や割り込みはありません。 モデムポートとの間に干渉がみられ、 モデムポート利用時はサウンドの音が小さくなります。
pcsnd-1.2 を改造したドライバが組み込まれていますが、 0704 現在 8 bit 分のみ(16 bit PCM も 8 bit 化して出力)有効になっています。
8250 相当です。圧縮やエラー訂正のためのハードウエア支援はありません。 割り込みは IRQ 9 に固定されています。
現在モデムとしては使えますが、圧縮/エラー訂正はサポートされていません。
APM specification ver. 1.0 ですが、32bit BIOS は持っていません。 電池電圧の取得、CPU 速度の変更は可能ですが、 内部的に standby mode を持っていません。
現在ハードウエアを叩いて情報を直接得て BIOS を emulate しています。
/proc/apm
よりも詳細な情報を取得するために /proc/necmg が実装されています。
JIS X 0201 として 6x12, 8x16, 12x24, 8x8, JIS X 0208 として 12x12, 16x16, 24x24 を ROM に持っています。
MS-DOS の FAT 互換の ROM ディスクが一つあります。 またその中に doublespace 互換の圧縮ドライブが 2 つ入っています。
0704 から doublespace patch(dmsdos) が入り、 圧縮ドライブへのアクセスが可能になりました。
専用カスタム LSI のようです。16550A 互換 dongle として扱われます。
割り込みは IRQ 4 に固定されており、
IrDA (/dev/ttyS1) とシリアルポート (/dev/ttyS0)
は同時には使えません。
0829 版で IrCOMM, IrLAN がサポートされました。 linux-ir-1998-10-21 のモジュールを使います。