layout: post title: 怀念童年之经典街机游戏"拳皇97"玩在Cubieboard author: snowy categories: HaiDoc tags: cubieboard share game


相信对于很多玩过单片机的玩家,利用GPIO接口制作出一些"小玩意"已经是很菜鸟的事了 所以在Cubieboard上如何玩它的GPIO接口就不多说了
Cubieboard上除了它的GPIO接口,还有没有趣味的且不用外接模组的玩法?
答案是肯定有的
下文将和大家分享一篇在Linux环境下使用Cubieboard移植模拟器和怎样使用模拟器玩"拳皇97"的教程
Cubieboard带领大家重温童真般的街机时代!!!

Cubieboard---街机移植

1.移植概述

大家因为学习,工作等等原因加入了Cubieboard和Linux的行列,闲暇时我们也可以用Cubieboard上玩玩游戏. 那么模拟器玩街机就是一个不错的选择. 模拟器种类繁多,这里给出一种gngeo的移植方法.
本文档将介绍在Linux环境下移植模拟器和怎样使用模拟器中玩"拳皇97". 在接下来的文档中首先了解街机移植所需要的文件,与各个文件的作用. 然后在详细介绍各个文件怎样安装,并且给出在安装各个文件过程中可能出现的错误与对应错误的解决方案. 最后将已"拳皇97"为例测试模拟器.

2.移植效果

Gngeo 模拟器界面
Gngeo 模拟器界面
"拳皇97"界面
"拳皇97"界面

3.移植流程

3.1源文件

1)gngeo-0.6.3.tar.gz

在linux不止一个街机模拟器. Gngeo就是一款专门玩neogeo游戏的街机模拟器
下载地址:Gngeo

2)neogeo.zip

Gngeo和大多数模拟器一样也需要一个Bios文件,那就是neogeo
下载地址:Neogeo

3)xgngeo-14.tar.bz2

Gngeo的前端搭档文件
下载地址:Xgngeo

4)kof97.zip

"拳皇97"源码文件
下载地址:Kof97

3.2移植步骤

1)移植gngeo模拟器

a)将gngeo-0.6.3.tar.gz拷到任意一个用户家目录下

# cp gengeo-0.6.3.tar.gz ~/

b)解压gengeo

# tar zxvf gngeo-0.6.3.tar.gz

c)拷贝gengeo配置文件到家目录下

到在自己的家目录下建立.gngeo目录,在解压完的gngeo-0.6.3目录下找到sample_gngeorc这个文件, 将它复制到.gngeo目录下并改名为gngeorc .
# mkdir ~/.gengeo
# cp ~/gngeo-0.6.3/sample_gngeorc ~/.gengeo/gngeorc

d)安装gngeo

# cd gngeo-0.6.3
# ./configure --prefix=/usr/local
#make
#make install

2)加入依赖的Bios文件neogeo

# cp -a neogeo.zip /usr/local/share/gngeo
# cd /usr/local/share/gngeo
# unzip neogeo.zip
# rm -f neogeo.zip

3)安装gngeo前端搭档xgngeo

a)在家目录下建立roms目录,把xgngeo-14.tar.gz考到roms下

# mkdir ~/roms
# tar jxvf xgngeo-14.tar.gz

b)运行模拟器

# cd xgngeo-14
# ./xgngeo.py

3.3安装疑问

1)移植gngeo:/configure --prefix=/usr/local时出现错误

error: can't find sdl-config on your system
解决方案:安装依赖库
# apt-get update
# apt-get install libsdl-*

2)移植gngeo:make 时出现错误

scanline.c: In function 'effect_scanline_update':
scanline.c:31:16: error: lvalue required as left operand of assignment
..............................
解决方案:
编辑 ~/gngeo-0.6.3/src/effect/scanline.c,在对应报错的行里,把第一次出现(uint16 *) 去掉
# vim ~/gngeo-0.6.3/src/effect/scanline.c

3)移植gngeo:make 时出现错误

In function 'update_double':
soft.c:57:16: error: lvalue required as left operand of assignment
..............................
解决方案:
编辑 ~/gngeo-0.6.3/src/blitter/soft.c,在对应报错的行里,把第一次出现(uint16 *) 去掉
# vim ~/gngeo-0.6.3/src/blitter/soft.c

4)移植gngeo:make时出现错误

def68k.c:1322:5:error:non-static declaration of 'clocks_movetable' follows static declaration
解决方案:
编辑 ~/gngeo-0.6.3/generator68k/def68k.c ,在1322行前加一个static
# vim ~/gngeo-0.6.3/generator68k/def68k.c +1322

3.4测试运行

1)将下载好的"kof97.zip"拷贝到家目录的roms目录,并执行模块器

# cp kof97.zip ~/roms
# cd ~/roms/ xgngeo-14
# ./xgngeo.py

2)配置模拟器

a)菜单栏->config->path

Roms & Bios directory 中填入 /usr/local/share/gngeo/
Path to Romrc 中填入 /usr/local/share/gngeo/romrc

b)菜单栏->config->Graphic

Blittter选择 YUV bitter (YV12)

c)菜单栏->config ->Keys

设置player1,player2按键

d)File -> Load From File

找到kof97.zip,想要其他的街机只需要上网上下载相应的游戏源码即可

e)File -> 执行

原文出处:cubie.cc
教程版权归属作者:carpediem(UID: 3110)



以上...


码不停提马上无虫 ;-)

|_|0|_|
|_|_|0|
|0|0|0|

加入 珠海GDG

  1. 注册 G+
  2. 关注 GDG Zhuhai
  3. 成为 GDG Zhuha开发者

通过 珠海GDG 可以:

    第一时间获知谷歌最新的技术,
    可以学到如何去谷歌平台上赚钱的思路和方法,
    可以认识很多有可能将来一起走上自己创业道路的人,
    可以学会把你的创新带向国际市场,
    参加那里的活动有经常和国际上的开发者们进行交流的机会...

PS:

若无意外,题图都是从原文提取或是通过 Google 图片搜索出来的, 版权属左, 不负责任 ;-)

PPS:

珠海GDG wechat/Blog 都是欢迎投稿的,只要追认内容吻合以下条件:

0. 有趣 ~ 至少是自个儿有兴趣的领域吧...
1. 有料 ~ 至少有点儿原创的东西吧..
2. 有种 ~ 至少不能是成功学吧!

有好物的,及时向大妈们吼: [email protected]

微信栏目

当前应该是:

    G术图书 (gb:推荐好书,书无中外)
    D码点评 (dd:麻辣评点,善意满盈)
    G说公论 (gt:时评杂文,新旧不拘)
    珠的自白(dm:大妈自述,每周一篇)
    海选文章(hd:得要相信,大妈法眼)

总之! 珠海的组委大妈们,决定开始坚持发文,方方面面细细同大家分享/交流

总之! 请大家告诉大家, 珠海生活中的技术社区 已经认真回归 微信,都来订阅吧!

订阅方法

GDG珠海 社区资源:


Author: Zoom.Quiet /mail / gittip / github