Archive for August 2012

All Change at Commodore!   4 comments

A Commodore 16 with data recorder


Finally, Commodore founder Jack Tramiel left the company in 1984, claiming it was because he couldn’t see eye to eye with the President of the company on how to do business.  He actually left before I got a Commodore 64 later in 1984, but the damage was done and Commodore continued to sell this crap until 1995!

In January 1984 Commodore did something they’d never done before. They showed a new range of computers with a new version of BASIC on ROM, which included those all important commands for colour, graphics, and sound! These computers were called different names in different countries, but in Britain they were known as the Commodore 16 (with 16K) and the Commodore Plus/4 (with 64K). Jack Tramiel appeared alongside these computers at the CES, but left the company a few days later. The computer he’d specified was just the Commodore 16, but someone had extended this design into the Commodore Plus/4, complete with 4 built in software packages on ROM. I didn’t even hear of these events until months later, after buying a Commodore 64. In any case, these computers didn’t come out until about September 1984, months after I’d bought the Commodore 64 and by then I think I’d already discovered what shit it was!

A Commodore Plus/4


For some strange reason, the new BASIC was called Commodore BASIC 3.5, although this was after the release of a Commodore BASIC 4.0 on their PET, 4000, or 8000 series computers. Commodore BASIC 4.0 lacked commands for colour, graphics, or sound, though. Previously, Commodore had produced “expander” cartridges for the VIC-20 and the Commodore 64, which included additional BASIC commands written or commissioned by Commodore themselves, instead of paying Microsoft about $3-$10 per unit for the use of their powerful Microsoft Extended BASIC. These commands included SCNCLR to clear the screen, instead of the standard CLS. Other commands included were BOX, CIRCLE, COLOR, DRAW, GRAPHIC, GSHAPE, PAINT, SCALE, SOUND, SSHAPE, and VOL! The syntax of these commands seems overly complicated, as well as unique to Commodore, so non standard. The version of BASIC that came as standard on the Commodore 16 and Commodore Plus/4 seemed to be about the same as the BASIC on the previously issued expander cartridges. They even had 121 colours. Unfortunately, there were no sprites and the sound was only a 2 channel tone generator, so these computers wouldn’t have made it onto my original shortlist, due to the lack of a 3 note polyphonic synthesiser chip. The Commodore Plus/4 even had about 60K free to BASIC, though! They weren’t compatible with the Commodore 64, but there was no reason why they should have been. Even the cassette data recorder and disk drive were different.

I was amazed by the news of these new models of computer. They even made me consider writing a begging letter to Commodore asking if I could exchange my Commodore 64 for a Commodore 16!

Not long after this, a company produced an extended BASIC which they said was “language compatible with BASIC 3.5”, but I didn’t bother buying it, because programs saved on a Commodore 64 data recorder couldn’t be loaded on a Commodore 16 or Plus/4 data recorder, so it wouldn’t have enabled me to write software for those machines, which never became popular anyway.

Only a few months after the Commodore 16 and Commodore Plus/4 came out, Commodore showed off another new computer called the Commodore 128. This was actually more like 3 computers in one case. It had 3 different modes of operation. These were Commodore 128 mode, Commodore 64 mode, and CP/M mode. It had an even more advanced BASIC called BASIC 7.0. Don’t ask me whatever happened to 5.0 and 6.0. This still included Commodore’s own BASIC commands, but now had a Microsoft Copyright notice, so it looks like Commodore had finally agreed to pay them some more money for the first time in about 8 years! This was Commodore’s chance to finally lay the Commodore 64 to rest and encourage existing users to upgrade, as well as new users to buy the C128, but they failed to do this and continued to sell the Commodore 64. To get Commodore 64 software to run, they even reused the old VIC-II video chip with only 16 colours.

Posted August 29, 2012 by C64hater in Uncategorized

Commodore v Atari   1 comment

Atari 800

An Atari 800 computer


Commodore’s full name was Commodore Business Machines (CBM), while Atari started off in games, although they had a company called Atari Games and another company which dealt with their computers.

