Epson PF10 problems
dave04a at dunfield.com
Thu Dec 22 14:24:21 CST 2005
> I am currently working on an Epson PX8 system. I bought this on E-bay, so
I don't hve the PF10 so I can't offer specific help, however I will mention that
I have a few of the application ROMs for the PX-8 if you are interested in
> clocking (1.23MHz on the Eclk pin), it's accessing the ROM, but it also
> appears to be wandering around the memory map (outputs on the '138
> decoder that are not used for anything are being asserted at times). The
> address lines look odd to me, with pulses narrower than the Eclk on some
> of them.
> Since the ROM is socketed, I pulled it and read it out. It looks sane.
> Certainly no data bit is stuck high or stuck low, and all the address
> lines do something. Assuming it's like a 68xx processor, with reset and
> interrupt vectors at the top of memory, that looks sane too.
If you have correctly identified the vectors, they should point into the
ROM space ...
If you can get the exact CPU type, I may have a disassembler that will
let you peek into the startup code a little better.
> I suspect the microocontroller or the RAM. Alas both are SMD (and
> therefore a pain to remove), I have spares for neither and no way to get
> Any comments, suggestions, or things to check?
As noted above I don't have a PF10, so this is only general info.
If the code in the EPROM is good, it's likely bad RAM (stack), contention
on the bus causing corrupted reads, or a bad buffer (or even the micro)
also causing bad reads. - But I suspect you already know this.
Given that so many parts are SMD but the EPROM is socketed, the first
thing I would probably do is to use my EPROM emulator (or program
another 2764 if you don't have one) to do a simple single JMP instruction
infinite loop out of reset - this will tell you if the CPU can read and execute
code from the ROM, and will give you a much more stable bus to look at.
Assumign that works, I might then fill the ROM with NOPs (and a JMP at
the end to the beginning) so that I could see activity on the address bus.
MOV immediates can be used to get a specific (or incrementing) data
pattern every few cycles as well (now you know what I like to use an
EPROM emulator for this).
Lastly, one little tool I have in my "homebuilt gadgets" box is a 28 pin
"plug" attached to a little board with a ROM socket ,a bit of logic and
a really dumb UART (the kind you setup in hardware). What the logic
does is map one 256 byte block to read the status (RX ready, TX
ready) and Data registers (you don't need 256 bytes for this but it
was easy), and one 256 byte block to write the data register (The
low byte of the address is the data you write). To make it work in
either "high vector" or "low vector" systems, it's worth putting on
jumper to move the block to either end.
I've written a number of "Hardware Debug Monitors" which work on
this board, and don't use any RAM which enable me to to basic
Display/Write memory operations - With this tool, as long as the ROM
runs, you can "get inside" the BUS - Btw, I also include "loop read"
and "loop write" function - terminated by RESET - very handy when
debugging at this level.
dave04a (at) Dave Dunfield
dunfield (dot) Firmware development services & tools: www.dunfield.com
com Collector of vintage computing equipment:
More information about the cctalk