SC503 – Z180 Processor (Z50Bus)

SC503 is a Z180 Processor card designed for Z50Bus.

Downloads

Kits

Description

SC503 is a Z180 Processor card for Z50Bus.

SC503 includes two 5-volt asynchronous serial ports and an SPI port for connecting a micro SD card adapter.

Hardware features

  • 1 x Z180 processor clocked at 18.432 MHz.
  • 1 x 512k byte RAM.
  • 1 x 512k byte Flash (ROM), typically containing RomWBW.
  • 2 x Serial ports, asynchronous, 5-volt, with software selectable baud rates.
  • 1 x SPI port, primarily for SD card mass storage.
  • 1 x Status LED.
  • 1 x 50-pin Z50Bus compatible connector.
  • Printed circuit board size 100 mm x 75 mm.

Micro SD Card adapter (shown right) allows a micro SD card to be used for storage of program and data files.

FTDI style 5-volt serial to USB adapter (shown right) allows connection to a computer running a terminal emulation program, such as the Tera Term (free software).

It can also, optionally, supply power to the card.

Software support

  • RomWBW, configuration SCZ180_sc500. This configuration supports an SD card for mass storage.

RomWBW is the primary OS for SC503, offering CP/M, SD card, and CF card support (via Z50Bus compatible expansion card).

User Guide

SC503 is a Z180 Processor card designed for Z50Bus.

SC503 with Micro SD card adapter and USB to serial adapter

SC503 normally has Flash memory containing RomWBW in socket U1.

Documentation for RomWBW here.

Quick Guide to Connectors

P11, shown below in blue, is the Z50Bus connector.

P1 and P2, shown below in orange, is an SPI port, primarily for connecting a Micro SD card adapter. P1 is a male connector, while P2 is a female connector. You should not generally use both at the same time. They are connected exactly the same, providing a choice of male or female connection.

P5 and P6, plus P3 and P4, shown below in red, are serial port A. P5 and P6 are typically used to connect an FTDI style serial adapter. P3 or P4 allow a jumper shunt to be fitted to connect power to or from the serial port.

P9 and P10, plus P7 and P8, shown below in green, are serial port B. P9 and P10 are typically used to connect an FTDI style serial adapter. P7 or P8 allow a jumper shunt to be fitted to connect power to or from the serial port.

Quick Guide to Getting Started

Fit a jumper shunt in the position shown below in red. This will write protect the Flash memory.

Fit SC503 to a backplane, such as SC501. If the backplane does not have a built in power supply and reset circuit, then you will also need to fit a power/reset card, such as SC502.

Typically, the serial port is connected to a modern computer’s USB socket using a USB to serial adapter. Fit the adapter to P6, shown below in green.

And for those who are sensible enough to read User Guides…

More about power

SC503 is typically connected to a computer or terminal with an FTDI style serial adapter. This can, optionally, also provide power for SC503. However, some USB sockets and some FTDI style adapters will not provide adequate power, especially if many accessories and expansion cards are also connected.

Each serial port, highlighted below in red, can supply power to the system. To connect power from a serial port, fit a jumper shunt in the appropriate location, indicated below in yellow. The lower jumper is for port A and the upper jumper is for port B.

WARNING: You should normally only connect one power source to the system, at any time.

As power can flow either way, these jumpers also enable serial devices to be powered from SC503. If such devices are used, fit a jumper shunt in the appropriate position, indicated above in yellow.

Typically, SC503 is powered from a Z50Bus backplane. In this case you are unlikely to want jumper shunts fitted to connect power to or from the serial ports.

Write Protect Flash

Jumper JP1, shown below, enables the Flash chip to be write protected. It is unlikely the Flash chip will be corrupted in normal operation due to the software requirements to write to it. However, for peace of mind you can disable writing with a jumper shunt.

Fit the shunt in the position shown below in green to disable writing (to write protect the Flash memory). Alternatively, fit the shunt in the position shown below in red to enable writing.