When Commodore launched the VIC-20, that was the first indication they were moving towards games and other non business uses. Later on, the Commodore 64 was a further step towards games and away from business.

Atari started out as purely a games company, selling games consoles and producing arcade game machines. Later on, in 1979, they were one of the first few companies to bring out a computer system, though.

Their first computers in 1979 were the Atari 400 and 800. Each of them was housed in a case which looked a bit like an Apple II, which even opened up to plug things in, but there the similarity ended, because they didn’t take plug in cards.

Some advantages the Atari computers had over the Apple II were 128 colours (increasing to 256 later on), a wide variety of display modes, and 4 channel sound synthesis, compared to the Apple II’s beep.

The Commodore 64 didn’t come out until 1982. At first, the Commodore 64 was much cheaper than the Atari 800, but Atari’s prices soon came down, and there was a new range of XL computers released in 1983.

The Commodore 64 looked similar to the Atari 800 in various ways, including having four function keys to the right of the main keyboard, Atari style joystick ports, and a blue screen showing a “READY” prompt. Even the monitor port was the same as used by Atari! It had “sprites”, similar to the Atari’s “player missile graphics”. It also used a 6510 CPU, which was compatible with the Atari’s 6502. Commodore had been using 6502 CPU’s since their first computer the Commodore PET, though. To uninformed members of the public, they looked very similar.

There the similarities ended, because the Commodore 64 only had 16 colours, compared to Atari’s 128 (later upgraded to 256), 3 channel sound, compared to Atari’s 4 channel sound, but the worst feature of all was that Commodore had ported standard PET BASIC onto the machine, with no commands for colour, graphics, or sound! This meant that budding BASIC programmers wanting to display more than coloured text would be severely disappointed with this computer!

At the same time or not long after the Commodore 64 came out, Commodore were also marketing lots of other computers, apart from the VIC-20. These were dedicated “business” computers, had streamlined cases, and separate keyboards. The Commodore 64 wasn’t a dedicated business machine, although it could be used to carry out some business, the same as all other “home computers”. Commodore even boasted that programs written in BASIC on one type of Commodore computer could run on any other other Commodore computer, so long as programmers took into account that some Commodore computers had 80 column displays, while others had only 40 column displays, and the VIC-20 had only a 20 column display.


A Commodore 8296D “business computer”

Unfortunately, my Dad was one of the people fooled by the name “Commodore Business Machines”, as opposed to Atari with their games background. He even thought that potential employers would be put off if I told them I owned an Atari computer. He pushed me into getting a Commodore 64 as my first computer, even though he was only LENDING me the money to buy it. He also thought it had 64K RAM, although there was only 38K free to BASIC and even some Machine Code programmers thought the limit was 54K, after turning off the BASIC and Kernal ROMs, while other Machine Code programmers thought the limit was only 39K. I remember that in the department store John Lewis, Oxford Street, London W1, they had a sign saying that the Commodore 64 had 38K. Even the “48K” Sinclair Spectrum had more than 40K free to BASIC!

Another thing my Dad thought would be good for me about owning a computer was WORD PROCESSING, which he thought would be an easy way into employment. Unfortunately, I thought that word processing was such a basic task that it was built in to all computers on the market, although I’m not sure where I got that idea from. Apart from this, various customers in department stores also thought this, because I often saw them typing a load of text into computers running BASIC, only to get a “Syntax error” or “String too long” error in return. Some time later computers did come with word processing software built in, though. During my time as a Commodore 64 owner, I didn’t manage to find any cartridge or cassette based word processing software, or at least not for a price I could afford. I didn’t even find a type in word processor listing. I only remember that when someone pointed out to me that I needed to buy a word processing “package”, he then pointed out one called “Easy Script”, which was on disk anyway. Of course, the Commodore 1541 disk drive cost more than the computer, so that was out. The Atari computers were so superior to the Commodore 64 in this respect that they could do word processing with a simple Atari BASIC listing, which involved dimensioning a string of up to 32K, then inputting this string, while waiting for a certain combination of key presses to tell the computer that the user had finished writing the letter and would like to save it!

