|
【No.330 Res.11】 EMM386.EXEの設定 1 Name kyoku Kohyanさん、奈々氏さん レスをいただきありがとうございます 当方CARBで使っています。 HIMEMとEMMM386はJ:ドライブのオリジナルのままで、カードのCONFIG.SYSからJ:ドライブ上のファイルを指定しています オプションもオリジナルのままです で、DEVICE=J:\DOS\HIMEM.SYS /TESTMEM:OFF /MACHINE:2 DEVICE=J:\DOS\EMM386.EXE P0=C000 (略) RAM=E000-EFFF です で、HIMEMはそのままにEMM386に /UMB ,/HIGHSCAN, /DPMI のどの組み合わせ(3つ、2つ、1つ)を付けても、 Invalid parameter specified と怒られます 数秒すると勝手に組み込み始めて EMM386 Activeのメッセージが出ます その後で、MGDISP2を組み込んで DERIVEのディレクトリからDERIVE.EXEを起動させると、 Loading DPMI host... Bytes availabe: 00064000H Insufficient Memory, Aborting でDOSプロンプトです どこがまずいのかなぁ ちなみにDerive16.comというファイルを走らせると16bitモードでDeriveが使えます
2 Name kyoku すいません コメントと投稿を取り違えてしまいました
3 Name kyoku それから奈々氏さんの言われる a:\dpmi.exe というプログラムはDOS 6に収録されてましたですか
4 Name kyoku ちなみにカード上のDOSディレクトリにはMS-DOS6.2/VのFDセットから持ってきたHIMEMもEMM386.EXEもCOMMAND.COMも置いてますが、 HIMEM,EMM386ともに置き換えようとCONFIG.sysの中のロケーション(ドライブ、ディレクトリ指定)を変えただけでハングします 今の設定で、なぜかカードブートからは使えないはずのCGAがいけてるので一応我慢できています CFは古いSANの1GBです
5 Name MO 直接関係はないと思いますが CFは1GBは不安定かもしれません。 過去の書き込みとかから思うに、 128MBとか256MBのような小容量の ものの方が安定しているみたいです。
6 Name Kohyan んーと…DOSモバのROMに入ってる物のバージョンでも 挙げておきましょうか。 HIMEM.SYS 95/07/25 ver.3.10 EMM386.EXE 96/02/29 ver.4.48
HIMEM.SYSの記述の方は、違わないので問題がないとしても、 EMM386.EXEの方は、かなり変わる事になりますね。対応してる引数が 何かを探す事が肝要な様です。実験してご覧になったお話から 考えるとほとんどの引数を許可してないという可能性も否めませんね。
また、奈々氏さんが記述されたdpmi.exeというのは、NECのPC-98x1用に 用意されていた物の様です。1995年4月21日初版と記述のあるASCII社の書籍 「DOS/Windows便利ブック」には98専用という記載があります。 従って、同様の物を探す必要があるのではないかと考えます。もっとも 探し当てたとしても、有効であるかどうかは微妙です。 ただ、DERIVE.EXEを起動すると出てくるという"Loading DPMI host..." という文字を考えると、dpmi.exeがなくても使える可能性はありますね。
一番の問題は、EMM386を使ってDPMIを有効にする手法を探るという 質問当初に戻ってしまう訳ですが...
7 Name kyoku CFはTDKの256MBでカードブートOKなものに代えました。PocketBSD2.2.8と同居です。 HIMEMとEMM386のタイムスタンプはKohyanさんの書かれたとおりです。 a:ドライブ(CF)にはMS-DOS6.2/Vのupgrade setのFDから持ってきたIO.SYS,MSDOS.SYS,HIMEM.SYS,EMM386.EXE,COMMAND.COMが入ってます。タイムスタンプは5つとも93-12-6 6:20:00です。 モバギMC-MK32のC:\、J:\DOS内のものより古いわけですが、A:\上のIO.SYS,MSDOS.SYSの後にA:\CONFIG.SYSで指定されたJ:ドライブ\DOSのHIMEMとEMM386が呼び出されて動いてます。 エクステンダー,DPMIということでは、CWSDPMI.EXE駆動のTeX(pLaTeX)が問題なく動きます。 なぜDerive.EXEはだめなんだろう??? ちなみにCONFIG.SYSではJ:\DOS\HIMEM.SYSやJ:\DOS\EMM386.EXEをA:\DOS内の6.2/Vのものに指定変えしただけで、立ち上げるとハングします。 カードブートで良好にお使いの方、環境をご教示いただけませんか
8 Name kyoku カードのCONFIG.SYSです。念のため。 ATOK8なのでkkcfuncはrem文で寝かせてます。 DEVICE=J:\DOS\HIMEM.SYS /TESTMEM:OFF /MACHINE:2 DEVICE=J:\DOS\EMM386.EXE P0=C000 P1=C400 P2=C800 P3=CC00 X=A000-AFFF X=D000-D3FF X=DD00-DFFF RAM=D400-DCFF RAM=E000-EFFF DEVICE=J:\DOS\RAMDRIVE.SYS 6326 512 /E DEVICEHIGH /L:2=D:\APMEXDRV.SYS /K DEVICEHIGH /L:2=J:\DOS\SOUNDDRV.SYS DEVICEHIGH /L:2=D:\SSRICOH.EXE DEVICEHIGH /L:1=D:\CARDLITE.EXE DEVICE=J:\DOS\UNFONT.SYS /S=0154 /P=D: DEVICEHIGH /L:1=D:\SRAMATA.SYS /U /M DEVICE=J:\DOS\CHGDRV.SYS /M DEVICEHIGH /L:2=J:\DOS\DBLSPACE.SYS /MOVE DEVICEHIGH /L:1=J:\DOS\POWER.EXE rem DEVICEHIGH /L:1=J:\DOS\KKCFUNC.SYS BUFFERS=10 FILES=30 FCBS=4,0 SWITCHES=/F /N DOS=HIGH,UMB LASTDRIVE=J SHELL=A:\COMMAND.COM /E:2048 /P set COMSPEC=A:\COMMAND.COM
9 Name kyoku #7で書いた内容に誤りがありました カードブートしているIO.SYSとMSDOS.SYSはモバのROMから持ってきた95-05-31付けのIO.SYS,95-07-25付けのMSDOS.SYSでした。MSDOS6.2Vから持ってきたファイルは何かの用にとA:\DOSディレクトリに格納していてブート時には使用していません。COMMAND.COMもA:\上のものは95-07-25付です。 結局、IO.SYSからEMM386.EXEまでモバのもので動いています
10 Name Kohyan 今さらですが、DERIVE自体の要求する条件はどうなってますか? 16bit動作と32bit動作で条件が違う様に書いてあると、かなり 追い込みの手がかりになると思えるのですが…
11 Name kyoku Kohyanさん とうとうDeriveが32bit modeで動きました EMM386.EXEの第1オプションに"3072",第2オプションに"MIN=3072"を挿入。 RAMDRIVE.SYSの第1オプションを832に変更。 AUTOEXEC.BATのDBLPATCH.COMの/L:オプションのパラメータを2から1に変更。 これでEMSが180ページ取れて、Insufficient不平が消えました。 カードブートMGCGAにも以上はなしで。CGAで32bit Deriveできてます。 やること(計算)はあまり変わってないんですが、満足です。 お世話になりました。
12 Name kyoku 下の掲示板に出てくる長太郎氏の設定に倣いました
http://hpcgi3.nifty.com/mezala/noz/wforum.cgi?mode=past&pastlog=0004&word=%83J%81%5B%83h%83u%81%5B%83g&cond=AND&view=30
| |