uclinux和linux的区别我就不用多说了,uclinux是专门为没有MMU的cpu而准备的。以下两点却别会影响到我们的移植。

1.uclinux生成的目标文件格式是flat,可以在裸机上跑.uclinux和ARM7可能只能运行这种格式的程序,连接时需要加-elf2flat选项,否则是无法运行的,我们的开发板加上-Wl,-elf2flt="-s32768"即可

2.arm-elf使用的库是uclibc/uc-libc,而arm-linx使用的是glibc,故而在arm-elf的时候没有zlib的。所以要另外移植。

以上步骤和linux上差不多。

1.移植sdl,sdl的video其中之一的实现的方法是framebuffer,不巧的是我们的开发板LCD不支持framebuffer,而framebuffer也是QT,minigui移植的基础。麻烦就出来了,如果只是想移植游戏模拟器那大可抛弃SDL的video,自己另外写库。但是移植SDL是必要的,因为SDL还有其他的库是游戏模拟器所依赖的。
1)解压fceu
2)cd fceu
3)NM=arm-elf-nm LD=arm-elf-ld CC=arm-elf-gcc CXX=arm-elf-g++ RANLIB=arm-elf-ranlib AR=arm-elf-ar ./configure  --disable-ipod --enable-video-fbcon --target=arm-elf --host=arm-elf --prefix=/home/hansonlu/resp/source/SVN_HighwayStar/game/SDL-1.2.13/install
4)make;make install
5)cd test
6)NM=arm-elf-nm LD=arm-elf-ld CC=arm-elf-gcc CXX=arm-elf-g++ RANLIB=arm-elf-ranlib AR=arm-elf-ar ./configure --target=arm-elf --host=arm-elf --prefix=/home/hansonlu/resp/source/SVN_HighwayStar/game/SDL-1.2.13/install

PS1.test目录下有一些DEMO可以验证SDL是否移植成功,记得在链接的时候加上-Wl,-elf2flt="-s32768"。
PS2.--enable-video-fbcon,因为在./configure的时候,如果交叉编译器是arm-elf,是不会去检查fbcon,所以需要手动修改./configure,具体的需要修改哪里,我没有详细看过。你自己动手吧。因为我后来舍弃了SDL的VEDIO,所以没有去研究这个。

2.移植zlibc

export CC=arm-elf-gcc
./configure -shared --prefix=/home/hansonlu/resp/source/SVN_HighwayStar/armutils_2.5.113.0/toolchain
make;make install

prefix是交叉编译器所在的目录,也可以是其他的目录,但是一定把相应的文件要copy到交叉编译器所在的目录。

3.移植fceu
去掉SDL关于video部分,用自己的板子上支持的输出方式,需要修改的文件是:
fceu/src/drivers/pc/sdl-video.c
fceu/src/drivers/pc/main.c
fceu/src/drivers/pc/input.c

./configure --host=arm-elf --with-sdl-prefix=/home/hansonlu/resp/source/SVN_HighwayStar/game/SDL-1.2.13/install --prefix=/home/hansonlu/resp/source/SVN_HighwayStar/game/fceu/install

记得在链接的时候加上-Wl,-elf2flt="-s32768",修改makefile文件src/makefile在$link。。。。最后面加上即可。

make;make install

4.运行fceu

tftp -b 1368 -g -r fceu 172.18.128.84
tftp -b 1368 -g -r a.nes 172.18.128.84
tftp -b 1368 -g -r 1.jpg 172.18.128.84
chmod +x fceu
./fceu -sound 0 -xscale 1 -yscale 1 -inputcfg gamepad1 a.nes

