C64 Assembly In Parts

[Michal Sapka] wanted to learn a new skill, so he decided on the Commodore 64 assembly language. We didn’t say he wanted to learn a new skill that might land him a job. But we get it and even applaud it. Especially since he’s written a multi-part post about what he’s doing and how you can do it, too. So far, there are four parts, and we’d bet there are more to come.

The series starts with the obligatory “hello world,” as well as some basic setup steps. By part 2, you are learning about registers and numbers. Part 3 covers some instructions, and by part 4, he finds that there are even more registers to contend with.

One of the great things about doing a project like this today is that you don’t have to have real hardware. Even if you want to eventually run on real hardware, you can edit in comfort, compile on a fast machine, and then debug and test on an emulator. [Michal] uses VICE.

The series is far from complete, and we hear part 5 will talk about branching, so this is a good time to catch up.

We love applying modern tools to old software development.

3 thoughts on “C64 Assembly In Parts

  1. 6502.
    It’s called ‘6502 assembly’.

    I’ll grant C64 was it’s own beast, as they all were, but 6502. (aktually, lower chip count hardware…6510)
    It’s not a bad processor to start on.
    Simple.

    IIRC C64 system had complications.
    Can easily sink a year of time, learning gory details of obsolete sprite system, sound and disk IO.
    If you learn what a ‘breakfast drive’ is, you have failed to prioritize kid.
    Don’t go too deep, there are many man centuries of work in that huge pile of sprite games.
    Frustrating bit twiddly endless hours, all the while wishing for 100 MHz computers…

    Hardly imagining that the kids would constantly rebuild castles in swamps of Javascript, wasting GHz casually, reinventing every old bad idea.

    6502 was my first assembly.
    Am packrat.
    Still have MOS technology 6502 manual.
    I taught myself assembler out of that book.

    Now get off my lawn.

    1. 10 REM Speaking of C64, the successor C128(D) was a fine computer.
      20 REM It had both the 8502 and the Z80, the best of two worlds.
      30 REM And even if it had gotten an V20 instead of Z80, it could have had gotten still ran plain i8080 code.
      40 REM Sorry for my poor English syntax.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.