卡西欧classwizard系列模拟器,汇编器,调试器,rop自动注入器
-
安装 xmake & Mingw & 下载字体
-
curl -fsSL https://xmake.io/shget.text | bash -
安装并配置 Mingw64 *(windows下选则Posix版本!!!不是win32版本)
-
字体 下载,重命名为unifont.otf,放到工程根目录
-
-
构建模拟器
cd emulator xmake f -p mingw xmake xmake run CasioEmuX ../models/fx991cnx -
可选
反编译器cd disas make -
可选 构建机型
下载对应机型的rom,命名为rom.bin放在models 目录下对应名称的目录内
注意:
由于casio版权问题,源码不包含任何rom,rom文件请自行找资源下载
如果想要fx991cnx的rom,请到release页面下载编译好的exe版本例子, fx991cnx:
cd disas./bin/u8-disas ../models/fx991cnx/rom.bin 0 0x40000 ./_disas.txt将_disas.txt复制到 models/fxcnx991目录
cp ./_disas.txt ../models/fx991cnx/修改
model.lua
设置rom_path为"rom.bin"
- 修复 Linux/Arch 下
xmake链接 Lua 版本不匹配导致的lua_newuserdata链接失败。 - 修复
fx991cnx机型在 UI 启动时读取ram_length/ram_start导致的异常退出,改为按硬件类型自动推导 RAM 显示区间。 - 修复
_disas.txt解析过程的异常崩溃,增加容错处理,避免terminate called without an active exception。 - 修复 GUI 相关线程生命周期问题(事件循环/监视线程),改善窗口关闭时稳定性。
- 默认配置中的机型路径已改为仓库相对路径(
models/fx991cnx)。
- 程序启动时会优先使用命令行传入的
model参数;若未传入则读取config.ini的settings.model。 - 当
model.lua或rom_path对应 ROM 文件无效时,会弹出启动引导窗口,提示输入机型目录(例如models/fx991cnx)。 - 引导文案会根据系统语言环境自动切换(中文环境优先显示中文)。
- 引导支持两种目录选择方式:手动文本输入,或通过桌面目录选择器(
zenity/kdialog)浏览选择。 - 引导校验通过后会自动写回
config.ini,后续启动将直接使用上次有效目录。 _disas.txt缺失不再导致程序直接退出,仅反汇编视图不可用。- 字体加载支持系统字体回退:优先使用
config.ini的settings.font,若不可用则自动尝试常见系统字体(如 Noto CJK/WenQuanYi)。