Showing posts with label ZX80. Show all posts
Showing posts with label ZX80. Show all posts

Friday, August 18, 2023

ZX81 Bus Extender: The Expansion Board Solution

Leave a Comment
Adding expansion boards to the back of a ZX81 is always a slightly terrifying business, a fear compounded with each consecutive item tacked behind the little wedge.


The wobbly expansion of expansions is a near unsolvable problem when using off the (distant in time and space) shelf products, however, when building our own expansions there's really no need to suffer. What's the answer to the wibbly wobbly's? Why a decently designed Bus Extender board and case of course.


ZX81 Bus Extender with an Assortment of Add-ons

We're not embarking on a wheel-reinventing adventure here. The concept of a Bus Extender isn't a groundbreaking discovery; Over the past four decades, resourceful enthusiasts have crafted their versions for the ZX80 and 81. The only hiccup? Laying your hands on one. But behold the magic of our modern age: securing your very own Bus Extender is a breeze. A simple solution? Just place an order for a PCB at any of the numerous fabrication houses like JLCPCB, PCBWAY or AISLER. Now, of course, you'll need something to order, and lo and behold, we've got you covered with the ZX81 Bus Extender gerber files conveniently linked below. Your expansion dreams are just a click away!


Refer to http://www.zx81stuff.org.uk/zx81/hardware/MaplinExtender for details
Maplin Bus Extender Interface (available at one point in the UK)

The Extender boasts a well-thought-out design, strategically accommodating up to three expansion cards and further expansion possible behind (Think ZXpand or similar). Its layout incorporates a three row hole arrangement on the printed circuit board, with ZX81 BUS 1a duplicated twice, offering the flexibility to house either two-row expansion headers or card slots – you know, the same kind that snugly attach to your trusty ZX81. This Extender knows how to cater to your every expansion whim. You'll require at least one expansion header to attach the thing to a ZX81 or ZX80, and  additional headers of your own choosing for accomodate the expansion cards.


zx81 bus extender / expansion edge connetor
ZX81 Adventures 3x3 Bus Extender

Naturally, a bus extender isn't fully dressed without its cosy enclosure. Picture it nestled within a polished case, a snug retreat ensures seamless operation, cradling expansion cards of your creation. The case boasts an elegantly simple design, seamlessly complementing your ZX81's rear. Oh, and don't forget those rubber feet (12.5mm*12.5mm*3mm(L*W*H)) – they elevate both style and stability, and some M3 screws to hold it together.


zx81 bus extender / expansion edge connetor in 3d printed case
ZX81 Adventures 3x3 Bus Extender in Handy Dany Case with Cards

Project Files

If you find these files useful, flip me coffee or beer etc.





Read More

Saturday, May 12, 2018

ZeaMouse V2, USB Mice for the ZX81 & Spectrum Revisited: Part 1

Leave a Comment
A year ago I knocked up the ZeaMouse, a USB mouse interface for the ZXpand and ZX81. ZeaMouse is a USB to digital mouse expansion board built around an Adrunio USB host shield. A year on it seems like a good time to revisit the project and make some improvements.

Last time part of the fun was building a simple Arduino clone as part of the ZeaMouse. Unfortunately this kept the size of the end product much larger than it needed to be. This time an Arduino Pro Mini 3.3v has replaced the DIY Arduino, matching this with a USB Mini Host shield and some additional components on a home-brew shield sees significant reductions in interface size.

The USB Mini Host shield forms the core of the project and is designed to fit under an Arduino 3.3v Pro mini. The USB shield has all the abilities of it's bigger brother but does with some but comes with some power supply limitations. By default the combination of 3.3 volt Pro Mini and USB host  combination delivers 3.3 volts to an attached USB device. For some hardware the voltage may not be high enough, although all the USB mice (if a limited selection) I've tested have work without issue.

3.3v Arduino Pro Min, USB Shield and ZeaMouse V2 PCB.
The USB Host shield can be modified to deliver 5v to connected devices if required. Details of the conversion can be found on the Circuits@Home website. The modification bypasses the Arduino's 3.3v regulator, meaning that whatever is used to supply power to the RAW inputs must be rated a 5v or lower else you risk frying an attached USB device. The ZeaMouse is powered from the 5v lines on the digital joystick port, so the modification is fine for our purposes. (But check your Micro Computers Specs first).

I decided against using 4066 switching ICs on ZeaMouse V1 as it made designing the single sided PCB a lot simpler. This time, with design simplicity and ease of build-ability screams for the use of 4066s. With the Arduino Pro Mini operating at 3.3 volts and the ZX81 at 5 volts, 4066s provide a simple way of keeping these conflicting voltages separated.


ZeaMouse V2 Circuit Diagram
Although I got a couple of double sided test PCBs fabricated, the ZeaMouse boards are pretty much designed with home PCB making in mind. Only the bottom of the board really needs to be made up. There are a couple of via's must be connected with some straight wire on the top of the board should you choose to build a single sided PCB.

Building the interface is straight forward. The hardest part is probably soldering the Pro Mini and the USB shield together. Constructing ZeaMouse shield itself is a breeze, and will only take about 20 minutes maximum.

Other than two 4066s, the only other components required are pin headers and IC sockets, although all of these are optional. The Arduino and USB Host along with the ICs could be soldered directly to the shield PCB. The only required header is J4, used to enable or disable RS232 communication with the ZXpand. J4 should be left open if using the ZeaMouse on any micro computer other than a ZX81.

ZeaMouse v2 Shield completed.
The connection pads or pin headers on the far end of the shield board should be wired up to an Atari joystick cable or DB9 socket. I had a cable from a broken controller to hand; care needs to be taken re-purposing cables for fear of sending 5 volts down the wrong line. The TX serial out is the one non-standard connection, it's specifically for the ZXpand+, and should be routed to RX on the ZXpand+.

ZeaMouse v2 interface for the ZX81 & ZXpand / ZX81, the ZX Spectrum and other 8 bit micros
Next time I'll cover the firmware and take a look at the mouse in action. No need to wait until then if you're keen to get going; All the files and firmware required to build the interface are a already available on the ZX81 Projects and Programs to Download Page.

See more entries for this project: Part 1Part 2
Read More

Sunday, November 19, 2017

The Sinclair ZX–Micro Computer: System Variables Comparison Chart

Leave a Comment
Sometimes when you've written an application for the ZX81 or ZX Spectrum you wish to port it to the other, or even back to the ZX80. Sometimes you've used a system variables and you need an easy reference chart to look up correct system address on the target system and move on. But you say, there is no chart, or there was no chart until now.

I got tired of looking through the manuals every time I need to check some System Variable values and decided to just put them all in a chart. Hopefully you might find it similarly useful. A PNG graphic is available below, and if preferred a PDF version can be downloaded.

If anybody notices some glaring or even slightly disturbing error, let me know and I get them ironed out and fixed up.


One final thought, It's quite interesting to see just how many changes were made to the ZX line of computers in the space of 3 or 4 years. There are the obvious physical differences of course, then there are changes witnessed in the System Variables above.

Read More