Z80 PIO

ZX-Team Forum
Antworten
rune
User
Beiträge: 23
Registriert: 02.04.2016, 19:17

Z80 PIO

Beitrag von rune » 23.03.2019, 20:46

Hello everyone. I have built a ZX81 I/O board I got from Heinz. I think its designed by Joachim, but I may be wrong.

A photo of the board should be attached
20190323_164151.jpg
ZX81 PIO
20190323_164151.jpg (82.83 KiB) 1058 mal betrachtet
Can anyone point me towards documentation or assist on how to use it please.

Even details on how to test if its working would be good.

Dave

Benutzeravatar
ZX-Heinz
User
Beiträge: 1767
Registriert: 05.12.2011, 14:45

Re: Z80 PIO

Beitrag von ZX-Heinz » 23.03.2019, 23:09

You did not set a jumper to choose the addresses. Look to
http://forum.tlienhard.com/phpBB3/viewt ... =50#p21241
for a test program (PIOC7CF.p).
It would be good to use Joachim's small LED-monitors to display the signals.

Benutzeravatar
Paul
User
Beiträge: 2940
Registriert: 10.03.2010, 12:01
Wohnort: Germanys west end

Re: Z80 PIO

Beitrag von Paul » 23.03.2019, 23:16

Maybe I don't see this in the correct angle but it seems you soldered the connector in the wrong position. It should be moved one hole to the right?
Kind regards Paul
Theoretisch ist zwischen Theorie und Praxis kein Unterschied.
Praktisch allerdings wohl.

rune
User
Beiträge: 23
Registriert: 02.04.2016, 19:17

Re: Z80 PIO

Beitrag von rune » 23.03.2019, 23:29

Paul, I hope not... The connector is between the two white vertical lines. I have 5 positions to the left and 4 to the right.

Left to right...
Across the top is d7, /ramcs, slot, d0, d1 etc and on the bottom is 5v, 9v, slot, gnd, gnd, clock etc. This matches the Zeddy manual so I think/hope its all OK.

Heinz, thanks for the link. I'll try connecting a LED tomorrow. You can either tell me well done or not on IRC.

Benutzeravatar
ZX-Heinz
User
Beiträge: 1767
Registriert: 05.12.2011, 14:45

Re: Z80 PIO

Beitrag von ZX-Heinz » 24.03.2019, 11:06

@rune: You can find the address table in
http://forum.tlienhard.com/phpBB3/viewt ... =50#p21242
Don't forget a 1-2k resistor in line with the LED.
The LS32 chip and the diode is not needed for your application, it is used together with a special backplane develloped by the zx-team in the 90ies.

rune
User
Beiträge: 23
Registriert: 02.04.2016, 19:17

Re: Z80 PIO

Beitrag von rune » 24.03.2019, 12:08

Hello Heinz

thanks, I've just got it working. I used 570 Ohm resistors as the example of (other) LED wiring I found online said to use 407 Ohms. It works, but I have a dead LED - I had to use a mixture of what was in my box so greens, reds and white :)

Got a video, but its a bit too large to send/post. I'll replace the dead LED and remake the video.

To the man cave....

Benutzeravatar
ZX-Heinz
User
Beiträge: 1767
Registriert: 05.12.2011, 14:45

Re: Z80 PIO

Beitrag von ZX-Heinz » 24.03.2019, 13:49

@rune: I drive my card (855-PIO) using H4TH. More comfortable than ZX81-BASIC. How do you do it?

rune
User
Beiträge: 23
Registriert: 02.04.2016, 19:17

Re: Z80 PIO

Beitrag von rune » 24.03.2019, 14:06

Hi Heinz

So far only ZX81 using Joachins demo/test programs. I'll look at H4th next.

Question - The address information you pointed me to shows 4 values for each jumper ABCDEFGH

Using A, I have C7 CF D7 DF. I saw D7 DF were for OUT, are C7 CF for IN? Or maybe something different?

Dave

Benutzeravatar
ZX-Heinz
User
Beiträge: 1767
Registriert: 05.12.2011, 14:45

Re: Z80 PIO

Beitrag von ZX-Heinz » 24.03.2019, 18:33

rune hat geschrieben:
24.03.2019, 14:06
Using A, I have C7 CF D7 DF. I saw D7 DF were for OUT, are C7 CF for IN? Or maybe something different?
@rune: I do not have a Z80 PIO, I use the 855-chip with three channels. The Z80 PIO has two channels. You should have a look into the manual
http://www.z80.info/zip/z80piomn.pdf
The four addresses on the board are use as follows:
C7: The address for channel A to send control sequences (programming the chip).
D7: The address to send/receive data to/from channel A.
CF/DF: The same for channel B.
Let us consider an example. Suppose you want to send some bytes to channel A. Then (mode 0) first you have to send the control byte #0F to the CTRL-address C7 . Channel A is now programmed for output. Then you can send bytes (as much you want) by sending to address D7.
In H4TH this would read as follows. (The code pgm is: Stack ->L; ld C,L ; Stack->L; ld B,L; OUT (C),B; ret )

: OUT ( CHR ADR OUT ) HEX CODE D7 4D D7 45 0ED 41 C9 ;C ;
: PAUSE 100 0 DO LOOP ;
: PIOA 0F C7 OUT FF 0 DO I D7 OUT PAUSE 0 D7 OUT PAUSE LOOP ;

Try this, but check the control byte (#0F) before by reading the manual (page 10). May be I was wrong.

rune
User
Beiträge: 23
Registriert: 02.04.2016, 19:17

Re: Z80 PIO

Beitrag von rune » 24.03.2019, 19:00

Thanks again Heinz, I have that done. It takes a while to translate the PIO manual to English. Sometimes Google translate causes even more problems.

The OUT commands are good now. I will look at IN later. For now, I'm happy it works.

Dave

Antworten