📜 ⬆️ ⬇️

BBC Micro - the computer that beat ZX Spectrum

The article will discuss the history of the confrontation between Acorn , Sinclair Research LTD and several other companies for the right to develop a computer for the educational program of the British corporation BBC . Also offers a detailed review of the winner of this contest - BBC Micro . For details, I invite under the cat.



In the early 1980s, the BBC initiated the Computer Literacy Project, a computer literacy project, and planned to release the 10-part series The Computer Program .


For this they needed their own computer. A detailed project specification, authored by John A. Call , is available here .
')
Outline specification for the BBC MICROCOMPUTER system
Outline specification for the BBC MICROCOMPUTER system

This specification does not set out to be definitive
but it represents a desirable set of characteristics
which we should like to aim at for a BBC system.
Certain of these characteristics are in our view
essential and these can be clarified at a later date.

SOFTWARE
We fully realise that all microcomputers have different
dialects. The BBC is investigating the possibility of
supporting a version of BASIC which is not implemented
yet on any single machine but which would be as
compatible as possible with existing practice and
could be made available within the public domain to
any manufacturer willing to implement it. The specification
in draft form is available on request. Meanwhile, you will
see that the most desirable 'fallback' is specified below.

BASIC: The general syntax of all commands should be identical to Microsoft BASIC
5.0 (repeat 5.0). If there is any conflict between what is said below
and the relevant Microsoft implementation then the latter should be used.
Graphics and I/O are outlined later.
The following commands and statements should be implemented in
floating point arithmetic to 6 figure accuracy over a range of at
least +-10^38

DIM OPEN
OPTION BASE (0 or 1) CLOSE
DEF FN INPUT
IF ... THEN ... ELSE PRINT
GOTO ?
GOSUB LINPUT
RETURN GET
ON ... GOTO PUT
ON ... GOSUB RND
ON BREAK GOTO READ
ON ERROR GOTO DATA
CONT RESTORE
RESUME CLOAD
FOR ... TO ... STEP CSAVE
NEXT CVERIFY <<Annotation: REWIND>>
RUN CMERGE
RANDOMIZE LIST
NEW LPRINT
DELETE LLIST
PEEK PLOT
POKE MPLOT
USR LINE
STOP MLINE
RENUMBER POINT
TRACE MPOINT
WHILE ... ENDWHILE ORIGIN
INP, OUT MORIGIN

SIN, COS, TAN, ATN, INT, ABS, SGN, LOG, EXP, POS, TAB, FRE, SQR

+ - * / ^ ( )
+ (string concatenation operator)
< <= <> => =
AND OR NOT

ASC, CHR$, LEN, LEFT$, MID$, INSTR, STR$, VAL

Variables names should be as long as the user wishes with the first
two characters being significant. Examples of legal variables would be
X, X1, KM, LENGTH, A3$, NAME$ and illegal names would include 3A (must
start with letter), TO$ (reserved keyword), PER POUND (no spaces).

2 John A. Coll

