The BBC Microcomputer System PART II - HARDWARE SPECIFICATION This document specifies the hardware characteristics of the Microcomputer Unit of the BBC Microcomputer System, as agreed between the British Broadcasting Corporation and Acorn Computers Limited. It forms part of the overall specification, software and hardware, of the BBC Microcomputer System. Written by: R. T. Russell, BBC Engineering Designs Department. (C) Copyright British Broadcasting Corporation 1981. THE BBC MICROCOMPUTER SYSTEM HARDWARE SPECIFICATION Part 1 - The Microcomputer Unit GENERAL The machine will be designed to the highest engineering standards and all component parts will be used within the manufacturers' recommended limits. Particular care will be taken with printed-circuit layout and supply decoupling. Unused gate inputs will not be left open-circuit. All items in this specification will apply to the standard model of the BBC machine unless specifically indicated otherwise. With the sole exception of the Econet interface, integrated circuit sockets will be fitted in all unequipped positions. CASE Dimensions: 400mm wide by 300 mm deep by 60mm high approx. Material: Injection moulded thermoplastic. External appearance: Colour scheme and markings to be agreed by BBC. The case will be designed to enclose the printed circuit board(s) and mains power supply and to provide a rigid support for the keyboard. It must be sufficiently strong to withstand rough handling in transit, particularly with regard to the mounting of heavy items such as the mains transformer. The case will be of two-part construction, the upper shell supporting the keyboard PCB and the lower shell the main PCB and power supply. Electrical connection between the two parts will be by flexible ribbon cable of sufficient length to allow easy access for servicing or modification. Precautions will be taken to prevent malfunction resulting from electrical coupling between ribbon cable conductors. All printed circuit boards will be copper-on-fibreglass and will have screen-printed component legends. The main logic board will be through-hole-plated and have a solder resist. Apertures will be provided for expansion connectors plus sufficient ventilation slots to allow for continuous use at a local ambient temperature of 35C without subjecting the internal components or case material to a temperature in excess of their rated maximum (with all expansion options fitted). The two parts of the case will be secured together by four or more metal screws (not self-tapping). The case will be provided with non-slip non-scratch feet commensurate with its use in a domestic environment (on polished furniture etc.). ELECTRICAL SAFETY The unit will meet the appropriate BEAB, BSI and European standards and will be so marked. It will be constructed in accordance with BSI Class 1 requirements, i.e. all exposed metalwork is to be connected to earth via the earth lead of the 3-core mains cable. Due regard must be given to the fact that the owner will be encouraged to open the case in order to fit I.C.'s and connectors; it is therefore essential that all points which could be at mains potential when power is applied be inaccessible to the "standard finger". MECHANICAL SAFETY There must be no sharp edges or corners which could cause damage to person or clothing when the covers are in place. It would be preferable for no sharp edges be exposed even when the case is opened. KEYBOARD The keyboard will be in standard QWERTY format using a pitch between keys and between rows of 0.75", with a conventional row-stagger of 0.375" and 0.1875". There will be four rows of alphanumeric keys plus a space-bar and an additional top row of ten software-definable keys, 73 keys in all. The two SHIFT keys and the RETURN key will be at least 1.5 times e normal key size and the space bar will be at least 5.5" long with an appropriate mechanism to allow it to be pressed with equal ease anywhere along its length. The keyboard will be fixed at a convenient operating angle. There will be four cursor-control keys at the right-hand end of the main keyboard; LEFT, UP, RIGHT and DOWN. It must be possible to generate all ASCII codes (0/0 to 7/15) by using the SHIFT and CTRL keys in conjunction with the other keys. The space bar and zero key must not be affected by depressing the SHIFT key; the numeric keys 0123456789:;,-./ must not be affected by depressing the CTRL key. The keys will have positive action with a total travel of approximately 0.2", the keypress being detected at approximately 50% total travel. The action must be acceptable to a professional typist. The keyboard will have two-key rollover on all keys except SHIFT, CTRL, SHIFT LOCK and CAPS LOCK. It must be possible under software control to determine whether a key is held depressed or has been released. A RESET (or BREAK) key will not be provided on the main keyboard but there will be a press-button RESET switch accessible at the rear of the machine and mounted so as to minimise the possibility of being accidentally depressed. The legend on the keys will be achieved by two-shot moulding; both pound sign and number symbol (hash) must be included. The detailed keyboard layout and key type is subject to approval by the BBC (the proposed keyboard layout is attached). The keyboard should, as far as possible, be resistant to liquid spills and cigarette ash. The RETURN key will be a different colour from the rest. The keyboard is software scanned but this is made transparent to the user, and processing overhead minimised, by interrupting the processor and scanning the keyboard only when a key is pressed. POWER SUPPLY The power supply will accept a mains input of between 220 and 260 volts rms at a frequency of 47-63 Hz. The total consumption will not exceed 50V A. The output will be +5v at sufficient current to power the machine with all on-board expansions, continuously rated, with preferably some excess capacity. The power supply will withstand an overload indefinitely and will protect itself from damage through overheating, even at 260v mains. The power supply will NOT be a switched-mode type. There will be sufficient filtering to reduce electromagnetic interference conducted into the mains wiring to acceptable proportions (the exact maximum level to be agreed). There will be no exposed mains terminals within the case; if an auxiliary mains outlet is provided this must be of high quality and shuttered. A three core flying lead will be provided, terminated and anchored to the case during manufacture, having standard colours and meeting all electrical regulations governing domestic equipment. This lead is to be at least three metres in length. A high quality square-pin plug, complete with a 3 amp fuse, will be supplied ready fitted. COMPOSITE VIDEO OUTPUT A 1v pk-pk (75 ohms) composite video (PAL coded) output will be provided on a 75 ohm BNC socket accessible at the rear of the machine. The socket will not be fitted in the basic machine but all circuitry associated with the video output will be included as standard. The TV standard will be 625-lines, 50-field interlaced, PAL, with a field-sync pulse consisting of a single broad pulse of 128us duration. The PAL subcarrier need not be line-locked but must be in the range 4.43361875 MHz +/- 100Hz over the temperature range 5-35C (ambient). The signal must be capable of being displayed in colour on a typical PAL (baseband input) monitor and preferably of being recorded and replayed in colour on an appropriate video cassette recorder (VHS, Beta, VR2000 and U-Matic formats). UHF OUTPUT The UHF output will be from an Aztec modulator fixed tuned to approximately channel 36, for feeding to a domestic TV set. This will be negative modulated by a video signal as defined in the previous section, and must be capable of being displayed in colour on a typical domestic receiver. A flying lead will be provided, terminated by a standard Belling Lee plug, at least 2m in length. This lead will either be terminated inside the machine or will be supplied loose with a Phono plug for connection to the modulator through a suitable aperture in the rear panel of the machine. RGB OUTPUTS Four outputs at TTL levels will be provided, being red, green & blue video signals and a composite (mixed) sync pulse signal. These will be suitable for driving a high input impedance RGB monitor. The TV standard will be as previously defined. The connector for these outputs need not be fitted in the basic machine. AUDIO CASSETTE INTERFACE A cassette modem will be incorporated to allow storage of programs and data on a standard audio cassette recorder, mono or stereo. The format will be asynchronous serial data with one start bit (space), eight data bits (LSB first) and a minimum of one stop bit (mark) per byte at one of two alternative speeds, 300 baud and 1200 baud. In the low-speed mode a MARK bit (logic 1) will be encoded as 8 cycles of 2400Hz tone and a SPACE (logic 0) as 4 cycles of 1200Hz tone. In high-speed mode a MARK will be 2 cycles of 2400Hz and a SPACE will be 1 cycle of 1200Hz tone. It must be possible to switch between low-speed (CUTS) mode and high-speed mode under software control, without internal modification. The demodulator will be insensitive to input level variations of up to +6dB or -12dB and must recover the UAR/T clock from the tape in order to track short and long-term speed variations, It must cater for an instantaneous speed error of at least 10% WITHOUT relying on the inherent insensitivity to speed of asynchronous data, i.e. bit-centre sampling must be maintained. The demodulator must be insensitive to phase of the playedback signal. Input and output levels will be standard DIN. Appropriate low-pass filtering will be incorporated in the output to avoid subjecting the cassette recorder to high-frequency components which could cause overloading or other forms of distortion. The input circuitry will incorporate band-pass filtering to reduce the sensitivity of the demodulator to high and low frequency noise, hum etc. The cassette connector will be a seven-pin DIN socket wired so that if a stereo recorder is used both channels are recorded but replay is from the left channel only. A DIN to DIN connecting lead will be supplied. A relay will be included in the basic machine which can be used to switch the cassette recorder tape-transport motor on and off. This relay will be adequately rated taking into account that the load may be highly inductive. The relay will be driven by the operating system so as to allow, in particular, the easy storage and recall of cassette data files. Connections to the relay contacts will be brought to pins 6 & 7 of the DIN connector. RS423 SERIAL INTERFACE When the cassette interface is not in use, the serial port will be available to provide a bi-directional RS423 (+/-5v) interface for driving a serial printer etc. Provision will be made on the main PCB to include the necessary interface i.c's and a voltage converter for -5v, but these need not be fitted in the basic machine. Baud rate will be selectable under software control to one of two values, these values being pre-selected by internal wire links. One speed will be selectable from the group 19200, 9600. 4800, 2400 and 1200 bauds and the other speed from the group 600, 300. 150 and 75 bands: the speeds will be accurate to within 0.2%. A simple handshaking input will be provided which will inhibit the serial output when negative and will enable it when positive (RS423 levels). It must be possible for the user to provide his own printer driver software to implement, for example, form feed or handshake using the reverse serial channel. The RS423 connector be a 6-pin DIN type and a suitable adaptor lead to a 25-way D-type socket will be provided as part of the RS423 option. It may be necessary to have more than one variety of adaptor lead to suit various types of printer. In the standard version the following pins on the D-type will be wired: 2 - serial input, 3 - serial output, 7 - signal ground, 20 - handshake. In addition pin 6 will be wired to a single-bit RS423-level output, capable of being set high or low under software control, which is normally held high (+5v). PARALLEL PRINTER INTERFACE A parallel printer output to Centronics specifications will be provided. The 6522 I/O device will be fitted in the basic machine but the buffer components and connector need not be fitted as standard although provision will be made for these on the main PCB. It must be possible for the user to intercept the normal driver software for the parallel printer so as to add special features such as software form-feed. FLOPPY DISK INTERFACE Provision will be made on the main PCB to fit a floppy disk controller plus data separator and buffer devices to allow interfacing to one or two mini-floppy or 8" floppy drives. Neither these devices nor the connector need be fitted in the basic machine. The disk connector will be a 34-way type to SA400 specification, but all control signals must be present to allow an SA800 specification interface to be implemented by means of an adaptor cable. A wire link on the main PCB will select the appropriate data rate, i.e. 125 kbits/sec for mini-floppy and 250 kbits/sec for 8" floppy. Both hardware and software must be capable of supporting 8" disks to the IBM 3740 specification, although this may necessitate fitting an additional ROM which is not present in the basic machine. There is no requirement for double-density operation. ANALOGUE INPUTS Provision will be made on the main PCB to fit a four-channel twelve bit analogue to digital converter device to which external X-Y joystick controls can be connected. The ADC and connector need not be fitted in the basic machine. The connector will be a D-type and will be common with the light-pen input (q.v.). ECONET INTERFACE Provision will be made on the main PCB to fit a 6854 I/O device plus buffering to implement a standard Econet interface. Neither these devices nor the connector need be fitted in the basic machine. PROCESSOR BUS INTERFACE Un-buffered address, data and control signals will be available (provisionally on a 26-way IDC connector) to provide a high-speed interface to an external language processor (e.g. the Z80 CP/M option). The interface is only suitable for this purpose and will use a short length of ribbon cable as interconnection between the two units. The connector will not be fitted in the basic machine. TELETEXT RECEIVER INTERFACE A buffered processor bus interface will be provided for connection to the teletext receiver/data grabber. Interconnection between the main machine and the teletext receiver will be by means of ribbon cable having alternate ground conductors, allowing a cable length of at least 30 cm. The connector will be fitted as standard in the basic machine, but when adding the teletext receiver option it will be necessary to fit two buffer i.c.'s and a read-only-memory device containing the teletext and telesoftware firmware. NOISE GENERATOR A loudspeaker will be fitted in the basic machine as standard. This will be fed from a 6522 device and will be capable of producing tones under software control. The volume will be pre-set by a fixed resistor. ELAPSED TIME CLOCK An elapsed-time clock will be included in the basic machine, having a resolution of 10ms. The clock can be set and tested under software control. USER INPUT/OUTPUT A TTL-compatible 8-bit port plus 2 control bits will be provided in the basic machine for user input/output. Final details of the combinations of inputs and outputs in which the port bits can be used is subject to agreement with the BBC. The connector will be a ribbon cable header, having alternate 0v conductors, fitted as standard. Two bits of the user I/O will also be available on the analogue-input/light-pen connector. START-UP OPTIONS A set of internal links will define the input, output and storage channels, and the screen display option, to be used on machine start-up. Default options will be as follows: Console input - Keyboard. Console output - VDU display in mode 4. File input - Cassette recorder, high speed. File output - Cassette recorder, high speed. LIGHT-PEN INPUT An input will be provided which allows the connection of a simple light-pen, fed to the 6845 CRT controller. This input will use the same connector as the analogue inputs. The light pen itself will not be supplied with the basic machine. VDU SCREEN FORMATS There will be 8 selectable display formats as follows (RAM requirements in bytes are shown in brackets): 0. 80*25 2-colour text (foreground/background). (16K) 1. 640*256 2-colour graphics & 80*32 text. (20K) 2. 320*256 4-colour graphics & 40*32 text. (20K) 3. 160*256 16-colour graphics and 20*32 text. (20K) 4. 40*25 2-colour text. (8K) 5. 320*256 2-colour graphics & 40*32 text. (10K) 6. 160*256 4-colour graphics & 20*32 text. (10K) 7. 40*25 teletext-format display. (1K) The alphanumeric characters displayed in modes 0, 1, 4 & 5 are generated in high-resolution graphics with the "character generator" being part of the operating system ROM. These characters are on an 8*8 matrix (7*5 with one-line descenders). In display modes 0 and 4 there are forced gaps between character rows and therefore continuous vertical lines (on forms etc.) are not possible. The character set is subject to agreement with the BBC but in general is ASCII with the exception that code 6/0 gives a pound sign. For consistency between codes, incoming telesoftware will be code-converted so that 2/3 (pound) becomes 6/0, 5/15 (hash) becomes 2/3 and 6/0 (wide bar) becomes 5/15. The complementary conversion will take place in the VDU driver for display mode 7 (teletext). In modes 0 to 6 the "colours" are selectable from a palette of 16 effects being black, red, green, yellow, blue, magenta, cyan, white and the same eight colours automatically flashing. Mode 7 uses a teletext character generator which provides a full teletext/prestel format display including character rounding, doubleheight, 8 display colours, 8 background colours, non-contiguous graphics, held graphics, flash etc. The circuitry to generate all these display modes will be present in the basic machine, but it will not be possible to use display modes 0 to 3 unless the 16K RAM expansion option has been fitted. All display modes use nominally 40us active horizontal display period and 256 lines per field active vertical period, i.e. 77% and 89% respectively of the nominal TV display area. Processor access to the display refresh RAM will be totally transparent and the display will therefore be completely glitch-free. CENTRAL PROCESSOR The CPU is a 6502A running at a 2MHz clock rate except when accessing some input-output devices, when the effective clock frequency is reduced to 1 MHz. MEMORY The basic machine is equipped with 16 Kbytes dynamic random-access-memory (5v type), 16 Kbytes operating system ROM (character generator, input/output handlers, disk operating system etc.) and 16 Kbytes language ROM (BASIC interpreter). The RAM is capable of expansion to 32 Kbytes and the ROM to 64 Kbytes (being another 16 Kbyte language ROM - e.g. Pascal plus 16 Kbytes of ROM/EPROM containing applications software etc. Only one of the language ROMs, or the ROM/EPROM, can be enabled at any given time under software control). RADIO FREQUENCY INTERFERENCE The level of R.F. radiation from the machine is to be minimised. The exact maximum level is to be agreed by the BBC. © BBC 1981 BBC MICROCOMPUTER KEYBOARD LAYOUT CBT & RR 01-04-81 © BBC 1981 BBC MICROCOMPUTER KEY CODES Key: CTRL RTR 03-04-1981 SHIFT NORMAL Issue 2 23-04-1981 SHIFT LOCK is equivalent to holding down SHIFT CAPS LOCK converts codes 61 to 7A inclusive to codes 41 to 5A Note: when "cursor edit" mode is switched off, the cursor control and COPY keys produce the following codes: _ 88 _ 89 _8A _ 8B COPY 8C