街机游戏模拟器 MAME 是一款怎样的软件?有哪些特色? 您所在的位置:网站首页 mame游戏列表修改工具 街机游戏模拟器 MAME 是一款怎样的软件?有哪些特色?

街机游戏模拟器 MAME 是一款怎样的软件?有哪些特色?

2022-06-11 21:38| 来源: 网络整理| 查看: 265

新浪博客图床完蛋了,所以图全裂了。相关图文可以去本人微博、博客、微信公众号等地查看。

MAME:街机模拟器史上最伟大的传奇,诞生20周年纪念专文_燕市游徒_新浪博客

https://weibo.com/yanshiyoutu?is_all=1 置顶微博即是

我在2017年写过一篇纪念MAME的文章,应该还是切合主题的吧。如有不妥,还请告知。

MAME:街机模拟器史上最伟大的传奇,诞生20周年纪念贺文。

[b][color=#FF0000]本文原载于本人微信公众号,写于2017年,以祝贺MAME诞生20周年。[/color][/b]

MAME,这个街机模拟器史上最伟大的传奇,即将迎来20周年生日。20年来,MAME不断更新,从一个默默无闻的小型多机种模拟器,变成了现在可以模拟3万多街机游戏的庞然巨物,且还在不断进化中。

根据mameinfo.dat文件提供的资料,MAME 0.01版的诞生日是1997年2月5日。

mameinfo中MAME 0.01最初版的发布日期:1997年2月5日

[img]http://s10.sinaimg.cn/mw690/0023Eps3zy7pia4KZIt49&690[/img]

那一天,一个默默无闻的小模拟器粉墨登场。它能够模拟5个古老的小街机游戏,包括小精灵(吃豆人)、顽皮鬼、小瓢虫、吃豆小jie和企鹅推冰。

MAME 0.01版所支持的5个古老的街机游戏:

[img]http://s14.sinaimg.cn/mw690/0023Eps3zy7pia5NkYJ8d&690[/img]

在当时来说,MAME所模拟的这几个小游戏并不十分出彩,如果不是老游戏爱好者,可能根本不会注意它。1997年底,伟大的街机模拟器Callus将会横空出世,它可以模拟多种Capcom公司CPS1基板上的火爆游戏,比如名将、圆桌骑士、龙王战士、街头霸王2与快打旋风等街机名作,一时风头无两,如日中天。

同样是在1997年,街机模拟器Neorage的前身:RAGE诞生了。发展到RAGE 0.9后,可以模拟21个街机游戏,其中不乏海底大战争和战火惊魂等一些IREM公司的大作。

和Callus和RAGE比起来,MAME显得十分弱小而且稚嫩,在当时,它不支持摩托罗拉MC68000 CPU的模拟,而RAGE和Callus都支持这一运用广泛的CPU,及其平台上运行的游戏。在对比之下,MAME支持的游戏非常古老和落后。然而,MAME的最大优点就是开放源码,这使得它可以被很多模拟器作者参考和创作,并移植到不同操作系统。潜移默化之中,街机模拟器的影响力天平不断向MAME倾斜。

在原作者失去创作热情后,Callus和Neorage都停止了更新。而MAME却越来越能吸引到有才能的作者加入到计划中去。经过坚持不断的更新、进步,MAME终于成为了街机模拟器的王道和正统,并成为街机模拟器事实上的业内标准。

从一开始的情况来看,MAME在当年的众多的街机模拟器中并不算太出众。

在1997年末、1998年初,举世公认的超强街机模拟器是Callus,Callus在1997年底即可运行很多capcom公司出品的著名的CPS1基板游戏,例如名将。在1997年末这个时间点,电脑平台上极度缺乏有力的动作格斗游戏和清版闯关游戏。这时突然可以使用模拟器在电脑上玩名将等CPS1基板的街机大作,绝对是令人下巴脱臼的震撼消息和超强体验。

[img]http://s4.sinaimg.cn/mw690/0023Eps3zy7piaeoEzV33&690[/img]

此外,当年能够模拟世嘉System16系列基板的街机模拟器System16和能够模拟Taito公司的街机系统的Raine,也曾显赫一时,是街机模拟器界主力的有力竞争者。

另外绝对不能忘记的是1998年开始掀起的Neogeo街机模拟狂潮。在当年,模拟器玩家们和街机、游戏主机玩家几乎同步时间玩到了拳皇98等Neogeo街机大作,当时的多街机模拟器Rage的更新版Neorage功不可没。

在不久之后,Neorage的更新版Neoragex横空出世,再次引领街机模拟器界。很难统计当年有多少人试玩了Neoragex后,被其方便简单的操作和高超的效能所震惊,把其它模拟器抛到脑后,束之高阁。

[img]http://s8.sinaimg.cn/mw690/0023Eps3zy7piagt1ht17&690[/img]

到了2001年,Cps2街机基板的破解掀起了另一股街机模拟器开发狂潮,在这次狂潮中诞生的FinalBurn、Winkawaks和Nebula等多机种街机模拟器也都是一时俊杰,对MAME构成了很大的压力。时至今日,还有很多要求不高的玩家习惯使用Winkawaks和Nebula星云玩模拟器游戏。

那么,MAME这个街机模拟器公认的霸主,为什么能从众多街机模拟器竞争者中脱颖而出、傲视同侪、独占鳌头乃至成为圈内标准呢?我认为主要有以下几大原因:

1、开放源码,方便移植。

2、立意深远,布局宏伟。

3、良好的项目管理和社区支持。

4、低调保守,厚积薄发。

5、发布较早,先声夺人。

6、技术高超,底力浑厚。

7、大势所趋,羊群效应。

8、精益求精,不断进步。

下面本人就尝试具体分析一下这8个方面的原因。

1、开放源码,方便移植。

MAME从一开始就是开放源码的Free Software。因为开源的关系,得道多助,无数优秀的程序员相继加入了MAME计划,为这个项目写代码的人越来越多,得到的代码供应量肯定会比封闭而不开源的模拟器多。举一个例子:1998年,有几个程序员宣布要编写一个模拟Data East公司的街机游戏的模拟器,但是后来这几个程序员将这个项目并入了MAME开发进程。Data East的街机游戏在后续MAME版本里得到了支持。随着时间推移,这样的例子越来越多,使得MAME支持的游戏像滚雪球般扩大。

又因为免费开放源码,使得MAME从一个平台向另一个平台移植特别简单。现在,MAME横跨Windows、MacOS、Linux和BSD平台,可以被运行在从X86到ARM到IBM zSeries等各种各样的CPU上,成为一个真正意义上的巨无霸游戏模拟器。

2、立意深远,布局宏伟。

MAME计划,几乎从一开始就不是为了让玩家游玩游戏而设立的。这是它和其他各大街机模拟器相比的一个很不同的特点。

1997年8月10日,MAME最初的老大,项目协调人Nicola Salmoria在MAME 0.27b开始,就给MAME设下了一个远大的目标:

[img]http://s13.sinaimg.cn/mw690/0023Eps3zy7piajivfe8c&690[/img]

“MAME的主要目的是成为被模拟的街机游戏的一种参考资料,这是为了教育的目的,以及为了保存许多历史上的街机游戏。当这些游戏运行的硬件停止工作,它们将从历史中消失。而MAME将使其避免被历史遗忘。当然,为了保存游戏,你必须能实际操作和游玩这些游戏,你可以把游玩街机游戏看做一个不错的边缘效果。”

不管这是否是为了规避版权法律纠纷才做出的一个冠冕堂皇的姿态,这仍然是一份掷地有声的声明。多年来,MAME坚守着Nicola Salmoria大神设立的目标,始终为了保存街机游戏,使其不被遗忘而存在。

今天,MAME体现了人类重要的数字传承,而且这些传承理所应当被保存留给未来世代。MAME力求精确体现原始系统,允许未经修改的软件运行在它们被发明的状态。MAME记载了超过三万个机械系统,可以运行的系统有一万以上。作为一个用途广泛的模拟器,MAME成为了废旧硬件修理人员的参考资料,和自制/非官方软件的测试平台,以及用于教育目的的工具。

相对于其他模拟器只是为了让人们免费玩街机游戏而被开发,MAME计划几乎从设立开始,立意非常就深远,布局就非常宏大。

3、良好的项目管理和社区支持。

MAME的项目管理系统,从一开始由老大Nicola Salmoria独力经营,到现在由五位开发者大佬团体牵头合作协同开发,经历了很多变迁。

一直以来,MAME就是一个松散的组织,由一些MAME DEVs(MAME开发人员)组成一个组织,向MAME提交代码,并交由项目协调人整理发布。

MAME的发布系统是极为严谨的。最近,MAME官网透漏了一些有关新版本发布的细节:

从MAME 0.179开始,在每个发布版本之前会有三天的冻结期。在每月最后一个星期日,MAME正式发布日来临之前三天,管理团队就开始巩固代码和准备发布新版本。在冻结期开始之后,只有重要的修复补丁可以被集成入预发布版。新版本的基本功能被在Windows, Linux和Mac等广泛的操作系统上测试。在冻结期开始之后到发布日,ROM和驱动一般便不再更新。只有一个例外情况,就是最近被增加到可以运行状态的系统,如果有任何错误修正,可以被集成入预发布版。冻结期给MAME测试员巩固目标的时间,使发布造成的问题可以被最小化。

在技术层面上,一旦冻结期开始,MAME管理者就将创建一个从主干代码分出来的分支代码,称为release0nnn。nnn的具体数值就是将要发布的MAME的版本号。修补代码将被推送和集成入该分支代码中,而不是主干代码。主干代码的开发正常进行。任何不属于该发布版本的代码,将被集成入以后将要发布的版本,在发布日当天,最终发布版代码被标记后,被重新集成入主干代码。然后分支代码被删除。发布代码被标记为mame0nnn这样的表格。从冻结期到发布期之间的这段时间,分支代码将被公布在MAME位于github网站的软件仓库中。在MAME新版本发布后,该分支代码包括的所有修改版本将被集成回主干代码。所以没有修补信息会丢失,而且关联到个人开发者的委托也会在MAME新版发布后继续保持有效。MAME管理者也和MAME测试员合作,在冻结期开始后,增加一个新版到以后被发布的代码版本。

显然,这种管理系统是极为严谨而有效的。

MAME从诞生之日不久,就拥有了庞大的粉丝团体和良好的社区支持。记得在本人于1998年在北京大学南门飞宇网吧以25元/小时的天价上网的时候,MAME的官方粉丝网站:MAMEWorld就已经开始运营了。MAMEWorld网站的开始运行时间已经很难考证,不过它确是一个不折不扣的MAME粉丝大本营。MAMEWorld为广大MAME改版作者提供空间,让他们可以发布新改版。为MAME周边文件作者提供空间,使他们可以保存、发布MAME周边文档。为MAME前端制作者提供空间,让他们可以发布新的MAME前端。只要和MAME沾边的重要网站,就可以被MAMEWorld收录或添加友情链接。MAMEWorld网站还负责发布MAME相关新闻、更新消息和发布投票等活动。

[img]http://s11.sinaimg.cn/mw690/0023Eps3zy7pialDYym1a&690[/img]

此外,必须提及MAME论坛社区。在这里,MAME的开发者和粉丝们可以进行开诚布公的对话,交流使用情况,也可以插科打诨、增进友谊。还有一个重要的网站,即是MAME Testers。顾名思义,这个网站是专门用来提交关于MAME的bug情况,便于MAME开发者汇总分析,留言交流,并指派单独的开发者去修复bug的地方。这两个网站或论坛,是了解MAME情况不可或缺的重要地点。

MAME论坛

[img]http://s1.sinaimg.cn/mw690/0023Eps3zy7pialvYNG10&690[/img]

MAME Testers

[img]http://s5.sinaimg.cn/mw690/0023Eps3zy7pials59y94&690[/img]

这些支持网站系统,极大方便了初学者的学习进程,和开发者的开发工作。也为MAME君临街机模拟器世界做好了铺垫。

4、低调保守,厚积薄发。

MAME作为一个街机模拟器,非常低调而保守,一直以来都是默默做事,从不张扬个性。它不像Neoragex或Callus,也不像Winkawaks或Nebula,从不追求让玩家心满意足的效果和功能。MAME的宗旨只有一个,那就是尽量百分之百的精确模拟街机游戏,并让它们流芳百世。

在此宗旨下,凡是有利于玩家游玩,但并非存在于原生街机游戏中的选项,MAME一般都不支持或支持的很少。比如,按键连发功能,是在最近才被支持的,以前的MAME版本均不支持。这是因为街机一般没有连发键功能。

MAME虽然支持了连发功能,但是把它藏在金手指功能中,导致很多玩家都没有找到:

[img]http://s13.sinaimg.cn/mw690/0023Eps3zy7piaqBCsAbc&690[/img]

比如,为了精确模拟街机游戏,MAME不支持很多模拟器采用的HAL 3D加速功能(硬件适配层3D加速功能),也即不使用强大的显卡硬件加速3D街机游戏的模拟,而只支持软件模拟模式。因为虽然软件模拟非常缓慢,但是精确度较高。所以MAME宁可不使用硬件设备模拟街机游戏,而坚持使用软件模拟。

MAME宁可让玩家玩游戏不顺畅,也坚决不支持3D硬件加速效果,所以它支持的一些游戏和Demul、Supermodel等模拟器的速度比起来相距甚远

[img]http://s9.sinaimg.cn/mw690/0023Eps3zy7piaqvnXq28&690[/img]

[img]http://s1.sinaimg.cn/mw690/0023Eps3zy7piaqxk9G00&690[/img]

MAME具有完备的金手指功能。但是在默认设置中,金手指功能是被关闭的,因为街机没有金手指码可用。

其他模拟器几乎都支持的宏定义功能、动态透明效果功能等功能,MAME一个都不支持。

Winkawaks的宏定义按键功能,是一个极为受到玩家欢迎的功能

[img]http://s8.sinaimg.cn/mw690/0023Eps3zy7piaqNoSX87&690[/img]

凡此种种的现象说明,MAME的处世之道极端保守而低调。作为一个玩家,自然希望能在玩游戏的时候多多享受到模拟器的便利效果,然而MAME的古板作风给很多玩家留下的不好的印象,他们觉得MAME难以使用、速度缓慢、缺乏功能以及兼容性弱,殊不知这正是MAME为了精确模拟街机游戏而坚持的底线。

5、发布较早,先声夺人。

MAME比很多著名的街机模拟器都要早发布,MAME 0.01出现在1997年2月5日,接着MAME的版本号就连续攀升,支持的游戏也越来越多。对比Callus、Rage或Raine,MAME是有先发优势的。早期,给MAME贡献代码的程序员只有老大Nicola Salmoria等寥寥数人,然而MAME的规模很快就像滚雪球般扩大,招揽的程序员不断增多,体量和支持的游戏也迅速攀升。到1997年10月20日发布的MAME 0.29,已经支持了258个游戏,110个驱动。这在当年是首屈一指的。可以说,MAME从一开始,支持的游戏数量就领先于其他模拟器了。

MAME 1997年支持的游戏数量一览表

[img]http://s13.sinaimg.cn/mw690/0023Eps3zy7piaxfy6U8c&690[/img]

6、技术高超,底力浑厚。

可能是因为开放源代码的关系,MAME的开发者中云集了全球精英程序员,这些高手通力协作,各展长才,把MAME打造成了一个强大的模拟器怪兽。

MAME在很多方面都领先于其他街机模拟器:

在架构方面的领先:

MAME的架构可以说是一改再改,而且支持的CPU和声卡硬件越来越多。就拿模拟器热门的使用普遍的MC68000 CPU来说,自从MAME 0.28初步支持MC68000 CPU,有关这个CPU的代码在MAME中几乎一直在更新,不断的修复bug,优化代码。截止到MAME 0.180,代码还在更新中。具体更新内容,我看不太懂,但是我深为这种精益求精的精神所感动。带来的效果就是,MAME的MC68000核心代码是全球最精确的68000 CPU代码,随着时间的推移,bug越来越少,已经非常接近于实机效果。

而这个CPU只是MAME所支持CPU的冰山一角。你可以想象MAME的技术力是何等浑厚。

在功能方面的领先:

虽然如前述,MAME缺乏一些很有人气的功能,比如宏定义按键、3D硬件加速等,但是这只是MAME不愿意去做,非不能而实不为也。在其他方面,MAME在功能上要全面凌驾于其他街机模拟器。

举个例子,MAME中包含了一个强大的debug调试系统,可以为程序员测试游戏和模拟器的运行提供方便。因为这个系统太强大了,功能完备,使用方便,所以几乎所有的hacker都在用这个调试系统来hack游戏。

强大的debug调试系统,hacker们对其再熟悉不过了:

[img]http://s16.sinaimg.cn/mw690/0023Eps3zy7piax3qsnff&690[/img]

再比如MAME的一个小功能:cheat系统,经过无数次改进以后,已经成为一个极为强大的cheat引擎,可以实现现存的几乎所有类型的cheat金手指码搜索、制作和运行功能。其强大的功能是其他的模拟器拍马也追不上的。

MAME cheat系统支持的一条金手指码:真侍魂的无限体力金手指码,这个金手指码用到了动态地址追踪技术,在其他模拟器上很难实现:

[img]http://s11.sinaimg.cn/mw690/0023Eps3zy7piaxruRk5a&690[/img]

又比如MAME还有很多乱七八糟的各种用的上或用不上的功能,几乎都是用命令行来实现的,在它的readme中均有记载,大家可以去发掘。比如MAME可以指定运行多少帧的游戏画面来测试电脑性能;MAME可以将显示信号低解输出到CRT低解显示器;MAME还包含了一个图形增强系统,可以把低分辨率游戏画面模拟成与低解显示器类似的画面。

HLSL模拟低解显示器的美丽画面:

[img]http://s16.sinaimg.cn/mw690/0023Eps3zy7piaxjTrhaf&690[/img]

[img]http://s14.sinaimg.cn/mw690/0023Eps3zy7piaxi5Nb3d&690[/img]

[img]http://s6.sinaimg.cn/mw690/0023Eps3zy7piaxzUGxe5&690[/img]

7、大势所趋,羊群效应。

随着MAME的不断开发和进步,大趋势就是MAME已经是街机模拟器的现行行业标准。现在还在活跃的街机模拟器,如果不从rom信息、游戏名称和游戏驱动等各方面和MAME看齐,那无疑是自寻死路,因为没有人会去用不和MAME同步更新的模拟器了。

比如著名的FBA和Raine模拟器,现在它们每次更新,都必须和最新版MAME同步更新驱动和游戏信息。可以看出,MAME已经成为街机模拟器界的标准。

简单轻量,与MAME相似的FBA模拟器:

[img]http://s4.sinaimg.cn/mw690/0023Eps3zy7piaIotDJd3&690[/img]

老牌模拟器Raine也不得不紧跟MAME的步伐更新:

[img]http://s3.sinaimg.cn/mw690/0023Eps3zy7piaIjFSib2&690[/img]

[img]http://s5.sinaimg.cn/mw690/0023Eps3zy7piaIAhBWd4&690[/img]

[img]http://s8.sinaimg.cn/mw690/0023Eps3zy7piaIi5aD97&690[/img]

随着MAME支持的游戏越来越多,即便是无法在MAME中运行的游戏,也需要通过MAME的认证而成为模拟器界行业标准。比如尽管MAME所支持的CHD游戏很少有可以运行的,可在Demul模拟器中,虽然它可以游玩的CHD游戏比MAME更多,但也都可与MAME CHD游戏相互替换。

可以模拟相当多3D街机游戏的Demul模拟器:

[img]http://s16.sinaimg.cn/mw690/0023Eps3zy7piaItSyjbf&690[/img]

[img]http://s10.sinaimg.cn/mw690/0023Eps3zy7piaIdaPvb9&690[/img]

[img]http://s9.sinaimg.cn/mw690/0023Eps3zy7piaI9d3i38&690[/img]

随着MAME的发展和完善,MAME的用户越来越多,所以其他模拟器不得不向MAME看齐——于是有了所谓的羊群效应。今天,所有的街机模拟器实际上都在跟随MAME的脚步,如果不跟随,就显得与标准格格不入,突兀非常了。

8、精益求精,不断进步。

可以说,MAME的程序员是一群技术狂人。他们为了更加精确的模拟一个游戏,可以不厌其烦的修改rom名称、游戏名称和游戏驱动等内容,以达到更加精确模拟的目的。

而组织者老大们也没有闲着,他们考虑的方向不仅是添加游戏而已,还要对MAME的整体架构做出一步步的修订、优化代码以及降低内存需求。。。从各种看得见和看不见的地方,着手改进MAME,使得MAME变得越来越好。尽管玩家玩起游戏,丝毫感觉不到有何改变,但是MAME的底层架构在随着版本号潜移默化的变革着。

一切的变化都被记载在MAME每次更新的更新说明文件whatsnew.txt中,感兴趣的读者可以看看,每个版本更新,都会有一串长长的更新列表履历,详细到难以全部阅读的程度。

每次的whatsnew.txt都长的令人疯狂:

[img]http://s2.sinaimg.cn/mw690/0023Eps3zy7piaOWww151&690[/img]

本人深为这种模拟器的精益求精的精神和永不停歇的努力所感动。希望MAME可以永葆这样的疯狂和活力。

至此,MAME称霸街机模拟器界的八大理由解释完毕,如果读者们因本文对MAME这个街机模拟器的巨无霸有了一些新的认识,我的辛苦就没有白费。

20周岁生日快乐,MAME!

MAME 0.01发布日:1997年2月5日

MAME 10周年的时候的贺图,转眼间时间又过去了10年:

[img]http://s1.sinaimg.cn/mw690/0023Eps3zy7piaRw1JC20&690[/img]

虽然今天已经是2月6日了,但是由于时区的关系,在美国、欧洲,现在才进入2月5日,所以MAME 20年周年的庆祝活动刚刚开始。

美国时间2月5日,MAME官网贴出了一则新闻,列出了所有参与贡献代码的人员名单,这份名单长的有点可怕,有超过1600名个人/组织的贡献者上榜,其中,至少有一个是来自中国,那就是擅长于模拟IGS PGM游戏的XingXing。

是他们让MAME从一个只有5个小街机游戏的多街机机种模拟器,成长为已模拟了3万多个街机游戏,且还在不断增加中的庞然巨物,这1600多名功臣居功至伟。要知道,MAME 10周年的时候,这份名单才只有500人左右,时间又过去了10年,贡献者的数量增加了3倍之多!

让我们记住MAME的创始人,名副其实的老大和项目协调人:Nicola Salmoria,是他创立并发展了最初的MAME模拟器。Nicola Salmoria后来功成身退,将MAME托付与后辈。

之后接手MAME的项目协调人老大按顺序是Mirko Buffoni、David “Haze” Haywood、Aaron Giles、Angelo “Kale” Salese、Miodrag “Micko” Milanovic这几位。在2016年5月,MAME计划的项目协调人由单独的一个老大扩展为一个5位协同开发人员的团体,他们是:

MAME visionary Miodrag “micko” Milanovic

Technical lead Olivier “Sarayan” Galibert

Very senior developer R.Belmont

Development and release manager Vas “cuavas” Crabb

Project facilitator Greg “Stiletto” Ember

目前是这5位大神在领导现在的MAME开发工作。

下面的图是MAME随着版本更新,所支持的游戏的数量对比,可见MAME支持的游戏一直在不断增涨。

这张图是老版,只统计到MAME 0.112。

[img]http://s12.sinaimg.cn/mw690/0023Eps3zy7piaRjURJ5b&690[/img]

这张图是最新版,里面还加入了MESS游戏的统计,因此支持游戏的数量爆发性增涨。

[img]http://s5.sinaimg.cn/mw690/0023Eps3zy7piaRm1Qo14&690[/img]

最后,以一张图来结束此文:GAME NOT OVER。传奇,仍在继续。。。

[img]http://s3.sinaimg.cn/mw690/0023Eps3zy7piaRBLO2c2&690[/img]



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有