パソコン活用研究ラピュタへの道(アセンブラ、DOS、Windows、旧型PCの活用研究)

virtualPCにWindows95をインストールする

--------------------------------------------------------------------------------------
今更、VirtualPC2007にWindows95をインストールしてみた記録。

今更、Windows95を動かしてみるその理由は、
@ Windows95でしか動かないアプリケーションがあるから
A Windows95というOSを解析してみるため
B たまたま、Windows95のCD-ROMが引出しから出てきたから
と、まあ何でもよいのです。
--------------------------------------------------------------------------------------

1 準備
準備するのは
@ VirtualPC2007 ⇒virtualPC2007ダウンロード
A フロッピーディスクの起動Disk
B Windows95のインストールCD-ROM

Bは必須です。(当たり前ですが)これがなくては話にならない。なので対象者はかつてWindows95を使っていた
かつWindows95のCD-ROMをまだ持ってた人(物持ちのいい人)限定、というわけです。

で、Windows95のCD-ROMは自己ブート型ではない(はず)なので、A起動ディスク(フロッピーディスク)も必要です。
おじさんの場合は、Windows95で作成した起動diskがあったので(物持ちがいいので)、これを使いましたが、
もしなければBoot dsikのダウンロードできるサイトもいろいろあるのでそんなところからダウンロードしてくる、
でいいでしょう。
例えば、AllBootDisk にけば各種の起動ディスク(ブートディスク)があります。
VirtualPCの使うvfdファイルはセクタをベタ書きしたイメージファイルのようなので、 Windows95a.img などを
落としてくればいいです。たぶん、(やたら推測が多いのですが、検証してないので)、Windows95a.imgのほうは
初期のWindows95用の起動ディスクで、Windows95b.imgはWindows95 OSR2用と思います。


2 バーチャルマシンの作成
VirtualPCでバーチャルマシンを作成します。

VirtualPC2007のオペレーティングシステムの選択では、Windows95はないので、Windows98を選択しておきます。
RAMは64Mもあればいいでしょう。
バーチャルディスクの容量も1Gくらいでいいでしょう。

Windows95の扱えるRAMの上限はおそらく512M。当時推奨16M、32Mあればさくさく動くといわれていたような
記憶があるので、64Mあれば十分でしょう。
ディスク容量はFAT16の場合、1つの領域として認識できる領域の上限が2047Mのはずなので、まあ1Gもあれば
いいでしょう、という感じ。
(Windows95 OSR2はFAT32になった。FAT32はOSの制限として1つの領域の上限が32G)

3 起動ディスクでCD-ROMを使えるようにする

おそらく(これも遠い記憶で不確かです。推測ばかりですみませんが)、Windows95で作成したいわゆる起動ディスク
というやつは、そのままではCD-ROMにアクセスできません。
CD-ROMにアクセスできるように、CD-ROM用のデバイスドライバの組み込みと、CD-ROMのファイルシステムを
扱うための設定が必要なはずです。上記の、AllBootDisk にあるWindows95a.imgはたぶんCD-ROMが使えるように
設定ずみのようなので、こいつを使えば話は早いです。

このCD-ROMを使えるようにするための、デバイスドライバの組み込みの記述とか・・
もう、MS-DOS使わなくなって20年ですから、今更思い出せない・・ですよね。

昔、作成済みの起動ディスクを見るとこんな感じです。

(1) Autoexec.batの記述 
MSCDEXを起動する記述をしておく。
MSCDEXはMS-DOSを拡張しCD-ROMのファイルシステムを扱えるようにするもの。
以下の2つのスイッチを記述しておく。
@ D:デバイス名 というスイッチをつける(config.sysでデバイスドライバを組み込む時も同じ名前でスイツチ名をつけておく)
A L:ドライブ名  CD-ROMに割り振るドライブレターを指定する。 (下記ではCD-ROMをPドライブに割り振っている)



(2) Config.sysの記述
出ましたね。懐かしいですね。Config.sys。 しばらく遠い目をしてしまいますね。
・・・・(= =)?
ついで、Config.sysでCD用のデバイスドライバを組み込んでおく。
DEVICE=D011v110.SYS

デバイスドライバは、これとは違うのがいろいろあるので各自の環境で名前は違うはず。
D:デバイス名 というスイッチをつけておく。デバイス名はMSCDEXで付けたのと同じ名前にする。



これで、CD-ROMが使える起動ディスクができたので、
VirtualPCでフロッピーディスクから起動させる。



4 HDDを初期化
(1) FDISKで領域を作成
久しく使っていなかったFDISKとかをやってみる。これまた遠い昔の記憶で・・
A:\>FDISK

下のような画面が出たら  1 を選べばいい。
MS-DOS領域または論理MS-DOSドライブを作成、というやつ



(2) フォーマット
ついで、これも久しく使っていないFORMAT
A:\>FORMAT C:




(3) システムの転送
そして、さらに久しく使っていなかったので、すっかり忘れていたシステムの転送
A:\>sys c:

これで、HDDにシステムが転送され、一応HDDからも起動できるようになります。(当然MS-DOSが立ち上がります)
転送されるのはCommand.com、IO.sys MSDOS.sysだけです。起動ディスクを使ったシステムの転送では、おそらく
windows95用のIO.sys, MS-Dos.sysが転送されると思います。



実は、システムの転送なんて久しくやってなかったので(MS-DOS使ってたのは20年も前ですから)
すっかり忘れていて、しばらくたいへんな目にあいました。→顛末はトラブルシューティング

とりあえず、HDDから起動してみる。まだ漢字カナは使えない(英語版のMS-DOS)ですが・・



転送されたファイルを確認してみる。
システム属性のファイルも表示させたいので
>dir /a
 
