AMSTRAD'S PLUS 3 DISCOTECH
SU's spies have been let loose on an unsuspecting Amstrad and here it is: the first in-depth review of the new Spectrum 128K+3.
What can you do with a Spectrum? Amstrad, who parted with some £5 million for the rights to the beast, really had to come up with a good answer.
The Spectrum Plus 2 was their first attempt, and it hasn't been without its problems. Still, it was a rush job; only five months elapsed between the Easter buyout and the autumn launch. And Amstrad claim to have sold about half a million.
Now it's been over a year since Amstrad got its corporate mitts on the machine, and England expects great things from Big Al.
The Plus 2 is down to £150 with a free SJS1 joystick (form an orderly queue), and the Plus 3 is nearly out. At £250, maybe more out than in. It's got a disk drive, it's back in black, but has it got compatibility? Let's see...
The disk drive, sitting in peacock livery on the right of the machine where that famous Amstrad cassette deck once resided, just has to be the main talking point. There's double the Rom space inside the machine: 64K's worth holds the Disk Operating System (Dos), extensions to Basic and various other odds and ends as well as the original 48K Spectrum Rom and the 128K's editor and menuing system. Also added is a parallel printer port (8-bit, unlike older Amstrad designs), and extra printer support in the software.
Cassette software is still supported but you'll need a Walkman or similar plugged player, to plug into what remains of the old 128K +2's sound socket.
The disk drive is (of course) Amstrad's 3" format. It claims compatibility with Amstrad's word processor, the PCW8256, holding some 450K of data on double-sided flip-over disks. That's about 178K per side, which isn't as much as modern drives and disks are capable of. Not by a long way. However, the twin considerations of price and compatibility make the choice of format seem quite sensible. Considering what software superheroes can cram into 48K of gamespace, 350K should keep them going for quite a while.
There's a connector for a second disk drive at the back of the machine. As well as Amstrad's own, there is scope here to hook up a 3.5" or 5.25" drive, so people with Discovery or other interfaces shouldn't panic unduly. It'll still need the appropriate leads and some clever software, but it can't be long before the third-party army rush in to fill the vacuum, if you'll pardon a mixed metaphor. But, and it's a biggie. Plus 2 owners will not be able to buy an upgrade. They might be a little annoyed at that.
The method chosen by the Rom designers to interface the disk drives to Basic is interesting. All the tape commands work without change on the disk drives, so that most Basic tape-based programs will run without any modification from disk. At first glance, you might think that this means that there would be no way to use tape at all. If all the commands are the same, how can the computer known whether to use tape or disk when you Load FROGSTAR'? The answer lies with device names.
Device names are an ancient trick, dating back to the dinosaur days of CP/M (of which more later) and 16K machines. The Spectrum Plus 2 knows about four devices: tape, disk 1 (the one built-in), disk 2 (that optional extra), and the Ram disk. It calls them T:, A:. B: and M:, and to use one particular device you include the name of the beginning the name bit of a command. So to load a program from tape, you'd do
Similarly, to save a program to disk 1 (which is the one built into the Plus 3), you d type
The Ram disk is a way of soaking up the extra Ram provided. Like the Spectrum 128 and the Plus 2, the BASIC can only deal with about 40K directly (if it could manage more, compatibility would suffer). If you want to write bigger programs, you need to divide them up into sections and Merge in the bit you want. This is very quick if you use the Ram disk, which is designed to use most of the same commands as the real disks. The Plus 2 had a silicon disk, which was the same idea but had its own set of funny commands. The Plus 3's Ram disk is much more standardised, and I expect to see some pretty clever Basic programs about before long.
There are special forms of Load and Save to save time and make program conversions nice and easy. Load "A:" means "make all subsequent Load commands use disk 1". Save "T:" makes all the Save commands which follow work on tape. So the one line Basic program Load
"T:FRED : Save "A:FRED"
copies FRED from tape to disk. Inter-disk copying is done by using, well. Copy, Move also gets a look, and acts as a rename command. There aren't any brand new keywords - all of the new functions are implemented by novel (and sometimes bizarre) combinations of the existing commands.
Format is used to set up a disk when it's used for the first time. These commands were used with the Interface 1 but - shock horror - the Plus 3 isn't Interface 1 and Microdrive compatible. You can plug in Interface 1, but it won't work. The reason lies buried deep in the Plus 3 hardware, so it's not going to be possible to produce a software fix.
Amstrad were over a barrel about Microdrives. The rights to the Microdrive technology stayed with Sinclair after the takeover, and this included the code which is in the Interface 1 Rom. So even if Amstrad wanted to, they couldn't have guaranteed complete compatibility. And maybe they didn't want to. In any case, Microdrlves are now off the menu.
Another ex-Microdrive command pressed into service is Cat. It's most ingenious use is to help out with transferring tape software to disk. Spectrum tape files can be Basic programs, machine code or data, they can automatically Run when they're load, as they can have memory addresses associated with them to tell the computer where to load them. All this information is held on a 'header', which is the short burst of data recorded just before the main file on tape.
There's also a Cat Exp command, which produces extended information about the stuff on disk. It also gives a vital clue about the way the files are stored, because some of that information is concerned with file attributes. File attributes contain information which the computer uses to determine what can be done with a particular file. They concern things like whether the file can be deleted, whether the computer should display it when the user asks for a catalogue and whether the file has every had a copy made of it.
THE GUIDE BOOK
The boys from Brentwood redeem themselves somewhat with the manual. This is a much- extended and mega-modified version of the Plus 2 book, and it covers just about every aspect of the machine that anyone could want to know about. The backbone of the book is still the original Steve Vickers idiosyncratic learn-yerself Basic course, with all the old gems (on string-matching: "Which of these is the lesser, "EVIL" or "evil"?).
There's a lot of extra stuff about disks, the new memory maps, the extra printer stuff and a lot of very detailed information on the Dos. There's a whole bunch of new demo programs. Including some which are genuinely useful and some which are mind-numbingly naff. To be honest, there's not a great deal of scope for anyone who wants to publish a book on what Amstrad left out; - there simply isn't much. However, the book is pretty badly organised and the layout is unhelpful. 330 pages is a lot of book, and it (like the Plus 3) has obviously grown in fits and starts from the days of the ZX81. Coherent it isn't.
Most questions that a new users, or an existing Spectrum user wanting to upgrade, might ask are answered in the manual - somewhere. The "how do I copy my software to disk?" problem is given special consideration. However, the simple tape-to-disk tricks provided in the Plus 3 Rom only works on ordinary Basic programs; games and other machine code stuff will need transfer programs.
The new printer support is pretty comprehensive. As well as the existing Plus 2 serial printer port, there is a parallel interface. One of the areas most prone to problems with computers in general and the Spectrum in particular is the interfacing and usage of printers. With the Plus 2 the problem was exacerbated by a peculiar interface to Basic which made sending control codes (special commands to switch in different styles of printing) to printers virtually impossible. With the new Plus 3 Basic, any control code can be sent, or the old Plus 2 way of doing things can be selected for program listings. Printing can be either the old serial port or the new parallel one, which means virtually any printer will plug into the Plus 3. Any programs in existence which use either the existing Basic Lprint or Print commands to drive printers should run unchanged. The same is true of any program which uses the official machine code ways to drive a printer, which should cover most popular business programs. In any case, very little conversion work should be needed. Switching between the serial and parallel interfaces is managed by the Format Lprint command; Format Lprint "C" diverts output to the parallel interface, and "R" switches it to the serial port.
A useful command which has been much improved is Copy. By itself, this command prints a simple picture of the screen on any Epson-like printer. On the 128 and Plus 2, this was just a dot-for-dot copy, with no attempt to show colours. On the Plus3, the command Copy Exp (for Expanded) does a full greyscale dump of the screen, where each colour is represented by a pattern of dots on the printer. The lighter the colour on the screen, the fewer dots on the paper. There's also a Copy Exp inverse which produces a negative image; many screens look better that way on paper, and it can save on ribbon wear.
The legendary Spectrum 128K keypad, nominally supported on the Plus 2, has been consigned to the same fate as the Interface 1. The socket into which it once plugged has been relabelled Aux, and most of the supporting code in the Rom removed. The electrical connections are still the same, so things like modems which drove the hardware directly have a chance of working. The editor keypads commands (things like delete line and go to top of program ) are still active by pressing odd keyboard combinations, as they were on the Plus 2.
The Plus 2's Basic editor survives unchanged, bugs and all. To the untutored eye. 95% of the Basic has survived unchanged from the 128/Plus 2. Deeper in, the organisation of the Basic has mutated considerably. The original Spectrum had 16K of Rom, which had all the Basic and editing code in it. The 128 and Plus 2 added an extra 16K Rom, which had the editor, new printer support and other little extras in it. The Plus 3 has two more 16K Roms in it, which hold the Disk Operating System, still more new printer stuff, an extended syntax analyser for all the new varieties of command, and some more stuff which Amstrad are keeping quiet about.
The hardware inside is hugely different from any previous Spectrum. Even including the disk interface, there are far fewer chips than the 128 or the Plus 2. Instead of 16 chips providing the 128K Ram, there are just four. There are two 32K Roms, holding all the aforementioned software, the RS232 driver chips, the sound chip, the TV picture chip and the TV sound chip. All the video circuitry and glue (the chips that stick everything together, electronically speaking) are contained in one postage-stamp sized gate array chip.
This tiny fleck of silicon and plastic has the honour to be the first chip to have been designed at Brentwood, as opposed to one of Amstrad's many subcontractors. As well as actually producing the video signal, it also manages the new memory configurations, the joystick ports and the printer port.
This chip is a completely new design. It's difficult to know at this stage whether it's introduced some incompatibilities with the old hardware, but it seems to work with all the games I tried that also worked with the Plus 2. It doesn't have any new video modes; you're still stuck with he same screen format as the original Spectrum. Colour clash, it seems, will be with us always. I tried a few bits of hardware, joystick ports and the like, and it all seemed to work. Even as complex as animal as Ram's Music Machine operated without a murmur (except when I sample a mumble).
Amstrad has been criticised about many aspects of the Plus 2, and it took quite a bit of it to heart. The redesigned TV circuits gave a much better sound quality and a generally nice picture all round. The socket at the back of the computer that provided sound on the Plus 2 new doubles as a cassette connector. It's a Walkman-style socket, with one connection for loading and one for saving. Using an external cassette recorder should make loading a little easier for those poor souls with slightly shaky hyperloaders. The Plus 2 cassette recorder saga suggest that there s a lot of that of thing about.
The joystick connectors are once again Amstrad's own peculiar standard (boo hiss). Still, any joystick interface that worked with the 128/Plus 2 should work with the Plus 3, and all new stuff that's come out since the Plus 2 hit the streets with a dull thud copes with Amstrad s eccentricities in any case. Grey or black.
Amstrad s other main eccentricity, that of pricing the Plus 3 at £250 quid, is a little more difficult to explain. It's competing pretty much head-on with the existing disk-based games micro that Amstrad produce (the CPC 6128), which you can get for about the same price with a monitor. Perhaps it's all an attempt to make the Plus 2 look more attractive before the Christmas wars set in, but's difficult to escape the conclusion that Amstrad have gone a little bit gaa-gaa over the pricing.
At £200, it would be an exciting product. At £175 or £50, it would be an Amstrad bestseller. At £250 it's overpriced, and Amstrad must surely know it. Their other actions, dropping the price of blank disks, and giving software houses machines to work with, are at odds with the price. It can't cost much to produce. Let's face it. It's a Spectrum with disk on the side, and in these days of ST's and 500 Amigas it just might not make it. Amstrad - it's too expensive...
CP/M is a funny thing. The initials stand for Control Program/Monitor, and it's a standard operating system for computers based around the Z80 microprocessor, which all Spectrums are.Until the IBM PC came about, most business programs ran on machines with CP/M. Now not many people are going to worry about running Wordstar or other 'professional' programs on the poor old Speccy, but there are a lot of sophisticated software development programs available for CP/M.CP/M doesn't require much from a computer. But all Spectrums to date have been no good, CP/M wise. The main problem has been that CP/M needs a computer that has Ram at the start of memory. Until now, all Spectrums had Rom at that point, but the Plus 3 has an optional all-Ram mode which is just perfect for CP/M. The screen and keyboard aren't so well suited, but those are minor problems. Amstrad haven't as yet said that they will provide a Plus 3 CP/M (which would make the CPC 6128 a little vulnerable), but it comes as no surprise that Locomotive, Amstrad s tame firmware house is already working on a version of CP/M for the Plus 3. The temptation of all that cheap business software is just too great.
DISC OPERATING SYSTEM
The Disk Operating System (+3DOS) was written by Locomotive Software, who have a long and mostly honourable association with Amstrad. It comes as no surprise that it bears a distinct resemblance to Amsdos, the Dos for the CPC464 and 6128 which Locomotive also wrote. Plus 3 Dos has lots more features available to machine code than are hooked into Basic.For example, there's a complete set of file handling routines hidden away. Basic users can't Open a file to disk, or Print stuff to a file. All the code is there, but the Basic hasn't been modified to use it.
This is probably a good point to mention the six free games on one disk that Amstrad are generously dolling out with the computer. Some of Ocean's finest (well, almost finest) are here: Gift from the Gods, Mailstrom, N.O.M.A.D., Supertests 1 and 2 and Cosmic Wartoad. The nicest thing about disks is that it only takes seconds to realise that the game you've loaded is as interesting as stewed spinach, rather than ten minutes.There is also the interesting possibility of games houses selling both Amstrad and Sinclair versions of their wares on the one disk. This should (but may not) make it cheaper and more economical to distribute stuff on disks. This is vital to the Plus 3's success - if the price of disks make it impossible for software houses to produce programs for disk use only then it'll have a hard time competing with the Plus 2.
In use, the disks are a bit lacking in the speed department, compared to existing interfaces like the Disciple. Once a file has been found and loading started, it's all as swift as you might hope for, but it can take a few seconds to get that far from the Load command. Still, the difference between disk and tape is massive enough to soak up a couple of seconds here and there. Once you've used the Plus 3 with disks, going back to cassette is almost impossible.
COMPATIBILITY WITH OTHER MICROS
An all important one this for those wishing to upgrade. There are some serious problems. These relate less to software - games from the 128K +2 should run without problems - which should be fairly but more to do with hardware.These are two big differences with the +3 compared to all previous Spectrums. The first is the video output, this has been altered such that it will no longer drive monochrome monitors - maybe important if your using a Spectrum for business or educational purposes. The second problem is more significant, the edge connector has been altered so that the 9V line no longer exists. This has been used in the past to drive various peripherals like modems. These will no longer work with the +3. So if you are upgrading check your add ons specifications do they use the 9V line? They won t work.Interface 1 considerations aside, the Plus 3 looks at first sight to have a good chance of running lots of old software. Like the Plus 2, it's got a 48K Basic mode, where it tries very hard to look like an old-style Speccy. In this mode none of the new hardware can be accessed, of course. It's a pretty good replica of an old Spectrum. There were some Rom locations that were changed on the 128K Spectrum, and this results in incompatibilities with badly-designed joystick adaptors.These locations have been largely replaced in the new Plus 3. but there are still a few differences which could knobble a game or two.Game writers who use existing Amstrad computers to generate code on should be pleased to know that you can take a machine code file generated on a PCW8256 and turn it into a proper Spectrum file with the quaintly named Copy "filename" To Spectrum Format' command. This takes a standard Amstrad file, and puts a Spectrum header on the front of it. The Speccy can then load it in with Load "filename'' Code command, and there is the program, transferred without recourse to RS232 or special programs.The Spectrum can also load a program from disk automatically. The idea is that the user unwraps the latest games on disk, turns on his Spectrum, shoves the disk in the slot and presses one button. From them on, everything progresses smoothly.First of all, the Plus 3 looks for a special program on the disk called "*". This program can't be produced by BASIC, so if the computer finds it, it knows that it was put there by a software house. If it finds "*" it loads and runs. If it can't, it tries to find, load and run a Basic program called DISK. If that falls, the computer gives up and goes back to the user. If the computer can't find a disk at all. It goes into a routine which loads any program from tape, just like the Plus.