レガシーOS&アプリを無料の仮想マシンで動かす その32(Virtual PC編その12)2009年02月22日 07時36分

Windows3.1 SVGA(1024×768)サイズ
(7)Windows3.1 のインストール

Virtual PC 2004 のDOS拡張機能を入れた Virtual PC 2007 の MS-DOS6.2/V仮想マシン(ややこしい説明やなあ・・・)に Windows 3.1 をインストールしました。

WFW3.11はうまくいきませんでしたが、こちらはまあまあスムーズに進みました。VMWare Player では Windows3.1もあまりうまく行かなかったのですが・・・

マシンで動かす その16(VMWare Player編その15)
http://boukyaku.asablo.jp/blog/2009/01/04/4041561

Virtual PC 2007 上の Windows3.1 ですが、インストール直後はサウンドは設定されていませんでしたが、Windows の プログラムマネージャー → コントロールパネル → ドライバ から "Creative Labs Sound Blaster 1.5" を組み込んだら音が出ました。

S3 Graphics の SVGAドライバの組込みもうまくいきました。(入手先は下記) プログラムマネージャー → Windowsセットアップ より、 "S3 Trio64V 1.70.04 1024×768 64K C SF" を組み込んで再起動するとちゃんとその画素数の画面が出てきました。広いねえ。

Drivers Download - Legacy Software Archive
Trio64V+ (765) Drivers
http://www.s3graphics.com/en/resources/drivers/legacy/software_archive.jsp#id_765drv
の Windows 3.1 and 3.11 Drivers (w3117004.zip)

ま、Windows3.1 はこんなところですかね。参考にしたサイトをちょいと・・・

N-Log: a Log of Notes:Windows 3.1 on Virtual PC 2007
http://www.wellformed.org/2005/notes/2007/11/20/010320

ホント、先達はあらまほしきことなり・・・昔の人はいいこと言いますな・・・(続く)

レガシーOS&アプリを無料の仮想マシンで動かす その31(Virtual PC編その11)2009年02月21日 12時27分

インストール途中でフリーズしたWFW3.11
(6)Windows3.11 for Workgroups のインストール(失敗)

結論から言うと、Virtual PC 2007(日本語版)ではインストールできませんでした。Virtual PC 2004 の DOS拡張機能を入れないのと入れたのと二通りの仮想DOSマシンで試したのですが・・・、2枚目~3枚目のインストールディスクのところで止まってしまうのです。VMWare Player ではインストールは出来たんですがね。(下記)

レガシーOS&アプリを無料の仮想マシンで動かす その15(VMWare Player編その14)
http://boukyaku.asablo.jp/blog/2009/01/03/4040391

ま、仕方がないか・・・これは諦めましょう。(続く)

レガシーOS&アプリを無料の仮想マシンで動かす その30(Virtual PC編その10)2009年02月21日 11時57分

仮想マシンのDOSに拡張機能を追加した後のFD画面
(5)MS-DOS6.2/Vのインストール その2

インストールを開始後、指示通りインストールディスクを入れ替える作業を5回繰り返し、最後の再起動後、仮想マシンは仮想ディスクにインストールされたMS-DOSを起動します。

Virtual PC 2007 の場合、MS-DOS の日本語ディスプレイドライバに関するトラブルはありませんでした。(config.sys 内の 下記の /HS=LC スイッチは必要ないということ)

DEVICE=C:\DOS\JDISP.SYS /HS=LC ←コレ

VMWare Player では これを付けないと 真っ暗な画面しか出ません。(下記、VMWare Player への MS-DOSインストールを参照のこと)

レガシーOS&アプリを無料の仮想マシンで動かす その11~14
(VMWare Player編その10~13)
http://boukyaku.asablo.jp/blog/2009/01/02/4039425
http://boukyaku.asablo.jp/blog/2009/01/02/4039576
http://boukyaku.asablo.jp/blog/2009/01/02/4039611
http://boukyaku.asablo.jp/blog/2009/01/02/4039699

