Tools

= Some software tools = To help with haxing ROMs etc.

freediag

 * Project page and some builds: freediag @ sourceforge
 * Source code : freediag @ github

nisprog
For the moment, nisprog is just the name I give to special freediag builds that include some Nissan functionality. Eventually it will be forked, and link to freediag's "libdiag" backend. I post some of these builds on the RR forums. TODO:link

IDA
'nuff said.

Adding extra processor defines can be useful to show the peripheral register names, and fill in the reset vector (IVT) with vector names.

User dschultz @ RR forums started this with a sh3.cfg file to replace the stock file included with IDA. I expanded on the idea and added definitions for the secondary vector table so popular in Nissan ROMs. That is, they have only a partial vector table at address 0; the power-on reset code then sets the vbr register to point at the complete table either @ 0x1000, 0x2000, or 0x0002 0004 depending on the firmware revision.

I keep my expanded configs on my github repo

WinOLS
Useful even in its demo version, it makes it easier to find, visualize & edit maps in a ROM.

Renesas HEW
Renesas High-performance Embedded Workshop, their complete IDE including compiler, assembler and simulator (very useful for analyzing sections of code).

NOTE concerning simulator : it simulates the core quite well, but is *very* limited in peripheral support. Only some DMA features and very very simple timers are simulated. Important stuff missing:


 * SCI
 * HCAN
 * Everything ATU related
 * Everything else

Very cool thread on how to get started with HEW : Hacking with HEW

Renesas FDT
Renesas Flash Development Toolkit, utilities for reflashing SuperH mcus.