The easiest way to start programming Commodore 64

Learn BASIC and 6502 Assembly with bite-sized video tutorials.
Binge-watch previous episodes today!

Season 8 - SID Music, Sixty Four Sprites, Software Scrolling, Multiplication

Here's what you will get

  • 9 videos (50+ minutes in total)
  • transcripts (13000+ words)
  • source code examples (10000+ LOC)
  • access to 64bitesVIP Facebook group, where you can get help
  • plenty of exercises to solve on your own
  • online streaming
  • download with no DRM
  • one time payment (no monthly/annual fees)

You WILL learn how to:

  • Configure built in CIA timers
  • And much more, but it's a secret until new episodes are released.

Some episodes are not yet released. If you buy the season now, you will get videos as soon as they are released without paying anything extra.

Buy Season 8 for just $19.99

Includes 9 videos, detailed transcripts, source code examples and exercises.

See what others are saying!

I learned assembly the hard way, with only limited documentation. Although part of the fun is in discovering all these things yourself, I think such screencasts could have helped me in getting up to speed faster. They do contain some nice bits of information :)

- Paul Koller

Game Developer, Creator of C64anabalt, Super Bread Box and Micro Hexagon

64bites brings me closer to understanding a computer I learned to love long ago, and still do. More than anything, it is really fun to follow the lessons and I always look forward to the next episode with great anticipation. It is the best thing since chocolate.

- Sebastian Kostka

Online Marketing Wizard at MeMyselfAndUs

I enjoyed both narration and realisation.
Actually, I was really shocked to have so much fun watching a programming screencast!

- Robert Lapinski

CEO of Idea Head, Mastermind behind the Pixel Magazine

How much time did you spend playing games on your Commodore c64? 64bites is more than 8-bit childhood memories, its a way to keep your beloved C64 alive, let's make our own game with it.

- Andrzej Śliwa

Polyglot Programmer, Lead Developer at bonusbox GmbH

This is really cool. I don't know exactly how popular it will end up being, but there is always room online for things like this.

- Peter Cooper

Founder at Cooper Press, Chair of O'Reilly Fluent Conference

Having watched a few episodes, I reiterate my original position: sooooooo coool. And Michal have really done a top-notch job on writing, production, audio, everything.

- Avdi Grimm

Creator of the best selling programming screencast series - RubyTapas

All Episodes in this Season

Episode #072 - Programming SID II - Playing Notes

Today we are going to figure out how to specify the sound frequency of the SID chip in Hertz. Then we are going to find correct frequencies for notes in different octaves. All of that (in theory at least) should allow us to play music.

Episode #071 - Programming SID I - Sound Waves

It's about time to figure out how to use the SID chip without a pre-built player. In this video we will learn how to use one of the built-in oscillators to generate different kinds of sound waves. We are also going to find out why a particular bug in the chip (the one causing a click when volume is changed) became a desirable feature.

Episode #070 - Playing SID Music III - PAL vs NTSC

When Commodore 64 came out, it was produced mainly for two different markets. The one for the USA market was designed for the NTSC system, while the European model supported PAL. Each one had a different internal clock, specified in cycles per second. They also differed in the total number of raster lines and the amount of cycles it took to display one. Why don't we play music on both of them!

Episode #069 - Playing SID Music II

In this video, we are going to continue making our SID player more versatile. We will dig into the SID file format specification and use it to play a variety of different tunes by switching ROMs, decoding speed field and using timer and raster IRQs.

Episode #068 - Playing SID Music I

One of the reasons behind the popularity of Commodore 64 was the quality of the sound it could produce. Almost all games and demos released on Commodore 64 have their unique tunes. On top of that, a lot of artists embrace both features and constraints imposed by SID, and they create original music on their own. Today we will learn how to play it in assembly.

Episode #067 - Multiplication

Multiplication on the Commodore 64 is not trivial. The 6510 processor does not have built-in instruction for it. We have to use some kind of an algorithm. Why not a one used few centuries ago... by Russian peasants!

Episode #066 - Horizontal Software Scrolling

In the previous episode, we've learned how to create a twenty-five-character vertical scroll. Today we will create a horizontal one made out of forty characters. To do that efficiently we'll need to get familiar with couple of new assembly instructions.

Episode #065 - Vertical Software Scrolling

Although efficient, hardware screen scrolling forces us to widen the border, which in turn leaves us with only twenty-four rows or thirty-nine columns of characters. In a case of vertical scrolling, we also don't have an easy way to make the rest of the screen static. Fortunately, we can sacrifice some efficiency, and use the custom character set to scroll twenty-five characters vertically.

Episode #064 - Sixty Four Sprites

Remember when I told you that the Commodore 64 could display up to eight hardware-accelerated sprites. I lied. It can draw more of them, and this episode will teach you how to do that.