Image: IBM版Windows 3.1用256色SVGAディスプレイドライバー

SVGA.EXEに含まれているOEMSETUP.INFを日本IBMの日本語MS-Windows V3.1で使えるように改変したものです。SVGA.EXEのOEMSETUP.INFを下のコードに置き換えて下さい。このコードはマイクロソフト版には適用できません。

SVGA汎用ドライバー

SVGA汎用256色表示対応Win3.1ドライバー
SVGA.EXE
VMware対応パッチ
win31svga-060411.zip

使用方法

  1. SVGA.EXEを展開する
  2. OEMSETUP.INFを下記内容に置き換える
  3. VMwareで使用する場合は、win31svga-060411.zipをSVGA.EXEを展開した場所と同じディレクトリに展開し、DOS上でvgapatch.com pを実行する

vgapatchはoemsetup.infには手を加えないので、手順2と3が前後しても問題ありません。

あとは通常の手順でディスプレイドライバーをインストールして下さい。

OEMSETUP.INF

;SVGA 256C display driver oemsetup.inf for IBM Windows 3.1J
; modified on 2014-03-28T02:10:28+09:00 by akm. http://lsair.html.xdomain.jp/
;
;Note: VMware guest area is still 1024x768 if you select 640x480 or 800x600 256c mode.

[disks]
 1 = . ,"日本語 Microsoft Windows 3.1 ディスク #1"
 2 = . ,"日本語 Microsoft Windows 3.1 ディスク #2"
 3 = . ,"日本語 Microsoft Windows 3.1 ディスク #3"
 A = . ,"日本語 Microsoft Windows 3.1 ディスク #10"

[oemdisks]
 V = . ,"SVGA 256C Windows 3.1 Driver"

[display]
;profile = driver, Description of driver, resolution, 286 grabber, logo code, VDD, 386grabber, ega.sys, logo data, optional work section
8vga480  = V:svga256.drv, "Super VGA  640x480 256色 ゴシック 10pt.", "100,96,96", , 3:vgalogo.lgo, V:vddsvga.386, V:vgadib.3gr,, 3:vgalogo.rle, svga640
8vga600s = V:svga256.drv, "Super VGA  800x600 256色 ゴシック 10pt.", "100,96,96", , 3:vgalogo.lgo, V:vddsvga.386, V:vgadib.3gr,, 3:vgalogo.rle, svga800s
8vga600l = V:svga256.drv, "Super VGA  800x600 256色 ゴシック 12pt.", "100,120,120", , 3:vgalogo.lgo, V:vddsvga.386, V:vgadib.3gr,, 3:vgalogo.rle, svga800m
8vga768l = V:svga256.drv, "Super VGA  800x600 256色 明朝 12pt.", "100,121,121", , 3:vgalogo.lgo, V:vddsvga.386, V:vgadib.3gr,, 3:vgalogo.rle, svga800m
8vga768s = V:svga256.drv, "Super VGA 1024x768 256色 ゴシック 10pt.", "100,96,96", , 3:vgalogo.lgo, V:vddsvga.386, V:vgadib.3gr,, 3:vgalogo.rle, svga768s
8vga768l = V:svga256.drv, "Super VGA 1024x768 256色 ゴシック 12pt.", "100,120,120", , 3:vgalogo.lgo, V:vddsvga.386, V:vgadib.3gr,, 3:vgalogo.rle, svga768m
8vga768l = V:svga256.drv, "Super VGA 1024x768 256色 明朝 12pt.", "100,121,121", , 3:vgalogo.lgo, V:vddsvga.386, V:vgadib.3gr,, 3:vgalogo.rle, svga768m

[svga640] 
,,system.ini,svga256.drv,"resolution=","resolution=1"
,,system.ini,svga256.drv,"svgamode="
,,system.ini,svga256.drv,"dpi="
,,system.ini,386enh,"SysVMIn2ndBank=","SysVMIn2ndBank=FALSE"
2:PS55SOEM.FON,0:system,system.ini,386Enh,"DOSVWOA.FON=","DOSVWOA.FON=PS55SOEM.FON"
,,system.ini,386Enh, "DOSVFONTS=", "DOSVFONTS=*18,12,8,8"
A:VDDD.386,0:system,system.ini,386Enh,"device=vddd.386","device=vddd.386"
,,system.ini,DispatchGrabber,"EnableDispatch=","EnableDispatch=1"

