Reviewer: Dr Neil Cryer
Magazine: Your Computer
Date: September 1983
The Electron could not be made much smaller, yet still have a full-size keyboard. It feels solid: no flexing of the case, however hard you try.
It is light, yet feels as though it would stand up to very rough treatment. Also there are no holes for kids to poke things in; so it should go down well with schools. Although the Electron, at £199, is half the price of the BBC Micro it has a better keyboard. The Electron comes complete with an ultra-large plug which houses the power supply. A thin, very long flexible lead connects it to a small socket on the right-hand side of the case. I find that I have to keep taking the knots out of this lead but there are no signs of trouble, after two months hard pounding. When you switch on the Electron makes a little beep which is reminiscent of the Beeb, but quieter, and a green light appears to the left of the keyboard.
On many occasions I have left the Electron on all day. Even in the tropical heat which we have been suffering recently, the power supply stayed quite cool. The Electron does get warm underneath but not hot.
The Electron plugs in to a normal television or to a colour or black and white monitor. Three suitable sockets are supplied on the left of the keyboard.
The cassette connection is via a 7 pin DIN socket to the left of the keyboard. The signals here are at the same levels and with the same connections as for the BBC Micro. This means that any cassette recorder set up for the Beeb will plug straight into the Electron and load with no problems. The motor on the tape recorder can be controlled from the Electron, just as with the BBC.
When plugged in, the Electron produces the welcoming message on the screen:
There is also a little symbol of an acorn at the end of the first line. Then the Electron sits waiting for your words of wisdom, either via the keyboard or the cassette connector - also on the left.
The Basic on the Electron is debugged BBC Basic. It is particularly noteworthy in that it positively encourages clear, structured programming. You will find it quite effortless to remove Gotos from programs and replace with such things as Repeat - Until loops, For - Next loops and procedures. Thus, the long variable names and the multi-line procedures and functions mean that your programs should soon become super-clear. You should find that you - and even other people - will be able to understand how your programs work, even months later.
The Electron comes with a readable and comprehensive user guide. It is well written but would benefit from an index. Also provided is an introductory cassette - which holds a number of demonstrations and games, together with a language called turtle graphics. This language is used extensively in another handout with the Electron: a short book entitled Start Programming with the Electron. Entering programs for the Electron is particularly simple for one-finger typists. The tops of the keys are marked with the usual typewriter symbols. However, on the fronts of the keys, you see, clearly printed, a whole set of Basic words such as For on the F key and Next on the N key. If you put one finger on the function key and then press one of these keys, you get whatever Basic word is printed on its side. This special feature is called single-key entry. For most people, it will save a lot of time and typing errors and will clearly be a boon. Touch typists will probably prefer to type everything out in full, which is also allowed.
As an example of single-key entry, suppose you press the Func key together with the D key. You get the message Draw on the screen as part of the current program line or instruction. You can add to this by typing on the keyboard or, indeed, you could erase all or just part of it by pressing the Delete key, if you so desired.
The number keys double as user definable function keys. So, if you would prefer some other message to appear on the screen as a result of a single key entry, then you can program one of the number keys to cause this. Any of the number keys can be defined to do a variety of things. For example, a single key press could be made to enter the instructions Renumber and List one after the other. Some people using the Beeb, which has similar keys, have entered whole programs as a key definition. This can be particularly useful for editing with the various programs which have been published for such purposes. The number keys still give the numbers if pressed without the function key.
The screen display for the Electron is exactly as for the BBC Model B, with the exception that mode 7, the teletext mode, is not available. The Electron starts up in mode 6 with 25 lines of 4O characters to one screen. There are seven screen modes, numbered from 0 to 6, giving you from 20 to 80 Characters per line, with either 25 or 32 lines per screen Most of these modes allow mixed graphics and text in a number of colours. This is just the same as for the BBC Model B with from 2 to 16 colours, 8 steady hues and 8 flashing. The compromise between resolution and number of colours is the same as with the BBC Model B with mode 0 giving a resolution of 640 pixels by 256 in two colours while mode 2 gives 160 by 256 pixels in the 16 colours.
If you are not content with the standard character set of ASCII characters you can always define your own. By printing one character in one colour in the same place as another, you can also get multicoloured characters. Schemes for doing this for the Beeb have been published and they will work in exactly the same way for the Electron. The Electron is slower than the Beeb - about 2/3rd the speed. There is no doubt that this must be a disappointment to the games software writers. Within the speed limitation, though, most games for the Beeb should still work on the Electron, provided they don't use mode 7 and don't try to scroll the screen sideways.
The Electron uses a massive ULA to do almost everything. This includes doing all that the 6845 video chip did in the Beeb. An impressive design this, going much the way Sir Sinclair did with his ZX breed. There is no screen blanking while loading from cassette, just a message giving the current block number being loaded and the program name. You will see from the photograph of the inside of the Electron that there are very few chips. The main one which catches the eye is of course the ULA. There are 64 connections round this chip. When you think that the majority of the functions of the Beeb are also performed by the Electron you realise also that the masses of chips inside the Beeb have been replaced by this one ULA.
The sound on the Electron only allows one channel at a time. This is disappointing and means that you cannot produce BBC-style music. You can program the envelope of a note in terms of how the frequency should vary while the note is sounding. It is a pity that you cannot also program the amplitude as with the Beeb. Although you can still get most of the usual laser gun and other games effects, you will not be able to produce the Beeb's imitations of various musical instruments.
The sound is produced on one of three tone channels with a fourth for noise. Each channel has been arranged with a different priority. A note on channel 1 will cut off a note already sounding on channel 2, whereas a note on channel 2 will have to wait for any sounding on channel 1.
Basic programs load into memory at address E00, just as for the Beeb, and the memory map for the Electron looks very similar to that of the Beeb. All the relevant VDU, *FX and machine code call points are implemented as for the Beeb. By relevant I mean that some of the specialised VDU options for the BBC Micro, which addressed the 6845 chip, cannot work on the Electron as the ULA now replaces the 6845. The codes for turning on and off the printer are a little superfluous without a printer connection, but when a printer expansion is added, then presumably these will work normally.
This brings me to the assembler. The Basic includes a 6502 assembler, allowing all 6502 op codes and addressing modes, and it can be addressed from within a Basic program, just as for the Beeb. This now includes the use of Equs for storing strings directly in memory, Equb, Equw and Equd for byte, word and double word storage - 4 bytes at a time. These are a very welcome addition for assembly language programmers and make such programming very much simpler. Macros will still have to be implemented via functions or procedures as described elsewhere in the literature for the Beeb.
Now for the features that the unexpanded Electron does not have. These include sideways ROMs; so software such as View, Beebcalc and Beebpen will not work unless you are willing to unplug the Basic ROM and plug in the other ROM instead-which does seem to work. Even this will probably not be possible in the future, as the Basic and operating system chips sit on a little daughter board plugged into one socket. It would seem fairly clear that the intention is to replace the daughter board eventually by one 32K ROM.
According to Acorn, the following, which are well known in connection with the Beeb, will be available for adding to the Electron externally:
All these will presumably be connected via the 50-way connector on the back of the Electron. There are two brass bushed screw connectors either side which look purpose-made for the very substantial bolt-on expansion system which Acorn is already talking about. No details are available at the moment, but clearly there will be an immediate market for them.