MOS Technology 6509

The MOS Technology 6509, an enhanced version of the popular 6502 microprocessor, is capable of addressing up to 1 megabyte of RAM via bank switching. While numerous 6502-based processors can perform bank switching, they achieve this via separate logic. The 6509 has this logic on-chip.

Passing data between different banks requires use of the register at $1 which selects the banks to be read from and written to via LDA (zero page), Y and STA (zero page), Y CPU opcodes. The register at $0 selects the bank where the CPU fetches instructions from, which will default to 15 ($F) on power up.

The 6509 has a reputation for being difficult to program, due to its bank switching scheme. It is used in the Commodore CBM-II line of computers.