Archive for the ‘Commodore 64’ Category

Demo of the Month – June

Posted: June 8, 2014 in Commodore 64, demo

My choice for Demo of the Month for June was hard. The month is still in its first half, but I think we already have a clear winner: Cookie from Commodore is Awesome. It is a nice single file demo, with a great tune and great graphics. However, what makes me choose it is the clever coding, matching the lizard’s tapping with the beat of the music and the awesome eyelids animation. It is pretty cool.

The demo participated on Flashback 2014 C64 Old School Demo Compo, getting the 4th place.

Cookie Demo

There is no YouTube video yet, but you can download it from CSDb and try it on any emulator or real hardware. Just remember that the demo is in PAL, so make sure you set the emulator accordingly.

Oh, I forgot to mention that this choice is totally biased, because I’ve coded it – it is my first demo entering a competition! I will try on the following days to publish some programming techniques I used to code the demo, since this is suppose to be a programming blog! Of course, Cookie wouldn’t be possible without the great graphic by Crayon, the music by Nooly, and the entertaining scroller text by Kitty.

On the link below you can download the demo, vote and add your comment. I’d love to hear what you think of it ( even if you don’t like it, be honest! )





CBM prg Studio v3.0.0 has been released. The main new feature in this version is support for the 65816 processor, both in the assembler and debugger. This was a large piece of work which is why there has been a much longer wait than usual. Other new features include:

  • Some support for the VICE debugger (transfer of labels and breakpoints),
  • Bitmap import/export for character editor,
  • Binary file import to Assembly source,
  • Line and rectangle drawing tools for the screen designer,
  • TASM support added to Source Converter tool.
  • Also there’s a ton of bug fixes from v2.9.0, see CBM prg Studio website for details.


My first Commodore PET

Posted: May 3, 2014 in 80's, Commodore 64

I finally have one! For a long time I wished to have one unit of the first Commodore personal computer, and the time has come! The only detail is that in my case, PET stands for Paper Electronic Transactor!

Yes, while I cannot have a real one, I am very happy to have a miniature made of paper. Here is the beauty:


My paper model of a Commodore PEt

My paper model of a Commodore PET

My son was always interested in build paper models, and the Internet has thousands of thousands of everything that you can imagine to be built using paper, mostly using the software Pepakura. Seeing him having fun with something he was building I wondered if there was any paper model of Commodore computers.

For that specific software I didn’t find any, but I was able to find two Commodore paper models that you can download, print, cut and build yourself.

The first one is my PPET (Paper PET), available as free download at the German website HomeComputer Museum, and it is very

PPET hanging out with its great-grandson!

PPET hanging out with its great-grandson!

easy to assemble. It consists in three sheets of paper containing the base, the main case and the monitor.

The second model I’ve found is a Commodore SX-64, and the author, Erik Schubach, made the sheet available for free on his website: I haven’t tried this one yet, since it seems a bit more detailed, but I will build it soon.

I would recommend to print the sheets using 120g or 180g paper, so you can get a sturdier finish model. To cut the sheet I used a Xacto knife. It is also useful to make the paper to fold easier. For that, apply the knife very lightly over the lines meant to be folded. White glue is perfect for that, although hot glue is better if you know how to use it without making a mess.

If you know where to find more paper models for Commodore computers, please leave a comment. If you are talented enough, try to make a new one using the Pepakura Designer – I will be thrilled to see and try your work!



This is not little Paulo

You are already weeping and grinding your teeth only reading this title, I know. Maybe you think that a guy talking about Commodore 64 programming couldn’t say anything different from that, or even you are laughing at my stupidity because BASIC with its line numbers and goto’s is often seen as ugly and disorganized, grows without control and it is a nightmare to maintain.

But my point comes from my experience as a  13 years old boy who doesn’t know better and were amazed about that little ZX-81 clone with 2 Kbytes of memory. When you are 13 you don’t plan, you are usually very disorganized and when you want something you want it right way – the results have to be there as soon as you finish typing the commands.

So let’s take a look at two different scenarios:

Modern Languages

“It is 2013 and little Paulo decided to make a simple game on his Windows 888 machine so he gets started altavistaing for how to do it – remember he’s young and foul!. After typing “How to Make a game” on AltaVista using Netscape, he gets back 5,430,000,000 different answers. He doesn’t even know how to pronounce that number so he closes the window, turn off the computer and go back to play with his brand new Falcon.

