活力5116
在线时间3239 小时
阅读权限100
版主
- 积分
- 8977
- 主题
- 1031
- 回帖
- 1898
- 注册时间
- 2010-9-4
- 最后登录
- 2024-11-7
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
请问大家怎么制作如下图所示的批处理bat文件菜单使其能翻页,不需要反复切换DOSBOX版本就能指定用DOSBOX0.60-DOSBOX0.74任意版本和游戏能用的DOSBOX版本运行指定DOS游戏,因为下图所示的分类批处理bat文件菜单能翻页,但是不同游戏要用不同DOSBOX版本的,要反复切换DOSBOX版本,而且不能指定用DOSBOX0.60-DOSBOX0.74任意版本和游戏能用的DOSBOX版本运行指定DOS游戏,也不能用到箭情制作的DOS游戏DOSBOX模拟器文件夹里,用起来不方便,麻烦大家知道怎么制作的朋友有空时帮忙制作一个如下图所示的批处理bat文件菜单,不需要反复切换DOSBOX版本就能指定用DOSBOX0.60-DOSBOX0.74任意版本和游戏能用的DOSBOX版本运行指定DOS游戏,或者告诉我详细方法怎么制作要用到啥软件,批处理bat文件菜单只要能翻页就行,分不分类没有关系,而且不需要反复切换DOSBOX版本就能指定用DOSBOX0.60-DOSBOX0.74任意版本和游戏能用的DOSBOX版本运行指定DOS游戏,谢谢。
批处理bat文件菜单每一页分1排共8个游戏序号为:
A 游戏名
B 游戏名
C 游戏名
D 游戏名
E 游戏名
F 游戏名
G 游戏名
H 游戏名
退出序号为X
翻页序号为0,1,2
其他人制作的批处理bat文件界面截图:[这个有翻页功能,但是要反复切换DOSBOX版本,不能指定用DOSBOX0.60-DOSBOX0.74任意版本和游戏能用的DOSBOX版本运行指定DOS游戏]
箭情制作的DOS模拟器文件夹里的文件夹内容截图
箭情制作的批处理bat文件代码:[这个没有翻页功能,但是不需要反复切换DOSBOX版本,能指定用DOSBOX0.60-DOSBOX0.74任意版本和游戏能用的DOSBOX版本运行指定DOS游戏]
@Echo Off
Title 文本编辑器配置程序——箭情倾情制作
:Menu
COLOR 1F
mode con cols=83 lines=44
CLS
Echo ┌──────────────────┐
Echo │ 箭情倾情制作:文本编辑器配置程序 │
Echo └──────────────────┘
Echo 0仙剑奇侠传窗口模式
Echo 1仙剑奇侠传全屏模式
Echo 2轩辕剑1窗口模式
Echo 3轩辕剑1全屏模式
Echo 4轩辕剑2窗口模式
Echo 5轩辕剑2全屏模式
Echo 6轩辕剑2外传枫之舞窗口模式
Echo 7轩辕剑2外传枫之舞全屏模式
Echo 8大唐英雄传窗口模式
Echo 9大唐英雄传全屏模式
Echo a大唐英雄传设置
Echo Q退出配置程序
Set Choice=
Set /P Choice=请根据自己的需要按相应的键,然后按回车:
If "%Choice%"=="" Goto Menu
If Not "%Choice%"=="" Set Choice=%Choice:~0,1%
If /I "%Choice%"=="0" Goto 0
If /I "%Choice%"=="1" Goto 1
If /I "%Choice%"=="2" Goto 2
If /I "%Choice%"=="3" Goto 3
If /I "%Choice%"=="4" Goto 4
If /I "%Choice%"=="5" Goto 5
If /I "%Choice%"=="6" Goto 6
If /I "%Choice%"=="7" Goto 7
If /I "%Choice%"=="8" Goto 8
If /I "%Choice%"=="9" Goto 9
If /I "%Choice%"=="a" Goto a
If /I "%Choice%"=="Q" Exit
:0
COLOR 1F
start .\DOSBox\DOSBox0.74\DOSBox.exe -conf .\conf\PALck.conf -noconsole -exit
Goto Menu
:1
COLOR 1F
start .\DOSBox\DOSBox0.74\DOSBox.exe -conf .\conf\PALqp.conf -noconsole -exit
Goto Menu
:2
COLOR 1F
start .\DOSBox\DOSBox0.74\DOSBox.exe -conf .\conf\swd1ck.conf -noconsole -exit
Goto Menu
:3
COLOR 1F
start .\DOSBox\DOSBox0.74\DOSBox.exe -conf .\conf\swd1qp.conf -noconsole -exit
Goto Menu
:4
COLOR 1F
start .\DOSBox\DOSBox0.74\DOSBox.exe -conf .\conf\swd2ck.conf -noconsole -exit
Goto Menu
:5
COLOR 1F
start .\DOSBox\DOSBox0.74\DOSBox.exe -conf .\conf\swd2qp.conf -noconsole -exit
Goto Menu
:6
COLOR 1F
start .\DOSBox\DOSBox0.74\DOSBox.exe -conf .\conf\swdack.conf -noconsole -exit
Goto Menu
:7
COLOR 1F
start .\DOSBox\DOSBox0.74\DOSBox.exe -conf .\conf\swdaqp.conf -noconsole -exit
Goto Menu
:8
COLOR 1F
start .\DOSBox\DOSBox0.74\DOSBox.exe -conf .\conf\DTYXZck.conf -noconsole -exit
Goto Menu
:9
COLOR 1F
start .\DOSBox\DOSBox0.74\DOSBox.exe -conf .\conf\DTYXZqp.conf -noconsole -exit
Goto Menu
:a
COLOR 1F
start .\DOSBox\DOSBox0.74\DOSBox.exe -conf .\conf\DTYXZsz.conf -noconsole -exit
Goto Menu
其他人制作的批处理bat文件代码:[这个有翻页功能,但是要反复切换DOSBOX版本,不能指定用DOSBOX0.60-DOSBOX0.74任意版本和游戏能用的DOSBOX版本运行指定DOS游戏]
@echo off
setlocal EnableDelayedExpansion
set path=%SystemRoot%\system32;%SystemRoot%
mode con cols=80 lines=25
for /F "tokens=3" %%a in ('reg query HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Nls\Language /v default ^|find /i "default"') do set cLang=%%a
for %%a in (0404 0C04 1404) do if /i "%cLang%"=="%%a" set "CurLang=Fanti"
:loop1
if /i "%~1"=="" goto out1
if /i "%~1"=="-cht" (set "CurLang=Fanti")
if /i "%~1"=="-chs" (set "CurLang=Jianti")
if /i "%~1"=="-fullscreen" (set "fs=-fullscreen")
shift
goto loop1
:out1
if not defined CurLang set CurLang=Jianti
if "%CurLang%"=="Jianti" (
if /i "%fs%"=="-fullscreen" (title 经典DOS游戏[全屏]) else title 经典DOS游戏[窗口]
) else (
if /i "%fs%"=="-fullscreen" (title 竒ㄥDOS村栏[??]) else title 竒ㄥDOS村栏[怠?]
)
::
::
::
:MENU
if "%CurLang%"=="Fanti" (goto MENU_T) else GOTO MENU_S
::
:MENU_T
CLS
COLOR 0A
ECHO.
ECHO.
ECHO. =-=-=-=-=叫匡拒村栏摸?=-=-=-=-=
ECHO.
ECHO.
ECHO. 1 à︹ш簍摸 2 驹囱摸
ECHO.
ECHO. 3 (??)郸菠摸 4 ??驹菠摸
ECHO.
ECHO. 5 笆?甮阑摸 6 家览緄Θ/竒犁摸
ECHO.
ECHO. 7 ヰ盯痲醇摸 8 玙繧秆癵摸
ECHO.
ECHO.
ECHO. X 癶? H 腊?弧?
ECHO.
ECHO.
ECHO.
ECHO.
ECHO.
CHOICE /C 123456789xh /N /M 叫块?匡拒兜ヘ??腹?
IF ERRORLEVEL 1 IF NOT ERRORLEVEL 2 set LOGOT=???à︹ш簍摸村栏???& set "GAME=RPG" & GOTO submenu
IF ERRORLEVEL 2 IF NOT ERRORLEVEL 3 set LOGOT=????驹囱摸村栏????& set "GAME=SPG" & GOTO submenu
IF ERRORLEVEL 3 IF NOT ERRORLEVEL 4 set LOGOT=???????郸菠摸???& set "GAME=SLG" & GOTO submenu
IF ERRORLEVEL 4 IF NOT ERRORLEVEL 5 set LOGOT=?????驹菠摸村栏???& set "GAME=RTS" & GOTO submenu
IF ERRORLEVEL 5 IF NOT ERRORLEVEL 6 set LOGOT=???笆?甮阑摸村栏???& set "GAME=ACT" & GOTO submenu
IF ERRORLEVEL 6 IF NOT ERRORLEVEL 7 set LOGOT=?? 家览緄Θ〓竒犁摸 ??& set "GAME=SIM" & GOTO submenu
IF ERRORLEVEL 7 IF NOT ERRORLEVEL 8 set LOGOT=???ヰ盯痲醇摸村栏???& set "GAME=PUZ" & GOTO submenu
IF ERRORLEVEL 8 IF NOT ERRORLEVEL 9 set LOGOT=???玙繧秆癵摸村栏???& set "GAME=AVG" & GOTO submenu
IF ERRORLEVEL 9 IF NOT ERRORLEVEL 10 set LOGOT=?? H摸〓ゅ?玙繧摸???& set "GAME=HGA" & GOTO submenu
IF ERRORLEVEL 10 IF NOT ERRORLEVEL 11 GOTO END
IF ERRORLEVEL 11 IF NOT ERRORLEVEL 12 if exist readme_t.txt (
cls&type readme_t.txt|more&&pause) else (cls&echo.&echo. 礚猭т?腊?ゅン&echo.&pause)
goto MENU_T
::
::
::
:MENU_S
CLS
COLOR 0A
ECHO.
ECHO.
ECHO. =-=-=-=-=请选择游戏类别=-=-=-=-=
ECHO.
ECHO.
ECHO. 1 角色扮演类 2 战棋类
ECHO.
ECHO. 3 (回合)策略类 4 即时战略类
ECHO.
ECHO. 5 动作射击类 6 模拟养成/经营类
ECHO.
ECHO. 7 休闲益智类 8 冒险解迷类
ECHO.
ECHO.
ECHO. X 退出 H 帮助说明
ECHO.
ECHO.
ECHO.
ECHO.
ECHO.
CHOICE /C 123456789xh /N /M 请输入选择项目的序号:
IF ERRORLEVEL 1 IF NOT ERRORLEVEL 2 set LOGOT= 角色扮演类游戏 & set "GAME=RPG" & GOTO submenu
IF ERRORLEVEL 2 IF NOT ERRORLEVEL 3 set LOGOT= 战棋类游戏 & set "GAME=SPG" & GOTO submenu
IF ERRORLEVEL 3 IF NOT ERRORLEVEL 4 set LOGOT= (回合)策略类 & set "GAME=SLG" & GOTO submenu
IF ERRORLEVEL 4 IF NOT ERRORLEVEL 5 set LOGOT= 即时战略类游戏 & set "GAME=RTS" & GOTO submenu
IF ERRORLEVEL 5 IF NOT ERRORLEVEL 6 set LOGOT= 动作射击类游戏 & set "GAME=ACT" & GOTO submenu
IF ERRORLEVEL 6 IF NOT ERRORLEVEL 7 set LOGOT= 模拟养成/经营类 & set "GAME=SIM" & GOTO submenu
IF ERRORLEVEL 7 IF NOT ERRORLEVEL 8 set LOGOT= 休闲益智类游戏 & set "GAME=PUZ" & GOTO submenu
IF ERRORLEVEL 8 IF NOT ERRORLEVEL 9 set LOGOT= 冒险解迷类游戏 & set "GAME=AVG" & GOTO submenu
IF ERRORLEVEL 9 IF NOT ERRORLEVEL 10 set LOGOT= H类/文字冒险类 & set "GAME=HGA" & GOTO submenu
IF ERRORLEVEL 10 IF NOT ERRORLEVEL 11 GOTO END
IF ERRORLEVEL 11 IF NOT ERRORLEVEL 12 if exist readme.txt (
cls&type readme.txt|more&&pause) else (cls&echo.&echo. 无法找到帮助文件&echo.&pause)
goto MENU_S
::
::
::
:submenu
cls
CALL :LOGO
ECHO #>GAME.LST
set GmNumb=
if "%CurLang%"=="Fanti" (set gamelist=gamelist_t.csv) else (set gamelist=gamelist.csv)
for /F "EOL=# delims=" %%a in ('findstr /i "%game%" %gamelist%') do (
set "strg=%%a"
for /F "tokens=3 delims=," %%b in ("!strg!") do (
if exist %%b (
set /a GmNumb+=1
ECHO !strg!>>GAME.LST
)))
set GmNumbRemain=%GmNumb%
set JumpNumbAll=1
SET JumpNumbTmp=1
set PgNumb=1
set GmNumb_0=0
set GmNumb_1=0
set RowNumb=1
SET GmNumbAtRow=4
set GmNO=A B C D E F G H I J K L M N O P Q R S T
set cn=1
set CurABC=
SET GmName=
SET ShowRowGmName=
set CHOICA=
if "%CurLang%"=="Fanti" (set "PgShow1=1 ???"&set "PgShow2=2 ???") else (
set "PgShow1=1 上一页"&set "PgShow2=2 下一页")
set "PgShow3= "
GOTO GmListEachRow
::
::
:GmListEachRow
for /F "skip=%JumpNumbAll% delims=, tokens=2" %%c in (game.lst) do (
set CurGmName=%%c
set Blanks=
echo !CurGmName!>TempName.txt
call :CaLenth TempName.txt
IF !CharLenth! LEQ 19 (set /a BlankNumb=20-!CharLenth!) ELSE (
IF !CharLenth! LEQ 37 (set /a BlankNumb=39-!CharLenth!)&(set /a GmNumbAtRow=!GmNumbAtRow!-1) ELSE GOTO ERROR1
)
IF !GmNumbAtRow! LEQ 0 GOTO ShowPageGmList
CALL :CalBlank !BlankNumb!
CALL :CHARN
SET ShowRowGmName=!ShowRowGmName!!CurABC! %%c!Blanks!
SET /a GmNumbAtRow=!GmNumbAtRow!-1
IF !GmNumbAtRow! LEQ 0 GOTO ShowPageGmList
)
GOTO ShowPageGmList
::
::
:ShowPageGmList
ECHO.
ECHO %ShowRowGmName%
SET ShowRowGmName=
set /a GmNumbRemain=%GmNumbRemain%-%CN%+%JumpNumbTmp%
set /a JumpNumbTmp=%CN%-%JumpNumbTmp%
set /a GmNumbCurPg+=%JumpNumbTmp%
set /a JumpNumbAll+=%JumpNumbTmp%
SET /a JumpNumbTmp=%CN%
IF %GmNumbRemain% LEQ 0 (set NextPg=CURP&GOTO ChoiceCMD)
set GmNumbAtRow=4
IF %RowNumb% EQU 5 (set ProPg=PROP&set NextPg=NEXTP&GOTO ChoiceCMD)
SET /a RowNumb+=1
goto GmListEachRow
::
::
:NEXTP
CLS & CALL :LOGO
set ProPg=PROP
set JumpNumbAll=1
for /L %%a in (1,1,%PgNumb%) do call set /a JumpNumbAll+=%%GmNumb_%%a%%
set /a PgNumb+=1
set GmNumb_%PgNumb%=0
set CHOICA=
GOTO GmListEachRow
::
:PROP
CLS & CALL :LOGO
set /a PgNumb-=1
set /a ProPgNumb=%PgNumb%-1&set JumpNumbAll=1
for /L %%a in (0,1,%ProPgNumb%) do call set /a JumpNumbAll+=%%GmNumb_%%a%%
set /a GmNumbRemain=%GmNumb%-%JumpNumbAll%+1
set CHOICA=
GOTO GmListEachRow
::
:CURP
CLS & CALL :LOGO
set /a ProPgNumb=%PgNumb%-1&set JumpNumbAll=1
for /L %%a in (0,1,%ProPgNumb%) do call set /a JumpNumbAll+=%%GmNumb_%%a%%
set /a GmNumbRemain=%GmNumb%-%JumpNumbAll%+1
set CHOICA=
GOTO GmListEachRow
::
:CaLenth
set /a CharLenth=%~z1+1
goto :eof
::
:CalBlank
for /L %%i in (%1,-1,1) DO set "Blanks=!Blanks! "
goto :eof
::
:CHARN
for /F "tokens=%cn%" %%j in ("%GmNO%") DO set CurABC=%%j
set /a cn+=1
set CHOICA=%CHOICA%%CurABC%
goto :eof
::
:ERROR1
CLS
ECHO.&ECHO.
if "%CurLang%"=="Fanti" (ECHO. ?岿罢????????&ECHO.&ECHO.
ECHO. ?︽睰??ゅンЖ?嘿筁??┪粇ノ??à硆腹¨?〃??だ筳才? ) else (
ECHO. 出错啦!可能的原因为:&ECHO.&ECHO.
ECHO. 自行添加的文件夹名称过长,或误用了全角逗号“,”作为分隔符。 )
ECHO.&ECHO.&ECHO.&ECHO.
PAUSE&COLOR&GOTO END
::
::
:LOGO
set colora=135
set colorb=8AE9EFABE
if /i "%GAME:~0,1%"=="R" (set colorx=0) else (
if /i "%GAME:~0,1%"=="A" (set colorx=0) else (
if /i "%GAME:~0,1%"=="H" (set colorx=2) else (set colorx=1)))
set /a colorN=%random%%%3+%colorx%*3
set colora=!colora:~%colorx%,1!
set colorb=!colorb:~%colorN%,1!
rem echo %colora%%colorb%
color %colora%%colorb%
if "%CurLang%"=="Fanti" (
ECHO.
ECHO. ???????????????
ECHO. ?%LOGOT%?
ECHO. ???????????????
) else (
ECHO.
ECHO. ┌─────────────┐
ECHO. │%LOGOT%│
ECHO. └─────────────┘
)
GOTO :EOF
::
::
:ChoiceCMD
for /l %%a in (5,-1,%RowNumb%) do echo.&echo.
set RowNumb=1
SET JumpNumbTmp=1
SET CN=1
set GmNumbAtRow=4
set GmNumb_%PgNumb%=%GmNumbCurPg%
set GmNumbCurPg=0
if %PgNumb% EQU 1 (set ProPg=CURP)
if "%ProPg%"=="CURP" (set PageShow1=%PgShow3%) else (set PageShow1=%PgShow1%)
if "%NextPg%"=="CURP" (set PageShow2=%PgShow3%) else (set PageShow2=%PgShow2%)
if "%CurLang%"=="Fanti" (ECHO. X 癶? 0 ???垫虫 Page %PgNumb% %PageShow1% %PageShow2% ) else (
ECHO. X 退出 0 返回主菜单 Page %PgNumb% %PageShow1% %PageShow2% )
ECHO.
ECHO.
ECHO.
if "%CurLang%"=="Fanti" (CHOICE /C 120X%CHOICA% /N /M 叫块?匡拒兜ヘ??腹? ) else (
CHOICE /C 120X%CHOICA% /N /M 请输入选择项目的序号: )
IF ERRORLEVEL 1 IF NOT ERRORLEVEL 2 GOTO %ProPg%
IF ERRORLEVEL 2 IF NOT ERRORLEVEL 3 GOTO %NextPg%
IF ERRORLEVEL 3 IF NOT ERRORLEVEL 4 GOTO MENU
IF ERRORLEVEL 4 IF NOT ERRORLEVEL 5 GOTO END
IF ERRORLEVEL 5 IF NOT ERRORLEVEL 6 set gmdir=0&GOTO rungame
IF ERRORLEVEL 6 IF NOT ERRORLEVEL 7 set gmdir=1&GOTO rungame
IF ERRORLEVEL 7 IF NOT ERRORLEVEL 8 set gmdir=2&GOTO rungame
IF ERRORLEVEL 8 IF NOT ERRORLEVEL 9 set gmdir=3&GOTO rungame
IF ERRORLEVEL 9 IF NOT ERRORLEVEL 10 set gmdir=4&GOTO rungame
IF ERRORLEVEL 10 IF NOT ERRORLEVEL 11 set gmdir=5&GOTO rungame
IF ERRORLEVEL 11 IF NOT ERRORLEVEL 12 set gmdir=6&GOTO rungame
IF ERRORLEVEL 12 IF NOT ERRORLEVEL 13 set gmdir=7&GOTO rungame
IF ERRORLEVEL 13 IF NOT ERRORLEVEL 14 set gmdir=8&GOTO rungame
IF ERRORLEVEL 14 IF NOT ERRORLEVEL 15 set gmdir=9&GOTO rungame
IF ERRORLEVEL 15 IF NOT ERRORLEVEL 16 set gmdir=10&GOTO rungame
IF ERRORLEVEL 16 IF NOT ERRORLEVEL 17 set gmdir=11&GOTO rungame
IF ERRORLEVEL 17 IF NOT ERRORLEVEL 18 set gmdir=12&GOTO rungame
IF ERRORLEVEL 18 IF NOT ERRORLEVEL 19 set gmdir=13&GOTO rungame
IF ERRORLEVEL 19 IF NOT ERRORLEVEL 20 set gmdir=14&GOTO rungame
IF ERRORLEVEL 20 IF NOT ERRORLEVEL 21 set gmdir=15&GOTO rungame
IF ERRORLEVEL 21 IF NOT ERRORLEVEL 22 set gmdir=16&GOTO rungame
IF ERRORLEVEL 22 IF NOT ERRORLEVEL 23 set gmdir=17&GOTO rungame
IF ERRORLEVEL 23 IF NOT ERRORLEVEL 24 set gmdir=18&GOTO rungame
IF ERRORLEVEL 24 IF NOT ERRORLEVEL 25 set gmdir=19&GOTO rungame
pause
GOTO MENU
::
::
::
:rungame
set /a ProGmJmp=%PgNumb%-1
set /a GmJump=%gmdir%+1
for /L %%a in (0,1,%ProGmJmp%) do call set /a GmJump+=!GmNumb_%%a!
for /F "skip=%GmJump% delims=" %%d in (game.lst) do set gmline=%%d&goto DefParax
::
:DefParax
for /L %%a in (1,1,15) do set "gm_%%a="
set cst=3
:DefParay
for /F "tokens=%cst% delims=," %%e in ("!gmline!") do (
if %cst% EQU 3 set gmfd=%%e
if %cst% EQU 4 set gmfl=%%e
if %cst% GTR 4 set gm_%csn%=%%e
)
if %cst% GTR 4 if not defined gm_%csn% goto DefEnd
set /a cst+=1
set /a csn=%cst%-4
goto DefParay
:DefEnd
set /a csn-=1
echo.>game.conf
if not defined gm_3 goto gmcs
for /L %%a in (3,2,%csn%) do (
if /i "!gm_%%a!"=="dosbox0.63" goto gmcs
set /a gmn1=%%a
set /a gmn2=%%a+1
call :Wconf
)
goto gmcs
::
:Wconf
if /i "!gm_%gmn1%!"=="mouse" set "gm_%gmn1%=sensitivity"
if /i "!gm_%gmn1%!"=="cpucy" set "gm_%gmn1%=cycles"
for %%b in (output sensitivity) do (
if /i "!gm_%gmn1%!"=="%%b" (echo [sdl]&echo !gm_%gmn1%!=!gm_%gmn2%!&echo.)>>game.conf
)
for %%b in (core cycles) do (
if /i "!gm_%gmn1%!"=="%%b" (echo [cpu]&echo !gm_%gmn1%!=!gm_%gmn2%!&echo.)>>game.conf
)
for %%b in (ems xms) do (
if /i "!gm_%gmn1%!"=="%%b" (echo [dos]&echo !gm_%gmn1%!=!gm_%gmn2%!&echo.)>>game.conf
)
goto :EOF
::
:gmcs
(echo [autoexec]&echo cls&echo @echo off&echo mount c . ^>nul)>>game.conf
if /i "%gm_1%"=="no" goto gmff
if /i "%gm_1%"=="cdrom" goto cdromcs
if /i "%gm_1%"=="audio" goto audiocs
if /i "%gm_1%"=="floppy" goto flopcs
if /i "%gm_1%"=="img" (echo imgmount d .\%gmfd%\%gm_2% -t iso ^>nul)>>game.conf
goto gmff
::
:cdromcs
if /i "%gm_2%"=="no" (echo mount d .\%gmfd% -t cdrom ^>nul)>>game.conf else (
if /i "%gm_2%"=="local" (call :getcdrom & (echo mount d !CdromName! -t cdrom ^>nul)>>game.conf) else (
echo mount d .\%gmfd% -t cdrom -label %gm_2% ^>nul)>>game.conf )
goto gmff
::
:getcdrom
for /F "skip=1" %%a in ('fsutil fsinfo drives ^|find /v " "') do (
set DriveName=%%a
for /F "tokens=3" %%z in ('fsutil fsinfo drivetype !DriveName!') do (
set Ccdrom=%%z
if /i "!Ccdrom!"=="CD-ROM" (set CdromName=!DriveName! & goto :eof)
))
::
:audiocs
if /i "%gm_2%"=="no" (echo imgmount d .\audio.cue -t iso ^>nul)>>game.conf else (
(echo imgmount d .\%gm_2% -t iso ^>nul)>>game.conf )
goto gmff
::
:flopcs
if /i "%gm_2%"=="no" (echo mount a .\%gmfd% -t floppy ^>nul)>>game.conf else (
if /i "%gm_2%"=="b" (echo mount b .\%gmfd% -t floppy ^>nul)>>game.conf else (
echo mount a .\%gmfd% -t floppy -label %gm_2% ^>nul)>>game.conf )
goto gmff
::
:gmff
(echo c:&echo cd %gmfd%&echo call %gmfl%&echo exit)>>game.conf
set gmlinex=%gmline:,=%
if /i "%gmlinex:~-10,10%"=="dosbox0.63" (
copy /y dosbox0.63\dosbox.conf+game.conf gamen.conf
start dosbox0.63\dosbox -conf gamen.conf -noconsole %fs%
) else (
start DOSBOX0.72\dosbox -conf dosbox\dosbox.conf -conf game.conf -noconsole %fs%
)
goto CURP
::
::
:END
del /f/q TempName.txt stderr.txt stdout.txt game.lst game?.conf 1>nul 2>nul
color
cls
|
|