UIDE Universal IDE adapter cards for Z-80 computers
Contents
About the uIDE project
The uIDE concept is not terribly new (search for GIDE and you will see what I mean, although these adapters are not available any more).
The idea was to produce a low cost IDE adapter, suitable for connecting to Z-80 computers via a shim board that fits between a (socketed) Z-80 and its main board socket. From the shim, a 40 way IDC cable is connected to the uIDE adapter board, then a CF card or DOM plugs into the other end (if there is space inside your Z-80 computer, you may be able to connect the shim and uIDE cards directly together without a cable). uIDE cards are "universal" because their I/O base address is fully configurable via a row of 2 position jumpers on the board.
Once the hardware is installed, drivers need to be written (see below).
uIDE-16 can be configured for use on any Z-80 microcomputer such as the CPC range of computers. It is called "uIDE-16" because it decodes all 16 address bus lines to provide access to the IDE ATA registers as is required by the Amstrad CPC machines.
uIDE-8 is a similar design that just decodes the low 8 bits of the Z-80 adddress bus, and this can be used on the PCW and most other Z80 machines. uIDE-16 has a user-configurable 8-bit mode that allows it to work with 8-bit addressed I/O as well. In this mode, some components (U1 and its socket and smoothing capacitor) may be left off the board. However, uIDE-8 is slightly smaller and cheaper than uIDE-16.
Project status
As of now (Early Feb 2017) uIDE-16 is in the design phase, but the boards have been laid out. Click the images around the page for a closer look. uIDE-8 was prototyped and tested successfully on the PCW 9512. A FID based driver has been written that supports Amstrad CP/M and Locoscript (but it cannot cold boot the machine).
Update 05/07/17: As a result, the first batch of 10 uIDE-8 boards has been ordered but I found that there was an error in the order that will make them unusable, so I added the following to my original order:
- 10 uIDE-8s (corrected)
- 10 Z80 LHS Shims
- 10 Z80 RHS Shims
- 10 PCW Expansion port adapter with composite video
- 10 PCW Expansion port adapter "lite"
Update 13/02/17: All boards have been re-ordered with expedited shipping, including uIDE-16. Some layouts were altered slightly. I still need to build one uIDE-16 and CPC CP/M Plus drivers for testing. The order comprises of:
- 10 uIDE-16
- 10 6128 expansion port to Z80 bus adapters
- 10 Z80 LHS Shims
- 10 Z80 RHS Shims
- 10 PCW Expansion port adapter with composite video
- 20 uIDE-8
- 20 PCW Expansion port adapter "lite"
Feature list
- Compact design, only 4 ICs (uIDE-16) or 2 ICs (uIDE-8) and a smattering of discreet components. Board measures 79x60mm (uIDE-16).
- Implemented using cheap, readily available parts (7400-series ICs only, plus a single transistor, some capacitors, resistors and LEDs).
- Can be connected to the PCW expansion port (see below) or internally via a Z80 shim card (note, this requires a socketed Z80).
- Driver supports Amstrad CP/M Plus only at this time (it is implemented as a FID).
- A separate driver exists for Lifeboat CP/M 2.2 on the TRS-80 Model II that can be ported on demand to other CP/M 2.2 variants.
- The CP/M driver runs the IDE device in LBA / 8 bit mode, so DOMs or CF cards are recommended (at least 128MB is recommended).
- Fully programmable I/O address decoding (via on-board jumpers). Initial I/O range (uIDE-16, for the CPC driver) is FEF0-FEF7 and (uIDE-8, for the PCW driver) is C8-CF, but you can change this to suit your own hardware / driver.
- Can be used on any other Z80 computer with a socketed processor.
- Implements a standard bus connector that exactly matches the Z80 pinout. Further expansions are planned, including a Z80 bus board, serial port, parallel port (possibly a clone of the CPS8256), mouse port, dk'tronics sound clone (PCW), etc.
Z80 Shims
These small cards are inserted between the Z80 and its socket, and present all 40 pins of the CPU via a 40 way header. This header is the "Z80 Bus" that the uIDE cards connect to.
Choose the one that fits best inside your machine. A CPC6128 needs the left hand shim, although space is very tight under the keyboard (the processor sits directly behind the expansion port) and it's not known yet whether it will fit properly. PCW machines have more space, so either shim should fit.
Machine-specific expansion port adapters
Use one of these cards if you prefer to connect your uIDE card to the machine's expansion port rather than via its Z80 socket.
PCW 8256/8512/9512
These cards allow connection of a uIDE card to the 50 way expansion port on the back of the machine. They are designed to support the PCW edge connector type port, but the European Centronics type port might be accommodated if a suitable connector exists (50 way Centronics, 2.54 header pitch). In addition they provide access to the PCW's 5v and 12v power supply, as well as other signals from the card edge connector. One variant has a small composite video circuit so that you can connect an external monitor to the PCW.
CPC 6128
The CPC 6128 bus adapter is a card which plugs directly into the 6128's expansion port with the front face of the board facing away from the CPC. The image shows an early render from OSH Park. Per the other adapter cards, uIDE plugs into it via a 40 way IDC cable. Direct connection is likely to be challenging because the expansion port is so close to the underside of the computer.
BOMs
For self assemblers, I drew up a parts list broken down by board with Farnell order numbers. I recommend you shop round for these parts, after seeing what they look like on Farnell. Also, you have options where there are alternatives shown. In particular, with the edge and IDC connectors, consider how you wish to mount and connect the boards and select the connector appropriately. The exapansion interfaces are designed to have an edge connector soldered to the back of the board, so that it sits over the slot with the components facing away from you (if you are sitting in front of the computer), but if you choose to use a 50 way IDC connector (with cable to expansion port) then you can mount it on the component side of the board.
Prices
This is a summary of the prices I have posted to the forum.
Item | Price |
---|---|
uIDE-8 bare board | £7.50 |
uIDE-8 assembled | £42.50 |
uIDE-16 bare board | £9.00 |
uIDE-16 assembled | £47 |
Z80 Shim bare board (LHS or RHS) | £2.50 |
Z80 Shim assembled (LHS or RHS) | £17.50 |
PCW expansion port adapter with composite video output | £4.00 |
PCW expansion port adapter with composite video output (assembled) | £29.00 |
PCW expansion port adapter "lite" (without composite video output) | £3.00 |
PCW expansion port adapter "lite" (without composite video output, assembled) | £18.00 |
CPC 6128 expansion port adapter | £3.00 |
CPC 6128 expansion port adapter (assembled) | £18.00 |
128MB DOM suitable for use with uIDE-8 and uIDE-16 | £4.00 |
Z80 bus cable (40 way IDC-IDC ribbon) | £5 |
Payment via PayPal, please, in Sterling (GBP). All prices are plus shipping and PayPal fees (3.5%).
Please note, if you do not have space to connect the adapter board directly to the uIDE device, you will also need a Z80 bus cable cable. This is a standard 40 way IDC female to female ribbon commonly found in PCs to connect the motherboard to an IDE HDD, so if you have one lying around you don't need my offering.
More information
PCW uIDE prototype demonstration videos
Copyright and disclaimer
All designs presented here are copyrighted works.
Copyright (C) Jon Bradbury 2017.
- VCF Forum http://www.vcfed.org/forum/forum.php member "JonB"
- CPCWiki Forum http://www.cpcwiki.eu/forum/forum/ member "JonB"
- Amstrad.ES Forum member "JonB"
You may use these designs for personal or commercial purposes, on the condition that you indemnify me and the CPCWiki against damage to your computer or other connected hardware or data contained on any attached media.
The designs are supplied as-is and there is no warranty that they are fit for any particular purpose.