Hello! I want to decompile SuperH-4 executables for Dreamcast with IDA Pro. However, IDA currently does not support decompiling SuperH-4 platform. I feel like I am pretty confident with C++ and had already done some plugins for IDA Pro, although not so complicated. I guess the whole heavy lifting is done on the decompiler side is transforming the binary code to microcode to the ctree? It’s clear that for each different CPU architecture you need to implement binary code → microcode translator, but is the ctree to decompiled code transformation universal or I would need to write my own too? It seems that the hexrays.hpp is not complete enough to write your own decompiler driver based on hexrays. I want my decompiler to be fully compatible with IDA workflow and information stored in the database. Is there is any comprehensive guide on how to create a decompiler driver for a certain architecture based on hexrays SDK? Thanks!
Hi,
Unfortunately, currently this is not possible for third parties.
In 2020 I demonstrated (in ida plugin contest) how to hijack an existing disassembler and decompiler to decompile a custom architecture. It’s not super stable but if you have a lot of time and patience then you can adapt this approach to any architecture. Since I could not find the past plugin contests on hex-rays.com I uploaded it to GitHub - milankovo/bf-decompiler.
This is utterly unfortunate. Is this at least planned in the near future?
Hello @void_17
I am afraid that this isn’t currently on our roadmap.
While it’s probably not the answer that you were hoping for, we’re still keeping an eye on user interest and open to reconsidering this in the future.
just make hexrays as opensource
and this will be enough