DOSbox汇编集成环境下的详细设置

Posted 若水微韧

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DOSbox汇编集成环境下的详细设置相关的知识,希望对你有一定的参考价值。

alt+enter可以全屏幕,如果觉得游戏运行速度不合适,可以修改 cycles=3000 ,将3000适当调整大小。

3。运行 DOSBox,会打开两个 DOS 窗口,我们只需在如下窗口中键入

mount c h:\pal

  此命令的作用为将 h:\pal 挂载为 C 盘,h:\pal 为《仙剑奇侠传》所在目录。

4。键入 c: 进入 C 盘,键入 pal.exe 即可进入游戏,如下图:

5。已经可以正常运行游戏了。

6。终极大法:将游戏的可执行程序直接拖到 DOXbox 的快捷方式上面,就可以无需输入任何命令直接运行。

  每次都这样输入也太麻烦啦!好在还有一些快捷方法:

  一、直接把可执行文件拖动到DosBox图标上放手。不过或许是软件还不完善,有时候这样做会出错。

  二、用记事本打开配置文件dosbox.conf文件,找到[AUTOEXEC]部分,把整条mount命令写在这里——DosBox把这部分当作AUTOEXEC.BAT。提示:我们在DosBox中可以使用大部分dos内部命令。外部命令软件本身没包含,而且不一定能用。

  以红茶的大2为例,那么在最后加上语句:

"

mount g c: koukai2

g:

"

  这样,每次启动DOSBOX后,红茶机器上的koukai2文件夹就是就是DOSBOXg盘,而且每次都会自动执行这两句命令,直接进入g盘根目录。

  然后就是输入 "play"加回车就可以开始game了。

  接下来是优化和热键的问题:

CTRL+ F12/F11来加/减速.DosBox标题栏上有个数字,通过它,可以了解到目前虚拟cpu的速度。提示:别加得太过分。例如,若系统中用3600

  左右的速度正好,就不要再提高了,再高反而要变慢的。找到合适的的值后,你可以将它写到dosbox.conf[cpu]部分的cycles项,今后

DosBox会把它作为默认值。

ALT+ENTER可以切换/解除全屏模式。(推荐全屏模式,因为窗口下,游戏运行比较慢)

CTRL+F10可以把鼠标从窗口中释放。

CTRL+F9是关闭DOSBox

dosbox.conf中从[mixer][speaker]的项目都是关于声音的。设置很简单,唯一要注意的是,[mixer]项中的rate决定了你能听到的效果上

  限,所以它不能低于其它项目中的值。

  最后建议不要使用中文目录名和文件名,有可能出错。

  下载到的安装文件不大,安装也是标准的WIN式。安装好后运行,会出现两个COMMAND样子的窗口,我们操作的是前方的那个。

  假如你的枫之舞安装在"D: dosgames swda",那么我们可以输入:

mount c "D: dosgames swda"来把swda目录虚拟成DosBoxC盘根目录。下面的操作就和真dos一样了。如果想虚拟光驱或软驱,则要加参数-t

cdrom-t floppy。建议不要使用中文目录名和文件名,有可能出错。

  每次都这样输入也太麻烦啦!好在还有一些快捷方法:

  一、直接把可执行文件拖动到DosBox图标上放手。不过或许是软件还不完善,有时候这样做会出错。

  二、用记事本打开dosbox.conf文件,找到[AUTOEXEC]部分,把整条mount命令写在这里——DosBox把这部分当作AUTOEXEC.BAT。提示:我们在

DosBox中可以使用大部分dos内部命令。外部命令软件本身没包含,而且不一定能用。

  例子:假如你的DOS游戏都在E:dosgames 下,那么可以这样写:

mount d "e:/dosgames/"

  这样,每次启动DOSBOX后,你的e:/dosgames/就是DOSBOXD盘。

cd swda