The Flash chip can be updated without removing it from the circuit board. This is done using the supplied FLASH utility, with write enabled using JP1. While RomWBW includes a ROM disk, the files on that disk can not be updated even with the chip write enabled. It is theoretically possible to update the files in this way, but there is no software, as far as I know, to do this.

Serial Ports

The board has two asynchronous serial ports, with software selectable baud rate. These are 5 volt FTDI style ports.

Port A (the first, default port) is highlighted below in green, and port B is highlighted in red.

Port A has hardware flow control, while port B does not. Port B lacks RTS and CTS signals as they are not available on the Z180 processor.

The pin-out, below, describes signals with respect to SC503 so an output is a signal from SC503 to a computer or terminal.

PinFunction
6 Clear To Send (CTS) input (not connected)
5 Transmit Data (TxD) output
4 Recieve Data (RxD) input
3 Vcc (5V) optional via jumper
2 Request To Send (RTS) output
1 Ground (GND)

The ground terminal is is at the bottom of the connector in the illustration above.

A typical FTDI style serial adapter is illustrated to the right.

This may be fitted directly to SC503 or by a 6-way adapter cable.

The default serial ports settings are as follows:

SettingRomWBW
Baud rate115200 (RomWBW v3.x)
Data bits8
Paritynone
Stop bits1
Flow controlHardware
(recommended)

The default serial port connection is P5 / P6, Serial Port A.

SPI Port

The card has an SPI port, primarily for connection of an SD card adapter.

Note that the ground pin is at the ‘top’ of the SPI/SD card connector, while the serial ports have the ground pin at the ‘bottom’.

The signals are 5 volt levels, with the following pin-out.

PinFunction
6 Ground (GND)
5 Vcc (5V)
4 Master in, slave out
3 Master out, slave in
2 Clock
1 Chip select (active low)

The ground terminal is is at the top of the connector in the illustration above.

A typical micro SD card adapter is illustrated to the right.

This may be fitted directly to SC503 or by a 6-way adapter cable.

Expansion Bus Plug

The expansion connector is 50-pin Z50Bus compatible.

Details of the Z50Bus can be found here.

Memory Map

The physical memory map is simply 512k bytes of Flash ROM at the bottom of memory and 512k bytes of RAM at the top of memory.

The Z180’s memory management unit deals with mapping chunks of this memory into the logical 64k memory map supported by the Z80/Z180 instruction set.

AddressFunction
0x80000 to 0xFFFFFRAM (512k bytes)
0x00000 to 0x7FFFF Flash ROM (512k bytes)

Input / Output Ports

The card’s I/O port addresses are as follows.

AddressFunction
0xC0 to 0xFFZ180’s internal I/O registers
0x0EStatus LED port (write only)
Bit 0 = LED control (active low)
0x0CSystem I/O port (write only)
Bit 2 = SPI select (active low)

All other I/O addresses are available for use by expansion cards on the Z50Bus.

For details of the Z180’s internal registers, consult the Z180 datasheet. There are too many registers and functions to describe here.

The status LED is initially turned on but is otherwise free to use. The LED can be written to with output statements or instructions.

  • Turn the status LED off from BASIC:
    • OUT 14, 1
  • Turn the status LED on from BASIC:
    • OUT 14, 0

Note that the LED is turned on by writing a 0 (not a 1). This is because the LED output is active low. This is necessary to allow the LED to be turned on by a hardware reset to indicate power is present. The reset signal clears the output latch to zero, thus zero is the on state.

  • From the Small Computer Monitor
    • O E <byte-to-to-output>
  • From assembler:
    • LD A, <byte-to-be-output>
    • OUT ($E), A

Software, RomWBW

The very latest version, source code and documentation for RomWBW can be found here.

The following describes the use of RomWBW v3.0.1

