Hi Chris,
Mode 0 Either A or B as 8-bit output (active strobe after output)
Mode 1 Either A or B as 8-bit input (triggering interrupt request if
enabled)
Mode 2 Port A bidirectional plus interrupts and handshakes.
Mode 3 Both Ports individual bits defined as input or output, interrupts
used.
I could be wrong but it looks like you need to use Mode 2 to use
handshaking.
Geoff
Chris Coxall wrote:
>
> Hi,
>
> Does anyone have programming examples of using the Einstein
> user ports in mode 1 (eight bit import) in their Einey Docs.
>
> >From the Z80 PIO tech doc (can be found at
> http://mysite.wanadoo-members.co.uk/eineydocs/erdhsm.html
> <http://mysite.wanadoo-members.co.uk/eineydocs/erdhsm.html>)
>
> "Selecting Mode 1 puts the port into the input Mode. To
> start handshake operation, the CPU merely performs an input
> read operation from the port. This activates the Ready line
> to the peripheral to signify that data should be loaded Into
> the empty input register. The peripheral device then strobes
> data into the port input register using the strode line.
> Again, the rising edge of the strobe causes an interrupt
> request (it has been enabled) and deactivates the Ready
> signal. Data may be strobed into the input register
> regardless of the state of the Ready signal if care is taken
> to prevent a data overrun condition."
>
> I've linked a printer cable between a PC and Einey's printer
> port 8 data lines and swopped over the strobe and ACK lines.
> Strobe goes from PC to Einey's printer port's ACK pin 19 as
> listed in the Einstein Introduction manual. I know if I had
> used the user port Z80 PIO's B port Strobe from the PC would
> have gone to STB pin 10 of the user port as listed in
> Einstein Introduction manual and RDY to PC's ACK. But Ive
> used the printer port and set that as mode 1 which is wired
> to PIO.
>
> Data streams across from the PC ok but there is no hand
> shaking as specified by the tech doc. Get a lot of duplicate
> bytes.
>
> It could be that the Z80 PIO's hand shaking facility for
> mode 0 and 1 have not been made available for the Einstein.
> Or more probable I've missed something in the set up
> programming. If is this is the case the tech doc has not
> been helpful.
>
> In my Einey Mag back numbers lots of info on using mode
> 3-control mode. Nothing on mode 2. For mode 0-only mentions
> to set mode 0 by an OUT to the control of &0F. For mode
> 1-only mentions to set mode 1 by an OUT to the control of
> &47. There isn't any programming examples for mode 0 or 1.
>
> Any help appreciated.
>
> Regards Chris Coxall
>
>