NEC PC-9800シリーズに関するQ&A

PC-9800シリーズに関する疑問をQ&A形式でまとめてみました。まだまだ少ししかありませんが、間違いや補足、追加してほしい項目などがありましたらお知らせください。

PC-9801またはPC-9821の後についている英数字の意味は?

最近(1995年春以降)の機種は、シリーズ名、CPUのクロック周波数(10MHz単位)、「/」の後にハードディスクの容量(100MB単位)となっており、比較的わかりやすい。「/」の直後に英大文字が入っていることもあるが、これの意味はよくわからない。PC-9821Xaシリーズでは、C→K→R→Wと変化している。また、PC-9821Ra,Rv,Rsシリーズでは、NがWindows NTインストールモデル、WがWindows 95インストールモデルとなっている。ノート型では、Sが800×600ドット、Xが1024×768ドット、DがDSTN液晶を意味するようだ。

例: PC-9821Xa10/C12は、クロック100MHz、ハードディスク1.2GB

シリーズ名は、英字で1または2文字だが、PC-9801だと全部大文字、PC-9821だと2番目だけ小文字になる。これの意味の解釈はここでは触れない。

もし「/」の前の数値が3桁なら、CPUはMMX対応Pentumであり、数値はMHz単位のクロック周波数を表す。また、CPUがPentiumIIの機種は、シリーズ名の後にIIがついていたが、いつの間にかMMX対応Pentiumと同様の表記になってしまった。

PC-9821VとPC-9821Xcは例外で、「/」の後の英字は、Sがデスクトップ、Mがミニタワーを意味し、その後がZならディスプレイなし、5なら15インチディスプレイ付き、7なら17インチディスプレイ付きである。

それより前で1993年以降の機種は、シリーズ名、世代(なし、2、3)、「/」の後にFDDの大きさとCD-ROMドライブの有無を表す英字(M: 5.25インチ、U: 3.5インチ、C: 3.5インチでCD-ROMドライブつき)、FDDの数とハードディスクの容量を表す数字(後述)となっていた。この後にWがつくと、それはWindowsインストールモデルであり、TがつくとMatrox社製のウィンドウアクセラレータボード内蔵である。なお、ノート型は、ハードディスクの容量がMB単位ではいるなど、特殊である。

例: PC-9821Ap2/U8Wは、Ap無印の後継、3.5インチFDD、ハードディスク340MB、Windowsインストール済み

さらに前は、シリーズ名、FDDの数とハードディスクの容量を表す数字(後述)、世代(なし、1、2)であった。細かく見ると、FDDの大きさがシリーズ名に含まれていた1989年以前と、3.5インチの場合はシリーズ名と数字の間に「/U」をはさむ1990年以後に分けられる。

例: PC-9801FA/U2は、3.5インチFDD×2
例: PC-9801VX21は、VXの後継、5.25インチFDD×2

FDDの数とハードディスクの容量を表す数字の意味は次の通りである。

0 ディスクなし
1 FDD×1
2 FDD×2
3 FDD×1 HDD:10MB
4 FDD×2 HDD:20MB
5 FDD×2 HDD:40MB
6 FDD×1 HDD:80MB
7 FDD×1〜2 HDD:100〜210MB
8 FDD×1 HDD:240〜340MB
9 FDD×1 HDD:510〜540MB
10 FDD×1 HDD:1GB

PC-8800シリーズには、PC-88VA3という、5.25インチFDD×2と9.5MBのFDD×1という機種もあった。

固定ディスク起動メニューを出すには

自動起動にしてしまったなどで、固定ディスク起動メニューが出なくなってしまったら、TABキーを押しながらリセットすればよい。押し方のコツは次の通り。
ルーズな人向け
ピピピピと音がするまでTABキーを押し続ける。
几帳面な人向け
メモリチェックが終わった後、ハードディスクを読むまでの間にTABキーを一回押す。
ただし、ハードディスクに起動可能な領域を複数作る必要がある。

ハードディスクをドライブCにするには