On the other hand, Atari and third parties had produced all the software for their games consoles on cartridge and they continued to produce lots of software on cartridge for their computers instead of users having to buy a disk drive. This included the “Atari Writer” word processor. They even produced other programming languages on cartridge, such as Atari Logo! To see these programs being used, click on the link below.

The Spectrum had Tasword, available on cassette.

So, to sum up, Commodore liked to give people the impression that the Commodore 64 was somehow a business computer, when actually the Commodore 64, as well as the Atari 8 bit computers were all “home computers”, which could be used for games, business, and other uses.

Posted August 22, 2012 by C64hater in Uncategorized

Meanwhile, at Microsoft…   Leave a comment

Dragon 32 startup screen with a Microsoft BASIC dated the year the C64 came out, but 16K instead of only 8K


Since Commodore’s Jack Tramiel had bought an antique version of Microsoft BASIC way back in or even before 1977 (at that time a current version), Microsoft had moved on a lot, adding commands such as CLS (clear screen), SCREEN [number] (set display mode for text or graphics), SET (x,y) (plot a point), RESET (x,y) (unplot a point, later renamed as PSET and PRESET), LINE (x1,y2)-(x2,y2),[colour or mode] (draw a line), LOCATE (x,y) (place text cursor at these coordinates), INKEY$ (detect key presses more easily than GET$), STICK (n) (detect joystick movement), STRIG (n) (detect joystick fire button), PAINT (x,y),[colour] (flood fill an area starting at x,y), CIRCLE (x,y),[radius],[colour] and even DRAW “turtle graphics string” and PLAY “named musical notes”! In general, this was called “Microsoft Extended BASIC”.

Contrary to popular belief, not ALL BASIC dialects for home computers were written by Microsoft, although some of the others were influenced by them. Non Microsoft BASICs included Atari BASIC and Sinclair BASIC (which handled strings differently), while BBC BASIC was similar to Microsoft BASIC syntax in a lot of ways, but incorporated features from more advanced languages, possibly PASCAL, or COMAL. All of these BASIC dialects were more advanced than Commodore BASIC V2.

The lucky computer owners who benefited from having the Microsoft Extended BASIC commands listed above, included those who had bought a Tandy Color Computer (“Coco”) with “Extended Color BASIC”, Dragon 32/64, Spectravideo 318/328 (proto MSX), one of the MSX computers, or an early PC with GW BASIC, but certainly NOT Commodore 64 owners!

A Tandy Color Computer showing its hires graphics

Commodore and third parties released “extended BASICs”, which each had their own versions of the commands missing from Commodore BASIC V2. Unfortunately, there was no extended BASIC for C64 owners who didn’t own a disk drive, which also enabled programmers to produce software that would run without the Copyright package they’d used to write them! This would have required either a “runtime” version (a cut down version which didn’t allow other users to write their own programs), or a compiler (a program which converted the extended BASIC programs into stand alone Machine Code), so there was no market for any such programs!

Before mass produced microcomputers came onto the market, the computers had been massive, taking up a whole room, which you weren’t allowed access to unless you had a degree in Pure Maths (whatever that is)! I think Commodore was harking back to those days, by expecting people to remember a whole load of 5 digit memory locations to PEEK and POKE. This may have appealed to keen mathematicians or historians, but not to artists, linguists, musicians and others. I think it’s like having to learn brain surgery before you can have a conversation with someone! I for one, didn’t want to have to learn the inner workings and locations of the whole f*ckin’ Commodore 64, when the much easier option was to sell that piece of crap and buy any non Commodore computer which was on the market at the same time.

For the last few months of my time as a Commodore 64 owner, I visited various computer dealers and department stores trying out various computers with different dialects of BASIC, so I didn’t get conned again. Meanwhile, I hardly touched my Commodore 64 anymore and it just sat gathering dust.

Posted August 17, 2012 by C64hater in Uncategorized

Hires Graphics on the Commodore 64   4 comments

Lemans on C64

“Lemans” C64 graphics without using bitmap


