Original Hitachi/Renesas monitor JSP/Toppers thing
One thing you'll notice about this H8 stuff is that a lot of the information is in Japanese or Engrish and a lot of the tools are very old and show their age fairly badly. After looking around for ages and ages for a monitor that would work with a recentish set of GCC/Binutils/Newlib (Stuff that has been written with GCC in mind seems to all be built against h8300-coff or h8300-hms,.. it probably wouldn't take much to get them working with h8300-elf, but I wanted some that just worked) I found Takashi SHUDO's blog.. and after more looking about there I found the source and http://www.shudoshiki.net/electronics/h8mon/h8mon.html for a monitor application he has written, and by the look of it he's been writing it for a long time and is still using on his current projects. So lots of respect due to him. This builds off the bat with a stock setup of GCC 4.4.1, binutils 2.19.1 and newlib 1.17 built for h8300-elf.. it does seem to have a few small quirks, and if I can work out how the source works a bit better I will have a go at improving it, but for now it's here and it works!
I have found that sometimes it doesn't start up and it needs a little bit of plug-unplug-plug-unplug-plug love to get running so I'll have a look into. Also according to the memory check tool it has I'm having some memory issues. It would seem that DRAM isn't being refreshed often enough, editing RTCOR from 10 to 6 in init3069f.c has solved that. The documentation that came with the board says it should be 10, but those docs also say that the board has a max232 (nope) and a slightly different DRAM chip (the docs from OKI says 2048 refreshes/32ms for both though).
H8/300(H) 3069F Monitor Ver. 0.80 (c)2003,2004,2007 Takashi SHUDO Virtual vector table area : FFBF20 - FFC01F Monitor used RAM area : FFC020 - FFC475 Monitor stack end address : FFC608 Build date : 16:49:08 Aug 31 2009 >h [l] load : Load [x] [v] [a] [r] reg : Reg [[reg] val] [g] go : Go [address] [s] step : Step [b] break : Break [[address]|[- address]] [d] dump : Dump [-b|w|l] [start [end]] [m] mem : Mem [-b|w|l] address [value ...] [a] da : disAsemble [address [end]] [f] fill : Fill address end|@length value [c] call : Call [address] [ ] memck : Memory check [Start [End [First data]]] [ ] reset : RESET [v] ver : Version [h] help : Help >