VC20 Final Expansion v1


Home | News | Dokumentation | Download | Bugs | to do | Mail | Final Expansion v2 | Final Expansion v3 

Speichererweiterung

Der VC20 war einer der ersten Homecomputer der in Masse produziert wurde. Keiner glaubte wirklich an einen Erfolg, Commodore produzierte ihn hauptsächlich weil zuviele RAM Chips auf Lager waren. Zudem steckte man viel Geld in die Entwicklung eines Grafikchip (VIC), aber keine Firma wollte ihn kaufen. Doch sehr schnell wurde der VC20 ein großer Markterfolg und bereitete den Weg für den C64 ...

Im Gegensatz zum C64 hat der VC20 nur sehr wenig RAM, nur 5KB und davon stehen nur 3,5KB zur freien Verfügung. Deswegen wurden auch bald Speichererweiterungen verkauft. Erst eine 3KB Erweiterung, dann eine 8KB und eine 16KB. Man kann die Erweiterungen teilweise auch kombinieren, weil sie für unterschiedliche Speicherbereiche konzipiert sind. Es kamen einige Spiele und Programme für den VC20 auf den Markt, und leider benötigen viele der Spiele und Programme unterschiedliche Speichererweiterungen. Will man jede Software laufen lassen, so benötigt man alle Speichererweiterungen. Einige Programme laufen sogar nicht, wenn zuviel Speicher vorhanden ist.

Viele Spiele und Utilities gibt es in Form einer ROM Erweiterung (Cartridge). Manche belegen 8KB Speicher, andere 16KB. Einige dieser Cartridges laufen nur in einem ROM, weil sie in den eigenen Speicher schreiben. Ladet man diese Programme in eine Speichererweiterung, dann zerstören sie sich selbst.

Der VC20 kann ja wie der C64 exakt 64KB adressieren. Davon sind 16KB belegt durch Kernel (8KB) und dem Basic Interpreter (8KB). Weiter 8KB sind für IO Ressourcen reserviert. Die restlichen 40KB sind frei oder mit internem RAM belegt.

Ich habe kürzlich einen VC20 bekommen. Als ich die Problematik mit den Speichererweiterungen erkannt habe, kam der Wunsch nach einer universellen Speichererweiterung. Das Projekt soll alle bekannten Erweiterungen abdecken und zugleich den maximalen Speicherausbau bieten. Die Speicherkonfiguration soll einfach und vorallem per Software umschaltbar sein. Zudem soll auch Platz für Programme im Eprom (Cartridges) sein, damit sie sofort nach dem Einschalten verfügbar sind.

Die Erweiterung soll den Namen Final Expansion tragen und folgende technische Daten haben:


Was kann man damit machen

Nach dem Einschalten des VC20 (bzw. nach einem Hardreset) ist das Eeprom und die IO Adresse der Final Expansion aktiviert (sichtbar). Das Kernel des VC20 findet eine Cartridge und startet die Firmware des Final Expansion. Wenn keine Taste gedrückt wird, dann kommt ein Menü mit dem man die Final Expansion konfigurieren kann:


Mit Zusatzprogrammen kann man die Final Expansion nach eigenen Wünschen konfigurieren:


Aufbau der Final Expansion

Das Modul wird auf einer speziellen Lochraster Platine (8 Bit Baby) aufgebaut, die bereits passende Slot Anschlüsse für den VC20 hat. Man bekommt das 8 Bit Baby bei der Firma Protovision. Auf dem 8 Bit Baby ist Platz für ein PLCC-44 Sockel, in dem ein CPLD Baustein der Firma Atmel oder Altera eingesetzt wird. Ich habe mich für den CPLD ATF1504AS der Firma Atmel entschieden.

Der CPLD ersetzt eine Menge TTL Chips und ist für die Adressdekodierung sowie für die Software gesteuerten Konfiguration (Latch) zuständig. Der CPLD muß erst per JTAG für seine Aufgabe programmiert werden. Atmel bietet hierzu kostenlos eine Software an (WinCUPL), mit der man die Logik des CPLD "verdrahten" kann.

Neben dem CPLD benötigt man noch den externen Speicher:




News 

2009-05-04 Verdrahtung der Cartridge abgeschlossen.
2009-04-16 Aufbau von Test- und Programmier Hardware.
2009-04-10 Programmieren des ATF-1504 und Beginn der Verdrahtung
2009-03-30 Erstellung der Logik und Test im Simulator
2009-03-14 Aufbau dieser Homepage  und Veröffentlichung der ersten Schritte ...
2009-03-02 Start des Projektes

Dokumentation

Die Vorschau-Bilder können angeklickt werden, um eine vergrößerte Ansicht zu erhalten.

VC20 Final Expansion

VC20 Final Expansion
(mit Prog/Test Atmega)
Verdrahtung Phase 1
CPLD + Atmega 8
Verdrahtung fertig

WinCUPL
(CPLD Logic Tool)
WinSIM
(CPLD Simulator)
Verdrahtung (von unten)
Atmega 8 Testschaltung
Verdrahtung (von unten)
CPLD
Verdrahtung (von unten)
Bus
Test/Prog Schaltung
Atmega 8
CPLD Tester
Atmega 32 / 644
VC-20 Cartridge Tester
Atmega 32 / 644


Block Schaltbild
VC20 Speicher MAP
Schaltbild
ATF1504 / PLCC-44
PIN Belegung







Links auf technische Doku:

Aufbau der LOADER Dateien




Wozu das Ganze?



Bedienung



Downloads

Aktuelle Version

Splan ist ein Schaltplan Editor für Windows vin der Firma Abacom. Es gibt einen kostenlosen Schaltplan Viewer: download

Bugs

Diese Hard- und Software ist wie alles Irdische nicht perfekt. Sie können helfen, sie zu verbessern: schreiben Sie mir eine Mail mit Ihren Hinweisen oder Ihrer Meinung.

Bestehende Fehler

Behobene Fehler


to do

An der Software:


An der Hardware:


Disclaimer

Alle genannten Waren- oder Firmenbezeichnungen könnten Eigentum der jeweiligen Besitzer sein. Alle Informationen werden ohne Rücksicht auf die evtl. Rechts- oder Patentlage ausschließlich zu Ausbildungszwecken erteilt. Jegliche Verwendung geschieht ausdrücklich auf eigene Gefahr.

Also melden Sie sich nicht bei mir, wenn Ihr VC-20, Ihr CPLD oder Ihr PC nicht mehr funktionieren sollte, das Feuer auf die ganze Wohnung, das Haus, den Straßenzug oder die Stadt übergreift oder der dabei entstehende Rauch das Klima um 30 Grad erwärmt, Millionen verdursten und verhungern und der Rest von Aliens gekapert wird, die dann kommen, weil es endlich ausreichend kuschelig warm ist... also seien Sie gewarnt und bedenken Sie Ihr Handeln sorgfältig!


Home | News | Dokumentation | Download | Bugs | to do | Mail | first edit 2009-03-14, last edit 2009-05-04