首页 新系统下老游戏重玩全攻略

新系统下老游戏重玩全攻略

举报
开通vip

新系统下老游戏重玩全攻略 gengjunmei | | 退出 查看文章 新系统下老游戏重玩全攻略 2008年08月01日 星期五 下午 02:14 [转自大软]新系统下老游戏重玩全攻略 转帖:大众软件 http://www.popsoft.com.cn/mag/media/mag/200304/200308/ 编者按:无需再为过去那些经典的游戏立碑作传,对于老玩家,它们的意义已不仅是打开电脑之门的钥匙,而更是一种关于时间的回忆——如果你是跟随着《大众 软件》一同走过这段年代,这种记忆也许会更深刻。当然现在也有...

新系统下老游戏重玩全攻略
gengjunmei | | 退出 查看文章 新系统下老游戏重玩全攻略 2008年08月01日 星期五 下午 02:14 [转自大软]新系统下老游戏重玩全攻略 转帖:大众软件 http://www.popsoft.com.cn/mag/media/mag/200304/200308/ 编者按:无需再为过去那些经典的游戏立碑作传,对于老玩家,它们的意义已不仅是打开电脑之门的钥匙,而更是一种关于时间的回忆——如果你是跟随着《大众 软件》一同走过这段年代,这种记忆也许会更深刻。当然现在也有不少玩家只是在某个特殊的情况下接触了一些老游戏,尽管它们可能已无法发声、更缺乏华丽的 动画,然而精彩的情节与对白、严谨的设计与画风,仍有可能给你一种特殊的吸引力。不过游戏毕竟还是属于应用软件,凡属应用软件就必须严格遵守其所在操作 系统制订的规则。因此,当微软年复一年推出新操作系统的同时,无数的软件在新规则下结束了曾经辉煌的时光,这里面当然也包括了大量的经典老游戏——是 的,无需为它们叹息,因为永远有更好的软件、更精彩的游戏不断出现。只是,过去的这些真的已经成为——告别的年代,失色的回忆?你不妨带着这样的疑问来 看这篇文章。 “新”与“老”当然是相对的,不过在开篇之前有必要确定我们的讨论范畴,这里的“老”是指为Win98之前的操作系统,包括DOS和Win3295,而新系统则是指 Win982000XP。毫无疑问,有很多老游戏都很值得我们来重温,但重温的方法也各异,有的人会去买例如奔腾133的“老爷级”机器,专门用于玩老游戏;不过老PC 也不是谁都能买到的,而且为了玩老游戏真愿意如此大动干戈,也算是骨灰级玩家了。于是典型的解决方法是采用多系统,其中有一个系统装上MSDOS 6.22+Win32或Win95,不过这种方法也会碰上新显卡、声卡与老游戏不兼容的难 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 。 实际上,大部分用户都会在现有系统上尝试老游戏,在这方面,使用Win98的用户似乎比WinXP的用户拥有更多的笑容(越“老”越好?这是否准确,还请参见 后文)。除了一些兼容性非常好的游戏,大部分已不可能运行,而所谓兼容性好的游戏也基本上不可能听到游戏原声。那么,要实现完美的重温效果,是否注定要 调整硬件、注定要安装多系统呢?经过笔者的一番艰苦探索,发现并不是这样,大部分的老游戏在新系统下仍旧可以找到合适的解决 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 。 一、DOS游戏的重玩 在大家所碰到的经典老游戏中,DOS游戏无疑占有绝对多的比例。然而辛辛苦苦找出来的游戏,当在视窗下双击主运行程序时,却会出现各种莫名的情况。在 Win98下还好一些,好歹能让你看到出错信息(当然一般情况下这个出错信息我们都弄不明白),至于Win2000XP,往往是黑色屏幕一闪而过,一些情况下还会出 现访问地址非法的提示,总之会让人不明所以。 然而这种种不能正常运行的情况并不完全是因为新系统与老游戏不兼容的缘故,熟悉DOS的用户都知道,DOS是一个开放的系统,其软件操作并不像Windows 下那样多数是“傻瓜式”,特别是DOS下的多媒体软件(例如游戏)要正常运行,往往需要对运行环境作特殊的设置,如果只是“双击”,当然不符DOS“风格”了。因 此一款DOS游戏在新系统下不能重玩,实质是兼容与设置两方面的问题均可能有,这也提示了我们解决问题的一些思路。 由于在不同系统下,DOS游戏运行的环境大不一样,因此在下文中,将主要讲述WinXP下的解决方案,之后回到Win2000和Win98环境下,探讨重玩的方法。 这样行文还有一个原因:事实上从Win98到2000再到XP,操作系统对DOS的兼容性是不断提高的,这恰与我们想像的相反——这一点很快就能从下文中看出。 (一) WinXP下DOS游戏重玩的方案 WinXP在DOS支持上和Win2000有许多共性,因此本段涉及的许多内容都适用于Win2000,不过毕竟二者还是存在着一些区别,因此将在本段之后讲述 Win2000所不同的地方。而Win98虽与WinXP相差过远,但一些原理性的东西亦是相通。 首先需要简单了解一下WinXP下DOS命令运行的环境,大部分熟悉这个系统的用户都会认为,所谓有DOS环境当然是Cmd.exe的命令行运行窗口,实则不然, Cmd.exe提供的是对系统中所有类型程序的支持,包括32位和16位;而真正的16位DOS命令运行窗口需要由Command.exe提供,在WinXP中这个文件位于系统盘 Windowssystem32目录下,图1是Cmd和Command运行窗口的比较。 不过无论是在Cmd窗口下执行16位DOS命令,还是直接打开Command窗口,实际上都是由一个名为NTVDM.exe的进程提供NT下的DOS虚拟机支持(NT Virtual DOS Machine,简称NTVDM)。因此可以说WinXP已完全摆脱了对16位DOS的依赖,此系统上所谓的DOS程序运行环境不过是一个完全虚拟的PC机!理解 这一点很重要,因为这预示着这个虚拟的“PC机”与你真实的硬件毫不相关,所有的硬件环境都是虚拟出来的,因此能够实现更好的兼容性。 虚拟机是怎样模仿真实DOS系统的启动过程呢?熟悉DOS的用户都会对Config.sys和Autoexec.bat这两个文件有难言的欣喜与痛苦——它们对系统的配置实在太 为重要,在DOS启动时,首先会按Config.sys配置驱动,然后再执行Autoexec.bat中的命令。在NTVDM中还能不能找到它们的身影?既然说是“真实虚拟”当然应当 是有的:它们默认位于Windowssystem32下,只不过名字已稍作改动,分别为Config.nt和Autoexec.nt。你可以用记事本打开这两个文件进行编辑,不过在编辑之 前最好进行备份,以防不测。 理解了这些之后,我们就可以开始尝试解决实际问题了。 1.内存问题的解决 sosoul唯一的空间(博客) 页码,1/8新系统下老游戏重玩全攻略_sosoul唯一的空间(博客)_百度空间 2010-11-17http://hi.baidu.com/sosoul/blog/item/ef2dff36993754370b55a9bc.html Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 大部分老游戏不能正常运行的原因都是由于内存“不够”所导致,没有从DOS时代走过来的用户肯定会对“不够”二字极尽怀疑,事实上正是不够。DOS有一套独 有的内存使用方案,这个方案实际上较复杂,但对问题的解决至关重要,不过我们这里不必了解得一清二楚,因此用简单的图文说明如下(如果觉得生涩,可以先 跳过这一部分,看到后面的例子不明白时再回过头来看): 如图2所示,如果不加载特殊的内存管理工具,DOS最多只能识别1MB的内存,而这1MB,有384kB将被保留给诸如系统、硬盘控制器、显存等使用,称为上位 内存(Upper Memory Block,简称UMB),剩下的640kB称作常规内存(Conventional Memory),这640kB可不是全部空余的,系统启动后就会被占用一部分,这 样一般程序只能利用常规内存的剩余(Free)部分了,理解这一点非常重要。 然而虚拟机所提供的的内存容量绝对超过1MB,这部分被称作扩展内存,由于在使用上必须服从扩展内存 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 (eXtend Memory Standard),而被简称为 XMS,要使用XMS就必须在Config.sys(现在是Config.nt)中加载Himem.sys驱动程序。当然扩展内存最底层,靠近刚才所说的那1MB的地方,有近64kB的容量, DOS不使用XMS标准即可访问,这一内存区域被称为高端内存区(High Memory Area),DOS经常会将自己的一部分驻留在此区域(MS-DOS resident in High Memory Area),以将常规内存尽量空出一些给应用程序使用。 最后一个扩充内存EMS(为Expanded Memory Standard的缩写)的概念非常重要但又比较难理解,简单来讲它是CPU的欺骗者:CPU“看起来”它是在UMB中 (在1MB内,可自由使用),而实际上它在XMS中,是XMS的一部分或全部,这样程序就能够有效地使用1MB以外的扩展内存了。不过要使CPU能识别扩充内存, 需要在Autoexec.bat(现在是Autoexec.nt)中装载扩充内存管理器EMM(Expanded Memory Manager),在DOS下一般是用EMM386.exe。这里需要说明,由于 EMS占用了XMS的空间,所以XMS的可用(Available)部分会减少。旧DOS是一个非常自由的系统,在上面运行的游戏可自由决定是否使用EMS,甚至还会决定要 多少EMS,否则就……嘿嘿,罢工。 从以上看来,与我们的话题密切相关的有两块内存:常规内存和扩充内存,这两个也恰巧是无数DOS在新系统下运行的“杀手”,好在我们现在已知已知彼,可 以开战了。以下实例均在WinXP Pro SP1版本下进行。 (1)扩充内存EMS的正确配置 实例1:《中关村启示录》 在游戏的安装目录hdosgameZGC下有一个Play.bat的批处理文件,双击即可执行,然而如此执行的结果却是黑色窗口一闪而过——不过这么出名的游戏怎能轻 易放过,一定得探个究竟才是。于是在Play.bat对应图标上点击右键,选择“编辑”,系统会调用记事本打开文件,看到其中有两条命令:runqbj和go,分别对应同 一目录下的Ruqbj.com和Go.bat,显然Go.bat还是一个批处理文件,用记事本打开后发现其中又有3条命令:univbe、game和univbeu,这3条对应两个可执行文 件:Univbe.exe和Game.exe。为了找到原因所在,笔者将逐条执行runqbj、univbe和game命令。 在“开始”→“运行”对话框中输入“command”并回车,在打开的Command窗口中改变目录到游戏安装目录,逐条输入3行命令,当执行完Univbe后,提示找不到 所支持的显卡(图3),暂时不去理会,执行完最后一条命令Game,在屏幕上看到一行字:EMS memory manager not found(找不到EMS内存管理器)。难道是 因为WinXP的NTVDM默认就不加载EMM吗? 事实正是如此。在前面提到的Config.nt文件里关于EMS的说明中,笔者发现这么一段话(图4):EMS的大小将由Pif文件决定,这个Pif文件要么是DOS程序的 快捷方式,要么默认为系统盘Windows目录下的_default.pif,如果在Pif文件的设置中EMS被设定为“0”,则EMM将不会加载。 大家对Pif文件及其图标一定都不会陌生,从Win3X时代起,为了能在视窗界面中给DOS程序提供自定义的内存配置,微软设计了一个“Pif”的概念,看起来这个 Pif只是原来程序的一个快捷方式,实际上可以在其中进行大量的自定义设置。由于游戏安装目录下找不到任何Pif文件,所以根据以上一段说明,双击时将会调用 _default.pif中的设置。于是我们找到_default.pif,并在其上点击右键选择弹出菜单中的“属性”(图5),在打开的对话框中点“内存”标签卡,发现里面的EMS赫然设 为“无”(图6)!《中关村启示录》运行需要EMS支持,这样设置当然会出错。而刚才运行的Command.com也符合这一原则,其属性对话框的内存页与图6完全相 同。 那么解决方法你一定已经想到了,由于WinXP无法对.bat文件配置内存,所以你可以:1.修改_default.pif属性中的内存配置;2.修改Command.com的内存配 置,并在其窗口中运行Play.bat。但修改_default.pif文件显然不可取,因为这个文件将会是所有DOS程序的默认Pif配置文件,有一些程序并不需要EMS,有的甚至 只要有EMS就不能运行。那我们试着把Command.com内存配置中的EMS和XMS两项均调为“自动”(图7),再次运行Command窗口,同上找到安装目录并输入 “play”命令,回车之后惊喜的看到了游戏的开始画面(图8)。 那么到底“自动”是什么概念呢?再次进入Command窗口并执行命令行“mem”,这个命令可查看当前的内存分配及使用情况(图9),原来“自动”默认为分配 4MB的EMS和19MB的XMS(其中只有15MB是可用的)。这里顺便说一下,显示的第1行就是前面所说的640kB常规内存,第3行非常重要,表示NTVDM启动后常规 内存剩下的空间,当然也就是最大可执行程序的大小了(Largest executable progaram size)。 不过每次从Command运行再找到Play.bat仍显麻烦,其实有更简便的方法,由于Play.bat文件中第一行runqbj(qbj?求伯君?呵呵)对应于Runqbj.exe(记住 不是.bat文件),于是在Runqbj.exe的文件图标上点右键并进入“属性”设置,将其中的内存页同图7设置(当然也可将EMS设置为4MB以上的数值),确定后会在当 前目录下生成Runqbj.pif文件,之后双击Play.bat即可顺利进入游戏。 巩固:《三国志Ⅳ》 在游戏安装目录San4下有两个运行文件:san4.com和san486.com,显然后一个是针对486机器设置的,运行它将拥有更高的游戏性能。然而点击后能顺利进 入KOEI开始画面,但之后就屏幕一闪,并显示出一行字:Not Enough Memory(缺乏足够的内存),此时你应当对“不够”二字有所领会了,由于是直接双击,故猜 想仍是EMS的问题。依上法设置san486.com的EMS为自动,即可顺利进行游戏(图10)。 反思及总结:这类问题的出现比较集中,因为直接双击可执行文件,所启动的NTVDM默认不支持EMS。对于.exe和.com文件,直接在属性中设置好EMS即可, 若是.bat文件,则需参考上述间接修改方法。 (2)常规内存的正确配置 实例2:《龙骑士4》(Dra4) 页码,2/8新系统下老游戏重玩全攻略_sosoul唯一的空间(博客)_百度空间 2010-11-17http://hi.baidu.com/sosoul/blog/item/ef2dff36993754370b55a9bc.html Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 这款游戏由ELF出品,以情节设计的巧妙赢得了不少玩家的欣赏,我们看能不能在WinXP系统下正常运行。首先必须根据游戏说明其安装在C盘根目录下,进入 安装目录cdra4,双击执行其中的Play.bat,出现的情况仍然是黑屏的一晃而过。于是按照实例1中的方法用记事本打开Play.bat,发现其中只有一行:dra4 start.mes H x C,这是一个带参数运行的命令,主程序是dra4,不过却在安装目录下发现了两个可执行dra4文件:dra4.com和dra4.exe,这里你需要知道.com文件 执行的优先度高于.exe。于是对dra4.com的属性进行修改,将EMS设为8192kB。可是和我们的意愿相反,双击Play.bat后还是黑色窗口一闪而过…… 于是回到刚才讨论的内存知识中来,除了EMS,还有一个内存杀手就是常规内存。还记得上面图9中的“最大可执行程序大小(Largest executable program size)”吗?有没有可能581 120字节的内存仍不够dra4.com使用呢?不妨试着从常规内存中清理出一些空间来。 这里我们需要先查看NTVDM默认启动时都加载了哪些程序,仍然在“运行”对话框中输入“command”打开DOS命令行窗口,在其中键入“mem c more”命令分页 查看当前内存的详细利用情况(图11,熟悉DOS的用户会问为什么不用“p”参数,因为这个参数在NTVDM中已不被支持,只好用“more”代替)。从图中可以看到常 规内存(Conventional Memory)中有几个大头:MSDOS、MOUSE、DOSX,尤其是DOSX,居然占尽了33.9kB的空间,要知道常规内存中可是寸土必争啊。 实际上DOSX是NTVDM为支持DPMI(Dos Protected Mode Interface,DOS内存保护模式接口)类型程序而执行的命令。保护模式可以让程序获得更多的内存 资源,但使用DPMI的游戏都必须附带一个DOS扩展程序,这个程序一般为DOS4GW v1.96,文件名为DOS4GW.exe,所以游戏是否需要DOSX支持,只需查看其安 装目录下是否有DOS4GW.exe文件即可。 显然在Dra4目录下并没有发现DOS4GW.exe,故判定这33.9kB的DOSX运行空间完全可以释放出来,那么通过什么方法呢?还记得刚才提到的Autoexec.nt和 Config.nt吧,笔者刚才说这是两个让人悲喜交加的初始化文件,那么看一下在这里它们能给我们带来什么样的喜悦。 由于这两个文件对整个NTVDM系统非常重要,所以修改时要小心,当然可以备份,不过最好的方法还是使用Win2000XP提供的自定义初始化文件功能。首先 把Autoexec.nt和config.nt从System32下拷贝到cdra4目录下,之后找到dra4.com文件,依上法进入属性对话框,在程序标签页中点击“高级”按钮(图12),在弹出 的Windows PIF窗口中重新指定专用初始化文件(图13),将二者的位置分别修改为“cdra4autoexec.nt”和“cdra4config.nt”并两次“确定”。 接下来我们要对这两个自定义的初始化文件进行修改。使用记事本打开Autoexec.bat,可以发现里面有一大堆以“REM”开头的文字行(表示这一行是注释,不 会被执行),值得注意的是有3行lh命令(图14),这是将其后程序尽量(不一定成功喔)加载到上位内存的命令,这里的mscdexnt.exe、redir和dosv分别提供了 NTVDM对光驱、网络(还可以玩经典游戏的网络版!)以及DPMI的支持。这个例子中由于三者都无需使用,因此在这3行前面分别加上“REM”以表示取消(实际上 去掉DOSV就足够了,这里干脆一不做,二不休)。编辑完成之后记得保存,然后回Dra4目录,双击Dra4.com,你会发现果然是一击奏效(图15),需要提醒的 是,在修改Autoexec.nt的同时仍需配置好Dra4.com的内存参数,特别是EMS。 反思及总结:这个例子中并不需要DPMI的支持,但若是碰上了既需要DPMI,同时又得不到常规内存的游戏怎么办?我们还是有办法的,只需修改Config.nt文 件,在其中加入一行“EMM = RAM”。这样配置后MOUSE和DOSX等程序会部分或全部从常规内存中移到上位内存中,从而获得大量的常规内存(图16,这是修改后 用“mem c more”命令进行查看的结果,可见DOSX已进入上位内存,而可用常规内存也达到了615.3kB之多)。最后需要说明,EMS和可用常规内存显然存在潜在 性的资源争夺,系统之所以不将EMS默认设为“自动”,原因在于设置EMS后,一些原来驻留在上位内存的一些程序就会被赶到常规内存中去,从而导致可用常规内 存减小,所以应根据DOS程序需要选择是否使用EMS。 2.声音及其他兼容问题的解决 从上述说明来看,内存问题在WinXP下只能算作配置方面的难题,而本段涉及的才真正是兼容问题。首先要说明这里的声卡并不是指你真实机器上的声卡,而 是NTVDM所模拟出的声卡。 从WinNT到Win2000,所虚拟的DOS版本都是5.0,而NTVDM提供的硬件为与DOS版本配套,实质上“配置”相当低,这样对DOS游戏的支持也很差,最关键的 是,它不支持DOS 6时代以来声卡的标准兼容模式——Sound Blaster。但WinXP在这方面则有所突破,其提供的NTVDM中直接内建有对Sound Blaster 2.0的支持, 对DOS程序的兼容性将会好很多,此外WinXP继承了Win2000中对鼠标、光驱、网卡和DOS4GW的默认驱动。 不过WinXP提供了声卡支持,是福亦是祸:虽然安装有声卡,但却只能提供2.0支持,大部分DOS程序都支持Sound Blaster 16,这样就可能存在潜在冲突。好 的情况下程序尽管检测不到声卡,仍会正常运行,但有的游戏则可能会直接崩溃。 此外,在WinXP中还有可能存在其他一些兼容问题,例如程序不能对软驱进行任意设置等,在下面这个例子中会有全面的反映。 实例3:《大富翁3》 这可是DOS时代最受MM喜爱的游戏,即使是今天玩起来还是兴味盎然。然而到该游戏的目录crich3下双击执行Play.bat,系统经过一番折腾甚至看到了开头的 SoftStar动画,最后仍给了一个静止的黑屏——没关系,我们已经习惯了。于是用记事本打开Play.bat看个究竟,发现里面有一行命令是“subst a .” ,熟悉DOS的用 户知道这条命令用于把当前目录映射成A盘,游戏将把A盘当作CD-ROM。这当然会导致兼容问题,因为虚拟机是不可以直接访问硬件的,WinXP控制下的软驱当然 也不能轻易映射。 于是想到可以将软驱先行屏蔽,好在WinXP可以不重启即停用软驱。在“我的电脑”上右键选择“属性”打开系统属性对话框,依次选择“硬件”→“设备管理器”(图 17),在打开的设备管理器中展开“软盘驱动器”,右键单击菜单下的“软盘驱动器”并选择“停用”(图18,游戏结束后别忘了重复此过程并在这里选择“启用”)。确 定之后回到rich3目录,再次双击Play.bat,结果发现已经能进入开始画面(图19),但只要选定人物并开始游戏,整个NTDVM系统就会崩溃——是全线崩溃,结束 任务后连Command.com也无法运行,只有重启才能解决问题。 这让笔者迷惑了一阵,不过由于能够输出视频,则问题很有可能出在NTDVM虚拟出的声卡上。于是用记事本打开System32下的Autoexec.nt,文件的最后一部 分是对内建声卡的描述(图20),正如前面所言,这里说明WinXP的NTDVM只提供对Sound Blaster 2.0的支持。在文件的最后,说明可将此声卡屏蔽,于是按照说 明,在“SET BLASTER=A220 I5 D1 P330 T3”一行前加“REM”注释,同时去掉“SET BLASTER=A0”一行前的“REM”。再次双击Play.bat,果然顺利进入游戏画面(图 21)。 屏蔽声卡能够解决不少游戏无法正常运行的问题,不过到此为止,我们发现:还没有一款游戏能够正常发声,如此的重温,怎能不让记忆失色?虽然笔者也曾 经通过一定的设置,使几款经典的游戏如《阿猫阿狗》能够正常发声(很好的感觉),但绝大部分游戏并不完全支持Sound Blaster 2.0,例如在《天使帝国2》 中,即使人声是正常的,背景音乐却完全听不到。因此这里不再讲如何通过系统配置重现声音的方法,不过更为关键的原因是,我们可以利用一个软件,它不仅可 完全解决声卡的兼容性问题,最重要的是它解决了NTDVM系统的最大限制——几乎能使DOS程序的原音完全重现,这个软件就是VDMSound。 页码,3/8新系统下老游戏重玩全攻略_sosoul唯一的空间(博客)_百度空间 2010-11-17http://hi.baidu.com/sosoul/blog/item/ef2dff36993754370b55a9bc.html Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 VDMSound是一款符合GNU标准的免费软件,作者的自由开发精神令人敬佩,最新版本为2.0.4。软件为NTDVM所提供的声音平台包括MPU-401接口(可提供 高质量的MIDI音效)、Sound Blaster兼容接口(兼容SBPro 12、SB 1.52.016AWE 323264,可提供电子及FMAdLib音效),甚至还包括游戏控制接口(这样就能用 手柄和摇杆了)!VDMSound与你机器上的真实声卡没有关系,它甚至可将DOS程序发出的声音信息输入到磁盘文件中。下面具体来讲一下使用方法。 软件下载可参考:httpwww.onlinedown.netvdmsound.htm。同时建议你下载作者提供的补丁包: httpvdmsound.sourceforge.netfilesVDMSound.2.0.4.update1.zip。软件的安装过程比较简单,一路“Next”即可,以下为方便说明,假设将此软件安装到dvdmsound 目录下,安装完成后,将补丁包里的文件全部解压并拷贝到dvdmsound目录下,覆盖原文件即可。 具体使用方法就更简单了,仍以《大富翁3》为例,你只需在Play.bat上点击右键,选择菜单中的“Run With VDMS”即可(图22),初次使用时,软件会弹出一 个小Tips窗口(图23),笔者建议如果条件允许,可仔细阅读其中的每条提示(软件有一个小Bug,就是不会自动更换Tips,因此逐条阅读比较好),能让你学到 不少知识。接下来软件快速做了一下初始化工作,黑色DOS屏幕一过,你就能听到熟悉的音乐了! 实例4:《天使帝国Ⅱ》 有了VDMSound,我们当然要用它来导入执行游戏安装目录下的Play.bat了,不过没想到却在热闹的声音中看到了一幅美丽的提示图(图24),原来这款游戏 至少需要575kB的常规内存。按照上文对内存配置的说明,首先查看游戏安装目录下是否有DOS4GW.exe——没有找到,于是可判定其不会使用DOSX,但用了 VDMSound。还一样在Autoexec文件修改吗? 答案是肯定的,不过现在它和Config的位置已经都转移到dvdmsound目录下了,文件的扩展名也变成了“vdms”,不过作者想得很是周到,已经将这个扩展名注 册为用记事本默认打开,这样,上面我们讲的修改DOSV等功能仍可顺利实现,你可以打开Autoexec.vdms,在“lh %SystemRoot%system32dosx.exe”一行前加上 “REM”即可。不过,下面将提供一种方法,可以让这个过程更简单。 软件的作者为VDMSound提供了一个图形化设置插件:VDMSoundLanchPad,下载地址可参考: httpvdmsound.sourceforge.netfilesVDMSLaunchPad.v1.0.0.7.zip。下载完以后将此压缩包的所有文件解压到dvdmsound目录下,之后运行其中的install.bat,在注 册提示时点“确定”即可完成安装(图25)。下面就以《天使帝国Ⅱ》为例,说明如何使用图形化界面进行配置。 1 右键点击游戏目录下的Play.bat,选择右键菜单中带音乐标记的“Run With VDMS”(图26)。 2 在弹出的设置窗口中,由于要做特殊设置,所以选择“Setup a custom configuration(选择自定义设置)”,并点击“下一步”(图27)。 3 在这一步中选择“Create a new configuration from scratch(生成一份新的配置文件)”,当然如果不是初次使用,以前有游戏的设置和当前要设置的相同, 也可选择“Reuse an existing configuration”(图28)。 4这一步中点击“Advanced”进入高级设置(图29)。 5 这个很熟悉吧,其实作者就是把Windows设计的属性项目整合了(图30)。 6 进入“Compatibility” 标签页进行兼容性设置(图31),在这里可设置EMS和XMS,我们接受默认的4MB及16MB设置,同时下面还有基本的VESA支持 (Enable Basic VESA Support)选项(这在Win2000下特别有用,因为其不支持VESA窗口模式),此外还包括对光驱和网络的支持,当然也包括DPMI(DOSV), 你如果还有印象,就发现后3项正好对应本文前面所说的Autoexec.nt中的3条LH命令。因为《天使帝国Ⅱ》无需使用DOSX,可将DPMI项的勾选去除。 7 “Sound Blaster”用于配置Sound Blaster声卡,如这里的IRQ是7,有一些游戏默认会使用5——总之如果使用了VDMSound还是不能出声,可以在这儿作一些 变更(图32)。 8 还有更多的配置这里就不一一讲了,大家可自行摸索,点击“确定”即可返回图29的界面,选择“下一步”,最后一个对话框中可选定“Remember my settings”,以便下次将此次配置当作默认配置(图33)。点击“完成”,软件将引导进入游戏界面(图34),同时在游戏目录下生成一个Play.vlp图标,以后点击此 图标即可采用刚才的配置进入游戏。若想修改还可在其上点右键,进入属性对话框中的“VDMSound”标签,点击“Advanced”按钮即可。 实例5:《大航海时代2》 这个例子主要是想说明,如何配合VDMSound解决游戏运行过速的问题。这里选取的《大航海时代2》实在是令人怀念的经典,而且这款游戏的兼容性非常 好,在WinXP的默认设置下即能顺利运行。不过美中不足的是,在笔者CPU为赛扬1.8GHZ的机器上,只要一出海,速度就快得惊人,根本无法控制船的运行方向— —而且一晃之间数日已过。最后没有办法,只能采取“目标式”一步一步的航行,而大航海时代系列的乐趣有很大一部分就是在海上“逛荡”,如此步进实在是损失了 不少趣味。 要解决这个问题,需要使用专门用于降速的软件,这里笔者选择了同样由VDMSound作者写出的Speedset,参考下载网址为: httpvogons.zetafleet.comattachment.phps=&postid=4739。下载完成后,首先可将压缩包中的两个文件Speedset.dll和Speedset.exe解压到dvdmsound目录下。接 下来将配合VDMSoundLanchPad实现降速功能。 在《大航海时代2》安装目录下的Play.bat上点击右键,按上例方法进入到VDMSound配置高级(Advanced)界面。进入“Dos Enviroment”标签页,发现可在 Config和Autoexec中增添附加命令行,这里需要在Autoexec一栏中添加刚才的Speedset.exe命令,Speedset后面应当添加参数以改变速度,经多次测试,应将其后 的参数设为“+1”,具体添加的命令行为“lh dVDMSoundspeedset.exe +1”(图35,你可按自己的情况设定)。接下来选择“Performance”标签页,选定“Try to reduce CPU usage(尝试降低CPU利用率)”,并将其上的游标拖至最左边的“Low usage”,这个选项可使游戏运行更加平滑;同时一般的WinXP用户最好将下面的 “DMA Servicing”从515调节到更慢的频率,如510(图36)。 经过如此调节并“确定”后,顺利进入游戏(图37),发觉航海速度果然降了下来,而控制起来也更加平滑。最后要说明的是,在上述两个例子中,尽管使用 LanchPad以后,配置会变得很简单,但并不意味着只能通过图形界面使用VDMSound及Speedset,其实这两个命令都可在Command命令行窗口中直接调用。以笔 者机器安装路径为例,你只需在运行程序之前转到dvdmsound目录,分别键入“VDMSRun”和“Speedset”命令并回车,之后再运行Play.bat,一样可达到出声和降速 的目的。 页码,4/8新系统下老游戏重玩全攻略_sosoul唯一的空间(博客)_百度空间 2010-11-17http://hi.baidu.com/sosoul/blog/item/ef2dff36993754370b55a9bc.html (二)Win2000相对于WinXP的附加说明 在内存配置方面,Win2000和WinXP遵循完全相同的体系,所以无需再多讲。在NTVDM方面,Win2000与WinXP之间最大的不同在于对声卡与显卡标准的支 持。前面已经讲到,Win2000根本不提供任何声卡方面的支持,所以没有可能发声,当然也没有可能存在声卡方面的冲突,还是刚才那句话:是福亦是祸。好在有 VDMSound,基本上这方面已经与WinXP不存在差别。 相对而言,对显卡标准的支持则是Win2000的致命伤。DOS时代的显卡编程接口标准是VESA 1.22.0,许多DOS游戏都在编程中使用了些标准,WinXP对二者的 支持都相当好,无需顾虑。在Win2000中也提供一些对VESA标准的支持,但必须是在全屏幕下!例如本文中所提到的《三国志Ⅳ》的486版本以及《中关村启示 录》在Win2000下即使配置好了内存,也无法双击执行(图38,出错提示找不到VESA BIOS),原因就在于双击后程序是先从窗口模式开始运行的。当然你可以运 行Command.com(记得修改Command.com的属性使其支持EMS),之后按组合键Alt+Enter进行到全屏模式,再转到游戏安装目录执行相应命令,这样就能顺利 进入游戏(也可在这之前运行VDMSound安装目录下的VDMSRun以获取音效)。不过恼火的是,画面出来了,鼠标却出了问题:只能在不到12的上半屏活动,这 样当然无法正常游戏。 VDMSound的作者曾透露出开发VESA兼容接口的想法,但一直没有下文,笔者也一直没能找到合适的解决方法,好在WinXP迟早会是家庭Win2000用户的升级 选择,不过暂时还在Win2000下工作的用户只好忍受这种兼容性问题的痛苦了。 编者注:本文上实际上探讨了NT系统下DOS游戏的玩法,下一部分则有新的焦点:Win98下DOS游戏解决方案,Win32Win95游戏在WinXP200098下的重现, 以及终极解决方案Virtual PC的纵深介绍——内容精彩,可不要让它与你擦肩而过。 UID 5142 帖子 8179 精华 7 积分 5771 威望 8922 好评度 120 阅读权限 120 来自 華山 注册时间 2003-9-15 最后登录 2008-5-6 查看详细资料 引用 报告 软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载 回复 TOP 杨枫轩 上古传说 冷月宝刀 UID 5142 帖子 8179 精华 7 积分 5771 威望 8922 好评度 120 个人空间 发短消息 加为好友 当前离线 2# 大 中 小 发表于 2004-7-1 13:22 只看该作者 (三)Win98下DOS游戏重玩的解决方案 总结上文可知,DOS游戏最致命的瓶颈就是内存管理,其次是其对新硬件的兼容支持。不过对于Win98,解决问题的方案与上述NT系统不大相同,总的来说需 要你对DOS基础知识有相当的了解。 页码,5/8新系统下老游戏重玩全攻略_sosoul唯一的空间(博客)_百度空间 2010-11-17http://hi.baidu.com/sosoul/blog/item/ef2dff36993754370b55a9bc.html Administrator 线条 1.内存管理的解决方案 前面提到,由于DOS系统不同于Windows系统那样能够智能管理内存,所以其内存管理设置都需手动调试,在上面提到的内存问题解决实例中,你会发现,我 们一般在游戏提示内存不够时,通过修改Autoexec和Config的具体配置解决此问题。这个方法对于Win98系统同样适用,但却有一些实践上的不同。 大家都知道Win98问世时宣称是带有一个DOS的,微软把它叫作DOS 7.0。在Win98开始菜单中的“程序”组中,你会看到一个名为“MS-DOS方式”的快捷方式, 指向“c:\\windows\\command”,其实这只是个伪DOS罢了,不过它与WinXP/2000/NT中NTVDM系统下的Dos Command Prompt又有很大的不同。 旧版DOS(6.22及其以前版本)启动后都会加载Config.sys和Autoexec.bat中的管理程序,用于管理内存和配置系统。但从Win1.0到Win98,视窗系统的启动总 是在DOS的基础上进行,即先启动DOS,再启动Windows。Win32的用户都知道,Windows的启动是通过在DOS命令行下键入“Win”命令实现,要能执行这个 Win.com,Config和Autoexec中必须要加载内存管理器EMM386.exe和高端内存驱动Himem.sys等。然而发展到Win98之后,Win.com仍存在(但它默认会在启动时 自动执行),但已相当智能,无需在两个初始化文件中进行设置即可正常运行。因此你可以看到,C盘根目录下这两个文件是空的(Config.sys是系统文件,默认情 况下为隐藏,需要在“文件夹选项”进行设置:图1)。 但Win98系统的Config和Autoexec仍然重要,因为它们控制着“MS-DOS方式”的内存及系统配置,也就是说,当你在Windows中开启“MS-DOS方式”窗口或运行 Command.com命令,甚至双击DOS程序的图标,系统都会为这个运行于兼容模式下的DOS选择Config及Autoexec——而它们就位于C盘根目录之下。不过需要说明 的是,你若修改了这两个文件,必须重启系统后才能生效。以下将举例进行具体说明,举例时我们尽量采取与前文相同的游戏,以便大家对照 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 。 (1)扩充内存EMS的正确配置 实例6:《三国志Ⅳ》 与前文所说不同的是,如果没有作过调整,进入San486.com的属性你会发现,Win98下居然无法设置EMS内存,因为系统并没有自动加载内存管理工具(图 2),如果执行当然游戏会报“not enough memory”的。所以我们先要将扩充内存EMS的设置项加上。用记事本打开系统盘下Config.sys文件,在其中加上如下两行 命令(图3): DEVICE=C:\\WINDOWS\\HIMEM.SYS (这个语句非常重要,意思是加载高端内存管理,使DOS能使用高端内存。) DEVICE=C:\\WINDOWS\\EMM386.EXE ram (EMM386.exe用于管理扩充内存,常用参数为“ram”和“noems”,使用后者能比前者释放更多的常规内存,但很多DOS程序不支持“noems”参数,故使用面较 窄。) 之后保存好文件,重新启动机器后再打开San486.com的属性,扩充内存EMS的设置项回来了(图4),根据上文,将它设置为“自动”即可。这样扩充内存EMS 的问题就解决了,双击执行San486.com即可顺利进行游戏(图5)。 (2)常规内存的正确配置 实例7:《龙骑士4》(Dra4) 如前文所说,这款游戏对常规内存的要求非常高,差不多接近590kB了,同时这款游戏也需要有EMS支持。而通常装载了EMM386.exe,DOS启动后,剩余的常 规内存无法满足需要。还是尝试编辑Config.sys文件来释放更多的常规内存。 在编辑前,我们还是先在Win98的DOS兼容模式下键入命令“mem /c /p”查看内存的具体分配情况(图6)。在图中可以看到,常规内存剩余有577kB,系统其 他常驻程序都是加载在常规内存里的,而上位内存是空的,所以我们要将一些常驻程序尽量加载到上位内存中,从而使常规内存空出,于是将Config.sys文件作如 下修改(图7): DOS=HIGH,UMB DEVICE=C:\\WINDOWS\\HIMEM.SYS DEVICEHIGH=C:\\WINDOWS\\EMM386.EXE ram (“DEVICEHIGH”表示在上位内存中加载EMM386文件) DEVICEHIGH=C:\\WINDOWS\\IFSHLP.SYS 其实这里要做的事情,就是将图6中看到的常规内存出现的程序都尽量加载到高端内存和上位内存中。保存文件后重启,然后再键入命令“mem /c /q”查看(图 8),果然这时候常规内存已经有592kB了。这时候运行龙骑士4的Dra4.com,一样没有问题。 (3)超大常规内存的配置 不过不管如何配置Config.sys文件,由于上位内存有限,在Windows环境下又要加载EMM386.exe,你几乎没有办法使常规内存高于590kB,虽然这时候绝大部 分老DOS游戏都可以玩了,但也有部分“变态”游戏要求590甚至600kB以上内存,很多专业级游戏网站都建议放弃。其实问题依然可以解决。 一种方法就是从纯DOS模式启动,即在Win98运行前按F8并选择从命令行启动(图9),由于这时已经不是视窗环境,所以系统默认加载的常驻程序要少一 些,只要合理配置Config和Autoexec文件,常规内存就可达到600kB以上。 另外一种方法就是使用第三方内存管理驱动软件。这里介绍UMBPCI 3.41版(下载地址:http://www.uwe-sieber.de/files/umbpci_e.zip),整个文件只有 30kB,是很有用的上位内存(UMB)扩充驱动程序(注:可能有某些主板暂不被支持),在Config.sys中用Device命令可以直接加载,最多可提供高达160多kB的 UMB。假设将压缩文件解开为文件夹UMBPCI在C盘,然后在Config.sys文件中加入此行语句“DEVICE=C:\\UMBPCI\\UMBPCI.SYS”,注意需要把它放在Himem.sys文 件之后(图10)。这样系统启动时,就会调用Umbpci.sys,如果文件被正确调用,你应该可在启动时看到相关信息(图11)。这时机器启动后其常规内存已经通 页码,6/8新系统下老游戏重玩全攻略_sosoul唯一的空间(博客)_百度空间 2010-11-17http://hi.baidu.com/sosoul/blog/item/ef2dff36993754370b55a9bc.html Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 Administrator 线条 常能轻易达到或超过600kB(图12)。 不过这种情况适用于不需EMS扩充内存的DOS游戏,因为这时候EMM386是被默认屏蔽的。如果万一游戏既需要600kB以上的常规内存又需要EMS扩充内存, 那么我们就必须进行特殊设置同时加载UMBPCI和EMM386。 首先我们必须知道机器所使用上位内存的具体情况。这个可以利用UMBPCI所带的Umbchk.exe工具查看。方法是在机器启动时,按F8选取最后一项跳过Config 和Autoexec文件,进入DOS 7.0后,执行Umbchk.exe即可查看到机器上位内存的空闲情况(图13),将其记录下来。然后在Config.sys文件中,将加载UMBPCI的 语句修改为“DEVICE=C:\\UMBPCI\\UMBPCI.SYS /I=XXXX-YYYY”,这表示我们将“XXXX-YYYY”这一段上位内存地址交给UMBPCI来处理,但并不是重点,我们要解 决的是UMBPCI和EMS同时加载的问题。UMBPCI的作者建议将EMS加载在特定的某个64kB的内存段内,只要这一段是可用的,就最好强制指定它为EMS的加载区。 通常情况下这段地址是C800-D7FF,那么就需要如下编写Config.sys文件: DOS=HIGH,UMB DEVICE=C:\\WINDOWS\\HIMEM.SYS DEVICE=C:\\UMBPCI\\UMBPCI.SYS /I=D800-EFFF DEVICE=C:\\WINDOWS\\EMM386.EXE X=D800-EFFF X=B800-C7FF I=C800-D7FF I=B000-B7FF RAM M3 D=256 AUTO (注:无换行) 这样,我们就可以同时加载UMBPCI和EMS了。另外一种情况是,如果你的显卡有一个48kB的BIOS而无法使用C800-D7FF(例如NVIDIA GeForce),那么尝试 将参数作如下修改: DEVICE=C:\\UMBPCI\\UMBPCI.SYS /I=DC00-EFFF DEVICE=C:\\WINDOWS\\EMM386.EXE X=DC00-EFFF X=B800-C7FF I=CC00-DBFF I=B000-B7FF RAM M3 D=256 AUTO 当然,此时系统仍有可能无法正确启动,一般来说是因为无法加载EMM386的页面框架,那么我们可以在加载语句中加上“FRAME=NONE”参数: DEVICE=C:\\WINDOWS\\EMM386.EXE FRAME=NONE X=D800-EFFF X=B800-C7FF I=C800-D7FF I=B000-B7FF RAM D=256 AUTO。 通过这样的调整,Win98下的MS-DOS就可同时支持EMS和拥有超高的空闲常规内存(图14)。需要说明的是,也有一些DOS游戏程序不能在没有加载页面框 的情况下运行,此时就只好使用第一种方法。 2.软硬件兼容问题的解决 解决了内存问题后,并不意味着任何一款DOS游戏就可在Win98下运行无阻了,因为DOS游戏在新系统下运行不可避免地会出现兼容问题。简单总结,会发现 兼容问题仍可简单地分为硬件和软件两类,不过这里要弄清楚一点,在Win98下DOS程序都是直接面对各种真实的硬件,而决不是WinXP中统一的虚拟硬件,所以 就软件环境的兼容性来说,Win98要强于WinXP,但就硬件兼容性来说,结论则恰好相反。 (1)软件环境兼容问题的解决 大多数DOS游戏在解决内存问题之后,是可以直接运行在Win98的视窗环境下,然而有一部分DOS游戏会在运行时跳
本文档为【新系统下老游戏重玩全攻略】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_748033
暂无简介~
格式:pdf
大小:758KB
软件:PDF阅读器
页数:10
分类:互联网
上传时间:2010-11-17
浏览量:89