これでとりあえずMS-DOSのインストールは完了ですが、このままでは、

・CD-ROMにアクセスできない
・CPUを占有してしまい、他のアプリの応答が鈍る

等々、使い勝手は宜しくありません。VMWare Player の場合は、どこかから CD-ROM ドライバを引っ張り出したり CPU idleソフトを調達する必要があります。

ま、VMware Player で使ったそれらのソフトを使ってもいいのですが・・・

Virtual PC 2004 は気を利かせてこの類のDOS拡張プログラムが付属していましたが、Virtual PC 2007 は公式にDOSをサポートしなくなり、この拡張プログラムは含まれていません。

しかし、Virtual PC 2007 でも Virtual PC 2004 のDOS拡張プログラムが使えます。(たぶん、MS関知外の使い方ですが)

Virtual PC Guy's WebLog
http://blogs.msdn.com/virtual_pc_guy/

米microsoft の プログラム・マネージャー Ben Armstrong氏のブログですが、MS Virtual PC に関する有用な情報があります。下記記事にVirtual PC 2004 のDOS拡張プログラム を引っ張り出す方法があります。

Installing DOS additions under VPC 2007
http://blogs.msdn.com/virtual_pc_guy/archive/2007/10/30/installing-dos-additions-under-vpc-2007.aspx

Extracting files from the Virtual PC installer
http://blogs.msdn.com/virtual_pc_guy/archive/2007/01/08/extracting-files-from-the-virtual-pc-installer.aspx

MS-DOS のチューニングについても参考になる記事がありました。

Tuning DOS inside of Virtual PC
http://blogs.msdn.com/virtual_pc_guy/archive/2004/10/21/246136.aspx

上記サイトを参考に、Virtual PC 2004 のDOS拡張プログラム を引っ張り出して入れることが出来ました。やり方を簡単に書くと・・・

①下記から、"Virtual PC 2004 SP1.zip"をダウンロード

Virtual PC 2004 SP1 - 日本語
http://www.microsoft.com/downloads/details.aspx?FamilyID=6d58729d-dfa8-40bf-afaf-20bcb7f01cd1&DisplayLang=ja

②"Virtual PC 2004 SP1.zip" を適当なフォルダに解凍しますが、出来るだけパスが簡単な所に置いたほうが良いでしょう。たとえば、"E:\test\" とか。③のコマンド実行が楽ですので。

解凍すると、"Virtual PC 2004 SP1"というフォルダが出来ます。その中に、"Microsoft Virtual PC 2004 MSDN.msi "があります。

③下記コマンドを実行
msiexec /a "Microsoft Virtual PC 2004 MSDN.msi"

私は、コマンドプロンプト画面から"Virtual PC 2004 SP1"フォルダに cd
して、そこから上記コマンドを実行しました。スタートの「ファイル名を指定して実行」でもできると思いますが、どうもうまく行かなかったので・・・

実行すると、インストーラーが起動して、ファイルの保存先を聞かれますので適当なフォルダを指定します。指定したフォルダにインストールファイルが引っ張り出されます。ファイルを引っ張り出しているだけなので、ホストOSのシステムが書き換えられる心配はありません。

④指定フォルダに収納されたファイルを確認します。
指定フォルダ内の下記フォルダ
"\Program Files\Microsoft Virtual PC\Virtual Machine Additions\"
の中に、下記4つファイルがあります。

い)DOS Virtual Machine Additions.vfd ← DOS用
ろ)NT4 Network Driver.vfd ←NT4用
は)Virtual Disk Precompactor.iso ?不明
に)VMAdditions.iso ← Windows用(NT4, 95-XP迄?)
*.vfd はFDイメージ、 *.iso は CD-ROM イメージです。

【参考】Virtual PC(2004) でサポートされているゲスト オペレーティング システム
http://support.microsoft.com/kb/831461/ja