MS-DOSの場合は、フリーソフトのPATCH IOを使って、IO.SYSを書き換えるとよい。Windows 95の場合は、SETUP /ATとしてインストールすると、ドライブAになっていたハードディスクの領域が、Windows 95起動後はドライブCになる。フリーソフトのWin95ドライブ割付順序の変更を使うと、インストール後でも変更できる。

MS-DOSの場合には、IO.SYSのオフセット00B5hを書き換える方法もあるが、SCSIハードディスクが認識されなくなるなどの問題が出る。

SCSIハードディスクのドライブ名を先にするには

IDEハードディスクとSCSIハードディスクを同時に使っていると、どちらのハードディスクで起動しても、IDEハードディスクのほうが早いドライブ名がつく。SCSIを優先するには、フリーソフトのPATCH IOを使えばよい。Windows 95では、フリーソフトのWin95ドライブ割付順序の変更を使えばよい。

^Pの禁止

準備中

PC-9821とは何か?

PC-9821と名がつけば必ず拡張グラフアーキテクチャ(Windowsなしで、640×480ドット256色を表示する機能)を持つかというと、そうではない。PC-9821Be,Bs,Bp,Bf,Ts,Ne2,Ndは拡張グラフアーキテクチャを持っていない。逆に、PC-9801BX4は持っている。あまりはっきりしたものではなさそうだが、Windows用に設計したら9821ということか。

ディップスイッチ3-1と3-2の役割は何か?

このディップスイッチを切り替えると、最初は「自動」になっている内蔵FDDを、1MBモード固定または640KBモード固定として使える。しかし、MS-DOS3.1以降やWindowsを使っている限り、モードを固定していても、1Mバイトタイプ(2HD)と640Kバイトタイプ(2DD)のどちらのフロッピーディスクからも起動できるし、起動後にどちらのフロッピーディスクも読み書きできる。

では、自動とは何が自動なのかというと、フロッピーディスクで起動したときに、ディスクの種類によって、FDDのつながるインターフェースを自動で切り替えるのである。これは、2DDと2HDの両用ドライブがなかった頃のソフトを使うためで、ソフトが640KBインタフェースや1MBインタフェースを直接操作しても、正しく動作するようになっている。

もともとPC-9800シリーズには、640KBタイプと1MBタイプの2種類(320KBを含めると3種類になるがこれは除外)のFDDインタフェースボードがあって、それぞれに4台までのFDDをつなぐことができた。もちろんこの二つは、I/Oポートや、割り込み番号、DMAチャンネルが異なり、BIOSに与えるデバイスアドレスも違う(表参照)。両用ドライブを持つ機種(PC-9801VM2以降)では、これらのインタフェースボードと互換性のあるインタフェースを内蔵し、起動時にどちらか一方が有効になるようになっている。起動後は切り替わらない。どちらのインタフェースでも、ソフトが対応していれば、両方のタイプのディスクを読むことができる。MS-DOSだと、Version 2.0(文節変換対応)以降が両用ドライブに対応している。

インタフェース FDCのI/Oポート DMAチャンネル 割り込み デバイスアドレス
1MB 90h,92h 2 IRQ11(INT42) 9xh(1MBタイプ)
1xh(640KBタイプ)
3xh(1.4M)
640KB C8h,CAh 3 IRQ10(INT41) 7xh(640KBタイプ)
Fxh(1MBタイプ)

モードを自動でなく固定にするメリットは次の通りである。

最後について少し補足する。自動(スイッチは両方OFF)のときに2DDのフロッピーディスクで起動すると、2HDでブートセクタ読み込み(失敗)→2DDでブートセクタ読み込み(成功)→モード切り替え→ブートセクタのコードが引き続くセクタを読み込む、という動作をする。モード切り替えには1秒ほど時間がかかる。2HD固定にしておくと、モード切り替えがなくなるぶん速くなり、2DD固定にしておくとさらに、読み込み失敗がないぶん速くなる。

