Image: V-Textを利用した24ドットフォント拡張画面表示 [DOS]

マルチステーション5550やパーソナルシステム/55でおなじみの24ドットフォント表示のDOS環境をPC/AT互換機で実現させようという試み。

○必要なソフト

  • IBM PC DOS バージョン J6.1/V、J6.3/V、J7.0/V、2000 日本語版
    IBM DOS/V Extension V2.0(5605-PXB)があればIBM DOS J5.02/V、MS-DOS 5.0/V、6.2/Vでも可。ただしMS-DOS/Vには標準では24ドットフォントが収録されていない。別売オプションのMS-DOS 6.2/V サプリメンタルディスクに完全な24ドットフォントが収録されている。
  • DSPXVBE - VESA汎用 IBM DOS Extension(V-Text) ドライバー
    http://www.vector.co.jp/soft/dos/hardware/se042304.html

V-Textの利用にはソフトバンクより発売された"DOS/Vスーパードライバーズ"や日本IBMより発売された"IBM DOS/V Extension"を用いるのが定石だが、今や入手困難な品なので今回は無料でダウンロード入手可能なドライバー"DSPXVBE"を利用する。

○V-Textて何?

詳細はDOS/V - Wikipediaを参照。かんたんに言えば、本来ならVGA(640x480ドット、80桁x25行)画面であるDOSのテキスト表示を拡張するための仕組みである。V-Textで拡張を施すことで、フォントサイズを小さくして限られた画面スペースでより多くの文字を表示させたり、800x600ドット以上のSVGAディスプレイにおいて表示する桁数や行数を増やしたりできる。最初はユーザー(h.murata氏)がフリーソフトとしてDOS J4.0/V用の$DISP.SYSのパッチ(DOS/V Hi-Text Display driver for SVGA)を公開していた。他のユーザーからも同じ機能を持つソフトが登場し、それらはHiTextと呼ばれていたが、登録商標になったため一般にV-Text(Variable Text)と呼ばれるようになった。1993年1月には日本IBMがIBM DOS/V Extension V1.0を発表し、V-TextはIBM公認の仕様になった。

PC DOS J6.1/V以降では標準でV-Textに対応した。(ただしVGA対応ドライバーのみ付属。)IBM DOS J5.02/VやMS-DOS/Vでは$DISP.SYSがV-Textに対応していないため、V-Textに対応した$DISP.SYS互換ドライバーに置き換えるか、IBM DOS/V Extensionを導入する必要がある。

引用元: PC DOS バージョン J6.1/V カンタンDOS(SC88-3049)、日本アイ・ビー・エム発行(1993年)

○V-Text(DSPXVBE)の導入準備

まずファイル"C:\DOS\DSPX.PRO"のファイル名をDSPX.BAKなどの適当な名前に変えておく。

ダウンロードして入手したDSPXVBEのLZH形式の圧縮ファイルを適当なソフトを使って展開する。
展開したファイルのうち"DSPXVBE.PRO"のファイル名を"DSPX.PRO"に変えて"C:\DOS"に移動する。
"DSPXVBE.EXE"はそのまま"C:\DOS"に移動する。("DSPXVBE.EXE"は実行できる場所ならどこでもよい。)

○24ドットフォントファイルの確認

DOS上で"SETUPV"コマンドを実行する。
SETUPV - DOS/V環境設定

24ドット半角/全角フォントが導入されているかどうか確認する。
24ドット全角フォントのファイル名が"$JPNZN24.IBM"になっていたら"$JPNZN24.FNT"に変更しておく。24ドットフォントはもともとは英語プリンター用の日本語フォントであり、DOS導入時に英語プリンターを選択した場合は既に"$JPNZN24.FNT"に設定されているはずである。

IBM DOS J5.02/Vの場合は2枚目の導入ディスケットから"$JPNHN24.FN_"と"$JPNZN24.FN_"を複写して、EXPANDコマンドでCドライブのルートディレクトリに展開する。詳細はこちらを参照。J5.00/V以前のバージョンには24ドットフォントは収録されていない。

○V-Textを導入して画面モードを変更する

DOS上で"DPSXVBE.EXE"を実行してDSPXVBEを導入する。
次に"DSPX"コマンドを実行する。

DSPX - テキスト・モード設定
F5キーで詳細表示に切り替える。
上下方向キーで"ワイド/拡大"を選択してF10キーを押す。
使用可能なテキスト画面モードの一覧が表示されるので、好みの画面モードを選択する。フォントサイズ"8×16"を選択すると16ドットフォント、"12×24"を選択すると24ドットフォントで表示する。

○V-Text表示例

コマンドラインインタープリタだけでなく、全画面で動作する適用業務プログラムでもV-Textに対応していれば高解像度ディスプレイを有効活用できる。

VZエディタ DOS/V対応版 + DSPXVBE.EXE (84桁x32行、24ドットフォント、1024x768)
VZ Editor DOS/V

FD + DISPV(DISPVC.EXE、106桁x40行、640x480) + FONTX($FONTX.SYS) + 「要町」(12ドット漢字フォント)
FD

