出于怀旧,做了文曲星 nc2000 和 nc1020 的模拟器。模拟器参考了泄漏的芯片资料,可以运行真机 rom ,效果和兼容性都堪比真机。
给没用过的人也说下:文曲星是以前没电脑时候的神器,不但可以玩游戏,还可以写汇编、BASIC 、C 语言(lava)。OP 的汇编和 C 语言就是以前在文曲星上学的。
截图
模拟
支持以下 feature:
- 运行从真机 dump 的 rom
- 兼容真机软件,和各种自制内核
- 下载, 上传文件, 保存状态
- 发音,蜂鸣器
- 4 灰度
- 液晶格栅效果, 液晶残影, 液晶抖灰度, 液晶屏侧面的小图标
- 热键唤醒, 闹铃唤醒
基本上真机有的都支持。 不过串口和红外暂时没有模拟(因为也没什么大用)。
附 NC2000 电路图:
兼容性
经测试支持的 rom:
- nc2000c
官方 3.5 - nc2600c
官方 3.2,3.5 内核 by Sun,4.1 内核 by qiqi,4.1 内核保留剑桥版 by qiqi,非常 4.2 内核 by 41824984,5.0 内核 by epc - 哈电族 nc2000
官方 3.6B(注:nc2600 本质上跟 nc2000 本质上是同一型号,可以互刷) - nc1020
官方 3.64.9 ( wqx 编程俱乐部) - 哈电族 nc1020
官方 5.2
软件兼容性(在 nc2600 上测试):
- bin 兼容性:测试了 nc2600 能找到的几十个 bin 软件,只有一个 sun 加密的 hgp 浏览器 2.5 不能用(用了 CPU 指令的未定义行为)
- lava 兼容性: 几乎 100%
- basic 兼容性:几乎 100%
跟其他模拟器对比
之前有其它前辈也做过模拟器,不过都有些遗憾:
- cc800 模拟器(曾半仙),pc1000emux(lee): 型号较老,软件资源不丰富,没有 lava
- nc3000emux(lee): 因为缺乏芯片资料,发音部分无法模拟。游戏和单词都没有声音。
- nc1020 模拟器(android 版,js 版):芯片 io 模拟不全,一些功能靠 hack 内存实现,兼容性不好。容易死机,甚至查单词会乱码。使用的是从 GGV 模拟器里提取的 rom 而不是真机 rom 。
新的模拟器在前人工作基础上,实现了 NC2000 的支持(也顺便支持 NC1020),参考了泄漏的芯片资料做完善,兼容性堪比真机(至少 NC2000 可以这么说)。弥补了上述遗憾。
源码和程序
源码: https://github.com/wangyu-/NC2000
下载: https://github.com/wangyu-/NC2000/releases
交流
项目主页 wiki 里可以找到一个文曲星群。很多 wqxnet/wqxsky/emsky 论坛上的大佬都在,比如曾半仙、lee 、诗诺比、SAILOR-HB 、_dragon 、eastsun 、isword 、红色激情、epc 、电脑蛙蛙...等等等等