Don’t forget that in the early to mid 1980s “home computer” owners usually had BASIC built in on ROM, couldn’t afford a disk drive, and were stuck with the BASIC on ROM to write software that would run on most other computers of the same model. No compilers were available for systems like that! To turn on the high resolution graphics screen on various computers contemporary to the Commodore 64, using their built in ROM BASIC, you had to use one of the following commands, complete with line number 10 prefix for this example.

Atari 400/800/XL/XE (400/800 released in 1979, XL in 1983, XE in 1985)

10 GRAPHICS 8:REM 320 X 200, 2 colours


10 GRAPHICS 7:REM 160 X 96, 4 colours

Tandy Coco and clones (released in 1980, clones incl. Dragon 32/64)

10 PMODE 3,1:PCLS:SCREEN 1,0:REM 256 X 191, 4 colours

Sinclair Spectrum and clones (released in 1982)

(It seems no command was even required before using the graphics commands, as there was only one display mode)

BBC Micro/Acorn Electron (BBC released in 1982, Electron in 1983)

10 MODE 1:REM 320 X 256, 4 colours

Amstrad CPC 464/664/6128 (464 released in 1984, 664 and 6128 released in 1985)

10 MODE 1:REM 320 X 200, 4 colours

MSX (released in 1983 in Japan, other countries in 1984)

10 SCREEN 2:REM 256 X 192, 16 colours

This was all that was required just to turn on the graphics screen, then it was time to type some other commands, such as PLOT (x,y), DRAWTO (x,y), LINE (x1,y1)-(x2,y2),[mode or colour], or DRAW (x,y). That’s all a budding programmer or computer graphics artist needed to know to get started with graphics on these computers, as well as similar commands on nearly all other computers, but NOT on the Commodore 64!

The Commodore 64 had two graphics display modes available, compared with 9 on the early Ataris (which could be upgraded to 12 or 16 later on), 16 on the later Ataris, 8 on the Tandy Coco, 1 on the Sinclair Spectrum, 3 on the Amstrad CPC, and 2 on MSX (later upgraded to 4 with MSX2). The C64 graphics screens were 320×200 pixels (dots) with 4 colours, and 160×200 with 16 colours. The higher resolution mode suffered from a kind of attribute mode (colour bleed) similar to the Sinclair Spectrum, while the lower resolution mode was limited to 4 colours in any 8×8 block.

The Commodore 64 made its début at the CES in January 1982, but wasn’t available to the general public until August 1982. This meant there was plenty of time to write or commission someone else to write a new version of BASIC for it, but fat chance! Thanks to Commodore founder Jack Tramiel’s miserly, penny pinching ways, they reused more or less the same version of BASIC from 1977! A new BASIC may have cost something like $3 per unit sold, or even as much as $6 or $8! This could have raised the price of the Commodore 64 from $595 to $598, $601, or even $603 or a bit more. Who knows? It certainly never bothered Tandy/Radio Shack, who were frequently upgrading. Of course, Commodore could just have been satisfied with less profit and absorbed the cost of a new BASIC. According to various reports, Atari people at the CES were stunned, saying “You can do all THAT for $595?!” Obviously, some of the savings were made because the Commodore 64 had only 16 colours compared with 128 (increasing to 256) on the Atari, as well as the recycled antique BASIC. I’ve read that at the time, Atari was charging $899 in the USA for an Atari 800, but the Atari 400 was cheaper and computer prices were constantly falling anyway. The Tandy Color Computer had gone on sale in 1980 for about $400, so any claims that Commodore brought computing to people who couldn’t afford an Apple II are ludicrous! Apple II computers were even illegally cloned and available for about half price!

Ultima 2

“Ultima 2”, a style of RPG game which limits itself to the C64 character graphics mode

To open a hires graphics screen on the Commodore required something like the following code in a subroutine, instead of a simple GRAPHICS 8 (or 7), PMODE 3,1:PCLS:SCREEN 1,0 , SCREEN 2, or MODE 1.

1000 POKE 53265,PEEK(53265) AND 239

1010 POKE 53265,PEEK(53265) OR 32

1020 POKE 53272,(PEEK(53272) AND 200) OR 8

1030 FOR I=8192 TO 16191

