Replies: 1 comment
-
At least it's good to have the manual (any), at least the glossary. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I've been using Ghidra and writing scripts for it since 2014 and several years ago ran into problems with a few processor implementations. On those occasions I've delved (with help from some members of the NSA Ghidra team) a bit into the language files for those processors.
I've always wished there was a "how-to" guide for creating new processors and/or a worked-out example implementation, so that I could tinker with processors in Ghidra on my own.
I was trying to think of straightforward architectures that might be suitable as examples, which I suppose would mean, at a minimum, freely available design details, software development tooling like compilers, and cheap/easy availability of either actual hardware or virtualized implementations.
I wonder if Donald Knuth's MMIX might fit that bill? I don't know much beyond that It's a 64-bit RISC-like architecture designed specifically to be useful for teaching and has 256 65-bit general purpose registers, 256 possible opcodes, and supports fixed point and floating point arithmetic. Quite a few software emulations are available as well as at least one VHDL implementation. Cross-compilers targeting MMIX, and even a UNIX-like microkernel OS for MMIX.
I'm definitely not the right person to lead implementing MMIX for Ghidra, or to do heavy-duty coding, but could probably contribute to at least testing, code review, and/or documentation, particularly once I retire within the next 1-2 years.
Beta Was this translation helpful? Give feedback.
All reactions