BBC MICRO - REVIEW
Practical Computing

The BBC seems set to change the face of U.K. computing. Its micro is more advanced than anything the Americans or the Japanese can offer for the same price. Charles Moir delivers his verdict.


IT IS TWO YEARS or more since the BBC started internal discussions about a computer-literacy project, and by April 1980 clear objectives had been drawn up. The fundamental aim of the project was to increase computer literacy and to encourage as wide a range of people as possible to gain hands-on experience with a microcomputer.

The decision was made to support the television series with a specific microcomputer and, if possible, to have the machine made under licence to the BBC's own specification. There were dozens of home microcomputers on the market, but most were either too expensive for the beginner - and usually American - or were incapable of being extended.

The Basics on these machines were often incompatible, and no inexpensive machine on the market took account of the possibilities of teletext or Prestel. The BBC was particularly interested in the idea of telesoftware - which called for a machine made to their own specification. At the end of 1980 a specification was released to a range of micro manufacturers, with an invitation to tender for the contract. The requirements for the micro included:

A Basic high-level language, since Basic is easily understood by the beginner while allowing sophisticated techniques to be used. The Basic was to be as compatible as possible with existing Basics.

A full keyboard, to include an additional row of keys capable of producing any code under software control.

A teletext extension to load software from teletext transmissions.

Medium-resolution colour graphics with good software support.

A low price for the basic microcomputer, with the capability for expansion to a more powerful and flexible system.

Rival contenders

At the time, Acorn Computers of Cambridge had a new computer under development called the Proton, and it was this machine which caught the BBC's interest over its rivals - which included the then unreleased Sinclair ZX-81. Acorn soon had a working prototype demonstrating the main features of the machine, and after extensive discussions between the BBC and its advisers Acorn was given the contract to produce the BBC Micro. The contract stipulates that the machine is simply to be called "The BBC Microcomputer" - no trade names are to be used.

The BBC and its advisers kept in close contact with Acorn's engineers while the BBC Micro evolved. The crude prototype has been developed into a product that greatly exceeds the original specifications. The machine is currently being manufactured by ICL and Cleartone.

There was close co-operation, too, between the BBC and Acorn's software engineers developing the machine's Basic. The resulting language is close to Microsoft Basic - as used by Pet, Sinclair, Nascom, etc. - but with many extensions to control the wide range of features of the new machine. The Basic and the operating system together are contained in 32K of ROM - by any standards, a huge quantity of ROM to devote to built-in functions and commands.

The BBC Micro is based on the 6502A microprocessor, the 2MHz version of the tried and trusted 6502. Externally, the computer is larger than most competing machines, measuring 415mm by 350mm. It accommodates a completely internal power supply and there is space on the main circuit board for over 100 chips. There are two very advanced custom-made chips, one controlling the graphics, the other handling the serial interfaces.

There are two models of the BBC Micro. Model A sells for £235, and Model B for £335; both prices include VAT. Model A can be upgraded to a Model B for about £135 by taking it to any Acorn dealer. Partial or do-it-yourself upgrades are not really recommended.

Model B has 32K of user memory, while Model A has only half this amount and cannot use some of the higher-resolulion graphics. Other features only available on Model B include a serial and parallel interface for printers, an eight-bit user port, four analogue inputs, and a bus extension which allows teletext, Prestel and various other expansion units to be fitted. The analogue inputs measure voltage and so could be used for joysticks or in almost any situation requiring voltage measurements.

Another particularly interesting interface is called the Tube. Through it, a second computer - called the second processor - can be attached; it is controlled by the BBC computer and all programs or data are sent to or from the second processor through the Tube. This approach could allow the system to be expanded almost indefinitely.

Both models have the same amount of ROM, and both have access to all the Basic commands and operating facilities. No extra ROMs are needed for colour, drawing or sound facilities, unlike both the Vic and the Tandy colour computer. The cassette interface in both machines can operate at 300 baud - the same rate as the Sinclair and the Atom - and 1,200 baud. The computer incorporates a small relay which will enable suitable cassette machines to be started and stopped automatically, though this facility is only available on cassette players that have the proper motor connections.

