過去の桐井戸端BBS (桐ver.5)
30013 桐Ver5をWindowsXPで使いたい ata 2005/05/24-14:30
いろいろなログを読み、調べましたが、EMSメモリが使用不可になってるPCでは、
結局のところVer5を使用することはできないのでしょうか?
裏技的に、こうすれば出来る!!とかあるのでしょうか?
30015 Re:桐Ver5をWINxpで使いたい うにん 2005/05/24-20:09
記事番号30013へのコメント

>裏技的に、こうすれば出来る!!とかあるのでしょうか?

VMWareとかVirtualPCとかの仮想OSソフトを使うとできるかも?

30016 Re:桐Ver5をWINxpで使いたい 佐田 守弘 2005/05/24-21:01
記事番号30013へのコメント
ataさん
 >EMSメモリが使用不可になってるPC
とは、EMSを使うUMBエリアに周辺機器のBIOSが埋め込まれているPCの事かと思います。
この場合にはハードウエア的な制約から、EMSを仕えませんから、
EMSを必要とするソフトウエアの利用は難しいのかも知れませんね。

●裏技
マザーボードを含めたPCのアーキテクチャを改造するなら別でしょうけど。
難しいでしょうね。

ただしエミュレータを使う手があるかも知れません。私が知っている情報では
ANEX98というPC-9801をエミュレーションする仮想OSがあったかと思います。

佐田守弘(KS-00119)
30036 Re:桐Ver5をWINxpで使いたい ata 2005/05/26-11:09
記事番号30016へのコメント
>ただしエミュレータを使う手があるかも知れません。私が知っている情報
>ではANEX98というPC-9801をエミュレーションする仮想OSがあったかと
>思います。
>
回答ありがとうございました。
エミュレータを使ってみましたが、上手くいかないようです。
いよいよ観念しかないのでしょうか?
また、EMSメモリの使用可、不可は、PCによって違うのですか?
何度も質問すみません


30041 Re:桐Ver5をWINxpで使いたい 筒井祐次 2005/05/26-17:45
記事番号30036へのコメント
Virtual PC 2004(Microsoft社)の仮想環境では、
機種にかかわらず、「桐5」が動作します。機種によらず EMS の確保が可能です。
(PC-DOS/V や MS-DOS/V が必要となります)

Anex86 という EPSON 互換機エミュレータ(シェアウェア)を利用する場合は、
MS-DOS Ver.6.2(NEC) などが必要となります。
(EPSON 互換のため、EPSON プロテクトのない MS-DOS があれば良い)
この環境も、機種によらず EMS の確保は可能です。

例)Anex86 の Config-System で Ext-RAM を 4096KB 確保。
[CONFIG.SYS の例]
FILES=30
BUFFERS=10
SHELL=A:\COMMAND.COM /P
DEVICE=A:\DOS\HIMEM.SYS /TESTMEM=OFF
DEVICE=A:\DOS\EMM386.EXE /UMB
DEVICEHIGH=A:\DOS\KKCFUNC.SYS
DEVICEHIGH=A:\MTTK3\MTTK3A.DRV
DEVICEHIGH=A:\MTTK3\MTTK3B.DRV
DOS=HIGH,UMB

なお、エミュレータを使う際、フロッピーイメージ作成時に要ライトプロテクト。
30046 EMSメモリの使用可、不可 佐田 守弘 2005/05/26-20:03
記事番号30036へのコメント
ataさん
 >また、EMSメモリの使用可、不可は、PCによって違うのですか?
その通りで、PCによって異なります。

古い話なので一部記憶違いがあるかも知れませんが、当時のPC9801時代のハードウエアの仕様を思い出しながら、述べてみます。
当時の16ビットCPUは、その仕様上、640KBまでのメモリ空間しか直接的にはアクセスできませんでした。これがメインメモリ領域です。
そしてこれを越えて1024KBまでの領域は、周辺機器のBIOSを割り当てる領域として、予約確保されていました。
しかしこの領域が案外と使われていなかった事と、丁度この頃(確か一太郎V4が出た頃)は、
メインメモリだけではメモリが足りなくなったため、このUMB領域を使ってアプリが利用できるメモリ空間を増やそうとの動きがありました。
EMSメモリと呼ばれる特殊な機能のメモリを装着し、その各ページをUMB領域に割り当てる形で、
アプリが利用できる領域を増やす方法です。

その後、32bitCPU時代になり、大容量のメモリをリニアにマッピングして利用できる様になりましたが、
当時のEMS規格を踏襲する関係で、UMB領域のアドレスを使う形での仮想EMSドライバが出て来ました。
WindowsXPのMS-DOS互換ボックスでも、アプリ側から見ての仕様は変えようがないので、
UMB領域のアドレスにアクセスさせる形になっていると思います。

しかしながら昨今、UMB領域のアドレスをEMSとして使う事はまずなくなったため、
ここに本来の目的であった周辺機器のBIOSを割り当てる様になった様です。

何の周辺機器が割り当てられているかは機種によって異なります。
私も詳しくありませんが、特にノート型ではマウス、サウンドボード、
など基本的な周辺機器がEMSで使うメモリ領域に割り当てられているケースが多いと聞きます。
しかもほとんどの場合、オンボードのチップにBIOSが焼き込まれているので、取り外す事ができません。

先にハードウエアでEMS領域のメモリが使われていれば、
ここをソフト的にEMSに割り当てる事ができません。
それが機種によってEMSが使えるかどうかの違いの理由だと理解して下さい。

佐田守弘(KS-00119)
30075 エミュレータ環境について(訂正) 筒井祐次 2005/05/29-01:04
記事番号30041へのコメント
間違いがありましたので訂正します。(TESTMEM:OFF でした)

例)Anex86 の Config-System で Ext-RAM を 4096KB 確保。
[CONFIG.SYS の例]
FILES=30
BUFFERS=10
SHELL=A:\COMMAND.COM /P
DEVICE=A:\DOS\HIMEM.SYS /TESTMEM:OFF
DEVICE=A:\DOS\EMM386.EXE /UMB
DEVICEHIGH=A:\DOS\KKCFUNC.SYS
DEVICEHIGH=A:\MTTK3\MTTK3A.DRV
DEVICEHIGH=A:\MTTK3\MTTK3B.DRV
DOS=HIGH,UMB

お詫びに、当方の PC-DOS 7.0/V on VirtualPC 2004 の環境を追加します。参考まで
[CONFIG.SYS の例]
DOS=HIGH,UMB
DOSDATA=UMB
COUNTRY=081,932,C:\DOS\COUNTRY.SYS
SHELL=C:\DOS\COMMAND.COM /P /E:512 /H
DEVICE=C:\DOS\HIMEM.SYS
DEVICE=C:\DOS\EMM386.EXE RAM HIGHSCAN X=A000-AFFF X=B800-BFFF X=C000-C7FF
X=E000-EFFF I=B000-B7FF I=FA00-FDFF
BUFFERS=20
FILES=15
DEVICEHIGH=C:\DOS\$FONT.SYS
DEVICEHIGH=C:\DOS\$DISP.SYS /HS=LC
DEVICEHIGH=C:\DOS\KKCFUNC.SYS
DEVICEHIGH=C:\MTTK3\IMTTK3A.DRV C:\MTTK3 ………
DEVICEHIGH=C:\MTTK3\IMTTK3B.DRV

戻る