1040 POKE I,0

1050 NEXT I

1060 FOR I=1024 TO 1023

1070 POKE I,1

1080 NEXT I

1090 POKE 53265,PEEK(53265) OR 16


It seems there’s an error in this listing, in line 1060, but I’ll try to explain. The listing won’t even work, unless you use another 2 POKEs first, which are to move or protect the start of BASIC RAM. The saving of about $3-$10 per Commodore 64 made for Commodore by founder Jack Tramiel caused unbelievable, mind blowing stress to any new computer user trying to program it in the BASIC provided, so that their programs would run on all other Commodore 64 computers. When it comes to the listing above, you have to POKE and PEEK to 2 memory locations connected with or to 2 of the 47 registers of the VIC II video chip, involving some understanding of what setting different bits out of a total of 8 or even 16 (numbers up to 255) bits has on these registers, combined with performing the logic operators AND, as well as OR on one or both of these locations or registers! To turn on graphics screens, change foreground and background colours, use sprites and a few other things, you had to memorise most or all of the RAM locations of the 47 registers, keep referring to a manual for every little detail, or have a list of these in your program! First of all, you turn off or blank out the display, which also used to happen when loading from cassette. This, I assume, is to avoid seeing the screen full of graphics and text garbage. You then point the VIC II chip at a particular section of RAM, which seems to be 8192-16191. Next, you POKE each of these locations with 0, representing the colour black, which turns the whole screen black. After having done this, you turn on the display again, which greets you with a blank, black screen with no points or lines drawn on it. In the above example, the origin seems to be location 8192, while the end or furthest point from this seems to be 16191. Actually using these locations to draw a line between them, is probably quite complicated, though. For a start, those addresses are BYTES, but each pixel is represented by a BIT and can be any of four colours.

Having got as far as the above, you would then want to try and plot points and draw lines on the screen, in one or more of 3 colours, as the fourth colour was used as the background. On non Commodore computers, this involved a grid laid out in what were called Cartesian coordinates. This is a fairly simple system, where X = horizontal coordinates, and Y = vertical coordinates. On all makes of computer, there was a point of origin (X=0, Y=0), which was always on the left hand side of the screen, but some computers had the origin in the top left hand corner, while others had it in the bottom right hand corner. In the case of a screen measuring 320×200 pixels, these would be numbered 0-319 and 0-199. Simple printed grids, matrixes, or matrices were often supplied in user manuals to help users plan their graphics. Of course, another method would be to create a graphics screen using a paint program or graphics editor, but this may or may not take more RAM (8K on the Commodore 64) and be just a static, unchanging screen, instead of animated patterns, or whatever. With Commodore 64 BASIC V2, there were no Cartesian coordinates, just a series of bytes in RAM, which seemed to start in the top left hand corner, then move down one line at a time. I remember phoning a helpline, correcting a listing which said PI to , then the screen turned on and started to clear from the top down. This system meant that plotting any points at all, let alone drawing lines, required lots of complex mathematical calculations. For a start, 320 X 200=64000 pixels. How is this contained in 8K? The answer is that each pixel occupies one BIT, not one BYTE, hence the term “bitmapped graphics”. Of course, the answer wouldn’t really help, but it’s not something that anyone should need to think about! All you need to know is that if the origin is point 0,0 , then to draw a line to the opposite corner of the screen, your end coordinates are the maximum values allowed, meaning 319,199 on an Atari, or 1279,1023 on the BBC/Electron, where the coordinates system was the same for all graphics screen resolutions, which allowed programs to be easily converted from one graphics display mode to another.

BTW, here’s a video by a Commodore 64 fan “showing off” some games he wrote years ago, but all of them use character graphics only!

As for playing sounds or music (the main reason I bought a Commodore 64) this was about as difficult as the graphics, or even more so! But that’s another story!

Posted August 14, 2012 by C64hater in Uncategorized

Computing in the 1970s   Leave a comment

Super Star Trek on a CBM64

Computing in the 1970s

