Vic has got a lot O’ Gottle

Under the tutelage of Karl Dr Doolittle’ Dallas, the Chatterbox turns out to be no dummy.

Chatterbox002

Chatterbox – targeted at the nappy-user or the computer user? Let it speak for itself.

Experimentation is the name of the game with the Chatterbox speech module. Within minutes of power-up I was getting intelligible sounds – although some of them sounded like the ventriloquist’s ‘gottle o’ geer’.

Its powerful features are done no favours by the Chatterbox name and the ‘court jester’ logo, however. It looks as though it is targeted at the nappy user rather than the computer user, and you get the impression that plugging it into an unsuspecting Vic-20 will be the cue for snatches of panto dialogue.

But let its potential speak for itself.

The Chatterbox is about the size of a cigarette case and plugs into the expansion socket of the Vic. It will also plug into the motherboard if you already have a RAM pack fitted.

There are two dongling plugs – actually, a 5-DIN plug and 5-DIN socket – for which no explanation is given in the brief
but clear documentation supplied. You just connect the Vic’s audio/video-out socket to the monitor A/V-in, and sounds come out of the monitor speaker.

If you’re using a demodulator for normal TV display, you plug the Chatterbox into the socket, and plug the demodulator’s 5-pin into the Chatterbox socket.

Chatterbox001

PCN surgery reveals the electronic vocal chords of Curragh’s Chatterbox.

In use

Speech is synthesised by typing ‘allophones’. These are alphabetical symbols which stand for 62 unique sounds, including five pauses from ten to 200 milliseconds long. The allophones are separated by oblique strokes, so my name becomes:-

‘C/AR/U/L/P5/DD/P2/A/LL/U/S/S/’

P5 and P2 are pauses of 200 and 30 milliseconds respectively, the latter representing the small explosion that follows the initial letter ‘D’ in a word.

For some reason the allophone /C/gave a happier initial sound to my first name than /K/, though both can be used. The /AR/ sound (why not /AH/, since it contains no ‘r’?) seemed to need a brief ‘uh’ before the final ‘I’ – represented in orthodox phonetics by an upside-down ‘a’, and here by the allophone /U/.

The whole name is stored in a string, and voiced by calling SYS 41000. To voice strings longer than the capacity of a single VIC program line, you can concatenate them into sentences. But you must remember to insert pauses between the words.

Any mistake will terminate the computer’s interest in saying your word at the point where the mistake occurred, as will failure to terminate each word with an oblique.

I never managed to get a satisfactory ‘w’ sound, but ‘/OO/EE/’ sounded more like ‘we’ than the more obvious ‘/W/EE’.

The voice itself is completely toneless, and despite the north-eastern origins of its (presumed) inventor, has a slightly mid-Atlantic flavour.

Pressing ‘F1’ causes each letter to be voiced as it is typed in, as well as screen-edit commands such as RETURN or CURSOR. (For some reason this acts only in the unshifted mode, so that CsrDn is voiced, but not CsrUp.) The constant vocal commentary can become distracting if one is typing in a program, but it can be turned off by pressing ‘F3’.

The documentation consists of a 20-page cassette-sized booklet, which begins with a three-page introduction to the theory of allophones. This can be skipped. Tables of the actual allophones and example words are also included. The words are printed with the allophones separated by dashes rather than obliques, and this could lead users astray.

I found a few minor errors and confusions. The suggestion that ‘/DD/ sounds good in initial position and /D/ sounds good in final position, as in ‘daughter’ and ‘collide’ is confusing, since ‘daughter’ has no final /D/. It should have read ‘respectively’.

The allophone table suggests that /DH/ is the ‘mu’ sound in ‘muM’ and /DHH/ the ‘mer’ sound in ‘merM’. but they’re the short and long versions of a voiced ‘th’. This turned out not to be a printing error. The maker differs with me on what /DH/ actually sounds like.

There are two programs, one demonstrating each allophone in turn while printing demonstration words on the screen, the other a speaking clock, which uses the VIC’s internal jiffy-counter to say things such as:-

‘TT/II/M/P5/I/I/S/S/NN/II//N/P4TH/ER/TT/EE/N/P/ER/EE/S/II/S/L/EE/’

When I keyed in the demo program. I kept getting a syntax error on a perfectly normal data line. I couldn’t find the cause, but I think I spotted an error in line 565 of the clock program (‘PA5’ where, presumably, they mean ‘P5’).

The manual also says that the allophone /S/ can be doubled to /SS/, but it produced an error when I did this, and I had to use /S/S/.

Verdict

It’s a pity the manufacturer doesn’t supply a suite of demo programs on cassette, since it is irritating to have to key in a long and at first meaningless (and therefore error-prone) program before you can explore the module’s full potential.

I can imagine wanting to use this neat little add-on (I had it talking within a six-line program in a few minutes) in interactive programs, and I’m quite jealous that I can’t plug it into my business PET. But it should be possible to dissect how it works and write a routine machine code. This would be hard on its inventors, but is, I suspect, inevitable.

  • Machine: Chatterbox Speech Module for the Vic-20
  • Price: £57.45 inc. postage and VAT
  • Available: from branches of Spectrum shops
  • Manufacturer: Curragh Computer Components

First published in Personal Computer News magazine, 25th March, 1983

Advertisements

Commodore 64

C64_Main_001

The 64’s strong selling point is its memory capacity, but – as Simon Beesley discovers – its other features all conspire to make it something of a force to be reckoned with.

The Vic-20’s stock has fallen slightly since it first went on sale last autumn. At the time it was welcomed as the only computer under £200 with colour and sound. Now it seems overshadowed by a number of competitors which offer more features at an equivalent price.

People tend to point to the Vic’s limited memory capacity – only 3.5K – or its constricted screen layout of 22 columns by 23 rows, and belittle its strong characteristics as secondary features. But such secondary features as well-spaced and robust keys, or a good screen editor assume great importance for anyone who spends much time programming.

Improved screen size

The Commodore 64 remedies most of the Vic’s shortcomings, while maintaining its virtues. The keyboard layout is the same and, apart from its beige colour, the casing has the same size and appearance. An extra games socket supplements the number of ports available on the Vic. These allow attachments to cassette, disc drive, program and games cartridges. A user port which will take a Z-80 cartridge to give the 64 access to CP/M software is also included. The VicModem, RS-232 and IEEE interface cartridges can also be plugged in.

Memory capacity and screen size are two areas in which the Commodore 64 improves on the Vic. 64K RAM is on board, of which 38K is available for Basic programs. The screen format gives 25 rows of 40 characters. Like the Vic, there is a choice of 16 colours and two character sets which include predefined graphic characters.

Commodore micros score highly for the ease with which one can change character sets, select graphic characters and alter the text or graphic colour. All this can be done through a combination of control and colour or graphic keys. Compare this with the laborious business of keying in a VDU command on the BBC Micro to change colour.

Easy to set up displays

Setting the background and border colours is equally convenient and just requires Poking a value into a single memory location. Multicolour mode on the Vic and the 64 enables you to use four colours within a single character space but is really only suitable for user-defined characters. Extended Colour Mode on the 64 is a new and more useful feature, which allows you to choose one of four colours for the background to a single character. The drawback is that only the first 64 characters can be used in this mode.

The 64 runs the same Basic as the Vic, itself more or less the same as Pet Basic. Programs should be transferable from other machines with 40-column displays if Peek and Poke addresses are changed.

The attractive feature of this Basic is the convenient way that cursor and colour control characters can be entered into character strings in a Print statement. They determine the screen position and also the colour of the text or graphics that follow after – making the task of setting up the display in a program considerably easier than it is in other versions of the language.

In these and other respects the Commodore incorporates almost all the specifications of the Vic-20. But it would have to be more than just an expanded Vic to justify a price of nearly £350 including VAT. Sprite graphics and a powerful sound generator are the features which supply the difference and lift it into the BBC Micro class.

The sound facility is at least as extensive as the BBC Micro’s and, arguably, easier to use. Rather than being embedded in sound and envelope commands, sound control is obtained by Poking values into specific memory locations. The 22 sound-memory locations allow you to define notes in up to three voices with a range of eight octaves. Each voice can be set to one of four wave-forms – triangle, sawtooth, pulse or noise. The attack and decay and sustain/release parameters affect the way the volume of a note develops and fades.

Like the BBC’s generator, the sound facility approaches that of a full sound synthesiser. A fairly close simulation of instruments such as the piano and harpsichord can be achieved as well as a variety of sound effects – the sound of jet engines, gunshots, wind, surf, snare drums, cymbals are some of the possibilities mentioned in the provisional manuals.

