Amstrad Computer User


Amstrad CPC6128

Author: Andrew Clarke
Publisher: Amstrad
Machine: European Machines

 
Published in Amstrad Computer User #11

Andrew Clarke reviews the third Amstrad Computer

Amstrad CPC6128

Just when the last of the major Z80-based CP/M + machines have been withdrawn, Amstrad is releasing the CPC 6128, a Z80-based machine with CP/M+. This has caused puzzlement within the microcomputer industry. Either AMSTRAD is wrong, they say, or everybody else is wrong. My own feeling is that everybody else is wrong, CP/M+ is probably the best microcomputer operating system available, and the Z80 works just as well as it ever did. What Amstrad have done is to release the first affordable CP/M+ machine. The CPC 6128 costs less than Digital Research's original asking price for the license fee for CP/M+ alone. Amstrad throw in all the hardware, and some more software for free. Forget innovative hardware, just the price is revolutionary.

Fashions change very fast in the microcomputer industry. The business market is currently dominated by hardware based on the IBM-PC design. The hardware is bus-based and therefore expensive to produce, and compatibility with the original IBM design requires the use of rather old support chips, and quite a lot of them.

Everybody used to assume that the home computer market would follow in the wake of the business market, with machines copying IBM's design with cost-saving ULAs and PALs in place of the extravagant chippery of the original. If Amstrad's new offering is a sign of the times, then this idea is wrong. We may, in fact, be seeing 8-bit home computers continue to develop alongside 16-bit offerings for a long time to come.

Although the Z80 pre-dates the IBM-PC's 8088, the efficiency of Z80 computers is generally recognized. They suffer, however, in their inability to directly address more than 64K of memory (the rest being accessed by tricking the innocent chip bank-switching or memory-mapping.) It is also difficult to design a compiler (for Pascal or C, for example) that will produce efficient code for a Z80 machine. Nonetheless, there is not a great performance gap between the Z80 micros and the current 8088-based designs.

Good Heritage

When Bill Poel of Amstrad originally contacted me about the 464 (Arnold) before its launch, he seemed slightly grieved about my hilarity; Uncle Clive Sinclair had just announced the QL, a micro of advanced design and ambitious specification. Arnold could not, in all charity, be called a contemporary design. Bill didn't tell me about Arnold's price until I had made a fool of myself by saying that Amstrad must have slid gently out to lunch. When I got one to use, I was impressed. After I had got over the simple pleasures of Harrier Attack and Electro Freddy, I plugged in the add-on disc drive and began to use it as a CPA/I machine.

One just had to close one's eyes occasionally and think about the price. I knew all the tricks of using a one-drive CP/M machine from my beloved old machine 'Big Think' (built in the dark days of 1979, the only micro suffering from woodworm) Arnold was usable. Good grief, it would run a spreadsheet Wordstar MBasic. It was, of course limited by its small available memory (TPA) and its rather wretched disc capacity, as well as the slowness of the console (screen update), but it worked adequately, reliably and was cheap.

The 664, which succeeded the original Arnold, was a welcome arrival but merely reflected the fact that disc drives had approached the cost of cassette drives. Having the built-in disc drive certainly made the kit more compact. The effect of the 464 and 664 on the CP/M marketplace has been curious. Old-fashioned CP/M 2 is now a best-selling operating system once more, a year or so after it ceased to be maintained by its producer, Digital Research. The tide of IBM-PC madness had swept away CP/M as a commercial alternative to PCDOS and it was entirely by chance and Amstrad's imaginative decision that trusty old CP/M 2 then eclipsed MSX as a home computer operating system. Arnold has enabled a whole new population of computer users to obtain the benefits of CP/M.

CP/M Opens the Door

The fact that Arnold runs CP/M gives access to a huge number of programs, compilers, and utilities. It is a matter of trial and error to see what will run on Arnold. As a games machine it is ideal, as it has a bit-mapped screen that enables the games programmer to manipulate the graphics display easily and quickly. It has an excellent Basic too.

CP/M was clearly an afterthought. Although a CP/M system will run perfectly well in as little as 16K, most commercially available programs require 48K or more. Because of the AMSDOS and bit-mapped screen RAM, Arnold could offer only 38K. The drive capacity is severely limited too. The big CP/M programs use overlays and data files, all of which are usually required to be on the same drive as the program itself. Any drive capacity less than 240K will give problems to the larger commercial programs. Another problem that becomes noticeable to someone used to other CP/M machines is the slow screen update. When evaluating the real performance of any microcomputer, the screen update speed is of great importance. If the kit is reliable, the disc access speed is good, and the screen update is fast, then other imperfections are more easily forgiven. It must be remembered that the CPC6128 is more than just a CP/M+ engine; it leads a schizophrenic existence, sharing its time with Amsdos, Here other constraints become more important.

