Hi Henk! Thanks for the help! What I am trying to do
is build an IO
mezzanine board for the N8VEM 6809 host processor board.
I currently have a 6809 host processor board with a 6809 CPU, RAM, ROM,
and
a 6821 PIA to 8255 PPI "bus bridge" to the ECB. The device appears on the
ECB as a peripheral to the Z80 "bus controller".
What I am building is an IO mezzanine board for the 6809 host processor
which will plug in on top of the 6809 host processor and provide some IO
devices.
I used a similar solution to add an FDC to my blinkenboard 6809-based
module. I used the PIA 6821 socket. Remove the 6821, install "piggy-back"
the board with the FDC and put the 6821 also on that piggy-back board.
For peripherals all signals are the same: E, R/W*, data and address lines,
IRQ* and RESET*. I might have forgotten one.
Currently, it supports the 6551 ACIA (working), 6840
PTM
(working), and a pair of 6522 VIAs (not installed yet). The ACIA is
working
since I can communicate with the 6809 host processor and IO mezzanine
board
using my crude monitor (minibug). I've written a small program to make
the
output of timer #3 make a square wave so I am pretty sure the PTM is
working
as well.
My major goal of the IO mezzanine board project is to be able to run the
Motorola ASSIST09 debug monitor to include the hardware single step mode.
The PTM is interfaced to the CPU in the usual way however, the output of
timer #1 is also connected to the /NMI line of the CPU. I am since the
CPU
/NMI is active low and the output of PTM timer #1 is active high (I
think),
I am running the signal through an inverter.
I have not checked the PTM datasheet, but if the output pulse from the PTM
is a positive one, you need the inverter. Any small signal NPN transistor
with a resistor of say 10k or a bit lower can be used as inverter. The
collector is tied to NMI* and a pull-up resistor of 4k7 is all needed.
If you have a spare (open collector) inverter of a 74LSxx device, that's
fine too of course. Just remember that more than one device might want to
activate NMI*, IRQ*, or FIRQ* ...
That's why I am asking about the Motorola EXORset
because I believe the
ASSIST09 was released to support that hardware and I would like to check
my
design with it. If you or anyone else has any information on the hardware
ASSIST09 was originally written to run on please let me know.
OK. Sorry, no info of the EXORset here.
Thanks in advance and have a nice day!
Andrew Lynch
PS, I just got the ACIA code (sort of) working in the ASSIST09 monitor.
There is still some sort of bug as the input handling is rather screwy but
I
can get some things to work.
You use the 6551 ACIA. I assume that from a programming view it is more
or less identical to the 6850? I have experience with the 6850 ACIA. I can
have a look on the ACIA code you wrote. Do you use an interrupt for each
received character?
- Henk.