我正在为 80 年代的微型计算机开发一些 Ghidra 加载器和文件系统模块。
我开始为 TRS-80 CoCo 的 .cas 磁带图像文件的 Loader 工作,因为 Ghidra 支持 6805 CPU。(它还支持 M68HC05TB 和 MC68HC908QY4)
我以前从来没有用过 CoCo 或任何带有 6809 的东西,所以不习惯它的说明。不过,我已经习惯了其他一些指令集。无论如何,我认为 6805 和 6809 对 CoCo 和 Dragon 32 二进制文件使用 Ghidra 会很有用。
但是当我将加载器模块准备好进行测试时,我发现它没有为 CoCo 的 ROM 生成与 Internet 上的反汇编相匹配的代码。许多字节根本无法解码为指令。
但是当我搜索 6805 时,我找不到说明指令集有很大不同的信息,尽管它们只是给人的印象是它应该与 6809 非常接近,而不是直接说出来。
那么我是否做出了错误的假设,我是否在 Ghidra 上混淆了一些东西,或者两个类似命名的芯片具有完全不同的指令集?如果设置正确,我是否可以使用 Ghidra 为这些 80 年代机器反汇编代码?
(我确定还有其他反汇编程序,但我只在这个项目中与 Ghidra 合作。)