The easiest way to start programming Commodore 64
Learn BASIC and 6502 Assembly with bite-sized video tutorials.
Watch a few episodes today!
All released free episodes
Episode #062 - Scrolling Text
Since we already know how the hardware scrolling works, let's put it to a good use and implement one of the most common effects seen in demos - a scrolling text. Read more →
Get This Episode For Free!Episode #058 - Raster Interrupts
Waiting actively until the display reaches specific raster line has few drawbacks. Today we will learn how to allow VIC-II to notify us when the line is displayed with a raster interrupt. Read more →
Get This Episode For Free!Episode #051 - Hi-Res Bitmap Mode
The Commodore 64 can display images with the maximum resolution of 320 by 200 pixels. But we only learned how to fill the screen with 256 different characters at most. This works great as tile-base... Read more →
Get This Episode For Free!Episode #047 - Custom Character Set
Commodore 64 has two default character sets. We can switch between them by pressing the shift+commodore key. In this episode we will learn how to create our own character bitmaps and make the comp... Read more →
Get This Episode For Free!Episode #044 - Zero Page
In most computers based on 6502 and 6510 processors the first 256 bytes of memory are precious. Most instructions using this part of memory are shorter and faster to execute. Commodore 64 uses almo... Read more →
Get This Episode For Free!Episode #041 - Stack
The processor that powers the Commodore 64 supports only a handful of registers that can be used for arithmetic or logical operations. This means that we will often encounter a situation when we ne... Read more →
Get This Episode For Free!Episode #031 - Using the SpritePad
This time, instead of programming, we'll learn to use one of the most popular sprite editors - the SpritePad.
It allows you to create multicolor and hires sprite bitmaps in a much more convenien... Read more →
Episode #029 - Sprites II - Hires Bitmaps
As we already know, sprites are a 24 by 21-pixel bitmaps. But default ones are just filled rectangles. In this episode we will learn how to redefine sprite bitmaps to make them more interesting. Read more →
Get This Episode For Free!Episode #024 - Joystick Handling
When writing games and graphical programs we need some way of interacting with things presented on the screen.
Commodore 64 has a built-in support for two joysticks that are perfect for dynamic ... Read more →
Episode #022 - TDD with 64spec
64spec is an open-source testing framework for Commodore 64. It is heavily inspired by an rspec library that Ruby developers use for testing their programs. Today we will see how to use it to learn... Read more →
Get This Episode For Free!Episode #014 - TDD with Macros
Have you ever thought of doing Test Driven Development on Commodore 64?
It's not only possible, but surprisingly simple and rewarding. In this episode, with the help of macros, we'll build a... Read more →
Episode #012 - Decisions
Did you know you can use the carry flag to signify an overflow in unsigned integer operations. But wait, there's more. We also have other flags like V, or N and we can use them to make decisions i... Read more →
Get This Episode For Free!Episode #006 - Read Data
The DATA statement is used to define sequences of string or numerical constants. The READ command is used in to pick values from these sequences of one by one. They are mostly used in combination w... Read more →
Get This Episode For Free!Episode #002 - BASIC's Basics
In which we'll learn how to execute BASIC commands. We will define and use variables, convert between different types and display them on the screen. Along the way we will find out why floats in BA... Read more →
Get This Episode For Free!Episode #001 - Tools
Where we learn about three tools we can use to program C64 on any platform today. We'll use VICE, KickAssembler and Sublime Text as an Emulator, Cross Assembler and a Text Editor. In the show notes... Read more →
Get This Episode For Free!