《ソフトウエア》


OS : NEC PC-Engine

OSとして、独自開発の PC-Engine を使用しており、そのプログラムの大部分が内蔵ROMに収められています。

PC-Engine は、

等から成ります。

バージョンは 1.0/1.05/1.1 があり、VA2/3 及びバージョンアップボードを装備した VA では 1.1 が、バージョンアップボードのない VA では起動に使用したシステムにより 1.0/1.05 のどちらかが、動作します。

ファイル・プロセス管理

実は、この部分については MS-DOS 3.1 のサブセット(下位互換)となっています。

ファイルやメモリを扱うシステムコール (INT 21h)や、デバイスドライバの仕組みなどは全く同じです。

MS-DOS との主な違いは、

等です。

また、フロッピーディスクについては、V1/V2 モードの DISK-BASIC のフォーマットのディスクが通常の MS-DOS フォーマットのディスクと同様に扱えるようになっています。

シェル

シェルは、MS-DOS では COMMAND.COM が担当する部分です。この部分はすべてROMに収められています

PC-Engine のシェルで利用できるコマンドは MS-DOS の代表的なものを含んでいて、MS-DOS では外部コマンドとなっている CHKDSK,FORMAT 等も内部コマンドになっています。 その他にも、

等の内部コマンドを持っています。

MS-DOS のような1行入力の方式は取っておらず、画面の好きなところにカーソルを持っていって入力のできる、従来のBASICのような方法を取っています。また、HELP キーでコマンドの説明が表示されたり、CTRL+T/CTRL+N によるヒストリ機能があったり、ファンクションキーであらかじめ設定した文字列が入力できたりといった機能を備えています。

BIOS群

ほとんどがROMに収められています。

フロッピーディスクBIOS

1D/2D/1DD/2DD/1HD/2HD が扱えるようになっています。ユーザーがFDCへのパラメータを設定することができ、独自のフォーマットを扱うことが可能。

ハードディスク(SASI)BIOS

5Mから40Mのハードディスクが扱えます。

キーボードBIOS

入力されたキーデータの管理の他、ファンクションキーへの文字列の設定や、キー割り込みによってユーザー定義のプログラムを呼び出す機能(ポップアップトラップ)があります。ポップアップトラップ機能のおかげで、キー割り込みを利用する常駐プログラムは、割り込みベクタをフックしてベクタ管理を行なう必要がありません。

テキストBIOS

主に文字表示を行ないます。 複数のテキストフレームバッファをテキストVRAM上に取り、画面を水平方向に最大4分割してそれぞれに異なるフレームバッファを表示することができます。 テキスト画面中に矩形領域を設定し、その中に文字を表示するPOPUPスクリーン機能があります。(テキスト画面のなかに、別の窓を表示するような感じ。)

スプライトBIOS

スプライトの表示、スプライトパターンの登録、スプライトの衝突判定などを行ないます。 あらかじめ制御コマンド列を設定しておき、指示通りにバックグラウンドでスプライトを動かすことができます。(実にありがたい機能です。)

グラフィック画面制御BIOS

グラフィック画面モードの設定、フレームバッファの管理、画面スクロール、パレット、画面合成、画面マスクを制御します。

拡張グラフィックBIOS

グラフィック画面への描画を担当します。

アニメーションBIOS

アニメーション作成ソフト「アニメフレーマー」で使用する機能の一部を担当します。

プリンタBIOS

プリンタへの文字出力、画面ハードコピーなどを行ないます。

コミュニケーションBIOS

文字の送受信、XMODEM送受信などを行ないます。
2バイト文字受信時には、自動的に漢字コードの種類を判定してシフトJISに変換します。

ミュージックBIOS(1.1/1.05)/サウンドBIOS(1.0)

データに基づき、バックグラウンドで音楽を演奏します。
サウンドBIOSではFM3+SSG3が、ミュージックBIOSではFM3+SSG3又はFM6+リズムが利用できます。

ADPCM BIOS(1.1)

ADPCM録音/再生、PCM録音/再生を行ないます。

マウスBIOS

マウスの制御、マウスからの情報取得を行ないます。マウスボタンのON/OFF、マウスの移動によって割り込みを発生させ、ユーザー定義のプログラムを呼び出すことができます。

カレンダ時計BIOS

内蔵時計を制御します。

ファンシーフォントサービス

文字フォントに、白抜き、斜体、太文字、影文字の修飾を行ないます。プリンタ出力を目的としています。

拡張ファンシーフォントサービス(1.1)

不明。

スクリーンエディタBIOS

PC-Engine のシェルやBASICにおける入力をサポートします。

日本語入力フロントエンドプロセッサBIOS

日本語変換機能を制御します。

数値演算BIOS

有効数字14桁の10進浮動小数点数値(BCD)演算を行ないます。
四則演算、三角関数、指数関数、対数関数、べき乗、平方根が計算でき、数値を表す文字列と数値表現の相互変換もできます。
PC-Engine 1.1 では数値演算プロセッサを使用した2進不動小数点数値演算もサポートします。

ポップアップサービス

「PC キー+任意のキー」によって呼び出される常駐プログラムのための機能を提供します。

メニューマネージャー(1.1)

スプライトを利用して、プルダウンメニュー機能を提供します。

PR801 BIOS(1.1)

昇華型フルカラープリンタ PC-PR801 を使用して印刷を行ないます。

Draw BIOS(1.1)

不明。

ダイアログマネージャ(1.1)

不明。

日本語変換機能

VA で約40000語、VA2/3 で約65000語の辞書をROMに内蔵し、連文節変換方式の漢字入力機能を提供しています。当然、変換学習、ユーザー辞書登録機能を備えています。マウスによる外字フォント編集機能も持ちます。
辞書ディスクが不要なため、ディスクアクセス時間は0で、フロッピードライブが占有されず、このクラスのCPUとしては快適な変換入力が行なえます。

PCエディタ(内蔵テキストエディタ)

PC-Engine 1.0 ではエディタとして最低限の機能を備えたという感じでしたが、1.1 になって、キーバインドの変更、文字列マクロ、キーボードマクロ等の機能が追加され、かなり使いやすいものとなっています。同時に1つのファイルしか扱えないのが残念です。

BASIC : N88-日本語BASIC V3.0/V3.1

V1/V2 モードの N88-DISK BASIC・N88-日本語BASIC の上位互換です。これらのBASICで書かれたプログラムはそのまま動かすことができます。ただし、マシン語を使用していたりメモリを直接操作しているようなプログラムは動かせません。

V3.1 は VA2/3 及び、バージョンアップボードを装備した VA で動作し、V3.0 はバージョンアップボードのない VA で動作します。

この BASIC は 88VA シリーズの特長であるグラフィック、スプライト、オーディオ関連の命令が充実しています。これらの命令の多くがBIOSによって実現され、BIOSのファンクションと1対1の関係にあります。

スプライト関連の命令は、かなりゲーム作成を意識して作られています。これらの豊富な命令のおかげで、従来はマシン語を使わなければできなかったようなゲームでもBASICだけで作れる場合があります。

以下、特徴的な命令について解説します。