Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- YSTEALTH.DOC ySTEALTH 取扱説明書
- もうひとつのステルスドライバー
- Yet another Stealth Driver
- ySTEALTH
- 取扱説明書
- Ver0.93(β1)
- 1. どんなものか
- DOS環境も捨てた物ではありません。いままで数多くの有用な・愉快
- なTSRが発表され、私たちの愛すべきCUI環境を妖しく彩ってきまし
- た。しかし何に付けてもメモリを要求される今、DOS環境においてはフ
- リーメモリはなんとしてでも広く確保しておきたいものです。そこでTS
- RにはUMBに退避願うわけですが、そのUMBが足りなくなっている人
- も多いかと思います。もしくはUMBが寸断されているが為に、TSRを
- ロードする順番に四苦八苦している人もまだまだいるでしょう。
- 少しでも多くUMBを確保するためにシステムROMの一部を強制的に
- UMBに割り当てるのは、もはや常套手段といえます。機種によって差が
- ありますが、不用ROMは50Kバイト程度ありますのでだいぶ広く使え
- るわけです。しかしこのドライバーを使えばさらに多くのUMBを、しか
- も連続した巨大UMBを確保することができます。
- 連続したUMBを確保するために、EMSのページフレームに場所を譲
- ってもらいます。かわりにEMSページフレームを不用ROMのところに
- 配置します。EMSページフレームは通常64Kバイト必要ですから、不
- 用でないROM領域も隠してしまいますが、このドライバーは必要に応じ
- てROMとEMSを切り替えるので大丈夫です。
- 2. 動作確認環境とか
- o 対象
- PC-98x1 シリーズのノーマルモード
- 386 以上のCPUを搭載していること
- 286機にCPUアクセラレータを載せた場合でもOK
- メモリマネージャは以下の物を推奨
- VEM486 (C)K.Ogino
- ただしその他のメモリマネージャも使用可能
- o 開発機種
- PC-9801RX2 + HRX-12T(Cx486DLC) + x486
- o 動作確認環境
- PC-9801RX2 + VEM486 (Version 1.26)
- PC-9801RX2 + x486 (Release 7)
- PC-9801RX2 + tdpmi98 (version 0.16.00)
- PC-9821Ap2 + x486 (Release 7)
- PC-9821Ap2 + MEMORY SERVER (Rel.2.05)
- 3. 使用法
- 3.1 導入にあたって
- 当 ySTEALTH の導入にあたっては次の2ステップが必要です。
- メモリマネージャの設定
- ySTEALTH の設定
- 導入にはいくらかの試行錯誤が必要となる可能性があり、その途中でシス
- テムが立ち上がらなくなる場合があります。(デバイスドライバの組み込
- み中にハングアップするetc.)その場合にすぐに元の環境で立ち上げるこ
- とができるように、あらかじめコンフィグセレクタなどを利用するように
- お勧めします。
- 3.2 簡易インストール
- このセクションでは大雑把に、とりあえず導入する方法を述べます。
- 必ず一度全ての工程を把握してから導入を開始してください。
- 環境によってはこれだけでは一部に支障が出る可能性もあります。またさ
- らなるチューンナップを希望する方もいるでしょう。その様な場合には以
- 降のセクションを参照してください。
- 3.2.1 メモリマネージャの設定
- EMSのページフレームを E800 EC00 F000 F400 の4つに設定してくださ
- い。また VEM486 ではBIOSRAM化を、 x486 ではアンマップを有効
- に、それぞれ設定する必要があります。
- メモリドライバに指定するオプション
- VEM486(VEM486.EXE) /E=E8 /R=F9-FF
- x486(XEMS.SYS) /FE8ECF0F4 /U
- tdpmi98(TDPMI98.EXE) -EFE8-F7
- MEMORY SERVER(VMM386.SYS) /W=E8-F4
- ※メモリーサーバーは、製品そのままの状態では高位不用ROM領域にE
- MSページフレームを設定できません。なんらかのパッチを当ててこれを
- 回避しない限りは使用できません。
- あとはA0からE7までの範囲で好きなだけUMBを確保してください。
- その他のオプションはお好みでどうぞ。
- そのまま(リブートせずに) ySTEALTH の設定を行ってください。
- 3.2.2 ySTEALTH の設定
- 次に ySTEALTH を config.sys のメモリマネージャの後できるだけ近くに
- 記述します。
- DEVICE(HIGH)=YSTEALTH.COM [/N|/R] [/J] [<numbers>]
- とりあえず、 /R だけ指定すれば動くと思います。それでだめなら /R 18
- としてみてください。
- ※ /R オプションで動作させる場合には別途 RAMBIOS.COM の設定が必要で
- す。
- 割り込み番号(<numbers>)は特に必要ありませんが、不都合が出た場合に
- は適宜増やしてください。
- 例えば、
- ・IDEモーター制御のあるマシンでは、 17
- ・グラフィックを使用するとおかしくなる場合には、 18
- ・RS-232Cを使用するとおかしくなる場合には、19
- ・プリンタ・PCMCIAを使用すると以下同文、 1A
- ・FDD・HDDを以下同文、 1B
- ・日付・時間の取得設定・タイマ割り込みを以下同文、1C
- という具合です。
- 3.2.3 RAMBIOS.COM の設定
- 前節で ySTEALTH に /R オプションを付ける設定をした場合、さらに同梱
- の RAMBIOS.COM を使用する必要があります。
- ただし VEM486 は同じ機能を実現できますのでそちらを利用して下さい。
- ( VEM486 に /R=F9-FF と指定して下さい。)
- さて、 config.sys の ySTEALTH の前の行に次の指定をしてください。
- DEVICE=RAMBIOS.COM F9-FF
- 導入を開始する前に、コマンドラインから、
- prompt>RAMBIOS FF
- と実行してエラーメッセージが出ないことを確認するようにしてくださ
- い。
- 3.2.4 設定例
- ・PC-9801RX2(with 486) + VEM486
- DEVICE=VEM486.EXE /E=E8 /U=C0-DF /M=DC:A5 /C /P /R=F9-FF
- DEVICEHIGH=VEMEMM.EXE
- DEVICEHIGH=YSTEALTH.COM /R
- ・PC-9801RX2(with 486) + x486
- DEVICE=X486.SYS /H
- DEVICE=XEMS.SYS /P40 /RDC /FE8ECF0F4 /IC0E0 /H /V /U
- DEVICE=RAMBIOS.COM F9-FF
- DEVICEHIGH=YSTEALTH.COM /R
- ・PC-9801RX2(with 486) + tdpmi98
- DEVICE=TDPMI98.EXE -E+ -EFE8-F7 -UC0-DF -RDC:A5 -DBPA6:1
- DEVICE=RAMBIOS.COM F9-FF
- DEVICEHIGH=YSTEALTH.COM /R
- ・PC-9821Ap2 + x486
- DEVICE=X486.SYS /H
- DEVICE=XEMS.SYS /P120 /FE8ECF0F4 /IC0D8DCE0 /H /V /U
- DEVICE=RAMBIOS.COM F9-FF
- DEVICEHIGH=YSTEALTH.COM /R
- 3.3 チューンナップ
- ここではさらに環境をいじりたい方のための情報を提供します。かならず
- 導入に成功して、安定な環境が得られてから試してみてください。導入が
- うまく行かなかった場合や、何らかの不都合が生じた場合には、よりあと
- のトラブルシューティングを参照してください。
- 3.3.1 もっとUMBが欲しい!
- EMSのページフレームをもっと後方に配置して、さらにUMBをとるこ
- とも可能です。
- 次の手順でUMBの拡張を試みてください。
- 「EMSのページフレームを1つずらす(E8→E9…→F0)
- |安定に動作するかチェック
- 繰り返す
- 最終的に空いたスペース(E8~E?)をUMBにする
- ただし、ページフレームを EA00 より後ろからとると、グラフLIO(G
- LIO)が使用できなくなります。( E900 からならば大丈夫)GLIO
- を使用しているソフトウェアは最近では稀になりましたが、この点には留
- 意してください。
- またメモリドライバによってはページフレームを16Kバイト境界( E8
- の次は EC )からしかとれないものもあります。
- もうひとつの手段として、EMSのページフレームをそのままにしておい
- て、 F800 からUMBをとるやり方もあります。こちらの方が危険性は高
- いのですが、条件によっては先程のやり方より安定で広いUMBをとるこ
- とができる場合があります。このとき、UMBにした領域は強制RAM化
- の範囲から外すようにしてください。
- 3.3.2 プロテクトメモリを節約したい!
- VEM486 に /R オプションを付けて使用している場合、簡易設定よりもプロ
- テクトメモリの消費をおさえることができます。
- VEM486 のBIOSRAM化オプション(/R)に指定する範囲をせばめるこ
- とでその分のプロテクトメモリを節約できます。どのくらい狭めることが
- できるかという事は同梱の YSDINFO.COM を使って調べます。
- ySTEALTH 環境において YSDINFO.COM を実行して得られる情報のうち、最
- 後の
- Patched Pages : FB,FC,FD
- が、実際にRAM化を必要としたページです。(実際にはさらに FF もパ
- ッチしているが、必ずしも必要ではない)そこで、 VEM486.EXE のオプシ
- ョン指定を(この例では)
- /R=FB-FD,FF
- とすれば、12KBのプロテクトメモリを節約できます。この実際にRA
- M化が必要なページは機種によって異なりますので、各自適切な値を設定
- するようにしてください。
- なお、 RAMBIOS.COM の設定値も同様に変更できますが、プロテクトメモリ
- の消費量は変わりません。
- 3.3.3 例
- 以上の説明を実践した設定例です。
- ・PC-9801RX2(with 486) + VEM486
- DEVICE=VEM486.EXE /E=EC /U=C0-DF,E8-EB /M=DC:A5 /C /P /R=FB-FD
- DEVICEHIGH=VEMEMM.EXE
- DEVICEHIGH=YSTEALTH.COM /R
- (E8 ~ EB EC ~ EF F0 ~ F3 F4 ~ F7 F8 F9 FA FB FC FD FE FF)
- (<--UMB-> <---------------EMS-----------------==-RAM-> )
- ・PC-9801RX2(with 486) + tdpmi98
- DEVICE=TDPMI98.EXE -E+ -EFE8-F7 -UC0-DF -UF8-FA -RDC:A5 -D-
- DEVICE=RAMBIOS.COM FB-FF
- DEVICEHIGH=YSTEALTH.COM /R
- (E8 ~ EB EC ~ EF F0 ~ F3 F4 ~ F7 F8 F9 FA FB FC FD FE FF)
- (<---------------EMS---------------> <--UMB-> <-----RAM---->)
- 3.4 なんだかよくわからないセクション
- DEVICE(HIGH)=YSTEALTH.COM [/R|/N] [/J] [<numbers>]
- /R RAMBIOS または VEM486 を利用して安定動作を図ります。
- /N BIOSにパッチを当てずに動作を試みます。
- /J より少ないパッチを当てて動作を試みます。
- <numbers> 必要に応じて、フックする割り込み番号を指定します。
- 複数指定する場合には , で区切ります。
- /R /N のいずれも指定しなかった場合には、
- NEC方式のRAM化BIOSにパッチを当てて動作します。
- /R を指定する場合には別に VEM486 に指定をするか、
- 同梱の RAMBIOS.COM が必要です。
- ○割り込み番号の指定
- IDEのモーター制御機能があるマシンでは
- 場合によっては 17 を指定する必要があります。
- もし /J オプションを使用するならば、
- NEC機の場合は少なくとも次の指定が必要です。
- 480ライン表示できる機種 → 18
- DPMS対応の機種 → 1F
- より正確には同梱の YSDINFO.COM を実行結果を参考にします。
- ただし残念ながらあまり当てになりません。
- *******************< PC-9801RX2での実行結果 >*******************
- BIOS maker : NEC
- BIOS type : ROM
- caller for notes
- --------- ---- --------- -- ------------------------------------
- FD80:0AE3 Jump F990:2C00 18 Graphic BIOS / Graphic LIO
- ****************************************************************
- ↑ ↑ ↑
- Type No Notes
- 今関係あるのは Type と No のところです。
- Type Call Jump Hook Leap Deal の5種類
- No 関連のある割り込み番号(関係ない・特定できない場合は空白)
- Notes 説明(未知のものは空白)
- まず /J を指定した場合には Jump (もしくは Leap )の行に表示される
- 割り込み番号を全て指定します。
- まぁ今の所 18 と 1F しか可能性はないです。
- それから /N を指定した場合にはさらに Call (または Hook )の行の
- 割り込み番号も指定する必要があります。
- 可能性としては 18,1A,1B,1F があげられます。
- さらにEPSON機では必ず 18 を指定してください。
- 4. 不具合の予期される事柄
- 4.1 留意すべきもの
- ・HSB
- ySTEALTH をオプションなしで動作させている場合に
- HSBが使用できなくなる場合があります。
- できるだけ /R オプションを使用してください。
- また /R オプションで使用しているときに
- HSBのリブートが通常のリセットと同様になってしまうことが
- あります。(メモリカウントを始めてしまう。)
- この場合には強制RAM化から FF を外してください。
- (例: F9-FF → F9-FE )
- ・RAMBIOS.COM
- このドライバーは本来不可能なことを無理矢理実現しています。
- そのせいでメモリマネージャが異常動作する可能性があります。
- また元286機のCPUをIBM486系に換装した場合、
- カレンダーBIOSに不具合が出ることがあります。
- cf. rambios.doc
- 4.2 相性が悪いソフトウェア
- ・Windows
- ySTEALTHはやっていることがかなり過激なので、
- エンハンストモードでは動作しません。
- スタンダードモードでは動作したという報告がありました。
- ・WX3
- このFEPは謎な代物でして、
- まったく不都合無く使用できる方と、
- 特定の条件で不都合が出る方などが混在しています。
- ・FD(城パッチ)
- このソフトも(私のように)不都合なく使用している人と、
- なぜだかまともに動作してくれない人がいらっしゃいます。
- ・QuickBASICによるソフト
- tdpmi98 環境下で、
- QBでコンパイルされたソフトウェアが
- ハングアップするという報告がありました。
- ・その他
- WCD のバッファ内容が狂うことがあるそうです。
- xscript が一件、 The File Master V3 が一件、
- それぞれ動作不良になるそうです。
- (どれも私の所では再現していないため不明。)
- 5. このパッケージについて
- パッケージの中身は次の通り
- YSTEALTH.DOC このドキュメント
- YSTEALTH.COM 本体
- YSDINFO.COM 検査用プログラム
- RAMBIOS.COM BIOS強制RAM化ドライバ
- RAMBIOS.DOC RAMBIOS.COM の説明書
- YSTEALTH.HED ヘッダ
- 6. その他細かいこと
- この読み物は NTF (c) Tomoyuki Niijima を使って整形しています。
- このプログラムは全てMASM6.0によって作成されています。
- このパッケージの著作権その他の権利は全て私Mzakiが保持します。
- 作者は本ソフトウェアに関して、一切の義務を負わないものとします。
- 転載・再配布は自由です。私は一切関知しません。ただしこいつはフリー
- ソフトウェアですから、実費の範囲を超えるような金銭の移動を伴う授受
- はやめましょう。
- このパッケージに含まれるファイルの改変は自由です。ただし、その再配
- 布は改変されたことが明示されることが必要です。
- その他、一般良識に従って処理してください。
- 様々なテストにつきあっていただいた ZOB Station BBS の皆様に感謝いた
- します。
- VEM486という素晴らしいメモリドライバを開発・公開してくださっ
- た K.Ogino 氏に感謝いたします。
- ルーチンのミスを指摘・EPSON機用の処理を研究提案して下さった
- S-bug 氏に感謝いたします。
- ZOB Station BBS zob15656 Mzaki
- 東京BBS MZAKI
- 東京がらくた工房 MZAKI
- 開発経緯
- xGLIO
- 1994/11/14 作り始め
- 最優先割り込みハンドラを使用
- 割り込みを経由しないゲームは動かなかった
- 1994/11/15 ver0.10 RAM化BIOSを使用する方法を採用
- RXではうそみたいに完璧な動作
- 1994/11/19 ver1.0 公開版(公開しなかったけど)
- 常駐部まわりのデバッグと改良をした
- ySTEALTH
- 1994/11/21 ver0.10 形態変更&改名
- 1994/11/24 ver0.90 RAM化BIOS+割り込みフックに変更
- EPSON機にも対応したつもり
- 1995/03/16 ver0.90g x486依存をやめた(初公開)
- 1995/04/04 ver0.91 多くの機種で組み込めないバグを解消
- EMSページフレームに自由度を持たせた
- 強制RAM化BIOS指定オプション /X /V を追加
- BIOSパッチをしないオプション /N を追加
- その他いろいろやってるけど改善とは限らない
- 1995/11/01 ver0.92 強制RAM化BIOS指定オプション /R を追加
- ROMSRCH.COM を機能追加して YSDINFO.COM とした
- 強制RAM化ドライバ RAMBIOS.COM を添付
- EMSのアンマップ動作を改善
- その他少し改善
- 1996/01/01 ver0.93 /X /V を /R に統合した
- x486環境でも RAMBIOS.COM を使用するようにした
- さらに多くのパッチをする用にした
- 前項の抑制をする /J オプションを追加
- EPSON機には特別の対策をするようにした
- IDEモーター制御割り込みをチェックするようにした
- [EOF]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement