Reviewer: Jack Schofield

Magazine: Your Computer

Date: January 1984


Fireball - or just go-faster stripes for the old 800? Jack Schofield sits at the controls of the new XL.

THE ATARI 800XL is just the same as the 600XL, reviewed in the November issue of Your Computer - except for one thing: it has 64K of memory instead of 16K. The larger memory is arranged as eight 64K by one-bit chips at the back of the main board, behind the cartridge slot. Thus the 800XL case is slightly deeper.

The 800XL is also pretty much the same as the old 800 in most respects, except for having four extra graphics modes and two fewer joystick ports.

Like the 600XL, the 800XL is a very well designed and well-made machine. It should be, being essentially a reworking of the familiar Atari 800, first launched at the end of 1979.

The thinking behind the XL range is, however, radically different. The original 800 was designed to be both a consumer product and a rival to the main competition, the Apple II. It was designed to be internally modifiable by the average user. Thus the 48K memory was on three 16K cartridges, only one being supplied as standard.

The operating system was in a separate cartridge, in case someone wanted to use alternatives, as later appeared. Similarly the Basic was on yet another separate cartridge, so it could be removed and replaced with an alternative language or assembler - for example the Atari Assembler Editor or MicroSoft Basic II - or simply to free extra memory space for machine language programs.

While all this thinking was very laudable in 1979, it is out of date today, when the competition is not Apple but Commodore.

Now the accent is on making the cheapest possible high-specification machine, which means putting everything on a single board in the smallest possible number of chips, which is what Atari has done. The 800XL now has about a third of the number of chips of a BBC Model B, and far fewer pieces than the old Atari 800.

Thus the 800XL has only eight RAM chips, while the Basic and operating system are on 8K and 16K ROMs on the main board. You cannot remove them, though of course you can still switch out the Basic to use alternative languages and games. But the result is that no internal expansion is possible.

Therefore, Atari has provided for external expansion, by giving access to an edge connector on the main board via the back of the case. This will lead to a cage-type expansion box, familiar in the U.K. on many small micros.

Apparently some of the existing independent cards such as the Bit-3 80-column card, Z-80 add-ons and the 8088 card, some of them designed to plug inside the 800 instead of a memory card, will be adaptable to the expansion box. Atari itself has many other ideas for its own add-ons too.

The previous 800 also had an external expansion unit, the peripheral box. This hung on the serial output port and provided four RS-232C ports and a parallel printer port for something over £100.

Instead Atari is now producing all its peripherials with two serial ports, and offering a range of four printers which all work on this.

For example, you can plug a disc into the micro, cassette recorder into the disc, and a letter-quality printer into the cassette. Unlike the BBC Micro, you do not need an extra chip to run discs. Incidentally, these new peripherals also run on the old 400 and 800.

Here you discover the real beauty of Atari's tiny operating system, which is the same in the 800XL as in the 800 and 400. If you want to Save the file test to disc it is just

Save "D:Test"

To Save it to cassette just use "C:" and so on.

If that is too easy, there are CSave and CLoad for cassette operation, plus eight channels that you can use in the usual Open #1 style. All this means that while the serial bus is inherently fairly slow, it is very convenient to use.

Turn on the power and the 800XL comes up with white letters on a blue screen and 37.5K free to Basic. The mode 0 text screen is 40 columns by 24 characters, with a two-character margin, plus a border outside that to preclude losing text due to overscan on the TV. It is more legible than the Commodore 64 screen, though there is slightly less memory free to Basic.

Typing GR.1 changes the display to a mode 1 screen with five colours and a double-width character set offering 20 characters by 24 lines. There is a four-line mode 0 text window at the bottom of the screen, which you can get rid of by adding 16 to the mode number.

Typing GR.2+16 puts you into mode 2 without text window, with five colours and double-width, double-height characters. The format is 20 characters by 12 lines. This is the last of the three character sets provided, except that the XL range also has a set of international and foreign language characters, including the good old £ sign.

Incidentally, each character set includes 29 block graphics characters which can be entered using Control from the keyboard.

There are 16 graphics modes in all, with the highest resolution being 320 by 192 pixels. The maximum number of colours is 16 or, alternatively, it is possible to have a maximum number of 16 shades of one colour.

A five-colour Mode 2 screen requires only 420 bytes of RAM, and the maximum taken by any mode is under 8K. This gives the Atari a considerable advantage over some machines that use from 8K to 20K of RAM for this.

