5077|6

189

帖子

0

TA的资源

纯净的硅(初级)

楼主
 

把BBB改造成红白机/掌机/游戏机/玩超级玛丽 [复制链接]

本帖最后由 wytalfred 于 2014-3-24 22:57 编辑

首先要准备好LCD屏幕和游戏手柄等。
然后就是安装模拟机啦,我装了两个,分别在这里下载:
OSMOSE(支持.sms .gg等): https://github.com/bear24rw/gamingcape_osmose
FCEUX(支持nes fds等): https://github.com/bear24rw/gamingcape_fceu
至于游戏文件,大家百度吧~

特别提醒:

执行make前一定要确认系统时间。因为BBB没有RTC模块,每次开机时时间都重置为2000年1月1日,如果直接执行make的话,到最后会出现
clock skew detected
的提示,就是因为系统时间比文件的修改时间还要早。make是靠文件时间的先后决定某个文件是否需要编译的,所以不先修改系统时间的话基本上一定会导致make不完全。
修改系统时间的方法:
  1. date -s 3/24/2014  
复制代码


模拟器安装:

前面说我装了两个模拟器,其中:
第一个,osmose安装很容易,在文件目录下执行make,就会生成可执行文件osmose。
第二个,fceux安装比较费时,详细记录一下安装过程:

安装fceux用到了scons这个编译工具(类似Makefile)
因为opkg install scons找不到包,所以首先到官网(http://www.scons.org)下载下来以后在BBB上解压安装。

然后发现scons安装不了,因为scons的安装是基于python的,BBB自带的Python是精简版的,缺乏一些模块,所以还需要下载Python。

To be clear,整个安装过程分三步:下载Python,用Python安装scons,用scons安装fceux。


1、安装python:

注意:这里我虽然安装了完整版python(耗时15分钟),但似乎后来发现不必安装也可以。你可以先不安装,如果后面遇到问题再装不迟。毕竟完整版python有点大,安装时间也不短。

2、安装scons:

首先用如下命令确定python import时的搜索路径
  1. python -c"import sys;print 'path:'+sys.prefix;print '\n'.join(sys.path)"
复制代码
得到:
  1. path:/usr  
  2.   
  3. /usr/lib/python27.zip  
  4. /usr/lib/python2.7  
  5. /usr/lib/python2.7/plat-linux2  
  6. /usr/lib/python2.7/lib-tk  
  7. /usr/lib/python2.7/lib-old  
  8. /usr/lib/python2.7/lib-dynload  
  9. /usr/lib/python2.7/site-packages  
复制代码
把Python安装包的Lib文件夹内所有文件拷贝到上面的任意一个,比如/usr/lib/python2.7目录下。

然后cd到scons所在目录执行
  1. python setup.py install
复制代码
可能会遇到这个问题 ImportError: No module named _sysconfigdata
搜索一下
  1. root@beaglebone:~/scons-2.2.0# find / -name _sysconfigdata*  
  2. /home/root/Python-2.7.6/build/lib.linux-armv7l-2.7/_sysconfigdata.pyc  
  3. /home/root/Python-2.7.6/build/lib.linux-armv7l-2.7/_sysconfigdata.py  
复制代码
找到了,原来是位置不在上述import搜索路径中,所以找不到。在/usr/lib/python2.7目录下创建一个link
  1. cd /usr/lib/python2.7  
  2. ln -s /home/root/Python-2.7.6/build/lib.linux-armv7l-2.7/_syscoonfigdata.py _sysconfigdata.py
复制代码
重新cd到scons所在目录下执行
  1. python setup.py install
复制代码
不出意外的话安装scons成功!

3、用scons编译fceux:

cd到fceux所在目录
执行
  1. scons
复制代码
等待15分钟,编译完成后在scons所在目录/src/目录内会生成可执行文件fceux,就是我们要的模拟器。可以用下面命令放到系统目录中
  1. install -m 755 src/fceux /usr/bin/fceux
复制代码
模拟器安装完成!

模拟器使用:
在/home/root目录内新建一个文件.xinitrc,内容如下
  1. xset s off  
  2. xset s noblank  
  3.   
  4. exec fceux -fullscreen 1 -xres 320 -yres 240 -bpp 16 -sound 0  /home/root/mario.nes  
  5. #exec /home/root/gamingcape_osmose/osmose -joy -fs  /home/root/Addams_Family.sms  
复制代码
其中的.nes和.sms文件就是游戏文件啦,这两行就是运行两个模拟器的命令,使用时必须注释掉其中一个,执行另一个。
然后执行startx命令,LCD屏幕上就开始运行模拟器了。




更多内容(如添加音频、自制按键和摇杆而非使用外接手柄、添加电池、3d打印外壳等)请参考http://bear24rw.blogspot.com/2013/07/beaglebone-gamingcape.html,本文是对该文没提到的内容做一点补充,感谢这位作者的工作!




最新回复

还能这么玩?  详情 回复 发表于 2015-6-5 16:58
点赞 关注(1)
个人签名更多BBB经验分享,请访问我的博客http://blog.csdn.net/wyt2013
 

回复
举报

5979

帖子

8

TA的资源

版主

沙发
 
可以改改
个人签名生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙
===================================
做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰
 
 

回复

1246

帖子

18

TA的资源

五彩晶圆(初级)

板凳
 
这个我喜欢!我扩展的是七寸屏,必须玩玩!哈哈!
个人签名
 
 
 

回复

1246

帖子

18

TA的资源

五彩晶圆(初级)

4
 
本帖最后由 anananjjj 于 2014-5-23 21:57 编辑

老大,这个编译是不是需要SDL库啊?是在BBB板子里面编译吗?有点费解!

点评

是在BBB上本地编译的,sdl库我没印象了~  详情 回复 发表于 2014-5-24 13:50
个人签名
 
 
 

回复

189

帖子

0

TA的资源

纯净的硅(初级)

5
 
anananjjj 发表于 2014-5-23 20:14
老大,这个编译是不是需要SDL库啊?是在BBB板子里面编译吗?有点费解!

是在BBB上本地编译的,sdl库我没印象了~
个人签名更多BBB经验分享,请访问我的博客http://blog.csdn.net/wyt2013
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(初级)

6
 
感觉很复杂的样子,不过用这个屏玩这个游戏是不是有点浪费啊?
 
 
 

回复

3404

帖子

6

TA的资源

裸片初长成(初级)

7
 
还能这么玩?
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表