The standard distribution of RomWBW for SC503 assumes a terminal is connected to serial port A. The default serial port settings are: 115200 baud, 8 data, 1 stop, no parity, and hardware flow control. An FTDI serial to USB adapter is shown above, connected to serial port A.

An SD card is optional. If present, it should be connected either directly, as illustrated above, or remotely using a 6-way Dupont cable.

At power up RomWBW initialises and displays self-test results on the status LED. It also shows more detailed diagnostic information on the LEDs of a digital I/O module, if present and set to address 0xA0. It also outputs system information to the terminal.

Status LED

Following a reset, the status LED should light for a fraction of a second, then blink off for about half a second, then light again. This indicates the self-test has passed.

Once an option is selected from the RomWBW start-up menu the status LED turns off, but lights during access to storage devices.

Diagnostic display

The optional diagnostic display should result in the LEDs each lighting in turn until all 8 are turned on. The LED display, shown in binary, goes through the following sequence:

  • 0000 0000 = State after hardware reset
    • Disable interrupts
  • 0000 0001 = Start of initialisation
    • Setup Z180 base address
  • 0000 0010
    • Setup Z180 registers
  • 0000 0011
    • Install HBIOS into RAM and transition to RAM
  • 0000 0111
    • Setup page zero interrupt vector
  • 0000 1111
    • Determine CPU type and speed
  • 0001 1111
    • Initialise heap storage
  • 0011 1111
    • Pre-console initialisation
  • 0111 1111
    • Output any cached debug text
    • Announce HBIOS and version
  • 1111 1111
    • Display system information

For full details see RomWBW source code, file “hbios.asm”.

Once an option is selected from the RomWBW startup menu the diagnostic LEDs turn off, but light during access to storage devices. Each drive is represented by its own LED.

System information

When RomWBW starts it will display something like this on the terminal:

Includes optional Compact Flash (IDE) and optional Real Time Cock

The first line shows the HBIOS version.

RomWBW HBIOS v3.0.1, 2021-10-11

Following this is the configuration name “SCZ180” and the CPU details. This should say “Z8S180-K” or “Z8S180-N”, followed by the speed (18.432MHz) and the Z180 register base address (0xC0). The Z180 CPU has 64 I/0 registers, in this case, from 0xC0 to 0xFF.

SC500 Z8S180-N @ 18.432MHz IO=0xC0

The memory and I/O wait states are shown, each with a value of 0 to 3. Zero wait states is the fastest. Several wait states are added to I/O operations to increase the access time to something similar to a typical RC2014 bus. The interrupt mode is also shown, followed by memory size.

0 MEM W/S, 2 I/O W/S, INT MODE 2
512KB ROM, 512KB RAM

The next block is all the devices detected.

ASCI0: IO=0x00 ASCI MODE=115200,8,N,1
ASCI1: IO=0x01 ASCI MODE=115200,8,N,1
DSRTC: MODE=STD IO=0xA1 Mon 2021-10-11 21:03:29 CHARGE=OFF
MD: UNITS=2 ROMDISK=384KB RAMDISK=384KB
IDE: IO=0x90 MODE=RC
IDE0: 8-BIT LBA BLOCKS=0x00007A80 SIZE=15MB
IDE1: NO MEDIA
SD: MODE=SC OPR=0xA1 CNTR=0x0A TRDR=0x0B DEVICES=1
SD0: SDHC NAME=SU08G BLOCKS=0x00ECE000 SIZE=7580MB

ASCI0/1 are the Z180’s serial ports.

DSRTC is the Real Time Clock. This is not included on the motherboard but could be added as an expansion module. Charge must be off.

MD is the memory devices. There should be 2 units: ROMDISK and RAMDISK.

IDE devices, such as the optional Compact Flash module, are shown.

SD is the SD card, if fitted to SC503’s SPI port.

This is followed by details of the character and disk devices and then the boot options.

Real Time Clock

A real time clock is not included on SC503. If it is included on a separate module (at I/O address 0xA1), RomWBW will detect it.