The modes are controlled by a custom graphics chip called Antic, which has as its program the Display List. By Poking the display list it is possible to mix a number of modes on the screen at the same time and thus increase the number of colours. In fact it is possible to display all 16 shades of 16 colours to produce 256 colour patches. But this is for display only - I can see no practical value.

The colour information is held in shadow registers using the Setcolor (SE.) command from Basic, and these are used to update the hardware registers. It is simple to use variables in Setcolor statements and thus change or cycle screen colours rapidly. The BBC uses VDU commands in a similar way.

Other Basic commands like Plot and Draw to make it easy to produce graphics, and XIO is used to fill areas - among other things. There is no Circle command.

The Atari also has hardware sprites, which the Acorn BBC and Electron micros lack, but which the Commodore 64 has. The Atari has four eight-bit sprites or "players" and four two-bit missiles which can be combined to make another sprite if required. This is fewer than the CBM-64, though it is quite enough considering that, as with the CBM-64, there are no sprite commands in Basic.

All round the Atari graphics are about as powerful as the BBC and Commodore 64 graphics, if not more so. The Atari has the advantage of more modes and more colours than either. The graphics takes up much less RAM than the BBC modes and are much easier to use than the Commodore 64's graphics which are unsupported by Basic.

The Atari sound commands also relate to BBC and Commodore 64 sound commands in a similar way. The Atari has four synthesised sound channels numbered 0 to 3, with parameters to control frequency - i.e., the note - tone quality - from rasp to clear tone - and loudness respectively. Thus a sound command takes the form Sound 0,212,10,8.

This makes the sound far easier to use than on the BBC, though of course delay loops have to be used lacking the BBC's long string of envelope commands.

The sound quality of the Atari is also better in being output via the TV, instead of using a small built-in speaker.

The limitation of the Atari sound is that Basic only offers notes from 0 to 255. However, as the Atari's tones are divided between 3.5 octaves, there is a reasonable match between tones and at least a few musical notes.

The Atari contains a special custom sound chip called Pokey, and the hardware can be Poked to produce sounds directly. This provides a range of about nine octaves, very close to the Commodore 64.

The Atari also has a further sound facility, which is, I think, unique. It uses a dedicated stereo cassette recorder with one data track and one sound track. This means sound from the tape can be output via the TV, even during the loading of a program, as is done on Atari's Lone Raider game. This makes the Atari ideal for things like learning conversational languages, and for integrating real, not synthetic, voices into programs.

The Atari standard Basic's good points are that it contains a good range of commands, has syntax checking on line entry, provides long variable names, is fully debugged, and takes up only 8K. The bad points are that it is not very structured, and that it is slow. Note that it is the Basic that is slow, not the hardware. Anyone who has played Atari's Defender will now that it is faster than Planetoids on the BBC or anything on the Commodore 64.

Taking Benchmarks 1 to 7 from Kilobaud Microcomputing, the Atari 800XL averages 29.2 seconds, which is between the Commodore 64 (25.1 seconds) and Sinclair Spectrum (33.6 seconds). But the BBC is much faster (10.7 seconds)!

Thus the Basic is a lot better than the primitive version 2 Basic of the Commodore 64, but riot as good as the 16K Basic of the Acorn BBC - which is hardly surprising as it is only half the size. Probably the access that BBC Basic provides to the assembler is worth 8K of RAM.

The Atari's use of long strings and string slicing, adopted later by Sinclair, and syntax checking on line entry make the Atari suitable for Sinclair owners' upgrading.

The Atari already has a good selection of peripherals - including disc drives and printers - from the 400 and 800. These work with the XL machines. But a new range of peripherals is being launched in the new styling. These including a number of items simply not available for the BBC or Commodore 64, including an excellent touch tablet, a track-ball and the Gibson light-pen.

Printers include a dot-matrix model, a pen printer/plotter like the one for the Oric, Sharp and Tandy micros, a thermal printer, and a £299 letter-quality printer.

CONCLUSIONS

Benchmarks
Machine CPU BM1 BM2 BM3 BM4 BM5 BM6 BM7 MEAN
BBC Model B 6502 1.0 3.1 8.3 8.7 9.2 13.9 21.9 10.7
Commodore 64* 6510 1.0 10.5 19.2 20.0 21.0 32.2 51.6 25.1
Atari 800XL 6502 2.2 7.3 19.7 24.1 26.3 40.3 60.1 29.2
Sinclair Spectrum Z-80 4.8 8.7 21.1 20.4 24.0 55.3 80.7 33.6