The ability to use colour and different modes without using bags of RAM means that the character set needs to be packed into memory so that 20,40 and 80 column modes can be accomodated by clever software. The unpacking process is slower than a straight copy from the character set, a small price to pay for the flexibility of Amsdos.

One's first impression of the new CPC 6128 is that it is much better designed than Arnold. It is slimmer, shorter, and prettier. The addition of rubber feet means that a disc can be inserted without the very light unit skating across the table. I think that the keyboard has a rather better feel to it as the keys give a perceptible click when pressed; however, the 'feel' is not to everyone's taste. The vivid bright green, red and blue keys have also been toned down in favour of a more restful grey. The actual keyboard design is one of the best I have ever seen, and conforms reasonably with international standards.

The screen casing is very little changed from Arnold, and, internally, has the addition only of a power supply for the disc drive. Essentially, the machine itself is a much tidied version of Arnold with 128K of bank-switched memory. Running the machine is similar to running Arnold and it seems to be upward compatible with the older machine. All my software for Arnold runs on the CPC 6128.

It Plays Games Too

When used for playing games, the CPC 6128 can do everything that you have seen on a 464; although, as with the 664, software houses who have broken the rules may have problems getting their software to run. On the whole, the 6128 is more compatible with a 664 than a 664 is with a 464, someone will prove me wrong, but it is fairly safe to assume that a program which works on both the 464 and the 664 will also work on the 6128.

