NEC純正ウインドウアクセラレーターの解像度 (DirectX5版)

「NEC純正アクセラって640x480のフルカラー or 1024x768 256色の究極二択じゃなかったっけ?」・・・実は非公式ながら、Windows95 DirectX3以降のNEC純正GA用ドライバーの一部では、800x600とか65536色とか言った実用的な解像度/色数が動作するようになっています。このことは、「某!PC」誌上で書かれていましたので、知っていらっしゃる方も多いと思いますが、一番質問の多い項目ですのでここにまとめておきます。この項目を読んでもよく分からない・・・という方のために楽々インストール用infファイル(^^;)も掲載しています。

元々DirectX3を対象に書かれていたのですが、DirectX5でのやり方を教えて欲しいとおっしゃる方が多いのと、そもそもDirectX3の入手が難しくなりつつあるので、DirectX5用に書き直しました。旧版はここ

[注意]ここで扱っている項目を実行する場合は、各自の責任で行って下さい。実行して、万が一本体を損ねても責任は持てません。

[注意2]MSでは、DirectX6が公開されています。少なくともA-MATE関連のディスプレイドライバは更新されていませんので、そのまま使えると思われます(未確認)。


対応ウインドウアクセラレーター

この項目で扱っている設定をすることで、使用できる解像度/色数が増加するGAは

の2種類です。これ以外の物では解像度/色数が変化しませんのでご注意下さい。少なくともPC-9821A-E01とPC-9821A-E09では変化しないことが確認されています。PC-9821As2/Ap2/An内蔵(86C928)でもおそらく動作しないと思われますが、未確認です。また、純正ではありませんが、同じような原理でメルコ製WSP-L(Power9000)でも使用できる解像度が変化する可能性がありますが、これも未確認です。


対応する解像度

