• nes 红白机模拟器 第7篇 编译使用方法


    模拟器,基于 InfoNES ,作者添加修改以下功能:

    1, joypad 真实手柄驱动程序(字符型设备驱动)

    2,原始图像只有256*240 ,添加 图像放大算法,这里实现了2种,a, 最近邻插值 b, 双线性插值

    (因为2440 速度太慢,采用双线性插值时,大概要3秒算一帧,等以后用 4412 在测试实际效果,本文还会更新)

    3,声音支持,原 InfoNES 中,使用 oss 播放声音,添加 使用 alsa 播放支持,

    4,LCD显示支持,原 InfoNES 中,使用 Gtk进行显示,作者添加直接绘制到 framebuffer 上,提供 ARM  在 LCD上使用。

    编译方法:

    1,下载源码, 可以使用 download zip 或者 clone 我的项目地址

    git 方法,需要电脑上装有 git 工具,ubunto 可以 apt-get install git , CentOS 可以 yum install git

    git 安装以后可以使用以下命令,克隆我的项目

    git clone https://github.com/nejidev/arm-NES-linux.git

    等待一会儿,就会在当前目录下生成 arm-NES-linux

    先编译 真实手柄,驱动,注意,这里是真实的 小霸王,红白机游戏手柄,不是 USB 的,更不是蓝牙的。 接线方式,下面还会重新介绍一下。

    cd arm-NES-linux/joypad/

    修改 Makefile 中的 内核源码地址

    我这里使用的是比较新的 4.1.36 ,相对于 2.6 有一些变化,3.4 基本上变化不大,如果在编译中遇到问题,

    需要自己解决,或者给我发站内消息也行。

    修改完 Makefile 后执行

    Make

    会编译生成一个 joypad.ko 将这个文件复制到 开发板的文件系统中。

    接着编译 InfoNES 主程序。

    回到 arm-NES-linux 位置

    cd ..

    进入 linux 文件夹

    执行 Make 即可,需要说明的是,这里是需要 alsa-lib 库的。你的ARM 板,必须已经有 alsa 声卡驱动,并且安装并配置了 alsa-lib 库的 头文件,库文件等。

    执行 Make 后会生成一个可执行文件 InfoNES

    将这个文件复制到 开发板文件系统的 usr/bin 中

    真实手柄,接线及使用说明。

    手柄的公头比较粗,如果使用万能板连接线,可能太细,所以我这里找了一个 DVD 上面拆下来的 手柄插座。以保正,接线连通性。

     

    如何 玩 ?

    你要找一些 rom ,放到 开发板文件系统中。

    在 开发板 终端上执行

    insmod joypad.ko #先加载手柄驱动

    InfoNES superML.nes 这样 ,LCD 上就能显示出来了。

    在播放的时候,有的 rom 会提示 Floating point exception ,这个是 InfoNES 本身的问题。 等以后有时间在修正。

  • 相关阅读:
    hdu 1166 敌兵布阵
    linux(debian)系统django配远程连接sqlserver数据库
    [机器学习] Coursera ML笔记
    UICollectionView使用方法补充(照片轮播墙)
    word中公式的排版及标题列表
    FZOJ2110: Star
    Windows 下的 Makefile 编写
    掌握VS2010调试 -- 入门指南
    Visual Studio 2010初学者的调试指南:Mastering Debugging in Visual Studio 2010
    AlphaGo:用机器学习技术古老的围棋游戏掌握AlphaGo: Mastering the ancient game of Go with Machine Learning
  • 原文地址:https://www.cnblogs.com/ningci/p/6883911.html
Copyright © 2020-2023  润新知