When playing games it is just like Arnold except that games are loaded off the disc. The extra memory makes no difference, and will only show itself when games writers use it. Games programmers have only just started to explore the advantages of disc. Sorcery+ is the first game to take full advantage of this extra asset, perhaps we will see a Sorcery++ which also uses the extra RAM. When games writers start using the disc, the effects will be far-reaching. (Anyone who has used Microsoft's Flight Simulator, or the Original Adventure will know what I mean). I fear that I am rather spoiled as far as games go as I have an Atari and Coleco games computer.

Nevertheless, the few games that I tried on the CPC 6128 were excellent, and children tended to play with the CPC 6128 just as much as the games computers. With the ability to load games off disc, and the quality of the monitor, the CPC 6128 seemed much slicker than the Sinclair micro. When one reckons in the value of the monitor and the disc drive and appreciates having a real keyboard, then the CPC 6128 is better value than any of the other offerings. The quality of the CPC 6128 as a games machine ultimately depends on the quality of the games that Amsoft and others release.

With Ultimate and the like already writing stunning games which will run on the 6128, its game playing future seems assured. There are many games that run under CP/M. Adventure is compulsory, and both "Dungeons and Dragons" and "Cranston Manor" are available. None offer graphics or sound, but then the human mind can fill in better graphics than any computer.

The Best Basic Ever

The operating software on the Amstrad machines is Basic. There is nothing wrong with Basic. I must admit that, as a professional programmer, I never use it, but it is a respectable and useful language. Locomotive Basic is, I believe, the best Basic ever written, It really is fast enough to write games in, and the astonishing extra features, such as text windows, and simultaneous processes, are unparalleled. To maintain compatibility the extra memory is managed via an 'add-on' module called the Bank Manager.

This may actually be rather fortunate as the only other Basic I know that tried to make full use of 128K of memory (Epson MultiFont Basic) ended up disastrously slow. My only complaint about the resident Basic is that its integration with CP/M is only at the level of AMSDOS file compatibility.

The Bank Manager program allows Basic programmers to make use of the extra 64K RAM. When the software was being developed, commands such as BANKDEPOSIT and BANK WITHDRAWAL were used instead of BANKWRITE and BANKREAD, this, however, did not fit in with the sombre nature of a business computer and so the idea was liquidated.

Despite the unexciting names the RSXes provided by the Bank Manager are jolly good. The RSX I SCREENS WAP moves a full 16K screen image from one bank to another. The 64K available is divided up into four blocks, any one of the images can be swapped with or copied to another block. This gives added scope for animation and is probably the most useful feature for anyone writing games in Basic.

The second facet of the Bank Manager is the ability to use it to simulate a RAM disc. Since RAM is very much faster than a real disc it is ideal for sorting and searching data. There are four commands : BANKOPEN, BANK WRITE, BANKREAD and BANKFIND. BANKOPEN; n divides the whole of the 64K up into sections (records) each one n characters long. The BANKREAD and BANKWRITE commands can then be used to examine and update this information, BANKFIND can be used to search for a string within the extra RAM. These commands are ideal for writing a simple database program.

RAM To Manoeuvre

Far more CP/M software runs on the CPC 6128 than on Arnold, The increase in the size of available memory has been a profound advantage. You can now run Multiplan and other spreadsheets: Wordstar now runs well. The CPC 6128 specification is good enough to run most CP/M software. The limiting factor is now the drive capacity which has not been improved in the new machine. The CPC 6128 was, obviously, designed to read discs in Arnold's format.

One could squeeze up to 200K from the drives by sacrificing this compatibility, but this is still not quite enough. Adding a second drive solves part of the problem but, by itself, is not quite enough. My suggestion would be to have a 256K 'Ram disc' instead as a plug-in addition. This would be comparable in cost to a second drive but much smaller and faster. A 'Ram-disc' is actually extra memory masquerading to the computer as a disc drive.

It holds your programs and requires to be filled only when you switch on the computer. With that extra capacity, virtually all CP/M software would run, and run very fast. The cassette tape is no longer built-in to the machine. The only time that a cassette tape would be required is to load new games off cassette and put them on disc under AMSDOS, or possibly to send data or text through the post. To do this, one has to use an external cassette. The FD1 disc drive is simply plugged into the back to provide a second disc drive.

Surprisingly, this second drive appears to be permanently selected unless the built-in drive is actually being read. Since the drive is only selected and not actually running there is no undue wear on the system.

As before, there are facilities for connecting a joystick and a stereo amplifier. I tested the monochrome machine in order to use it with CP/M (although of course you can run CP/M on a colour system), the colour version would have been better for games. Fortunately, one can use the MP2 modulator and a TV set to provide colour output. It would have been a good idea to have had composite video output in order to take advantage of the much better quality of televisions that accept monitor input. As before, there is no serial port, though an accessory serial port has been announced.

CP/M+ uses a real-time clock. With this, you can record when you created a file, last used a file, or updated it. This has provided some difficulties for the CPC 6128 as the 'system tick' is none too accurate. In all honesty, this should not cause much worry. If you use date-stamping at all, and it is only optional, it is rare that you will need the sort of accuracy that the CPC 6128 finds problematical. As the time needs to be keyed-in every time the machine is switched-on anyway, the inaccuracy will never show itself.

Interior Design

When one takes a screwdriver to the machine one is struck by its simplicity. A couple of ULAs, a ROM, two banks of 64K ram chips, a Z80, an 8255 PIO, the sound chip,the floppy disc controller and the CRT controller. There is no CTC (timer chip), DMA controller or SRO. There is a joystick port, a monitor socket, stereo output socket, tape socket, parallel printer port, disc drive socket and a general expansion socket. It is not cramped inside the box; in fact there is some space between the Circuit board and the disc drive which could be used for expansion. The whole hardware design represents a compromise between cost and functionality. One could bleat for extra facilities but one would moan about their cost. When you look at the 6128 you are seeing a good attempt at the 'People's Computer', workmanlike but hardly luxurious.

On Your Marks...

It is rather unkind to compare performance of different computers of wildly different price, unless one bears the price in mind. With this in mind, though, here are some comparative timings. As time ran out for this review, I was not nearly as thorough as I would like to have been so I addressed myself to the two major areas of performance, screen and disc. Calculation and such is more a function of the CPU clock and so I did not run a test on this. There is no particular significance in the machines chosen; they just happened to be around when I ran the tests:

1. Draw a circle.

This is an interesting little program that really tests the speed of the graphics under LOGO and the quality of the installation work on the DR Logo. The routine was:

repeat 360 [ fd 1 rt 1 ]

Timings were startling:

SPERRY PC (DR LOGO- 16 bit version) ... 23 secs
CPC 6128 (DR LOGO- C/PM+ version) ... 1 min 43 secs
ARNOLD 464 (DR LOGO- small version) ... 3 min 40 secs

Arnold took ten times as long to draw the circle as the IBM-lookalike. Even the full DR LOGO, which gets its cosines from a look up table, took nearly four times as long.

Allowing for the difference in CPU clock speeds, one would expect the 6128 to be about half the speed. DR Logo does not seem to be a medium for games-writing due to the slow graphics, one wonders how useful the language would be in exciting and interesting youngsters.

2. Displaying a long file.

This test gives a rough-and-ready measure of the speed of the console (the rate at which characters are drawn on the screen). This is an important factor when using word processors or spreadsheets where the screen is continually being updated. Windows, pop-up menus and the like are ridiculous if the console Ii0 is slow. Here again, the 6128 does poorly when compared with other CP1/1/44 machines.

Again you have to remember that these other computers do not offer Amsdos and are many times more expensive. The file chosen was the source to UKM7, a public-domain program Disc activity accounted for around 10 to 15 secs of the time.

Epson QX10 (CP/M+) ... 2 min 0 secs
CPC 6128 ... 5 min 43 secs
SPERRY PC (Concurrent CP/M 41.) ... 3 min 30 secs

Now it is no use saying that it is unfair to compare with monochrome computers because the PC was running in graphics mode in full colour. I've seen ARNOLD software that writes direct to the screen running as fast as the QX10.

3. Disc Activity

This test just exercises the disc with very little overhead and is easy to do. Create a file called SELF.SUB with the two lines

;*
SUBMIT SELF

Now type: SUBMIT SELF

and the disc will churn away for ever, or until you type 'control C' or until you pull the plug out. Ten iterations gave the following timings:

Epson QX10 (CP/M+) ... 41 secs
CPC 6128 ... 44 secs

This shows that very little performance is lost from the other disc-based CP/M+ systems by using the cheaper 3 inch drives.

In general use, the 6128 fares reasonably, but I gained the impression that there was not a great speed improvement in CP/M+ over CP/M 2.2 (which is also provided). Generally one expects a twofold improvement, depending on the activity, but I was puzzled by not seeing this with the 6128.

There was not time to detail trials with real applications to explore this further for this review.

If I were asked what I would have liked to have on the machine, that was not provided, I would firstly ask for the serial port. Second on my wish list is the rewriting of the screen drivers to obtain a greater performance. Thirdly, the floppy-disc interface should be modified to allow more than two drives to be connected and to prevent the continuous selection of drive B. As far as future enhancement modules go. I would like a Ram disc of around 256K, providing me with rapid mass-storage that would obviate the need for the second disc drive and allow me to run such nice overlay-based programs as DR Graph, DBASEII, Sensible Solution and the like. Naturally, as I do a great deal of programming, I would like to connect a hard disc too, but I would be surprised if this were a common requirement.

Documentation

The user instruction manual for the CPC 6128 is a weighty tome, at first it may look a bit daunting. This manual, however, is the result of lessons learned from the 464 and 664 manuals. One of the reasons that it took time for other publishers to bring out books on the 464 is that the standard of Amsoft's own documentation scared authors off.

Raw beginners will appreciate the foundation courses which serve as an introduction to programming. In many respects the 6128 manual is the same as the 664 manual, a short chapter describes the use of Bank Manager and the new utilities on the CP/M+ disc. The most important of these is DISCKIT, this covers all the general disc copying and formatting functions which previously needed several programs and takes advantage of the larger TPA to speed up disc backups. The manual takes the user through all the prompts with suitably large warnings for anything which could result in the loss of data.

Both CP/M + and CP1M 2,2 are included with the 6128 and both are well documented. Although the sheer size of the manual makes it quite hard to find anything quickly, the index is quite comprehensive and the spiral binding allows the book to fold flat. Since many first-time users learn programming from typing in magazine listings, the manual has several programs from 'Amstrad User' listed in the back.

The firmware guide which has been much praised by software houses and computer buffs has been upgraded to cover both the 664 and 6128 and should be available soon.

Conclusion

In conclusion, I would heartily recommend the CPC 6128. In fact, I think that it will be a very successful computer. It has nothing innovative about it but its small size, the efficiency of the board design and, more importantly, its extraordinarily low price. It appears backward-looking in its design when compared with the new Apple, Atari and Commodore machines but it is cheap, reliable and has plenty of software of all types to run on it.

It compares with machines costing over four times as much and must represent the best value for money ever seen in microcomputers. No computer is perfect, and the CPC 6128 has problem areas, but they do not spoil the computer and are remediable. As for me, I am happily dusting out all the old favorite 8-bit CP/M software that I had put away, thinking that 8-bit CP/M was dead, and using it once again. There is lots of mileage in the old Operating System yet.

The Plusses of CP/M+

If you are already familiar with CFM 2.2 you will find that CP/M+ offers:

  1. Much faster performance of such programs as ledgers, databases, payroll systems and management tools, due to increased disk performance.
  2. The CP/M interface need never be seen. The 'Autostart' system means that the program, or batches of programs, can be started and run merely by switching on and putting in the disk. The new SUBMIT, GET and PUT utilities present remarkable possibilities for 'turnkey' systems. Even the CCP itself can be easily rewritten for custom applications. The user can run graphical programs that use the industry-standard GSX interface (GSX does for graphics what. CP/M does for discs).
  3. There is no need to do the mysterious 'SYSGEN' operation on new disks.
  4. The user now knows precisely when a file was created, updated or accessed. (files are 'date-stamped').
  5. Files are far easier to find (all drives can be searched in one DIR command).
  6. There is built-in password protection of files. This feature, along with the datestamping, provides more security in an office environment.
  7. The infuriating 'BDOS errors' are now much rarer.

Andrew Clarke