Kernal-Umschaltung mit dem C64-2
Das Eprom
Zuerst bracht man ein Eprom, das 32 Kilobyte ROM aufnehmen kann. Das ist ein 27256 oder 27C256 in der CMOS-Version. Auch beschriebene Eproms lassen sich löschen und neu beschreiben. Hierzu braucht man eine Löschlampe mit passendem UV-Licht.
Niemals direkt in dieses Licht schauen !
Ich habe meinen kleinen Selbstbau-Platinenbelichter zum Löschen verwendet. Dieser entstand vor einigen Jahren aus einer Tee-Vorratsdose und einer Menge UV-Leds. Wenn das Fenster des Eprom verschmutzt ist, lässt es sich leicht mit Isopropanol für den Löschvorgang reinigen.
Die Dateien für den Brennvorgang
Man braucht drei Dateien: Basic-ROM, originales Kernal-ROM und das neue, zusätzlich einschaltbare Kernal. In meinem Fall war das Jiffy-DOS, da mein Original nur im alten C64 verwendet werden konnte. Jede dieser Dateien ist 8192 Bytes groß und diese müssen nun passend zusammenkopiert werden:
Linux(-Ubuntu):
-rw-r--r-- 1 michael michael 8192 Aug 6 1997 basic
-rw-r--r-- 1 michael michael 8192 Feb 21 20:26 kernal
-rwxr--r-- 1 michael michael 8192 Okt 28 1994 jiffy.rom
Das Zusammenfügen mit "
cat":
cat basic kernal >c64_2rom
cat basic jiffy.rom >jiffy_c64_2rom
cat c64_2rom jiffy_c64_2rom 2kernal.prg
-rw-rw-r-- 1 michael michael 32768 Feb 21 23:24 2kernal.prg
Wenn die Datei "2kernal.prg" nun mit dem PC auf ein Eprom gebrannt werden soll, kann es direkt losgehen. In meinem Fall wurde die Datei mit dem SD2IEC zum C64 transportiert, damit es mit dem Quickbyte 2 gebrannt werden kann. Hierzu muss dann noch eine Ladeadresse eingefügt werden:

An den Anfang der Datei werden im "Einfügen-Modus" zwei Byte eingesetzt: $00, $10. Damit hat das Commodore-DOS dann eine Lade-Adresse $1000 für diese Datei.
Der Einbau
27256
32kx8 EPROM.
+-------/-------+
1 -|Vpp Vcc|- 28
2 -|A12 A14|- 27 ----> Bank $00 --> GND , Bank $01 -->Pullup-VCC
3 -|A7 A13|- 26
4 -|A6 A8|- 25
5 -|A5 A9|- 24
6 -|A4 A11|- 23
7 -|A3 /OE|- 22
8 -|A2 A10|- 21
9 -|A1 /CE /pgm|- 20
10 -|A0 D7|- 19
11 -|D0 D6|- 18
12 -|D1 D5|- 17
13 -|D2 D4|- 16
14 -|gnd D3|- 15
+----------------+
Im einfachen Schema erkennt man die Funktion. Mit A14 verwendet man das Speicherbanking des Eprom:
A14 auf GND wählt den unteren Bereich $0000-$3fff und mit A14 auf VCC wird der Bereich $4000-$7fff eingeschaltet. Zur Strombegrenzung sollte bei VCC immer ein Pullup-Widerstand im Bereich 2K-4K7 verwendet werden.

Mangels eines passenden Umschalters habe ich den Pullup-Widerstand direkt an A14 gelegt und mit dem Schalter kann dieser dann auf GND (Bank $00) gezwungen werden. Das kann man sicherlich auch etwas eleganter mit zwei Sockeln aufbauen, wenn man nicht direkt am Eprom anlöten möchte.
Et voilà - es kann schneller geladen werden.
Letzte Änderung: 2019-01-04 13:01:17