版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、鄭州航空工業(yè)管理學(xué)院嵌入式系統(tǒng)課程設(shè)計報告題目:基于嵌入式系統(tǒng)的開源游戲模擬器的設(shè)計20 13 2014 第2學(xué)期院系:電子通信工程系姓名: 專業(yè): 通信工程 學(xué)號: 指導(dǎo)老師:趙成張松煒電子通信工程系2014年5月制- 8 -目 錄目 錄- 2 -一、引言- 3 -二、設(shè)計目的- 3 -三、設(shè)計要求- 3 -1.任務(wù)要求- 3 -2.設(shè)計所需的軟硬件設(shè)備- 3 -3.課程設(shè)計報告內(nèi)容- 4 -四、總體設(shè)計- 4 -1.Visual Boy Advance模擬器簡介- 4 -2.安裝交叉編譯工具- 4 -3.ZLIB數(shù)據(jù)壓縮庫的安裝、編譯- 5 -4.編譯、安裝Libpng圖像庫- 6 -5.
2、SDL多媒體函數(shù)庫- 6 -6.編譯與安裝VBA模擬器- 7 -7.VisualBoyAdvance的調(diào)試與運行- 9 -五、總結(jié)- 9 -六、參考文獻(xiàn)- 10 -一、 引言隨著微處理器性能的提升,現(xiàn)在的微處理器已經(jīng)可以支撐游戲模擬器的運行,用戶可以選擇在非PC平臺下操作街機游戲以及20世紀(jì)90年代需要PC才能運行的游戲節(jié)目,這無疑提升了游戲硬件平臺的移動性。電子游戲業(yè)將是這一技術(shù)的最大收益者。目前,在一個配有LCD圖形界面和32位ARM微處理器的移動平臺上,甚至可以實現(xiàn)最早出現(xiàn)在PC上的3D游戲,本文介紹利用ARM嵌入式系統(tǒng)平臺(內(nèi)置S3C2410A核心微處理器),將開源游戲模擬器Visua
3、l Boy Advance(VBA)的代碼移植到微處理器上的方法。二、 設(shè)計目的了解嵌入式微處理器的運算能力,進(jìn)一步熟悉ARM S3C2410微處理器在多媒體娛樂平臺中的應(yīng)用。在設(shè)計過程中,熟悉Linux系統(tǒng)中常用的壓縮解縮工具包、圖形工具包、多媒體函數(shù)庫等的使用方法,從而為基于嵌入式系統(tǒng)平臺的多媒體開發(fā)任務(wù)打下更深厚的應(yīng)用實踐基礎(chǔ)。三、 設(shè)計要求1. 任務(wù)要求該設(shè)計的具體要求如下:(1)掌握ZLIB數(shù)據(jù)壓縮庫的功能以及編譯與安裝方法。(2)掌握libpng圖像庫的功能以及編譯與安裝方法。(3)掌握SDL多媒體函數(shù)庫的功能以及編譯與安裝方法。(4)掌握開源模擬器VBA的編譯與安裝方法。(5)掌
4、握開源模擬器VBA的調(diào)試與運行。(6)理解VBA程序的設(shè)計(選做)。2. 設(shè)計所需的軟硬件設(shè)備(1)硬件環(huán)境配置計算機:Intel(R) Pentium(R) 及以上內(nèi)存:1GB及以上實驗設(shè)備:UP-NETARM2410-S嵌入式開發(fā)平臺(2)軟件環(huán)境配置操作系統(tǒng):Microsoft Windows XP Professional Service Pack 2虛擬機:VMware WorkStation 7Linux系統(tǒng):Red Hat Enterprise Linux AS 4 (2.6.9-5.EL)嵌入式交叉編譯器:arm-linux-gcc 3.4.1版本ZLIB數(shù)據(jù)壓縮庫:ZLIB-
5、1.2.3Libpng圖像庫:Libpng-1.4.0SDL多媒體函數(shù)庫:sdl-1.2.13VBA模擬器:VisualBoyAdvance-src-1.7.23. 課程設(shè)計報告內(nèi)容按該設(shè)計報告要求的模式格式提交課程設(shè)計報告書。四、 總體設(shè)計1. Visual Boy Advance模擬器簡介開源游戲模擬器VBA是一個根據(jù)GUN General Public License發(fā)布的免費軟件。VBA能夠在不同的硬件平臺上模擬Nintendo公司發(fā)行的手提游戲機,包括Game Boy、Super Game Boy、Game Boy Color、Game Boy Advance以及Game Boy A
6、dvance ROMS。2. 安裝交叉編譯工具(1) 下載arm-linux-gcc-3.4.1.tgz軟件壓縮包,將其存放在Linux系統(tǒng)中的/tmp目錄下,然后進(jìn)入/tmp目錄,執(zhí)行如下命令進(jìn)行文件解壓縮:rootlocalhost # cd /tmprootlocalhost tmp# tar -xzvf arm-linux-gcc-3.4.1.tgz -C /運行上述命令后把arm-linux-gcc安裝到/usr/local/arm/3.4.1目錄。(2) 運行下面命令修改/root/.bashrc文件的內(nèi)容:rootlocalhost # vi /root/.bashrc 編輯/r
7、oot/.bashrc文件,將最后一行改為如圖1劃線標(biāo)示所示,修改后保存退出。圖1 修改/root/.bashrc文件的內(nèi)容(3) 重新登錄系統(tǒng),使上述設(shè)置生效,用以下命令行測試:rootlocalhost # arm-linux-gcc v若出現(xiàn)如圖2所示gcc version 3.4.1則說明交叉編譯環(huán)境已經(jīng)安裝完畢且3.4.1版本的交叉編譯環(huán)境可以正常運行了。圖2 交叉編譯工具的版本信息3. ZLIB數(shù)據(jù)壓縮庫的安裝、編譯ZLIB雖然支持文件的壓縮、解壓縮、刪除與查看等功能,但主要是對Linux/Unix下的GZ文件進(jìn)行相應(yīng)的操作,對于Windows系統(tǒng)下的ZIP文件并不提供直接的支持,
8、這里使用ZLIB的版本是1.3.2。(1) 在命令終端窗口中,切換路徑到/home/ilovechina/GBA/下,解壓縮zlib-1.2.3.tar.gz軟件包,運行下面的命令:rootlocalhost # cd /home/ilovechina/GBA/rootlocalhost GBA# tar -xzvf zlib-1.2.3.tar.gz(2) 在zlib-1.2.3目錄中,運行如下的配置命令,可以得到Makefile文件:rootlocalhost GBA# cd zlib-1.2.3rootlocalhost zlib-1.2.3# ./configure -prefix=/
9、usr/local/arm/3.4.1/arm-linux(3) 使用編輯器修改產(chǎn)生的Makefile文件,從而達(dá)到能夠利用交叉編譯工具對zlib的源代碼進(jìn)行編譯與安裝,修改參數(shù)如下:Ø 第19行修改為:CC=arm-linux-gccØ 第36行修改為:AR=arm-linux-ar rcØ 第37行修改為:RANLIB=arm-linux-ranlib(4) 在前面的步驟中已經(jīng)將預(yù)先處理的各項都進(jìn)行了設(shè)置,現(xiàn)在可以運行下列命令開始編譯、安裝zlib軟件包:rootlocalhost zlib-1.2.3# make;make install 4. 編譯、安裝L
10、ibpng圖像庫(1) 解壓縮libpng-1.4.0.tar.gz軟件包,在命令終端窗口切換路徑到/home/ilovechina/GBA/下,運行的命令如下:rootlocalhost zlib-1.2.3# cd .rootlocalhost GBA# tar -xzvf libpng-1.4.0.tar.gz(2) 在libpng-1.4.0目錄中,運行如下配置命令,可以得到Makefile文件:rootlocalhost GBA# cd libpng-1.4.0rootlocalhostlibpng-1.4.0# export LDFLAGS=-L/usr/arm/3.4.1/arm
11、-linux/librootlocalhostlibpng-1.4.0# export CFLAGS=-I/usr/local/arm/3.4.1/arm-linux/includerootlocalhost libpng-1.4.0# ./configure -prefix=/usr/local/arm/3.4.1/arm-linux -host=arm-linux(3) Makefile文件生成之后,在前面預(yù)先處理的各項的相應(yīng)設(shè)置后,下面就可以編譯安裝libpng軟件包了,所需要運行的命令如下:rootlocalhost zlib-1.2.3# make;make install5. SD
12、L多媒體函數(shù)庫SDL在音頻處理、視頻處理、事件響應(yīng)、線程管理、數(shù)據(jù)流處理、定時器等方面都有比較突出的功能。(1) 在終端命令窗口中,切換到/home/ilovechina/GBA/路徑下,解壓縮SDL-1.2.13.tar.gz軟件包,運行如下命令:rootlocalhost libpng-1.4.0# cd .rootlocalhost GBA# tar xzvf SDL-1.2.13.tar.gz得到SDL-1.2.13文件夾;(2) 在生成的SDL-1.2.13目錄中,運行如下配置命令,就可以得到Makefile文件:rootlocalhost GBA# cd SDL-1.2.13roo
13、tlocalhost SDL-1.2.13# ./configure -prefix=/usr/local/arm/3.4.1/arm-linux -disable-video-qtopia -disable-video-dummy -disable-video-fbcon -disable-video-dga -disable-arts -disable-esd -disable-alsa -disable-cdrom-disable-video-x11 -disable-nasm -target=arm-linux -host=arm-linux-enable-video-fbcon(3)
14、 在前面的步驟中已經(jīng)將需要預(yù)處理的各項都進(jìn)行了相應(yīng)的設(shè)置處理,現(xiàn)在可以編譯、安裝SDL軟件包了,運行如下命令即可:rootlocalhost SDL-1.2.13# make;make install6. 編譯與安裝VBA模擬器(1) 切換路徑到/home/ilovechina/GBA/目錄下,開始運行如下命令解壓縮游戲模擬器VisualBoyAdvance-src-1.7.2.tar.gz軟件包:rootlocalhost SDL-1.2.13# cd .rootlocalhost GBA# tar xzvf VisualBoyAdvance-1.7.2.tar.gz這樣在/home/ilo
15、vechina/GBA/下得到VisualBoyAdvance-1.7.2文件夾。(2) VisualBoyAdvance-1.7.2目錄下,運行如下配置命令,可以得到Makefile文件:rootlocalhost GBA# cd VisualBoyAdvance-1.7.2rootlocalhost VisualBoyAdvance-1.7.2# ./configure -host=arm-linux-target=arm-linux-with-sdl-prefix=/usr/local/arm/3.4.1/arm-linux-with-sdl-exec-prefix=/usr/local
16、/arm/3.4.1/arm-linux(3) 在/home/ilovechina/GBA/VisualBoyAdvance-1.7.2/src/sdl/SDL.cpp文件中分別從第2323行、第3381行開始,有如下的相同代碼:surface = SDL_SetVideoMode(destWidth, destHeight, 16,SDL_ANYFORMAT|SDL_HWSURFACE|SDL_DOUBLEBUF|(fullscreen ? SDL_FULLSCREEN : 0);將其修改為surface = SDL_SetVideoMode(640,480,16,1),其中640*480表
17、示LCD的分辨率,如果不修改這段代碼,在ARM9開發(fā)板上運行VBA時將可能會提示video模式無法設(shè)置,也可能出現(xiàn)屏幕不正常顯示的情況。保存上述修改,并退出對SDL.cpp文件的編輯。(4) 在前面的步驟中已經(jīng)將需要的預(yù)處理的各項都進(jìn)行了相應(yīng)的設(shè)置,現(xiàn)在可以開始編譯、安裝VisualBoyAdvance軟件包了,運行如下命令:rootlocalhost VisualBoyAdvance-1.7.2# make;make install在編譯、安裝VisualBoyAdvance軟件包之后,可以在VisualBoyAdvance-1.7.2/src/sdl/目錄下看到在arm平臺運行的兩個文件:
18、TestEmu,VisualBoyAdvance。另外,在其上一級目錄下有一個VisualBoyAdvance.cfg配置文件。7. VisualBoyAdvance的調(diào)試與運行(1) 首先,將TestEmu、VisualBoyAdvance及VisualBoyAdvance.cfg這3個文件同時下載到ARM9開發(fā)板根文件系統(tǒng)的/home/ziapc/目錄下,然后編寫或下載一個GBA游戲,同樣下載到開發(fā)板的根文件系統(tǒng)的/home/ziapc/目錄下;(2) 接著添加vba-over.ini文件,將其下載到開發(fā)板中根文件系統(tǒng)的/home/ziapc/目錄內(nèi),再次運行模擬器程序,注意開發(fā)板網(wǎng)串口中
19、斷上輸出的信息;(3) 上一步提示VBA運行時缺少libSDL-1.2.so.0共享庫文件,該文件是一個指向libSDL-1.2.so.011.2共享庫文件的鏈接文件,它們都位于/usr/local/arm/3.4.1/arm-linux/lib目錄下,將它們下載到開發(fā)板根文件系統(tǒng)中的/home/ziapc/目錄里;(4) 最后,再次在ARM9開發(fā)板上運行VBA游戲模擬器即可運行起來。在LCD顯示屏上出現(xiàn)游戲畫面。五、 總結(jié)整個課程設(shè)計過程中,需要用到arm-linux-gcc-3.4.1版本的嵌入式交叉編譯環(huán)境,ZLIB數(shù)據(jù)壓縮庫、libpng圖像庫、SDL多媒體函數(shù)庫以及主要的VisualBoyAdvance-src-1.7.2開源代碼包,上述軟件包有一定的版本匹配關(guān)系,交叉編譯環(huán)境必須使用3.4.1版本的交叉編譯器,且不能與3.4.4版本的同時運行,在開始安裝VBA模擬器之前一定要確認(rèn)版本是否正確。下面列出在設(shè)計過程中遇到的問題:1. 由于虛擬機中的Linux系統(tǒng)之前已經(jīng)配置了3.4.4版本的交叉編譯環(huán)境,在上機做課程設(shè)計時,要刪除其配置環(huán)境,具體做法:刪除/usr/local/bin/目錄下的所有文件,再次參照上述步驟配置交叉編譯環(huán)境;2. 進(jìn)行過ZLI
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度年福建省高校教師資格證之高等教育心理學(xué)考試題庫
- 2024年度山西省高校教師資格證之高等教育法規(guī)高分通關(guān)題型題庫附解析答案
- 第七章 膳食營養(yǎng)指導(dǎo)與疾病預(yù)防課件
- 二年級數(shù)學(xué)(上)計算題專項練習(xí)匯編
- 保密工作培訓(xùn)心得體會
- 2020屆中考科學(xué)(杭州版)復(fù)習(xí)同步練習(xí)題:第三篇-主題3-第六單元-電流熱效應(yīng)和電功率的測量
- 購買保險欺騙退還本金指導(dǎo)案例
- 高級室內(nèi)裝飾設(shè)計人員理論知識試題求答案(5篇模版)
- 2024年專業(yè)石材安裝服務(wù)協(xié)議模板
- 2024年度德邦速運協(xié)議條款明細(xì)
- 期中測評試卷(1-4單元)(試題)-2024-2025學(xué)年人教版三年級數(shù)學(xué)上冊
- GB/T 15822.1-2024無損檢測磁粉檢測第1部分:總則
- 新質(zhì)生產(chǎn)力解讀課件
- 學(xué)生對教師評價表(共8頁)
- 批發(fā)零售大個體 E204-3批發(fā)和零售業(yè)產(chǎn)業(yè)活動單位(個體經(jīng)營戶)商品銷售和庫存
- 異辛酸鈉合成工藝及建設(shè)項目
- 西電計組課程設(shè)計報告
- 汽車買賣合同工商示范文本
- SC鍍鋅鋼管緊定式連接施工工法(共12頁)
- 梅克爾憩室PPT參考幻燈片
- 動車組火災(zāi)檢測(報警)系統(tǒng)
評論
0/150
提交評論