Table of Contents
Introduction
Zeta SBC is an Zilog Z80 based single board computer. It is inspired by Ampro Little Board Z80 and N8VEM project. Zeta SBC is software compatible with N8VEM SBC and Disk I/O boards.
Pictures
Complete Board
Zeta SBC with ParPortProp and a Floppy Drive
Specifications
Zeta SBC features following components:
- Z80 CPU
- 16550 UART - for connecting a console
- 8255 PPI - can be used for attaching a hard drive using PPIDE or controlling some external devices
- SMC FDC9266 floppy disk controller - NEC 765A / Intel 8272 compatible, with integrated data separator
- 512 KiB of battery backed SRAM
- 512 KiB of flash memory
- RTC
Zeta SBC is compact and easy to build:
- Footprint of an 3.5“ floppy drive (100 mm x 170.18 mm) and PCB can be mounted under a 3.5” drive.
- Uses only through hole components.
- Assumes using commonly available 3.5“ floppy drives (not many people have 5.25” drives and even less 8“ ones). Although it should work with 5.25” drives too.
- Only 3 configuration jumpers.
- Easy to use flash memory instead of UV EPROM.
- PCB mounted connectors, no need to build cables.
- Uses widely available components
- An easy way to get a “taste” of CP/M era computing.
Hardware Documentation
Schematics
Zeta SBC - Schematics - Color - 1.0.pdf (see attachments at the bottom of this page)
Zeta SBC - Schematics - BW - 1.0.pdf (see attachments at the bottom of this page)
PCB Version 1.0
Zeta SBC - Board - Color - 1.0.pdf (see attachments at the bottom of this page)
PCB Version 1.1
Zeta SBC - Board - Color - 1.1.pdf (see attachments at the bottom of this page)
PCB Version 1.2
Zeta SBC - Board - Color - 1.2.pdf (see attachments at the bottom of this page)
PCB Version 1.3
Zeta SBC - Board - Color - 1.3.pdf (see attachments at the bottom of this page)
Input/Output ports
- Compatible with N8VEM SBC and N8VEM Disk I/O boards (FDC part only, no XT-IDE)
- 30h (aliases 32h, 34h, 36h) - FDC Main Status Register (N8VEM Disk I/O uses 36h)
- 31h (aliases 33h, 35h, 37h) - FDC Data Register (N8VEM Disk I/O uses 37h)
- 38h (aliases 39h - 3Fh)
- Write - FDC Diginal Output Register (DOR), also known as latch.
- Bit 0 - TC
- Bit 1 - MOTOR (0 = Motor off, 1 = Motor on)
- Bit 2 - MINI
- Bit 3 - P2
- Bit 4 - P1
- Bit 5 - P0
- Bit 6 - DENSEL (0 = High density, 1 = Low density)
- Bit 7 - ~FDC_RST (0 = FDC RESET active, 1 = normal operation)
- Read - FDC Digital Input Register (DIR)
- Bit 0 - ~DC
- Bits 1-7 - unused
- N8VEM FDC compatibility notes:
- Bit 1 is inverted, so upon system reset floppy drive motor(s) will be turned off
- Bit 6 is inverted, but it is unlikely that it will cause any compatibility problems, as modern 3.5“ drives don't use this signal
- Bit 7 of the latch is used differently (and incorrectly) on N8VEM Disk I/O as an input to ~DC (disk change) line. In Zeta SBC this output is connected to FDC RESET input, and allows software controlled FDC reset.
- ~DC (disk change) output from floppy drives can be read from DIR register, bit 0. It could be used by the system to detect floppy disk change. In such case CP/M should be warm rebooted.
- 60h-63h (alias 64h-67h) - PPI Registers
- 68h-6Fh - UART Registers
- 70h (aliases 71h-77h) - RTC Registers
- Write:
- Bits 0-3 - unused
- Bit 4 - RTC Chip Enable
- Bit 5 - RTC Write Enable
- Bit 6 - RTC Clock
- Bit 7 - RTC Input
- Read:
- Bit 0 - RTC Output
- Bits 1-5 - unused
- Bit 6 - Configuration Jumper (JP1)
- Bit 7 - unused
- 78h (aliases 79h-7Bh) - RAM Page Select Register (CFG1)
- Bits 0-3 - RAM page selection (A15-A18)
- Bits 4-7 - unused
- 7Ch (aliases 7Dh-7Fh) - ROM Page register (CFG2)
- Bits 0-3 - ROM page selection (A15-A18)
- Bits 4-6 - unused
- Bit 7 - ROM disable (~ROM_ENA signal)
- N8VEM compatibility notes:
- Zeta SBC qualifies ~WR signal when accessing configuration registers, so accidental read access to them won't corrupt their content. This makes programs like SURVEY.COM work without crashing the system.
- Zeta SBC doesn't check A1 when accessing configuration registers range (78h-7Fh), so write access to any of 78h-7Dh addresses will change CFG1 (78h-79h in N8VEM SBC) and write access to 7Ch-7Fh will change CFG2 (7Ch-7Dh in N8VEM SBC). This should not cause any compatibility problem, unless in the future N8VEM SBC or some N8VEM I/O devices will use 7Ah-7Bh or 7Eh-7Fh, and some software will try to access these ports.
Interrupts
- UART interrupt output is connected to the ~INT of the Z80
- FDC interrupt output has three connection options, selected by JP3 jumper:
- JP3 position 1-2 - FDC interrupt output is connected to the ~INT input of the Z80. This setting is compatible with N8VEM interrupt and fast interrupt modes.
- JP3 position 2-3 - FDC interrupt output is connected to the ~NMI input of the Z80
- JP3 not installed - FDC interrupt line is not connected to the CPU. This setting can be used with polling I/O mode.
Jumpers and Connectors
Jumper JP1 - CONFIG
JP1 is a software configuration jumper. It can be read by software using RTC port (70h) bit 6. This jumper is not currently used by software.
Jumper JP2 - PIN25_GND/VCC
JP2 connects pin 25 of the parallel port P4 to either GND or Vcc (+5). Note that pin 1 is the pin that is closer to the parallel connector.
Warning: If JP2 is set incorrectly, it is possible to create a short circuit of the 5 Volt power supply.
Jumper Position | Description |
1-2 | P4 pin 25 is connected to the ground |
2-3 | P4 pin 25 is connected to Vcc. Use this position with PPIDE, make sure to set jumper K1 on PPIDE to position 2-3. Please refer to PPIDE documentation for more information. |
no jumper* | P4 pin 25 is left open |
* default
Jumper JP3 - FDC_INT/NMI
Jumper Position | Description |
1-2 | FDC interrupt is connected to the ~INT input of Z80. This is the default setting. Both interrupt and polling mode will work with it. |
2-3 | FDC interrupt is connected to the ~NMI input of Z80. |
no jumper* | FDC interrupt is not connected. FDC polling mode will work with this setting |
* default
Connector P1 - POWER
Connect regulated +5V power supply to this connector.
Pin | Description |
tip (the inner contact) | Positive terminal - +5V |
barrel / sleeve | Negative terminal - ground |
Connector P2 - RESET
P2 is the connector for an external reset button.
Connector P3 - SERIAL
P3 is the serial port connector. It is normally used for connecting a console or terminal. P3 uses pinout similar to that of IBM AT serial port (with some signals missing). Use a null modem cable to connect to a PC.
Pin Number | Description |
1 | Not used - Not connected on the SBC |
2 | RX |
3 | TX |
4 | DTR |
5 | GND |
6 | DSR |
7 - 9 | Not used - Not connected on the SBC |
shield | GND |
Connector P4 - PARALLEL
P4 is the parallel port connector. It is connected directly to the 8255 PPI and can be used for attaching an IDE hard disk using the PPIDE mini board, for controlling external devices (e.g. printer, watering system), or for extending the SBC (e.g. connecting an LCD display and a keyboard). The pinout of P4 is the same as in other N8VEM boards (SBC V1, SBC V2, SBC-188).
Pin Number | Description | Pin Number | Description | Pin Number | Description | Pin Number | Description |
1 | PC0 | 9 | PC4 | 17 | PB7 | 25 | GND or Vcc (see JP2) |
2 | PA0 | 10 | PA4 | 18 | PB0 | 26 | GND |
3 | PC1 | 11 | PC5 | 19 | PB6 | ||
4 | PA1 | 12 | PA5 | 20 | PB1 | ||
5 | PC2 | 13 | PC6 | 21 | PB5 | ||
6 | PA2 | 14 | PA6 | 22 | PB2 | ||
7 | PC3 | 15 | PC7 | 23 | PB4 | ||
8 | PA3 | 16 | PA7 | 24 | PB3 |
Connector P5 - FLOPPY
P5 is the floppy interface connector. It uses PC compatible pinout. When using a PC floppy cable with a twist, Drive A (ID 0) is the drive after the twist and Drive B (ID 1) is the drive before the twist. When using only one FDD, either a twisted cable can be used, or the BIOS can be patched to use Drive B.
Pin Number | Description | Direction (relative to the SBC) | Connected to |
1-33 | Odd pins are GND | GND | |
2 | High Density. This signal is ignored by most (all?) 3.5” drives. | Output | DOR (bit 6) |
4, 6 | Not used | No connection | |
8 | Index Pulse | Input | Schmidt Trigger, FDC (IDX) |
10 | Motor On B | Output | DOR (bit 1), Buffer |
12 | Drive Select A | Output | FDC (US0, US1), Decoder |
14 | Drive Select B | Output | FDC (US0, US1), Decoder |
16 | Motor On A | Output | DOR (bit 1), Buffer |
18 | Direction | Output | FDC (LCT/DIR), Multiplexer |
20 | Step | Output | FDC (FR/STEP), Multiplexer |
22 | Write Data | Output | FDC (WDOUT), OC Buffer |
24 | Write Enable | Output | FDC (WE), OC Buffer |
26 | Track Zero | Input | Multiplexer, FDC (FLT/TR0) |
28 | Write Protect | Input | Multiplexer, FDC (WP/TS) |
30 | Read Data | Input | Schmidt Trigger, FDC (~DSKD) |
32 | Select Head | Output | FDC (HD), OC Buffer |
34 | Disk Changed | Input | DIR (bit 0) |
Connector P6 - 5V
P6 is the 5V power output for the floppy drive. Alternatively it can be used instead of P1 for supplying power to the board. It is recommended to use a polarized header for P6 to avoid incorrect power polarity which probably will destroy FDD or components on the SBC board.
Pin Number | Description |
1 | 5V |
2 | GND |
Bill of Materials (BOM)
BOM Notes
Disclaimer: I did my best to make sure that components listed in this BOM will be compatible with Zeta SBC. Obviously I didn't order all of components listed here, and I was not able to actually verify that they will work. Please make sure to double check specifications on manufacturer's and seller's web site before ordering. Please let me know (or update the BOM) if you found any problems or incompatibilities.
Many components have multiple part numbers listed in BOM. There are some differences between various part numbers, such as:
- Different manufacturer (e.g. Texas Instruments vs. National Semiconductor for IC). Usually these ICs will be 100% compatible and won't have any differences in specifications. For some other components (e.g. connectors) different manufacturer also means different quality. It for example is likely to get a better quality connector from TE (was AMP/Tyco) than from some obscure manufacturer (e.g. components sold under Jameco ValuePro brand).
- Specification differences
- Different IC families (LS, ALS), different technologies (TTL and CMOS). They have different specs, and you might prefer to use certain IC family.
- Different IC speed/frequency, especially for CPU, PPI, and memory.
- Mechanical differences, especially for switches. Pick whatever suits best in your enclosure.
- Minor differences. For example: RoHS or Pb-free vs. regular components; thickness of gold plating on connectors; frequency stability of oscillators and crystals.
- Price differences
If unsure what to order, read specifications on seller's and manufacturer's web sites. There are some datasheets available in Zeta's Documentation folder. Also please read Replacement Notes below. Finally, consult people on N8VEM news group.
BOM
Component type | Reference | Description | Quantity | Possible sources and notes |
PCB | Zeta SBC PCB Version 1.0 | 1 | Order from Sergey | |
Battery Holder | BT1 | CR2032 batter holder, 20 mm lead spacing | 1 | Jameco 355434, Mouser 122-2620-GR, 122-2520-GR, 122-2420-GR, Radio Shack 270-009 |
Capacitor | C1 - C28 | 0.1 uF ceramic, 5.08 mm lead spacing | 28 | Mouser 80-C323C104K5R Jameco 25523 |
Capacitor | C29 | 47 uF, 6.3 V electrolytic | 1 | Jameco 31114, Mouser 667-ECA-1HHG470 |
Capacitor | C30 | 10 uF, 6.3 V electrolytic | 1 | Jameco 94221, Mouser 667-ECA-1HHG100B |
Diode | D1 | 1N4148 | 1 | Jameco 36038, 179215; Mouser 512-1N4148, 771-1N4148-T/R |
Diode | D2, D3 | Bi-level LED indicator | 1 | Jameco 2006676; Mouser 696-SSF-LXH240GYD |
Standoff | HOLE1, HOLE2, HOLE3, HOLE4 | Standoff, M3 male / female, 20 mm | 4 | Mouser 534-24317, 534-25505, 855-R30-3012002 Note: The length of male end of these standoffs is 8 mm. It is too long for some floppy disk drives (you'll notice that standoff doesn't go completely inside the floppy drive mount hole). In this case cut a few millimeters using a file or a fine saw. |
Screw | HOLE1, HOLE2, HOLE3, HOLE4 | Screw, M3, 6 mm | 4 | Use regular floppy or CD-ROM drive mounting screws. Mouser 534-29311 |
Connector | JP1, P2 | 2×1 pin header | 2 | Jameco 108338; Mouser 649-78229-102HLF |
Connector | JP2, JP3 | 3×1 pin header | 2 | Jameco 109576; Mouser 649-69190-103HLF, 649-78229-103HLF |
Connector | P1 | DC jack | 1 | Jameco 101178; Mouser 806-KLDX-0202-A |
Connector | P3 | DE9M, right angle PCB mount | 1 | Jameco 104943, 614441, 614459, 614432; Mouser 806-K22X-E9P-N, 806-K22X-E9P-N-99 (teal color), 571-1734351-1, 571-7478404 |
Connector | P4 | 13×2 pin header | 1 | Jameco 53495; Mouser 649-68602-126HLF, 649-77313-824-26LF Note: don't use shrouded connector, as it will interfere with the standoff and other components. |
Connector | P5 | 17×2 pin header shrouded | 1 | Jameco 68583, 753547; Mouser 737-BHR-34-VUA |
Connector | P6 | 2 pin header with friction lock | 1 | Jameco 232266, 613931; Mouser 571-6404562, 571-3-641126-2, 571-3-641215-2 Corresponding female connector: Jameco 234798; Mouser 571-770602-2; Contacts (2 contacts needed): Jameco 234923, 736501; Mouser 571-770666-1 It is recommended to use a polarized header to avoid incorrect power polarity. |
Resistor | R1 | 10 Ohm, 1/4 W | 1 | Jameco 690380 Mouser 291-10-RC |
Resistor | R2 | 10 kOhm, 1/4 W | 1 | Jameco 691104 Mouser 291-10K-RC |
Resistor | R3, R4 | 470 Ohm, 1/4 W | 2 | Jameco 690785 Mouser 291-470-RC |
Resistor Array | RR1 | 4.7 kOhm, 6 pin, bussed resistor array | 1 | Mouser 264-4.7K-RC, 652-4306R-1LF-4.7K |
Resistor Array | RR2 | 1 kOhm, 6 pin, bussed resistor array | 1 | Mouser 264-1.0K-RC, 652-4306R-1LF-1K |
Switch | SW1 | Tactile switch, right angle | 1 | Mouser 611-PTS645VL39LFS, 611-PTS645VL58LFS, 611-PTS645VL83LFS, 611-PTS645VL15LFS (Note: these switches have different actuator length, the number at the end of the part number denotes the length measured from ground terminal - from 3.9 mm to 15 mm. You might want to select it according your own preferences, for example the enclosure type you want to use, and whatever you want the reset button to stick out of the enclosure, or to stay hidden inside) Jameco 1953575, 202956 |
IC | U1 | Z80 CPU, CMOS, 40 pin DIP - Z84C00xxPEC | 1 | Mouser 692-Z84C0010PEG, 692-Z84C0008PEG Jameco 35781, 35705 (It appears that Jameco doesn't have 8MHz+ Z80 any more) Frequency of U21 (CPU clock) oscillator should be less or equal to CPU frequency. 8MHz CPU recommended for 1.44 MB floppy disks support. |
IC | U2 | 512 KiB flash, 32 pin DIP - 29F040, 29C040, 39SF040 | 1 | Mouser 804-39SF0407CPHE; Jameco 242667, 242659 |
IC | U3 | 512 KiB SRAM, 32 pin DIP - AS6C4008-55PCN | 1 | Mouser 913-AS6C4008-55PCN; Jameco 1927617 Note: Jameco 242448 and 157358 (BS62LV4006P) should work too, but they are way too expensive |
IC | U4 | 16550 UART | 1 | Mouser 701-ST16C550CP40-F; Jameco 27596, 288809 |
IC | U5 | 8255 PPI | 1 | Mouser 968-CP82C55AZ, 968-CP82C55A; Jameco 52417 Unicorn Electronics (order 82C55); |
IC | U6 | FDC9266 FDC | 1 | Order from Sergey; Utsource; eBay (beware, some sellers have way too high price on this IC). Can be replaced with FDC9268, in this case U23 frequency should be 16 MHz. |
IC | U7 | 74LS273 | 1 | Mouser 595-SN74ALS273N, 512-DM74ALS273N, 595-SN74LS273N, 595-SN74AHCT273N; Unicorn Electronics; Jameco 47386, 308398, 45049 |
IC | U8 | 74LS240 | 1 | Mouser 595-SN74ALS240AN, 595-SN74LS240N, 595-SN74AHCT240N; Unicorn Electronics; Jameco 47141, 308291, 45014 |
IC | U9, U10, U11 | 74LS174 | 3 | Mouser 595-SN74ALS174N, 595-SN74LS174N, 595-SN74AHCT174N; Unicorn Electronics; Jameco 46931, 301760 |
IC | U12 | 74F139 | 1 | Mouser 595-SN74ALS139N, 595-SN74LS139AN, 595-CD74ACT139E, 512-74ACT139PC, 595-SN74AHCT139N; Unicorn Electronics; Jameco 46623, 301268, 63773, 239011 |
IC | U13 | 74LS138 | 1 | Mouser 595-SN74ALS138AN, 512-DM74ALS138N, 595-SN74LS138N, 595-SN74AHCT138N; Unicorn Electronics; Jameco 46607, 46608, 301233, 44927 |
IC | U14 | 74LS125 | 1 | Mouser 595-SN74LS125AN, 595-SN74AHCT125N; Unicorn Electronics; Jameco 46501 |
IC | U15, U16, U17 | 74LS32 | 3 | Mouser 595-SN74ALS32N, 512-DM74ALS32N, 595-SN74LS32N, 595-SN74AHCT32N; Unicorn Electronics; Jameco 44134, 47466, 47467, 295515 |
IC | U18,U19 | 74LS14 | 2 | Mouser 595-SN74LS14N, 595-SN74AHCT14N; Unicorn Electronics; Jameco 46640, 295460, 44935 |
IC | U20 | 74LS06 | 1 | Mouser 595-SN74LS06N; Unicorn Electronics; Jameco 46359 |
IC | U21 | CPU clock oscillator, full can | 1 | See frequency selection note for U1. 4 MHz: Jameco 27967, 354889; Mouser 815-ACO-4-EK, 520-TCF400-X 6 MHz: Mouser 520-TCF600-X 8 MHz: Jameco 27991; Mouser 815-ACO-8-EK, 520-TCF800-X (see Mods section below) 10 MHz: Jameco 27887; Mouser 815-ACO-10-EK, 520-TCF1000-X 20 MHz: Jameco 27932; Mouser 815-ACO-20-EK, 520-TCF2000-X |
IC | U22 | 1.8432 MHz oscillator, full can | 1 | Mouser 520-TCF184-X, 73-XO54B184 Jameco 27879 |
IC | U23 | 8 MHz oscillator, full can | 1 | Mouser 815-ACO-8-EK, 520-TCF800-X Jameco 27991 |
IC | U24 | MAX232A | 1 | Mouser 595-TRS202ECN, 701-SP202ECP-L, 700-MAX202CPE, 700-MAX232ACP Jameco 875384, 1127599, 1800552, |
IC | U25 | DS1302 | 1 | Mouser 700-DS1302, 700-DS1302N Jameco 176778, 780481, 1194644 |
IC | U26 | DS1210 | 1 | Mouser 700-DS1210, 700-DS1210N Jameco 114198, 2052040, 861880 |
IC Socket | U1, U4 - U6 | 40 pin 600 mil DIP socket | 4 | Jameco 41111 Mouser 649-DILB40P223TLF, 517-4840-6000-CP |
IC Socket | U2, U3 | 32 pin 600 mil DIP socket | 2 | Jameco 112301 Mouser 649-DILB32P223TL, 517-4832-6000-CP |
IC Socket | U7, U8 | 20 pin 300 mil DIP socket | 2 | Jameco 112248 Mouser 649-DILB20P-223TLF, 517-4820-3000-CP |
IC Socket | U9 - U13, U24 | 16 pin 300 mil DIP socket | 6 | Jameco 37373 Mouser 649-DILB16P-223TLF, 517-4816-3000-CP |
IC Socket | U14 - U20 | 14 pin 300 mil DIP socket | 7 | Jameco 37162 Mouser 649-DILB14P-223TLF, 517-4814-3000-CP |
IC Socket | U25, U26 | 8 pin 300 mil DIP socket | 2 | Jameco 51571 Mouser 649-DILB8P223TLF, 517-4808-3000-CP |
Oscillator Socket | U21 - U23 | 4 pin 300 mil DIP full can oscillator socket | 3 | Jameco 133006 Mouser 535-1107741 |
Crystal | X1 | 32768 Hz crystal | 1 | Mouser 732-C002RX32.76K-EPB, 695-CFS206-327KB-U Jameco 14584 |
Replacement Notes
- 74xx logic
- TTL logic families: 74LS, 74ALS, 74F, or TTL-compatible CMOS: 74HCT and 74AHCT could be used.
- Plain 74LS should work with CPU frequency up to 8 MHz. But it is recommended to use higher speed and lower power 74ALS ICs.
- It is recommended to use 74F139 or 74ACT139 for U12, especially if using older 5.25“ FDDs. I tested it with 74LS139, 74ALS139, and 74AHCT139 and it worked for me with modern 3.5” FDDs.
- Tested with 74LS, 74ALS and 74HCT / 74AHCT (except of 74LS06) logic families. Works on frequency up to 20MHz.
- Z80-CPU
- Either NMOS or CMOS Z80 CPU works. It is recommended to use at least 4 MHz CPU. 6 MHz or faster CPU is required for 1.44MB disk support. 8 MHz is recommended.
- CMOS versions - Z84C00xxPEC or Z84C00xxPEG are recommended. Note: PEC or PEG suffixes mean 40 pin plastic DIP package, PEG is RoHS compliant, PEC is not.
- Tested with CMOS Z84C00 (6MHz, 8MHz, 20MHz) and NMOS Z8400 (4MHz)
- 16550 UART
- 8250, 16450, or 16550.
- 16550 is recommended
- Tested with: Texas Instruments TL16C550, Exar ST16C550, National Semiconductor NS16550AFN, California Micro Devices CM16C550, Goldstar GM16C450, and UMC 8250B
- 8255 PPI
- It is recommended to use higher speed CMOS versions. For example 8 MHz Intersil / Harris CP82C55A part (note CP82C55A-5 is 5 MHz), 10 MHz Toshiba TMP82C55AP-10 or NEC D71055C-10 parts.
- Tested with: Harris/Intersil CP82C55, TMP82C55AP-10, NEC D71055C-10, Intel 8255-5
- MAX232A
- Can be replaced by pin compatible devices like Intersil HIN232 and Analog Devices ADM202. Make sure to use part that works with 0.1uF capacitors. See mods section below if using part that works only with 1uF capacitors.
- Bi-Level LED Indicator
- Can be replaced by two 3 mm LEDs with pins bended at 90 degrees.
Power Supply
Zeta SBC requires a regulated 5V power supply. Make sure that the tip of the power supply is the positive lead. System's power consumption varies depending on components used on SBC (CMOS CPU/PPI/UART vs. n-MOS components, CMOS logic vs. TTL/LS vs. TTL/ALS) and CPU clock frequency. Also floppy disk drives are relatively power hungry (about 1 A max). Jameco carries quite a few regulated switching 5V wall adapters with different amperage. See these catalog pages:
http://www.jameco.com/Jameco/catalogs/c113/P105.pdf
http://www.jameco.com/Jameco/catalogs/c113/P106.pdf
Alternatively it is possible to use a linear power supply with 7805 or similar voltage regulator (make sure to use a heatsink, especially if powering a floppy drive).
Mods
Mods described here were intentionally not implemented on PCB to keep it simple.
- It is possible to use MAX232 for U24 instead of MAX232A, in this case capacitors C25 - C28 need to be replaced with 1uF electrolytic capacitors. Please refer to MAX232 datasheet for proper polarity.
- Note: Zeta SBC version 1.3 has capacitors polarity marked on the silkscreen. The orientation of the capacitors on Zeta SBC version 1.3 differs from previous versions, so don't use its silkscreen to determine capacitors polarity on the previous PCB versions. Use this picture instead (Sergio, thanks for the picture).
- It is possible to use half can oscillators instead of full can ones. In this case install oscillator at pins 4 - 11 and connect oscillator's pin 14 (VCC) to pin 11 using a piece of wire.
- Note: Zeta SBC version 1.3 supports half can oscillators without any modifications.
- If using 8 MHz CPU it is possible to save one oscillator, by using single 8 MHz oscillator for both CPU and FDC. In this case connect pins 8 of U21 and U23 using a piece of wire. (Douglas says: I am doing this and it works great)
- It is possible to use FTDI DB9-USB-M module instead of the serial port connector P3. This module contains RS232 to USB converter IC and provides a mini USB connector. (Alexey, thank you for this tip). It even might be possible to use FTDI DB9-USB-D5-M module, eliminating MAX232A and related capacitors, and connecting the module directly to the UART.
- It can be possible to use 1 MiB 27C080 EPROM. It has a bit different pinout from 29F040, so doing this will require cutting a couple of traces and adding some wires. Please compare datasheets for proper connection. Connect pin 12 of U10 to A19 of 27C080.
- It is possible to use 128 KiB 29F010 or 256 KiB 29F020 flash, and 128 KiB SRAM. Lower size flash devices should work without any changes (note, some AMD AM29F002 parts use pin 1 as ~RESET pin, apparently in this case pin 1 should be connected to Vcc). 128 KiB SRAM parts have two chip select inputs, in this case the second chip select CE2, pin 30, should be connected to Vcc.
- If you don't plan to use 8255 PPI, it can be omitted. In this case it is not needed to install U4, C4, P4, and JP2.
- It is possible to build Zeta SBC without floppy disk controller (for example for the test purposes, or if you don't need floppy). In this case following components can be omitted: U6, U7, U8, U19, U20, U23, C6, C7, C8, C19, C20, C23, JP3, RR2, P5, P6 (Note U20 also used for UART interrupt, so don't take it out if using interrupt-driven UART I/O)
- It is possible to build system without RTC, in this case following components can be omitted: U11, C11, U25, X1
- If you don't want battery backup for SRAM, it is possible to omit U26. In this case it is needed to connect U26 pin 5 to pin 6 (~RAM_CS) and pin 1 to pin 8 (VCC).
PCB Versions
PCB Version 1.0
- First PCB run, no major issues reported.
- Reverse power supply polarity protection would be nice.
PCB Version 1.1
- No changes to copper layers, a few minor updates to the silkscreen:
- Added a drawing indicating power jack polarity.
- Added outline for shrouded floppy interface connector, and moved floppy connector labels outside of that outline.
- Added outline for keyed floppy power connected, and moved (+), (-) signs outside of the outline.
- Added a logo.
PCB Version 1.2
- No schematics changes
- Minor updates to copper layers and to the silkscreen:
- 20% wider power traces - 24 mils instead of 20 mils.
- Some minor traces optimization.
- Updated version and copyright information on the silkscreen.
- Blue solder mask
PCB Version 1.3 (Current Version)
- No schematics changes
- Footprint of MAX232 charge pump capacitors C24 - C28 changed to C1-1, allowing using either capacitors with 5.08 mm (0.2“) lead pitch or with 2.54 mm (0.1”) lead pitch, for example electrolytic capacitors.
- Added polarity (+) sign for C24 - C28 capacitors.
- Connected pin 11 of oscillators U21 - U23 to VCC, so that half size oscillators can be used without any modifications to PCB.
- Added half size oscillators footprint to the silkscreen.
- Rotated crystal X1 (32768 Hz) by 90 degrees. Added pads for horizontal mounting bracket.
Various Ideas
- Image enhancements
- NVRAM support (BIOS configuration using NVRAM), NVRAM configuration utility
- Enhance utility for programming the BIOS, CP/M, and ROM disk separately. (It already supports the full image programming)
- Add incorrect power supply polarity protection
- Option 1: Schottky diode in series
- Option 2: Diode connected in parallel to power supply, in reverse (could be dangerous if power supply is not short circuit protected)
- Option 3: Use FET
- DSR/DTR signals from UART are currently exposed on RS-232 connector. However, 16C550C UART provides for auto flow control on the RTS/CTS lines which are not currently connected. Ideally, provide a mechanism (jumpers?) to choose whether to expose RTS/CTS as an alternative to DSR/DTR. The Z80 SBC V2 has an example of this.