DOS Virtual Machine Additions.vfd を 仮想マシンにマウント(フロッピーディスクイメージのキャプチャ)して、ゲストOS(DOS)の A:ドライブから DosAdd.bat を実行すると、拡張機能がインストールされます。デバイスドライバが C:\vmadd フォルダにコピーされ、 Autoexec.bat と Config.sys が 書き換えられます。拡張機能導入後の Autoexec.bat と Config.sys の例を下記に。 (英語環境と日本語環境の2つ。拡張機能導入後、さらに手打ちでDEVICE → DEVICEHIGH にしたり、 LH(LoadHigh) を私なりに追加してます)

ホストOSとの共有フォルダ機能として、Fshare.exeとVMADD386.SYSが、あとマウスドライバ Mouse.com、CD-ROMドライバ Cdrom.sys、CPU占有防止用のIdle.comが組み込まれます。ただし、Mouse.comは日本語環境では不具合が起こると複数のサイトに書いてありましたので、日本語環境では省いたほうが良さそうです。

------- MS-DOS6.2 config.sys -------

DEVICE=C:\VMADD\VMADD386.SYS
device=C:\DOS\HIMEM.SYS
device=C:\DOS\EMM386.EXE noems
dos=high,umb

rem DEVICE=C:\DOS\SETVER.EXE
rem DEVICE=C:\DOS\BILING.SYS
rem DEVICE=C:\DOS\JFONT.SYS /P=C:\DOS\
rem DEVICE=C:\DOS\JDISP.SYS

devicehigh=C:\DOS\JKEYB.SYS /106 C:\DOS\JKEYBRD.SYS

rem DEVICE=C:\DOS\KKCFUNC.SYS
rem DEVICE=C:\DOS\ANSI.SYS
rem device=c:\oakcdrom.sys /d:cd001

FILES=30

REM **********************************************
REM **** DOS Virtual Machine Additions *****
REM **********************************************
devicehigh=C:\VMADD\CDROM.SYS /D:IDECD001 /L:E
LASTDRIVE=Z

----------------------------------

------- MS-DOS6.2 autoexec.bat -------
@echo off

rem C:\DOS\SMARTDRV.EXE /X

PROMPT $p$g
PATH C:\DOS;c:\ustools
SET TEMP=C:\DOS

rem lh c:\dos\mscdex.exe /d:cd001 /l:d
rem lh c:\dos\mouse
rem c:\dosidle\dosidle.exe


@REM **********************************************
@REM **** DOS Virtual Machine Additions *****
@REM **********************************************
SET DOSVMADD13=INSTALLED
lh c:\vmadd\fshare.exe
lh c:\DOS\MSCDEX.EXE /D:IDECD001 /L:E /M:8
lh c:\vmadd\idle.com
lh c:\vmadd\mouse.com

----------------------------------

------- MS-DOS6.2/V config.sys -------

DEVICE=C:\VMADD\VMADD386.SYS
DEVICE=C:\DOS\HIMEM.SYS
DEVICE=C:\DOS\EMM386.EXE
DOS=HIGH,umb

rem DEVICE=C:\DOS\SETVER.EXE
DEVICEhigh=C:\DOS\BILING.SYS

devicehigh=C:\DOS\JFONT.SYS /P=C:\DOS\
devicehigh=C:\DOS\JDISP.SYS
devicehigh=C:\DOS\JKEYB.SYS /106 C:\DOS\JKEYBRD.SYS
rem DEVICE=C:\DOS\KKCFUNC.SYS

FILES=30

rem DEVICE=C:\DOS\ANSI.SYS
rem DEVICE=C:\DOS\MSIMEK.SYS /A1
rem DEVICE=C:\DOS\MSIME.SYS /D*C:\DOS\MSIMER.DIC /DC:\DOS\MSIME.DIC /C1 /N /A1

rem device=c:\oakcdrom.sys /d:cd001

REM **********************************************
REM **** DOS Virtual Machine Additions *****
REM **********************************************
devicehigh=C:\VMADD\CDROM.SYS /D:IDECD001 /L:E
LASTDRIVE=Z