uclinux上任天堂游戏模拟器移植相关推荐

  1. 超级任天堂游戏模拟器被曝安全漏洞

    超级任天堂(SNES,Super Nintendo Entertainment System)是任天堂全球知名主机NES(国内称为小霸王)的后续主机,主机采用16位色表现,令主机的画面表现在当时非常之 ...

  2. NES —— Go 语言开发的任天堂游戏模拟器

    这是一个完全用 Go 语言开发的 NES 红白机模拟器,该项目使用 OpenGL 和 GLFW 处理视频,PortAudio 处理音频. https://yqfile.alicdn.com/3a5c7 ...

  3. V3S移植nes游戏模拟器(附带游戏合集)

    V3S移植nes游戏模拟器(附带游戏合集) 1.资源准备: nes源码 alsa源码(本文采用buildroot已编译好的alsa库 编译该库可参考mplayer那篇文章,也可自行编译) 可以使用音频 ...

  4. 流行的任天堂电子游戏模拟器 Cemu 计划开源并支持 Linux

    流行的任天堂电子游戏模拟器 Cemu 计划开源并支持 Linux 这的确是个好消息! 如果你喜欢玩复古游戏,你可能已经接触过复古游戏机模拟器.顺便说一句,所谓"模拟器Emulator&quo ...

  5. 给PS4装上Linux,然后用Xbox手柄打任天堂游戏?网友:这场面我没见过

    丰色 发自 凹非寺 量子位 | 公众号 QbitAI 在PS4上用Xbox手柄打任天堂游戏,是一种怎样的体验? 最近,油管博主Linus Tech Tips的最新作品在PS玩家中可是掀起了一股热潮: ...

  6. 一个可以在多平台运行的任天堂GameBoy模拟器

    今天为大家带来一个很有趣的游戏模拟器GoBoy GoBoy GoBoy是一个可以在多平台运行的任天堂GameBoy和GameBoy Color的模拟器,目前这个模拟器可以运行大多数的GameBoy游戏 ...

  7. Ryujinx - 基于 C# 开发的任天堂 Switch 模拟器

    你好,这里是 Dotnet 工具箱,定期分享 Dotnet 有趣,实用的工具和组件,希望对您有用! Ryujinx Ryujinx 是一个开源的任天堂 Switch 模拟器,可以在 PC 上模拟运行 ...

  8. 任天堂游戏 html5,任天堂:会让粉丝们在Switch上玩到《毁灭战士:永恒》

    尽管缺乏相关细节,但在最新的<任天堂时事通讯>上,任天堂方面确认<毁灭战士>的粉丝们会在今年某个时候在Switch上玩到<毁灭战士:永恒>,该报道中还提及了其他多款 ...

  9. linux全能模拟器,全能游戏模拟器 RetroArch 1.7.0发布

    RetroArch RetroArch适用于Windows,OS X,Linux,Android,iOS(越狱),BlackBerry 10,Raspberry Pi,OpenPandora,Play ...

  10. 收集了5个在线玩复古游戏模拟器网站

    以下是一些最适合在线玩复古游戏模拟器的网站: 1.https://www.52jieji.cn/ 该网站提供各种免费的在线游戏,从互联网收集了比较全的复古游戏,包括街机游戏,格斗游戏,射击游戏, 角色 ...

最新文章

  1. Microsoft.Bcl.Build 1.0.10 稳定版发布
  2. 全球及中国智能照明行业应用状况及竞争格局展望报告2021-2027年
  3. 不要把HANA跟BW混为一谈
  4. 在php中怎么引用已经定义过的变量,变量已经在方法中定义但执行的时候还报错?...
  5. 从0开始学习 GitHub 系列之「03.Git 速成」
  6. Windows 2003下×××服务器架设攻略
  7. 计算机主机图片开机按钮,解决电脑开机按钮无法使用方法
  8. Linux case 及 函数位置参数
  9. 偶遇拍外景的小姐姐们
  10. python判断字母大写_python判断字符串是字母 数字 大小写(转载)
  11. 科大讯飞 文字转语音
  12. LibFewShot:小样本学习与细粒度分类(二) -- 数据集、训练、测试
  13. scp ssh: connect to host 192.168.6.129 port 22: Connection refused lost connection
  14. HTML canvas 输入文字,关于Canvas写字
  15. java SSM项目基础(day 5)[实现用户添加功能(注册)]
  16. 做一个精致的电子工程师
  17. 玫瑰编程--python
  18. WebSupergoo 11.310 C#PDF库组件 WebSuper
  19. UI设计培训技术教程之字体排版规则
  20. java教程 电子工业出版社_Java程序设计实用教程

热门文章

  1. 地铁路线程序C语言,个人作业-北京地铁出行路线规划命令行程序完成总结
  2. Excel两列数据对比,找出重复数据
  3. 滴滴出行app——网约车出行的背后(下)
  4. 数藏2.0故事中,元境开启“元宇宙丝绸之路”
  5. java.io.IOException: (null) entry in command string: null chmod 0700 E:\tmp\hadoop\mapred\staging\te
  6. canvas画圆形图片
  7. 非计算机,如何学习计算机视觉
  8. 看图猜成语小程序设计与实现(小程序+PHP)
  9. Wordpress 主题开发教程-从零开始制作主题
  10. 公摊面积用计算机怎么计算,公摊面积计算(公摊面积计算器)