Sound and graphics

The same excellent keyboard appears on both models. Its 64 keys are laid out in the normal QWERTY style and give a really professional feel. Along the top there are 10 additional user-definable keys. All keys have auto-repeat.

Table 1. Graphics modes
   Resolution  Text  Colours  Memory
         
 0  640 by 256  80 by 32  2  20k
 1  320 by 256  40 by 32  4  20k
 2  160 by 256  20 by 32  16  20k
 3  -  80 by 25  2  16k
 4  320 by 256  40 by 32  2  10k
 5  160 by 256  20 by 32  4  10k
 6  -  40 by 25  2  8k
 7  teletext  40 by 25  16  1k

There are eight different graphics modes, most of which enable text and high-resolution graphics to be mixed anywhere on the screen - see table 1. All the modes are memory mapped. Since modes 0-3 use 16K or more of memory they are only available on Model B. Mode 7 has the same format as a teletext display, allowing colour graphics with only 1K.

The display is free from flicker or video interference. The Colours column in table 1 indicates the number of colours which can be shown on the screen at any time; they can be any of eight colours, and eight flashing colours.

Both versions of the BBC Micro have a special sound chip fitted as standard allowing up to three-note chords. There is also a noise channel capable of producing four different noise effects. Software is included in the operating system enabling envelope control of all channels without having to Poke to any registers.

Up to eight different envelope shapes can be stored in memory. Strings of notes can also be stored in a special buffer. On command they can be played back automatically while the computer is doing other things. Sound is normally played through a small internal speaker, or can be fed to an external amplifier. The noises are very similar to those available from a Vic, but on the BBC Micro they are very much easier to control. Although of little practical value, sound effects do add an extra dimension to games.

The 32K ROM contains a large number of fairly complicated commands to control the graphics, and it is well worth the effort needed to get to grips with them. As well as the usual Move and Draw, there is an extensive set of Plot commands which enable points, lines or even dotted lines to be drawn anywhere on the screen, either at absolute co-ordinates or relative to the last point plotted.

It is possible to draw triangles and fill them with colour to make complicated shapes appear solid rather than just outlines. I managed to fill triangles with coloured stripes, giving the effect of a range of new colours. The short program below demonstrates this by drawing random triangles in random colours over the screen while printing "Hello Fred" and scrolling.

10 MODE 2
20 FOR X=0 TO 255
30 GCOL X,X
40 COLOUR X
50 PLOT 85,RND(1280),RND(1024)
60 PRINT" HELLO FRED"
70 NEXT

The BBC Basic has some minor differences from the familiar dialects. The most immediately obvious is that a "?" no longer means Print, which is effected by "P". The formatting of the Print statement is slightly unusual but it is flexible: for example, a table of prices can be tabulated to align all the decimal points.

The Peek and Poke commands have been replaced by a "?" - a remnant of Atom Basic - which is far more flexible than Peeking and Poking memory locations. The automatic line-numbering facility and an almost instantaneous Renumber command are both very useful. The Tab X,Y command instantly moves the cursor to any position on the screen for printing. The On-Error function allows error trapping.

A much-improved version of the Atom assembler is also built in. It enables the mixing of Basic and assembler statements anywhere in the program. Features such as Repeat-Until loops, functions and procedures appear to have come straight out of Pascal. Subroutines can be called by name rather than Gosub commands. These features add up to an extremely powerful and flexible Basic which is certainly better than any machine in its price range.

The BBC Microcomputer has been designed from the outset to be expandable. Many of the most useful extensions are available simply by plugging in the appropriate chips: for example, the floppy-disc interface and the Econet interface are on board. The unusual voice synthesis option also consists of a few chips to be plugged into the main board. The chips serve two purposes; they enable the computer to speak, and they control special cartridge ROM packs that can be fitted. Acorn says that the voice patterns used in the speech chip are those of news-reader Richard Baker - after all, it is the BBC's computer.

