80C32 emulation?

Gordon JC Pearce gordonjcp at gjcp.net
Sat Feb 9 18:35:19 CST 2008

On Sat, 2008-02-09 at 13:31 -0500, Dave McGuire wrote:
> On Feb 9, 2008, at 7:00 AM, Gordon JC Pearce wrote:
> > Offtopic-ish, but does anyone know of a good 80C32 emulator for Linux?
> > There seem to be a lot of closed-source ones for Windows, but since
> > there's no apparent way to add specific emulated devices to them I  
> > can't
> > see how useful they'd be for what I'm doing.
>    SDCC comes with one; have you looked at that?  There's also j51  
> (written in Java) but I've not messed with it.

SDCC does look good for this.

>    What's your project, if you don't mind my asking?  I do stuff with  
> mcs51-architecture processors pretty much all the time.

Basically I'm trying to reverse-engineer the firmware of a couple of
late-80s Alesis HR-16 and HR-16B drum machines.  They use a 32kx8 EPROM
for the firmware, a pair of 512kx8 ROMs for the sampled sounds, a big
custom ASIC for the sample playback and an 80C31 for the clever stuff.
The firmware contains the locations in the sample ROMs of the start and
end of each sample.

The only thing is, a simple disassembly of the ROM leads nowhere,
possibly because the contents are scrambled in some way.  I suspect but
haven't been able to prove that some of the lower address bits are
flipped, possibly to avoid routing problems on the board.

It's worth noting that the Alesis MMT-8 is based on almost identical
hardware (much simpler though, and I have a schematic for this.  Tony
Duell would be pleased to note that there's not a custom chip in sight!)
and has a "normal" ROM, ie. running strings(1) on it will show up the

I can give you a dump of the ROMs if you feel like having a go.


More information about the cctalk mailing list