Sprites are user-definable shapes which can be moved around a 320 by 200 dot screen. The term was coined by Atari which offers a similar feature on its microcomputers. A sprite object is defined on a grid 24 dots wide and 21 dots long; up to eight of them can be controlled at a time.

Fun with sprites

The video-display chip handles the writing and deleting of the shape on the screen. All the user needs to do to move a sprite is Poke new X and Y co-ordinates into the sprite register.

It is also possible to expand sprites, change their colour, and make them pass behind or in front of other objects on the screen. Two locations in the register can be read to detect potential collisions between sprites or other background objects. Clearly sprite graphics will be useful for games applications, particularly since they can be displayed on the ordinary screen with many other text and graphic characters, as well as in the high-resolution mode. It is not difficult, for example, to program a flock of sprites to pass behind the lines of a program listing – a rather bizarre sight.

The ability to read the entire character generator from ROM into RAM is a boon to the Vic user which makes up for some of the machine’s deficiencies and provides a limited high-resolution facility. Not only does the 64 share this flexibility, but it also supplies a separate high-resolution mode. You can open a screen with a resolution of 320 by 200, which is bit-mapped to an 8K screen and leaves 24K RAM available to the user.

But it is a little misleading of Commodore to claim that the standard 64 offers high-resolution graphics since the Basic does not contain any line or point-plotting commands. Poking to screen memory would indeed light up a pixel; but locating a single dot on the screen is complicated by the fact that the bits in memory correspond to eight by eight blocks rather than successive rows of dots.

Promise for the future

A true high-resolution plotting facility on this machine will have to wait for the arrival of a language, which supplies commands like Plot, Circle, and Paint. Such a language is Simons Basic, which will furnish the resident Basic with refinements such as If-Then-Else, definable procedures and error-trapping found in more advanced Basics. This development will enable full use of the 64’s ample memory capacity – 38K user RAM. One of the eight other possible memory configurations releases 52K for machine code or other languages.

Conclusions

  • The addition of sprite graphics, high-resolution mode and a very effective sound generator to the Vic’s specification make the 64 a very different, far more powerful and versatile machine.
  • Like the Vic, the 64 will profit from a large range of cartridge-based software – as much of it for business applications as for games.
  • It will be able to take advantage of much of the software and accessories for the Pet and the Vic, while cartridges for the Max – also known as the Vic-10 – are compatible with the 64.
  • The 64 is let down by a rather limited Basic. The forthcoming Simons Basic should make good this failing, although it will up the price by at least £50.
  • In respect of its other features the 64 is an excellent machine which can be highly recommended.

First published in Your Computer magazine, October 1982

Art For Art’s Sake

There are literally hundreds of Art applications available for home micros, ranging from simple doodlers to complex suites offering solid 3D animation; the choice is bewildering. So what features should you look out for when buying one for your machine? Andy Storer paints a picture of the perfect pixel package…

Image001

King Tut gets another airing – the original pic was picked up as brush, rotated in 3D, pasted down 4 times, swapped to tint mode and overlaid with two circles. Simple eh? On Deluxe Paint III maybe…

How many colours in the spectrum?

Whether you’re paying £3 or £300, most art programs provide a system of pull-down menus and icons for moving between the screen painting area and palette and painting tool control. This is absolutely essential, since you’ll want to be able to move quickly through the range of colours on hand and the painting ‘surface’ before you.

A good program will allow you to flick back to a full screen painting area after changing tools, operations or colours from an overlaid control panel. The more advanced packages will offer you the choice to scroll through a much larger area of work than can be displayed on screen at any one time or, alternatively, have a number of screens in memory that you can flick between.

Although you can buy packages for mono systems, most on offer are designed for colour. Obvious really. Painting’s all about colour isn’t it? Well, up to a point. The point being that you don’t need thousands of colours to produce effective artwork. The number of colours available to you will initially depend on the resolution your machine’s able to support and the degree to which the software allows mixing of the standard colours and combining them to form composite hues and shades.

But more sophisticated software can actually address the hardware to change the screen-scanning to display a new palette of colours on every line. Thus, for instance, Quantum Paint on the ST can offer 4,096 on-screen colours despite the ST offering only a choice of 16 from a palette of 512.

For general purposes, however, 256 colours is the most you’ll ever need – beyond that it becomes difficult to distinguish them. The best packages will offer you a full screen palette which displays all available colours, rather than a simple palette bordering it, thus allowing you to select the one you wish to use simply by clicking on it.

Image002

A 512 colour extravaganza on the ST’s Spectrum 512. But shouldn’t you only be able to see 16 colours at once?

Pixel Picassos

The beauty of electronic painting is the ability to continually modify your work without having to start all over again. Whilst a package will offer you the obvious option of a variable sized eraser, alterations are often likely to involve finer tuning than rubbing out whole areas.

So, for instance, once you’ve chosen a colour and done some drawing you will be able to change it simply by selecting a shade from the palette you wish to replace it with. Ideally, you should be able to click on any individual pixel of colour you’ve painted and be given its exact RGB code so that subtle alterations can be made.

In addition, it’s useful to have a ‘cycle draw’ option where you may select a range of adjacent colours to be painted in sequence as a brush line is drawn. In this way you can subtly blend colour to produce graded hues. In this respect it’s also useful if you can individually alter the hue and luminance of any particular pixel or area by simply clicking on a relevant icon.

The ‘front end’ control panel will allow you to choose between the range of painting tools on hand. A good package should offer you not only different pens, brushes, sprays and fills but a range of shapes, transformations, preset effects and texts. For freehand drawing, mouse control is infinitely preferable to the joystick or keyboard, assuming you don’t have a graphics tablet, and the range of pens and brushes should allow you a choice of line thickness, tip size and style.

Ideally, rather than preset sizes and shapes, you should be able to step up or down through a range. Likewise, sprays should also offer variable density and offer a choice of pattern, flow and nozzle type. The option to fill enclosed areas of artwork with a range of preset patterns is also essential, as is the ability to design your own fills.

Such design may require a fair degree of detail, so a facility allowing a graded zoom magnification of any area is also essential.

Ideally you should be able to grab any part of a screen and use it as fill for another and also merge, or ‘dither’, two adjacent fills so that a perfect gradation is apparent.

Getting into shape

Image005a

Any art package worth its salt should allow you to zoom into an area of the screen for detailed work. Even an average package will offer a zoom of 16x magnification.

Another feature worth looking out for in art packages is the ease with which it is possible to call up perfect circles and ellipses of varying size and thickness for exact positioning in the work area. Advanced packages will also allow you to smooth the curvature of a circle or ellipse to remove its jagged edges.

Of course, you’ll want to be able to construct other shapes, not all of them regular, and in this case you should look for a package that allows you to form multi-sided polygons. Creating the exact shape you desire is likely to be a process of hit and miss, so it also essential to have an ‘Undo’ function.

The most sophisticated features available to the pixel painter are block manipulations. Standard packages offer the facility to define sub-screen areas and move or copy them to other parts of the display. Middle range products will allow you stretch, skew, rotate and distort such defined blocks, whilst the more advanced will not only provide the tools to mirror, flip and invert the image-block but also make it opaque or transparent. It should also be possible to smear a specified area so that it appears to have been dragged. In addition, a more comprehensive package will allow you to outline and frame specified areas with a range of borders and define shadow depth and direction effects.

What can I get out of it though?

Unless you wish to incorporate your artwork into a program or game, then you’ll be wanting to produce hard copies of your masterpieces. The simplest way of achieving this is by photographing the screen. For this you’ll need a 35mm camera with a variable shutter speed which will allow you to shoot slow enough to avoid screen refresh lines in mid-scan. It’s best to shoot in a darkened room with the aperture wide open at a speed of 1/8 or l/4sec.

Colour printers aren’t much cop unless you’re prepared to fork out the readies, so the only other recommended way of displaying your work is by transferring it to videotape. A composite video lead between your micro and the video’s input should do the trick quite easily.

There’s always more…

This overview has concentrated on the options offered by paint packages and takes no account of related features, often incorporated, such as sprite construction, animation and 3D modelling. Express will be covering these areas in the near future.

Write then, let’s go

The inclusion of a text facility is also essential so that you may annotate diagrams or drawings. Here, you should look out for those programs which offer a range of text and font sizes and also include options to vary density and add outline, underlining and skew.

Finally, you should be able to save whole or part-screen files in a compressed form to save on disk space, and also be able to save and load palette and paint tool selections as new default values.

Graphically Superior