swda.exe

  玩吧~

  下面我们来优化一下DOSBOX

  现在DosBox的模拟效率还不太高。所以,先把能关掉的其它程序都关掉再来进行下一步。

  首先,用DosBox运行一个要求配置较高的游戏(不过DOOM一类的就免了,除非你的电脑很强)。

DosBox标题栏上有个数字,通过它,可以了解到目前虚拟cpu的速度。现在,我们使用CTRL-F12/F11来加/减速。提示:别加得太过分。例如我

  的C4-1.7G系统中用3600左右的速度就正好,再高反而要变慢的。找到合适的的值后,你可以将它写到配置文件中[cpu]部分的cycles项,今后

DosBox会把它作为默认值。

  配置文件中从[mixer][speaker]的项目都是关于声音的。设置很简单,作者也给了很详尽的注释(README.TXT)。唯一要注意的是,

[mixer]项中的rate决定了你能听到的效果上限,所以它不能低于其它项目中的值。用dosbox玩时,要在dosbox.conf文件里将[sblaster]部分

  里的type改成type=sb2

  如果type里写的是sbpro1/sbpro2/sb16,游戏中会出现只有音效但无背景音乐的情况(也就是说听不到沧海一声笑,只能听见刀剑的声效

  和真人语音)至于IRQDMA则无关紧要,游戏能自动识别,57都可以

1、直接输入dosbox 路径时,目标路径会被模拟为c: >

  一般来说不会有什么问题,但对一些有特殊路径要求的游戏而言就会出错

  例子:同级生2

  在读完ELF片头后可能出现c: nanpa2 flag?(这是由于上次存档时的路径不同造成的)

  然后退回提示符状态

  解决方法:舍弃dosbox自动mount,用mount手动指定

mount c ???(???代表你真实硬盘中nanpa2目录的上级目录)

  比如nanpa2在你硬盘E: elfnanpa2

  那么应为mount c e: elf

  这样模拟出来就是c: nanpa2

  再次运行nanpa2.bat,就不会出现c: nanpa2 flag?而跳回提示符状态了

2、游戏不能识别CDROM

  在我们进行mount c d -t cdrom这样的工作之后,游戏仍提示找不到游戏光盘时

  有可能是因为无法识别光盘标签(因为默认mountCDROM是没有名字的)

  这时候可以用mount c d -t cdrom -label LABEL(既需要的标签名)

  同时还可以检测一下dosbox能识别你的哪些光驱(包括真实的和虚拟的)

  直接输入mount -cd

  会按012的顺序排出来

  之后你就可以用mount x y -t(随便,根据情况而定) -usecd #(#为刚才说的数字012...)来虚拟所需路径

3、当游戏无法运行时,换个版本的dosbox

  虽然目前的最新版是0.65,但并不是说0.65可以向下兼容0.580.60能模拟的所有游戏

  例子:上古卷轴竞技场(0.65下有人可以有人则不行,但.58.60下都可以)

4、有时需要屏蔽一些参数

  具体参照此帖

http://vogons.zetafleet.com/viewtopic.php?...ight=daggerfall

  里面谈到了设置dpmi=false对部分游戏的必要性(当然反过来,一些游戏则必须要求dpmi=true)

  类似的还有xmsems

ps:这个帖子里说不要用默认source,用CVS我没找到...

5loadfix

  由于早期游戏无法预料到现在的内存数会这么庞大,所以在大内存下会产生错误。这时可以用loadfix来解决

  使用方法是:loadfix -大小文件名

  比如:loadfix -32 mm2.exe是分配32k内存给魔法门2

  如果不打-32,则分配默认值64k

  如果需要的话,可以打loadfix -f清掉刚才分配的内存

6、充分利用config(default.ini)调整初始速度、窗口大小、滤镜(目前支持scale2x)

  这部分还没掌握,都是看别人写的然后改 @[email protected]

 

DOSBOX.CONF

# 这个是DOSBOX的配置文件,由我--真·熊猫进行中文注释,特别感谢仙痴研究成果和鲁痴的强力技术支持!