The real time clock is managed with “RTC.COM” from CP/M. Start CP/M and type the command “RTC”.

To display the current time, press the “T” key.

Current time: 19-08-03 12:07:15-03

To enter the time and date, press the “I” key and enter the appropriate values. Each value is 2 digits, such as “07”. A 24 hour clock is used so hours can be from 00 to 23. The day of the week is in the range 01 (Sunday) to 07 (Saturday).

 Init date/time.
 YEAR:19
 MONTH:08
 DATE:03
 HOURS:12
 MINUTES:05
 SECONDS:00
 DAY:07
 RTC>s
 Set RTC time.

Now press the “S” key to set the time to the values entered above.

WARNING: Charge must be off as the RTC is assumed not to have a rechargeable battery.

Preparing an SD card

An SD card provides a number of logical drives. Before using a drive it must be prepared with “CLRDIR” from CP/M. With recent releases of RomWBW you may need to use FDISK80 first.

When CP/M starts it will list the available drives. In the example below:

  • Drive A is memory device 1 which is a RAM disk.
  • Drive B is memory device 0 which is RomWBW’s ROM disk where lots of useful programs can be found.
  • Drives C to F are the IDE devices, typically a Compact Flash card.
  • Drives G to J are the SD card.
Loading CP/M 80 v2.2…
CBIOS v3.0.1 [WBW]
Configuring Drives…
   A:=MD1:0
   B:=MD0:0
   C:=IDE0:0
   D:=IDE0:1
   E:=IDE0:2
   F:=IDE0:3
   G:=SD0:0
   H:=SD0:1
   I:=SD0:2
   J:=SD0:3
   1932 Disk Buffer Bytes Free
CP/M-80 v2.2, 54.0K TPA
B>

Drive letter allocation will depend on the storage devices detected at start-up. The mapping of drive letter to physical storage space can be changed dynamically using the ASSIGN command.

Start CP/M and enter the command “CLRDIR H:”. To confirm you really do want to do this, press the “Y” key. Note, it has to be an upper case “Y”. The terminal should show something like this:

CLRDIR V-0.4 (06-Aug-2012) by Max Scane
 Warning - this utility will overwite the directory sectors of Drive: H:
 Type Y to proceed any key other key to exit. Y
 Directory cleared.

A simple way to test a drive is working properly is to do a copy with verify. For example:

 B>pip h:=B:*.*[v]
 COPYING -
 ASM.COM
 CLRDIR.COM
 COPY.CFG
 COPY.COM
 DDT.COM

Parts List

ReferenceQtyComponent
PCB1SC503, v1.0, PCB
C1 to C77Capacitor, ceramic, 100 nF
JP1 1Header, male, 1 row x 3 pin, angled
JP2 plus JP31Header, male, 1 row x 4 pin, straight
Jumper shunts5Jumper shunt
LED11LED, green, 3mm
P1, P5, and P93Header, male, 1 row x 6 pin, angled
P2, P6, and P10 3Header, female, 1 row x 6 pin, angled
P3 and P72Header, male, 1 row x 2 pin, straight
P4 and P82Header, male, 1 row x 2 pin, angled
P111Box header, 2 x 25 pin, angled, or
Header, male, 2 row x 25 pin, angled
R1 to R66Resistor, 2k2, 0.25W
R7 to R93Resistor, 100k, 0.25W
R101Resistor, 10k, 0.25W
R111Resistor, 1k, 0.25W
RP11Resistor pack, 8 x 10k, SIL, 9-pin
U11SST39SF040, 512k byte Flash
U21AS6C4008, 512k byte SRAM
U3174AHCT139
U41Z8S18033VSG (Z180 CPU)
or Z8S18033VSC
or Z8S18020VSG
or Z8S18020VSC
U5174HCT688
U6174HCT74
X11Oscillator, 18.432 MHz
IC socket 14-pin
U6
114-pin PDIP socket
IC socket 16-pin
U3
1 16-pin PDIP socket
IC socket 20-pin
U5
1 20-pin PDIP socket
IC socket 32-pin
U1 and U2
2 32-pin PDIP socket
IC socket 68-pin
U4
1 68-pin PLCC socket
Spacer1Spacer, 10mm, M3, nylon
Screw (for spacer)1Machine screw, 6mm, M3
Component details and sourcing

