PCIセットアップディスクと
リファレンスディスクの種類


PCIセットアップの本体機種間での互換性とバージョン間の機能の異同,およびリファレンスディスクに関してまりもさんよりご教示をいただきました.また本文中の誤記に関してもご指摘をいただきました.

追記:まりもさんにPCIセットアップとリファレンスディスクに関する記事をご執筆いただきました(PC-9821およびDOS/Vソフトウェアのページ --> ノウハウ記事を読む  ここをクリック --> [PC-98] 98本体および拡張ボードには、ハードウェア設定を行うソフトウェアフロッピーが存在します。これの非公式マニュアルのようなもの を参照).


■PCIセットアップディスク
PCIセットアップ(pcisetup.exe)は,はPCIバスを備えたPC-9821デスクトップ機に付属しているソフトウェアで,PCIボードあるいはCバス(従来バス)ボードの使用するリソースを,ユーザー側が手動で固定,あるいはPC本体に自動設定させる目的で使用するものです.

※pcisetup.exeの代替フリーソフトウェアが公開されました(Dさんの GoogleドライブPNPSETUP.zip).

PCIセットアップは,MS-DOSのシステムの入ったFD(下の画像を参照)で添付されている場合の他,Windows再インストール用CDやWindowsがプリインストールされたHDDに入っている場合もあります.後者の場合,Windows95/98では,\pcisetupフォルダ内にあるmkpcifd.exeを実行するか,あらかじめMS-DOSのシステムを転送しておいたFDに,\pcisetupフォルダの中身をコピー(mkpcifd.exeのコピーは不要)することにより実行用FDを作ることができます(注).ただしWindows2000では前者の方法は不可能です("ディレクトリが見つかりません" と表示され,mkpcifd.exeが実行できません).なおpcisetup.exeは必ずしもFDから実行する必要はなく,HDDから実行することもできます.
 注:PC-9821Rv20/Ra18/N20/Ra20/N30付属のPCIセットアップFDにはexe形式のファイルは含まれておらず(従って実行ファイルはMS-DOS上で動作するバイナリファイルではないことになります),PCIセットアップは,FDのIPLからDS0のドライブ決め打ちで読み取りが行われ実行される形式のものといいます.このようになっているのは,これらの機種がNT4.0プリインストールモデルだった(従ってMS-DOSのライセンスはなし)ためではないかということです.


PCIセットアップを実行するには,MS-DOSのコマンドラインから pcisetup /c* と入力します(mkpcifd.exeがルートディレクトリにある場合).*はCバスの数です.FDから起動する場合には,autoexec.batに記述することもできます.なおPCIバスの数も同様に /p* で指定できます.

pcisetup.exeにはいくつかのバージョンがあります.筆者の手元にあるPCIセットアップディスク(FD)では,Xa10/K8・K12,Xa12/K8,Xa13/K12(1995年11月発売/pcisetup.exeの作成日付は同年8月11日)用がVer.1.20,V12/A,V13/A,V13/C(1996年2月/1995年11月7日)用がVer.1.30,またXv13/W30(1996年7月/同年4月8日)用とV13/S5C3(1996年10月/同年5月13日)用とがVer.1.40です(注1・2).PC-9821Xa/Xf/Xt付属のものは,バージョンが1.20より若いと考えられます(注3).Ver.1.50のものは,PC-9821V200,PC-9821Rv20辺り以降の機種に付属していたようです.このVer.1.50はブリッジ,マルチファンクション,IRQ(割り込みレベル)強制共有等の,PCIバスに関する機能にきちんと対応した,いわば最終版と言えるものです.逆に言えば,Ver.1.40以前はこれらに対応する前のバージョンということになります.
 注1:他にXa12/C8用がVer.1.20,Xa13/W・16/W,Xv20/W用がVer.1.40との情報があります.
 注2:Ver.1.20のPCIセットアップディスクには,pcisetup.exeの他にhelp1.msg-help7.msgも,またVer.1.40のPCIセットアップディスクには,pcisetup.exeの他にhelp1.msg-help9.msgも入っています.
 注3:PC-9821Xf付属のものはバージョンが1.10と判明しました.このPCIセットアップディスクに含まれている4つのファイル(IO.SYS,MSDOS.SYS,CONFIG.SYS,PCISETUP.EXE)のタイムスタンプは 1994年11月14日00:00 で,CONFIG.SYSの内容は SHELL = PCISETUP.EXE のみとのことです.
 