#
本注释的编写参考了原版的注释,仙痴以及鲁痴的研究成果。本配置文件最后保留了仙痴的注释,都是十分有帮助的。对于仙痴的不懈努力在此表示衷心的感谢!

#
本配置文件是针对《仙剑奇侠传》DOS版本的,所以相关的参数有针对性,如果要运行其他DOS游戏,请根据游戏的需要参考注释自行修改。

#
本注释还有很多不完善的地方,有任何建议或意见请来
http://www.gamerhome.net/main/index.php?showforum=75
进行讨论,也可加入群9581813讨论。

#
如此详细的注释在国内应该是首次,并且所有条款都进行了注释——无论仙剑的运行是否需要。希望大家能由此对DOSBOX有一个系统的了解

#
提示1:原版的README中提到,DOSBOX的执行效率大概是奔腾400MHZCPU模拟后能流畅运行为286设计的游戏,对于一般的DOS游戏来说至少应该考虑1 GHZCPU,为了尽量提高速度,请尽量关闭其他的程序,以提高DOSBOX的运行效率

#
提示2“#”是注释符号,某些命令前的注释符号根据需要自行取消。中文前注释符号可以取消,不影响程序执行。

#
提示3:如果你安装了手柄,摇杆之类的,请考虑卸载。否则某些机器会出现DOSBOX因载入JOYSTICK/JOYPAD而变得十分缓慢,并且这个版本为止还没有禁止摇杆/手柄的参数。

#
提示4:快捷键
ALT-ENTER
全屏模式
CTRL-F1
开始键盘布局(如果哪个案件坏了,可以由此选择替换)
CTRL-F4
转换已载入的虚拟驱动器,作用是更新所有改动过的作为虚拟驱动器的目录
CTRL-F5
抓图,以PNG格式保存,路径设置见之后描述
CTRL-F6
开始录制声音,以WAV格式保存,再次按下中止
CTRL-ALT-F7
开始记录OPL命令,同样再次按下中止
CTRL-ALT-F8
开始录制最初的MIDI命令,再次按下中止。
CTRL-F7
减少跳帧
CTRL-F8
增加跳帧
CTRL-F9
关闭DOSBOX
CTRL-F10
锁定/解锁鼠标
CTRL-F11
减少cpucycle
CTRL-F12
增加cpucycle


#####################################################################



[sdl]


fullscreen=false
#
这个参数是设置游戏是否在全屏模式下运行,是则为true,否则为false

fulldouble=false
#
是否在全屏模式下使用双重缓冲,机器好的朋友建议打开。不过对画面的改善微乎其微。

fullfixed=ture
#
在全屏模式下,是否将画面拉伸至满屏。选择false不拉伸。如果你的全屏模式出现画面偏移,请选择ture

fullresolution=800x600
#
在全屏模式下,画面的分辨率是多少,一般来说,数值越大机器要求越高,可选参数1024x768800x600640x480

output=surface
#
输出模式,可选的参数是surface,overlay,opengl,openglnb,ddraw.如果你的全屏模式有问题,改成ddraw或者opengl就能够解决。选择opengl,openglnb,ddraw在全屏模式下画面稍有柔化。

hwscale=1.00
#
硬件缩放:如果你的硬件支持缩放,则以窗口模式运行时,将按照比例缩放。默认是1.00,即游戏默认分辨率所占100%大小。注意,这种大小是相对你桌面分辨率的,如果你的桌面分辨率跟游戏一样,那么运行的效果也就差不多是全屏了。

autolock=true
#
鼠标自动锁定:默认即可。

sensitivity=100
#
鼠标灵敏度,需要你的鼠标更灵敏,将默认数值调高即可,不过会占用更多系统资源。

waitonerror=true
#
如果DOSBOX运行过程中出现错误,则出错时不关闭DOSBOX。注意,这个选项意义不大,如果出现了稍微有点严重的问题,DOSBOX都会立刻自行结束,等不到你看清错误参数—_—b。所以如果为了看清……看准时机用pause break键吧 