この機能が不完全な機種もある。98ノートでは、調べた機種ではすべて、ディップスイッチ3-1と3-2は未使用となっていて、ONにすることはできなかった。また、2DDのフロッピーディスクで起動すると、FDDのインタフェースが640KBモードになるものと、1MBモードのままのものがあった。

PC-9801NA	自動
PC-9821Lt2	自動
PC-9821La10	1MB固定
PC-9821St15	1MB固定
PC-9821Xv13	1MB固定
PC-9821Xc13	1MB固定

ディップスイッチ1-3の役割は何か?

ディップスイッチの1-3は、PC-9801U2以降でプラズマディスプレイを使用するときにONにするものだが、98ノートなどでは未使用となっている。しかし、これには別の働きもあり、プラズマディスプレイを使わなくても有効である。PC-9800シリーズのテキスト画面は、グラフィック画面と重ねて表示したときに1ドット左にずれているが、これをONにして(未使用の機種でもONにできる)起動すれば、テキスト画面は正しく重なる。

なお、ポート6Ahに41hを出力しても、テキスト画面を正しく重ねることができる。ずれた状態に戻すには、40hを出力する。

16Mバイトシステム空間とは

15〜16Mの間のメモリ空間(物理アドレス00F00000h〜01000000h)をいうようだ。HELPキーを押しながらリセットすると出るメニューで、16Mバイトシステム空間を「使用する」にしておくと、使えるメモリが1MB減少する。このメモリ空間には、拡張グラフアーキテクチャのVRAMや、純正のウィンドウアクセラレータボードB(Aもか?)のVRAMが出現する。Windowsでこれ以外のグラフィックボードを使っているときは、16Mバイトシステム空間を「切り離す」にしても、たいていは問題ない。

問題になるのは次の場合である。

なんとか+リセットはどれくらいあるのか?

98本体に関するものだけでこれくらいある。
[STOP]+リセット
ウォームブート
[CTRL]+[SHIFT]+[STOP]+リセット
[COPY]キーを押すと、メモリイメージをフロッピーディスクに書き出す。(PC-9801VX以降)
[HELP]+リセット
システムセットアップメニュー、または98NOTEメニューを表示する。(PC-9801RX以降)
[COPY]+リセット
オートモード(RAMドライブのある機種のみ)
[CTRL]+[SHIFT]+リセット
初期状態に戻す。(PC-9801RX以降?)
[CTRL]+[CAPS]+[カナ]+[GRPH]+リセット
動作クロックなどを表示する。(PC-9801RX以降)
[GRPH]+[1]+リセット
水平周波数24kHz(拡張グラフアーキテクチャを持つ機種)
[GRPH]+[2]+リセット
水平周波数31kHz(拡張グラフアーキテクチャを持つ機種)
[ESC]+[HELP]+[1]+リセット
BIOSのバージョンを表示(フラッシュメモリのBIOS ROMを持つ機種?)
[ESC]+[HELP]+[8]+リセット
BIOSの書き換え準備(フラッシュメモリのBIOS ROMを持つ機種?)
[ESC]+[HELP]+[9]+リセット
BIOS状態初期化?

Windowsキーとアプリケーションキーのキーコードを取得する方法

Windows 95で追加されたWindowsキーとアプリケーションキーのあるキーボード(PC-9801-119)を接続して、追加のキーのキーコードを通常の方法で取得しようとすると、キーを押しても何も送られて来なくて、うまくいかない。実は、このキーボードにはモードがあって、最初は追加のキーが無効になっている。UNDOCUMENTED 9801/9821 Vol.2 - メモリ・I/Oポート編のキーボードインタフェースに載っている、拡張キー設定コマンドを使う必要がある。

このコマンドを、キーボードへの下りコマンドの送信方法に従って送ると、追加のキーが有効になる。さらに、左右のシフトキーを区別できるようになる(右SHIFTのキーコードが変わる)。キーコードは以下のとおりである。
キーキーコード
左Windows77h
右Windows78h
アプリケーション79h
左SHIFT70h
右SHIFT7Dh