




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、郑州航空工业管理学院嵌入式系统课程设计报告题目:基于嵌入式系统的开源游戏模拟器的设计20 13 2014 第2学期院系:电子通信工程系姓名: 专业: 通信工程 学号: 指导老师:赵成张松炜电子通信工程系2014年5月制- 8 -目 录目 录- 2 -一、引言- 3 -二、设计目的- 3 -三、设计要求- 3 -1.任务要求- 3 -2.设计所需的软硬件设备- 3 -3.课程设计报告内容- 4 -四、总体设计- 4 -1.Visual Boy Advance模拟器简介- 4 -2.安装交叉编译工具- 4 -3.ZLIB数据压缩库的安装、编译- 5 -4.编译、安装Libpng图像库- 6 -5.
2、SDL多媒体函数库- 6 -6.编译与安装VBA模拟器- 7 -7.VisualBoyAdvance的调试与运行- 9 -五、总结- 9 -六、参考文献- 10 -一、 引言随着微处理器性能的提升,现在的微处理器已经可以支撑游戏模拟器的运行,用户可以选择在非PC平台下操作街机游戏以及20世纪90年代需要PC才能运行的游戏节目,这无疑提升了游戏硬件平台的移动性。电子游戏业将是这一技术的最大收益者。目前,在一个配有LCD图形界面和32位ARM微处理器的移动平台上,甚至可以实现最早出现在PC上的3D游戏,本文介绍利用ARM嵌入式系统平台(内置S3C2410A核心微处理器),将开源游戏模拟器Visua
3、l Boy Advance(VBA)的代码移植到微处理器上的方法。二、 设计目的了解嵌入式微处理器的运算能力,进一步熟悉ARM S3C2410微处理器在多媒体娱乐平台中的应用。在设计过程中,熟悉Linux系统中常用的压缩解缩工具包、图形工具包、多媒体函数库等的使用方法,从而为基于嵌入式系统平台的多媒体开发任务打下更深厚的应用实践基础。三、 设计要求1. 任务要求该设计的具体要求如下:(1)掌握ZLIB数据压缩库的功能以及编译与安装方法。(2)掌握libpng图像库的功能以及编译与安装方法。(3)掌握SDL多媒体函数库的功能以及编译与安装方法。(4)掌握开源模拟器VBA的编译与安装方法。(5)掌
4、握开源模拟器VBA的调试与运行。(6)理解VBA程序的设计(选做)。2. 设计所需的软硬件设备(1)硬件环境配置计算机:Intel(R) Pentium(R) 及以上内存:1GB及以上实验设备:UP-NETARM2410-S嵌入式开发平台(2)软件环境配置操作系统:Microsoft Windows XP Professional Service Pack 2虚拟机:VMware WorkStation 7Linux系统:Red Hat Enterprise Linux AS 4 (2.6.9-5.EL)嵌入式交叉编译器:arm-linux-gcc 3.4.1版本ZLIB数据压缩库:ZLIB-
5、1.2.3Libpng图像库:Libpng-1.4.0SDL多媒体函数库:sdl-1.2.13VBA模拟器:VisualBoyAdvance-src-1.7.23. 课程设计报告内容按该设计报告要求的模式格式提交课程设计报告书。四、 总体设计1. Visual Boy Advance模拟器简介开源游戏模拟器VBA是一个根据GUN General Public License发布的免费软件。VBA能够在不同的硬件平台上模拟Nintendo公司发行的手提游戏机,包括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系统中的/tmp目录下,然后进入/tmp目录,执行如下命令进行文件解压缩: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文件的内容:rootlocalhost # vi /root/.bashrc 编辑/r
7、oot/.bashrc文件,将最后一行改为如图1划线标示所示,修改后保存退出。图1 修改/root/.bashrc文件的内容(3) 重新登录系统,使上述设置生效,用以下命令行测试:rootlocalhost # arm-linux-gcc v若出现如图2所示gcc version 3.4.1则说明交叉编译环境已经安装完毕且3.4.1版本的交叉编译环境可以正常运行了。图2 交叉编译工具的版本信息3. ZLIB数据压缩库的安装、编译ZLIB虽然支持文件的压缩、解压缩、删除与查看等功能,但主要是对Linux/Unix下的GZ文件进行相应的操作,对于Windows系统下的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) 使用编辑器修改产生的Makefile文件,从而达到能够利用交叉编译工具对zlib的源代码进行编译与安装,修改参数如下:Ø 第19行修改为:CC=arm-linux-gccØ 第36行修改为:AR=arm-linux-ar rcØ 第37行修改为:RANLIB=arm-linux-ranlib(4) 在前面的步骤中已经将预先处理的各项都进行了设置,现在可以运行下列命令开始编译、安装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文件生成之后,在前面预先处理的各项的相应设置后,下面就可以编译安装libpng软件包了,所需要运行的命令如下:rootlocalhost zlib-1.2.3# make;make install5. SD
12、L多媒体函数库SDL在音频处理、视频处理、事件响应、线程管理、数据流处理、定时器等方面都有比较突出的功能。(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、 在前面的步骤中已经将需要预处理的各项都进行了相应的设置处理,现在可以编译、安装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开发板上运行VBA时将可能会提示video模式无法设置,也可能出现屏幕不正常显示的情况。保存上述修改,并退出对SDL.cpp文件的编辑。(4) 在前面的步骤中已经将需要的预处理的各项都进行了相应的设置,现在可以开始编译、安装VisualBoyAdvance软件包了,运行如下命令:rootlocalhost VisualBoyAdvance-1.7.2# make;make install在编译、安装VisualBoyAdvance软件包之后,可以在VisualBoyAdvance-1.7.2/src/sdl/目录下看到在arm平台运行的两个文件:
18、TestEmu,VisualBoyAdvance。另外,在其上一级目录下有一个VisualBoyAdvance.cfg配置文件。7. VisualBoyAdvance的调试与运行(1) 首先,将TestEmu、VisualBoyAdvance及VisualBoyAdvance.cfg这3个文件同时下载到ARM9开发板根文件系统的/home/ziapc/目录下,然后编写或下载一个GBA游戏,同样下载到开发板的根文件系统的/home/ziapc/目录下;(2) 接着添加vba-over.ini文件,将其下载到开发板中根文件系统的/home/ziapc/目录内,再次运行模拟器程序,注意开发板网串口中
19、断上输出的信息;(3) 上一步提示VBA运行时缺少libSDL-1.2.so.0共享库文件,该文件是一个指向libSDL-1.2.so.011.2共享库文件的链接文件,它们都位于/usr/local/arm/3.4.1/arm-linux/lib目录下,将它们下载到开发板根文件系统中的/home/ziapc/目录里;(4) 最后,再次在ARM9开发板上运行VBA游戏模拟器即可运行起来。在LCD显示屏上出现游戏画面。五、 总结整个课程设计过程中,需要用到arm-linux-gcc-3.4.1版本的嵌入式交叉编译环境,ZLIB数据压缩库、libpng图像库、SDL多媒体函数库以及主要的VisualBoyAdvance-src-1.7.2开源代码包,上述软件包有一定的版本匹配关系,交叉编译环境必须使用3.4.1版本的交叉编译器,且不能与3.4.4版本的同时运行,在开始安装VBA模拟器之前一定要确认版本是否正确。下面列出在设计过程中遇到的问题:1. 由于虚拟机中的Linux系统之前已经配置了3.4.4版本的交叉编译环境,在上机做课程设计时,要删除其配置环境,具体做法:删除/usr/local/bin/目录下的所有文件,再次参照上述步骤配置交叉编译环境;2. 进行过ZLI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论