Odds and ends: Powers of negative integer numbers [Y=(X)^Z] should evaluate
correctly - at least for Z<15.
Multidimensional string and numeric arrays.
Strings with totally dynamic memory useage.
It should be possible to say IF A$<B$ THEN ...
*Useful option MID$(A$,4,3)="cat".
Timed single character input.
I/O should be channel oriented using the word ASSIGN to assign a
logical channel to a physical device (eg ASSIGN OUTPUT TO PRINTER or
ASSIGN #4 TO DISK0, "MYPROG")

Graphics: the software should include commands to at least

(a) Plot an alpha-numeric character or string at any place on the screen
(PLOT X,Y,A$)
(b) Plot a low resolution graphics point to build Teletext graphic
characters in a range of colours or shades of grey (minimum: black and
white) (PLOT X,Y,C probably C=-1 to complement point, C=0 to plot
black point .... C=7 to plot white point)
(c) Find out what is at the point X,Y ( C=POINT(X,Y) or A$=POINT(X,Y))
(d) Draw a line from the last specified point to the new co-ordinates (LINE
X,Y,C)
(e) Move the effective origin (ORIGIN=X,Y)
(f) Do all the above in medium resolution graphics with similar commands
MPLOT X,Y,C
MLINE X,Y,C and
C=MPOINT (X,Y)
MORIGIN=X,Y
(f) Illegal values of X,Y or C should be ignored.

Video display: Either
(a) an integral single line display of 40 characters (each built from at
least 5 by 7 dots) and a modulated UHF output of the full screen (see
below) or
(b) an integral display of the full screen plus a modulated UHF output of
the full screen or
(c) a modulated UHF output of the full screen

A composite video output should be included.

The 'full screen' should consist of at least 24 lines of 40 characters
(*preferably an option of 80 characters from the outset) of upper and lower
case alpha-numerics and (colour) Teletext graphics. These should be capable
of being freely mixed with (colour) medium resolution graphics of at least
200 horizontal points. The medium resolution graphics should be eraseable
separately from the other displays.

The computer should either produce UHF colour signals at the time of
purchase or be easily expaned to produce UHF colour signals. It must be
designed with colour Teletext and colour graphics in mind.

3 John A. Coll

The screen handler should respond to specific control characters to
(a) Home top left and clear to end of page (whole screen)
(b) GOTOXY - cursor addressing
(c) clear to end of line
(d) clear to end of page
(e) Non destructively move the cursor up/ down/ left/ right
(f) Move to start of line (carriage return)
(g) Delete previous character
(h) Scroll when on bottom line of display
(i) Clear medium resolution graphics display

Keyboard: capable of generating all 128 ASCII codes. Positive action keys (not
touch sensitive). ISO standard layout plus
(a) Up/down/left/right cursor control
(b)*A row of keys, above the numbers, which generate software definable
codes - this could be done with a software look-up table to map the
original codes to new values.

Loudspeaker: inside box and accessible from BASIC

Printer connection: electrically to RS449 (or RS232C) with the connector to ISO
2110. Only Send Data, Receive Data, Request to Send and Clear to Send need
be implemented.

Paddles: some connector to which two simple potentiometers may be connected the
setting of which can be determined by a simple BASIC statement or a few
lines of assembler program.

Teletext: adapter should be available for off-air downloading of software

Expansion port: fully electrically buffered expansion connector (eg no
unprotected MOS!).

Memory: sufficient within the box to support floating point BASIC and medium
resolution graphics. This probably means 16K ROM plus 32K RAM - certainly
at least 16K RAM should be supplied at the outset.

Memory map: above all this should be designed for expansion and standardisation.
Probably should be RAM from 0000 up with ROM from FFFF down (including
8080/Z80 systems). At the very top there should be a simple monitor with
any ROM high level languages immediately below. The screen should not be
allocated to fixed RAM locations below C000 and could be dynamically
allocated from available RAM. Scratchpad RAM for the stack and monitor, and
RAM for the DOS should, preferably, be well clear of low memory RAM (6502
problems here) used for user programs.

System monitor: should contain routines to
(a) output character to screen
(b) test keyboard for character waiting
(c) get character from keyboard

4 John A. Coll

(d) send character to printer
(e) load and save binary files from cassette

all the above should vector via RAM locations to default ROM device drivers

(f) examine and change memory locations.

Device handlers: Cassette, paddles and printer should also be driven via RAM
vectored device drivers.

Cassette interface: producing CUTS frequencies, but doing all the byte recovery
in software. The software should be insensitive to reversed phase play back
from a cassette recorder, work at 1200 bps, accept and produce the BBC
format tape (as well as your own format if you wish). Named files,
catalogue, idiot proof.

The manufacturer should be able to demonstrate a production model disk operating
system which should, at least:

Enable a user to plug the thing in and, without pressing a single button,
end up running a BASIC program - or any other program that the machine
had been configured to run.
Give a 'DIRectory' or 'CATalogue' of files on disk showing filenames, file
length, creation date, whether or not the file is delete-protected
Save a specified area of memory as a named binary file
Load and automatically execute binary files
Save onto disk ASCII text or data from BASIC etc.
Load text from disk
LIST a text file to screen or printer
EXECute an text file as if it were a 'command line' - including refernces
to any disk drive or any peripheral
Delete and rename specified files or groups of files
Permit random access to data in multiple files
Have a well organised JUMP list at a known location to all routines likely
to be needed by assembly language programmers.
The Disk Operating System should appear as a byte oriented input/output
stream similar to the keyboard/VDU and data should not need to be
blocked before being passed to the DOS
At least 10 disk channels should be capable of 'simultaneous' access (ie
OPEN concurrently)
Faulty disk sectors should be automatically avoided
Accidental swapping of disks should not either (a) crash the disk file
structure or (b) abort everthing
The vast majority of the DOS high level commands (such as CAT, DIR, COPY,
LIST, DELETE, RENAME, PROTECT, SAVE) should not form part of the
permanently memory resident DOS. They should be Utility or Transient
programs called into memory when required. All those listed above
should not reside in the same memory space as BASIC or as the EDITOR
or WORD-PROCESSOR. They should all be able to be called from BASIC
etc. The manufacturer should be able to SHOW an extensive range of
such transients and should not say 'Oh that would be very easy to
write'!

5 John A. Coll


→ Source

A source

At first, the BBC actually chose the computer Grundy NewBrain , the development of which was started by Clive Sinclair’s Sinclair Radionics company, but in 1980 it was declared bankrupt and liquidated, and the project itself was transferred to the Newbury Laboratories laboratory.

image
Source wikipedia.org

The submitted computer did not meet the expectations and specifications of the BBC, and the proposal was rejected. The corporation announced the start of a computer development competition, and the new company, Clive Sinclair Sinclair Research, and a small company Acorn , founded by former Sinclair Radionics employee Chris Curry and his friend Hermann Hauser, joined the fight. Acorn had a computer Acorn Atom at the time of the announcement of the competition, and the team was working on a new version of Acorn Proton , while Sinclair Research released the ZX80 and was actively working on the ZX Spectrum .

One of the BBC Basic developers, Richard Russell, published a number of interesting documents on the stardot.org.uk forum, in particular, the Acorn business proposal and a plan for the meeting of the BBC management with representatives of development companies. Richard himself was also present at this meeting, which took place on February 12, 1981, and where representatives of Acorn, Newbury Lab, Tangerine and Commodore were invited as a result. Richard writes on the forum that Transam, Nascom and Sinclair were also on the original list, but in the end the BBC did not even include the offer from Sinclair in the invitation.

The reason that Sinclair did not even get to the final meeting was the stubbornness of Clive Sinclair himself. In the book The Legacy of the BBC Micro, the author refers to a letter from the BBC executive producer John Radcliffe, which states that the project team was in active correspondence with Clive. One of the contradictions was that Sinclair implemented the standard Basic, and the BBC wanted a slightly modified version, and Clive Sinclair had no particular desire to redo it. The BBC saw that Sinclair successfully sells its ZX80 model and is preparing to release a new model. They thought that Sinclair would not be ready to seriously change the specification of his computer, and as a result the company would receive a standard ZX Spectrum in BBC colors. Acorn, by contrast, showed full readiness to do exactly what the BBC engineers are asking. Chris Curry called the BBC and announced his readiness to show a working prototype. The Acorn team had only a few days to refine the Proton to the BBC specification. The presentation was scheduled for 10 am Friday, the prototype was still not working on Thursday night.

As Steve Ferber recalled, one of the Acorn team members: “We were all very tired, but Herman was able to motivate the team. His job was to go out and buy kebabs. He also made tea. He did this to support the team. We all looked at this thing, which still refused to work, and Herman proposed something like “cut the umbilical cord from the prototype to the development system and allow it to work independently.”

Apparently, it was about the synchronization signal from the debug board to the prototype. This decision helped, and by 7 am Friday the team had a working prototype. Representatives of the BBC were supposed to arrive at 10, by which time the prototype was already running real Basic programs, and later it was possible to launch graphics. By some indicators, he even exceeded the stated requirements.

This presentation made a great impression on the BBC, they also liked the attitude of the team to the project and the dedication with which they worked on the prototype.

After the final meeting, the BBC opted for Acorn. Thus began the story of one of the most popular computers in Britain - BBC Micro.

In 2009, the BBC released the feature film Micro Men about the history of the computer industry in Britain, which reliably shows the opposition of Sinclair and Acorn. I highly recommend watching this movie to anyone interested in computer history, especially since it’s with translation.

Then I propose to go to the BBC Micro model B review, which users called Beeb .

So, on December 1, 1981, two models were launched onto the market: the BBC Micro model A priced at ÂŁ 235 and the BBC Micro model B priced at ÂŁ 335. Taking into account inflation and in terms of dollars, this is $ 860 and $ 1225, respectively - not so cheap for a massive home computer.

It is a fairly dimensional (in comparison with the ZX Spectrum) monoblock, in which the computer itself and the keyboard are located in the same package. The central processor is MOS 6502 , which operates at a frequency of 2 MHz. Atari and Apple II were built on it. The released models differed in the amount of RAM (in model A there was 16 Kb, in model B - 32 Kb), as well as in supported video modes. The ROM memory was 32 KB in size and contained BBC Basic, a specially developed version of Basic based on Microsoft Basic v.5.0. The computer had a comfortable 74-button keyboard, which looked much more solid and reliable than the ZX Spectrum.



In the right corner above the keyboard is the corporate logo of the Computer Literacy Project - a pixel owl.



On the back panel of the BBC Micro, there are interfaces for connecting to the TV's antenna input, composite monitor output (black and white by default, but there is a jumper on the board that allows you to output a color PAL signal), an RGB interface for connecting to color monitors, RS423 for communicating with RS232 devices, a tape recorder interface for loading and saving programs and a 4-analog bus bus, to which joysticks and laboratory equipment can be connected. The ADC provided 12-bit resolution.



At the bottom of the case, there is a 1 MHz system bus in a niche for connecting expansion modules (for example, Teletext), an IEEE 488 bus, and a hard disk interface.



The BBC Micro architecture made it possible to install many additional extensions, such as a drive interface, additional high-level languages ​​in the ROM. Acorn even developed its own LAN standard - Econet , which allows up to 255 computers to be networked. Support for this standard was in the Linux kernel until 2012, later it was removed due to vulnerabilities.
Another interesting feature was the ability to connect an additional Z80 coprocessor with its own 64 KB of memory for full compatibility with the then popular CP / M operating system, which was developed by its own bus, called the Tube.

Inside the case is a fairly large fee, details of which can be found in the Service Manual .



Board layout



The board shows the Acorn logo, I already got the 7th revision of the board.



Included with the computer were advertising materials with a specification for a computer and expansion modules for it, as well as instructions and a cassette of programs for the Computer Literacy Project.



Since the project was educational, the Basic language training program was also developed for the computer and many textbooks were published.



Games for the BBC Micro, of course, were also.



One of the most famous space simulators, Elite , was written by Acornsoft specifically for BBC Micro (I have the original boxed version). Later this game was re-released for many other computers.



Acorn User magazine was also published for users of Acorn computers. As in modern computer magazines, advertising accounted for up to 30% there.



Well, it's time to turn on Beeb. The video shows the download and demonstration of Elite , Monopoly and Repton 3 games. For the quality of the video please do not judge strictly. I had to make small modifications to the computer to get a color image from the composite output - by default, only a black and white image is displayed on it. Because of this, the flickering of the image has become more.


The network also has an online BBC Micro emulator, which will help to get a more complete picture of this machine - bbc.godbolt.org

The Acorn story does not end there. After BBC Micro, the company released Acorn Electron - a simplified version of Beeb, BBC Master with 128 KB of memory, Acorn Archimedes line of computers on 32-bit RISC processors of its own production, but Acorn's most significant contribution to the computer industry is the development of ARM architecture , on which There is a huge amount of electronics from smartphones to electric cars.

In continuation, I am planning a small review of Acorn Electron , the materials on it are almost ready, an article about Sinclair QL is also being prepared, but there are some difficulties with it: the cable has dried out in the film keyboard and it does not work, you need to either order a new film or try to restore it.

Thank you for attention.

Source: https://habr.com/ru/post/403871/


All Articles