Any info on ZX81 Serial Ports using the SIO chip?
Any info on ZX81 Serial Ports using the SIO chip?
I have a plethora of ttl serial boards such as a Text to Speech module, ESP8266, Bluetooth, Arduino, PIC, Propeller and the Raspberry Pi and thought it would be fun to interface them with the ZX81. I realize wilf has a 8251 based board but I don't have that chip and I want to use parts I have. I do have the Z80 SIO chip but I don't think it is easily interfaced and I haven't seen much on the web about it. I don't want to reinvent the wheel . So is there a circuit using the SIO?
If there isn't a way to use the SIO I was thinking of using a PIC chip I do have that has a serial port and an internal 48 MHz oscillator. With some simple address decoding I could use a port like EF and or it with the IOREQ line so I could use it on the PIC as an interrupt. Then sample the data bus for the character, convert to ascii or back to ZX81 (if needed) and send it over serial. I probably should also have another I/O port to set baud rates and to flag if the data is ascii or binary.
If there isn't a way to use the SIO I was thinking of using a PIC chip I do have that has a serial port and an internal 48 MHz oscillator. With some simple address decoding I could use a port like EF and or it with the IOREQ line so I could use it on the PIC as an interrupt. Then sample the data bus for the character, convert to ascii or back to ZX81 (if needed) and send it over serial. I probably should also have another I/O port to set baud rates and to flag if the data is ascii or binary.
2X Timex Sinclair 1000, ZX81, ZX80Core, 5X 16K Ram Pack, ZXBlast, ZX P file to Ear Input Signal Converter, Elf II
- 1024MAK
- Posts: 5118
- Joined: Mon Sep 26, 2011 10:56 am
- Location: Looking forward to summer in Somerset, UK...
Re: Any info on ZX81 Serial Ports using the SIO chip?
The Zilog SIO chip can indeed do normal RS232 type serial ports (two of them actually) if you add suitable level shifters.
At work we have a diagnostic system (yep, Z80 based) that monitors the health of other computer systems via serial links, it uses a number of SIO chips to do this.
I don't have a schematic diagram to hand for a SIO circuit.
Have you had a look at the data sheet? It's on the Zilog web site.
Mark
At work we have a diagnostic system (yep, Z80 based) that monitors the health of other computer systems via serial links, it uses a number of SIO chips to do this.
I don't have a schematic diagram to hand for a SIO circuit.
Have you had a look at the data sheet? It's on the Zilog web site.
Mark
ZX81 Variations
ZX81 Chip Pin-outs
ZX81 Video Transistor Buffer Amp
Standby alert
There are four lights!
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb
Looking forward to summer later in the year.
ZX81 Chip Pin-outs
ZX81 Video Transistor Buffer Amp
Standby alert
There are four lights!
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb
Looking forward to summer later in the year.
Re: Any info on ZX81 Serial Ports using the SIO chip?
If you only require TX and RX then you may already have a solution. If you need the full UART experience with handshaking on CTS/RTS etc then the SIO is a better option though these features are not free of charge - you'll have to code for their usage on the zeddy as they are communications protocol defined. Start reading the peripheral guide at PP 207. Interfacing the chip is easy enough as they are designed to work together. You can forget about interrupts on the zeddy though.
My opening hint is of course talking about ZXpand. Owners of the Classic board will need to solder 3 wires but that's pretty well documented. The serial connections are already broken out on the newer Plus model, along with the beginnings of helpful commands to use the functionality from BASIC.
Sorry - this is not meant to be a sales pitch but all the features you seem to require may already be available to you. That said, as you've already got the SIO I think you should probably go ahead and build a board for the fun of it!
My opening hint is of course talking about ZXpand. Owners of the Classic board will need to solder 3 wires but that's pretty well documented. The serial connections are already broken out on the newer Plus model, along with the beginnings of helpful commands to use the functionality from BASIC.
Sorry - this is not meant to be a sales pitch but all the features you seem to require may already be available to you. That said, as you've already got the SIO I think you should probably go ahead and build a board for the fun of it!
Re: Any info on ZX81 Serial Ports using the SIO chip?
I'm afraid no. It uses the 8251 instead.
kind regards Paul
In theory, there is no difference between theory and practice. But, in practice, there is.
Re: Any info on ZX81 Serial Ports using the SIO chip?
This document might help: http://www.blunk-electronic.de/train-z/ ... 80-SIO.pdf
Re: Any info on ZX81 Serial Ports using the SIO chip?
Thanks for all the info
I found the first link informative, especially the post about the board that uses an Atmega IC. That one is similar to my idea of using a Microchip PIC IC. The advantage to using a microcontroller is that you could easily make it read an I/O port and convert to Serial, I2C or SPI. The disadvantage is that to do this it also has to run a program so you need a fast microcontroller to keep in synch.
When I looked into the SIO the links I found mentioned using the Z80 INT line and as sirmorris mentioned you cannot use the INT line for this purpose. That made me think you couldn't use the SIO but further research found this sitehttp://www.sbprojects.net/projects/izab ... hints.html which mentions the polling mode of the SIO which can be used with the ZX81 as long as you keep the reads and writes in a polling loop.
Hopefully the SIO/0 chip I have will work. Years ago I worked for a small company that had their own Z80 based industrial controller and they did some house cleaning and I grabbed a junk box they were throwing out. It had plenty of goodies in it including some Z80-As and Z80 peripheral ICs.
I found the first link informative, especially the post about the board that uses an Atmega IC. That one is similar to my idea of using a Microchip PIC IC. The advantage to using a microcontroller is that you could easily make it read an I/O port and convert to Serial, I2C or SPI. The disadvantage is that to do this it also has to run a program so you need a fast microcontroller to keep in synch.
When I looked into the SIO the links I found mentioned using the Z80 INT line and as sirmorris mentioned you cannot use the INT line for this purpose. That made me think you couldn't use the SIO but further research found this sitehttp://www.sbprojects.net/projects/izab ... hints.html which mentions the polling mode of the SIO which can be used with the ZX81 as long as you keep the reads and writes in a polling loop.
Hopefully the SIO/0 chip I have will work. Years ago I worked for a small company that had their own Z80 based industrial controller and they did some house cleaning and I grabbed a junk box they were throwing out. It had plenty of goodies in it including some Z80-As and Z80 peripheral ICs.
2X Timex Sinclair 1000, ZX81, ZX80Core, 5X 16K Ram Pack, ZXBlast, ZX P file to Ear Input Signal Converter, Elf II
Re: Any info on ZX81 Serial Ports using the SIO chip?
My ZX81 web server is using an serial board, having a Z80-CTC as baudrate generator and a Z80-SIO as serial interface (running SLIP protocol) to connect to the Internet. The board was made in the 80ies and is using an ECB bus connetor to connect to the ZX81:
http://www.hardwarebook.info/ECBbus
My ZX81 web-server: online since 2007, running since dec. 2020 using ZeddyNet hardware
http://zx81.ddns.net/ZxTeaM
http://zx81.ddns.net/ZxTeaM
Re: Any info on ZX81 Serial Ports using the SIO chip?
This document might also help: http://z80.info/zip/um0081.pdf
Re: Any info on ZX81 Serial Ports using the SIO chip?
Thanks siggi for mentioning the CTC. I was about to toss the whole idea out since I only had a 2.457MHz oscillator for the SIO clock so I could do only 38400 baud and I need 9600 as well. Do you have a schematic of the board so I can see how the CTC and SIO are interfaced?
2X Timex Sinclair 1000, ZX81, ZX80Core, 5X 16K Ram Pack, ZXBlast, ZX P file to Ear Input Signal Converter, Elf II