assembly6502commodore

What is an unused memory address?


Reading this HTML page on Commodore 64 memory allocations because I am interested in old computer hardware, I stumbled across a cell in the table that claims that the memory address is unused. What exactly does this entail? Does this mean that if you wanted to put something in that address you can put whatever you want? Confused, and would appreciate all answers. Thanks. enter image description here


Solution

  • Memory maps should usually specify which programs use this memory. If they say "unused", this means that these specified programs do not use this address. Here you can see it better: https://www.c64-wiki.com/wiki/Zeropage:

    Those zeropage addresses are useful and important in programming the C64 - so useful that the internal KERNAL and BASIC system ROMs make use of most of them, leaving only a handful that are completely "safe" for machine language programmers to use for their own purposes, without risking a system crash.

    So, the memory map is only valid for KERNAL and BASIC.

    Other programs - including yours - may access the unused addresses without risk. If other programs are loaded, you have to find out, which adressses are accesed by them. You may also access other addresses - even if they are used by other programs - if you know exactly what happens then...