Mein Wunsch für so eine Platine: Alle Chips sollten gesockelt sein ![]()
Interesse? Neue C64 Platine "Remastered"
-
aRcAdEsTaTiOn -
17. Oktober 2012 um 10:01 -
Erledigt
Es gibt 338 Antworten in diesem Thema, welches 44.568 mal aufgerufen wurde. Der letzte Beitrag (
-
-
Was wir noch nicht hatten sind die ROMs. Eine neue Platine sollte mit den alten 2364 aufräumen.
Da ist noch mehr, beispielsweise das unsägliche 4-Bit Farbram.Da wir aber ohnehin ne eigene PLA im CPLD machen, kann die gleich ein paar Funktionen extra übernehmen. Ich denke an ein 128k S-Ram, welches *alles* ersetzt, also auch ROMs und das Farbram. Die ROMs werden beim Kaltstart von einem kleinen Microcontroller aus einem seriellen Flash ausgelesen, im Ram abgelegt, im CPLD schreibgeschützt und dann läuft die 6510-CPU los. Das sollte von den Teilekosten her das Billigste sein. Und wenn man dem Microcontroller noch einen seriellen Port gibt, kann man sich vom PC aus neue ROMs flashen. Voila, Kernelumschaltung inklusive

Jens
-
immer wenn ich in dem zusammenhang irgendwas mit "einfach" lese muss ich grinsen und daran denken das ca ALLE die in irgendeiner form versuchen die tastatur nachzubilden derbe daran knabbern. (das kann bisher kein emulator und auch kein existierendes ps/2 interface wirklich korrekt).
Vielleicht ist der Ansatz am C64-Tastaturstecker auch einfach zu spät. Es gibt ja schon Nachbauten des SID und der PLA - wie wäre es mit einem CIA-Nachbau in CPLD-Form, eben als Platine, die in den CIA-Sockel gesteckt wird - aber inkl. PS/2-Anschluss? Dann würde man sich das 66-Schalter-Gebastel sparen, weil man direkt Zugriff auf die CIA-Register hat, und einen CIA-Ersatz hätte man auch. Klar ist der Code dafür nicht trivial, aber z.B. das Chameleon wird das ja ziemlich genau so umsetzen. Naja, anderes Projekt...
Wiesel, gute Idee. Vielleicht eine SD-Karte als serielles Flash? Dann kann der Microcontroller auch gleich im Betrieb ein SD2IEC mimen.

-
Wie willst du das mit dem Farb-RAM machen? Wenn sich dessen Daten auch über den 8Bit-Datenbus quälen müssen anstatt dem VIC auf D8-D11 präsentiert zu werden bräuchtest du 2 Badlines wie beim TED. Das kann der VIC aber nicht.
Oder du müsstest das RAM doppelt so schnell ansprechen und das Nibble aus dem Farb-RAM latchen. Ginge mit einem SRAM und einiges an Logik sicher, Frage ist ob es den Aufwand wirklich lohnt.
Ok, ein 2114 oder LC3514 wird man nicht mehr verwenden wollen, aber man kann problemlos ein 62256 als Farb-RAM nehmen, in SMD braucht es ähnlich viel Platz wie das 2114. Etwas Verschwendung von gutem RAM, aber was solls.

-
Da ist noch mehr, beispielsweise das unsägliche 4-Bit Farbram.
Da wir aber ohnehin ne eigene PLA im CPLD machen, kann die gleich ein paar Funktionen extra übernehmen. Ich denke an ein 128k S-Ram, welches *alles* ersetzt, also auch ROMs und das Farbram. Die ROMs werden beim Kaltstart von einem kleinen Microcontroller aus einem seriellen Flash ausgelesen, im Ram abgelegt, im CPLD schreibgeschützt und dann läuft die 6510-CPU los. Das sollte von den Teilekosten her das Billigste sein. Und wenn man dem Microcontroller noch einen seriellen Port gibt, kann man sich vom PC aus neue ROMs flashen. Voila, Kernelumschaltung inklusive

Jens
Das hört sich im ersten Moment ganz gut an. Wie schaut es aber bei einem Teiledefekt aus ? Lässt sich sowas ohne externe
Programmierung der Chips dann auch noch mit Standardteilen austauschen ? -
Oder du müsstest das RAM doppelt so schnell ansprechen und das Nibble aus dem Farb-RAM latchen.
Genau das. Ich muss doch ohnehin den 17,73MHz-Takt im CPLD teilen, um damit den Phasenkomparator des Dotclock-VCO zu füttern. Ich habe also schon einen schnellen Takt im CPLD. Damit kann man prima die VIC-Phase in zwei Teile zerlegen: Die VIC-Phase ist ca. 450ns lang (krasse Einschwingzeiten berücksichtigt), und so ein RAM ist heutzutage mindestens 100ns schnell. Für den CPLD ist das Spazierschritt, und der VIC kommt ohnehin mit einem 2114 klar, das 350ns Zugriffszeit hat. Ein bisschen fummelei wird das schon, aber man tauscht nen Nachmittag Entwicklungsarbeit gegen eine Menge Nerven bei der Teilebeschaffung. Und Pins gibt's reichlich ein einem 100-beinigen CPLD, da tun die vier oberen Datenleitungen des VIC auch nicht mehr weh
Jens
-
Lässt sich sowas ohne externe
Programmierung der Chips dann auch noch mit Standardteilen austauschen ?
Der Microcontroller ist mit einem seriellen Port programmierbar, und von da aus ist auch das serielle Flash "befüllbar". Heutzutage bringt man neue Boards genau so hoch: Alle Chips sind bei der Bestückung "leer" und bei der Qualitätskontrolle wird per JTAG oder sonstigen ISP-Schnittstellen die aktuelle Logik eingespielt. Hier kommt ein wenig Erfahrung aus dem Embedded-Bereich zur Anwendung
Jens
-
und so ein RAM ist heutzutage mindestens 100ns schnell.Da kannst du weniger annehmen. Ich hatte für meine kleine Schaltung um ein SRAM im C64 benutzen zu können ein 70ns 128Kx8 SRAM bestellt und eines mit 55ns bekommen.
Zitat
Ein bisschen fummelei wird das schon, aber man tauscht nen Nachmittag Entwicklungsarbeit gegen eine Menge Nerven bei der Teilebeschaffung. Und Pins gibt's reichlich ein einem 100-beinigen CPLD, da tun die vier oberen Datenleitungen des VIC auch nicht mehr weh
Sind das nicht eher 8 Leitungen? 4 rein vom Datenbus und 4 raus zum VIC?
Wobei man natürlich beim Teilen des VIC-Zyklus aufpassen muss, schliesslich hat man erst die vollständige Adresse wenn _CAS auf LOW wechselt und das ist ein ziemliches Stück des Zyklus wenn ich das richtig in Erinnerung habe.
Ein weiteres Problem ergibt sich bei dieser Idee allerdings. Das Farb-RAM ist dann, von der CPU aus gesehen, 8 Bit breit, die oberen 4 Bits sind nicht mehr offen. Ich hoffe mal, es gibt keine Software die den offenen Datenbus als Feature betrachtet...
-
Da wir aber ohnehin ne eigene PLA im CPLD machen, kann die gleich ein paar Funktionen extra übernehmen. Ich denke an ein 128k S-Ram, welches *alles* ersetzt, also auch ROMs und das Farbram. Die ROMs werden beim Kaltstart von einem kleinen Microcontroller aus einem seriellen Flash ausgelesen, im Ram abgelegt, im CPLD schreibgeschützt und dann läuft die 6510-CPU los. Das sollte von den Teilekosten her das Billigste sein. Und wenn man dem Microcontroller noch einen seriellen Port gibt, kann man sich vom PC aus neue ROMs flashen. Voila, Kernelumschaltung inklusive

Genial! 100% in meinem Sinne! -
Die entsprechenden Port wie Joystick etc sollten dann aber auch gleich so zu schützen sein, dass die Ics nicht gehimmelt
werden, wenn man im laufenden Betrieb den Joystick einstöpselt und mit den Pfoten gegebenenfalls die Pins berührt. -
Schutzdioden wie beim IEC sollten etwas helfen. Pro Pin 2 davon.
-
Die einzigen Modifikationen, die machbar wären, würden das wegfallen des TV-Modulators sein ein Stereo SID und ein mehrfach Kernal-Umschalter.
edit: Alte Bauteile wie Kondensatoren, Widerstände würde natürlich durch neuer ersetzt werden.
Ohne Änderung der Spannungsversorgung wäre es für mich auf jeden Fall uninteressant.Alle ROMS zusammenfassen in einziges (Evtl. Kernal Flash Option)
Das original Kernal als Fallback und dazu ein Flashbaustein um andere Kernals selber vom C64 aus zu flashen? Merkt man, dass ich das Easyflash liebe?
Grundsätzlich finde ich deine Zusammenfassung sehr gut. Kleinigkeiten würde ich ergänzen wollen. Ich hätte gerne eine Stiftleiste mit allen IEC-Leitungen plus Stromversorgung um intern schnell mal ein SD2IEC anschließen zu können.
Diese Idee fand ich extrem klasse:
Bitte melde dich an, um diesen Link zu sehen.
Da kann man den C64 in ein Original-Gehäuse mit allen Anschlüssen packen oder man verzichtet auf User- und Tape-Port und hat ein schön kleines Board was man beliebig verbauen kann. Man sollte dann natürlich auch an Stiftleisten für die Joy-Ports zum verlegen, an einen internen Stromstecker (einfacher Molex oder gleich ein ATX-Poweranschluss?) und an 2 Pinne zum verlegen des Schalters denken. -
Da kann man den C64 in ein Original-Gehäuse mit allen Anschlüssen packen oder man verzichtet auf User- und Tape-Port und hat ein schön kleines Board was man beliebig verbauen kann. Man sollte dann natürlich auch an Stiftleisten für die Joy-Ports zum verlegen, an einen internen Stromstecker (einfacher Molex oder gleich ein ATX-Poweranschluss?) und an 2 Pinne zum verlegen des Schalters denken.
Mit den Stiftleisten für die jeweiligen Ports finde ich auch gut. So kann man Überflüssiges gleich mal weglassen.
-
Alles anzeigen
Man könnte wie bereits gesagt folgende Verbesserungen auf der neuen Platinenrevision einfliessen lassen:
S-Video (Wegfall Modulator)
CSG Clockchip Ersatz on Board
SuperPLA / RealPLA on Board
Stereo SID optional durch Jumper
Verbesserte Spannungsversorgung - Modernisierung (evtl. 12 Volt Only Board)
SRAM Speicher
Alle ROMS zusammenfassen in einziges (Evtl. Kernal Flash Option)Tom / Pentagon
Dafür würde ich sofort zwei verbindliche Vorbestellungen plazieren.
-
Dafür würde ich sofort zwei verbindliche Vorbestellungen plazieren.
ich auch -
Also so langsam bekomme ich auch Interesse an so einem Teil!
-
Zitat
Vielleicht ist der Ansatz am C64-Tastaturstecker auch einfach zu spät. Es gibt ja schon Nachbauten des SID und der PLA - wie wäre es mit einem CIA-Nachbau in CPLD-Form, eben als Platine, die in den CIA-Sockel gesteckt wird - aber inkl. PS/2-Anschluss? Dann würde man sich das 66-Schalter-Gebastel sparen, weil man direkt Zugriff auf die CIA-Register hat, und einen CIA-Ersatz hätte man auch. Klar ist der Code dafür nicht trivial, aber z.B. das Chameleon wird das ja ziemlich genau so umsetzen.
das ist in hardware noch schwieriger als in software zu realisieren .... und weder peter (chameleon) noch bero (micro64) noch ich (vice) hatten da bisher eine idee wie es mit vertretbarem aufwand machbar wäre.an der stelle gibts auch noch ein ganz andres problem: die meissten pc tastaturen können maximal 3 tasten gleichzeitig (und oft nichtmal beliebige, sondern 2 modifier+1 sonstige). das stösst schon bei der emulation des joysticks aufm numpad an seine grenzen.
-
Dann bleibt die C64 Tastatur halt weg. Wie schauts mit Amiga 500 Tastaturen aus ? Damit kann man sich ja zur Zeit echt totwerfen.
ich auch
Ich sowieso ! -
Dann bleibt die C64 Tastatur halt weg. Wie schauts mit Amiga 500 Tastaturen aus ? Damit kann man sich ja zur Zeit echt totwerfen.[...]
Ergibt auch keinen Sinn, weil die Folie m.U. recht anfällig ist.Edit: Und will man eine Tastatur haben, die schneller ist, als der Computer ansich?

(*hint* der Tastaturchip der A500-Tastaturen hat eine 6502 als Kern) -
Ergibt auch keinen Sinn, weil die Folie m.U. recht anfällig ist.
Inwiefern ? Zumindest hätte man hier genug Nachschub.
Edit: Und will man eine Tastatur haben, die schneller ist, als der Computer ansich?

(*hint* der Tastaturchip der A500-Tastaturen hat eine 6502 als Kern)Optimal. Den könnte man als (Co)Prozessor dann nutzen *g
-