----------------------------------

------- MS-DOS6.2/V autoexec.bat -------

@ECHO OFF

rem C:\DOS\SMARTDRV.EXE /X

PROMPT $p$g
PATH C:\DOS;c:\tools
SET TEMP=C:\DOS

lh C:\DOS\NLSFUNC.EXE C:\DOS\COUNTRY.SYS
lh C:\DOS\CHEV.COM JP

rem c:\dos\mscdex.exe /d:cd001 /l:d
rem c:\dosidle\dosidle.exe

@REM **********************************************
@REM **** DOS Virtual Machine Additions *****
@REM **********************************************
SET DOSVMADD13=INSTALLED
lh c:\vmadd\fshare.exe
lh c:\DOS\MSCDEX.EXE /D:IDECD001 /L:E /M:8
lh c:\vmadd\idle.com
rem lh c:\vmadd\mouse.com

----------------------------------

その他、参考になりそうな記事を幾つか・・・

病電波-Virtual PC 2004 に MS-DOS 6.2 をインストールする
http://hamanasu.sakura.ne.jp/~yami/scrap/vpc2.html
対象はVirtual PC 2004ですが、DOSのチューニング等参考になります。

他にもネット上で色々な人が体験記?を書いているので、色々探してみると良いでしょう。(続く)

レガシーOS&アプリを無料の仮想マシンで動かす その29(Virtual PC編その9)2009年02月21日 10時07分

Virtual PC 2007 仮想マシンにMS-DOS6.2/Vをインストール
(5)MS-DOS6.2/Vのインストール その1

仮想マシンにMS-DOS6.2/Vをインストールします。

一応、USB-FDDからもブート・インストール可能なようですが、とにかく時間がかかります。(だから最後まで確認してません。)出来ますが、これは「使えません」な。

VMWare Player 2.5.1 と 1.0.9 でも USB-FDD からブート出来ましたけど、2.5.1はサクサク動作したのに対して、1.0.9はとても時間がかかりました。このあたりはちゃんと対応しているかどうか・・・ということでしょうか。Virtual PC 2007 はあまりちゃんと対応してないようですね。

PC内蔵FDDでは試してません。最近のPCはデスクトップ・ノートを問わずFDD内蔵は少ないですから・・・

ということで、インストールFDからFDイメージファイルを作り、そのイメージファイルからブート・インストールするのが現実的です。RawWriteWin や Virtual Floppy Drive といったソフトが便利です。

RawWriteWin
http://uranus.it.swin.edu.au/~jn/linux/rawwrite.htm
FDからFDメージを作成することも、FDイメージをFDに書き込むことも出来ます。シンプルで使いやすいです。

Virtual Floppy Drive 2.1(仮想な背中)
http://chitchat.at.infoseek.co.jp/vmware/vfdj.html#top
物理FDDの代わりに使えますし、物理FDDやFDが無くても空のFDイメージファイルを作れます。仮想ドライブをVMWareの仮想マシンにマウントしてアクセスすることも出来ます。

Virtual PC 2007 は、仮想マシンのウィンドウメニューから FDイメージファイル・CD-ROMイメージファイルを 切り替える(ディスクの入れ替えに相当)ことが出来るので、それが出来ない VMWare Player 1.0.X よりはるかに楽です。VMWare Player 2.X.X は簡単に出来るようになっているので、どちらが良いと単純には言えませんが・・・

MS-DOS6.2 インストールディスク(6枚)のFDイメージファイルを作成し、1枚目のFDイメージファイルをマウント(Virtual PC では「フロッピーディスクイメージのキャプチャ」)して、仮想マシンを再起動すると、1枚目のFDからブートしてインストールが始まります。(続く)

レガシーOS&アプリを無料の仮想マシンで動かす その28(Virtual PC編その8)2009年02月20日 18時19分

なんにもない状態で仮想マシンをブートすると・・・
(4)仮想マシンの作成 その5

