Expansionsport
Der Expansionsport (englisch: Expansion - Erweiterung) wird alternativ oft auch als Modulsteckplatz, Modulport oder Memory-Expansion-Port bezeichnet. Dieser Port ist eine rechteckige Aussparung an der Rückseite des C64-Gehäuses und für die Erweiterung des Systems gedacht; vom Prinzip her entspricht er den ISA- oder PCI-Steckplätzen eines PCs. Da hier alle wichtigen Signale des C64 herausgeführt sind, ergibt sich ein großer Anwendungsbereich. Vom Anschluss einer einfachen Resettaste über Modem und EPROM-Programmiergerät bis zur SuperCPU sind fast alle erdenklichen Erweiterungen möglich. Hauptsächlich wird dieser Port zum Einstecken von Steckmodulen benutzt, die Anwendungsprogramme, Spiele oder zusätzlichen RAM-Speicher enthalten.
Im Gegensatz zum Userport gibt es am Expansionsport keine frei programmierbaren Leitungen, d.h. Expansionsport-Module müssen permanent am Daten- und Adressbus der CPU MOS 6510 "mitlauschen" und timingkonform Einfluss nehmen. Für einfache Basteleien ist der Expansionsport dadurch nicht geeignet.
Anschlussbelegung[Bearbeiten | Quelltext bearbeiten]
Der Expansionsport ist eine 2-reihige Platinenbuchse mit insgesamt 44 Kontakten. Das Rastermaß, also der Mittenabstand zwischen den Kontakten, beträgt 2,54 mm (1/10 Zoll).
Module können über GAME und EXROM der PLA signalisieren, welche Speicherkonfiguration aktiviert werden soll. Einfache Module ziehen z.B. EXROM fest auf Low/aktiv und blenden so EPROMs in den CPU-Adressbereich ein, wobei die Enable-Leitungen der EPROMs direkt an ROML bzw. ROMH angeschlossen werden können. Kompliziertere Module wie z.B. Freezer müssen allerdings weitere Logik mitbringen.
Pin | Signal | Bedeutung | Erläuterung |
---|---|---|---|
1 | GND | Ground | Systemmasse (0 Volt) |
2 | +5V DC | Betriebsspannung +5V DC | + 5 Volt Gleichspannung. Die maximale Gesamtbelastung für Erweiterungen beträgt 450mA. |
3 | +5V DC | Betriebsspannung +5V DC | + 5 Volt Gleichspannung. Die maximale Gesamtbelastung für Erweiterungen beträgt 450mA. |
4 | IRQ | Interrupt Request | Unterbrechungsanforderung; siehe IRQ |
5 | R/W | Read - Write | High-Pegel bei Lesezyklus, Low-Pegel bei Schreibzyklus. Normalerweise Ausgang, Steckmodul kann aber während DMA (siehe Pin 13) Kontrolle übernehmen. |
6 | DOT Clock | Bildpunktfrequenz | 7,88 MHz bei PAL ; 8,18 MHz bei NTSC |
7 | I/O1 | Input/Output 1 | Ein-/Ausgabebereich 1 ; Low-Pegel, wenn Adressbus innerhalb $DE00-$DEFF liegt und I/O per Prozessorport aktiviert ist. |
8 | GAME | Spielkonfiguration | dient zur Speicherumkonfiguration; siehe PLA (C64-Chip) |
9 | EXROM | Externes ROM | ähnlich GAME. |
10 | I/O2 | Input/Output 2 | Ein-/Ausgabebereich 2 ; Low-Pegel, wenn Adressbus innerhalb $DF00-$DFFF liegt und I/O per Prozessorport aktiviert ist. |
11 | ROML | ROM Low | Leitung zum Enable-Pin eines ROMs für den Bereich $8000-$9FFF, siehe PLA (C64-Chip) |
12 | BA | Bus Available (Bus verfügbar) | Ausgang: Busanforderung des VIC (bei Badlines und bei Sprite-DMA). Intern gekoppelt an RDY-Pin des 6510, der bei BA=0 bei seinem nächsten Lesezyklus (also nach spätestens drei Takten) anhält. |
13 | DMA | Direct Memory Access (direkter Speicherzugriff) | Analog zu BA, aber Eingang (mit Pullup). Intern mit BA verUNDet und an RDY-Pin der CPU gelegt sowie mit AEC verUNDet: Ein Steckmodul kann drei Takte nach negativer Flanke von BA (1=>0) die DMA-Leitung auf Low ziehen (und dann beliebig lange halten). So kann der Prozessor auch nach dem Ende des VIC-Zugriffs inaktiv gehalten werden und das Modul dann während BA=1 und Phi=1 auf den Adressbus und die R/W-Leitung zugreifen. |
14 | D7 | Datenleitung 7 | Datenbus des Rechners |
15 | D6 | Datenleitung 6 | |
16 | D5 | Datenleitung 5 | |
17 | D4 | Datenleitung 4 | |
18 | D3 | Datenleitung 3 | |
19 | D2 | Datenleitung 2 | |
20 | D1 | Datenleitung 1 | |
21 | D0 | Datenleitung 0 | |
22 | GND | Ground | Systemmasse (0 Volt) |
A | GND | Ground | Systemmasse (0 Volt) |
B | ROMH | ROM High | Leitung zum Enable-Pin eines ROMs für den Bereich $A000-$BFFF (bzw. $E000-$FFFF im Ultimax-Modus), siehe PLA (C64-Chip) |
C | RESET | Reset | Zieht man diese Leitung auf Low-Pegel, dann werden alle Bausteine neu initialisiert. Der Programmzähler der CPU wird mit dem Reset-Vektor $FFFC und $FFFD (normalerweise $FCE2) geladen. |
D | NMI | Non Maskable Interrupt | siehe NMI |
E | Φ2 | Phi 2 | Systemtakt (0,98 MHz bei PAL, 1,02 MHz bei NTSC) |
F | A15 | Adressleitung 15 | Adressbus des Rechners |
H | A14 | Adressleitung 14 | |
J | A13 | Adressleitung 13 | |
K | A12 | Adressleitung 12 | |
L | A11 | Adressleitung 11 | |
M | A10 | Adressleitung 10 | |
N | A9 | Adressleitung 9 | |
P | A8 | Adressleitung 8 | |
R | A7 | Adressleitung 7 | |
S | A6 | Adressleitung 6 | |
T | A5 | Adressleitung 5 | |
U | A4 | Adressleitung 4 | |
V | A3 | Adressleitung 3 | |
W | A2 | Adressleitung 2 | |
X | A1 | Adressleitung 1 | |
Y | A0 | Adressleitung 0 | |
Z | GND | Ground | Systemmasse (0 Volt) |
Expander[Bearbeiten | Quelltext bearbeiten]
- CMD EX-3 und EX2+1
- RETRO Innovations X-Pander 3