Printed Circuit Board

SupplierWebsiteShips from
Stephen C CousinsTindieUK
pcb4diypcb4diy.deGermany
pcb4diyeBayGermany
SC503, v1.0, PCB design files (OSHWLab)
SC503, v1.0, Gerber files (ZIP)

Assembly Guide

Important note: How to modify box headers

Experienced builders can just go ahead and populate the board. There shouldn’t be any surprises to catch you out.

This guide assumes you are familiar with assembling circuit boards, soldering, and cleaning. If not, it is recommended you read some of the guides on the internet before continuing.

First check you have all the required components, as listed in the parts list.

Before assembling it is worth visually inspecting the circuit board for anything that looks out of place, such as mechanical damage or apparent manufacturing defects.

If you have a multimeter that measures resistance or has a continuity test function, check there is not a short on the power supply tracks. Connect the probes to each terminal of one of the capacitors, such as C1. This should be an open circuit, not a short.

The picture below shows what a completed SC503, Z180 Processor card should look like.

SC503 Assembled

Resistors 2k2

Fit and solder the 2k2 resistors, R1 to R6 (shown below in red).

These can be fitted either way around, as they are not polarity dependent.

Resistors 100k

Fit and solder the 100k resistors, R7 to R9.

Resistor 10k

Fit and solder the 10k resistor R10.

Resistor 1k

Fit and solder the 1k resistor, R11.

Header sockets

Fit and solder the 6-pin angled header sockets, P2, P6, and P10.

Ensure they are fitted tight to the board.

Header pins (2-pin angled)

These may need to be cut from a longer strip using wire cutters to cut the plastic.

Fit and solder the 2-pin angled headers, P4 and P8.

Header pins (3-pin angled)

This may need to be cut from a longer strip using wire cutters to cut the plastic.

Fit and solder the 3-pin angled header, JP1.

Header pins (6-pin angled)

These may need to be cut from a longer strip using wire cutters to cut the plastic.

Fit and solder the 6-pin angled headers, P1, 56, and P9.

Ensure they are fitted tight to the board and the pins are parallel to the surface of the 6-pin angled sockets.

IC sockets

Fit and solder the IC sockets.

Be sure to fit them with the notch matching the legend on the circuit board, so you do not end up fitting the IC the wrong way around too.

Resistor network

Fit and solder the 8x10k resistor network, RP1.

The 10k network will be marked 103.

Take care to fit the resistor network the correct way around. Pin 1 is usually marked with a dot. This end is indicated on the PCB and on the illustration below.

Oscillator 18.432 MHz

Fit and solder the 18.432 MHz oscillator, X1. Be sure to fit it the correct way around.

Pin 1 of the oscillator is normally indicated by a ‘sharp’ corner, while the other three corners are rounded.

Pin 1 on the circuit board is also indicated by a ‘sharp’ corner, while the other three corners are rounded.

PLCC socket

Fit and solder the 68-pin PLCC socket for U4.

This type of socket can be difficult to insert into the PCB holes as there are so many fragile pins, which must be carefully aligned.

It is vital this socket is fitted the correct way around. The socket has a small chamfer on one corner, as indicated below in green

Quick Test

It is now worth repeating the check made earlier for a short on the power supply tracks. Connect the meter probes to each terminal of one of the capacitors, such as C1. This should be an open circuit, not a short.

Capacitors 100 nF

Fit and solder capacitors C1 to C7.

These capacitors can be fitted either way around, as they are not polarity dependent.

