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