Personal tools
You are here: Home misc. How to set up DOS マルチコンフィグ(DRDOS編)

マルチコンフィグ(DRDOS編)

by ktj last modified 2009-03-21 01:29

DRDOSのconfig.sysは、バッチファイルと同様、ラベル、GOTO文、SET文が使用可能です。また、キー入力から条件分岐を行うSWITCH文が使用可能です。SWITCH文の構文は、 SWITCH ラベル1 ラベル2 ラベル3 ... となっており、キーボードから1、2、3を入力すると、それぞれラベル1、ラベル2、ラベル3に分岐します。以下、config.sysの例を示します。

TIMEOUT=15
ECHO
ECHO 1:Japanese/Netware
ECHO 2:English/Netware
ECHO 3:English/EMS
ECHO 4:English/NoEMS
SWITCH JP ENCD ENEMS ENNOEMS

:JP
DEVICE=C:\CTCM\CTCM.EXE
DEVICE=C:\DRDOS\EMM386.EXE DPMI=OFF FRAME=NONE
DEVICE=C:\DRDOS\DPMS.EXE
DEVICE=C:\DRDOS\SETVER.EXE
SHELL=C:\COMMAND.COM C:\ /E:512 /P
BREAK=OFF
BUFFERS=20
FILES=40
FCBS=4,4
LASTDRIVE=D
rem HISTORY=ON,512,ON
COUNTRY=081,932,C:\DRDOS\COUNTRY.SYS
DOS=HIGH,UMB
devicehigh=c:\dosv\fontnx.exe
devicehigh=c:\dosv\vesapat.exe /JP
devicehigh=c:\dosv\dispvb.exe /hs
devicehigh=c:\drdos\ansi.sys
devicehigh=c:\dosv\xcdrom.sys /D:CDROM1
set LOAD=0
GOTO END

:ENCD
DEVICE=C:\CTCM\CTCM.EXE
DEVICE=C:\DRDOS\EMM386.EXE DPMI=OFF FRAME=NONE
DEVICE=C:\DRDOS\DPMS.EXE
DEVICE=C:\DRDOS\SETVER.EXE
SHELL=C:\COMMAND.COM C:\ /E:512 /P
BREAK=OFF
BUFFERS=20
FILES=40
FCBS=4,4
LASTDRIVE=D
rem HISTORY=ON,512,ON
COUNTRY=1,,C:\DRDOS\COUNTRY.SYS
DOS=HIGH,UMB
devicehigh=c:\drdos\ansi.sys
devicehigh=c:\dosv\xcdrom.sys /D:CDROM1
set LOAD=1
GOTO END

:ENEMS
DEVICE=C:\CTCM\CTCM.EXE
DEVICE=C:\DRDOS\EMM386.EXE DPMI=OFF FRAME=NONE
DEVICE=C:\DRDOS\DPMS.EXE
DEVICE=C:\DRDOS\SETVER.EXE
SHELL=C:\COMMAND.COM C:\ /E:512 /P
BREAK=OFF
BUFFERS=20
FILES=40
FCBS=4,4
LASTDRIVE=C
rem HISTORY=ON,512,ON
COUNTRY=1,,C:\DRDOS\COUNTRY.SYS
DOS=HIGH,UMB
devicehigh=c:\drdos\ansi.sys
set LOAD=2
GOTO END

:ENNOEMS
DEVICE=C:\CTCM\CTCM.EXE
DEVICE=C:\DRDOS\DPMS.EXE
DEVICE=C:\DRDOS\SETVER.EXE
SHELL=C:\COMMAND.COM C:\ /E:512 /P
BREAK=OFF
BUFFERS=20
FILES=40
FCBS=4,4
LASTDRIVE=C
rem HISTORY=ON,512,ON
COUNTRY=1,,C:\DRDOS\COUNTRY.SYS
DOS=HIGH,UMB
devicehigh=c:\drdos\ansi.sys
set LOAD=3
GOTO END

:END

上記のconfig.sysでは、以下の処理をやっています。まず、変数TIMEOUTを設定し、メニューのタイムアウト時間を設定します。そして、ECHO文でメニューを表示し、SWITCH文でキー入力を受けつけ、ラベル:JP、:ENCD、:ENEMS、:ENNOEMSのいずれかに分岐させます。分岐した先の各ラベル以降の行で設定を行い、autoexec.batに渡すパラメータを環境変数LOADに設定し、最後に:ENDラベルに分岐します。

autoexec.batの書き方はMS-DOSやFreeDOSと同様です。以下に例を示します。

@ECHO Off
IF %LOAD%==0 GOTO CD
IF %LOAD%==1 GOTO CD
IF %LOAD%==2 GOTO NONET
IF %LOAD%==3 GOTO NOEMS

:CD
SET SOUND=C:\SB16
SET BLASTER=A220 I5 D1 H5 P330 E620 T6
SET MIDI=SYNTH:1 MAP:E MODE:0
SET CTCM=C:\CTCM
C:\SB16\DIAGNOSE /S
C:\SB16\AWEUTIL /S
C:\SB16\MIXERSET /P /Q
C:\CTCM\CTCU /S
PATH C:\DRDOS;C:\
EMM386 PIC=ON
DPMI OFF
VERIFY OFF
PROMPT [DR-DOS] $P$G
SET DRDOSCFG=C:\DRDOS
rem NWCACHE 7670 1024 /LEND=ON /DELAY=OFF
lh c:\drdos\nwcdex /D:CDROM1
lh c:\dosv\ctmouse
GOTO END

:EMS
SET SOUND=C:\SB16
SET BLASTER=A220 I5 D1 H5 P330 E620 T6
SET MIDI=SYNTH:1 MAP:E MODE:0
SET CTCM=C:\CTCM
C:\SB16\DIAGNOSE /S
C:\SB16\AWEUTIL /S
C:\SB16\MIXERSET /P /Q
C:\CTCM\CTCU /S
PATH C:\DRDOS;C:\
EMM386 PIC=ON
DPMI OFF
VERIFY OFF
PROMPT [DR-DOS] $P$G
SET DRDOSCFG=C:\DRDOS
rem NWCACHE 7670 1024 /LEND=ON /DELAY=OFF
lh c:\drdos\nwcdex /D:CDROM1
lh c:\dosv\ctmouse
GOTO END

:NOEMS
SET SOUND=C:\SB16
SET BLASTER=A220 I5 D1 H5 P330 E620 T6
SET MIDI=SYNTH:1 MAP:E MODE:0
SET CTCM=C:\CTCM
C:\SB16\DIAGNOSE /S
C:\SB16\AWEUTIL /S
C:\SB16\MIXERSET /P /Q
C:\CTCM\CTCU /S
PATH C:\DRDOS;C:\
DPMI OFF
VERIFY OFF
PROMPT [DR-DOS] $P$G
SET DRDOSCFG=C:\DRDOS
rem NWCACHE 7670 1024 /LEND=ON /DELAY=OFF
lh c:\drdos\nwcdex /D:CDROM1
lh c:\dosv\ctmouse
GOTO END

:END

Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: