The easiest way to start programming Commodore 64
Learn BASIC and 6502 Assembly with bite-sized video tutorials.
Binge-watch previous episodes today!
Season 3 - Joysticks, Data Structures, Strings and Logic

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 following in Assembly:
- How to print Strings during compilation and at runtime
- Compare handling null-terminated strings used in C with Pascal-like length-prepended strings
- Use KERNAL - the operating system of C64 to print strings easily with CHROUT routine
- Master the PETSCII encoding allowing you to format strings and screen easily
- How to use the open-source 64spec library to test programs and learn assembly
- Use boolean operations AND, ORA, EOR to check and manipulate bitfields
- Read joystick input using continuous polling.
- Create a base for rogue-like game controlled with joysticks
- Use namespaces like structs in C to refactor the code.
- Learn compilation-time data structures to clean up the code even further.
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 #027 - Data Structures
KickAssembler's scripting language provides a variety of data structures that can be used to group and order static data.Proper use of lists, hash tables and structures can add clarity to your code and help you to maintain it in the long run.

Episode #026 - Namespaces
Some languages provide structures or records to group data at runtime. Surprisingly KickAssembler's namespaces can be used in a similar manner. We can use them to group data together and pass them around as arguments of macros.
Episode #025 - Joystick Handling II - Turn Based Polling
Today we'll learn a robust method of implementing turn-based joystick polling that works well for rogue-like games or puzzles.
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 games and interactive GUI applications. Today we'll learn how to use them.

Episode #023 - Boolean Operations
In this episode, we will find out how the 6502 processor handles boolean operations. We will use the 64spec library to see their results and side effects, and how they can be used to manipulate specific bits. We'll also take a peek at some of the uses of the peculiar bit operation.
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 assembly and generate living documentation.
Episode #021 - PETSCII Encoding
Today we will talk about the PETSCII character encoding. We'll learn how to use the control characters, master the conversion from screencodes, and figure out how to use it effectively from the KickAssembler.
Episode #020 - Text Rendering II - KERNAL
Today we will learn how to print strings at the current cursor position, just like the print command does it in BASIC. To make it more interesting we'll be using built in KERNAL subroutines CHROUT and PLOT.