◆【PCI配下のデバイス】だけの再構築が 大方針。
【解説版】流に 全て手作業で行いますが、処理項目は限定されています。
※ここからの作業を行う前に、MOドライブとCD-Rドライブを 2940U2W(起動ドライブ接続)に引っ越してある。
BIOSアップ後このマザーボードで初めて処置を行った時、
【PCI バスマスター IDEコントローラー】の組み込みの直後に Win98が一時的にIDE接続のHDDを見失う現象があったので、
今回も【インストールセット】を SCSIのHDDにコピーしました。(偶然にも 今回はどうやら必要無かったようだ。)
●HKEY_LOCAL_MACHINE\Enum 配下のレジストリを「テキストファイル」 に書き出しておく。
(重要な参照資料)
★ここで説明している作業は 【本来の田中式処置】ではないし、“全検出”ではない。
したがって、
失敗した時に“ヤリ直すためのバックアップ”としては
【解説版の REG_DEL\DOS_REG.DEL の Del_hzn.bat や Del_back.bat】は 利用できない。
利用できるのは 【解説版の Bef_DEL.C#の C_r_back.bat と GUI_BackUp.Bat】だけ。
パターンを変えて再処置するなら ↑これを利用する。
※今回の私の場合は いきなりセーフモードGUIに突入するので、↑これらも利用できない。
(セーフモードGUIでMS-Dosプロンプトを起動するのは危険だから)
従って、今回は“ヤリ直すためのバックアップ”としては 先ほどの【Cドライブ全体保存】だけ。
◆今回は【パワーマネジメント制御】に関連する部分は 再構築の対象から外れているので、
再構築処理が「ユーザー設定」に分散して影響を受ける事は無いハズ。
従って、「シングルユーザ環境」にする必要も無いし、ネットワーク関連の設定についても 普通の使用状態のままで 処置を行う。
即ち、【優先的にログオンするネットワーク = Microsoftファミリログオン】のままで行う。
(スタートメニューで「***のログオフ」が出現している状態で行う)
◆“リソース予約”や“ハードウェアプロファイル”は解除し、初期的状態としておく。
◆スクリーンセーバーは「無し」に設定する。
◆【電源管理のプロパティ】に関する設定は 無理に“初期的な状態”にする必要も無いが、
作業途中で パワーダウン状態に移行しないように設定する。
★普通に起動しても PCI-VGAで起動するように設定変更しておく。
専用ディスプレィドライバはアンインストールせずとも PCI-VGAに切り換えるだけで良いハズなのだが、
ATIディスプレィドライバの場合、通常とは違い、
ドライバアンインストールを先に行わないと VGAに切り換えた後で問題が起きるので 先にアンインストールしてからVGAに切り換えた。
★【サウンド無し】に設定しておく。
★本当は、この辺で サウンドカードのユーティリティを“アンインストール”しておく。
ドライバは生かしておき、サウンドカード自体は装着してあってもOK。
私は 【実験的組み込み〜比較データ入手】を狙ったので 今回は後回しにしたが、予定が狂ったので 後で汗をかくこととなる。
◆「ファイルシステムのプロパティ」 は 通常設定したままにしておく。
◆「自動実行項目」は 最少限度にしておく。
・"C:\windows\スタートメニュー\プログラム\スタートアップ”の中にあるショートカットを
一時的に 別フォルダへ移動。
・msconfig.exe実行。
残しておく項目 = SystemTray と、internat.exe。
今回は「2つの LoadPowerProfile項目」は有効なままにしておく。(パワーマネジメントデバイスは再構築させないから。)
ScanRegistry は無効にした。
Norton Auto-Protect は無効にした。
Norton eMail Protect は無効にした。
C:\AutoExec.bat の先頭行の【〜〜\NAVDX.EXE /startup】も 一時的に無効化した。(Norton AntiVirus の起動時スキャン)
POINTER(InteliMouseのユーティリティ)は無効にした。
TaskMonitor は無効にした。
SchedulingAgent は もともと無効にしてある。
C:\windows\Win.ini の中の「自動実行項目」を無効化する。
※msconfig.exe実行時に
【Win.iniタブ】で load= と run= の右辺に記述があれば、この行のチェックを外す。
★念のため、(通常に起動したWindowsで) IDE接続-HDDの【DMA転送】をOFFにしておく。
(【IDE コントローラ】を残す可能性もあり得る。)
------ those Changes were taked effect at Normal_GUI-mode ------
★Dosで CDresQを実行し “Cドライブ全体保存”をする。
同じく CDresQ にて 「Dドライブ、Eドライブ、K・Lドライブ」のドライブ全体のデータを保存する。
Ultra100_TX2を接続した後は、
それまでのDドライブがEドライブとなり、Ultra100_TX2接続の基本領域がDドライブとなる。
Ultra100_TX2接続のHDDはドライブ分割が1ドライブ増えるので、
代わりに ATA33のHDDの「J/K/Lドライブ分割」を1ドライブ減らして、「K/Lドライブ分割」とする。
====================================
◆PC電源Off。マザーボードのスイッチOff。外部デバイスの電源Off。PCの電源ケーブルを抜く。
外部デバイスの接続ケーブルを取り外す。
※知らない人が増えてしまいましたが、「切るときは本体側から。入れる時は周辺側から。」が基本です。
◆サウンドカードを取り外した。
◆【RexSCSIカードを外す】+【2940U2W 挿し換え】+【Ultra100 TX2 とHDD接続】は 同時に行なった。
この時 ATA33-HDDの第1ドライブを外し、
ATA33-HDDの第2ドライブをマザーボードの【プライマリ IDE コントローラ】に接続変更した。
電源を入れ FD起動し、「fdisk+format」を行った。
◆【MSDコマンド】を実行し、拡張カードの“Rom占有領域”を調べる。
拡張カードを1枚追加すると、
“カード取付け位置を変更していない拡張カードのRom占有領域”も変更される事も多いので、要注意です。
※私の場合、“HDDデータの引越し”を行いますし、
【拡張ATAカード+SCSIカード】を2枚挿しにしただけで不安定になる事例を聞いているので、慎重に構えました。
【SCSIカード2枚挿し】をしていない人や 2枚挿しでも実績を自分で確認している人は、
下記の“EmmExclude=C800-D2FF”とか“X=C800-D2FF”の設定は 無理に行う必要はありません。
その場合は、ここの説明については、
【◆〜〜C:\の起動ファイル保存】と【◆〜〜自動組み込み〜〜“ファイルsetツリー”をWindows配下にコピー】
等を行い、次の【★★SafeモードでGUI起動〜〜】に進んで下さい。
フロッピー起動 をし、C:\windows\system.ini と C:\config.sys を編集。
(拡張カード構成の“Rom占有領域”を避けさせる。)
※system.iniの [386Enh]セクションに、EmmExclude=A000-C7FF と EmmExclude=C800-D2FF を追加。
※config.sys の device=〜〜emm386.exe文で X=A000-C7FF X=C800-D2FF を設定。
(次の【Command_Prompt_Mode + winコマンドによるセーフモードWin起動】のための準備。)
※EmmExclude=C800-D2FF や X=C800-D2FF などの 直接の意味は【補足 1】で説明。
◆C:\Msdos.sys、C:\Config.sys、C:\Autoexec.bat を適当なディレクトリにバックアップ。
(この後 一時的に修整するので、作業が全て完了したら 元に戻すために保存。)
次に セーフモードGUIでWin起動したが、
この時の【セーフモードWin起動】は 通常のセーフモードWin起動は行わなかった。
【Dos版のASPIマネージャ・ドライバ】を読み込ませて Command_Prompt_Modeで起動してから
win /d:fm と実行し、どうしても欲しいCD保管ファイルを【セーフモードWin98】で読み出して HDDにコピーした。
(特殊な事情あり。)
念のため 再起動し、
【Dos版のASPIマネージャ・ドライバ】を読み込ませずに 通常のセーフモードWin起動を行い、
先に退避しておいた“ATA33-HDDデータ”を
セーフモードGUIのWindowsにて “Ultra100_TX2接続HDDの 拡張領域の論理ドライブ”にコピーした。
※セーフモード起動した時に “空のDドライブ”に対して Windowsが【Temporary Internet Files】を どのように自動再生するか、
様子を観察したかった。
FD起動し、
先に【CD-ResQ】で保存してあるCドライブ全体を Dosでリカバリー(復旧)した。
Cドライブ全体をリカバリーしてしまったので、
フロッピー起動 をし、もう一度 C:\windows\system.ini と C:\config.sys を編集。
※system.iniの [386Enh]セクションに、EmmExclude=A000-C7FF と EmmExclude=C800-D2FF を追加。
(ここでは 単純に“用心”の意味で設定。)
EmmExclude項目については後述。
※config.sys の device=〜〜emm386.exe文で X=A000-C7FF X=C800-D2FF を設定。
◆【Ultra100 TX2】を自動組み込み させるための“ファイルsetツリー”をWindows配下にコピーした。
【RexPCI-30】を外してあるし、【2940U2W】の取付けてあった位置に【Ultra100 TX2】を取付けているし、
【2940U2W】の取付け位置も変わっているので、通常モードでのWin起動をする訳にはいかない。・・・セーフモードでGUI起動する。
※サウンドカードのユーティリティを“アンインストール”するチャンスを失ってしまった。
しかし、よく考えてみたら 元々 ドライバだけの組み込みであり、元々 ユーティリティは組み込んでいなかった。(幸運、幸運。)
ここまでが 予定が狂った部分。 予定が狂った理由については ★1.を参照。
あとは、【田中式処置_解説版】のパターンと同じ。
ただし、削除するデバイスは PCI配下のデバイスだけであり、その他 デバイス条件などが異なる。
====================================
★★SafeモードでGUI起動して、「デバイスマネージャ」で 削除作業 を行う。
★【PCIバス】の配下のデバイスだけが削除・再検出の対象である。(ディスプレィカードも削除+再検出の対象。)
PCIバス配下以外のデバイスは 削除しない。
★Win98が 拡張機能として組み込んだ【仮想デバイス】は 基本的には 削除しない。
★ドライバサービスが HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\System 配下のデバイスは 削除・再構築させない。
即ち【システムデバイス】として認識されている物。
(PCIバス所属のデバイスであっても、【システムデバイス】は 削除しない。)
★“PCI配下の削除カード”の制御下のデバイスは 全て★削除する。
【接続別】に表示させた時の、“削除デバイス”の下流デバイスは 必ず★削除する。(下流のデバイスから先に削除する。)
◇“特定のハードウェア”をデバイスマネージャーで削除した場合などで、
【そのハードウェアを “何らかの互換デバイス”として動作させるための 仮想デバイス(つまり同じハードウェアに対するもう1つの設定)】
は、仮想デバイスであっても ★削除する。
(これが、【仮想デバイス】を削除するかしないか〜〜の ↑判断基準である。)
この例として、「Sound Blaster PCI128 Legacy Device」等が それである。(実体デバイスは「Creative Labs Sound Blaster PCI128」。)
他の例として、USBも同様であり、仮想デバイスであっても ★削除する。
◇USBは 【仮想デバイス】と【実体デバイス】の2種類が“セット”で動作するので、再組み込みも“セット”で組み込む。
【USBコントローラ】← これは 物理デバイス。
【USBルートハブ】 ← これは 仮想デバイス。
【HID互換×××】 ← これは 仮想デバイス。(××× の部分の文字は、マウスとかプリンタ。)
【USBルートハブ】は、接続されたUSBデバイス種 とは関係ない。
【注意】: 【レジストリkey】による具体的な詳細報告を 下方で記述しているが、
今回の場合、USBに関しての“レジストリ操作”は 完璧な記述ではない。
なぜなら、私はUSBに用が無く、元々 “無効化〜自動削除+手動掃除”しているので、
一部 欠落の部分がある・・と思われる。
※HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\USB (0001)
HKEY_LOCAL_MACHINE\Enum\USB\ROOT_HUB
(USB ルート ハブ)
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\HID
(ヒューマン インターフェイス デバイス)
HKEY_LOCAL_MACHINE\Enum 配下に、もう1種類 USBの【レジストリkey】が存在したと思う。
(HKEY_LOCAL〜 \System\〜\HID に対応するデバイス。デバイス名は“HID互換〜〜〜”。)
※HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\USB (0000)
HKEY_LOCAL_MACHINE\Enum\PCI\VEN_8086&DEV_7112&SUBSYS_00000000&REV_01\BUS_00&DEV_04&FUNC_02
(Intel 82371AB/EB PCI to USB Universal Host Controller)
HKEY_LOCAL_MACHINE\Enum\MONITOR はどうする?・・・・ ★【削除する】★
モニター機種を変更する訳でもないし、モニターは受け取ったデータを表示するだけ。
ディスプレィカードが VGA動作すれば それなりの表示をするだけでは?。
いや、違う
ディスプレィカードの下流デバイスであるから、削除しておいて 再認識させればよい(ドライブと同じように考える)。
HKEY_LOCAL_MACHINE\Enum\ESDI (ESDIキーを残して、配下を削除。、、ディスク ドライブ)
GENERIC IDE DISK TYPE47 , GENERIC IDE DISK TYPE80
====================================
★★デバイスマネージャでの 削除作業 が済んだ後の作業・・・レジストリエディタで「ごみ」を削除。
※440BXチップセット系のパソコンでは、HKEY_LOCAL_MACHINE\Enum\ACPI の代わりに HKEY_LOCAL_MACHINE\Enum\BIOS である
以下、読み替えて下さい。
★【注意】(削除・再構築しないデバイス)
◇ドライバサービスが Class\System配下のデバイスは 削除・再構築させない。↓
(HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\System の配下のデバイス)
(PCIバス所属のデバイスであっても 削除・再構築させない。)
例 :
Intel 82443BX Pentium(r) II Processor to AGP controller
PCI バス
DMA コントローラ
Intel 82443BX Pentium(r) II Processor to PCI bridge (with GART support)
PCI IRQ ステアリング用 ACPI IRQ ホルダ
Intel 82371EB PCI to ISA bridge (ISA mode)
Intel 82371EB Power Management Controller
◇PCIバス配下でないデバイスは 削除・再構築させない。↓
例 :
フロッピー ディスク コントローラも残す (Class\System配下のドライバサービス fdc\0000 fdc\0001)
フロッピードライブも残す (Class\System配下のドライバサービス DiskDrive\0000 DiskDrive\0008)
HKEY_LOCAL_MACHINE\Enum\ACPI\*PNP0501\00000001
DeviceDesc=通信ポート (COM1)
Driver=Ports\0003
(【COM2】was setted to Disabled in MatherBord-BIOS )
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Ports\0000
DriverDesc=通信ポート
ProviderName=Microsoft
PortDriver=serial.vxd
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Ports\0003
DriverDesc=通信ポート
ProviderName=i4 CORPORATION
PortDriver=NWCQ9SDD.VxD
========================
★【注意】(削除するレジストリ項目、削除するレジストリkey)
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Setup\SetupX\INF\OEM Name の配下(一部分)
「ごみ」が 残っている。↓
C:\windows\INF\OTHER\CreativeEAPCI95.INF=EAPCI95.INF を削除
C:\windows\INF\REXPCI30.INF=REXPCI30.INF を削除
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\run の配下(一部分)
「ごみ」が 残っている。↓
"ATIGART"="c:\\ati\\gart\\atigart.exe" を削除
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Display の配下(一部分)
「ごみ」が 残っている。↓
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Display\0001\ATI Multimedia Hardware を削除
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Display\0001\ATI WDM Configurations を削除
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\MEDIA\0000 を削除
Creative Labs Sound Blaster PCI128
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\MEDIA\0001 を削除
Creative Labs Sound Blaster Legacy Devise
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\MEDIA\0002 を削除
Creative Gameport Joystick
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\USB\0000 を削除
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\USB\0001 を削除
DiskDrive\0001 DiskDrive\0002 DiskDrive\0003 DiskDrive\0004 DiskDrive\0006 DiskDrive\0007
は HDD・・・削除
DiskDrive\0005 は OLYMPUS_MOS350・・・削除
====================================
★【注意】(削除対象だが、GUIでは削除できない。あとで Dos_DEL.bat↓で処理)
(削除作業終了の後 ⇒ 再起動 ⇒ Command_Prompt_Mode ⇒ Dos_DEL.bat ⇒ 再起動)
[HKEY_LOCAL_MACHINE\Enum\MF\CHILD0000]
[HKEY_LOCAL_MACHINE\Enum\MF\CHILD0001]
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\hdc\0001] ← 後ろの番号は パソコン環境によって異なる場合がある。
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\hdc\0002] ← 後ろの番号は パソコン環境によって異なる場合がある。
◇HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\hdc の後ろの番号は
パソコン環境によって異なる場合がある。
上記のレジストリは GUIでは削除できない。
(【プライマリ IDE コントローラ】 と 【セカンダリ IDE コントローラ】)
◇【Dos_DEL.bat】の内容 ↓ (最低限度 これだけは必要。)
regedit /D HKEY_LOCAL_MACHINE\Enum\MF\CHILD0000
regedit /D HKEY_LOCAL_MACHINE\Enum\MF\CHILD0001
(↑ MFキーを残して 配下を削除。)
regedit /D HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\hdc\0000
regedit /D HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\hdc\0001
regedit /D HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\hdc\0002
regedit /D HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\hdc\0003
regedit /D HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\hdc\0004
(↑ hdcキーを残して 配下を削除。)
hdc の後ろの番号は パソコン環境によって異なる場合がある。↑
※私が使った Dos_DEL.bat は このページの後方に掲載してあります。
【デバイスマネージャでのデバイス削除】の後、
【レジストリエディタ操作】を行う段階(今)で
HKEY_LOCAL_MACHINE 〜〜〜 Services\Class\hdc\000x の【x部分の番号】について、Dos_DEL.bat の内容を確認して下さい。
(MF\CHILD0000 の番号も確認した方が良いかも。)
====================================
★HKEY_LOCAL_MACHINE\Enum配下のレジストリを書き出した「テキストファイル」 を参照し、ASD\Prob キー配下の「ごみ掃除」を行う。
◇ HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ASD\Prob キー配下の「'削除デバイス'に関する項目」 のみを削除する。
(キーではなく、項目を削除する)
「レジストリキー記述」の部分から、「,,,,\Enum\」の後方の部分、即ち
例えば、Root\*PNP0C01\0000 の部分の文字列を「検索文字列」とする。
この場合の「検索ダイアログBox」での「検索条件設定」は、
「値」と「完全に一致する物だけ検索」の2箇所だけチェックONとする。
全てチェックONでも良いが、[Prob]キー配下の外(そと)でも見つかってしまうので、これを削除しないように気を付ける。
【ASD\Prob キー配下の項目 ROOT\*PNP0900\0000】は【PCI-VGA】として認識していた時のデータであろう・・・削除。
(インサイドWindows98レジストリ p.304)
※ [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ASD\Prob] キーを左クリックした状態を「検索開始の位置」とする。
※同じ項目が「Probキー配下」で大体2〜3回見つかる
以下は 今回 削除対象となった PCIデバイス一覧。
[HKEY_LOCAL_MACHINE\Enum\PCI\VEN_1002&DEV_5246&SUBSYS_00081002&REV_00\000800]
"DeviceDesc"="ATI Rage 128 MAGNUM SD AGP (日本語)"
[HKEY_LOCAL_MACHINE\Enum\PCI\VEN_8086&DEV_7111&SUBSYS_00000000&REV_01\BUS_00&DEV_04&FUNC_01]
"DeviceDesc"="Intel 82371AB/EB PCI Bus Master IDE Controller"
[HKEY_LOCAL_MACHINE\Enum\PCI\VEN_8086&DEV_7111&SUBSYS_00000000&REV_01\BUS_00&DEV_04&FUNC_01\Child0000]
"HardwareID"="MF\\GOODPRIMARY"
[HKEY_LOCAL_MACHINE\Enum\PCI\VEN_8086&DEV_7111&SUBSYS_00000000&REV_01\BUS_00&DEV_04&FUNC_01\Child0001]
"HardwareID"="MF\\GOODSECONDARY"
[HKEY_LOCAL_MACHINE\Enum\PCI\VEN_8086&DEV_7112&SUBSYS_00000000&REV_01\BUS_00&DEV_04&FUNC_02]
"DeviceDesc"="Intel 82371AB/EB PCI to USB Universal Host Controller"
[HKEY_LOCAL_MACHINE\Enum\USB\ROOT_HUB\PCI&VEN_8086&DEV_7112&SUBSYS_00000000&REV_01&BUS_00&DEV_04&FUNC_02]
"DeviceDesc"="USB ルート ハブ"
[HKEY_LOCAL_MACHINE\Enum\PCI\VEN_10CD&DEV_1300&SUBSYS_131010CD&REV_03\BUS_00&DEV_0A&FUNC_00]
"DeviceDesc"="Ultra SCSI PCI Card REX PCI30"
[HKEY_LOCAL_MACHINE\Enum\PCI\VEN_9005&DEV_0010&SUBSYS_A1809005&REV_00\BUS_00&DEV_0B&FUNC_00]
"DeviceDesc"="Adaptec AHA-2940U2/AHA-2940U2W PCI SCSI Controller"
[HKEY_LOCAL_MACHINE\Enum\MF\CHILD0000\PCI&VEN_8086&DEV_7111&SUBSYS_00000000&REV_01&BUS_00&DEV_04&FUNC_01]
"DeviceDesc"="プライマリ IDE コントローラ (デュアル FIFO)"
[HKEY_LOCAL_MACHINE\Enum\MF\CHILD0001\PCI&VEN_8086&DEV_7111&SUBSYS_00000000&REV_01&BUS_00&DEV_04&FUNC_01]
"DeviceDesc"="セカンダリ IDE コントローラ (デュアル FIFO)"
[HKEY_LOCAL_MACHINE\Enum\SCSI\OLYMPUS_MOS350__________1\PCI&VEN_10CD&DEV_1300&SUBSYS_131010CD&REV_03&BUS_00&DEV_0A&FUNC_0040]
"DeviceDesc"="OLYMPUS MOS350 "
[HKEY_LOCAL_MACHINE\Enum\SCSI\PLEXTOR_CD-R___PX-W8220T1\PCI&VEN_10CD&DEV_1300&SUBSYS_131010CD&REV_03&BUS_00&DEV_0A&FUNC_0050]
"DeviceDesc"="PLEXTOR CD-R PX-W8220T"
[HKEY_LOCAL_MACHINE\Enum\SCSI\IBM_____DPSS-309170N____S\PCI&VEN_9005&DEV_0010&SUBSYS_A1809005&REV_00&BUS_00&DEV_0B&FUNC_0000]
"DeviceDesc"="IBM DPSS-309170N "
[HKEY_LOCAL_MACHINE\Enum\SCSI\QUANTUM_ATLAS10K2-TY092LD\PCI&VEN_9005&DEV_0010&SUBSYS_A1809005&REV_00&BUS_00&DEV_0B&FUNC_0010]
"DeviceDesc"="QUANTUM ATLAS10K2-TY092L"
[HKEY_LOCAL_MACHINE\Enum\ESDI\GENERIC_IDE__DISK_TYPE47_\ROOT&*PNP0600&000000]
"DeviceDesc"="GENERIC IDE DISK TYPE47"
[HKEY_LOCAL_MACHINE\Enum\ESDI\GENERIC_IDE__DISK_TYPE47_\MF&CHILD0000&PCI&VEN_8086&DEV_7111&SUBSYS_00000000&REV_01&BUS_00&DEV_04&FUNC_0100]
"DeviceDesc"="GENERIC IDE DISK TYPE47"
[HKEY_LOCAL_MACHINE\Enum\ESDI\GENERIC_IDE__DISK_TYPE80_\ROOT&*PNP0600&000100]
"DeviceDesc"="GENERIC IDE DISK TYPE80"
[HKEY_LOCAL_MACHINE\Enum\ESDI\GENERIC_IDE__DISK_TYPE80_\MF&CHILD0001&PCI&VEN_8086&DEV_7111&SUBSYS_00000000&REV_01&BUS_00&DEV_04&FUNC_0100]
"DeviceDesc"="GENERIC IDE DISK TYPE80"
[HKEY_LOCAL_MACHINE\Enum\MONITOR\TTK0771\PCI_VEN_1002&DEV_5246&SUBSYS_00081002&REV_00_000800]
"DeviceDesc"="TOTOKU CV821X"
[HKEY_LOCAL_MACHINE\Enum\PCI\VEN_1274&DEV_5000&SUBSYS_4C4C4942&REV_01\BUS_00&DEV_0C&FUNC_00]
"DeviceDesc"="Creative Labs Sound Blaster PCI128"
[HKEY_LOCAL_MACHINE\Enum\VIRTUAL\SSC-LEGACY\PCI&VEN_1274&DEV_5000&SUBSYS_4C4C4942&REV_01&BUS_00&DEV_0C&FUNC_00]
"DeviceDesc"="Sound Blaster PCI128 Legacy Device"
[HKEY_LOCAL_MACHINE\Enum\VIRTUAL\*PNPB02F\PCI&VEN_1274&DEV_5000&SUBSYS_4C4C4942&REV_01&BUS_00&DEV_0C&FUNC_00]
"DeviceDesc"="Creative Gameport Joystick"
====================================
★HKEY_LOCAL_MACHINE\Enum配下のレジストリを書き出した「テキストファイル」 を参照し、DeviceClasses キー配下の「ごみ掃除」を行う。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\DeviceClasses の配下(選択)
System\CurrentControlSet\Control\DeviceClasses]キーの配下の
##.#000000000000000,,,(末尾は 数字#{16進数})キー を削除する。(ただし、'削除デバイス'に関するキーのみ削除する)。
この場合の「検索ダイアログBox」での「検索条件設定」は、全項目で「チェックON」とする。
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\DeviceClasses]のキーの下に {f18a0e88-c30c-11d0-8815-00a0c906bed8}キーがあり、
その下に
##.#0000000000000001#{f18a0e88-c30c-11d0-8815-00a0c906bed8}キーがある。
(##.#00000〜〜の後ろの番号は「1#」だったり「2#」だったりする)
ここに「DeviceInstance」という項目が存在し、その値は、「USB\ROOT_HUB\PCI&VEN_8086&,,,,,,,」である。
これは「削除デバイス」の情報なので、この ##.#00000000000000,,,(末尾は 数字#{16進数})キー を削除する。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\DeviceClasses\{f18a0e88-c30c-11d0-8815-00a0c906bed8}\
##.#0000000000000002#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
DeviceInstance=USB\ROOT_HUB\PCI&VEN_8086&DEV_7112&SUBSYS_00000000&REV_01&BUS_00&DEV_04&FUNC_02
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\DeviceClasses\{f18a0e88-c30c-11d0-8815-00a0c906bed8}\
##.#0000000000000004#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
DeviceInstance=USB\ROOT_HUB\PCI&VEN_8086&DEV_7112&SUBSYS_00000000&REV_01&BUS_00&DEV_04&FUNC_02
【注意】: ↑ 上の 「##.#0000000000000002# 〜〜 -00a0c906bed8}」は、その前の行(HKEY_LOCAL 〜〜 00a0c906bed8}\)からの“続き”
です。
その3行あとの「##.#0000000000000004# 〜〜 -00a0c906bed8}」も 同様です。
ホームページでの可読性を考慮して、私が 勝手に改行したものです。
====================================
★★レジストリエディタでの「ごみ削除」が済んだあとの作業・・・ファイル操作。
◆【Ultra100 TX2】を自動組み込みさせるための“ファイルsetツリー”をWindows配下にコピーしておく。
<C:\Msdos.sys、C:\Config.sys、C:\Autoexec.bat、C:\windowsSystem.ini の一時的な修正>
◆C:\Config.sys を 一時修正する。
以降の再起動で【自動検出】が行われる時、C:\Config.sysで【emm386.exe】を無効にしておく事は重要です。
【emm386.exe】を無効にしておかないと 起動時に EMM386 がエラーを起こして停止する可能性があります。
Win98インストーラも、セットアップの流れの中において【デバイス検出】が行われる時は【emm386.exe】を無効にしています。
◇一時無効化するもの(Device文),,,,emm386.exe、
kkcfunc.sys、ansi.sys。
Dos版ユーティリティ、ネットワーク、CD-Romなどの「リアルモードドライバ」を全て「一時無効」にする。
上級ユーザーは状況に応じて「setver.exe」も無効化。
◇一時的に設定する,,,,DOS=HIGH,NoUMB(DOS=HIGH,UMB は無効化)、
Buffers=40、Files=40 (35〜50)。
上級ユーザーはマザーに応じて「STACKS=0,0」を設定。
◇ドライブの接続状況によっては LastDrive=〜 を解除しておく。
◇Dosで長いコマンドラインを実行できるように「SHELL文」を設定する。
◇SHELL=C:\COMMAND.COM C:\ /U:255 /L:1024 /E:16384 /P
(/E:16384 の数値は任意だが、24576程度が望ましい。【処置】の間だけは 16384よりも小さくしない方が安全。)
※【起動時の EMM386エラー】は、【解説版】の実行時にいくつかの実例があります。
【2ch掲示板】で、技術者のフリ?をした人間が【田中式処置】を批判して
それらしい技術論を展開し、「Win98では emm386.exeは意味を持たない〜〜」と評論していますが、
そちらを信用する人は 勝手にどうぞ。
【起動時の EMM386エラー】については、【HDD起動からの Win98セットアップ】を行えば その裏付けを簡単に見ることが出来ます。
◇【HDD起動からの Win98セットアップ】の説明
通常のWin98起動をする時、【Command Prompt only】を選択し Dos起動できますよネ。
その状態から Win98セットアップを実行するんです。
(私は スタイルが多い。)
ただし、【Command Prompt only の起動をするために必要なファイル】だけをCドライブに置いておきます。
話が脇道に外れ過ぎるので 詳しくは書きませんが、
必要なファイルは ルート直下のファイルと windows直下の特定ファイルと command直下の特定ファイルです。
起動時に レジストリが存在しない事を IO.sys に察知させるために Msdos.sys も一部を編集します。
セットアップ直前に もういちど Msdos.sys を一部を編集します。
◆【fileセットリスト】と【具体的な方法の説明】を用意しました。→ ★Win98のクリーンインストールを「FD起動」以外の方法で行う★
この方法は 利点があります。
Win95〜Win98初期版〜Win98se にて、私は このスタイルで20回以上 セットアップしています。
通常のFD起動からのセットアップよりも条件的に有利です(コンベンショナルメモリ)。
優れたWin98が入手できる訳ではありませんが、クセのあるマザーボードでのWinセットアップに特にお勧めします。
(ただし、PC初級者は この方法の利点を活かせません。)
クセのあるマザーボードでは、emm386.exeの初期化段階で“UMA未使用領域の検出”でミスをする例があります。
このようなマザーボードは 単純に「device=C:\〜\emm386.exe」とか「device=C:\〜\emm386.exe NOEMS X=A000-C7FF」では駄目
です。パソコンの状況によって 【Xスイッチ】や【Iスイッチ】を併用してやる必要があります。
例えば、
私の このPCでは【device=C:\windows\emm386.exe NOEMS X=A000-C7FF X=C800-D2FF】ですが、
【X=A000-C7FF X=C800-D2FF】 のアドレスは マザーボードによっても違いますし、
拡張カードを外したり増設すれば このアドレス記述を変更すべき時が多いです。
Win98の標準の起動フロッピーのconfig.sysに emm386.exeの記述が無いのは、↑これが理由です。
Win98を普通にセットアップした時のconfig.sysに emm386.exeの記述が無いのも、同じ理由です。
また、私のサブのPCでは、
“使えるUMA領域”なのに emm386.exeが「使えるUMA領域」として検出してくれない領域があります。
つまり、メモリが無駄になり 起動時のコンベンショナルメモリの“空きサイズ”が小さくなります。
そういうPCでは 例えば 【I=D300-D5FF】という風に、D300-D5FFの領域を使わせるように指定する必要があります。
【D300-D5FF】の領域について その位置とサイズを判断できない方(中級者)は
ご自分がPC初心者であることを自覚して下さい。
さて、話を元に戻しましょう。
上記のスタイルで Win98セットアップを行った場合についての観察↓です。
Win98セットアップでの最初のPC再起動が行われる時、CtrlキーかF8キーでメニュー表示させ、
Command Prompt Only を選択し、Dos起動します。
(こうする事によって その後のセットアップに障害が出ることはありません。私は何度も試しています。)
そして edit C:\Config.sys 次に Enterキーを入力し、Config.sysの中の emm386.exe文を見ます。
必ず「rem文として 一時的に無効化」されています。
Config.sysの内容を確認した後、【Altキー ⇒ ファイル ⇒ 終了】そして【Ctrl+Alt+Delete】で再起動すれば、
セットアップを正常に継続できます。普通に「インストーラの意思のまま」再起動していれば 【デバイス検出】が行われます。
そして、
【セットアップの流れが“デバイス検出”と無関係の再起動】では、【先ほど無効化されたemm386.exe文】が 元に戻され、
「有効」になっています。
これも、さきほどと同様の手段で 確認できます。
意味があるからこそ インストーラが一時的に無効にするのです。
また、普通に Win98起動する場合のConfig.sysでも、
emm386.exe文の中に【HighScanスイッチ】が含まれている場合は 【新しいデバイスの検出】を行うとき Windowsが警告します。
そのまま無理に続行すると ミスが発生する確率が高くなります。
「意味を持たない」という事はありません。
私を【嘘吐き】呼ばわりする人間の方が【ウソ】を書いているのです。
書いたウソを“ソレらしく見せる”ために、【ソレらしい“ウソの技術論”】を展開しているのです。
“一般的な認識”という見地から見れば、
私のHPは異常であり、彼らの主張の方が“常識的な技術論”に見えますし、その点が 彼らの狙い目でもあります。
読む人間が【馬鹿】ばっかりだと “常識的な技術論”の主張が信用されてしまいます。
自分で確かめる事をせず、自分で考える事をせず、自分で検証する事をせず、【世俗的なソレらしさ】に優る表現をした方を信用し、
数の多い方の意見を信用する・・・。
「日本人の多くは馬鹿ばっかりだ。」と 私が表現するのは そういう意味です。
◆C:\AutoExec.bat を 一時修正する。
◇一時無効化するもの,,,,,NLSFUNC.exeの実行、JP.BATの実行。(最低限度の「シンプルな構成」にする。)
◇Dos版のFEP自動組込みは、無効にする。
*Autoexec.batの先頭辺りに、次の記述を追加しておく。
set WinDir=C:\windows、set #WinD=windows
(これは DosでのBat処理に必要。#WinD の設定は Windowsディレクトリ名)
◆C:\Msdos.sys を 一時的に修正する。
「書き込み禁止」属性をOFFにする(ファイル右クリック ⇒ プロパティ)。
「[Options]セクション」の DoubleBuffer=1 を一時的に 有効 にしておく。
※DoubleBuffer=1 が必要なのは【拡張ATAカード】やSCSIカードを装着している人だけです。
これらカードを装着している人は、次の再起動以降【自動検出】が行われている間は
DoubleBuffer=1 が必要です。
DoubleBuffer=1 が無用なSCSIカードであっても、処置の間 自動検出】が行われている間は これを有効に設定しておかないと、
Win98が【拡張ATAカード】やSCSIカードの設定を放棄します。
(拡張ATAカード・SCSIカード のどちらか1枚だけの装着であっても。)
※MsDos.sys編集で BootGUI=1 の記述を一時的に BootGUI=0 に変更しておいても良い。(Command_Prompt_Mode で止める作業の苦手な人。)
3.C:\windows\System.ini の「キャッシュ制限」は、設定したままで良し。※むしろ設定した方が良い。
[vcache]
MinFileCache=16384
MaxFileCache=24576
(↑ 行頭に空白を置かないこと。数値は 任意に。)
C:\windows\system.iniの【EmmExclude=A000-C7FF と EmmExclude=C800-D2FF】は ここで解除した。
<C:\windows\INFディレクトリ への工作>
◆削除+再検出の対象となるデバイスの【C:\windows\INF_dir の *.PNFファイル】を 削除する。
【注意】 :
SWENUM.PNF 等の「非ハードウェアデバイスの *.PNF」 は削除しない。
webfdr16.PNF、CHLJA-JP.PNF、ICW.PNF、msoe50.PNF、SETUP.PNF、wab50.PNF、OE9X50.PNF 等の
「ソフトウェアデバイスの *.PNF」 は削除しない。
<今回 削除する PNFファイル一覧>
diskdrv.PNF、mscdrom.PNF、msdisp.PNF、mshdc.PNF、scsi.PNF、ttkcv95.PNF、usb.PNF 。
<今回 削除する INFファイル一覧>
※無理に行う必要は無い。
ビデオドライバをアンインストールせずに【PCI-VGA】に切り換えただけの人は、ビデオカードのINFファイルは そのままにしておく事。
(下記の Ati〜〜.inf は私のATIカードの物。)
ATI Tech. - EnhancedATII9XAA.INF
Atii9xaa.inf, Ativbtxx.inf, Ativmdxx.inf, Ativmvxx.inf, Ativsnxx.inf, Ativtuxx.inf, Ativxbxx.inf
CreativeEAPCI95.INF
※今回は【全デバイス認識の再構築】ではないので、Layout.PNF とか machine.PNF は残しておく。
同じ理由で 今回は 【*.CBD, *.CBKファイル】は 今回は触らず。
◆C:\windows\inf\DrvIDX.BIN、C:\windows\inf\DrvDATA.BIN を削除する。
<ルートディレクトリ への工作>
◆C:\BOOTLOG.*、C:\DETLOG.* を削除する。
◆C:\windows\HWINFO.DAT を削除(削除せずとも良いが、不要なファイル)。
※C:\Netlog.txt は削除しない方が良い(再生成されなかった)
※C:\DETLOG.* も再生成されなかったが、これは後で再生成させればOK。
◆"C:\windows\スタートメニュー\プログラム\スタートアップ" の中が「空(から)」である事を確認する。
★GUIでの作業はこれで終了・・・
あとは 再起動 ⇒ Command_Prompt_Mode ⇒ Dos_DEL.bat ⇒ 再起動(Ctrl+Alt+Del)⇒ 自動検出)
========================
★上記の【再起動 ⇒ 自動検出】の状況
一言で表現すれば、デバイス検出に伴い 3回 再起動させられました。10分もかかりませんでした。
正規の【田中式処置】のように ビデオカード・DMAコントローラについての“競合調整”も不要でした。1発で完璧な状態でした。
※BIOSアップ後このマザーボードで初めて処置を行った時は Win98の挙動が通常と異なる部分があって1回目は失敗しましたが、
今回は どういう訳か 通常と同じパターンであり、“Win98がIDE接続のHDDを一時的に見失う”という事はありませんでした。
(INFディレクトリを指定する時に判明。やっぱり不思議な“合いの子マザー”?。)
1.自動検出しながら GUI起動
2.「ディスプレィアダプタの設定が正しくありません」とのメッセージは 今回は表示されない。
3.ドライバデータベースが作成される(Drvidx.bin、Drvdata.bin)
4.【PCI バスマスター IDEコントローラー】の検出・組み込み
5.【USB ホストコントローラ】の検出・組み込み
6.【SCSIコントローラ】の検出・組み込み
ドライバの場所を質問される。“特定の場所”を選択。ただし、今回は INF_dir指定する必要が無かった。
(自動的に INF_dirで組み込まれる。)
7.再起動を促される。 ⇒ Yes。再起動。
8.【プライマリIDEコントローラ】の検出・組み込み
9.【セカンダリIDEコントローラ】の検出・組み込み
10.【USBルートハブ】の検出・組み込み
11.【Ultra100 TX2 IDE Controller】の検出・組み込み
ドライバの場所を質問される。“特定の場所”を選択。ただし、今回は INF_dir指定する必要が無かった。
(自動的に INF_dirで組み込まれる。)
12.再起動を促される。 ⇒ Yes。再起動。
13.【PCI ディスプレィコントローラ】の検出・組み込み
ドライバの場所を質問される。“特定の場所”を選択。ここでは INF_dir指定する必要があった。
“全てのハードウェア”にチェック ⇒ 標準ディスプレィ選択 ⇒【標準PCI-VGA】を指定。
(ここの手順は正規の【田中式処置】と全く同じ。)
14.再起動を促される。 ⇒ Yes。再起動。
15.モニター機種が認識され、組み込まれる。(TOTOKU CV821X)
※私は Winセットアップ前に TTKCV95.INF をINFフォルダにコピーしておいたので
Winセットアップ直後に【TOTOKU CV821X】として自動認識しています。今回も同様。
【検出・認識・組み込み】が完了。
あとは、【起動ファイルチューニング】や【自動実行項目】を元に戻す作業 など。(後述)
正規の【田中式処置(最後の仕上げ)】では、DMAコントローラが2つ組み込まれていたりします。
(片方は【!マーク】付き。)
これを 指示手順に従って2つとも削除して デバイスを再検出させて組み込むのですが、
DMAコントローラの再検出時に 【PnP自動検出プロセス】を Win98が省略してしまう場面があります。
(デバイス検出時の“ダイアログBox”を注意深く見ていると判ります。)
この時、必ず PnPで自動で検出させる必要があります。
ダイアログBoxの題名が、【システムにあるプラグ アンド プレイ機器を検出します】の画面表示になる事が 重要です。
対処方法としては、【戻る】ボタンで 戻れる所まで戻ってやります。
何度か 【戻る〜戻る〜戻る】と【次へ〜次へ〜次へ】を試している内に、
「アララ、さっき【戻る・戻る〜次へ・次へ】で操作した時と違って 今度は【プラグ アンド プレイ機器〜検出〜】の画面になった。」
・・という状況の画面になります。
Win98が思い出したかのように【PnP自動検出プロセス開始の“ダイアログBox”】を表示するのです。
手作業で “DMAコントローラ種別”を指定して組み込むと 処置の効果が 半減します。
(“IDE接続のHDD=起動ドライブ”のPCでは 致命的かも知れません。)
今回は、DMAコントローラは「再検出・再構築」の対象に含まれていませんから 当然ですが、上記の作業は不要でした。
========================
◆不完全な設定となってるデバイスがあれば 再設定する。
※今回は「重複検出」や「競合」は全く無く、修整する作業は無かった。
◇デバイスマネージャで 各デバイスの認識状況・組み込み状況を一通りチェック。 全て 正常であった。
◇デバイスマネージャで「ハードウェア関連の設定」を一通りチェック。
正規の【田中式処置】の場合と異なり、“Win起動時のフロッピー検索”の設定などは 元のままであった。
※【システムのプロパティ → パフォーマンス → ファイルシステム → フロッピーディスク】。
(即ち、HKEY_LOCAL_MACHINE\Config\〜〜\Enum 配下のユーザー設定値。)
◇Win98で ScanRegW.exe を実行して「保存」。
◇【USBルートハブ】と【USBコントローラ】を無効化。
(使う予定無し。IRQの無駄遣い。)
※USBが2セット存在する内「1セットだけ無効化したい」という方は多いかも知れません。
(USBデバイスを10個も使う人は まずいないでしょう。)
i81xチップセットマザーボードでは【USBルートハブ】と【USBコントローラ】のペアが判りにくい場合、
デバイスマネージャで“接続別”に表示させると判りやすいです。
◇IDE接続のHDDの 「DMA転送」の設定(DMAサポートのHDDなら)。
再起動。
◇MOや CD-Romドライブの「同期・非同期」設定の変更。
再起動。
◇起動ファイルチューニング(C:\Msdos.sys、C:\Config.sys、C:\Autoexec.bat 等)を 元に戻し、
【自動実行項目】を元に戻す。(msconfig.exe 実行 C:\windows\Win.ini も。)
再起動。
◇"C:\windows\スタートメニュー\プログラム\スタートアップ" の中のショートカットを元に戻す。
(私の場合、C:\Windows\Drwatson.exe (ワトソン博士))
◇スワップ・Temp 等の設定を元に戻す。
再起動。
◇この辺で Dosで【Scanreg / fix】を1度実行。
再起動後に Windowsで ScanRegW.exe を実行して「保存」。
◇【専用のディスプレィドライバ】と【サウンドカード】の装着・組み込み。
私の場合は
どちらもドライバを組み込むだけで ユーティティリーは組み込まないし、IRQは#5が「空き」で1つ余っているので、
この2つの順序はどうでも良いようだ。
【サウンドカード】を装着しても Win98がIRQ割り振りの構成を組替えてくる事は無い。
ま しかし、【サウンドカード】はAGPの従属スロット(#1)に挿しているので、
今回は 先に【専用のディスプレィドライバ】を組み込んでみた。
(先日【田中式処置】を行った時とは逆)
※IRQが不足気味である事が原因で【IRQ共有】されやすい人は、どちらを先にするかを 一応は考慮した方が良さそうです。
それについては、正規の【田中式処置】の手順書に説明しています。
|