This article includes a list of references, related reading or external links, but its sources remain unclear because it lacks inline citations. (November 2014) (Learn how and when to remove this template message)
A running Compukit UK101
|CPU||6502 @ 1 MHz|
The Compukit UK101 microcomputer (1979) is a kit clone of the Ohio Scientific Superboard II single-board computer, with a few enhancements for the UK market - notably replacing the 24×24 (add guardband kit to give 32×32) screen display with a more useful 48×16 layout working at UK video frequencies. The video output is black and white with 256 characters generated by a two kilobyte ROM. It has no bit-mapped graphics capability. The video is output through a UHF modulator, designed to connect to a TV set.
The UK101 design was published in Practical Electronics, a popular hobbyists magazine at the time. The August, September, October and November 1979 issues carried the four parts of the article, authored by Dr A. A. Berk. Later issues of the magazine contained information on modifications and additions to the machine, including a series of articles on building an expansion unit.
Kits of parts for building the machine were available from CompShop Ltd of 14 Station Road, New Barnet (North London). It is thought that around 5000 kits were produced.
The Compukit UK101 is powered by a 6502 microprocessor CPU running at 1 MHz, and is equipped with up to 8 kilobytes of RAM using 2114 static RAM chips of 1024×4-bit. An additional memory-mapped 1 KB of RAM is used for the video display. It has the 8K Microsoft BASIC interpreter stored in ROM. In addition to Basic, a 6502 machine code monitor (2K bytes) is built into ROM. It allows programming by entering sequences of 6502 opcodes. Later a two-pass assembler was available which allows the use of assembly language.
Although the 6502 has two interrupt input pins (NMI and IRQ), neither is used by the UK101.
The UK101 has a 16-row, 48-column memory-mapped video display. All scrolling and character output functions are handled by firmware. In the original ROMs, the output functions were rudimentary and did not include a clear-screen function. CPU access to video memory causes noticeable glitches (known as "snow") on the screen.
The keyboard of the UK101 is located on the main PCB, and comprises a matrix of keyswitches. The matrix is interfaced to the CPU via two 8-bit I/O ports, and is polled by firmware in the machine's ROMs. One key is a latching type, the shift-lock key. When supplied as a kit, the keyboard was assembled by the purchaser from a bag of switches and keytops.
The keyboard ports are located at address DF00 (hex), or 57088 (decimal). BASIC programs typically poll for real-time keyboard input by using the PEEK and POKE commands at that address. Because the keyboard lacks any way to generate an interrupt, it is not possible to implement a typeahead buffer. The keyboard matrix also lacks any diodes at the intersections of the matrix. This leads to problems when reading certain combinations of keys pressed simultaneously. The matrix was designed to allow only the shift, control and shift-lock keys to be pressed simultaneously with another key. The keyswitches themselves were originally manufactured by Cherry.
In common with other home computers of the time, software can be saved and loaded on standard cassette tapes. The UK101 uses the Kansas City standard tape format. I/O is managed by a Motorola 6850 ACIA. This allows a full RS-232 port to be implemented, with the addition of a few extra components and minor modifications to existing jumpers on the board.
Compared to the Superboard
Although very similar to the Ohio Scientific Superboard II, the Compukit UK101 differed from that machine in a few places:
1. Video display of the UK101 works at UK frequency and resolution.
2. RF output is UHF, to suit domestic TVs in the UK.
3. Power supply is located on the main PCB and accepts UK 240 V AC mains input (via a transformer).
4. Display improved to 48 characters per line
5. Memory increased to 8 KB
However, similarities in the PCB layout make it clear that this machine is a clone. The people involved with the modifications were Chris Cary and Bill Wood.
The 40 pin expansion socket opened up the world to the UK101. One could attach a dual floppy disk controller (5.25") and a memory expansion card (40K max) to allow faster and reliable save/load of programs/data.
The UK101 floppy disk interface utilised a PIA to control the floppy disk drive stepper motor and another ACIA to serialise the data written to the disk. A disk operating system was used to provide file storage capability but this resided in RAM and so reduced the available program space. Typically single or double sided 40 track floppy drives could be supported.
The power consumption of an expanded UK101 could require up to 5Amps at 5.0Vdc (25Watts), so heat dissipation and power supply de-coupling were common challenges. Compare with a modern ARM microcontroller with similar capability at 0.5 Watts.
- This is not technically correct. There is a screen clear function used during the reset cycle, but it is buried as an in-line routine in the reset code and is not available as a callable subroutine.