Acorn BBC Model B


2Mhz 6502
Model A : 16k RAM
Model B : 32k RAM

A 16k ROM contains an extensive and powerful Machine Operating System designed to interface easily to high level languages.

A further 16k Language ROM contains an extremely powerful and fast BASIC interpreter. The interpreter includes a 6502 assembler which enables BASIC statements to be freely mixed with 6502 assembly language.

Upto four 16k Language ROM's may be plugged into the machine at any time. These four ROM's are "paged" and may include Pascal, word processing, computer aided design software, disc and Econet routines or teletext filing system.

73 key full travel QWERTY keyboard with 10 user definable function keys. The keyboard has two key rollover and auto repeat.
The standard television output is 625 line 50Hz, interlaced, fully encoded PAL, modulated on UHF channel 36. Other standards are available.

The full-colour Teletext display of 40 characters by 25 lines has full character rounding with double height, flashing, coloured background and text - all to the Teletext standard.

The non Teletext display modes provide user definable characters in addition to the standard upper and lower case alpha-numeric font. In these modes, graphics may be freely mixed with text. Text characters can be positioned not only on, for example, a 40x32 grid, but at any intermediate position.

Seperate or overlapping text and graphic windows can be easily user-defined over any area of the display. Each of these windows may be filled seperatly and text may be scrolled up or down within the text window.

The following display modes can be used.
Model B only;
Mode 0 640x256 2 colour graphics and 80x32 text (20k)
Mode 1 320x256 4 colour graphics and 40x32 text (20k)
Mode 2 160x256 16 colour graphics and 20x32 text (20k)
Mode 3 80x25 2 colour text (16k)

Models A and B
Mode 4 320x256 2 colour graphics and 40x32 text (10k)
Mode 5 160x256 4 colour graphics and 20x32 text (10k)
Mode 6 40x25 2 colour text (8k)
Mode 7 40x25 Teletext display (1k)

The installed RAm is divided between the high resolution graphics display, the user's program and Machine Operating System variables. The Machine Operating System requires about 3.5k of RAM in the Model A. If higher resolutions are required with large programs then the second processor option may be fitted.

All graphics access is "transparent" resulting in a fast snow-free display.

Extensive support is provided in the Machine Operating System for the graphics facilities, and this is fully reflected in the BASIC interpreter. These facilities include the ability to draw lines rapidly and to fill large areas of colour. In addition, very rapid changes of colour can be affected.

A BNC connector supplies a composite video output to drive a black and white monitor.

External Storage
A standard audio cassette recorder can be used to record computer programs at 300 or 1200 baud using the CUTS standard tones. The cassette recorder is under full automatic control and is connected to the computer via a seven pin DIN connector.
Tone Generation
The internal loudspeaker is driven from a 3-voice music synthesis circuit with full ADSR envelope control, and there is also a noise channel.
Interfaces (Model B only)
Serial interface to RS423 standard. This standard has been designed to be inter-operable with RS232C equipment but offers a considerably enhanced specification - for example in maximum length of cable and maximum data transfere rates. Baud rates are software selectable between 75 and 19,200 baud. The interface provides not only two way data transfere, but also two way hand-shaking using RTS and CTS lines. Connection to the machine is made via a 5 way "diamond" DIN connector and various interconnecting plugs are available for the various standard 25 way D type circuits.

An 8 bit "Centronics type" parallel printer port is provided with "strobe" and "acknowledge" lines.

An RGB video output is provided to drive a high quality colour monitor.

An 8 bit input/output port is also provided.

Four 12 bit analogue input channels are provided. Each channel has an input voltage range or 0-1.8V and the interval converter provides a number in the range 0 to 4095x16. The conversion time for each channel is 10 milliseconds and when the conversion is complete, the processor is interrupted and the value stored in a memory location for later access. These analogue inputs can be used not only in laboratory control situations, but also for inputs for games - paddles or joysticks.

A 1Mhz buffered extension bus is provided for connection to Prestel, Teletext or various other expansion units.

Both Model A** and model B may have the expansion options fitted internally at purchase, or by dealers at a later date.

Floppy disc interface
Econet network interface
Voice synthesis circuits and Cartridge ROM pack interface
Various alternative high-level languages in ROM

External options which plug directly into the machine include;

Cassette recorders
Black and white and colour monitors and televisions
5.25" single sided disc drive (100k)
5.25" dual double-sided double track density disc drive (800k)
80 column dot-matrix printers
Daisy wheel printers
Teletext and Prestel acquisition units; Both of these enable Telesoftware to be downloaded into the BBC Computer as well as providing access to the normal Teletext/Prestel services. Pages may be "grabbed" and stored for later use
6502 second processor with 64k RAM
Z80 second processor with 64k RAM, a CP/M* 2.2 operating system plus software
1EEE 488 interface
1Mhz bus for connection of extra facilities.

* CP/M is a regestered trademark of Digital Research
** Only some expansion options are available for Model A

Considerable attention has been paid to the overall design of the system and application software. A modular approach has been adopted specifically to ease the interfacing of various high-level languages (such as BASIC and Pascal) to the operating system.
Machine Operating System (MOS)
A 16k ROM is used for the MOS. This software controls all input-output devices using a well defined interface. The MOS supports the following interrupts;

Event timer (used as elapsed time clock)
4 channel analogue to digital converter
Vertical sync
Keyboard and keyboard buffer
Music tone generation and buffer
Serial interface, input and output, and buffers
Parallel input/output port

and "hooks" are provided to support other devices such as;
Teletext filing system
Prestel filing system
Econet filing system
Disc filing system

Many of the operating system calls are vectored to enable the user to change them if required at a future date.

The BASIC interpreter is an extremely fast implementation, very close to the Microsoft standard but with numerous powerful extensions;

Long variable names
Interger, floating point and string variables
Multi-dimension interger, floating point and string arrays
Extensive support for string handling
Multi-line interger, floating point string functions
local variables
Full recursion on all functions and proceedures
Effective error trapping and handling
Cassette loading and saving of programs and data
Full support for the extensive colour graphics facilities
Easy control of the built it music generation circuits
Built-in 6502 mnemonic assembler enabling BASIC and assembler to be mixed, or pure assembly language programs to be produced.

The Econet communications network enables a number of computers to share expensive resources such as a printer and a disc "file server". The system is primarily intended for schools and colleges but also lends itself to many office and business applications.

Up to 254 stations may share the network facilities
Connection between stations is by cheap 4 wire "telephone" cable
The network may be upto 400 metres from end to end
Very low interface cost on each computer
More then one printer or file server may be on the net
Any station can "view" any other similar station's screen
Mesages may be passed between any machines
Stations may be plugged or unplugged at any time

Because of the low costs involved, it is posible to dedicate one computer as a file server and one as a printer server. However, once pupils have loaded files from the file server, there is no reason why the file server should not be used as a normal disc computer until it is again required to act as a file server. The same flexibility applies to the printer server.

Source of Information : BBC Microcomputer System Brochure (Acorn, May 1983)