priority=higher,normal
#
程序优先级:可选lower,normal,higher,highest。一次两个,以逗号分隔,当DOSBOX处于后台或最小化时程序自行选择第二个。

mapperfile=mapper.txt
#
自定义字符映射表。对于不满意游戏默认按键设置而游戏又不提供更改功能,想用某个键代替某个键时,考虑这个。详细的方法参见readme.txt Keymapper一节


[dosbox]

language=
#
外挂语言包,使DOSBOX支持多语言。这个版本只有英文,想看中文?……等有人汉化后再说……

machine=vga
#
显示模式,使用默认。备选参数hercules,cga,tandy,vga

captures=capture
#
等号后面那个是DOSBOX程序文件所在目录下的子目录名称,用于存放截图。

memsize=16
#
设置DOSBOX总共能使用的内存,使用默认



[render]

frameskip=0
#
跳帧,如果你的机器实在是不好,就考虑这个选项吧……备选参数09,越大跳帧越多,以牺牲画面流畅度来提高游戏运行速率。

aspect=false
#
象素高宽比,默认false1:1,如果不是有特殊需要就不要去更改。

scaler=normal2x
#
画面优化:备选参数none,normal2x,advmame2x,advmame3x,advinterp2x,interp2x,tv2x分别对"""2倍柔化""advanceMAME二倍柔化""andvanceMAME三倍柔化","加强型双线性过滤""双线性过滤""TV"。选择的话画面明显锐化。选择“TV模式的话程序会模拟扫描线,模拟出电视的效果。特别怀旧的朋友可以试试。其他的特效据个人测试结果来看效果区别不大。依个人喜好设定。



[cpu]

core=normal
#
模拟器CPU核心调整:备选参数simple,normal,full,dynamic。对应简易,通常,完全,动态调整。除非特殊需要,否则使用默认。

cycles=5000
#
模拟器CPU频率。对于一般的游戏3000足矣,但是这里对于DOS仙剑的淡入淡出进行了测试,5000以上时能改善淡入淡出的速度问题。注意,更改频率须根据个人机器配置不同来进行不同的设置。并且无论如何设置,游戏的整体运行速率都不会超过正常的100%,嘿嘿,想有变速齿轮般的效果是不可能的。还有要注意的是,这个速度设置的太低,游戏速度慢;设置的太高,由于你的机器配置所限,游戏速度也会慢。那么再回到仙剑,如果你的机器够好,不妨设置到 8000

cycleup=500
cycledown=500
#
这两个中,上面一个是增加,下面一个是减少。用快捷键键增加或减少cycle时,每次减少的数值或百分比。如果数值大于等于100时,变动的是数值;如果在199之间,则是变动的百分比。


[mixer]

nosound=false
#
静音模式:默认关闭。除非你不想听声音,否则保持默认。

rate=22050
#
采样率:默认是22MHZ,如果想效果稍微好点(主要是心理因素啦~),可以设置成44100

blocksize=2048
#
块大小:越大越能改善声音停顿的现象。不过也会带来副作用--延迟。

prebuffer=10
#
缓冲:播放时缓冲多少毫秒,声音卡的话可以考虑加大数值,但是相应的,系统资源占用加大。




[midi]


mpu401=true
#
是否进行MPU-401模拟,想听MIDI就要设置为true

intelligent=true
#
智慧处理模式,使用默认

device=default
#
选择接受MPU-401发出的MIDI讯号的设备,使用默认。备选参数为
# default,alsa,oss,win32,coreaudio,none
暂未详细测试。

config=
#
这个参数是针对特殊设置的,如有需要,可以去专业网站看看。这里无需考虑




[sblaster]


type=sb16
#
选择进行模拟的soundblaster型号:none,sb1,sb2,sbpro1,sbpro2,sb16

base=220
irq=7
dma=1
hdma=5
mixer=true
oplmode=auto
#
以上6条是能否发声的关键,游戏中的设置应该跟这里一样。以仙剑为例:base对应游戏设置程序install.exe中的I/O portIRQ,DMA分别一一对应。

oplrate=22050
#
这个是模拟音频的采样率,也可以提高到44100,不过效果改观不大。



[gus]


# gus=true
# rate=22050
# base=240
# irq1=5
# irq2=5
# dma1=3
# dma2=3
# ultradir=C:\ULTRASND

#
以上8条是关于GravisUltrasound的模拟的,仙剑用不到,这里关闭,需要的朋友看看原版的注释(以下为这8条的原版注释):
# gus -- Enable the Gravis Ultrasound emulation.
# base,irq1,irq2,dma1,dma2 -- The IO/IRQ/DMA addresses of the
 
# Gravis Ultrasound. (Same IRQ‘s and DMA‘s are OK.)
# rate -- Sample rate of Ultrasound emulation.
# ultradir -- Path to Ultrasound directory. In this directory
# there should be a MIDI directory that contains
# the patch files for GUS playback. Patch sets used
# with Timidity should work fine.



[speaker]

# pcspeaker=true
# pcrate=22050
# tandyrate=22050
# disney=true

#
以上4条仙剑用不到,这里关闭。需要的朋友看看原版注释,如下:
# pcspeaker -- Enable PC-Speaker emulation.
# pcrate -- Sample rate of the PC-Speaker sound generation.
# tandyrate -- Sample rate of the Tandy 3-Voice generation.
# Tandysound emulation is present if machine is set to tandy.
# disney -- Enable Disney Sound Source emulation.




[bios]
# 0.63
版(含)以前的版本(本版是0.63)这里都没有选项。



[dos]

xms=true
ems=false
#
针对仙剑的运行,关闭了EMS。不要动这个参数。



[modem]


modem=false
#
进行MODEM模拟,联机游戏用,如果需要使用MODEM连接,就打开。

comport=2
#
端口,使用默认

listenport=23
#
连入端口,使用默认



[directserial]


directserial=false
#
直接电缆连接,也是联机游戏用的,如果需要使用直接电缆连接,就打开。

comport=1
# DOSBOX
中的端口,使用默认

realport=COM1
#
主机的端口,按实际情况设置

defaultbps=1200
#
标准传输速率(bps)

parity=N
#
奇偶校验,备选参数:NEO

bytesize=8
#
每个数据包的大小,备选参数:58

stopbit=1
#
停制位点,使用默认。备选参数:12



[ipx]

ipx=false
# IPX
协议连接,联机游戏用,如果需要请选择true



[autoexec]
#
这里添加的命令是DOSBOX自动加载的命令,除了MOUNTDOSBOX专有命令,也可添加部分DOS命令,如COPYCLS等等。

#
备用自动运行DOS仙剑的参数:

# mount d h:\ -t cdrom -usecd 0 -apsi -label GC050
# mount d h:\ -t cdrom -usecd 0 -ioctl -label GC050
# ↑ ↑ ↑
#
模拟为光盘或镜象所在光盘或镜象处在当前系统的第几个
#
驱动器D: 驱动器名光驱,0-第一个,1-第二个……依次类推


#
以上两个命令,第一个对应WIN9X,第二个对应WINXP,二者选其一。


#
这个命令的作用是将DOSBOX中的驱动器D设置为游戏光驱,对于需要光盘的游戏来说是必不可少的。
#
那么如何运行光盘呢?首先,你要有光盘就方便了,放入光驱然后执行上面的命令就行了。如果是光碟的镜象,则先使用虚拟光驱软件(推荐DAEMON Tools)加载。注意,一定要打开虚拟光驱软件上的所有模拟选项。

#
后面仙痴的注释中对于这个问题有十分详细的解说,大家一定要看。


#####################################################################


#
最后是仙痴的原话,在这里列出:


#
各位好,我是仙痴。出于共同的爱好,我们走到了一起。下面谈谈如何完美再现仙剑的音乐”“音效“CD 音源
#
 
# DosBOX
我也是后接触的,这个软件真是伟大。它让我们可以运行任何以前的老程序,但这里我们主要讨论的是仙剑。
#
通常用它的默认设置,就可以听到音乐和音效。如果还想听到CD音源,那至少需要有光盘或是光盘映象文件。
#
CloneCD 的虚拟光驱或者 DaemonTools 加载都行(同样伟大的软件,加载后都能用解霸播放出声音)。
#
 
#
当然,要想成功的听到音乐音效甚至CD音源,参数还要设置好才行。感谢网友们的支持,他们提供了主要实现的方法。
#
虽然,当时我没有试验成功。但通过两次的试验成功了。为了让所有仍在为此而困惑的人们少走弯路,我写一下体会。
#
 
#
首先要用程式 install.exe 设置系统设定音乐/音效配备选项。通常设成声霸卡“CD音源+声霸卡
#
音乐和音效在和 DosBOX 参数方面相关的主要是:
# [sblaster]
# irq=7
# dma=1
#

# [gus]
# irq1=7
# dma1=1
#
要一致。同时也要和 install.exe 设置的 IRQ 一致。通常的数值都是 7 或是 5 。这样可以绝对保证你能听到音乐和音效了。
#
 
#
如果有原版光盘或是光盘映象文件的朋友,你就可以有耳福听到 8 CD 音乐了。虽然可以直接听,但这和在游戏中听到,
#
感受是完全不同的。假如你在 install.exe 中设置了“CD音源+声霸卡,如果 DosBOX 的参数不对,你看到的片头就是
#
没声音(不同于只有声霸卡的设定)。让 CD 发声的参考参数是:mount d z:\ -t cdrom -usecd 0 -ioctl -labelGC050
#
 
#
经过我的试验,关键的两个参数是光驱的盘符顺序号(就是那个0而成功让 CD 音源发声的关键是:
# 1
、将盘符的字母改成你的光盘或是光盘映象文件所在的盘符;
# 2
、将顺序号改成相应的数字:它是第几个光驱(0是第一个,1是第二个,依此类推)
# 3
DosBOX 的正确使用。执行的批处理必须是主用而不是调用。@dosbox\dosbox .\pal!.exe 则无声,有声的参见 !play.bat
#
光盘或虚拟光盘并不强行需要非得处于第一光驱位置,只要标明它在第几个光驱(0是第一个,1是第二个,依此类推)。
#
应该能够成功,无论是在 Win9X 还是在 WinXP 下。(在 Win9X 中比武招亲仍没有,其他都有声。试 N 天无望,寻高人指点)
#
 
#
还需要说明的是在Win9X下,光盘的顺序号如果指定则必须是大于等于真实顺序号(第一个仍是0的任何正整数。
#
盘符则任意。只要是存在的就行(哪怕是 C: 甚至是A: )。但在WinXP下,盘符必须正确;而顺序号无所谓。
#
 
#
感谢网友:外塞之雾以及唐方哥哥南闲阴人提供 DosBOX 的参数,感谢长白老妖协助听CD存档的搜集整理
#
隆重感谢:install.exe 的主要破解者“Chance Clever”主页:http://cclever.spymac.net/信箱:[email protected]
#
本版本并不完善,努力着并等待着共同的努力者们共同完成我们心中的完美仙剑的情结..................

以上是关于DOSbox汇编集成环境下的详细设置的主要内容,如果未能解决你的问题,请参考以下文章

搭建汇编语言的环境

Mac OX环境下DOSBox汇编环境的搭建

Mac 电脑下搭建DOSBox汇编环境

使用DOSBox+MASMPLUS工具包搭建汇编环境

mac汇编环境配置

win10 64位 汇编环境