Rik Haynes checks out the best buys in graphics software for your machine…

Amiga

With its huge potential as a graphics workstation, and thanks to its superlative custom-designed  chips, the Amiga has perhaps the largest and most impressive selection of excellent graphics software and hardware. This includes a wide variety of paint and animation software, video digitisers, genlocks, etc. But this power unfortunately comes at a price – namely extra RAM and disk drives are not only recommended but absolutely essential in some cases.

DeluxePaint III

  • Paint and Animation Software
  • £79.99
  • Published by Electronic Arts

DeluxePaint III is the latest version of the most popular Amiga paint package around. Requiring 1Mb of RAM, DeluxePaint III includes an impressive paint-animation capability, extra-halfbrite 64-colour and overscan mode support, new wrap and tint brushes, font handling enhancements and substantial speed increases in all modes of operation. Electronic Arts is offering a upgrade service for owners of DeluxePaint (£50 + £5 carriage) and DeluxePaint II (£30 + £5 carriage).

Photon Paint 2.0

  • Paint Software
  • £85.99
  • Published by Microillusions, USA
  • Distributed in UK by Activision

Photon Paint 2.0 is a 4,096 colour HAM-compatible paint package with sophisticated brush operations, surface and contour mapping, shadowing with adjustable size and offset, and luminance with definable source location and intensity. Although Activision has yet to confirm plans to run an upgrade offer for owners of Photon Paint 1.0 in the UK, there is a service available in the US.

Sculpt 3-D

  • Animation Software
  • £85 inc VAT
  • Published by Byte by Byte, USA
  • Distributed in UK by Amiga Centre Scotland

Sculpt 3-D allows you to design and animate 3-dimensional scenes and incorporates an interactive object editor and power tools for constructing arbitrary solid shapes with symmetry, reflection, surfaces of revolution, extrusion, and cross section reconstruction. Sculpt 3-D also includes anti-aliasing, variable object colours and texture, unlimited (number, colour and placement) of light sources, arbitrary observer (placement, angle and direction) of view, phong shading, flat polygonal shading, full ray traced imaging with shadows and highlights, supports all the  Amiga’s graphics modes including overscan and 4,096 colour HAM, and is IFF-compatible.

Sculpt 4-D

  • Animation Software
  • £320 ex VAT
  • Published by Byte by Byte, USA
  • Distributed in UK by Amiga Centre Scotland

Sculpt 4-D is a state-of-the-art professional animation program which requires 1Mb of RAM and two disk drives. It includes substantial enhancements and additions to Sculpt-3D, though at this price, Sculpt 4-D is strictly for Amiga owning animation enthusiasts with loadsadosh.

Zoetrope

  • Paint and Animation Software
  • £99.95 inc VAT
  • Published by Antic, USA
  • Distributed in UK by ISM on 0983 864674

Zoetrope is the Amiga version of the popular ST Cyber paint and animation series, and is split into five modes: painting, cell animation, image processing, video titling and “flip book” pencil testing. Zoetrope requires 1Mb of RAM.

Atari ST

Despite being overshadowed by the Amiga in the visual department, the ST has still managed to attract a wide variety of good quality graphics software which can produce some very impressive results.

Flare Paint

  • Paint Software
  • £34.99
  • Published by AMS/Logitech
  • Distributed in UK by Database Software

Flair Paint is the current flavour-of the-month paint package for ST artists, allowing you to draw images in low-res and high-res – but not medium-res – screen resolution modes.

Degas Elite

  • Paint Software
  • £24.99
  • Published by Electronic Arts

Degas Elite was one of the first paint packages released for the ST, and it still remains one of easiest and most versatile paint programs around for that machine, allowing you to draw images in low-res, medium-res and hi-res screen resolution modes.

Spectrum 512

Image003

Another shot from Spectrum 512 on the ST, showing off smooth toned gradation across a range of colour.

  • Paint Software
  • £59.95 Published by Antic, USA
  • Distributed in UK by Electric Distribution.

Using scan-line palette changing software techniques, Spectrum 512 allows you to draw images on a low-res screen with 512 on-screen colours.

Cyber Studio

  • CAD-3D 2.0 and Cybermate Software
  • £79.95
  • Published by Antic, USA
  • Distributed in UK by Electric Distribution

Cyber Studio requires 1Mb of RAM and combines a 3-D design program Stereo CAD-3D 2.0 and powerful animation control language Cybermate. CAD-3D allows you to create 3D objects and includes camera view with variable zoom and perspective control, three independent user positioned light sources plus ambient lighting (all with variable intensity) and wireframe, hidden line, solid, or solid outline modes. Cybermate uses Forth-type commands to create animation sequences, incorporates delta compression techniques, special effects and lap dissolves and allows you to splice in animations from multiple sources.

Cyber Paint 2.0

  • 2D Paint and Animation Software
  • £69.95
  • Published by Antic, USA
  • Distributed in UK by Electric Distribution

Cyber Paint 2.0 allows to paint and animate 2-D images and can be used to add the final touches to a Cyber Studio 3-D animated sequence. It includes automatic image registration to create cel animation arrangements, real-time zoom mode, multiple static or animated overlaid images and special animation effects with automatic intermediate view generation (tweening) on any area of the screen. Cyber Paint 2.0 requires
1Mb of RAM.

Cyber Sculpt

  • 3D Sculpting Software
  • £79.95
  • Published by Antic, USA
  • Distributed in UK by Electric Distribution

Cyber Sculpt is a professional 3D off-station solid-modeler used to port 3D object files to high-end rendering systems – and includes variable magnification, spline path extrude and spin, face bevelling, and cross-sectional model creation. Cyber Sculpt requires 1Mb of RAM and Cyber Studio (CAD-3D 2.0).

PC

DeluxePaint II

  • Paint Software
  • £99.99
  • Published by Electronic Arts

DeluxePaint II is the PC version of the popular Amiga paint program, and allows you to draw images in CGA, EGA, VGA, MCGA, Hercules and Tandy graphics modes.

Spectrum

Art Studio

  • Paint Software
  • £12.95 (Spectrum 48K compatible)
  • Published by Rainbird
  • Distributed in UK by EEC

Advanced Art Studio

  • Paint Software
  • £22.95 (Spectrum 128K Only) Published by Rainbird
  • Distributed in UK by EEC

C64

Art Studio

  • Paint Software
  • £12.95cs, £15.95dk
  • Published by Rainbird
  • Distributed in UK by EEC

Advanced Art Studio

  • Paint Software
  • £22.95 (Disk Only)
  • Published by Rainbird
  • Distributed in UK by EEC

CPC

Image004

Even on the Amstrad CPC, a machine supporting only 4 colours, the range of fills is impressive – here it’s Advanced Art Studio from Rainbird.

Art Studio

  • Paint Software
  • £17.95dk
  • Published by Rainbird
  • Distributed in UK by EEC

Advanced Art Studio

  • Paint Software
  • £22.95dk
  • Published by Rainbird
  • Distributed in UK by EEC

First published in New Computer Express magazine, 25th March 1989

Commodore 64 – A Best Buy for 1983

C64001

By Ron Jeffries

The Commodore 64 is a lot of computer for the money. For only $595, it comes with 64K of RAM memory, excellent graphics, a three-voice sound synthesizer, Microsoft Basic, a 6510 microprocessor, a built-in RF modulator to connect with a television, and a typewriter-style keyboard.

Although not a true “open design” such as the Apple II or IBM PC, the 64 has several easy-to-use input/output interfaces built in. There is even a cartridge slot that will allow a Z80 microprocessor or game cartridge to be added to the system.

Commodore has announced that the popular CP/M operating system will be available when the Z80 cartridge is released in early 1983. A single 5.25″ floppy disk (Model 1541) is available for an additional $399.

Not A 40-Column Vic

The 64 is packaged in a plastic case that looks exactly like the VIC-20, except that it is brown instead of white. But don’t let that fool you: the 64 is not a 40-column VIC. The two computers share only two features: the plastic case, and the same version of Pet Basic.

VIC programs that don’t use any of the special VIC graphics or sound and that do not rely on the 22-column screen will run on the 64. Unfortunately, those constraints severely limit the number of VIC programs that will work on the 64.

The 64 uses a 6510 microprocessor. The 6510 is exactly like a 6502 (which is used by the Pet, VIC, Apple, and Atari) except that the first two bytes of page zero have been “stolen.” These two memory locations are used for an on-chip 8-bit input/output port by the 6510. The 64 uses this port to control its memory map, which makes it unusually flexible.

