C64 硬件模拟器:不只是用来玩游戏

antirez 开源的 c64-hw-sim 把 C64 主板拆到芯片级别来仿真,可以拔芯片、短接引脚,用来学习和排查故障,代价是速度只有三分之一。

想玩 Commodore 老游戏,几乎任何平台都能找到 C-64 模拟器——但这类模拟器的抽象层次太高,本来就是为了玩游戏而生。antirez 的 c64-hw-sim 项目目标完全不同:它做的是低层仿真,把 ASSY 250407 主板上的每一颗芯片、每一条连线,连同板上的所有元件都纳入模拟范围。

如果你好奇过某颗芯片缺失时会发生什么,或者某个引脚被短接到地、被强行拉高会怎样,现在都可以在软件里试,不必担心弄坏珍贵的古董硬件。

对某些电子“虐待狂”来说,这本身就足够好玩;但它的真正价值在于学习硬件——既可以理解抽象层面的原理,也能用来排查自己手头那块板子的问题。很多时候,不同的失效模式会表现出相同的结果,比如能导致显示输出失效的原因就有很多;但至少你可以在软件里复现某个故障,再拿真机去验证它是不是元凶——前提是,这个仿真确实覆盖了你遇到的那类问题。

处理器、CIA、SID 和 VIC-II 采用的是 [Andre Weissflog](也就是 [flooh])的周期精确(cycle-accurate)仿真代码。视频、音频和电源部分的模拟电路并未仿真,所以并不是所有故障都能在这里复现。即便如此,它仍是一件不错的工具——只是别想着拿它跑游戏:即便在高配的现代硬件上,它的运行速度也只有实机的三分之一左右。用来做诊断够快了,想玩 Maniac Mansion 就别指望,更别提 Elite 了。

说到 Elite,你知道移植版和原版的源代码都已经公开并带有注释吗?如果你想要的是能真正拿来玩的模拟器,从 Teensy 这类微控制器到个人电脑,各种平台上都有。

感谢 [Salvatore] 提供的线索!

收录于

讨论

0 条评论

同分类推荐

硬件