The easiest way to start programming Commodore 64
Learn BASIC and 6502 Assembly with bite-sized video tutorials.
Binge-watch previous episodes today!
Season 10 - Stable Raster & Opening Borders

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)
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 :)
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.
I enjoyed both narration and realisation.
Actually, I was really shocked to have so much fun watching a programming screencast!
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.
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.
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.
All Episodes in this Season

Episode #090 - Sprites on the border II - Seven sprites
In the previous episode, we have learned that if the sprite is to be displayed on a next raster line the graphical chip steals five cycles from the processor. That's not the whole story, though. Not all of those five stolen cycles are equal. The number changes depending on which sprites are currently active. Today we will try to figure out the required delay for up to seven sprites.
Episode #089 - Sprites on the Border I
Now that we have the border open around the whole screen, we can finally use that space to draw something. We can use sprites to do that. But having them enabled with the side border open is actually quite hard. Today we will see how to display them on separate raster lines.
Episode #088 - Hyperscreen
In this episode we will learn two methods of opening all borders around the screen. The effect is also know as hyperscreen because it allows to expand the drawable area and increase the screen resolution.
Episode #087 - Opening Borders III - Almost There
In the previous episode, we've started opening side-borders. It went fine until weencountered a bad line, which left us with fewer cycles to spare. Today we will tackle that problem and try to open the rest of the border.
Episode #086 - Opening Borders II - Left & Right
In the episode sixty-one, we've learned how to use the vertical border expansion to remove parts of the border that are above and below the drawable area. Opening side borders can be accomplished in a similar fashion, but it is significantly harder. Not only the timing has to be spot-on, the process has to be repeated on each raster line.
Episode #085 - Raster Stabilization IV - Pitfalls
We've been working on a raster stabilization routine for three episodes already. We ended up with an optimized code that does the job quite well. But I've also been warning you about difficulties in writing timing specific code. Today we will explore the topic, and try to break our routine deliberately.
Episode #084 - Raster Stabilization III - Optimization
Once we have our stable raster routine working it's time to optimize it. Let's see if we can minimize its memory footprint and shave off few cycles here and there.
Episode #083 - Raster Stabilization II
In this episode we continue stabilization of the raster. All we need to do is solving two problems: * find out a way to detect if we are one cycle early and then * delay the execution by just one cycle only in this situation. The former can be solved by comparing current rasterline register value at the right moment. Once we know that we need to just find an instruction that can take a variable amount of cycles. But how to do it in practice?