For example, when a game cartridge is plugged in. the 64 automatically acts just like the Commodore Max Machine game console. This means that the 64 is an inexpensive development system for programmers who want to write Max games.

Excellent Keyboard

The first thing that impressed me when I unpacked the 64 was the excellent keyboard. Several people who have wandered by my office have tried the keyboard, and their comments have all been quite positive.

As is true of most computer keyboards, some keys are not placed where they would be on a standard typewriter. If you are a touch typist, be sure to type for a few minutes on the 64 keyboard before you decide to buy it. The placement of keys on the 64 probably won’t bother you.

The keyboard of the 64 is sculptured, which means that the tops of the keys are slightly concave when viewed from the end of the keyboard. (Some keyboards look like a staircase when viewed from that angle.) Most typists seem to prefer the sculptured design, which is what IBM uses for their popular Selectric typewriter.

The 64 keys also have a matte, non-glare surface that is attractive. The “feel” of the keyboard is above average, although for my taste it is a little softer than ideal. There is no audible click when a key is pressed, a feature I have come to appreciate on machines such as the Atari 800.

As a point of reference, the IBM Selectric keyboard is the best I have ever used. My favorite personal computer keyboard is the IBM PC. It has a sharp, “clicky” feel that works very well for me. I rate the 64 keyboard about 7 on a scale of 1 to 10, with the IBM PC rating a 9, and the Selectric getting a perfect 10. Obviously, the $600 64 does very well in comparison with the much more expensive IBM PC.

The 64 keyboard has a somewhat high profile. The home row of keys is 70mm above the desk surface. (The 64 looks higher that it is. For example, the fairly sleek Atari 800 has a 77mm high home row.) A low profile keyboard such as the IBM PC places the home row of keys approximately 30mm above the desk top. Research in human factors has shown that low profile keyboard design reduces fatigue in users’ fingers and
hands.

Commodore decided to use a slightly modified VIC plastic case for the 64, even though that meant having a high-profile keyboard. On the other hand, by using existing plastic tooling, they were able to get the 64 to market several months sooner than if they had designed a new case. (They probably also saved $20,000 to $50,000 in development costs.)

Advanced Graphics

The graphics capabilities of the 64 are exciting. Commodore-64 graphics are more powerful than those of the Atari, IBM PC. Apple. Tl 99/4A. or Radio Shack Color Computer. (The 64 also has far stronger graphics than its cheaper cousin, the VIC-20.)

The most important feature is its dedicated hardware support for rapidly displaying eight detailed objects anywhere on the screen. Each of these objects (Commodore calls them sprites) can be 24 pixels wide and 21 pixels high, or about the same as a block of 3 x 3 characters.

After a sprite is designed, and the dot-by-dot pattern for the display (called a bitmap) is stored somewhere in memory. the sprite can be moved around on the screen very quickly and easily. All the programmer has to do is POKE the horizontal and vertical location into the appropriate registers of the dedicated graphics processor called the “Video Interface Chip,” or VIC. The VIC chip directly supports eight sprites at one time. (In machine language it is possible to “re-use” sprites, and thus have more than eight of them on the screen at once.)

Sprites Are Versatile

Each sprite has a priority. This allows one sprite to appear to pass in front of another sprite, so that three-dimensional effects are possible. The video chip also keeps track of collisions between sprites, and between sprites and the foreground. This can be very useful when writing sophisticated game programs.

Each sprite can be enlarged to be twice as wide, or twice as tall, or both. However, when a sprite is enlarged, there is effectively half as much resolution, since the same bitmap of 24 by 21 pixels is used. (The pixels making up the sprite are enlarged.)

For some reason, the characters on the 64 appear to be “smeared” on the display. This effect is least visible when there is reduced contrast between the character color and the background. I suspect that is why Commodore decided to have the 64 display light blue characters on a dark blue background when it is first turned on. However, this combination of foreground and background colors does not provide as much contrast between text and the background as other popular systems.

Many combinations of text and background colors produce an unreadable display. The background color (as well as the border color) can be changed with two POKE commands. After some experimentation, I have found that blue text on a white background looks pretty good, although it does exhibit some of the character smearing. I trust that Commodore plans to improve the quality of the display.

Music Synthesizer

The 64 produces sound using the 6581 Sound Interface Device (SID). This special chip is a music synthesizer and sound effects generator. It provides three voices that can be controlled by the user. For each voice, you can control pitch over a nine-octave range. The waveform can be a triangle wave, sawtooth, variable pulse, or noise. (You can create great sound effects for games with the noise waveform. For example, it is easy to produce explosions, shuffling feet, or ocean waves.) For each voice, you can also control volume, and there is a master volume control.

For each of the three voices, you can control what are called envelope generators. The way a note or sound effect sounds when it is produced is the result of many different things. Naming the envelope of a given sound is a shorthand way of describing four of the important parameters that control how it sounds.

There are four parameters that describe an envelope: attack, decay, sustain, and release, or ADSR for short. With the 64, the attack rate can be varied from two milliseconds to eight seconds. Both the decay and release rate can range from six milliseconds to 24 seconds, and the sustain level can range from zero to peak volume.

After spending quite a bit of time using a sound editor that makes it easy to build new sounds and then experiment with changing them, I am very impressed with what the SID can do. Frankly, 1 can’t remember the last time that I have had this much fun (at least with a computer). When I start playing with 64 sound generation there just doesn’t seem to be a good place to stop. Many 64s will be purchased solely because of the SID synthesizer.

Given the excellent sound and graphics capabilities of the 64, it is too bad that Commodore did not choose to support the new hardware at a high level in Basic. All of the sound and graphics are controlled with POKE statements that change magic memory locations. POKEs are inconvenient for experienced programmers, and completely mystifying to novice users.

Microsoft has extended Basic to support graphics and sound on other machines such as the IBM PC. So why was the 64 released with version 2 of the same old Pet Basic, which does not support the new hardware features?

I think that Commodore decided that the 64 would sell very well without an enhanced Basic. After all, the 64 is priced relatively low for the features. (Using the existing Pet Basic is another way that development costs were minimized.)

Will there ever be an enhanced 64 Basic? I think it is unlikely. My guess is that a better version of Basic will be one of the features of the $995 P-500. The new computer will have the same color graphics and sound as the 64, and will also have 128K of RAM, a 10-key numeric pad, true programmable function keys, and a faster microprocessor.

The 1541 Disk Drive

In addition to supporting the standard Commodore cassette tape format for storing programs and data, the 64 can also be used with the VIC-1541 disk drive. (The original VIC-1540 drive requires a new ROM in order to work with the 64.)

The 1541 uses a 5.25” drive that stores approximately 170,000 bytes. The drive is a single-sided unit that uses Commodore’s unique disk format, and is packaged attractively, although the case is white (like the VIC-20) which doesn’t match the tan color of the C64.

The disk format used by the 1541 is compatible with the standard Commodore 4040 disk drives that have been used for several years with the Pet and CBM models. This means that disks can be transferred among the 64, the Pet. And the VIC-20.

In the case of data files, no changes should be needed when interchanging files. Pet programs can be transferred to the 64 easily. Many Pet programs work on the 64 after minimal editing. Programs that POKE screen locations must be changed, since the screen has moved.

Changing the CB2 sound of the Pet to use the SID chip isn’t difficult, if you use this formula:

10 HS = 2^(1/12)

