ZXpand and ZX80 - charlierobson/ZXpand-Vitamins GitHub Wiki
Overview
ZXpand+ retains a level of compatibility with ZX80 computers but some modest level of effort is required to enable it.
-
As with ZXpand classic, one issue affecting non-US model ZX80s is that the video out socket is obstructed when the ZXpand is fitted. If you don't need to use the video socket, e.g. if you have a composite video mod with flying lead fitted, then there is no problem. Otherwise some mechanical method of offsetting the board is needed such as an extender cable / PCB, or using a modified video cable. The US model has the video out in a slightly different place and is therefore unaffected.
-
The ZX80 lacks a ROM select line on its edge connector and this means that the internal ROM cannot be over-ridden by external hardware and needs to be swapped for a suitable replacement which has the ZXpand drivers added. No modern direct replacement chip exists but there are solutions in the form of adaptors to make or buy. Fortunately pretty much every ZX80 I've ever met seems to have the ROM socketed.
-
Due to the way ZX80 is constructed the memory map is full of shadows and these are not easily removed. This not only limits the expansion possibilities of memory but unfortunately also clashes with the decoding logic of ZXpands. In the classic model a jumper exists to put the decoding logic into a ZX80 compatible mode, but no such jumper exists on ZXpand+ due to device pin count limits. ZXpand+ can change its decoding logic with a simple flashing procedure, but this will need to be done every time you swap between ZX80 and ZX81.
Buying hardware
- A kit containing pre-programmed EEPROM and extension cable is available
- An expansion connector extender
- An (E)EPROM adapter
- Other options may be available as you're reading this
- Please contact SirMorris via email or message at SellMyRetro
Setting up ZXpand+
One-time setup
- Download the ZX81 and ZX80 CPLD programming files and stash them somewhere safe
- Swap ZX80 ROM for ZXpand-enhanced version
- Test ZX80
All being well the system will behave as normally expected.
Every time the ZXpand+ is moved to the ZX80 from the ZX81
- Put the ZX80/zxpplus.xsv file in the root of your SD card and insert it in ZXpand+
- Attach ZXpand+ to ZX80 using a suitable method and power the system
- ZX80 is held in reset during programming so no screen activity is expected.
- Right-hand LED should come on and remain on
- Wait 2-4 minutes - some occasional, brief, blinks will be seen on left LED
All being well the system should behave as normal after flashing. Except now pressing Z will yield the CAT keyword, and pressing enter afterwards should yield a directory listing. LOAD "SOMEFILE" will load 'somefile.o' from the SD card.
When satisfied, remove the sd card containing the .xsv file. Or delete it. Otherwise you will be waiting again after the next boot. This is harmless but irritating.
Restoring ZX81 mode
- Put the ZX81/zxpplus.xsv file in the root of your SD card and insert it in ZXpand+
- Attach ZXpand to ZX81 and power on
- ZX81 is held in reset during programming so no screen activity is expected.
- Right-most LED should come on and remain on
- Wait 2-4 minutes - some occasional, briedf, blinks will be seen on left LED
All being well the ZXpand+ sign-on banner will be seen on-screen as expected when the process completes.
Remove the .xsv file from the card or delete it as before.
Oh no! I accidentally interrupted the flashing process! Is it broken now?
No. Worry not :D Just start again. The interface won't work temporarily, but the boot-loader is very resilient and should correct most problems at next power-on.
The future?
It may be possible to add a switch to the ZXpand+ in order to swap between 80/81 operating modes. This could be of use to people regularly switching between the two systems. It would probably preclude the use of the 'TurboSound' enhancer board, but this may not be of much concern to most.