my nes project
可以使用Clion来进行编译和调试(可参考 https://lazyfoo.net/tutorials/SDL/01_hello_SDL/index.php 进行不同平台SDL的配置)
- 安装 msys2 (https://www.msys2.org/) 并按照网站的
Installation
下的指引完成环境的初始化 - 打开 MSYS2 MinGW 64-bit 安装SDL2库
pacman -S mingw-w64-x86_64-SDL2 --noconfirm
- 安装cmake (使用MSYS Makefiles)
pacman -S mingw-w64-x86_64-cmake --noconfirm
使用Clion需要将MinGW配置到Toolchains中去(还需要gdb), 还需要将Working Directory配置为
$PROJECT_DIR$/Resources
, 否则无法加载游戏
ubuntu平台可以使用如下命令安装
sudo apt-get install libsdl2-2.0 sudo apt-get install libsdl2-dev sudo apt-get install cmake
其他环境可参考 https://lazyfoo.net/tutorials/SDL/01_hello_SDL/ 来安装SDL2
https://cmake.org/documentation/ 来安装cmake(也可以通过不同平台的包管理来安装)
定位到 Sources/MySelf/NesX 目录
- 使用cmake生成Makefile
cmake -S . -G "MSYS Makefiles" -B build
- 进入build目录
cd build
- 构建exe文件
make
单独运行程序要求 SDL2.dll, libstdc++-6.dll, libgcc_s_seh-1.dll 动态库和exe在相同目录下
删除build目录就可以清除cmake,make产生的所有文件
因为使用cmake, 所以和Windows平台类似, 只是在构建时使用如下命令
cmake -S . -G "Unix Makefiles" -B build
或使用默认的Generators
cmake -S . -B build
- 炸弹人
- 火箭车
- 敲冰块
- 越野机车
- 气球大战
- 红巾特工队
- 碰碰车
- 超惑星战记
- 最终幻想1 英文版
- 塞尔达1
- 狡猾飞天德
- 龙战士3
- 洛克人2
- 银河战士
- 光之神话
- 恶魔城2
- 忍者龙剑传1
- 古巴战士
- 雪人兄弟
- 松鼠大作战1
- 松鼠大作战2
- 大金刚1
- 冒险岛1
- 碰碰飞车
- 反重力战士
- 冒险岛4
- 忍者龙剑传2
- 忍者龙剑传3
- 超级马里奥兄弟2
- 超级马里奥兄弟3
- 赤影战士
- 功夫猫党
- 米老鼠3
- 成龙之龙
- 魂斗罗力量
- 热血足球
- 热血新纪录
https://fms.komkon.org/EMUL8/HOWTO.html
https://fms.komkon.org/EMUL8/NES.html
https://patater.com/gbaguy/nesasm.htm
https://gamefaqs.gamespot.com/nes/916386-nes/faqs/2949
https://www.cnblogs.com/memset/archive/2012/07/18/everynes_nes_specifications.html
http://nemulator.com/files/nes_emu.txt
https://medium.com/@bokuweb17/writing-an-nes-emulator-with-rust-and-webassembly-d64de101c49d
http://www.dustmop.io/blog/2015/04/28/nes-graphics-part-1 (*)
https://github.com/AndreaOrru/LaiNES
https://github.com/aaronmell/6502Net
https://www.qmtpro.com/~nes/nintendulator/
http://www.chrismcovell.com/NESTechFAQ.html
http://content.atalasoft.com/atalasoft-blog/why-writing-an-emulator-is-fun-and-why-you-should-too
http://emulation.gametechwiki.com/index.php/Overclocking
https://codebase64.org/doku.php?id=base:6502_6510_coding
https://www.masswerk.at/6502/6502_instruction_set.html
http://www.my-testsite.co.uk/sites/cc/6502.html