月刊アスキー1988年12月号:Product Showcase:メルコ EM-2000

月刊アスキー1988年12月号(株式会社アスキー発行)より。

MELCO(Buffalo) EM-2000

SHOWCASE4 98用ハードウェアEMSボード EM-2000

メルコが発表した、PC-9800シリーズ用のEMS(Expanded Memory Specification)方式のRAMボード「EM-2000」が届いたので、紹介しよう。

メモリ拡張の歴史

EMSとは、MS-DOS上で640Kbyte以上のメモリを利用する方式で、米国のLotus社、Intel社、Microsoft社の3社が提唱しているもので、最高で32Mbytesまで利用することができる。

PC-9801用のRAMボードは、最初、メインメモリを標準(128Kbytesや384Kbytes)から640Kbytesへ増設するものだった。やがて、メモリの低価格化に伴って、大容量のRAMボードが出現し、現在では1〜4Mbytesのものが発売されている。これらは、メインメモリの1バンク(128Kbytes)を切り替えて使うもので、「I/Oデータ方式」として統一されている。

ソフトウェア(ドライバ)も、最初は単純なRAMディスク用だったが、キャッシュ機能やプリンタスプーラが付加されたり、FDDと同様にdiskcopyができるものまで出てきた。SRAMを使った不揮発性ボードでは、ボードからMS-DOSを起動できるものもある。

次に出てきたのが、プロテクトモード用のRAMボードだ。80286や386でないと利用できないが、MS-DOS Ver.3.1にも、プロテクトモード用のメモリ(1000000H以上の番地に位置する)を利用するための「RAMDSK.SYS」というドライバが付属するようになった。

プロテクトモード用とはいっても、RAMディスクやキャッシュとして使う分にはバンク切り替え方式のメモリと同じだが、将来、OS/2等のプロテクトモード用ソフトウェアを考えて、出現したものだ。

そして、PC-9801RAとMS-DOS Ver.3.3の発売によって、EMS方式によるメモリの拡張が「公認」された。

EMSの利点

EMS方式によるメモリ拡張の利点は、MS-DOSのシステムメモリ(ノーマルモードでは640Kbytes,ハイレゾモードでは768Kbytes)の制限を取り払える点にある。EMSに対応しているアプリケーションは、MS-DOSのシステムメモリに帯するアクセスと同様に拡張メモリを使え、ソフトウェアを配置したり、データ領域として利用できる。

具体的には、図1のように、アドレス空間(1Mbytes)内にウィンドウを設置し、そこから拡張メモリをアクセスする。この物理アドレス上のウィンドウは、「ページフレーム」と呼ばれ、その中に16Kbytes単位の「物理ページ」が定義される。対して、拡張メモリ側は「論理ページ」と呼ばれ、物理ページに割り付けることによって、アクセス可能となる。方法からいうと、いわゆるバンク切り替え式ボードと同様だが、1ページは128Kbytesではなく、16Kbytesである。

現在、EMSに対応しているアプリケーションとして有名なのがLotus1-2-3である。この場合、データ領域として拡張メモリを利用するので、大きなスプレッドシートが利用できる。

また、MS-DOS Ver.3.3のAIかな漢字変換にも対応している。こちらはプログラムの一部を拡張メモリ上に配置するので、約60Kbytes分メインメモリを解放することができる。MS-WINDOWS Ver.2.0/386も対応しており、より多くのアプリケーションを同時に起動できるようになる。WINDOWS用の日本語マルチフォントROMは、拡張メモリがないと利用できない。

利用方法

EM-2000で利用する物理ページ領域は、C0000Hからの拡張ROM領域なので、サウンドボードを利用している場合は、ボード上のスイッチを変更し、ROMをKILLにしておく必要がある(N88-BASICからはサウンド機能を利用できなくなる)。それ以外のサードパーティから市販されているボードでも、この領域を使っている場合は変更が必要だ。これは、日本電気のボードとMS-DOSのEMSドライバを利用する場合も同様である。EM-2000側の設定はほとんど必要なく、PC-98XL/XL2ではジャンパの変更を、2枚目以上で利用する場合は枚数指定をロータリースイッチで行う。