The exact value of this component is not critical. The use of very cheap capacitors within the range of about 30 to 200 nF is acceptable.

Header pins (straight)

These may need to be cut from a longer strip using wire cutters to cut the plastic.

Fit and solder the pin header JP2 plus PJ3 (1 row of 4 pins), shown below in red.

Fit and solder the pin headers P3 and P7 (1 row of 2 pins), shown below in green.

Light Emitting Diode (LED)

Fit and solder green LED (LED1) in the position shown below.

If using an angled LED the polarity is predefined and matches the PCB.

If using standard LEDs care must be taken to ensure they are fitted the correct way around.

It is important to fit the LED the correct way around. LEDs usually have a small flat side to indicate the cathode (the negative end). This should be positioned to match the flat side shown on the circuit board (illustrated to the right). Also, the cathode pin on the LED is usually shorter than the other pin (the Anode).

Bus connector

Fit and solder the bus connector, P11. This can either be a right angled box header or right angled header pins. The box header is recommended.

Take care to ensure the connector is fitted such that the card will stand vertically when fitted to a backplane. A good method is to just solder two pins, one at each end, and then check it looks correct. Then solder two more, one at each end but in the other row, and check again. At each stage, if necessary, adjust the position by heating the required solder joint and moving the connector slightly. Solder two pins in the middle of the connector and check again. Then solder all the others.

Inspection

Remove any solder ‘splats’ with a brush, such as an old toothbrush.

Visually inspect the soldering for dry joints and shorts.

Clean the flux off with suitable cleaning materials.

Visually inspect again. The importance of visual inspection can not be overstated.

Quick Test (supply lines)

Repeat the check made earlier for a short on the power supply tracks. Connect the meter probes to IC U5 pin 20 (shown below in red) and U5 pin 10 (shown in green). This should be an open circuit, not a short. If you are using a digital meter set to measure resistance it will likely take a few seconds for the reading to stabilise as there are now capacitors on the power lines. A reading of more than 100 kΩ (100000 ohms) is acceptable.

Quick Tests (voltages)

Fit SC503 to a backplane, such as SC501. If the backplane does not have a built in power supply and reset circuit, then you will also need to fit a power/reset card, such as SC502.

  • The voltage measured from U5 pin 20 (red) and U5 pin 10 (green) should be between 4.75 and 5.25 volts.
  • Test the status LED by touching one end of a piece of wire to U6 pin 5 (medium blue) and the other end to U6 pin 7 (dark blue).
  • The voltage measured from U6 pin 7 (dark blue) to U6 pin 1 (light blue) should be between 4.00 and 5.25 volts.
  • The voltage measured from U6 pin 7 (dark blue) to U6 pin 1 (light blue) should be between 0.00 and 0.20 volts when the reset button is pressed.
  • With a jumper shunt fitted to JP1 in the “write protect flash” position, check the voltage form U1 pin 31 (light orange) to U1 pin 16 (dark orange) is between 4.50 and 5.25 volts.

Integrated Circuits

If all the above tests check out okay, disconnect the power and insert the integrated circuits into their sockets.

Fit the Z180 CPU into its socket as illustrated to the right. This must be fitted the correct way around. The socket and IC both have a small chamfer in the position indicated.

Insert the other integrated circuits into their sockets, taking care to insert them the right way round, as illustrated below. Be careful not to bend any legs over.

Quick Test (reset)

Fit a jumper shunt in the positions shown below in red. This will write protect the Flash memory.

Fit SC503 to a backplane, such as SC501. If the backplane does not have a built in power supply and reset circuit, then you will also need to fit a power/reset card, such as SC502.

If your system includes a voltage supervisor and reset device, such as the one included in the power and reset card SC502, then when turned on the status LED should light for a fraction of a second, then blink off for about half a second¹, then light again. This indicates the self test has passed.
¹ With RomWBW v3.4.0 and probably other versions the LED blinks off for a barely detectable time.

