B A S T E L W A R E
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
64 Kilobyte frei belegbarer Speicher im
C64 und dazu noch einige Kilobyte für
Betriebssystem, Kernal, Zeichensatz und
den wichtigen I/O-Bereich - das geht
doch eigentlich gar nicht, da der Pro-
zessor des C64 insgesamt nur 64 kByte
adressieren kann? Es geht doch! Insge-
samt muß der Prozessor auf 88 kByte
Speicher zugreifen können. Das hat Com-
modore damit erreicht, daß bestimmte
Speicherbereiche doppelt und dreifach
belegt sind. Je nachdem, welcher Teil
eines solchen Bereichs gerade benötigt
wird, wird in die Speicherzelle 1 ein
bestimmter Wert hineingePOKEt, der einer
ganz bestimmten Konfiguration von RAM
und ROM entspricht.
Das folgende Schema veranschaulicht den
Speicheraufbau des C64:
Zeichen/
satz
Basic/ IO/ROM Kernal/
ROM ROM
RAM RAM RAM RAM RAM
| | | | |
0 40960 49152 53248 57334
Für Basic-Programme wird nur der Bereich
von 0 bis 40960 genutzt.
Insgesamt gibt es drei mehrfach belegte
Speicherbereiche, die wir von 1 bis 3
durchnummerieren wollen.
Bereich 1 geht von 40960 bis 49152. Der
dort liegende RAM-Bereich (RAM 1) kann
nur genutzt werden, wenn das Basic-ROM
nicht benötigt wird, also z.B. in Ma-
schinensprache.
Danach folgt ein Bereich, der nur RAM
enthält. Dieser Bereich wird oftmals von
kleineren Maschinenprogrammen belegt, da
er vom Betriebssystem nicht benutzt
wird. Er ist aber hier ohne Bedeutung.
Von 53248 bis 57334 befindet sich ein
Bereich, der gleich dreimal belegt ist.
Es befindet sich dort neben RAM (RAM 2)
auch noch der I/O-Bereich, der die Ver-
bindung des C64 mit der Außenwelt ermög-
licht und schließlich noch der Zeichen-
satz.
Diesem Bereich folgt der Bereich 3: Dort
befinden sich RAM 3 bzw. das Kernal-ROM
(Betriebssystem).
Durch beschreiben der Speicherzelle 1
kann man nun diese verschiedenen Berei-
che einschalten. Das ist in Basic nicht
sehr sinnvoll, da beim "Ausblenden" des
Betriebssystems oder des I/O-Bereichs
Ihr C64 sofort jede weitere Zusammenar-
beit mit Ihnen verweigern würde. Sinn-
voll ist dies jedoch in Maschinenspra-
che, und dort wird in professionellen
Programmen auch rege Gebrauch gemacht.
Worum es dieses mal in der BASTELWARE
geht, ist eine Anzeige, die Ihnen stän-
dig Aufschluß darüber gibt, welcher Teil
des Speichers wie eingeschaltet ist.
Die Bits 0 bis 2 der Speicherzelle 1
sind, wie schon gesagt, ein Maß dafür.
Diese drei Bits sind an den Pins 28, 29
und 30 des 6510-Prozessors herausge-
führt. Im C128 ist dafür ein Chip mit
der Bezeichnung 8502 eingebaut. Dieser
entspricht aber in der Anschlußbelegung
genau dem 6510, so daß bezüglich der
Kompatibilität keine Schwierigkeiten
auftreten.
Auf der folgenden Seite sehen Sie die
Stückliste zur Speicherbereichsanzeige
und danach den Schaltplan.
Stückliste zur Speicherbereichsanzeige
IC 1: Integrierte Schaltung SN7400
IC 2: Integrierte Schaltung SN7408
R1 bis R8: 8 Widerstände, je 1 Kiloohm
D1 bis D7: 8 Leuchtdioden
D8, D9: 2 Siliziumdioden 1N4148
Beim Aufbau empfiehlt es sich, die ICs
zu Sockeln, dadurch wird bei einem even-
tuellen Austausch viel Ärger vermieden.
Preis der Bauteile circa 10 DM.
Wenn Sie noch nicht so versiert mit dem
Lötkolben sind, so lassen Sie sich bitte
durch einen erfahrenen Elektronikbastler
helfen. Da an den Prozessor drei Leitun-
gen angelötet werden müssen und dieser
keine große Hitze verträgt, sollte die
Lötzeit dort 5 Sekunden nicht über-
schreiten. Bitte beachten Sie auch, daß
beim öffnen Ihres C64 die Garantie ver-
loren geht!
Die beiden anderen Leitungen (+5V und
GND) sind leichter anzulöten. 5 Volt
finden sich praktisch überall im C64,
zum Beispiel am Anschluß Nummer 2 des
USER-Ports oder Anschluß 2 oder 3 des
Expansion-Ports. Masse (GND) finden Sie
an allen Abschirmungen, z.B. am Metall-
gehäuse des Fernseh-Modulators oder am
äußerst linken oder recheten Anschluß
des USER-Ports.
Haben Sie die Schaltung fertig instal-
liert, so starten Sie doch einfach mal
ein Programm, zum Beispiel Ihre Magic
Disk 64, und beobachten Sie die Leucht-
dioden.