Hardly any individuals in the 1970s, only companies and governments, actually OWNED computers, because they were so expensive, often filled up a whole room, and not many people had access to them. In those days, people were happy with and even amazed by games consisting of text only, no graphics, and probably no sound either, except an occasional beep. Some games which were popular with computer users at the time, included “Star Trek” or “Super Star Trek”, as well as “Colossal Cave Adventure”and “Guess My Number”. A lot of these games are listed in the book “BASIC Computer Games” or “101 BASIC Computer Games” by David H Ahl, published in 1978 .

Super Star Trek on MS-DOS or CP/M

Super Star Trek on MS-DOS or CP/M

At the time these programs were originally written, hardly any computers had graphics and most microcomputers were probably either an Apple II, Tandy TRS80, Commodore PET, or one of various makes with different hardware running the CP/M 2.2 operating system. There was also access for a few people to mainframes or minicomputers, on text based VT terminal screens, or even just print outs, or punched tape or cards! This was the only kind of game which could be created using Commodore 64 BASIC/Commodore BASIC V2. It could be slightly improved by using coloured text and a one channel theme tune, but anything more than this required numerous PEEKs and POKEs or machine language routines, unlike other computers of the time, such as the Acorn BBC Micro, Acorn Electron, Amstrad CPC, Atari 400/800/XL/XE, Dragon, Memotech MTX, MSX, Oric 1/Atmos, Sinclair ZX Spectrum, Spectravideo 318/328, or Tandy Coco.

There were some Commodore 64 BASIC games listings, in books and magazines, which users could type in, but of course, these contained lots of PEEKs and POKEs, so it was pretty well impossible to follow what was going on, unless you could memorise a whole load of 5 digit decimal memory locations (e.g. POKE 53280,N = change screen background or border colour, POKE 53281,N = change screen background or border colour, where N=0 to 15, but I can’t remember which is which) and there seemed to be no end to all these numbers swimming around in my head!

Before buying a Commodore 64, I’d done some memory courses which enabled me to remember numbers using the following ancient Greek or Roman system: S or Z =0; T or D = 1, N = 2, M = 3, R = 4, L = 5, J or SH = 6, G or K = 7, F or V = 8, B or P = 9. With this system, you could make up words or phrases to enable you to remember numbers, such as “lemon fizz” for 53280. Even so, I still couldn’t cope with the idea of memorising all these numbers, although it wasn’t necessary on any non Commodore computer, so I ditched the Commodore 64 after 10-11 months, a few months of that time making lots of trips to various shops typing BASIC listings into loads of other computers, to make sure I didn’t get conned again!

Posted August 9, 2012 by C64hater in Uncategorized

BASIC?! Don’t you need Machine Code?   2 comments

A C64 Assembly Language program

A C64 Assembly Language program


BASIC?! Don’t you need Machine Code?


Of course, most games on the Commodore 64, as well as on other computers, needed to be programmed in Assembly Language or Machine Code in order to run at a reasonable speed, as well as not being limited to whether or not there was a specific command to do something that a games programmer or an applications programmer could dream up.


Unfortunately, people couldn’t just dive into Assembler/Machine Code programming without learning to program in some other language first of all. At the time the Commodore 64 came out, BASIC was being used as a vital language to teach people about computers, before they could move on to some other language. Not everyone agreed with people learning BASIC as their first computer language, though. It was descended from an earlier language called FORTRAN, and there were some who preferred LOGO (mainly used to produce geometric graphics patterns very easily by a “Turtle” robot or on screen arrowhead), as well as FORTH (easy to extend with new commands), or COMAL (incorporating more advanced or “structured” features from other languages, similar to BBC BASIC, or Sinclair QL SuperBASIC).


In the early days of the Apple II computer, most applications, and possibly most games as well, were programmed in a version of BASIC which Apple supplied with the computer. Originally, this was “Integer BASIC”, followed up by “Floating Point BASIC”, both by Apple, then “Applesoft BASIC” by Microsoft. Apple nearly had to discontinue the Apple II computer at one stage, because there was a risk that they couldn’t get a new licence from Microsoft to carry on supplying Applesoft BASIC with the computer. In that case, most or at least a large percentage of Apple II applications wouldn’t have been able to run on the computer, because they were written in Applesoft BASIC!


