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
Uh oh!
There was an error while loading. Please reload this page.
-
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