Can't believe I forgot to get back to this lol
fenugrec wrote:
Interesting, that hasn't been my experience... Have an example ? I recently loaded 6Z68A, 4M860, and ghidra is picking up nearly everything. Not saying it's perfect, but it's at least as good as IDA .
Yea, stuff like this happens with every ROM. For CF48D I spent a few hours manually going through the entire ROM just to ensure that I created all the proper functions, as Ghidra missed quite a few. And it's not like it's missing complex things either, it's missing basic functions like shown below.
Attachment:
KB56C Ghidra Missed Function.png
Quote:
Not quite. IIRC, I was just referring to Ghidra not being able to figure out what a RAM address would be if it was called using offsets. So if r4 = 0xFFFF1234, r5 = 0x01, a line that used r4 + r5 as the address would result in Ghidra just not showing any address at all, rather than the expected result of 0xFFFF1235. But I haven't found why Ghidra does a great job most of the time, then randomly just can't figure it out no matter what in a few sections.
Quote:
Sometimes I enable "Scalar Operand References" but I haven't really paid attention to what exactly changes.
I leave that disabled, as it causes Ghidra to interpret waaayy too many data bytes as addresses. Even with it disabled, Ghidra still does it, but just not as frequently.