Commodore 64 Game Project of 2020 (Revision)

This page is a complete revision of the C64 Assembly Language Project of 2020. The goal here is to create a more user friendly way of learning how to make your own games on the Commodore 64 in assembly language.

Feel free to leave me any feedback, questions, or things you may be stuck on. I am a very easy person, love to hear from my members, and want to help you succeed with the goals you have in design and more.

Note: There will also be an easy access Github link here to access the files as well. Stay tuned.

(Start Here). This area will teach you about banking memory for the Commodore 64 Game Project in assembly language. The character set and screen memory are also defined here.

Learn how to build your own map using the CharPad tool for Windows.  After the map is loaded from a binary file then the screens are copied to a back buffer.

Manages collisions between the sprite’s left, right, down, and up positions. It also checks underneath the sprite, and stores tile data that are around the sprite upon impact.

A fast and slow timer are setup here to manage the pace of the game. Also several raster routines are implemented here from character set switching, initializing the scroll counters,  horizontal/vertical fine scrolling setup starts here, and more game timers.

This area sets up the Player’s position on the screen, and manages routines for the player’s actions (idling, jumping, climbing, punching, kicking, swimming, etc.)

This area manages all of the interrupts going on in the game, such as enabling screen1 or screen2, setting values for the horizontal and vertical scrolling screens.  The joystick is also called here, scrolling counters for vertical/horizontal are set here, and game timers that affect the game flow.

Routines here handle calls to swap screens, get line address data, display text on the screen, clear screen(s), clear color memory, copy screens to a backbuffer, and draw lines.

All scrolling calls exist here from updating scroll constants, scrolling up, down, left, right, color shifts (all directions), backbuffer draws, all (4 directions and color memory fills).

All sprite movements, right, left, up, down, sprite to character position, and animation(s) exist here.