I've written disassemblers for many processors, but writing a good disassembler for the SH proved more difficult than for many other processors, because branch targets are often loaded into registers ahead of time. shdis tries to track register contents in order to determine the branch targets.
Back in 1997 there didn't seem to be any good commercial disassembler for the SH. These days I'd recommend buying a copy of the Advanced edition of the IDA Pro disassembler instead. It's more expensive (obviously), but also a lot more sophisticated. I haven't actually used IDA Pro to disassemble any SH code, but I've been very happy with its performance for other target processors.
shdis is distributed under the terms of the Free Software Foundation's General Public License, Version 2. If you agree to the terms of the license, you may download it.
Download shdis-0.1.tar.gz ( 32K, Monday, 04-Aug-2003 04:07:56 MDT)
There is a public domain SH disassembler dissuperh.c by xvi. He has also written disassemblers for other processors, which may be found on his web page.
There is an SH1/SH2 disassembler "sh2d" by Bart Trzynadlowski.
Last updated March 30, 2004 Copyright 2003, 2004 Eric Smith |
|