If your system does not include a voltage supervisor and reset device, you may need to press the reset button after turning the system on.

If the status LED does not perform as indicated above, check the power supply voltage is between 4.75 and 5.25 volts, as detailed above.

Brief Test (serial port)

If the self test completes correctly, power down and connect serial port A to a computer running terminal software.

An FTDI style serial adapter and cable is typically used to connect to the computer, as illustrated to the right.

The terminal software should be set for 115200 baud, 8 data bits, no parity, 1 stop bit, and no flow control. Power up and you should see the startup message.

Given that the self test passed, a failure to display the start up message is most likely to be directly related to the serial port electronics or the serial adapter cable. Check for activity at the serial port connector and around the 2k2 resistors.

If all is well set the terminal software to use hardware flow control and check you still see the startup message. It is recommended that hardware flow control be used where possible.

Circuit Explained

he SC503, Z180 Processor card includes the following:

  • Z180 CPU running at 18.432 MHz
  • One 512k byte static RAM chip
  • One 512k byte Flash ROM chips
  • Two 5 volt FTDI style asynchronous serial ports
  • One 5 volt SPI / SD Card ports
  • Clock oscillator (18.432 MHz)

C1 to C7

These capacitors provide power supply decoupling (or bypass). The fast switching in digital circuits creates spikes on the power supply lines which are suppressed with decoupling capacitors placed at key points on the circuit board.

The exact value of this component is not critical. The use of very cheap capacitors within the range of about 30 to 200 nF is acceptable.

JP1

Jumper 1 allows Flash chip U1’s write enable input to be connected to either Vcc (5 volts) or the CPU’s write output (/WR).

When the Flash chip’s write enable input is connected to Vcc, the Flash chip will never get a write enable signal and thus the memory is protected against being changed. When connected to the CPU’s write output, it is possible to write to the Flash chip.

Writing to the Flash chip is unlikely to happen by accident due to the software requirements. However, for peace of mind it is generally best to disable writing with this jumper.

JP2

Fit a jumper shunt here to connect the Z180’s interrupt #1 (/INT1) signal to the Z50Bus USER 1 pin. Removing this jumper shunt isolates the USER 1 pin, freeing it for other modules to use for a different function.

JP3

Fit a jumper shunt here to connect the Z180’s interrupt #2 (/INT2) signal to the Z50Bus USER 2 pin. Removing this jumper shunt isolates the USER 2 pin, freeing it for other modules to use for a different function.

LED1

This LED is used to indicate the presence of the 5 volt supply and also other status information. At reset the LED is turned on by a hardware reset but after that it is software controlled.

P1 and P2

These connectors give access to the 5 volt SPI port. This port uses the Z180’s hardware clocked serial I/O for high speed interfacing.

PinFunction
1Chip select (active low)
2Clock
3Master out, slave in
4Master in, slave out
5Vcc (5V)
6Ground (GND)

Two sets of mounting holes are provided. This allows both a male and a female header to be fitted. The female header enables the Micro SD adapter to be directly connected to SC503, while the male header enables the Micro SD card adapter to be placed away from the SC503 using a 6-way female to female Dupont cable.

P3 and P4, and P7 and P8

These enable SC503’s Vcc (5 V) to be connected to serial ports A and B power pins. Typically, this allows the system to be powered from an FTDI style serial adapter.

WARNING: You should normally only connect one power source to the system, at any time.

As power can flow either way, these jumpers (or switches) also enable serial devices to be powered from SC503. If such devices are used, fit a jumper shunt in the appropriate position.

Two sets of mounting holes are provided for each serial port.

P5 and P6, and P9 and P10

Serial ports A and B are connected via P5 or P6, and P9 or P10 respectively. These are FTDI style 5 volt serial ports. Port A includes RTS/CTS flow control signals, while port B does not.