しかしPCIセットアップは,PnP非対応,もしくは非PnPモードのCバスボードにリソースを固定して割り当てるために使用するのが本来の使い方と考えるべきでしょう.PnPに対応しているPCIボード[PnPモードのCバスボードも同様(注1)]とPnPに対応していない(非PnPモードのものを含む)Cバスボード(以後単にCバスボードと表記)とを併用する場合,本体のリソースは,ユーザーが何もしなければ自動的にPCIボードに優先して割り当てられてしまうため(注2),(ボード上のディップスイッチ等により)Cバスボード自体に設定されたリソースが,PCIボードに割り当てられたリソースと競合する事態があり得てしまいます.このため,Cバスボードを使用するためには,あらかじめユーザー自身が,Cバスボードに割り当てられるべきリソースをPCに対して予約しておくという作業が必要になります.これにより,特定のリソースを特定のCバスボードに優先的・強制的に割り当て,PCIボードには残りのリソースの中から必要な分を自動的に割り当てるようにすることができます(注3).この作業をPCIセットアップを使って行うわけです.リソースの空きが多い場合には,PCIセットアップを使用しなくても,"たまたまうまくいって" PCI機でCバスボードが使用できることもあるようですが,そのような場合でも,Windows等のOSを再インストールするとリソースの競合が発生してしまうケースがあるようで,やはりPCI機でCバスボードを(特に複数枚)使用する際には,PCIセットアップでのリソース予約作業が必須と考えるべきでしょう.なおPCIセットアップを用いてPCIボードのリソースを固定(=予約)することも可能ですが(Windows上からもこれと等価な操作が可能なようです),それは上級ユーザーが一部の特殊なPCIボードを使用するための高等テクニックと考えるのがよいでしょう(注4).通常はPCIボードのリソースは自動設定にしておきます.
 注1:しかし実際には,CバスボードはPnPモードに設定していた場合でも,どういうわけかきちんとPnP動作しない場合があります[筆者も,NEC製PCカードスロットアダプタであるPC-9821XA-E01とCONTEC製LANボードであるC-NET(98)P2(C)で経験があります].そのような場合には,そのCバスボードを非PnPモードに設定し直し,PCIセットアップを使用してリソースの予約を行う必要があります.なおWindows2000でPC-9821XA-E01とストレージ系のPCIボードとを併用するためには,後者のBIOSのアドレスをDC000から移動させる必要があるといいます(例えばSC-UPCIではDC000-DFFFFからD5000-D7FFFに移動:どるこむの過去ログ,[43541] Windows2000でPCカードを認識しない を参照).筆者はこのことを知らず,SC-UPCIを増設したV200でWindows2000でのPC-9821XA-E01の使用を断念したことがあります.
 注2:このことは,PCIボードに割り当てられるリソースの値は毎回一定とは限らないことも意味します.
 注3:Cバスボード用に予約したIRQ(割り込みレベル)がPCIボード側のIRQとしても使用される(IRQが重複してしまう)ように自動的に設定されてしまうことがあるそうですが,これは動作上問題はないそうです.
 注4:ただし,MS-DOSでUMB領域を設定している場合,PCI接続のSCSIボードのリソースを固定しておかなければシステムの起動に失敗するといったこともあるといいます(まりもの部屋 --> Q&A集を参照する を参照).

上記のようにPCIセットアップにはいくつかのバージョンがあります.バージョンの違いはチップセットの違いと関係するものらしいですが,PCIボードに対する設定機能の違いと考えてもよいでしょう(Xa/Xf/Xt付属のものは,その後のものとは全くの別物と考えた方がよいのかもしれませんが).後のバージョンのものは,前のバージョンのものに新たな機能が追加されたもののようです.従ってバージョンの新しいものはバージョンの古いものの代わりになり得ますが,逆は成り立たないようです.実際に,Xa7eやXa10に付属しているPCIセットアップ(Xa7e付属のものは不明ですが,Xa10付属のものはVer.1.20でしょう)は,V166(付属しているPCIセットアップは本来Ver.1.50あたりのものでしょう)ではPCIボードを正常に表示できず,PCIボードのリソースに関する設定が行えないといいます.またVer.1.40/1.50はXfで使用できず,Xv20付属のPCIセットアップ(Ver.1.40)はRv20(本来Ver.1.50が付属)でのPCIボードのリソースに関する設定ができないとの報告もあります.なおデスクトップ型青札V200付属のPCIセットアップがXa13/WでPCIボードのIRQの固定に使用できなかったとの報告もあります.

