Commander CX16 Wiki

Proposed standard for managing banked memory on the Commander X16.

This is a combination of two things:

  • A mapping table that would allow a program to query the banking system to know what parts of RAM are free
  • A machine language program, which would reside in ROM or RAM (based on the team's acceptance of this standard) to allocate and mark used portions of memory.


  • Allow marking of one or more banks of high memory as "used" or "available."
  • Provide a directory of used banks by name (ie: "Editor", "Jerry's BASIC")
  • Let a routine know which bank that routine is in, and provide a common mechanism for mapping common calls to a specific bank. (ie: keypress, BASIC keywords, Interrupt Service Routine)
  • Should itself be easy to locate, either by use of a common name in the bank table or a tag in memory (ie: first 4 bytes of the bank are a specific sequence, such as "BMM1").