Commodore had been using the 6502 CPU (Central Processing Unit) or processor for short, on all their computers, ever since bringing out their first PET computer in 1977, so there was no real reason or incentive to change this processor for the Commodore 64. Actually, they decided to use the 6510 processor, which was compatible with 6502 Assembly Language/Machine Code. Fortunately for Commodore, there were already a number of games programmers who had learnt 6502 Assembly Language or Machine Code on earlier computers, such as the Atari range of computers (the first models were released in 1979 with 6502 processors clocked to run faster than the C64’s 6510), the Apple II (1977), the Acorn Atom (1981), or even the earlier Atari 2600 games console (using the cut down 6507), which needed some extra equipment or a development package to make it possible to program, similar to games consoles today. With this wealth of talent to draw on, Commodore probably thought to themselves that using an antique version of BASIC didn’t matter, they could just release a 6502 compatible colour computer to existing software houses and programmers, then let them port existing software onto it, as well as include it in a “family”of 6502/6510 computers they developed software for. I certainly can’t imagine anyone getting a Commodore 64 as their first computer, then learning to program it in Assembly Language! Surely the way to learn would be a good grounding in BASIC, followed by incorporating some Machine Code routines into your programs before taking things further.

Posted August 9, 2012 by C64hater in Uncategorized

Sinclair ZX81 BASIC v CBM BASIC V2   Leave a comment

Sinclair ZX81 with 16K RAM pack

Sinclair ZX81 with 16K RAM pack

Sinclair ZX81 BASIC v C64 BASIC

The Sinclair ZX81 was designed to be a cheap introduction to computers, to bring computers down to a price that the general public could afford and to generate some interest in computing. It only had a B&W monochrome display, but a lot of other computers of the time were usually plugged into monochrome green screen monitors. Clive Sinclair built the ZX80 to sell at under £100 and the ZX81 was the more famous and longer lasting follow up to that machine. HOWEVER, ZX80 owners weren’t left out in the cold because a new ZX81 ROM could be fitted to their machines. This was totally out of the question for Commodore!

Although the ZX81 only had 1K RAM, its dialect of BASIC was superior to Commodore 64 BASIC in some ways. The most spectacular commands IMHO on the ZX81 were PLOT and UNPLOT. These commands allowed the user to plot points on the low resolution graphics screen. As it had a resolution of 64 x 48, this could provide hours of fun, more than the old Etch a Sketch toy  , because it was possible to save your creations. Attempting to do the equivalent in Commodore 64 BASIC (Commodore BASIC V2) would only cause hours of stress and possibly brain damage! Commodore 64 owners would have to either be satisfied with the graphic characters (on a 40×25 character grid), or try to learn 6502 Assembly Language (not for beginners!), just to plot points or draw lines. Obviously, a much easier solution would be to sell the Commodore 64 and buy any non Commodore computer.

ZX81 keyboard closeup

ZX81 keyboard closeup

Posted August 9, 2012 by C64hater in Uncategorized

Sinclair BASIC v C64 BASIC   Leave a comment

Commodore 64 BASIC (Commodore BASIC V2) v Sinclair Spectrum BASIC.  While Commodore 64 BASIC had only 71 keywords (commands, functions, and statements), Sinclair Spectrum BASIC had 86 keywords.

List of Sinclair Spectrum BASIC commands


I don’t understand all these commands, because I’ve never owned a Spectrum, but I can point out the all important ones for colour, graphics, and sound.


Although the early Spectrum models could only produce monophonic beeps of different pitches, compared to more sophisticated notes, or even 3 note polyphonic synthesised music on other computers, at least the Spectrum had a dedicated BEEP command to do that. Of course, the Commodore 64 required various PEEKs and POKEs followed by 5 digit memory locations, followed by a comma, then any number from 0 to 255 to play notes, draw lines, define sprites, read joysticks, etc, etc. It was virtually impossible to play more than one note at a time using Commodore 64 BASIC. Even my attempts to modify a program which included a machine code routine to play 3 note polyphonic classical music failed miserably. That was when I realised I may as well have bought a monophonic Acorn Electron instead. During my 10-11 months in Commodore 64 hell, I saw an ad for an add on chip for the Spectrum, which gave it 3 channel sound similar to various other computers, probably using the General Instruments AY-3-8910 or 8912 chip. The 8912 chip could apply a different sound to each of the 3 channels, while the 8910 chip was limited to each of the 3 channels playing the same sound, although some variation could be generated by adding a “noise” effect to one or more of the channels.