The chip has a built-in vocabulary of about 150 words, while additional words can be built up from elements known as "allophones". The speech controller will also load data out of special ROMs into the computer. These will be in small plastic packs slotting into a connector which is usually hidden under the plastic surround of the keyboard.

It is planned to make the Prestel and teletext adaptors available separately, or together in one box. The prices, which have yet to be finalised, should be about £120 each or £200 for both. They will provide all the normal teletext and Prestel services, and will allow downloading of programs or data directly into the computer. The Prestel extension will allow two computers to send programs to each other over the telephone. Neither adaptor is likely to be available until the Spring of 1982.

At about the same time there should also be a choice of second processor, either another 6502, or a Z-80 which can run CP/M. Both will come with 60K of user memory. Also planned is a 16-bit processor - probably the National 16032, similar to a 32-bit minicomputer in many ways - which can address up to 16Mbytes of memory and will probably come with 128K or 256K of RAM. All the second processors will communicate through the Tube.

Two television monitors are already available: the black-and-white model costs £105 while the colour version costs £288 - a very reasonable price for a colour monitor. A cassette recorder will be available for £26 and includes the appropriate connection for motor control. Various leads for printers, monitors, etc., are also available.

Software support

A user manual is supplied with the BBC Micro, giving a guide to the machine's functions and the software. Most of the book deals with the Basic, describing each Basic keyword separately. There is also a brief description of assembler programming. This book is not intended as a course on Basic programming, but is aimed more at those who already have a brief understanding of Basic.

Also included is a cassette of 16 programs. There is nothing particularly exciting here: an introduction to the computer and a few demonstration programs using the high-resolution graphics, a Biorhythms, a Breakout and others in similar vein. A booklet describes each program and gives instructions on how to set up the computer. As usual there is a lead to connect into the aerial socket of a TV - as usual, the lead is too short.

This computer will have plenty of good software to support it. The BBC has commissioned several major programs, including a professional word-processing package and a financial-modelling program. Others that will be available include Home Database Management, Computer-Aided Design - both scientific and business simulations - and a range of telesoftware programs. Games and other less serious software will no doubt be available from many sources.

No microcomputer can ever be totally free from criticism, though the BBC Micro has nothing seriously wrong with it. I would have preferred a case that was a little more robust, and there is even a notice on the underside warning against putting anything heavy on the top. This is a pity, because the flat top forms an ideal platform for a small TV or monitor.

The 32K of user memory could prove to be a limitation. On a complete system with discs, Econet and a printer fitted, the operating system may use up to 8K. Coupled with Mode-0 graphics, the user is left with only 2K. Acorn says that such a system would certainly warrant a second processor, which is fine if the additional costs can be kept reasonable.

One peculiarity when using Mode-7 graphics is that some keys will display the wrong characters on the screen. It happens because this teletext-compatible mode has a peculiar character set including fractions, whereas all the other modes have a more normal set.

No cassette lead is supplied with the computer on the grounds that any particular lead supplied would at best fit only 30 percent of existing cassette players. On the review machine part of the bottom line of text dropped off the screen. This fault was worse in some modes than others and may have been due to the computer itself or the monitor being used.

Though 40 characters per line is often considered the maximum that a normal television can show, the BBC Micro displays 80 characters per line on a normal black-and-white television while remaining completely legible. On a colour set 80 characters per line becomes uncomfortable, but it is readable. The improved readability is no accident - the character set has been specially designed, with all the vertical bars of each letter two rather than the normal one dot wide. The teletext mode gives one of the most readable displays I have seen.

Conclusions

• On the whole, the BBC Micro is an impressive machine.

• It is certainly more advanced than any Japanese or American product available at the moment - altogether an advanced and flexible tool which really lives up to the term "personal computer".

• It looks good and it gives a high-quality display on most televisions.

• Predicted sales of 100,000 in the first year no longer seem surprising with a machine of this quality, so let us hope that enough can be built to meet demand.


This review appeared in the January 1982 edition of "Practical Computing".

http://www.stairwaytohell.com