MOS Technologies 6509

Da Commodore die Firma MOS Technologies gekauft hatte, konnten sie alle möglichen und unmöglichen Abarten des 6502-Mikroprozessors produzieren. Eine davon war der 6509, der die Möglichkeit hatte, mittels Bankswitching bis zu 1 MByte Speicher zu adressieren.

Beim 6509 werden wie bein 6510 die Speicherstellen $0 und $1 fürs Banking benutzt. Im Gegensatz zum 6510 sind beide Speicherstellen aktiv (beim 6510 schreibt man auf $1 und liest von $0, also eher ein Register an zwei stellen). $0 setzt die Ausführ-Bank und $1 die Indirektionsbank (siehe unten). Der 6509 hat 20 Adressleitungen, mit RAM in den Bänken 1 - 4 (nicht in 0 - 3) und Bank 15 war rein I/O und ROM vorbehalten. Mit indirekter Zeropageadressierung schreibt der 6509 die Inhalte der Register an Adresse $01 auf die oberen 4 Adreßleitungen um an den Speicher in den anderen Bänken heranzukommen. Das andere Register auf Adresse $00 legt fest, in welcher Bank der Prozessor gerade arbeiten soll. Dieses Register ist beim Systemstart standardmäßig auf 15 festgelegt, was impliziert dass die Systembank 15 ist, genau wie beim C128. Der 8502 macht das natürlich mit seinem 6510-ähnlichem I/O-Port und der MMU, während der 6509 dies komplett intern macht.

Das Speichermanagement der 6509-Serie machte nicht viel Sinn. Die Standardsystembank hatte nur etwa 1 KByte freies RAM (obwohl viele Benutzer eine Interne 4 KByte Erweiterung von $C000-$CFFF hatten), was effektiv bedeutete, dass die eigentlichen Programme in anderen Bänken liegen mussten. Leider wurde dies dadurch erschwert, dass in keiner anderen Bank das ROM ansprechbar war, im Gegensatz zum C128. Im Endeffekt musste also jedes Programm seine eigenen I/O-Programmteile besitzen.

Verwendet in
Datenblatt: MOS Technologies 6509
Erscheinungsjahr : Juni 1975
Ca. Neupreis : 25 US $
Taktfrequenz : 20 KHz bis 2 MHz
Adreßbereich : 20 Bit (1024 KByte)
Datenbusbreite : 8 Bit
Befehle : 56
Adressierungsmodi : 13
Register : - Akkumulator, 8 Bit
- X und Y : zwei Index Register, 8 Bit
- Stapelzeiger, 8 Bit
- Prozessorstatus-Register, 8 Bit
- Befehlszähler, 16 Bit
Stromaufnahme : 5 V
Anzahl Pins : 28 bis 40, je nach Modell
Gehäuseform : DIP (Dual Inline Package)
Transistoren : ?
Strukturgröße : ?