さて、こうして作った仮想マシンを起動・・・しても、まっさらな状態で、ゲストOSのインストールディスクも用意していないので、当然のことながら「ブートメディアがないぞ!」というメッセージを出して止まってしまいます。ごもっとも。(続く)

レガシーOS&アプリを無料の仮想マシンで動かす その27(Virtual PC編その7)2009年02月20日 17時39分

仮想マシン設定項目の一部
(4)仮想マシンの作成 その4

作成した仮想マシンの設定は、「Virtual PC コンソール」にリストアップされた仮想マシンを選択して「設定」ボタンを押せば確認及び設定変更が出来ます。

上記画面は、メインメモリ、FDD、HDD、ネットワークアダプタ設定です。物理的なデバイスが存在していなかったり、ホストOS側の不都合で実際使えない状態でも、Virtual PC側 で「存在している」設定しておけば、とりあえずゲストOS側はそのデバイスがあると認識して動くようです。(続く)

レガシーOS&アプリを無料の仮想マシンで動かす その26(Virtual PC編その6)2009年02月20日 13時30分

(4)仮想マシンの作成 その3

OSを選択すると、お次はメモリ容量の設定です。といっても、

・推奨RAMを使用(U) ← ゲストOS選択時のデフォルト値
・RAMの調整(A) ← ゲストOS選択時のデフォルト値を変えるとき

くらいのことです。まあ、特に重たいアプリや特殊なことをしない限りデフォルトでいいかと。次は「バーチャル ハード ディスク オプション」で、

①既存のバーチャル ハード ディスク(A)
②新しいバーチャル ハード ディスク(E)

を選択します。今回は新規作成なので②ですな。

その次は、「バーチャル ハード ディスク の場所」で、名前と場所を指定できます。先ほどの「バーチャル マシンの名前と場所」で,

フォルダ "E:\VPC\test\"
ファイル名"test.vmc"

としたので「バーチャル ハード ディスク の場所」も特に変更しなければ同じ場所になり、バーチャル ハード ディスク の名前もそれにちなんで "test HARD DISK.vhd" と自動的に付けられます。他の名前にすることも出来ます。

ここでは「バーチャル ハード ディスク サイズ」の変更指定もできますが、あえて変える必要は無いかと。

これで、一通り指定は終わりです。「新しいバーチャルマシンウィザードの完了」画面で「完了」を押すと、仮想マシンファイルが作成されます。(続く)

レガシーOS&アプリを無料の仮想マシンで動かす その25(Virtual PC編その5)2009年02月20日 13時07分

仮想マシン作成ウィザード画面その1
(4)仮想マシンの作成 その2

「Virtual PC コンソール」の「新規」ボタンを押すと、「新しいバーチャル マシンウィザードの開始」ウィンドウが現れます。「次へ(N)>」押すと「オプション」画面となります。オプションは三択です。

①バーチャルマシンの作成(C)
②規定の設定を使用してバーチャルマシンを作成する(U)
③既存のバーチャルマシンを追加する(A)

全く新規に作成するときは①を、既存設定を利用して仮想ハードディスクのみ新規作成する場合は②を、他のPCからコピーした仮想マシンをコンソールに登録するときとか、仮想マシン上で作成したMS-DOS環境をコピーしてWindows3.1をインストールする等は③を選択・・・というところですかね。

今回は全くの新規なので①を選ぶと、「バーチャル マシンの名前と場所」を聞いてきます。デフォルトのフォルダとファイル名がいやなら変更します。今回は、"E:\VPC\test\"フォルダに"test.vmc"ファイルを作成します。

その次は、導入するゲストOSの種類を聞いてきます。これは、OSに合ったメインメモリ容量、バーチャルディスク容量を設定する目安にしているようです。これらの値は仮想マシンを作成した後でも変えられます。やはり、MS-DOSやWindows3.1は対象外のようです。(続く)

