Pursuing Tom Ram

Game available in Itch.io.

Soruce code in Github.

Programming adventures in VIC-20.


Rom subroutines

Commodore computers have two blocks of subroutines. First one is the part of the ROM with the BASIC. In that part, you will find subroutines that implements all BASIC commands and everything else to write and run a BASIC program. Second one is the Kernal ROM with more low-level routines, used mainly by the computer itself, like the turning on routine, input/output routines, etc.

One drawback of using BASIC subroutines is that you have to keep some memory positions in page 0. This is not a problem because the gain of memory of using subroutines is bigger than the amount of memory in page 0 you have to keep.

If you do not know what page 0 is, I will talk a bit it in the next section