OAPK3用EMSマネージャ作ってみました。
といっても、HP100LX用のEMSメモリマネージャにパッチを当てただけなんですが。
もうほとんど需要もないでしょうね。
Expanded Memory Specification の略で、メモリを拡張するときの規格の一つです。ただ、提唱したのがロータス/インテル/マイクロソフトの3社なので、この規格に対応しているソフトが他の規格よりも多いというのがあります。
特に新しいことができるようになるわけではありません。
対応しているアプリケーションによっては、ちょっとだけ扱えるファイルサイズの上限が大きくなるものがある、と言った程度です。
VZ VWX NIFP MIEL などなど。
一方、現状では一部サポートしていないファンクションコールがあるためか、ATOK8は使えないようです。
私にとって一番使用頻度の高いVz使用時のメモリ使用量の圧迫を解消するために作ったようなものです。
メモリ状況は別項参照。
私がうれしかったのは、NIFP でかなり大きいログを閲覧中でも、Vzを起動してレス書きができるようになったことです。もちろん、NIFP でもEMSは使えていますので、いくらか大きいログも読めるようになりました。(^_^)v
私は DIET は非常駐で使っているのでわかりませんが、VWX も EMS に追い出しています。これでもいくらかコンベンショナルメモリが拡がっています。
あと、MIEL でも閲覧可能行数が増えてくれてうれしいです。
メインメモリーを削ってページフレームに割り当てています。
EMS使用時のメモリマップは以下のようになります。
VMAP Version 2.01 Copyright (C) 1989-91 by c.mos addr PSP blks size owner/parameters hooked vectors ---- ---- ---- ------ ------------------------- ----------------------------- 20E6 sys 1 150256 <config> 4596 <-- 2 3616 command 22 23 24 2E 467A <-- 1 432 DCTRAP ver1.00 Jun 22 19 4696 <-- 1 4048 -dB:\ -pF -n00 4794 <-- 1 1648 VWX 1.08b -Z2 -L8192 -X3 2F 47FC <-- 1 3840 vz 1.60 -Z 21 29 48ED-C000 1 487712 <free> ----- EMS ver4.0 (frame: 3287h) ----- handle pages size name ------ ----- ------ -------- 1 2 32k for Vwx! 2 12 192k VZ free 2 32k total 16 256k
ちなみに、以下はEMS未使用時のメモリマップです。
VMAP Version 2.01 Copyright (C) 1989-91 by c.mos addr PSP blks size owner/parameters hooked vectors ---- ---- ---- ------ ------------------------- ----------------------------- 20E6 sys 1 80576 <config> 3493 <-- 2 3616 command 22 23 24 2E 3577 <-- 1 432 DCTRAP ver1.00 Jun 22 19 3593 <-- 1 4048 -dB:\ -pF -n00 3691 <-- 1 25040 VWX 1.08b -Z2 -L8192 -X3 2F 3CAF <-- 1 177792 vz 1.60 -Z 21 29 6818-C000 1 360048 <free><config> の部分でページフレームを確保するので、この部分の使用量が 70KByte 増えますが、Vzの常駐量が 170KByte 以上減るので、随分とメモリが広くなりました。
通常、Vzでコンソール出力を取り込むことに設定してある方が多いと思いますが、オプションでこの機能を停止させておかないと、コマンドラインに降りたり、Vzを常駐させたりしたときに、DOS プロンプトがとてつもなく遅くなります。
ちょっとしたベンチマークをとってみたら、画面表示に通常の3倍から7倍の時間がかかるようになりました。でも、Vzのエディットモードのように、DOS の機能を使わず自力で画面表示をするものであれば、それ程速度は低下しません。
自作ソフトのコーナーにあります。フリーウェアとして公開しています。
というか、原作者の方より、改変版を作るにあたり「フリーウェアとしてソース共々公開すること」と言う条件を課されてしまいました。この、原作者の意向は尊重したいと思います。