一方,Cバスボードのリソースの予約という機能に関しては,異なるバージョンのPCIセットアップ間に少なくとも実用上の違いはないようです(注).実際,Xa9とXa10,Xa*/WとXc/M7,Xc13とRvII26,Xv13/W16とRvII26,Xa7とXv13とV166の間で,それぞれの機種に付属のPCIセットアップは他の機種でも使用可能との報告があります.また筆者自身,V200/S7A(流星モデル)でXa10/K8付属のPCIセットアップディスクを使用してテストしたところ,非PnPモードのPC-9821XA-E01(NEC製PCカードスロットアダプタ)と非PnPモードのC-NET(98)P2(CONTEC製LANボード)で,正常にリソースの予約ができました.
 注:どるこむの過去ログ,[25958] RV20をパワーアップさせよう!! に,RvII26でXa/Xf/Xt付属のPCIセットアップディスクを使ったCバスボードのリソースの予約ができなかったとも読める報告がありますが,PCIボードに関する話かもしれません.

PnP対応のボードが物理的に取り外された後も,そのボードの設定情報がPC本体に保持され続ける(=取り外されたことがPC本体により正しく検出されていない)場合があります.例えばPnPモードに設定されたPC-9801-100にはIRQ3が自動的に割り当てられますが,PC-9801-100を取り外した後でもそのIRQ3は解放されません(どるこむの過去ログ,[23220] V200青札タワーのPCIセットアップ を参照).このような場合には,PCIセットアップを使用して当該ボードの設定情報を削除する必要があります.なお設定情報の削除自体は,キーボードの [ESC]+[HELP]+[9] の三つのキーをを同時に押しながら本体の電源を入れる/リセットボタンを押す,いわゆる "スーパーリセット" によっても行うこともできます(どるこむの過去ログ,[25709] PCIセットアップ後起動せず[27078] PCIセットアップ後に起動不可! などを参照).

なおこれはPCIスロットのないPnP対応機種(PC-9821Ap3)のケースですが(注),Windows上でFDDにアクセスするとハングアップしたり,PnPモードに設定したCバスボード(MDC-926Rs)のI/Oポートアドレスが異常な値に設定されるなどの症状が,PC-9821An付属のWindows3.1用PnPサポートソフトを使用することで解消したとの報告があります.PnP対応のPC本体にPnP非対応のCバスボードを装着した場合(このケースでは,本体の前の持ち主が何らかのPnP非対応ボードを使用し,売却時にそれを抜いたものと思われます),PC本体の不揮発RAMにそのPnP非対応ボードの消費するリソースの値が書き込まれますが(PnPボードのリソースはそれを避けて設定されます),このケースでは当該ボードの撤去後にもそのリソース情報が残ってしまい,様々な不具合の原因となっていたが,PnPサポートソフトをによりその情報を削除することで正常に動作するようになったと考えられます.リソース情報の削除はスーパーリセットでも行うことができるのかもしれません.
 注:スピたま掲示板過去ログNo.5(log005.html)に報告がありますが,この過去ログはInternet Archiveにも残っていません.


■リファレンスディスク
PC-H98でCバスボードを使用する場合には,リファレンスディスクというFDを用いてCバスボードのリソースを予約する必要があります(注1・2).NESAバスボードのリソースは,この操作により予約されたリソースを回避して割り当てられます.リファレンスディスクは個々の機種に専用のものが付属しています(注3).しかし実際には,最初のモデルであるmodel 70から最後のモデルであるmodel 105まで,付属しているリファレンスディスクは,基本的にCバスボードのリソース予約という機能に関しては違いがないようです.
 注1:小笠原陽介 (1998).あなたの愛機はまだまだ使える PC-98パワーアップ道場, ソフトバンク. の 3-2. PC-H98S model 8編(pp.98-109) には,IRQに空きがある場合には,リファレンスディスクを使用せずに装着されたPnPモードのCバスボード(PC-H98本体はPnP非対応)がWindows95で認識され使用できたとの報告がありますが,非常にイレギュラーなやり方であり,"たまたまうまくいった" 類のケースであろうと思われます.
 注2:NEC純正のCバスボードであれば,リファレンスディスクにデフォルトの値がプリセットされています(ただしIRQ等のリソースを消費するすべての純正Cバスボードのデータが登録されているわけではありません.例えばPC-9801-100のデータは,model 105に付属している最終バージョンのものにも登録されていません.またmodel 100に付属しているVer1.2のものにはPC-9801-92のデータが登録されていません).
 注3:機種毎のリファレンスディスクのバージョンの詳細については,資料を見つけることができていません.

リファレンスディスクを使用してCバスボードのリソースを予約する手順は,RADCRAFT ? 2.0("?" は放射能マーク)の2014年10月23日の記事,PC-H98modelU100 で画像入りで詳しく説明されています(2022年5月5日にこのブログが消滅しているのに気付きました.このブログの記事はInternet Archiveにも保存されていません).なお "エッジ" というのはIRQ共有を禁止する設定のようです(ゲぺック・カステン --> Personal Computerについての2,3の事柄(about PC) --> PC-9800シリーズ遍歴 --> PC-H98 model U105-300 を参照).


トップページ