quake源码
㈠ 扩展名大解释
ico图标文件
mdb offices数据库文件
㈡ 我下载了街机游戏的文件.但不知道用什么模拟器来运行还有怎么运行谁告诉下
模拟器
http://www.emu618.com/tools/arcade.htm 要用讯雷下才快
MAME是Multiple Arcade Machine Emulator,也就是"多类型街机模拟器"的简称,是一个DOS环境下的应用程序,由MAME小组开发。这是一个仍在不断更新、完善的模拟器,也是一个模拟街机游戏数量最多的模拟器——到目前最新的.37 beta10 版本(2K1001)已超过2000个街机游戏,许多现在市面上已经绝迹的老游戏,已经和正准备在MAME上恢复青春。MAME走的是"多机种制霸"的路线,大肆入侵原来由Callus、NeoRage、Rage、Raine、M72、Shark等等贫机种模拟器所盘踞的领域,目前,已经模拟了以Z80族、6502族、6800族等8位CPU和以68K族等16/32位CPU为主处理器的多种街机基板,其中包括了大名鼎鼎的Capcom System 1和SNK MVS(Neo Geo)这样的王牌16位基板,使得MAME成了Callus和NeoRage之外的又一顶尖选择。自96年诞生以来,MAME在以Nicola Salmoria为主程序员的制作小组以及许多协力人员的共同努力之下,在各方面持续吸收先进技术,不断进行版本更新,支持新的硬件,增加被模拟游戏的数量,为MAME成为模拟器王者奠定了坚实的基础。
MAME主要是用C语言进行编程的,使用Allegro工具开发包。它还是模拟器界少有的完全开放源代码的模拟器之一,任何人想对MAME进行修改的话,只要同意把自己所用的代码公开,并遵循他们制定的规则(主要是:不得用于商业牟利等等),MAME小组就允许他对MAME加以改进并自由发行。基于这种特性,其他的程序员便可以自由的利用其源代码为蓝本编写出各种增强版本的MAME,使它成为拥有最多变种的模拟器,比较着名的有:对应各种流行OS的如MacMAME、linuxMAME、OS2MAME、RISCMAME、BeOSMAME、WindowsCEMAME(为各种PocketPC所用)等,即便在PC平台上,也有专为AMD、 PII、486以及P54C等各种CPU进行优化的版本,以及C语言、汇编语言两个不同编译核心的版本;有专门模拟NeoGeo的KBMAME(For IBM)、NeoMAME(For Mac),以及一些局部增强版的MAME,如提供按键连发功能的EmuPlus、图像输出功能增强的VsyncMAME、AdvanceMAME等;还有一个利用其源码编写的跨越家用机、早期8-16位电脑平台的多用模拟器MESS(反正核心都是68K、Z80、6502之类CPU的模拟);值得一提的是一个用在柯达DC220/260/265/290数码相机上的版本MAMED,虽然我没有用过这个相机版,详细的情况还不是太了解,但是鉴于现在的FlashMemory卡容量越来越大,我想这个版本在游戏的存储上应该没有什么问题(当然暂不包括NeoGeo类的超大游戏),如果再能增添手柄之类方便于控制的外设,或许相机版MAME能够成为目前任何一款游戏掌机的劲敌——只是价格障碍实在太大;MAME team还发行一个名为MAME32的Windows版本,具备标准的GUI界面,大大方便了众多初级玩家,同样的,它也拥有支持TCP/IP协议的NETMAME32、非官方版本UOMAME32、多国语言提示的MAMELang、Neogeo专用增强版本NMAME32等多个变种。我现在介绍的就是新发行的官方版本MAME和MAME32,至于其他的衍生版,相信大家看完本文之后,一定会触类旁通的。
一、 系统需求:
自然是越高级越好了,不过至少都要P166MMX/32M/Vesa2.0显卡,这个级别的机器可以让你的模拟器完美的运行所有8bit主CPU的街机游戏,但是对于以68K这样的16bitCPU为主处理器的基板的模拟就差一点了,显示帧速率在25-50fps左右,Neogeo类的大容量的游戏速度还更慢一些。虽然这样的帧速率较街机标准60fps还有一定差距,但是马马虎虎也可以接受了。以目前的状况来说,一台300Mhz+以上的100兆外频CPU+64M内存就基本可以满帧跑MAME所有的游戏了,如果你想在街机显示器上使用MAME,那么最好选用自带VBE3.0的显卡,SDD是没有用的。此外,因为内存管理的原因,在纯DOS下工作时,MAME需要调用一个保护模式下的管理软件cwsdpmi.exe共同与之工作,我们必须将这个程序放在path指定的路径之内。
二、 MAME的获得与安装:
作为一个完全免费的模拟器, MAME的各个版本基本上都是在网上以Zip文件形式发行的,我们可以去到其官方站点下载回来使用。当然了,对于这样一个着名的模拟器,国内外许多大大小小的模拟器站点也都会提供相关下载,比如Emuhq、Classicgaming、Arcade@Home等,过去国内的模拟器站点一般只提供指向国外服务器的下载链接,现在也都提供本地下载了。在一阵风的bleem!、impact等等的热潮过后,MAME这个持续更新的老牌模拟器正逐渐为本土的玩家所重视,国内许多的站点已经同步提供新版本的MAME本地下载了。一些光盘杂志也会附带有MAME,但时效性不强。
获得MAME的Zip文件后,用Winzip之类程序将其解压至你所指定的目录,安装就算完成了,如果你使用DOS版的PKzip来解压,请记得加上 -d 参数以确保解压后的目录结构的准确性。MAME主目录下有以下几个目录,用于存放相关数据:
<HI>存放游戏最高分存档;
<SNAP>存放游戏抓图,旧版本的抓图目录名为<PCX>,而MAME32的相同功能目录过去名为<IMAGES>,自.37b5起改为与DOS版相同的<SNAP>了;
<INP>存放游戏纪录;
<CFG>存放对应每一个已经运行过的游戏的配置文件;
<STA>存放游戏状态数据;
<MEMCARD>NeoGeo游戏专用的虚拟记忆卡;
<ROMS>顾名思义,存放各种ROM的缺省目录;
<SAMPLES>存放游戏声音采样数据的目录。
<NVRAM>存放有关基板参数设定的目录,作用和基板上用于存放调试参数的SRAM是一样的。
<FLYERS>MAME32专用,存放游戏海报图像文件的目录。
<CABINETS>MAME32专用,存放街机箱体照片图像文件的目录。
<ICONS>MAME32专用,存放游戏小图标的目录。
三、 ROM镜像文件:
MAME只是一个模拟器程序,如果要玩被模拟的街机游戏,还需要这个游戏的ROM镜像文件。通常,街机上的游戏文件都是放在诸如mask ROM(掩膜只读存储器)、EPROM/EEPROM(可擦写存储器)等半导体存储器集成电路芯片当中并固定在基板上的——这种高速但昂贵的存储方式至今未有太大改变——要把这些ROM芯片直接用于PC上当然不是很方便,于是便有人以专门的读写器将街机基板上每一颗ROM芯片内的内容全部拷贝出来,形成一一对应的电脑文件,这就是模拟器可用的ROM镜像文件的由来,而进行这项工作的人就是受到我们广大模拟器爱好者所尊敬的Dumper了;现在在互联网上传播的ROM镜像一般都是经过压缩打包的Zip格式,但我们在使用的时候不必将其解开——和其他模拟器一样,MAME很早(从V.31开始吧)就支持Zip文件的直接内存展开操作了。这样就大大节省了我们的存储空间。为方便管理,我们最好把这些ROM文件放入专门的目录。
平常我们在玩MAME的时候,可能会遇上这样的问题:旧版本MAME用得好好的ROM文件,新版本的MAME却给出"xxxx文件校验错误、xxx文件未找到"这样的提示并拒绝执行,或者勉强执行后,部分功能却失效了之。这是怎么回事呢?原来,除去ROM文件真的不存在、ROM路径指向错误(下文祥述)之外,ROM的版本问题就是造成这种现象的主要原因。有的游戏ROM在拷贝的时候,由于mper自身的技术水平或所用读写器的限制,造成了部分数据丢失、错误或无法完全读出,导致ROM镜像残缺。之后又有人重新制作,或修正,或补充,把过去错误的ROM版本补完。新版的模拟器当然要支持矫正了的ROM,所以旧的ROM就不能用了,解决的办法就是更新你的ROM镜像——当然了,使用旧版本的MAME也可以。下载站点我个人推荐Emuviews,这个站点的ROM分门别类摆放,非常齐全,而且几乎都是更新版的,并随着模拟器的更新不断补充新的ROM,还有最重要的一个优点就是:下栽速度极快。另外还有一个我强烈推荐的MAME ROM专门站:www.mame.dk,该站内建ROM搜索引擎,这个搜索引擎可比emuviews的强多了,ROM数量可以说是最齐全的,速度也不错,另外,该站对每一个ROM的描述也是非常的完备(现在,Emuviews也提供了类似mame.dk那样的ROM下载、评价页面了)。此外,网上还有其他专门的补完ROM站,读者可在文末的MAME资源中查到。
顺便提一句:MAME使用的各个ROM文件都是各个游戏公司的呕心沥血之作,版权也是属于各自的制作公司的,如果你没有对应的街机基板,拥有这些ROM是非法行为,这个原则大家一定要清楚。
四、 MAME主要配置参数:
既然是DOS下的应用程序,MAME不可避免的就需要用命令行的方式来启动各种游戏和激活各项参数,呵呵,又回到了“遥远”的DOS时代了……OK,言归正传,MAME的运行命令为:mame [游戏ROM名] [参数]
[游戏ROM名]这一项要求填入MAME规定的游戏名称,实际上就是ROM的Zip文件名。MAME对游戏名的正确输入要求较高,所以最好不要对下载的ROM文件进行改名操作。现在的MAME包含了一个ROM名比较程序来处理ROM名问题:当你输入的游戏名不正确时,ROMCMP.EXE会在MAME的游戏名库中找到一个最接近你所输入文字的游戏名并执行之。对于第一次运行的ROM,MAME会出现一个版权提示,而那些游戏模拟程度上有些问题的ROM,则每一次运行都会提示该游戏部分功能不齐全,我们看完这些提示后,按照其要求顺序按"O""K"(或者按方向键“左”、“右”亦可)两个健就能继续游戏了。和NeoRage一样,如果需要运行NeoGeo的游戏的话,还必须拥有一个名为neogeo.zip的BIOS压缩档,其中包含neo-geo.rom、ng-sfix.rom、ng-sm1.rom、ng-lo.rom等几个文件,这个压缩档可以在我的主页上找到。我们最好把这个zip包放在MAME的<ROMS>子目录当中。
MAME的各项参数都放在名为mame.cfg的配置文件中,这是一个由MAME自动生成的文件,由于MAME的每一次更新都可能对这个配置文件的语句做出修改,所以建议各位玩家不要把旧版本MAME使用的mame.cfg沿用到新的版本,因为这样可能会导致MAME工作的不正常。另外,你也可以把参数加入命令行之内,虽然两者的作用和句法基本是一样的,但命令行参数的优先级别高于配置文件,也就是说,对同样的一个参数,MAME将执行命令行设定并忽略配置文件内的相同选项设定。下面就介绍一下MAME的几个主要的配置命令:
[directory]栏,本栏目定义路径,需要修改的只有一项:
rompath,缺省配置是MAME所在路径及其下的ROMS子目录,当你的ROM还存在于另外的目录时,可以采用追加的方式,例如:
rompath = .;ROMS;f:\download\emu\roms;f:\neogeo,追加的目录之间用分号隔开即可,这样MAME在执行时就会在指定的四个路径范围内搜寻ROM。
[config]栏,本栏是模拟器执行参数设定栏,主要参数解释如下:
tweak = no 关闭非标准VGA模式,此为缺省设定。MAME支持256x224、288x224、256x256、304x224、384x224之类的街机原始分辨率,这些都是与电脑标准VGA模式不同的模式,如果你的显示卡、显示器支持这些tweaked分辨率,可以将此选项设为yes,显示速度会比VESA模式快一些。
scanlines = yes 打开隔行显示模式;由于街机显示分辨率一般都比较低,打开这个类似于两行画面水平线之间插入一条黑线效果的选项,会让你觉得PC上显示的图像不是太粗糙到难以接受,同时也有一种街机显示器的感觉;基本上,这种隔行显示模式是每一个低分辨率游戏机(小于640x480)模拟器的缺省设定,其中包括了绝大部分2D街机模拟器、FC模拟器、SFC模拟器、MD模拟器、PCE模拟器等,不过某些模拟器的隔行显示图像的场频高达100Hz以上,比如Rage、NESticle(256x256模式),如果这个数值超过了你的显示器的场频允许范围,那么就不能实现隔行显示,而会变成高亮度的、看起来象是被压缩的画面,甚至花屏、黑屏。如果出现这种情况的话,为了确保你的显示器的安全,最好是把隔行显示模式关闭。
stretch = yes 打开像素延展选项,使得显示的画面尽可能的大,会降低游戏速度,除非你的机器配置过低,否则不要关闭之;
vesamode = vesa3 选择VESA画面优化模式,由vesa1、vesa2b、vesa2l、vesa3等4 项可选,该用哪一项取决于你的显卡自带的VBE版本,对于新的显示卡,比如Voodoo3、TNT2之类,可以选择vesa3,若你的显卡比较老(9750、765),则应该选择vesa2b/vesa2l,超老的8900、3105就只能选vesa1了,实在不行的话还得需要SDD来驱动。
resolution = auto由模拟器自动选择显示分辨率;我们可以把auto改为800x600或者1024x768来获得接近满屏的画面,不过由于大部分街机游戏显示分辨率本来就很低,拉大之后你可能会觉得画面更粗糙了;另外,更改成上述数字后,纵版游戏和分辨率在300x200以上的横版游戏的画面反而变小了。
depth = 16 选择16位显示颜色深度,某些游戏需要16位高彩色才能正确显示,比如NeoGeo类、Cave类等;有必要时可以把它降到8位色以提高游戏速度。
gamma = 1.0000000 设置伽马系数,数字越大画面越亮,可用热键控制。
frameskip = auto 自动跳帧调节,适用于大多数机器,在低配置的机器上,若你觉得游戏太慢,可以在游戏中按F9键来加大跳帧数以取得较满意的游戏速度。
注:所谓的跳帧(frame skip),就是减少单位时间内显示的帧画面,比如60fps(frames per second,意每秒钟显示连续的60帧静止画面)的画面只显示其中的一部分,也就是50fps、40fps甚至30fps的效果,这固然对提高显示速度有益,但同时也会造成角色动作不连贯、画面跳跃式进行的恶果,几乎每一种模拟器都有这个可调节的选项。
soundcard = 1 声卡选择,数字表示:0-无声,1-声霸卡及兼容,3-Pro Audio Spetrum, 4-UltraSound Max,5-UltraSound,6-Windows Sound System,7-Ensoniq Soundscape,一般选1或6就行了,除非你用的是表列中别的声卡。使用创新SB64PCI、SB128PCI 和 Ensoniq Soundscape PCI声卡的用户最好选 7。缺省值为-1,即在初始化程序时列出声卡类型供手动选择。如果遇到声卡实在无法通过MAME的辨认而又想玩游戏,只能选用0了。
ym3812opl = no 禁用SoundBlaster的OPL芯片来模拟YM3812 FM音源,虽然这两者硬件100%兼容,模拟执行速度也加快,但打开这个选项会使音量控制失效。
samplerate = 44100 声音采样频率选择,可选11025、22050、44100三项,单位hz,数字越大,声音还原越好,游戏速度也越慢,命令行简写为:sr。
samplebits = 16 声音采样深度,可选8、16位,效果同上一项,命令行简写为:sb。新版本的MAME去掉了这个选项,改为自动识别了。
stereo = yes 打开立体声选择,会降低游戏速度,本项自动对单声道游戏无效。
volume = 0 音量衰减控制,可选数字是负值,单位是分贝,例如"volume -3"意为游戏音量降低3分贝,可在游戏时用键"~"直接调节,祥见下文第五部分。
mouse = yes 启用鼠标,用于光枪游戏的准星控制及"怒"类游戏的转向控制。
ror/rol 屏幕右/左转90度显示,可使纵版游戏满屏显示
joystick = name 游戏控制器选择,缺省为:none 键盘控制,MAME支持的游戏控制器很多, name是它们的名字,分别为:
auto:自动检测,只能测出标准2键、Creative眼镜蛇、gamepad pro等少数种类的手柄,还是不要用这个选项的好;
standard:标准2键模拟式手柄 @1P
al:双标准2键模拟式手柄 @2P
4button:标准4键模拟式手柄 @1P
6button:标准6键模拟式手柄 @1P
8button:标准8键模拟式手柄 @1P
fspro:CH flightstick PRO飞行摇杆 @1P
wingex:Wingman Extreme 飞行摇杆 @1P
wingwarrior:Wingman Warrior 手柄 @1P
sidewinder:微软响尾蛇手柄 @4P
gamepadpro:Gravis gamepad pro手柄
grip:Gravis GrIP手柄
grip4:限定4轴向的Gravis GrIP手柄
/* 以下为并行打印口手柄,均易于自制,
sneslpt1:接在第一打印口的超级任天堂手柄 @4P
sneslpt2:接在第二打印口的超级任天堂手柄 @4P
sneslpt3:接在第三打印口的超级任天堂手柄 @4P
psxlpt1:接在第一打印口的SONY PS手柄 @4P
psxlpt2:接在第二打印口的SONY PS手柄 @4P
psxlpt3:接在第三打印口的SONY PS手柄 @4P
n64lpt1:接在第一打印口的任天堂64手柄 @2P
n64lpt2:接在第二打印口的任天堂64手柄 @2P
n64lpt3:接在第三打印口的任天堂64手柄 @2P
注:1、模拟式手柄初次使用或者出现方向混乱故障时可以在游戏中按Tab进入设定菜单调用Calibrate joystick功能进行校正,数码式手柄则不会存在这种问题。
2、@1P表示只能单打,@2P表示可以双打,@4P表示可以四打,未标注则为不祥。超任和PS的手柄理论上能达到5P的效果(我只试到了4P,未再继续,呵呵)。
3、不直接支持创新公司的Cobra手柄(工作于数码方式时)和并口土星手柄;MAME内建有对IF-SEGA的支持,这是一种专用的扩展卡,可以把世嘉土星手柄接到PC,过去处于起步时期的第一批3D图形卡就把它跟着PC版的VR战士、装甲飞龙等游戏软件一起捆绑销售,现在已经看不到了。
4、PS al shock手柄的两个模拟小摇杆亦可当作按键使用,左、右摇杆按下时分别被识别为L3和R3(用处不大)。
5、用于命令行时,语句可简化为 joy。
6、使用并口手柄对游戏速度降低影响较大。大体上各种手柄的CPU占用率由高到低依次为:PS、SFC、SS/MD、标准模拟式。
7、不支持异类手柄混用,但是可以手柄、键盘同时使用。
hotrod = no 键盘接口摇杆支持(就是在Emuviews主页上打广告那个双人摇杆)设定,因为我们用不上,所以选no。
cheat = no 作弊功能开关,可以改成yes以打开它,最好配合作弊数据使用。
debug = no 除错、调试模式开关,高级用户选用,这个功能只有在源程序中打开debug选项才有用。
monitor = standard 设定显示输出类型,对于PC用户选择standard,另外还可以选择以下设备:
ntsc:输出至NTSC电视监视器
pal:输出至PAL电视监视器
arcade:输出至街机监视器
均需要特殊方式转换信号及相关硬件支持,有兴趣可参看下文第九节。
至于其他的栏目和选项,只要保留其缺省设定即可。如果上面各项参数用于命令行,请在其之前加一个"-"号,同时可以把"="去掉,例如:
mame ddragon2 -joy psxlpt1 -soundcard 6 -resolution 800x600
由于MAME的使用显得繁琐了一些,也有不少方便对DOS比较陌生的玩家的MAME前端(front end)程序被开发出来,这些程序具备亲和性较高的GUI图形界面,配置菜单里基本上囊括了MAME的各个选项,一般玩家通过这些前端程序都能很方便的玩转MAME了。由于我使用过的前端程序并不多(只有ArcadeOS一个,还是因为其无可替代的特殊功能采用的),所以对他们也不是很熟悉,传说中arcade@home是比较好用的,大家可以去它的主页http://arcadeathome.efront.com下载?..∮肕AME32好了。
五、 MAME32主要配置参数:
MAME32是使用DirectX SDK的WIN32应用程序,在使用上较MAME方便许多,另外还增加了一些MAME所不曾有的功能,但是在同等配置的机器上,MAME32的运行速度会比MAME慢一些,这种差别在低配置的机器上比较明显,甚至会影响到游戏运行的流畅性。在软件环境设置方面,我们通常需要更改的部分只有:
1、ROM路径:进入options/directoies,点击Insert按键,在跳出的对话框中选中你的ROM目录,如有多个目录,重复Insert,选好目录后点OK退出到主界面,按F5键刷新一下,MAME就会在你所指定的所有ROM目录内进行自动搜索,并在主窗口左方目录树available子项中显示出可用的游戏了,双击该游戏名即可执行之,但若游戏名称前的小图标是一个红叉的话,说明该游戏无法正常模拟。如果在你的ROM目录当中增加入了新的ROM,你也需要刷新一下,否则不能运行你新加入的ROM文件;
2、使用手柄:进入options/default options/controllers菜单,复选Use joystick选项即可,MAME32支持所有兼容DirectInput界面的手柄。
3、画面设定:缺省配置下,MAME32使用的是和MAME同样的全屏隔行显示模式,若你想以窗口模式执行游戏,可以进入options/default options/display子菜单,将Full screen display选项禁止,再进入位于同层的Advanced菜单,禁止现存的scanlines选项,这样就能得到较好的窗口显示模式。在窗口模式下,由于使用到了Windows的相关优化效果,游戏画面显得比较柔和,不过游戏速度慢了一些……
4、优化设定:声音:options/default options/sound,sound system选MIDAS, Sample rate选44100,Sample bit选16,FM synthesis打开(视你的声卡效果而定)。图像:options/default options/display,colors选16bit(与游戏本身的原始画面色深有关),在全屏模式下工作时将Triple buffer打开。其他:options/default options/miscellaneous,打开Enable game cheats,并根据你的CPU特性决定是否将Disable MMX选项保留。
5、关于抓图:MAME支持的游戏太多了,但并不每一个游戏都值得玩的,你是不是在下载某一个游戏之前想知道该游戏的大致内容呢?又或者,你想知道某一仅知其形不知其名的老游戏是否被MAME模拟了呢?这好办,只要你找到MAME的游戏抓图,把它们全部压缩成一个名为snap.zip的文件,放入MAME32下的<snap>(MAME32.37b5起)子目录当中,然后执行MAME32,当你用鼠标单击某一个游戏时,相关的抓图就会显示在最右边的窗口中,这样你寻找游戏不就做到有的放矢了吗?MAME的抓图文件可以到我的主页去下载,EmuViews的ROM下载也配有抓图,点击每一个ROM前面的磁盘形图标就可以查看。
6、 游戏版本:许多游戏都有美版、日版、全球版以及2P版、4P版、6P版之分,而某些ROM是多版合一的Merged Romset,如本站提供的《黑龙》,因为ROM名可以是统一的,所以在DOS下看不出来,而MAME32有显示游戏的详细信息的功能,其中就包括了版本号,这样它可就帮了那些喜欢玩某一版本的游戏的玩家了。一般而言,除了文字显示上的差异外,同一游戏的日版比美版难度更大一些。
7、联网对战:MAME32的源程序已经内建了通过TCP/IP规则来连线对战的功能,但是可能因为这个功能比较简陋,尚不能满足MAME小组预期的要求,所以在官方版本中这个功能都未曾激活,但是有不少MAME32的非官方版本已经提供了这个功能。鉴于网络对战越来越受大家的欢迎,我就简单介绍一下如何使用:在支持TCP/IP协议的网络中找几台机器,其中一台作为服务器,首先运行windows系统自带的IPCONFIG.EXE程序,找出本机的IP地址,并告诉想要联机的朋友。接着运行MAME32,从File/Run network game...进入网络设定菜单,选中Server mode,改好你的Player's Network name(不改也行,就用缺省的“MAME玩家”好了),在Number of players项中决定联网的玩家数量,至于所有连线的玩家能否一起玩就要看所用的游戏了,然后点击OK,等待其他玩家加入吧。服务器设立好以后,在客户机端也运行与服务器相同版本的MAME32,同样通过File/Run network game...,但是这次需要选择Client mode,并在Network configration项中填入服务器的IP地址,点击OK按钮就可以连上服务器了,连入后在出现的对话窗口下方是一个聊天器,通过它可以跟连在线上的所有玩家通话。当所有玩家都已经正确连入后,就可以有服务器端来决定玩什么游戏了——客户端只能提建议,呵呵。能够联网运行的游戏都会显示在连通窗口的左方——不是所有的游戏都能用,比如KOF系列就不行。进入联机游戏后,玩家要注意控制方面的问题:MAME32在联机模式下,对于服务器端和客户端的控制设备ID未做修正(连通窗口中的Controls功能好像并无效果),如果各方都使用1P控制方式的话,那么都在控制1P的活动,所以必须有一方改用2P、3P、4P……控制方式才能协同作战,这一点比Callus95就差多了。在操作方法上,无论局域网还是互联网都是一样的,不过以我国目前的线路状况来看,通过互联网对战还不是很现实……
MAME32的配置设定是存在注册表当中的,当你的MAME32版本升级以后,第一次执行的时候程序会询问是否以新版本的配置参数覆盖原来的设定。和对mame.cfg的处理方法一样:出于对模拟器正常运行的考虑,建议大家还是回答“Yes”——尽管这样需要重新设定路径、控制设备、输入设备等等选项。
六、 MAME/MAME32热键操作:
3/4:1P/2P投币键;
1/2:1P/2P开始键,这样的设定已经成为了除Callus/Impact外所有街机模拟器的标准,如果是4打类游戏,则1P/2P/3P/4P的投币键改为5/6/7/8,按1/2/3/4或各人的开火键开始游戏——MAME自从.36RC1开始已经将这种4打类投币开始键位作为初始设定。
P:游戏暂停;
Shift+P:游戏暂停,同时显示下一帧;
F3:复位键;
F4:显示游戏所用调色板,再按一次恢复游戏;
F9:动态跳帧调节键,跳帧数在auto、0、1、2、3……11之间循环;
F10:游戏速度调节,偶尔用来玩一下"超速版"游戏也不错;
F11:F9、F10功能的状态显示开关,数据显示在画面右上角;
F12:抓图,游戏抓图以PNG格式储存在子目录当中;
~:控制台键(像Quakez一样,呵呵),呼出菜单后,↑、↓键选择功能,←、→键调节大小。可供调节的选项有:总音量,DAC数码音效音量、FM音源音量、画面Gamma和亮度等,也可以用手柄方向键来操作;
TAB:游戏配置键,在呼出的菜单中.
㈢ 树莓派 编译 platform选哪个
1、获取升级所需源码
1)下载地址:
官方网址:https://github.com/raspberrypi
上面列出了树莓派所有的开源软件:
firmware:树莓派的交叉编译好的二进制内核、模块、库、bootloader
linux:内核源码
tools:编译内核和其他源码所需的工具——交叉编译器等
我们只需要以上三个文件即可,下面的工程可以了解一下
documentation:树莓派离线帮助文档,教你如何使用、部署树莓派(树莓派官方使用教程)
userland:arm端用户空间的一些应用库的源码——vc视频硬浮点、EGL、mmal、openVG等
hats:Hardware Attached on Top,树莓派 B+型板子的扩展板资料
maynard:一个gtk写成的桌面环境
scratch:一个简易、可视化编程环境
noobs:一个树莓派镜像管理工具,他可以让你在一个树莓派上部署多个镜像
weston:一个应用程序
target_fs:树莓派最小文件系统,使用busybox制作
quake3:雷神之锤3有线开发源码firmwareb
2)下载方法:
a、网页直接下载:
点到所需要下载的工程,左上角选版本,右方有一个download ZIP按钮可直接下载(笔者下载完成后,在linux中解压提示出错,windows又非常慢切内核建议不要在windows环境解压,所以笔者不建议使用这种办法)
b、使用git下载
$ mkdir raspeberrypi_src
$ cd raspberrypi_src
$ git clone git://github.com/raspberrypi/firmware.git
$ git clone git://github.com/raspberrypi/linux.git
$ git clone git://github.com/raspberrypi/tools.git
会得到三个文件夹:
firmware linux tools
2、编译、提取内核及其模块
1)获得内核配置文件
在运行的树莓派中运行:
$ls /proc/
可看到一个叫config.gz的文件,他是当前的树莓派配置选项记录文件,我们将他拷出,放入我们的内核源码目录树下
$cp /proc/config /home/pi
我们这里使用前面交过的samba拷出并拷入内核源码目录下,不熟悉的人可参考前面文章
在linux内核源码下执行:
$zcat config.gz > .config
2)配置、编译内核
a、修改内核源码makefile ARCH类型和编译器路径
$vi Makefile +195
找到以上类似代码,改为如图所示
b、查看、修改配置选项
$make menuconfig
可出现以下界面
如果不做修改,直接选中exit即可(注意使用键盘操作)
c、编译内核镜像
$make
在arch/arm/boot目录下可以看到一个叫zImage的文件,就是我们新的内核
但是树莓派需要另外一种格式的镜像,需要进行处理一下,执行以下命令
$cd tools/mkimage
$./imagetool-uncompressed.py ../../linux/arch/arm/boot/zImage
即可在当前文件夹下看到一个叫:kernel.img的文件,就是我们需要的新内核了
d、提取moles
上一步其实不但编译出来了内核的源码,一些模块文件也编译出来了,这里我们提取一下
$cd raspberrypi_src
$mkdir moles
$cd linux
$ make moles_install INSTALL_MOD_PATH=../moles
即可在moles得到我们需要的模块文件
2、升级RPi的kernel、Firmware、lib
将SD卡拔下插在电脑上(可使用读卡器)
1)升级内核
将新编好的内核拷入SD卡,改名为:kernel_new.img
打开boot目录下
找到config.txt文件,加入:kernel=kernel_new.img这一行
2)升级boot
将firmware/boot/目录下 以下文件拷入SD卡boot目录:fbootcode.bin fixup.dat fixup_cd.dat start.elf
3)更新vc库及内核moles
将第3步d步中编译出来的moles/lib/moles拷入树莓派文件系统/lib下
㈣ Linux系统的所有源代码
Linux是一个开放的,自由的类Unix操作系统,它的源代码是公开的, 各个版本的Linux,包括从内核到许许多多的应用程序的源代码, 以及可执行文件都可以免费从互联网上下载。 你也可以通过光盘得到Linux系统,和一般的软件不同的是, 你可以合法的和你的朋友分享Linux光盘。很显然Linux光盘的价格不会很高, 第一,因为你可以免费从网上下载;第二,你可以和你的朋友合伙凑钱买一套Linux光盘, 再和你的朋友分享使用。 Linux和一般的软件不同,是可以和你的朋友分享的。 举个例子来说: 如果朋友家有张非常漂亮的窗子,但是这窗子是95牌的, 那么你仿制是违法的,如果这窗子是X牌的,或者说牌子是GPL, 那么你仿制就不违法。如果你不想违法,但又想要漂亮的窗子, 答案是选择自由软件。选择Linux。 Linux准确的说,是一个系统内核,它是最初在91年, 由芬兰的了不起的学生Linus Torvalds发起, 接着又有全世界的志愿者加入进来开发的。 现在有一些软件公司在做Linux的生意, 着名的有RedHat,SuSE以及Caldera等等, 这些公司发布自己的基于Linux内核的一整套的Linux系统: 这些整套的系统通常包括有:一个C语言及C++编译器,Perl脚本解释程序, 外壳Shell,图形用户界面X窗口系统,包括有X Server以及众多的应用程序等等。 这些整套的Linux系统按照习惯叫做Linux发布(distribution)。 目前使用最广泛的Linux发布是RedHat公司的RedHat Linux。 以前使用广泛的Slackware,现在也还有许多人在使用, 我自己的第一个Linux系统就是Slackware,现在我玩的是Debian, Debian和其他的Linux发布的不同之处在于:Debian是完全由志愿者开发的, 不像RedHat和SuSE,是由软件公司所支持的。 RedHat是使用最广泛的Linux发布,并且RedHat公司现在得到了Netscape, 以及Intel的支持,前景看好,根据一般的看法Redhat也是最容易上手的Linux发布。 SLackware和RedHat相比要稍微复杂一些,这主要是指软件的安装方面, 由于RedHat使用rpm打包系统,安装新软件简单到只要一行命令即可。 而Slackware往往要从源代码重新编译,稍微费事一些。 SuSE也是基于rpm打包系统,SuSE的特别之处在于它对X窗口系统的支持非常好, SuSE的吉祥物是一只绿色的蜥蜴,非常可爱。 Debian基于自己的Deb格式的打包系统,但是它也可以安装rpm软件包。 Linux可以运行在DEC公司的Alpha机上,也可以运行在Sun公司的Sparc机器上。 当然也可以运行在Intel公司的386以上的机器上。 编写的好的源代码可以不经修改的在各种不同的Linux平台上直接编译安装运行, 但是显然,不同的硬件平台之间的可执行文件是不兼容的。 但是一个特别针对Intel机器的rpm软件包是可以轻易的在for Intel的RedHat,SuSE,Debian, 以及Slackware上安装运行起来的。 RedHat,SuSE,Slackware以及Debian等各个发布之间的另一个不同是, 它们都带有自己的系统管理工具。 RedHat使用着名的控制面板+Linuxconf, Debian使用臭名昭着的dselect(为什么说臭名昭着?因为它非常难控制, 我自己只要有可能,就尽量不碰它) Slackware使用pkgtool, SuSE也有自己的管理工具。 Linux是一个开放的操作系统,它的各个部分:内核,应用程序, 库程序是有机的结合的。并不是固定的死死的,碰都不能碰。Linux的内核的版本号是XX.XX.XX格式的,由三个数字组成, 第一个数字是主版本好,第三个数字是辅版本号,中间的数字如果是奇数, 表示这是一个开发版的内核,如果是偶数,表示是一个相对稳定的,可靠的内核。 一般来讲,除非你正在研究Linux内核,或有特别的需要, 否则不要摆弄奇数版本的内核。 今天演示的第三个部分是Linux下的软件。常常有人抱怨Linux缺乏有效的软件的支持, 这在一定情况下的确如此,但是另一方面也是我们对Linux了解太少, Linux平台上现在已经有了相当多的应用软件。 并且Linux正在得到越来越多的厂家的支持。 这段时间炒的非常火的Oracle,Sybase等等大型数据库的Linux版本就是一例。 Linux下不但有类似于PhotoShop的免费的图像编辑软件:gimp, 还有免费的类似于3DS的三维设计软件:MoonLight。 并且所有这些软件,你都可以得到源代码。 Linux下的图形用户界面是基于X窗口系统的, 这也秉承了Linux的一贯传统:开放的,有机结合的。 XFree86只是图形界面的服务器,上面可以运行各种不同的窗口管理器, 现在着名的窗口管理器有AfterStep,WindowMaker,以及Enlightenment。 有的窗口管理器做得非常的漂亮,真是叫做不看不知道,一看吓一跳。 另外,如果你不喜欢花哨的窗口管理器,你可以选择wm2或者9wm, 它们只占用非常少的系统资源,我自己经常使用的就是9wm。 有了X服务器和一个窗口管理器,你就有了图形用户界面。 你就可以运行Gimp或者Moonlight了,甚至你还可以运行Doom和quake! 现在还有一批程序员正在为Linux开发免费的,开放源代码的红色警报。 对Linux的一个最主要的批评是:Linux缺乏支持。 坦白的说,就我自己作为一个个人用户来讲,我觉得Linux的支持非常的好。 我曾经在安装Debian的时候遇到几个问题, 到Debian的Mail List里发信询问了一下,几个小时后就得到了答案。
㈤ 一个很古老的DOS射击游戏
是毁灭公爵啊
毁灭公爵 编辑 毁灭公爵3D是一款由3D Realms公司开发的电脑游戏,并由Apogee Software公司在1996年1月发行。
毁灭公爵3D的游戏画面游戏主人公曾经在3D Realms的系列游戏中出现过,此系列包括《毁灭公爵》(Duke Nukem)、《毁灭公爵2》(Duke Nukem 2)。但是《毁灭公爵3D》却不同于他们的前辈,这是一款FPS类的游戏,就象是着名的此类作品《毁灭战士》(Doom)和《雷神之锤》(Quake)一样。
这是一款非常成功的游戏,值得一提的是他们在作品中引入了很多幽默的元素,而其他的这类作品都缺乏幽默感。
毁灭公爵II(Duke Nukem II)是一个运行在DOS系统下面的游戏。由Apogee软件公司制作发布。游戏包含4个章节,第一章节作为共享软件发布。这是毁灭公爵系列游戏的第二个版本,之前一个版本是1991年发布的毁灭公爵,随后发布的是1996年的毁灭公爵3D。
故事是:一个邪恶的计划正在进行中,这个名叫“Rigilatin”的计划就是奴役地球。这些异类绑架了毁灭公爵,要用他的大脑来组织其他方的进攻。公爵奋力逃离了魔爪,再一次,拯救了世界。
游戏的故事主线基本上没有进行修改就再次用于GBC版本上的于1997年的再发行版本。
因为此游戏第一次引用了“游戏引擎”的概念。
毁灭公爵的最新版本叫 --DNF (Duke Nukem Forever )毁灭公爵永恒版。到今天--已经跳票超过11年了,至今官方网站3DREALMS仍然是那句话:“When it is done.” 被网友戏称“forever = never”.
Duke Nukem(毁灭公爵复刻版):
是由一位美国网友和他的朋友重新制作的Windows版本,画面很精致,有点类似与CS,但是这个游戏的可玩性还是有的,想象力很好。
目前国类也有一些网友有这个版本,需要重温的朋友可以去下载。
由于3DREALMS网站已经公布了毁灭公爵DOS版的源码,所以如果你有能
㈥ 谁知道哪里有二次开发的小游戏源码
我有quakeIII 的源码。
㈦ 谁能讲讲quake的从1到4的故事背景啊
quake 开发小组用C语言写了一大堆源代码,刚写了一大半,程序不是很完美,就改成CS了。CS成了设计小组之间制作quake游戏过程中消遣的游戏。不过只是雏形,后来将quake3制作成功后,才把cs代码完善成第一代叫半条命,最后才升级成cs.
quake3成为世界第1号射击比赛竞技游戏。岑经在国内风靡一时,中国四川一个叫rocketboy的年轻人为中国夺得一枚金牌,超过欧美。之后由于国内对此游戏的限制及wcg对quake3的限制,玩家逐日递减,相信玩过quake3的玩家,都会高举此来射击之经典的口号
㈧ 雷神之锤引擎的衍生引擎
1999年12月21日,id Software的卡马克发布了Q1引擎的源代码(遵循GPL准则),允许程序员修改引擎并且加入新的特性。不久后程序员们就发布了引擎的不同版本。一部分众所周知的引擎为:
DarkPlaces
Tenebrae
Telejano
Tomaz Quake
Twilight Engine MHQuake
QMB
QuakeForge
GQ
Tenebrae2
ProQuake
NPRQuake
CheapHack
FitzQuake
NetChild
Vr2
TTYQuake
wmQuake
NewWolf
GlQuake For Mac
D3DQuake
QBism ezQuake
FuhQuake
KrimZoN QuakeWorld Client
MoreQuakeWorld (MQWCL)
QuakeForge
[QuakeWorld Python]
ZQuake Titanium Port
Bero Port