StepFC
StepFC copied to clipboard
Make FC(NES) Emulator Step-by-Step 一步一步模拟红白机
Make FC(NES) Emulator Step by Step
Re: 从零开始的红白机模拟
项目说明
同时拥有VS2017和CodeLite的项目工程以保证在不同编译器上能够成功编译.
License
- StepFC::StepX 每个步骤, 基于 MIT, 重点是分享代码
- StepFC::StepFC 成品模拟器, 基于GPLv2, 重点是模拟器本身的可执行二进制文件
StepX列表
-
第0步: 加载NES ROM文件
- 读取文件是优先的.
- 但是打好基础也是非常重要的, 接口是一个好东西
-
第1步: 实现基本的CPU读写功能
- 需要了解CPU地址空间的布局哦
-
第2步: 6502汇编
- 实现反汇编是调试不可缺少的一环
-
第3步: 实现CPU指令
- 这一步比起前面就比较大了
- 实现所有的CPU指令
-
第4步: 背景渲染
- 实现第一次图像显示
-
第5步: 基本输入
- 实现标准双手柄的输入
-
第6步: 精灵渲染
- 然后就是渲染64个精灵
-
第7步: 实现中精度同步
- 基于初级的暴力的垂直同步
- 合并背景与精灵
-
第8步: 实现基本音频播放
- 用一个末端的状态机实现音频吧
-
第9步: 实现Mappper1234
- Mapper4是主要介绍的, 因为会触发IRQ
-
第A步: 实现基础混频
- 将音频准确度从60Hz提高至44.1kHz吧
- 但是距离1.79MHz还差了几十倍, 路还很长
-
第B步: 存档读档规范化
- 终于规范化存储档了
- SL大法好
-
第C步: 录像与回放
- 可以用于TAS了
-
第D步: 滤镜与滤波器
- 让用户体验更好一点
- FC甚至自带了滤波器
-
第E步: 扩展音频
- 扩展音频也是FC的一大亮点
- NSF探索
- 音频可视化
-
第F步: 全部成为F
- 重启
- 扩展输入
- 更精确地模拟
- FDS BIOS
- 更多的Mapper
- 游戏特化
- 平台优化
- 网络
- 图形用户接口
- NES调试
- 作弊器/金手指
- 以上内容均讨论, 内容留空