MicroEMACS DOSV対応版 (たぶん現在は入手不可。) + DISPVC.EXE + $FONTX.SYS + 要町フォント
MicroEMACS 3.9J(V)

Eエディター + DSPXVBE.EXE (100桁x33行、16ドットフォント、800x600)
PC DOS E Editor

○テキストバッファーサイズを変更する。

一部の画面モードはテキストバッファーのサイズを増やさないと使用できない。テキストバッファーのサイズを変更するにはSETUPVコマンドを使用する。

PC DOS J7.0/Vのコマンド解説書によれば、必要なテキストバッファーのサイズは桁数×行数×2である。ただ、実際にはその数にさらに1を足した数値を指定する必要がある。
DSPXVBEで使用可能な最大解像度は1600x1200で、最大200桁x75行表示が可能。その時に必要はテキストバッファーサイズは30001になる。
IBM DOS J5.02/VやMS-DOS/Vの場合は、SETUPVコマンドで設定する代わりにCONFIG.SYSで$DISP.SYSに/TS=[サイズ]を付ける。

テキスト画面のスクロール速度は通常時と比べて一段と遅くなっている。
実機ではDSPXVBEに同梱の"LPVROLL.EXE"というデバイスドライバーを導入することでスクロールを速くすることができる。ただしVirtual PC(仮想マシンソフト)上ではなぜか逆に遅くなり逆効果である。


○補足:他のV-Textドライバー

今回はDSPXVBEを用いたが、V-Textドライバーは他にもいくつかあるので、それぞれ試してみるのも良いだろう。
DSPXVBEはV-Textに対応したDOS標準の$DISP.SYSを利用しているが、$DISP.SYSそのものを置き換えて使うDISPVなどもある。こちらを使う場合はDOS/V Extensionは必要ないため、IBM DOS J4.0/V, J5.0/V, MS-DOS/Vでも使用できる。ただし24ドットフォントによる表示はできない。


旧ブログでのコメント

AUTHOR: 通りすがり
URL:
DATE: 2013/04/08 19:27:57
MicroEmacs
MicroEMACSのDOS/V版を探していますが、どこにあるか教えて頂けないでしょうか?

AUTHOR: akm
URL:
DATE: 2013/04/11 00:14:48
Re: MicroEmacs
コメントありがとうございます。いろいろ準備していて返答が遅れました。
このMicroEMACSは昔の雑誌に付録として付いてきたFDに収録されていたものです。
NiftyだったかASCII-NETだったか、パソコン通信にソースと共に上がっていたと思いますが、インターネットに上がっているかどうかは知りません。
DOS J5.02/Vが出る前の古いファイルですが、それでもよければこちらに置いておきますのでどうぞ。

「Columns」の「DOS/V関連のソフトウェア・リンク集」に置いてあります。

AUTHOR: 通りすがり
URL:
DATE: 2013/04/15 18:17:25
Re: MicroEmacs
ありがとうございました。

ちなみにですが、dosboxの日本語キーボードについては鯖さんとかがパッチ作ってますし(変換キーとかは動かない)、V-Text環境についてもVESAPAT+FONTN+DISPV(ディスプレイアダプターをET-4000にするとDspVV+DSP4も。S3用のDISPS3は不可)+CHEJで動きますよ。

おまけでdosbox内蔵のDOSでのMS-Windows 3.1Jについて。導入さえできてしまえばスタンダードモードで動きますよ。

1)適当なディスクイメージ(私はdosbox上のDR DOS+FONTX+DspSS)にスワップなしで導入
2)WINDOWSディレクトリーをdosboxでつかう場所にコピー
3)日本語名の*.GRPをASCIIにリネーム(dosboxで
日本語ファイル名が鬼門のため)
4)PROGMAN.INIのグループの欄を修正

AUTHOR: akm
URL:
DATE: 2013/04/16 01:44:12
Re: MicroEmacs
>dosboxの日本語キーボードについては鯖さんとかがパッチ作ってます
パッチは使ったことがありますが、日本語入力に難ありということで結局USキーボードで使っています。

DOSBoxはDEVICEが使えないから日本語環境は構築できないと思っていましたが、全てフリーソフトの常駐プログラム(TSR)で組めたんですねー。調査不足でした。でもコマンドラインでフォントが文字化けしてしまうのはDOSBoxの仕様なのか。自分の設定が悪いのか。

そして、DOSBox内蔵DOSでWindows 3.1Jが動くとの情報、ありがとうございます。DOS/Vブート上で実行するよりは若干スループットが向上したような気がします。


※コメント欄が表示されない場合はdisqusについてJavascriptが有効であることを確認して下さい。コメントはスパム防止フィルターによる承認制のため、投稿してもすぐに反映されない場合があります。

管理人 : Akamaki (akm)

は、PCとVTuberに夢中になっている電気技術者です。

私はレトロコンピューティングの愛好家ですが、そのようなリグはもう収集していません。

私の活動はトップページで見ることができます。読んでくれてありがとう!