PC-386NOTE A/W で不揮発 EMS を実現
1. というわけで
まず不揮発化の原理ですが、これは非常に簡単で、RAMボードをRAMボー
ドドライブに設定しておけば、初期化されません。
その上で、EMSドライバ組み込み前に、設定をRAMボードドライブから
EMSに変えてやればいいわけです。
これに加えてレジューム有効時は int 02(のてWは int 0e)をフックして、
レジュームから復帰後に改めて設定を変更します。これは、レジューム復帰後は、
設定が元のもの(すなわちRAMボードドライブ)に戻っていて、そのままでは
EMS等にアクセスした瞬間に、ハングアップするからです。
このときの常駐サイズは 144 バイトで、レジュームを有効にしているときだ
け常駐するはずです。
これによってレジュームの信頼性が大幅にアップしたはずで、理論上(どんな
理論だ?)EMSだろうがXMSだろうがUMBだろうが、大丈夫(オオウソ)
なはずです。
また、MP386を使うと、仮想EMSの上に偽装EMSできて、さらにレジ
ュームもできます。(とはいうものの、仮想EMSは遅い。NO WAIT のRAMが
欲しい。)
ただし、FEMSが常駐した状態で一部の高速リブートプログラムを使用する
と、正常に電源を落とすことができなくなります。これは、リブート時に割り込
みベクタの再設定が正しく行われていないことが原因です。
このような場合でもVオプションを設定することにより問題を解決できると思
います。
また裏技として、RAMボードドライブとEMSの同時使用ができる、という
ものがあります。詳細については、FEPSONの NOTE&BOOK の会議室にいく
つかレポートが有ります。