Finding an Unexpected Z80

A project log for Hacking the Brother WP-1250

Modifying a word processor/electronic typewriter from the 90s. Long term goal is to get this thing to load

furrysalamanderfurrysalamander 08/06/2019 at 23:190 Comments

On the top right corner of the board is a very interesting find: an HD64180ZP6!  According to Wikipedia (and the datasheet), it's a Z80 compatible processor (somewhat analogous with the Z180), with plenty of IO and a few serial interfaces.  Now we're talking!  In addition, the datasheet includes charts for all of the machine code and registers just in case there are any discrepancies we need to sort out.  With 18 data address lines, life was quite different from things like the ESP-32's serial memory.  Luckily, all of this means great things for what we can do to modify this typewriter.  Getting custom code running should be as simple as swapping out that mask ROM with something re-programmable, and making a dump of the ROM so we can reverse engineer the current firmware.  I've got a logic analyzer and some other tools that will be helpful for all of that.  

Now, for the other interesting find:

An HG62F gate array chip.  Now, this complicates a few things because there's no easy way to see inside and know what's going on, but I believe that it will simplify more.  If you look at the picture from last time (with some added notation): 

It looks like the keyboard and the LCD get piped through the gate array before they make their way over to the CPU.  The keyboard runs through some resistor arrays before it gets all the way there, but I'm guessing that the gate array decodes the keyboard so I don't have to implement that in software.  I'd bet that something similar is going on with the LCD, both of which would be a nice surprise.  It will be interesting to see how much flexibility we have, and what we're stuck with.  

The flash chips and some DIP-32 sockets have been ordered from Digikey, and they should arrive on Friday.  In the meantime, I can start attempt to figure out how the CPU is communicating with the gate array, and that should give me a head start when it comes time to start writing my own firmware.