次にソフトウェアだが、EM-2000は、ボード上でハードウェア的にEMSをサポートしているが、制御用のドライバをMS-DOS上で組み込む必要がある。これは「MELEM.SYS」という名称で、従来のドライバと同様にconfig.sysで指定する。簡易設定プログラムが付属しているので、メニューに従って自動組み込みも可能である。

ハードウェアの違いのため、MS-DOS Ver.3.3に付属している「EMSDRIVE.SYS」は利用できない。I/Oデータ方式やプロテクトモード用メモリでは、異なるメーカーのボードとドライバを組み合わせて利用できたが、EMSではそうはいかない。ただ、ボードとドライバの組み合わせは切り離せないが、アプリケーションから見ると同じになるので、支障はない。

また、EM-2000には、EMS方式の拡張メモリを使ったキャッシュディスクやRAMディスクのドライバも添付している。2Mbytes分をそれぞれに割り当てて、効率よく活用できるようになっている。

従来方式のメモリ拡張ボードと組み合わせて利用する場合は、以下のようになる。

バンク切り替え方式のボード

揮発型

EM-2000に付属のドライバを使って、EMSメモリ領域として利用することができる。EM用のドライバで両方を一緒に管理できるわけだ。キャッシュやRAMディスクを使用したい場合、バンク切り替え方式のボードを優先して取り付け、EMSによる拡張にはなるべくEM-2000を使うようになっている。バンクメモリの一部をユーザーズメモリの拡張に利用している場合、そのまま利用できる。

不揮発型

不揮発型ボードの特性を生かしたい場合は、既存のドライバをそのまま利用し、EM用ドライバと共存が可能。揮発モードで利用するバイは上記と同じ。

プロテクトモードのボード

既存のドライバやMS-DOSに添付のドライバで利用でき、EM用ドライバと共存可能。

以上のように、どのメモリを利用していても、それらが利用不可能になることはない。ただし、既存のキャッシュディスクとEM用キャッシュディスクは共存できない。

従来のRAMボードでもEMSエミュレータがあったが、EM-2000との違いは以下の3点だ。

  1. ソフトウェアエミュレートと、ハードウェアの速度の差がある。
  2. エミュレータと比べて、128Kbytes分メモリを多く使える。
  3. EMSのバージョンがエミュレータは3.2だったが、4.0となり、WINDOWSで利用できるようになった。

さて、どういう目的で、このボードを選ぶかということになるが、まず競合するのは、プロテクトモード用RAMボードということになる。286や386を搭載したマシンでは、MS-DOS Ver.3.3に付属のEMSドライバが使えるからだ。OS/2を利用する可能性があるのなら、プロテクトモード用を選んだ方がいいだろう。

次に8086やV30のみを搭載している機種でEMSを使うには、純正ボードではPC-9801-53(1Mbytes,8万9000円)、同54(53増設用1Mbytes,6万円)を買って、MS-DOS Ver.3.3でのみ利用可能となる。それに比べて、EM-2000は2Mbytesで7万4800円と安価で、MS-DOSのバージョンは選ばない。つまり、MS-DOS Ver.3.1上でWINDOWS Ver.2.0を使いたい場合はEM-2000を使うしかないわけだ。

また、MS-DOS上のアプリケーションも大型化の傾向があり、EMS対応のものが増えてくる。ジャストシステムのAACは既に対応が決まっており、一太郎Ver.4と花子Ver.2を統合環境で使うには、EMSが不可欠である。FrameWork IIもEMSに対応の予定という。

また、AIかな漢字変換のように、メモリに常駐するユーティリティ類も、メモリを圧迫しないように、EMSに対応することが考えられる。逆に、そういった対応を、どのソフトにも行ってほしくなるボードである。

表1 基本仕様

価格 7万4800円
規格 LIM EMS Ver.4対応、2 Mbytes 搭載
対応機種 PC-9800シリーズ(XA,LT,LVでは利用不可), XL, XL2ではノーマルモードのみ
利用環境 メインメモリ 640Kbytes以上
制限事項 PC-9801UX,CV,UV2/21ではサウンドボードの設定変更が必要で、N88-BASICからサウンド機能を利用できなくなる。UV11では設定変更できないので、ページフレームが小さくなる。


inserted by FC2 system