[svga800s]
,,system.ini,svga256.drv,"resolution=","resolution=2"
,,system.ini,svga256.drv,"svgamode="
,,system.ini,svga256.drv,"dpi=","dpi=96"
,,system.ini,386enh,"SysVMIn2ndBank=","SysVMIn2ndBank=FALSE"
2:PS55SOEM.FON,0:system,system.ini,386Enh,"DOSVWOA.FON=","DOSVWOA.FON=PS55SOEM.FON"
,,system.ini,386Enh, "DOSVFONTS=", "DOSVFONTS=*18,12,8,8"
A:VDDD.386,0:system,system.ini,386Enh,"device=vddd.386","device=vddd.386"
,,system.ini,DispatchGrabber,"EnableDispatch=","EnableDispatch=1"

[svga800m]
,,system.ini,svga256.drv,"resolution=","resolution=2"
,,system.ini,svga256.drv,"svgamode="
,,system.ini,svga256.drv,"dpi=","dpi=120"
,,system.ini,386enh,"SysVMIn2ndBank=","SysVMIn2ndBank=FALSE"
2:PS55SOEM.FON,0:system,system.ini,386Enh,"DOSVWOA.FON=","DOSVWOA.FON=PS55SOEM.FON"
,,system.ini,386Enh, "DOSVFONTS=", "DOSVFONTS=*18,16,12,8"
A:VDDD.386,0:system,system.ini,386Enh,"device=vddd.386","device=vddd.386"
,,system.ini,DispatchGrabber,"EnableDispatch=","EnableDispatch=1"

[svga768s] 
,,system.ini,svga256.drv,"resolution=","resolution=3"
,,system.ini,svga256.drv,"svgamode="
,,system.ini,svga256.drv,"dpi=","dpi=96"
,,system.ini,386enh,"SysVMIn2ndBank=","SysVMIn2ndBank=FALSE"
2:PS55SOEM.FON,0:system,system.ini,386Enh,"DOSVWOA.FON=","DOSVWOA.FON=PS55SOEM.FON"
,,system.ini,386Enh, "DOSVFONTS=", "DOSVFONTS=*18,12,8,8"
A:VDDD.386,0:system,system.ini,386Enh,"device=vddd.386","device=vddd.386"
,,system.ini,DispatchGrabber,"EnableDispatch=","EnableDispatch=1"

[svga768m] 
,,system.ini,svga256.drv,"resolution=","resolution=3"
,,system.ini,svga256.drv,"svgamode="
,,system.ini,svga256.drv,"dpi=","dpi=120"
,,system.ini,386enh,"SysVMIn2ndBank=","SysVMIn2ndBank=FALSE"
2:PS55SOEM.FON,0:system,system.ini,386Enh,"DOSVWOA.FON=","DOSVWOA.FON=PS55SOEM.FON"
,,system.ini,386Enh, "DOSVFONTS=", "DOSVFONTS=*18,16,12,8"
A:VDDD.386,0:system,system.ini,386Enh,"device=vddd.386","device=vddd.386"
,,system.ini,DispatchGrabber,"EnableDispatch=","EnableDispatch=1"

; copy these fonts depending on the 386 grabber being used
[vgadib.3gr]
1:CGA40WOA.FON,1:CGA40WOA.FON
1:CGA80WOA.FON,1:CGA80WOA.FON
1:EGA40WOA.FON,1:EGA40WOA.FON
1:EGA80WOA.FON,1:EGA80WOA.FON

ディスプレイドライバー INFファイル IBM版Win3.1対応化のHINT

2:PS55SOEM.FON,0:system,system.ini,386Enh,"DOSVWOA.FON=","DOSVWOA.FON=PS55SOEM.FON"
,,system.ini,386Enh, "DOSVFONTS=", "DOSVFONTS=*18,12,8,8"

この2行がどのような役割を持っているのかよくわかりません。PS55SOEM.FONがTerminal ゴシック 12ptということで、3270PCあたりと関係があるのでしょうか。DOSVWOA.FON=PS55SOEM.FONDOSVFONTS=*18,12,8,8の部分はフォントサイズにより異なります。

A:VDDD.386,0:system,system.ini,386Enh,"device=vddd.386","device=vddd.386"
,,system.ini,DispatchGrabber,"EnableDispatch=","EnableDispatch=1"

この2行によって英語版Windows用のディスプレイドライバーを日本語版Windowsで使用できるようにします。Windows 3.0時代に「Display Dispatch Driver」というDOS/Vユーザーの間では定番のソフトがあったのですが、これに相当するドライバがWin3.1でMicrosoft/IBMからノンサポートで添付されていて、それがvddd.386というファイルです。IBM版Win3.1でDispatch Driverを有効にするには、SYSTEM.INIに”DispatchGrabber”セクションを追加してそこに”EnableDispatch=1”という値を追加する必要があります。2行目はこの作業を行います。

システムフォントのゴシックと明朝の指定については、プロファイルのresolutionを”100,120,120”にするとゴシック12pt、”100,121,121”にすると明朝12ptになるようです。


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

管理人 : Akamaki (akm)

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

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

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