CPC6128 initial screen

Ho(bby|arding)

There is the happy little Amstrad CPC6128, an 8-bit computer from 1985. It was about this computer that I have had many posts for this site in mind for years, actually. It was my first computer, my dad allowed me to “use” it (at first to play games, play with it through trial and error, then I actually learned a lot with it) when I was a few years old.

As a company, Amstrad was known mostly in the industry of cheap electronics, mainly HiFi/TV equipment, between 1968 (founded) and 2007 (acquired by Sky) [1]. Schneider, another company that sold Amstrad computers under their own Schneider brand in Germany, is still in business (and produces electrical equipment rather than electronics). I too have the German version … as my first.

I had my first contact with the CPC6128 when I was a few years old. According to my dad, I was just about three or four. He booted up some games for me, and I was happy, you know. Then, somewhere later, I remember starting to discover that some random key combinations cause the computer to do things, eg. change graphics mode or invert text and background colors; I quickly realized that they must start with `?". My dad praised me for this discovery, which was likely the defining moment for the rest of my life – so I decided to spend more time with the computer, understand what was going on, and as a result, I loved it… and became a programmer. But what exactly was there to love? That’s what I would love… to share!

8-bit computers had one thing in common. <bad joke>They had eight bits.</bad joke> They all greeted the user with a BASIC prompt.

BASIC is a programming language designed for mortals (B stands for Beginners). The Ready message meant that the computer was ready to receive commands, and more specifically, to accept commands, or an entire BASIC program. You could just load a program/game from a floppy disk or a cassette tape (if you have no idea how to put the program on a cassette, let me know and I’ll elaborate on it gladly), usually with commands like RUN"name" or LOAD"". However, you could also just type the program in. One of the most classic examples that everyone has typed at some point in their life was:

10 PRINT"Hello, World"
20 GOTO 10
RUN

What’s going on here? These 10 and 20 are line numbers – if we typed something starting with a number, it was interpreted as a like of program code to be stored. Why 10 and 20 and not 1 and 2? It was a convention that allows you to easily “squeeze” additional lines in between, as part of the corrections of our program. Since there was no editor, you would type line by line, and the computer would remember each one, and the only way to add something in between is to add something like 15 PRINT "Greetings from 2021". Moving on: PRINT is the “write this on my screen” command, and GOTO on line 20 commands to jump immediately back to line 10. This is an infinite loop (something normal in the 1980s, potentially wasting energy and overloading the system today). The screen fills up with the message “Hello, World”, printed over and over, line after line.

This is how you became a programmer within a minute. The computer ran your program and you saw the effect of your work right away. Isn’t that wonderfully simple?

So what can you do with it?

So you have a computer and you can write and run a program on it in a few dozen seconds from turning on the power (did I mention that in those days the computer started faster than its monitor?), but you don’t know how to do something outside of Hello world? Open the manual.

The user manuals for 8-bit computers, unlike today’s computer manuals, first of all, existed, and secondly, they were very comprehensive and included much more than just tips on where to insert which cable or how to turn on the device. The one from Amstrad CPC 6128 was fascinating and addictive for me. Actually, it still is!

Of course, we did have the mandatory “how to connect the equipment” part (look at these nice technical drawings!). By the way, for Amstrad CPC you might find it interesting that its power supply was coming from its standard monitor:

Diagram for connecting the Amstrad CPC6128 computer to the CTM644 or GT65 monitor.

A digression here: typical for home computers of that era is also the fact that the monitor and the keyboard are the only two elements of the set – the keyboard actually contained the entire computer (that’s why they are definitely thicker than today’s keyboards).

It is unusual for a modern reader, however, that in the manual we also found a lot of information on how to program the computer, written in an extremely accessible way, leading the user step by step through more and more complex examples.

Introduction to programming. Remember that the computer only understands computer.
Teaching the computer to compliment us.

One of the chapters is a detailed description of each and every BASIC command (keyword), and these also included support for colors, sounds (it also a surprisingly complex and engaging subject), and even drawing dots and lines on the screen.

The user of such computer has at their disposal: the games and programs that they managed to get (and for the first few, maybe 10, years of the popularity of these devices, there was no law prohibiting copying software in Poland!), but they can also learn to create their own – requiring nothing more than the computer itself and its user manual, no need to spend any extra money! The possibilities are endless! It gives an amazing sense of self-development, agency (we can see how something that we have created works and is being improved), constantly discovering something new, a huge field for experiments.

Anyone with a computer like Amstrad, Commodore, Atari, or ZX Spectrum could experience this. The fact that these computers encouraged learning to program by welcoming the user with their readiness to program in BASIC – helped a lot. The Amstrad manual is so good that some still teach their kids the basics of programming from it [2]. What’s more, for computer magazines of that time (and some of them now have wonderfully faithful reproductions – see Polish “Bajtek” [3]), it was typical to print program and game listings to be typed into a computer on your own. You only needed the magazine and some free time. You gained something completely new on your computer, often with an explanation of how it works, sometimes without it:

A creative program from the back cover of “Komputer” (Polish mag), 02/1986

I suspect this is one of the reasons why many people who grew up in the 1980s and 1990s became programmers or electronics experts.

And that’s just the beginning

If that doesn’t seem interesting enough, imagine that the computer manual itself already hints that there are some magic accessories and peripherals you can connect to the computer, even though you or your friends may have never even seen them. That included not only printers, tape recorders, and floppy drives as external memory (the second floppy drive makes a lot of sense when your computer has 128kB RAM and a floppy disk holds 180kB each side), but also mythical devices such as a plotter (imagine something in the likes of today’s 3D printer with a fineliner in the place of the printing head – it draws vector, no dots or pixels!), or a light pen – it’s 1990, you have a keyboard and a huge monitor with a cathode ray tube, and after buying this device you can… write by hand on the screen!! From your father, you hear stories about the speech synthesizers attached to the expansion slot that make the computer able to speak in a voice similar to Stephen Hawking’s but even more mechanical. Apparently, there are games with a screen gun that shoots characters on a monitor, allegedly, there are programs and printers that can print text with multiple fonts. Perhaps, someone somewhere has a hard drive connected to it and it has an almost infinite space of 30 megabytes! It’s like having 50 floppy disks inserted at once!

These computers were also quite simple electrically, all the elements soldered to the motherboard could (and still most can) be bought in the nearest (now disappearing) electronics store, soldered and replaced by yourself.

Amstrad CPC6128 mainboard
My CPC6128’s motherboard when I restored its greatness in 2018.

The floppy disk port or the magic EXPANSION PORT were available on the back side of the computer, and each pin (wire) was described at least by its name/function in the user manual. What was exposed on the expansion port? Everything, every signal that reached the CPU of your computer. In practice, it meant actually endless expansion possibilities, that are still exercised today (yes, I’m talking about 2021). Most likely I’ll tell more about them in the future at least a few times. Skilled electronics engineers (read: those who could keep up with physics at school and/or electronics at university better than I did) had fun building their own devices. My pen pal from Łódź, for example, built a laser engine controller, programming on the Amstrad the shapes drawn by it on a wall/the clouds. Back then, you didn’t buy Arduino and prefabs, back then software development was built-in, and hardware – like LEGO bricks, available at least in 10 stores of every large city.

The magic of incessant discovery

These still mysterious possibilities, secrets hidden by the computer, and exposed by magazines hardly acquired from colleagues (I was born too late to buy them myself) had a similar effect on the brain as discovering new posts on Facebook or Instagram, with the difference that they developed knowledge, imagination, logical thinking skills and knowledge of your own computer.

I remember the joy of discovering what was on all the floppy disks, and how to get it going. Even the laborious rewriting of sample programs and games from the manual gave a lot of satisfaction when, after typing RUN, the program turned out to be working and doing something we had never seen before on that screen.

I remember when I got this collection of “Bajtek” magazines from a friend who had an Atari 65XE, and in a few issues, there was a list of Amstrad’s system routines, i.e. totally magical spells like “prepare two values and make a jump to the system address 1234, and your floppy drive starts up”, or “the screen becomes 8 pixels wider.” The fascination of discovering what yesterday seemed impossible.

I remember the switch from some sort of electromechanical cash registers to modern cash registers with an amber monitor in the local supermarket. So an eleven-year-old, deluded by technological progress, wrote a program simulating the operation of a cash register in BASIC. Purchases could be selected from the hardcoded products and prices, and they were displayed in windows, tables, frames, and summed up to the totals. I was wildly pleased with myself. Even today, I’d still like to find that floppy disk!

I remember when I discovered the dot matrix printer manual my dad had, and in it another description of magic commands! When you send the appropriate sequence of characters, you change the print quality, feed and retract the paper as you want, print any graphic sequence, move the print head back… magic, magic! Tangible results!

What’s fun about it today?

Same things!

There are still communities around these computers, they are still full of enthusiasts and experts. If your computer needs an emulated floppy disk drive, Lotharek sells them all over the world. If you need a floppy driver for CPC464 (which had only a built-in tape recorder), that is also a floppy drive emulator AND a memory expansion from 64KB to 512KB – you will be able buy it from the internationally known Zaxon from Częstochowa. If a chip or a connection has died in your computer, the CPCWiki user called Bryce (from Germany) will surely help you, and for WiFi support and remote file upload and firmware replacement, a fellow known as Duke (from … Denmark?) will enhance the possibilities of your CPC with an M4 card.

Furthermore, Amstrad and C64 games are still being developed, beating everything that was produced in the 80s and 90s, doing things previously considered technically impossible on these computers, and sometimes are also incredibly addictive. An example of the last category in particular is, in my opinion, the winning project of the CPCRetroDev 2017 competition – Baba’s Palace:

Baba’s Palace – winner of CPCRetroDev 2017 – new Amstrad CPC game contest

Developing games and software for Amstrad is also a challenge for the so-called demoscene – a group of artists and programmers who love challenges and limitations. Only 64kB of memory? Only 16 colors at a time in low resolution? Only 3 sounds and 1 noise at the same time? Hold my beer. Enthusiasts of programming and optimization can play with squeezing the maximum out of each clock cycle so that the game or demo runs smoothly despite the fact that the computer has a processor working with a frequency of only 4 MHz, and megabytes have not even dreamed of. If you are interested, I recommend looking for a demo and the work of the “Batman Forever” group.

In addition, thanks to the fact that these computers have a relatively simple build, there is always a greater chance to restore them to fully working condition, even if they have been damaged, and those who know electronics can do it on their own – as well as extend the functionality of the computer with super cool peripherals (support for hard drives, FM radio, internet, mouse, USB, teletext, whatever you want).

Every day you can discover something new and learn something new, and the 1980s press will help you understand how today’s (!) computers and operating systems really work. Because back then it used to be explained to everyone, today such low-level and fundamental knowledge is rarely passed to the masses.

Um… so what does 8-bit mean?

This phrase, the primary point of reference of this text, is used as often as it is rarely explained. Wikipedia defines quite well what an 8-bit processor is:

In computer architecture8-bit integersmemory addresses, or other data units are those that are 8 bits (1 octet) wide. […] ‘8-bit’ is also a generation of microcomputers in which 8-bit microprocessors were the norm.
[…]
8-bit CPUs use an 8-bit data bus and can therefore access 8 bits of data in a single machine instruction. The address bus is typically a double octet (16 bits) wide, due to practical and economical considerations. This implies a direct address space of 64 KB on most 8-bit processors.

8-bit computing – Wikipedia

Hence the popular “64” number in the names of these computers, meaning 64KiB of memory (Commodore 64, Amstrad CPC464, Amstrad CPC664) or similar (Atari 65XE, ZX Spectrum 48).

Yes, today in an average phone we often have sixty-five and a half thousand times more operating memory (4GiB) than computers occupying half a desk had then.

A sudden, unexpected attack of collector’s passion

At this point, I reach the post’s title dilemma – is it my hobby and nostalgia, something that continues to develop and amuse me, or uncontrolled shopping gathering?

  • The Schneider CPC 6128 from childhood, restored by me in 2018 (do you want to know how?) was joined by …
  • A British Amstrad of the same model in perfect condition (and a perfectly preserved box),
  • one more Amstrad CPC6128, which I will repair, clean and put up for auction
  • a Schneider CPC464, which I bought when I was teenage, mainly to have a color monitor (I only had the green one)
  • an Amstrad CPC464, to be cleaned and sold (possibly I will sell the Schneider, after comparing the differences),
  • I also want to get to know the Plus models …
  • I started apologizing to and familiarizing myself with the Commodore 64 and Spectrum … thanks to the C64 Maxi…
  • A Spectrum Next, perhaps…?

but that’s actually already a spoiler of future posts or videos… 😉

Links and references

[1] https://en.wikipedia.org/wiki/Amstrad
[2] https://www.youtube.com/watch?v=KlPtOe4youc
[3] https://allegro.pl/uzytkownik/Retronics/stare-komputery-pozostale-77927

[4] https://lotharek.pl/
[5] https://www.sellmyretro.com/user/profile/zaxon

Subscribe
Notify of
guest

1 Comment
Oldest
Newest Most Voted
Inline Feedbacks
View all comments

[…] Amstrad, Atari and Commodore, as long as they had a built-in keyboard, greeted the user with the amazing “READY” prompt of the BASIC language, ready to be programmed within a second from powering […]