20 SID = INT(.5 + 14*HS (LOG(255/BC2) / (LOG (HS))

Where SID is the value to POKE into location 54273, and CB2 is the value that was POKEd into location 59464 on the Pet. Naturally, you have to have the other SID parameters set up correctly for the 64 sound to work.

Commodore plans to release what they call a Pet emulator for the 64, that will do much of the dirty work for you. I think that converting a Pet program to the 64 is a better approach, since there is no runtime overhead, and you can take advantage of unique 64 features such as color, user-programmable characters, sprites, and of course multiple-voice sound.

How to Transfer C64 Programs to the PET

Taking 64 Basic programs to the Pet is somewhat complicated. After LOADing the 64 program into the Pet from disk or cassette, use the PET monitor as follows:

SYS 1024

At this point, the monitor will display the contents of the 6502 registers. We can ignore them, and type the M command to display a portion of the PET memory:

.M 0400 0407

The command shows the contents of the seven bytes that begin at location 0400 hex. We will ignore the values that it displays, and type the following in their place:

.: 0400 00 01 08 0000 00 00 00

After pressing RETURN, exit from the monitor with the “X” command:

.X

Now, in Basic, type a zero and press RETURN. What we have done is play a trick, using the machine language monitor. We created a fake line zero in the monitor, and then deleted it in Basic. If your program already has a line zero, it will not be deleted, since Basic will only delete the first line zero that it encounters, which will be our fake line.

“Smart Peripheral” Problems

The disk operating system for the 1541 resides in ROMs that are in the 1541, rather than in the 64. The advantage of this approach is that the DOS doesn’t consume any RAM in the computer, since it has its own RAM on the disk controller.

Commodore takes great pride in the fact that their system has what they call “smart” peripherals. What this means is that each disk unit or printer has its own microprocessor, and can accept commands from the “main” computer, such as the 64.

Unfortunately, there is a fly in this intelligent peripheral ointment. Basically, the disk is a very independent device. The 64 sends it a command, the disk attempts to perform the requested action, and then sets an error code. Note that I said “sets an error code,” not “tells the computer whether things worked or not.”

The problem with the Commodore approach is that the user program (or the user, in the case of commands from the keyboard) is responsible for discovering that an error has occurred. When something doesn’t work, the 64 does not print an error message on the screen.

The result of all this is that Commodore disk systems such as the 1541 are not among the easiest to use when compared with other personal computer systems. Evidently, there are many consumers who either don’t know the difference, or don’t care, because Commodore disk systems seem to sell very well.

Limited Disk Speed

The 1541 disk transfers data slower than several other personal computer disk systems. For a simple benchmark, I used a program that writes 10,000 bytes to the disk. (To keep the interpretive overhead down, the program uses a FOR loop that goes from 1 to 500. Each time through the loop a string of 20 bytes is written to the disk.) The 64 with the 1541 disk took 34.8 seconds to write 10,000 bytes. The standard Pet 4040 took 17.5 seconds, and the Atari 800 took 28 seconds with “read-after-write” disabled.

Atari is the only personal computer that automatically reads each sector after it is written. However, this Atari “feature” can be disabled by typing POKE 1913,80. With read-after-write enabled, the Atari 810 disk took 46 seconds for the benchmark. The IBM PC with IBM DOS took 11.4 seconds to write the 10,000 bytes.

I ran each disk test several times and averaged the results. Also, the old data file was scratched by using a keyboard command rather than in the benchmark program. To my surprise, I found that scratching a file from the disk takes quite a while.

Furthermore, the amount of time taken to scratch a file depends on the location of a file on the disk in several popular disk operating systems. For example, with the 1541 disk, a scratch command can take a noticeable amount of time.

Since most consumers don’t bother to time the performance of their disk drives, the important question about the 1541 may be “Is it fast enough for the average user?” The answer is a qualified “yes.” If you mainly use the disk for program storage, any disk is much faster than a cassette tape recorder. But if you plan to use the 64 for disk-intensive data management, you should do some serious benchmarking before making a purchase decision. At $399, the 1541 is one of the least expensive disk units available for personal computers.

Conclusions

The Commodore 64 is an excellent value. For $595 you get powerful graphics, a complete sound synthesizer, and a versatile computer with 64K of memory. At the moment, 1 think it is the “best buy” in the $600 personal computer price range. Now if you’ll excuse me, I need to get back and tune-up my 64 snare drum sound effect…

Acknowledgements: Glen Fisher of The Code Works provided numerous clarifications of the technical details of the 64. David Rosenwald of Commodore was most helpful in providing hardware and software.

First published in Creative Computing magazine, January 1983

Commodore’s 64

C64-001

It might look like a VIC-20 but inside the case resides a whole host of extra features plus 64K of memory. Our review team brings you the vital details.

By Henry Budgett and Chris Palmer

In the beginning there was the PET, and it was seen to be good. Then came the 3000, 4000 and 8000 systems and they were better. At last the big C realised the need for a smaller machine for the home market and the VIC-20 was introduced, but still the older machines flourished despite their outdated architecture and their lack of advanced features. So, the big C decreed that a whole new range of machines should be created to re-establish the company’s dominance of the market.

The first of these new systems to arrive is the Commodore 64 which received its press debut at the Hanover Messe earlier this year. Admittedly, the system was then still in the pre-production stage but it certainly looked interesting and appeared to offer a new slant on the way in which Commodore designed its systems. Looking very similar to the VIC-20, indeed the only distinguishing differences are that the 64 has two control ports on the right-hand side and a much smaller cartridge slot at the rear, it is based around the new family of devices produced by MOS Technology, the corporation who brought you Chuck Peddle (and the 6502).

Design philosophy

C64-002

The internal layout of the 64 reveals the use of much new chippery. The RAM is at the bottom left, all 64K of it! Note also the use of shielding around the HF sections.

As its name suggests, the Commodore 64 is equipped with 64K of RAM based on Mitsubishi 16-pin 64K by 1 device and is essentially a ‘soft’ machine. I say essentially because the BASIC is loaded from ROM by default thus making it look like a conventional ROM-based system. The processor is the new 6510 device and that is by no means the end of the new silicon inside. To control the video there is a new variation of the VIC chip that produces and controls programmable objects known as MOBs (sprites to the rest of us) and the new, all-singing, all-dancing SID chip which produces sound effects, music and the now obligatory beeps and whistles. Apart from these major devices there is a regular sprinkling of I/O devices and just a small quantity of ordinary logic.

The whole design is based on the new generation chips and seems to make effective use of the facilities they offer – the only question being whether people actually want those facilities in the first place! Personally, we have found it rather difficult to place the machine in a given area of the market. It is equipped with the capability to produce fantastic games and display graphics, it will handle all the domestic add-ons like a cassette recorder, small printer and joysticks, and yet it also offers the possibility of being used for serious purposes with its serial port, excellent keyboard and capability of driving a monitor as well as a TV. If a company was only producing one system which had appeal across a wide spectrum of the market, then one would say that this was perfectly acceptable and, indeed, a sensible approach to take. However, Commodore are also launching the 500 series, the 700 series, the VIC-10, the VIC-30 and, according to recent reports, there appears to be at least two more systems being currently examined for their market potential. Now, the dividing line between the VIC-30, the Commodore 64 and the 500 series is a remarkably thin one in our opinion and perhaps only time will tell if they’ve got their strategy right.

Pandora’s box

At this point it is only fair to point out that the Commodore 64 we reviewed was an American model. Normally, as you are probably well aware, we would not look at a non-UK version of a system but, apart from the power supply running at 110 volts and the TV picture appearing in NTSC format, we were assured that the guts of the system were identical to UK models. Certainly, when we opened up the system there was no indication of any board modifications or lashed up ROMs. It was a clean production unit with all the patches configured for the US.

While this meant that we were able to receive a Commodore 64 earlier than we had expected, which was good news, it meant that we had to obtain an American standard power unit and TV. While the former proved no problem at all, the latter complication was only solved by the helpful attentions of Hitachi who kindly provided one of their new multi-system TV/monitors for the duration. Sadly, however, the picture quality still proved insufficient to produce screen photographs of the graphics in action – a treat for which you will have to be patient!

C64-003

The keyboard layout is essentially the same as that on the VIC-20. Graphics legends are clearly marked on the key fronts.

C64-004

Rear pane socketry from left to right comprises cartridge port, channel switch, UHF output, monitor and serial port sockets, cassette connector and user port.

The VIC-style case is coloured a light chocolate brown for the Commodore 64 and is well constructed. The keyboard is excellent and has a nice sculptured feel. The angle at which it is set is possibly a little too steep but that’s really something that only long-term use will reveal. None of the sockets on the rear panel were labelled as to their function, a serious oversight as they have managed to label the side connectors quite adequately. The rear panel connectors comprise the cassette, user, serial and expansion ports together with the monitor socket and the TV phono socket. Also recessed neatly into the panel is a somewhat mysterious switch which changes the UHF channel output to something other than 36; what channel it actually is the manual does not bother to say!

Inside the case, as we have already mentioned, the construction is excellent, the PCB is well laid out and all the nasty, high frequency modulating bits are well wrapped up in metal boxes. The case is well ventilated but none of the regulator devices are mounted on heatsinks. With the actual transformer being elsewhere, the case size can be kept down along with much of the heating problems. All the major ICs, with the exception of the RAMs, are socketed for easy replacement – should the need arise.

Along with the keyboard/CPU unit comes the power pack, a heavy duty phono-to-phono lead and an aerial tapping box, although it is likely that the latter two will be replaced by a UK standard device when you open the box here! There is no supplied cassette lead as the 64 is designed to operate with the usual CBM/VIC type cassette unit which has its own integral lead and power cable. The manual which came with the American review sample will, as far as we can tell, be the one supplied in the UK and more will be said about this in a later section.

Language talk

The Commodore 64 is equipped, to all intents, with an identical version of BASIC to its predecessors, V2 BASIC from the VIC-20 to be precise. Despite the fact that this is a third generation system there are no structured programming functions such as IF…THEN…ELSE and, indeed, the language is barely different to that found on the oldest of PETs. Now, while this gives a remarkable flexibility to the system in that, with a minimum of effort, software can be converted to the 64 it does make one wonder about the lack of progress.

The Commodore 64 screen is based on the 25 lines of 40 characters format which is so familiar to users of microcomputer systems, but the address map has been moved and there is a second area of screen memory set aside for the colour information. The position map lies between 1024 and 2023 and the colour map lies between 55296 and 56295. The choice of colours has been expanded to 16 (including black and white) and the colour value of any location on the screen can be set by adjusting the corresponding location in the colour map.

Now, as you may have gathered from the introduction to this piece, the Commodore 64 is equipped with 64K of RAM and yet, when you turn  on the system, you only appear to have 38911 bytes left! Why, you may well ask. The reason is that the system is designed to be capable of running under languages other than BASIC; COMAL, LOGO, FORTH, UCSD Pascal and PILOT being likely possibilities. However, rather than taking the Sharp approach where the language has to be loaded into an empty system from disc or tape, Commodore have opted for the ROM-based approach. Inside the Commodore 64 is a BASIC ROM which, provided it is given no other instructions, inserts itself into the memory map at power up. There is actually a noticeable delay at power on while the operating system tests the complete complement of RAM.

So, as it comes, the Commodore 64 is equipped with a perfectly ordinary version of BASIC which offers no extra facilities, doesn’t support Hi-Res graphics or sound (despite the fact that both facilities are built-in to the system), and appears to be no better than the language offered on the original 2001 series PET. Surely this is not really as it seems? Well, if you have been used to a VIC-20, you will already be aware of the fact that the additions to BASIC to give Hi-Res graphics come in an expansion cartridge so it is quite likely that you will accept these constraints. If, however, you are used to something like a BBC Micro, Dragon 32, Tandy Color Computer or even a ZX Spectrum then these restrictions may well annoy you considerably.

Sounding off

Equipping home computers with sophisticated sound generating facilities is no new thing. Keyboard bleepers have been billed as music facilities for almost as long as we’ve been writing reviews, but on the Commodore 64 the provision of the SID chip gives a whole new dimension to the art. The controls for the SID device are many and varied (they would probably rate an entire manual on their own) but the first thing that you notice is that all the operations are handled by memory locations rather than as reserved BASIC words. If the manual tells you about something called the Waveform Register, and it’s something that you are going to be using quite a lot, why on earth didn’t they create a system variable called WAVEFORM? But such ideas are too fancy it seems, us mere mortals have to remember that the blasted thing is location 54276 and POKE to it. One register you might live with, but there are 28 registers controlling three voices and they all require thinking about as they are often shared – you quickly learn all about masking and bit manipulation techniques on this machine!

As to the sound that the Commodore 64 actually produces, well, it’s versatile and really quite pleasant. You can take the output directly to the TV set as the modulator is a sound plus vision type, or you can take a direct audio feed from the monitor socket to drive the monitor’s amplifier or even your Hi-Fi. It would take more, much more, than the pages available in this magazine to cover the possible ways in which you can manipulate the sounds which the SID can generate but, surprisingly, the actual characteristics of the SID are not too different to that mainstay of computer music devotees – the GIAY-9-8910! Users of the BBC Micro who have successfully acquired their new manuals and mastered the SOUND and ENVELOPE commands can bask in the knowledge that their system is still the most sophisticated.

Colour crazy

A logical extension to any system offering Hi-Res graphics capability in colour is to provide some means of manipulating objects once they have been created. The first popular system to offer this sort of facility was the Apple II which supported shape tables but was not exactly easy to use. The first system to offer usable facilities along these lines was the Atari 400/800 system and the defined pictures were christened Players, sprites to the rest of us. The theory is that you create a picture using the smallest pixels available, generally the actual character dots, which is then stored. This image can now be retrieved and positioned anywhere on the display, moved, and made bigger or smaller as you require. Because you can often create several of these sprites, rules have to be established as to their priority – which ones pass in front of others or vice versa.

The Commodore 64’s VIC chip offers up to eight simultaneous sprites (in BASIC) each of which is based on a 24 wide by 21 deep block. In sprite mode, the screen is transformed into a Hi-Res format of 512 dots by 256 dots and the sprites can be positioned at any point, even over the border if you wish to make them appear and then disappear. Each sprite is programmed in the form of a DATA statement whose values are then loaded into an area of memory reserved for user defined characters. The control of the size, shape and priority of each sprite is handled by no less than 46 special registers which have to be PEEKed and POKEd in BASIC. Sadly, as with the music facilities, there is no special set of reserved words to control these registers, it all has to be done the hard way but, doubtless, an optional cartridge will appear soon to make the use of the sprites and the Hi-Res screen area a simpler matter. For anyone who has experienced the heartache of programming the sprite facility on the Atari, the Commodore 64 system will seem a whole lot easier (for a start it can be done at a decent speed in BASIC), but is far from ideal. The sprite register map is provided as an Appendix to the manual and doubtless some enterprising individual will soon produce a wipe clean plastic version together with a book of sprite planner sheets – it will probably sell like hot cakes!

I have referred to the programmable graphics blocks throughout as sprites because that name is at least familiar. It is also the word used in the manual which accompanied the review Commodore 64 system but the indications are that in the UK, the equally correct word will be MOB or Movable Object Block – it appears that some enterprising person at Commodore has registered both sprite and MOB as something which only appears on his make of computer!

C64-005

The keyboard and the power light mounted on the top half of the case are easily unplugged allowing ready access to the interior. The two games ports and the power input can be seen at the rear right.

Words of caution

In the very early days of Commodore, a pair of employees in the UK were so horrified by the quality of the manual provided by the American company that they completely re-wrote it for the UK market. What they produced certainly wouldn’t have won prizes by today’s standards of documentation but it was a definite improvement. When the VIC-20 appeared a number of reviewers criticised its manual as being insufficient and, considering the vast number of extra facilities provided on the Commodore 64, it comes as a bit of a shock to find a mere 165 pages of information being called a manual.

There is to be an extended manual, we hope, and the sooner it appears the better, as the supplied User’s Guide is, to put not too fine a point on it, awful! While it covers the basic points of the system and outlines the commands available and the facilities provided, it introduces ideas that a first time user is unlikely to grasp. If you are already familiar with micros, whether Commodore’s or not, it is almost equally annoying in that it fails to provide comprehensive information about monitor addresses, memory areas and the like. I’m sure that it is OK for the American market where systems like this are generally treated as super ‘games/toys’ (at least the VIC-20 was) but in the UK, we tend to take a much deeper interest in the actual workings of the hardware. So, an urgent need for a better and more comprehensive manual will probably be felt. Whether Commodore manage to produce it in time or it is done independently we’ll have to wait and see.

In the end

As a machine to summarise, the Commodore 64 is not the easiest of beasts. Quite how Commodore are going to market it is not yet obvious. Will it be treated as a PET replacement (the 500 series is probably a better bet for that) or will it try to fill a gap between the VIC-20 and the existing 4000 series? In terms of price it must be seen as a direct competitor to the BBC Model A and yet its BASIC and overall facilities are not as comprehensive. It does, however, have the backing of the entire existing Commodore range: discs, printers, add-ons and most importantly of all, software.

With the possibility of other languages, the potential for networking through the new Keynet exists and with its nice compact styling, I have a feeling that it could be used as a classroom terminal or, possibly, as a general purpose intelligent terminal. The logical choice of host computers would be the new 700 series systems, specifically the 710 and 720 but, as yet, there has been no indication from Commodore as to this possibility.

The Comodore 64 will undoubtedly sell, the strength of the Commodore name alone will probably guarantee this, but the market may well have to be created for the system rather than the other way around.

Factsheet

  • Machine: Commodore 64
  • CPU: 6510
  • Clock:
  • ROM: 26K
  • RAM: 64K
  • Language: Basic V2
  • Keyboard: 61 key full ASCII. Four programmable function keys. Cursor controls.
  • Display: 25 lines of 40 characters on TV or monitor. 64 bloc graphics characters. Up to eight sprites. Up to 16 colours available.
  • Cassette: CBM C2N cassette unit required (£44.95)
  • I/O: User port, serial port, bus expansion. Twin joystick ports.
  • Options: All VIC peripherals. Alternative languages. Second processor. KEYNET networking unit. Graphics/utility cartridges.
  • Costs: Commodore 64 – £299.00 + VAT. Graphics cartridges – £50.00 (approx.)
  • Supplier: Commodore Business Machines (UK) Ltd, 675 Ajax Avenue, Trading Estate, Slough, Berkshire, SL1 4BG

First published in Computing Today magazine, November 1982

Commodore C16

C16-001

This month our Simon takes a rest as we have the latest report on the new machine that everybody’s been talking about. Is Commodore’s new wonder machines really going to take the world by storm? Mike Roberts has been putting the new Commodore C16 under the microscope and wondering if it is too little too late.

The Commodore C16 is in the same type of box that has clothed Commodore 64s, and VICs for the past few years. The colour scheme is rather different to the CBM 64 and looks like a photograph of one printed in negative form – gunmetal box and a grey keyboard.

The ports around the back of the box show a departure from the 64/VIC stable which were almost identical. What’s missing is the RS232C interface (nobody will miss that) and the parallel user port (I will miss that as I drive my Oric printer on it!).

Some things have been changed: The cartridge/expansion port has been reduced in size to stop people shoving CBM 64 cartridges into a C16 – although why anybody would want to do this is beyond me. The two D9 connectors of the CBM 64 have been dispensed with and replaced with mini-DIN connectors. This means you can only buy Commodore’s joysticks. This is a very odd thing to do, Commodore’s joysticks are awful. It is the work of a minute to make an adaptor to use any joystick but this really should not be necessary. There is also one other problem with joysticks which I will come to later.

The Cassette recorder socket is also a mini-DIN connector, this is because the C16 cassette deck is different to the old tape decks. This doesn’t really matter with the C16 as cassette decks get supplied with the computer.

Thankfully Commodore have left the serial BUS, and the audio/video connector alone. All Commodore’s existing peripherals will work straight off, so there are already printers and disk drives available for the computer, this is a welcome change from the usual state of affairs in the computer industry where the user has to wait up to two years for any peripherals at all.

The keyboard is up to Commodore’s usual excellent standards and probably represents most of the component cost of the machine (it did on the CBM64 and VIC). Changes made from the VIC/64 keyboard are four separate cursor keys, an escape key, and various modifications to the layout of the keys to facilitate the changes. The cursor keys are now on the top right of the keyboard. This is confusing to a user that is experienced with the Commodore keyboard of old but it is extremely logical for the first-time user.

Commodore’s big TED

Moving on to the internal hardware reveals some surprises. Most of the insides is driven via one big chip. Called either the 7501 or the TED chip depending on your inclination, it combines a 6510 processor at 2MHz with a sound generator, timers, input/output, memory banking, and graphics generation. In all it has 33 registers to control things (in order of graphics ability: the Spectrum has 1, MSX has 6, the BBC has 17, the Commodore 64 has 47).

Sound ability is as good as any other computer although it only has two channels. Graphics ability is superb. It is natural that this and the Plus 4 will be compared with the Commodore 64 as there are a lot of similarities in spec, the graphics are different and there are currently two schools of thought as to which is better the CBM64 or the C16.

The big difference is sprites. These wonderful things that make games programming easy have been chopped from the C16. In their place is a software simulation of them from Basic where you can extract an area of the screen and store it in a string. This string can then be recalled and put back on the screen at any point. There are also other options to manipulate these objects, but they are not sprites, a large 120 byte object takes about a quarter of a second to write to the screen.

Great Graphics

The trade-off against the sprites is more colour. The screen of the C16 can have 128 colours (121 excluding black) made up of 16 colours and 8 luminance levels and flashing. Screen size is 40 x 25 text with four other graphics modes. The other graphics modes are 320 x 200 with the previously mentioned 128 colours being used in a colour map system, and 160 x 200 in a multicolour form. Both hires screens have an option to leave four text lines at the bottom of the screen. There are some other graphics modes and options but these are only available by POKEing and I don’t have any detailed information on them.

The Basic is wonderful. It is the best Basic on the market, it beats the Amstrad, QL, Enterprise, and all the other ‘new wave’ computers. Whether this Basic is better than BBC Basic is a matter of personal preference, I think it is but there is bound to be somebody who disagrees with me.

This Basic is called Basic V3.5. The Basic in the 64 and VIC is V2.0, the Basic in their business machines is V4.0, this version has the added commands of 4.0 plus loads of extra commands, instructions, and functions to handle all the extra facilities. This is quite a departure for Commodore who haven’t changed their Basic for donkeys years in the name of  ‘compatibility’.

Well the C16 has an excellent Basic with structuring (DO/LOOP/WHILE/UNTIL), the most comprehensive set of graphics commands that I have ever come across, and a new extended screen editor making it the easiest computer that I have ever seen to program.

C16-002

Basic Rundown

The extensions to the screen editor involve a lot of escape codes and the correction of a pseudo-bug (I call it a pseudo but because nobody is sure whether it is a bug or not – it has been present since the first PETs were sold some seven years ago). The escape codes are a series of letters that you press after pressing the escape key. For instance, ESC V scrolls the screen up, ESC B and ESC T set the top and bottom of the screen window, and ESC O will cancel the insert, quotes, and reverse modes.

While investigating the ROM in the machine I came across a strange oddity. I was PEEKing the top end of ROM to see what the Basic keywords were (I got the machine before I got a manual!). Doing this produced garbage and not the codes that I was expecting. However, entering the monitor and interrogating memory revealed them there. What’s this I thought, Commodore trying to protect their ROMs against investigation? No they couldn’t be that silly, it turns out that all the memory paging systems of the Plus 4 have been left in, so when you try to PEEK the ROM the Basic pages it out to allow access to the RAM beneath. This is alright in a 64K Plus 4 but in a 16K C16 there is no memory there – just garbage.

This brings me onto another point. The Basic is ideal for an inexperienced user or an experienced Basic user, but what about us machine code hacks and people that wouldn’t use Basic if they were paid to?

The answer is TEDMON this is a full feature single pass assembler, disassembler, monitor, debugger. It is similar to Extramon 7.5 and is very good indeed. This makes writing assembly language very easy as you already have most of the development software built in.

The monitor can also be called by using the reset button. This is a great feature and is in a little recess just by the power supply. Press it in and the machine goes back to its power on state – memory contents are preserved but it is awkward to get at them. The beauty of it all is when you keep the STOP key pressed down at the same time as you press in the reset key. The computer jumps into the monitor, key in ‘X’ (for exit) and you are back in Basic. Complete with intact program.

A Great All-round Buy

The Manual is excellent and way past Commodore’s usual standard. It is informative and instructional for the first time user. For the experienced person there are memory maps and register details.

The C16 comes supplied as a package with a cassette recorder, some good games, and the much sought after ‘introduction to Basic Vol 1’. Intro to Basic is two long tapes full of introductory programs and a large book. The large book takes the user through the rigours of programming in the easiest way possible. Last Christmas my shop was selling it for the Commodore 64 as fast as we could get them. Somebody who has never used a computer before will get the hang of things very quickly.

The price of the whole package is £129.95. Remembering that the spec is similar to a BBC, way above an Electron, Atmos, or a VIC, and makes the Spectrum look like a Sinclair Executive. At only 16K the C16 looks a bit on the slim side, especially as the system cuts out 4K for the operating system and screen. This leaves you with 12K for programs. This is not too bad considering that Commodore machines are very frugal with memory consumption.

The big ‘Arrgggh’ comes when you use hi-res graphics. Hi-res chops out another 10K. It doesn’t need a Spectrum – sorry pocket calculator – to work out that there is only 4K left for the user. All we can hope for is that the memory expansion units become available ASAP.

To conclude: if Commodore get there finger out (which they will) and get this computer out in time for Christmas in large quantities (which if I know Commodore they certainly will, having a manufacturing capability of around 1 computer every five seconds at Corby), then the low end of the computer market’s (150) days are numbered – probably on one hand. This is a real computer. It has all the features of a computer many times its price. The only comparable computer is the Atari 600XL which, plus compulsory cassette deck, up until production stopped last month, is slightly more expensive and a lower spec. This is the ultimate machine for this price, it will take the computer industry a long time to recover from this one.

Here is a list of instructions that the C16 understands
ABS IF…GOTO RGR
ASC IF…THEN…ELSE RIGHT$
ATN INPUT RLUM
AUTO INPUT# RND
BACKUP INSTR RUN
BOX INT SAVE
CHAR JOY SCALE
CHR$ KEY SCNCLR
CIRCLE LEFT$ SCRATCH
CLOSE LEN SIGN
CLR LET SIN
CMD LIST SOUND
COLLECT LOAD SPC
COLOUR LOCATE SQR
CONT LOG SSHAPE
COPY LOOP STATUS
COS MID$ STOP
DATA MONITOR STR$
DEC NEW SYS
DEF FN NEXT TAB
DELETE ON…GOSUB TAN
DIM ON…GOTO TI
DIRECTORY OPEN TI$
DLOAD PAINT TRAP
DO PEEK TROFF
DRAW POKE TRON
DSAVE POS UNTIL
END PRINT USR
ERR$ PRINT# VAL
EXP PRINT USING VERIFY
FOR PUDEF VOL
FRE RCLR WAIT
GET RDOT WHILE
GETKEY RDOT GET#
READ GOSUB REM
GOTO RENAME GRAPHIC
RENUMBER GSHAPE RESTORE
HEADER RESUME HEX$
RETURN    

 

Here is a list of monitor commands
Tedmon commands
A ASSEMBLE Assemble a line of 6502 code.
C COMPARE Compare two sections of memory and report differences.
D DISASSEMBLE Disassemble a line of 6502 code.
F FILL Fill memory with the specified byte.
G GO Start execution at the specified address
H HUNT Hunt through the memory for all occurrences of certain bytes.
L LOAD Load a file tape or disk.
M Memory Display the hexadecimal values of memory locations.
R REGISTERS Display the 6502 registers.
S SAVE Save to tape or disk.
T TRANSFER Transfer code from one section of memory to another.
X EXIT Exit Tedmon

First published in Games Computing magazine, November 1984

VIC Expansion Units

Expand that tiny memory and you could take advantage of all the Vic’s good features. Boris Allan examines some of the leading manufacturers’ memory extension boards and cartridges for the Vic-20.

The first question we asked when reviewing the Vic-20 memory-expansion units was, “How good is the idea?”, and we judged that probably the best ideas were to be found in the Stack products – 3K memory and Storeboard. By their very nature, when cartridges are plugged into a socket, that is the end – nothing can be added. Both the Stack 3K RAM unit and the Storeboard have sockets at the rear to enable the user to add further accessories – in a similar manner to many of the ZX-81 add-ons.

The quality of the conception behind the cartridges from Commodore and that from Arfon was not brilliant, but adequate. The Arfon expansion unit was large and not cleverly conceived. The Beelines Beebox, because of its design, tended to obscure the television if the television and the Beebox were on the same level. Generally, a set of staid products which are far from the forefront of design.

VICEXPMain

Ideas in practice

One can have a clever idea, and carry it out badly; equally one can have an ordinary idea, and execute it extremely well. The Stack products were clever ideas which suffered in practice. For example, there was not sufficient rigidity in the connection to the cartridge slot. The Stack Storeboard had a further complication, in that, though designed to take an extra 24K which is plugged into the board by the user, we were unable to open the case. Though it must be possible to open the Stack unit, our failure bodes ill for the ordinary user.

The Stack units seemed to be well constructed, and the printed-circuit boards seemed to be well prepared, but – on a personal note – we did not like the black leatherette covering of the Stack units.

The Arfon expansion unit needed little examination to reveal that it was solidly constructed – the case seemed to weigh a ton. It was here troubles started: we had been supplied with a case into which the Vic-20 is eased and the rear cartridge port has to engage with a well-produced printed-circuit board. So far, so good – even if a little tight – and then we realised that the case needed a lid on which the television should sit; an “optional” extra it would appear. Without it we were unsure where to put the TV. A well-made, if incomplete, piece of equipment. The Arfon cartridge – the expansion unit has seven slots for such cartridges – seemed to be equally well constructed, as did the Commodore cartridges.

VICEXPBeeBOX

Inside the Beebox

The Beelines Beebox is supposed to do two jobs: it increases the capacity of the Vic-20 and also it provides a 40-column facility with Prestel graphics. The Beebox is a black box slightly wider and deeper than the Vic-20, and about 2in. to 2.5in. high. The Vic-20 is supposed to sit on top of the box. Unfortunately, there is no provision for raising the TV, so the Vic and box obscure the television picture.

A connector is plugged into the Vic cartridge port, and another connector is plugged into the user port: the television connection is either plugged into the box for Prestel graphics or into the Vic-20, with adjustment of memory switches for the expanded Vic with Vic graphics.

Cartridge connections

The cartridge connector on the Beebox seemed a poor piece of work: there were spaces in the top of the cartridge connector covered by a piece of wide plastic tape, which one could easily break accidently. The metal teeth did not extend to the edge of the connector.

All the Commodore cartridges worked perfectly well, as did the Arfon cartridge and the Stack 3K memory but, as noted, we could not open the Stack Storeboard.

Our problems with the Arfon expansion unit were to do with inconvenience, which was unfortunate for a device which is to add to convenience of use. To fit the Vic-20 into the unit was an awkward business as was arranging the cassette lead. To change the cartridge one either had to remove the television and lid, or not use the lid. It is not possible to address the slots by name, which is a pity, especially as it seems part of the design philosophy.

The Beebox worked as an expanded Vic-20, but did not work as a Prestel graphics machine. That is, a machine which uses Prestel graphics, but is not, as yet, connected to the Prestel system. Plugging the TV into the Beebox we could obtain nothing but snow on our screen when we tried the other variant.

Prestel graphics

The Prestel system worked fine on Beeline’s monitor, but not on the television, even though standard Vic-20 graphics on the Beebox worked perfectly. Programming the new machine was not like programming the Vic-20, because none of the standard Vic characters were available, everything was in lower case, and shortened commands such as Pr had to be typed pR. When in Prestel mode the sound generator was unavailable, and so the Vic-20 was silent.

While trying to make the Beebox work, we went through the documentation carefully, and like much documentation it left a good deal to the imagination. The Beebox-40 User Manual has been produced – it appears – by a word processor, and so instead of proper diagrams there are pretend diagrams. A pretend diagram is one which is not drawn, but uses dashes, colons, and stars, to indicate lines. The use of such diagrams means it is more difficult for the reader to understand. We did not find the manual very useful, and would have liked at least one circuit diagram.

The Arfon documentation was better, without being fantastic – at least it had a diagram. The Stack documentation was interesting. It had a demonstration program, and more spelling mistakes than any other but it was still not enough – no circuit diagram, for example. The cartridges had no explanations, except for the one from Arfon – but none was really needed.

Though most people do not want circuit diagrams with the increasing sophistication of the ordinary user, more people soon will.

The final question must be, “Does the product do what is promised? What is promised?” For all cartridges we can say “yes”. The Stack low-cost 3K RAM depends on what you consider to be low cost, and we felt that the advertising of the Storeboard might be misleading. In the advertisement it is claimed that you can power up the Vic-20 to a massive 32K, for “only £49”, but beneath the price you read in smaller type “(plus VAT) for 3K”. So you find you have to add 24K RAM yourself, and pay for it. I do not like such a hard sell of decent equipment.

The Arfon expansion unit is commonly pictured with a TV sitting atop, with the optional lid in use. This is not fair, because it is not the standard unit, and can easily confuse.

Beelines claims that the Beebox makes you “the owner of a pint that thinks it’s a quart”, but later the company has a disclaimer which says that “no claim is made concerning the reliability of this product. Beelines… cannot assume liability or responsibility for any loss or damage arising from the use of this product… ” The Sale of Goods Act might have something to say about such disclaimers, so do not be fooled – if a product is not reliable, it is not fit for the purpose for which it was sold, and you still have your rights in common law.

Conclusions

  • Remember how much each of these goodies costs, and compare its cost to the cost of a Vic-20 when you are making your decision to buy.
  • Buy any of the cartridges, but you will not be able to expand without the cartridge possibly becoming redundant. The Stack products though insubstantial, are not too highly priced – note that I did not say “cheap”.
  • The Arfon Expansion Unit is substantial, well-made, but expensive, and it is not as convenient as it might be – especially without the optional lid.
  • The Beelines’ 40 characters are available only in Prestel mode.
Company Units Reviewed Cost
Arfon Vic-20 Expansion Unit £85 plus VAT
Electronics 3K RAM Cartridge £26.04 plus VAT
Beelines Beebox-40 £253 plus VAT
Commodore 3K RAM Cartridge

8K RAM Cartridge

16K RAM Cartridge

£29.95

£44.95

£74.95

Stack Computing Low Cost 3K Memory Storeboard £25.99

£49

First published in Your Computer magazine, August 1982