IO.SYS MSDOS.SYS COMMAND.COM ができています。(というか、それだけ)



20年ぶりにMS-DOSのコマンドを使ったんで、ここまででふーふー言ってる。
しかし、壁はこれで終わりではない・・。恐るべし、Windows95のインストール。
たかがWindows95、されどWindows95(なんのこっちゃ?)


5 Windows95のインストール
ここで、ようやくWindows95のインストールができるわけです。
(ワクワク! いよいいあのWindows95にご対面かあ、とか思うわけですが ←ここから始まる地獄の
苦労をまだ知らない)

さて、通常ならCD-ROMからsetup.exeをたたいてWindows95のインストールに入るわけですが、CD-ROMからの
インストールは途中で反応がなくなる・・というトラブルも報告されているので、CD-ROMの内容を全部HDDに
コピーすることにしました。win95にあるcabファイルもコピーする。
(ここではCDドライブはPドライブになっている)
P:\>copy *.* C:
P:\>copy win95\*.* C:\win95

これで、インストールに必要なファイルがすべてHDDにコピーされたので、いよいよWindows95のインストール
に入ります。
win95のフォルダにsetup.exeはあるので
C:\Win95>setup

さあ、始まるぞ、あとは自動的にインストールが始まる・・と思いきや、エラーメッセージを吐き出して止まってしまった。
どうもメモリ不足のようだ。(ガーン。まあ、そんなに簡単にいくとは思ってなかったけど。システムのセットアップには
トラブルはつきものだし)




実は、下の図はインストールが完了したあとにMEMコマンドでメモリの使用状況を確認してみたところですが、
RAMは64Mあるが、コンベンショナルメモリの空きは470K。
まあ、上の実行可能な最大プログラムサイズは最低、451584バイト必要です・・という表記と比べてみて、足りてる感じ
もしますが、・・


MS-DOS時代は、コンベンショナルメモリ(まあ、要するにユーザが自由に使ってもよいメモリ)確保のために
BUFFERS,FILESの数を極限まで減らしたり、DEVICEHIGH= を書いてみたり、不要なデバイスドライバ
は削除してみたり、・・・UMB,HMA,EMS,XMS?とか
もう、それは数えきれないほどの汗を流したものですが、・・
すっかり、そんな面倒な技は忘れてしまった(そもそも起動ディスクには、EMM386.exeもHiMEM.sysもないし)ので、
ここは安易な策でいきました。(というか、そういうあたりのメモリ管理技法なんかの復習のためにWindows95を
インストールしてみようと思ったんですけどね。最初は)

えっと、本題に戻るとsetupの最初にscandiskが走るらしいが、これがかなり多量のメモリを食うらしいのです。
それで、setup /im /is というオプションパラメータをつけてsetupしてみました。
/im おそらくメモリ不足でも無理やりsetup進めるというパラメータ
/is おそらくscandiskは省略というパラメータ

これで、無事Windows95のインストールが始まりました。

(めでたし、めでたし)
と、思いきや、ここでまたまたひとつ問題発生。
実はおじさんのもっていたWindows95は、Win3.1ユーザ用のアップグレードパッケージ。
途中で、Win3.1のディスクを入れろとのたまうのだが、Win3.1はさすがにどっかにいってしまったわけで。
(うーん。困った。)
cabファイルの中身はアップグレード版も通常版も同一なので、いろいろ策はあるだろうが、
ここは一番イージーなおまじないで切り抜けてみることにする。(うまくいくかどうか、わからないが)

Windows95のアップグレード版は、このときwin386.exeというファイルがあるかどうかしかチェックしてない(という噂)
を聞いたことがあるので、おまじないをしてみる。(空のwin386.exeを作ってルートディレクトリに置くだけ)

ということで、この関門もクリアして、インストールはなんとか進んでいきました。途中、”インストールには30分以上
かかりますみ”みたいな注意が出るが、今時のPCのスペックではVirtualPC上とはいえ、ほんの数分。

途中で、ハードウェアの調査画面になります。
----------------------------------------------
□サウンド、MDI、またはビデオキャプチャカード
□ネットワークアダプタ
----------------------------------------------
おそらく、ネットワークアダプタはチェックしないほうがスムーズにインストールが進むようです。



インストール中に一般保護違反のエラーが出て中断する、という報告がありますが、おじさんの場合は
特に問題なくインストールが進みました。

というわけで、昔懐かしいWin95のあの起動サウンドとともに、あの画面とご対面。



6 トラブルシューティング

(1) Invalid System disk
Invalid system disk というのは、BIOSチェックが終わり、HDDも認識されたけど、システム起動ディスクに
なってないよ、という状態。



MS-DOS時代からもはや20年。久しくsysコマンドを使っていなかったので、対処するまでかなり時間かかってしまった。
最初、このバーチャルディスク(VHD)をディスクエディタで眺めて、MBRの構成に何かエラーがあるんじゃないか
とかいろいろ調べてみたり、結構時間をくってしまった。

なんのことはない。SYSコマンドでシステムを転送するだけだった。
A:\>sys c:

これだけ。
Windows95のパッケージにある、インストールマニュアルにはこの辺りのことは、何も書いてないんですよ。ほんとに。
不親切なマニュアルだなあ・・

(2) アップグレードパッケージからのインストール
Windows95のアップグレードパッケージをインストールに使う場合は、途中でWin3.1のディスクを要求される
のでおまじないが必要。

このほかにも、プリインストール版のWindows95(OEM版になるのかな)のCD-ROMや、当時のHDDの丸ごとコピー
もあったりするので、これのバーチャルディスク化はまた暇があればやってみる(かもしれない)

TopPage

inserted by FC2 system