レガシーOS&アプリを無料の仮想マシンで動かす その24(Virtual PC編その4)2009年02月20日 12時47分

Virtual PC コンソール と 作成した 仮想マシンファイル
(4)仮想マシンの作成 その1

VMWare Player は仮想マシンを作れませんが、Virtual PC 2007 は仮想マシンを作ることが出来ます。この点、VMWare Player より手間がかからず便利です。

まず、インストールした Microsoft Virtual PC を起動すると 「Virtual PC コンソール」が現れます。

このコンソールの「新規」ボタンを押して新しい仮想マシンを作ります。このウィザードで、設定ファイル *.vmc と 仮想ディスク *.vhd の二つのファイルが作成されます。(続く)

レガシーOS&アプリを無料の仮想マシンで動かす その23(Virtual PC編その3)2009年02月20日 11時46分

トラブル発生時のネットワーク設定関係画面
(3)ネットワークトラブル発生

Virtual PC 2007 をインストールした後、ノートPCのホストOSからインターネットに接続できなくなるトラブルに見舞われました。

最初、ADSLモデムが壊れたか?と思いましたが、チェックしてみるとADSLモデムは正常でした。色々考えましたが、Virtual PC 2007 をインストールした後トラブルに見舞われているので、とりあえず Virtual PC 2007 をアンインストールしました。

しかし、アンインストールでもひと悶着あり、アンインストール中に進行が止まってしまい、強制終了をかけるとOS全体がフリーズ・・・。電源OFFして再起動した後にもう一度アンインストールすると今度は最後まで正常に進行しましたが・・・

色々悪戦苦闘した挙句、(私のノートPCでは)Virtual PC 2007(2004も)をインストールした際に導入される "Virtual Machine Network Service"が他のプロセスとケンカして、PC外部へのネットワークが機能しない・・・と推論しました。

トラブルの時は、コマンドプロンプト画面の ipconfig で表示される 「ローカルエリア接続」が出てきません。これじゃダメだわ・・・

ゲストOSから外部ネットワークへのアクセスは私には必要ないので、「ローカルエリア接続のプロパティ」からこの"Virtual Machine Network Service"のチェックを外しました。このチェックを外すときもOSがフリーズ・・・また電源OFFして再起動すると、一応チェックは外れていましたが、こうフリーズされると気分は良くないですね。

インストールして再起動してから、この"Virtual Machine Network Service" のチェックを外すとフリーズするのですが、インストール直後にチェックを外すと特に問題は発生しませんでした。

チェックを外すと、ホストOSから外部ネットワークに正常に接続できました。

ネットで同様のトラブル事例を探したのですが、どうも無さそうです。もしかして、VMWare Player の "VMWare Bridge Protocol" とコンフリクトしているのかな?

Virtual PC 2004はどのように動いているのか(itpro記事)
http://itpro.nikkeibp.co.jp/article/COLUMN/20070606/273754/?ST=ittrend

このあたりをちゃんと理解すると、このトラブルをクリアできるかも。

Microsoft TechNet > フォーラム ホーム > Virtualization > Virtual PC
http://social.technet.microsoft.com/Forums/ja-JP/virtualpcja/threads/

こことか、ネット上で色々調べましたが、同様のトラブルは見つけられませんでした。

"Virtual Machine Network Service"のチェックを外しと、ゲストOSからホストOS・外部ネットワークへのアクセスが出来ませんが、昔のソフトを動かすだけだからそれは特に必要ないし、ま、とりあえずこれで良しとしましょうか・・・(続く)

【2009.2.22追記】
Virtual PC 2004 SP1 を当てたときに 物理ネットワークが使えなくなったというブログ記事を見ました。

OPC Diary ~私的ソフトウェア開発あれこれ~
VirtualPC 2004でSP1を当てたら物理コンピュータのネットワーク アダプタが使えない
http://www.isisaka.com/blog/archives/2005/06/virtualpc_2004s.html

これと同じ原因かどうかはなんとも言えませんが・・・