Another amazing feature of Sinclair Spectrum BASIC was the command PRINT AT [y,x] . Strictly speaking, this wasn’t for graphics, but it enabled the user to specify the VERTICAL y as well as the horizontal x coordinates of a character to be printed on the screen. This enabled a custom UDG (user defined graphic) character to be positioned anywhere on the screen quite easily, as well as having its coordinates checked against other characters to help detect collisions in games. The Commodore 64 just had the PRINT TAB x command, which only allowed the x coordinate to be specified. Positioning a character vertically required the user to create a string of cursor up or down control characters, then use the command LEFT$, MID$, or RIGHT$ to extract some of these to position the character vertically! Of course, it seems that ALL non Commodore computers had the command PRINT AT [y,x] , PRINT TAB [x,y], LOCATE [x,y]:PRINT , or its equivalent.

Posted August 8, 2012 by C64hater in Uncategorized

Commodore 64 exposed on Wikipedia!   2 comments

nullSimon's BASIC

The relevant Wikipedia article about how Commodore expected C64 users to pay good money to fix their messed up antique BASIC and then not even be able to run these programs on any C64 whose owner hadn’t also paid for what was already built in on nearly  all other computers is here . I never even heard of it when I owned a Commodore 64. Commodore also marketed Simon’s BASIC, which was on a cartridge and seemed to be the most widely known extended BASIC, but lots of third party extended BASICs were available. I never heard of any extended BASIC which compiled programs, creating stand alone code. That would probably have required a disk drive, but the Commodore 1541 disk drive cost more than the f*ckin’ computer itself, so it made sense just to sell this pile of crap and buy an Amstrad CPC, a BBC Micro, an Acorn Electron, a Sinclair Spectrum,  an Atari 400/800/XL, a Dragon, an Oric, or any computer at all which wasn’t made by Commodore!

Posted August 6, 2012 by C64hater in Uncategorized

C64 magazine exposé!   Leave a comment


There was a computer magazine called “INPUT” designed to teach readers  how to program in the language BASIC, which was built in on ROM to nearly all “home computers” of the early 1980’s, with the exception of the Jupiter Ace, which had the language Forth on ROM instead.
INPUT magazine was published in 52 instalments  which built up into a kind of encyclopedia. Binders were available for it. I really regret that the first issue I bought was No. 4 and I didn’t get my hands on No. 3 until years later. In that issue, INPUT exposed the Commodore 64 as having an inferior BASIC to all other computers which they had program listings for. These computers were the Sinclair Spectrum, the BBC Micro and Acorn Electron (both using BBC BASIC) and the Dragon computer. Apart from this, they pointed out that some of their programs would also run on the Sinclair ZX81, Commodore VIC-20, and Tandy Colour Computer. In practice, MOST or even all of the Dragon listings ran on the Tandy, a lot of the listings also ran with some modifications on the ZX81 and Commodore VIC-20.

Issue No. 3. of INPUT had a feature called “HOW TO PLOT, DRAW, LINE AND PAINT”. This contained a short explanation saying that the Commodore 64 had no provision for accessing its “very sophisticated” (i.e. high resolution) graphics facilities from BASIC. To do that, you had to buy an add on cartridge called “Simon’s BASIC”. This provided Commodore 64 owners with the commands that were built in to all other computers, with the exception of the Commodore VIC-20, so it was the SECOND time Commodore had pulled this dirty trick. Obviously, Commodore should have provided these cartridges free of charge to all Commodore VIC-20 AND Commodore 64 owners!



Posted August 5, 2012 by C64hater in Uncategorized