表にするほどでもないのですが、一応書いておきます(^^;

対応解像度
解像度 色数
640x480dot8bit/16bit/32bit
800x600dot8bit/16bit/32bit
1024x768dot8bit/16bit
1280x1024dot8bit
赤字が追加された解像度/色数

[追記 '98/01/18]追加される解像度ですが、V864では「1120x750 8bit」も可能という報告をいただきました。現在私が忙しくて動作確認できない状態ですが、暇を見つけ次第試してみます。


実際の手順

では、ここから具体的な手順を解説します。方法としては「レジストリをいじる」「いじったinfファイルを使ってドライバをインストールする」の2種類があります。私は後者の方法しか試してないですが、ほぼ問題無く動作しています。お手軽で、ドライバさえ削除すれば元通りになるので、ここでは後者の「infファイルをいじる」を取り上げたいと思います。

前準備

まず必要な物は、「Microsoft DirectX」のうちDirectX5です。DirectX3以降ではNEC用のDirectDraw対応ドライバが全面的に作り直されており、その際にこっそりとハイカラーモードが追加されています(^^; DirectX3でもinfファイルの名前や場所が多少違うだけで、基本的には全く一緒です。

まず、DirectX5をWindows95にインストールします。そうすると、Windows95がインストールされているフォルダの中にあるinfフォルダ(ex. a:\windows\inf)に、oemx.infが追加されます。「x」は通し番号です。Windows95(950/a)では、後から追加されたinfにはすべてoemx.infと言う名前が割り振られますので、下の書き換えセクションの項目を見て、必要なデータが入っているものを選び出して下さい。これを書き換えますので、適当な場所にコピーしてください。

[追記]infファイルの収納されているフォルダは隠し属性になっていますので、標準では見えません。「マイコンピュータ -> 表示 -> オプション」の「表示」タブで「すべてのファイルを表示する」をチェックして下さい。また、インストールされているWindows95が「4.00.950B(OSR2.x)」の場合、infファイルの場所はinf\otherフォルダ(ex. a:\windows\inf\other)、ファイル名は「Necdxnmga.inf」「Necdxns3.inf」にそれぞれ変わります。

infファイル書き換え

コピーしたinfファイルを書き換えます。このファイルは中身はただのテキストですので、メモ帳で開いて下さい。このファイルは、グラフィックアクセラレーターの情報をWindows95に追加するための設定ファイルです。そこで、このファイルにNECのアクセラレーターがWindows95上でハイカラー/800x600モードなどを使えるようになる設定を追加します。使用するアクセラレーターがPC-9821A-E11でしたら、下のセクションに赤字の部分を付け足します。

[NECMGA2.AddReg]
HKR,,Ver,,4.0
HKR,,DevLoader,,*vdd
HKR,DEFAULT,Mode,,"8,640,480"
HKR,DEFAULT,drv,,atlsxx.drv
HKR,DEFAULT,vdd,,"*vdd,*vflatd"
HKR,DEFAULT,minivdd,,vatlsxx.vxd
HKR,DEFAULT,grb,,grab98.3gr
HKR,"MODES\8\640,480"
HKR,"MODES\8\800,600"
HKR,"MODES\8\1024,768"
HKR,"MODES\8\1280,1024"
HKR,"MODES\16\640,480"
HKR,"MODES\16\800,600"
HKR,"MODES\16\1024,768"
HKR,"MODES\32\640,480"
HKR,"MODES\32\800,600"

使用するアクセラレーターがPC-9821As3/Ap3内蔵アクセラレーターでしたら、下記のセクションに赤字の部分を付け足します。

[NECS3V.AddReg]
HKR,,Ver,,4.0
HKR,,DevLoader,,*vdd
HKR,DEFAULT,Mode,,"8,640,480"
HKR,DEFAULT,drv,,accmxx.drv
HKR,DEFAULT,vdd,,"*vdd,*vflatd"
HKR,DEFAULT,minivdd,,vaccxx.vxd
HKR,DEFAULT,grb,,grab98.3gr
HKR,DEFAULT,AccVal,,2
HKR,"MODES\8\640,480"
HKR,"MODES\8\800,600"
HKR,"MODES\8\1024,768"
HKR,"MODES\8\1280,1024"
HKR,"MODES\16\640,480"
HKR,"MODES\16\800,600"
HKR,"MODES\16\1024,768"
HKR,"MODES\32\640,480"
HKR,"MODES\32\800,600"

書き終わりましたら、保存して下さい。

次に、Windows95がインストールされているディレクトリ(ex. a:\windows)にある「system.ini」を書き換えます。これはWindows95のシステム設定ファイルです。使用するアクセラレーターがPC-9821A-E11でしたら、下のセクションをiniファイルの最後に丸ごと追加します。

[atlsxx.drv]
BPP8=ON
BPP16=ON
BPP32=ON
XY640x480=ON
XY800x600=ON
XY1024x768=ON
XY1280x1024=ON

使用するアクセラレーターがPC-9821As3/Ap3内蔵アクセラレーターでしたら、下記のセクションをiniファイルの最後に丸ごと追加します。

[accmxx.drv]
BPP8=ON
BPP16=ON
BPP32=ON
XY640x480=ON
XY800x600=ON
XY1024x768=ON
XY1280x1024=ON

書き終わりましたら、保存して下さい。

ドライバの再インストール

infファイルとiniファイルの書き換えが終わりましたら、今書き換えたinfファイルを使ってドライバを再インストールします。「画面のプロパティ」を開き、「ディスプレイの詳細」の「詳細プロパティ」でディスプレイアダプタの変更を選びます。そして「ディスク使用」で先ほど書き換えた「dxnmga.inf」または「dxns3.inf」を指定します。そこで、A-E11の場合は「フルカラーウインドウアクセラレーターボードA2 (Matrox)」、As3/Ap3内蔵の場合は「PC-9821 Vision864 (S3)」を選びます。するとドライバの存在する場所を聞いてきますので、Windows95をインストールしたディレクトリのsystemディレクトリ(ex a:\windows\system)を指定して下さい。ドライバの組み込み完了後「今すぐ再起動しますか?」と聞いてきますが、ここではいいえを選び、「システムのプロパティ」の「デバイスマネージャ」で、ウインドウアクセラレーターにちゃんとリソース(メモリ空間など)が割り振られているか確認して下さい(原因不明ですが、たまにリソースが割り振られていないことがあります)。これが正常でしたら、Windows95を再起動します。

再起動後、「ディスプレイの詳細」や「QuickRes」でハイカラーや800x600モードを指定してみて、きちんと表示できるようになっていれば成功です。お疲れさまでした(^^;


楽々インストール用infファイル(^^;

ここまで読んでも良く分からない方や、システムファイルをいじるのに不安を感じる方のために、私が使っているinfファイルを掲載します。これを使ってのインストールは至って簡単で、DirectX5をインストールした後、上記の「ドライバの再インストール」と同じ要領でmsddraw.infの代わりにこのファイルを使用するだけです。inf/iniの書き換えは勝手にやってくれます。ただしお約束ですが「無保証」とさせていただきます(^^; 自分で使ってる分には問題は出てないんですけど・・・。

ファイルのダウンロード PC-9821A-E11 用infファイル [dxnmga.inf]
ファイルのダウンロード As3/Ap3内蔵GA用infファイル [dxns3.inf]


問題点

原因は良く分からないのですが、As3/Ap3の一部(Xs/Xp/Xnも含む)で内蔵アクセラレーターの1024x768dot ハイカラーが動作しないという報告を受けています。私の直接いじった3台では問題なく動いていますが、もしかしたらロットによって個体差があるのかもしれません。ただ、不具合が出る機種でもXFree86(PC-UNIX上のwindowシステム)では正常に動作するようです。

[追記 98/04/20]その後の調査によると、どうも製造番号が4Yで始まる、いわゆる「初期ロット」では問題なく動作するが、4Z以降のロットでは駄目なのではないか? という結果になりつつあります。もし4Z以降のロットでも問題なく動作させでいるかたがいらっしゃいましたら、ご一報ください。


複数箇所からリンクしてるのでトップページに戻る(笑)