- 18 hours on-demand video content
- Lifetime access
- Downloadable resources and exercises
- Certificate on completion
- Access on mobile and desktop
- Secure checkout via Credit Card or PayPal
- 14-day money back guarantee
- Last updated February 2023
This course is a gentle introduction to the fundamentals of computer architecture and 6502 assembly language. We'll learn how to program games for the Atari 2600 console and understand what makes digital machines tick. The minimal hardware of the Atari 2600 is a perfect sandbox for us to learn more about low-level programming.
At the end of the course, you'll have a working knowledge of 6502 assembly language, a comprehensive understanding of the Atari 2600 hardware, and a complete homebrew game for the VCS that we'll code together from scratch.
We'll use a simple code editor, an assembler called DASM, and a VCS emulator called Stella. All these tools are multi-platform, so you'll be able to use either Windows, macOS, or Linux!
This is a self-contained course with no formal prerequisites. However, you will probably get the most out of it if you already know the basics of coding (if-else, loops, functions).
If you like retro game development and want to learn more about computer architecture and low-level programming, then this course is definitely for you!
Gustavo Pezzi is a university lecturer in London, UK. He has won multiple education awards as a teacher and is also the founder of pikuma.com.
Gustavo teaches fundamentals of computer science and mathematics; his academic path includes institutions such as Pittsburg State University, City University of London, and University of Oxford.
The 6502 processor is an extremely important part of computing history, powering many popular game consoles and microcomputers of the past, like the Atari VCS, the NES, the Commodore 64, the Apple II, and even the Tamagotchi.
Differently than other online resources about retro game programming, this course is not simply a loose list of assembly mnemonics that only experienced developers can digest. This course tries to be as beginner-friendly as possible, giving you the chance to learn assembly in a fun way.
Trying to understand how modern computers work under the hood can be overwhelming. That's why the small architecture of the Atari 2600 is our chance to take a step back and look at the fundamental building blocks of computing. So, if you want to really learn how digital machines work and finally lose your fear of the expression "assembly programming", then get ready and buckle up! We are about to go on a super cool nerd trip together.
73% of our students come back for another course
We don't offer discounts on our courses. Ever.
"Strong foundation in 6502/6507 assembly for the Atari 2600!
The thing I loved about this course is that it really hammered home the fundamentals and built on them in every lesson. Gustavo made sure we were using the things we'd learned previously each step of the way so by the time I reached the end of the course, it was second nature.
A great example is the use of the carry flag for addition and subtraction operations. An easy thing to forget, but every time those operations were used in the code, Gustavo emphasized remembering to set and clear the carry flag.
That kind of attention to fundamentals helps them really stay with you, and I feel like I have a firm foundation to dive deeper into techniques used to produce a polished Atari 2600 game.
I found this course to be a tremendous value and highly recommend it!"
"Simply great! The way this course was presented was clearer and more hands on than the assembly programming and architecture courses I took in college and it made a lot more sense. I would recommend this course to anyone interested in really getting a good feel for how it should be done."
"Awesome educator! What an interesting way to learn 6502 assembly and get into the fine details of the Atari VCS with it's TIA, RIOT and registers. Very Thorough. Teacher makes hard to understand concepts easier to deal with."