Few days later, after his Falcon had lost all his fingers during a zipline operation, Paulo decides to go back and make a computer game. Few days before at school, his friend gave him few tips and a step-by-step “how to” about where to start so he doesn’t need to rely on Altavista or Lycos anymore. His friend told him to make a game using HTML5/CSS/JavaScript or Unity 3D with C# scripts, pretty safe choices, he said!

So he decides to use HTML5, following his friend’s notes. He opens Notepad and start typing the HTML code that according to his friend, doesn’t do anything other than display a page where your game will be placed. After he types everything, he saves it and open another text file to type the Javascript code. After a while, he also finishes it. His friend said that he needs some images to represent the player and the enemies, and that has to be created by himself using Paint or he can grab some from the Internet BBS. He chooses the latter of course. He grabs the images, rename them accordingly to his friends indications and …. and what? Oh yes, to run the game, he has to open the browser and then the html file he created minutes (hours) ago. The game loads, but nothing happens so he decide to open the html file to see what is wrong – oh wait, the html file has nothing useful, it must be the JS file! He closes the html file, opens the JS and start proof-read it. He finds some typos and fix them, saves the file, opens the browser and now the game does something, but the images are all in the wrong size, or cropped. He goes back to the Internet BBS and finds new images, downloads them and changes the names. Now he knows he has to adjust/scale the images, so he realizes he couldn’t avoid Paint anyways. After the images are fixed, he repeats the whole cycle until he gets some sort of game done.

All happy he saves the game on a pen drive, goes to his friend house to show him. When he opens the game, everything is messed up and doesn’t work properly. His friend then says: “oh! You wrote it and tested only on Netscape, but I’m using Chrome! You know, you have to get it working on Opera, Firefox, Internet Explorer and Safari as well!”. Little Paulo stares at his friend for few seconds, than he turns back and leave without saying a word. At home, he takes his fingertips Falcon and start playing with it again.” (more…)

From now on, I will post my favourite Commodore 64 demo every month. For April, I’d like to show you Fairlight & Offence – Redefinition. The animation and effects are superb! For my taste the music is not the best, but I believe it fits well the whole demo.

Check the video below, or download the D64 file here.





In my journey to learn everything about the Commodore 64 I did some experiments in BASIC and I managed to finish a complete game. Although I believe the final product was pretty good, every article I read in magazines like Compute Gazette keep saying that you can get most of the machine if you code in its native language: 6502 machine language. This kind of bothered me a bit because I never had a chance to program using any assembler. I did a quick training on Z80 back in 1984 but I never use it – and to be honest, it didn’t click on me – I was way more comfortable using BASIC.

BASIC has a lot of problems, like the lack of functions and better structured statements, but it is easy to learn and you can see the immediate results of what you’re coding, which is probably the reason of its huge success. I know I can still do amazing things using plain BASIC!

To answer the title question, I say a big “yes”! Learning to code for the 6502 will make you a better developer, even if you don’t actually have a reason or use for it right now. Here are my reasons: (more…)

This article was first published on The Transactor volume 4 issue 02 (January 1983) by Paul Higginbottom. I recently found him and asked for permission to reproduce this article here, and he was very kind to give it. After reading tons of texts about SID, his article was the first that actually I could understand, so I really wanted to share here.

Paul Higginbottom can be found on his blog ( and,  since 2005 he has been creating websites and other media, and providing professional technology consulting to individuals, businesses and other organizations across the world through his company Reora, Inc

Making Friends with SID

Paul Higginbottom

The synthesizer chip in your Commodore-64 computer is affectionately known as SID. SID is in fact an acronym for Sound Interface Device. I doubt that many people realise just how powerful this chip is, but I intend to unleash some of its power for you. If you read some of the documentation for the Commodore-64 about its sound capabilities and are new to synthesizer jargon (as I was), you probably thought to yourself, “I’m never going to figure that out!” Well, l am the sort of person who gets more determined to figure something out when it seems harder than ever to do so. So, step by step, I, like any beginner, set about learning how to control the SID’s sound capability. (more…)