Back in 2006 I had a side job as an IT journalist. I wanted to draft my articles while away from the computer on the Pocket PC, as laptops were really out of my reach, and back in the day the localized input methods (touchscreen keyboards) were paid and expensive apps.
I ended up with a text editor supporting various formats and inpit languages, implemented in quite dreadful verbose C#, as I didn’t know any better.
It's because then the other fields, such as the source and destination registers can stay in the same place across various opcodes. In the rare cases there's an immediate field, such as the jump offset, it uses what would otherwise be a register or an operand.
Disassembling RISC-V is then quite straightforward because of this feature.
I ended up with a text editor supporting various formats and inpit languages, implemented in quite dreadful verbose C#, as I didn’t know any better.
https://sourceforge.net/projects/ppc-edit/