PinFunction
1Ground (GND)
2Request To Send (RTS) output from Z180
3Vcc (5V)
4Recieve Data (RxD) input to Z180
5Transmit Data (TxD) output from Z180
6Clear To Send (CTS) input to Z180

Two sets of mounting holes are provided for each port. This allows both a male and a female header to be fitted.

P11

This is a 2 row by 25 pin male header for connection to a Z50Bus backplane.

R1 to R6

These provide current limiting between the Z180 system and the serial devices on serial ports A and B, providing protection for when one is powered and the other is not.

R7 to R9

The resistors provide pull up and pull down for the serial port inputs, thus holding them in known states when no device is connected.

R10

This resistor pulls up the SPI port’s MISO line. Some SPI slave devices drive the MISO line both high and low, while others only drive it low (open collector). This resistor is required to pull the MISO line high when a device is not driving it low.

R11

This is a current limiting resistor for the LED. 1000 ohms should give reasonable brightness, but higher or lower values can be used if required.

RP1

The resistor network (or resistor pack) provides 8 resistors to pull up processor signals that may either not always be connected to external devices, or are connected to devices that have open collector outputs. Open collector outputs only drive the signal low when active, but do not drive the signal high when inactive. These signals are left ‘floating’ when not active and thus need pull-up resistors to pull the signal to its inactive state (high).

U1

This is a 512k byte Flash memory chip. This holds the board’s firmware, typically RomWBW.

U2

This is a 512k byte static RAM chip. This is used to store the program and data being worked on at the current time.

U3

The 74AHCT139 is the addresses decoder, providing chip enable signals for the two memory chips and for the I/O devices. It is a dual 2-to-4 line decoder. One decoder is used to select between the RAM and the Flash memory. The other forms part of the address decoding for input/output devices.

Memory: Inputs are memory request (MREQ) and A19. Memory request is low when memory is being accessed and A19 determines if it is Flash memory (A19 low) or RAM (A19 high).

Input/output: This provides two output device enable signals (active low). One of the outputs is low when a write is being performed to the input/output address 0x0C, the other when a write is being performed to the input/output address 0x0E. Address 0x0C is used to control the SPI / SD card’s enable signal latch (U6.2). Address 0x0E is used to control the status LED latch (U6.1).

U4

This is a 68-pin PLCC packaged Z8S180 CPU. It must be rated at a frequency at least as high as the clock signal PHI.

PHI is initially the on-board oscillator (X1) frequency divided by 2, as the Z180 turns on its clock divider on at reset. However, current firmware turns this off, so PHI is then equal to the on-board oscillator (X1) frequency.

U5

This is a 74HCT688 8-bit identity comparator. The output of this devices goes low when a write is being performed to an input/output device address 0000 11X0 binary. This signal is used to enable the input/output half of U3.

U6

This is a dual D-type flip flop which is used to provide the software controlled output bits. One is the SPI / SD card enable signal, the other controls the status LED.

The flip-flop latches the state of the ‘D’ input when the clock input rises. The latched state is output on the ‘Q’ pin. The ‘D’ input is a data bus signal, while the clock input is the address decoded chip select line. The result being that a data write to the appropriate output port address causes the data bit to be stored in the flip-flop latch and output to the SPI / SD card enable or the LED. Thus the SPI / SD card enable and the LED state can be controlled by simple I/O writes in software.

The flip-flop latches are set low by a hardware reset, resulting in the SPI / SD card being enabled and the LED being turned on.

X1

This oscillator provides the CPU’s main clock. With existing firmware this oscillator is also used as a clock source for the serial ports. Typically this oscillator is 18.432 MHz. This is the frequency required when running the card with current firmware..

Notes

  • This design is made with the permission of LiNC (designers of the Z50Bus).
  • This product is designed for hobby use and is not suitable for industrial, commercial, or safety-critical applications.
  • The product contains small parts and is not suitable for young children.
  • RomWBW has been provided free of charge by its author Wayne Warthen.

Homebrew 8-bit retro computing