Hallo Besucher, der Thread wurde 28k mal aufgerufen und enthält 87 Antworten

letzter Beitrag von Freak am

Project-Log: C64xs (xtra small)

  • Cooles Projekt!


    Ab Mai 2016 habe ich mich nochmal intensiv mit KiCAD beschäftigt und muß im Nachhinein sagen: Es war es absolut Wert! Ich habe den Schaltplan vervollständigt, Bauteile (Footprints) gezeichnet, platziert und die ganze Platine geroutet. Man muss sich zwar an den Arbeitsablauf bei KiCAD gewöhnen (erst recht, wenn man von EAGLE umsteigt), aber ich bin davon überzeugt, dass ich die Platine in EAGLE niemals so schnell fertiggestellt bekommen hätte!


    Jaa, kommt auf die Open-Source-Seite der Macht! ;) Ich war damals vom Push-and-Shive-Router in KiCAD so begeistert, dass ich lieber eine etwas instabile Entwicklungsversion von KiCAD mit PnS verwendet habe als zurück zur noch installierten stabilen Version zurückzuwechseln, wo der fehlte.


    Zitat

    Ich habe folgende Features vorgesehen:


    Schade, keine Stiftleisten um einen User- oder Kassettenport nachzurüsten.

  • Ahja das Du keine Tastatur verwenden möchtest habe ich überlesen.


    Interessant wäre so ein Projekt wenn es eine kleine Platine geben würde welche ein C64 GS System bildet mit Modulport und dazu ein kleines Gehäuse z.b.aus dem Drucker.
    Also ein C64GS II quasi.

  • Ich habe mich bereits mit den Bauteilen eingedeckt. Die PLA gibt es noch als NOS bei ebay. Ich habe nicht vor, ausgelötete Bauteile in die Sockel zu stecken..

    Von der neuen PLA gibt es auch einen proof-of-concept Nachbau:
    http://www.frank-buss.de/c64/pla/
    siehe auch: Memory Controller aus dem C64-II nachbilden



    sl FXXS

  • Von der neuen PLA gibt es auch einen proof-of-concept Nachbau:
    frank-buss.de/c64/pla/
    siehe auch: Memory Controller aus dem C64-II nachbilden


    Ja, ist bekannt. Hatte auch überlegt, statt des PLA ein CPLD einzusetzen, aber dann hätte ich eine Baustelle mehr gehabt und die Kompatibilität wäre eine zusätzliche Unbekannte...


    Hast Du die mal geprüft? Evtl. ist das zwar der gleiche Chip mit identischer Beschriftung, allerdings unprogrammiert. Das musste ich leider selbst schon einmal als Fehlkauf erleben. Dann hast Du zwar einen originalen SuperPLA Chip aus der 469er allerdings ist das Ding jungfräulich.


    Ähhh, nö, bis jetzt ging ich davon aus, das die Welt nett und ehrlich ist. Aber ich danke Dir für die Info, werde es mir merken und denke ich werde die PLA mal grob testen: Spannung anlegen und den RESTORE-Pin mit einem Takt versehen. Dieser Takt sollte dann auf der NMI-Leitung erscheinen. Nicht, dass ich am Ende doch noch ausgelötete Bauteile verwenden muss...


    Jaa, kommt auf die Open-Source-Seite der Macht! ;) Ich war damals vom Push-and-Shive-Router in KiCAD so begeistert, dass ich lieber eine etwas instabile Entwicklungsversion von KiCAD mit PnS verwendet habe als zurück zur noch installierten stabilen Version zurückzuwechseln, wo der fehlte.


    Den Push-and-Shove-Router habe ich nicht verwendet, ich hatte aber "DRC-Kollisionen highlighten" an. Alleine diese Funktion ist schon eine grosse Hilfe. Geroutet wurde ausschließlich im OPENGL-Mode, eine Hand an der Maus und die andere an der Tastatur zum Eingeben der Befehle...


    Schade, keine Stiftleisten um einen User- oder Kassettenport nachzurüsten.


    Userport ist durch Xlink belegt. Ok, man hätte eine Stiftleiste dafür vorsehen können und XLink dann durch einen Jumper ständig im Reset halten. Ich selbst hätte gerne eine Stiftleiste für die Floppy gehabt, dann könnte man ein kleines SD2IEC-Laufwerk als Add-On vorsehen.


    Aber ich schaue erstmal, wie weit ich komme... :)


    Bin aber gespannt ,wie weit dieser Nachbau kommt..


    Aufgeben ist keine Option!



    Gruß,
    Thomas

  • Evtl. ist das zwar der gleiche Chip mit identischer Beschriftung, allerdings unprogrammiert. Das musste ich leider selbst schon einmal als Fehlkauf erleben. Dann hast Du zwar einen originalen SuperPLA Chip aus der 469er allerdings ist das Ding jungfräulich.

    Das ist IMHO eine hervorragende Nachricht - wenn es die in unprogrammiert gibt, gibts es auch Programmiergeräte dafür und die Auswahl an verwendbaren Chips ist nicht mehr alleine auf die "fertigen" beschränkt.

  • Ob und wo es noch Programmiergeräte und Dokumentation dazu gibt ist fraglich.


    Bei einer Firmen-/Lager-/Sontwasauflösung werden Kisten mit Bauteilen vertickt. Papier, Festplatten usw wird aber sorgfältig vernichtet...


    Das Programmiergerät ist denke ich die kleinste Baustelle, sofern man weiss, wie der Chip an seine Logik kommt.

  • Letztes Jahr (zur DoReCo 3-Tage-Party Anfang September) habe ich den gegen einen Schaltregler gewechselt. Du warst doch auch da, hättest das Teil live sehen können...

    ja kann mich errinnern - habe aber nicht gewusst das es ein VC20 ist

  • Es geht langsam los...


    Vor knapp einer Woche kamen die Platinen an. 5 Stück bestellt, 11(!) Stück geliefert. Wow! Ich hatte auf eine Platine mehr gehofft, aber dass die gleich so übertreiben müssen... Bei der "Anprobe" der Bauteile habe ich dann auch umgehend ein paar Patzer im Schaltplan/Layout gefunden, die ich zwar in der nächsten Revision beseitige, mit der ich aber bei diesen Platinen leben muss.


    Beispielsweise habe ich den Abstand der Stützkontakte der DIN-Stecker mit 10mm angenommen. Ein eigentlich normaler Wert, meine Buchsen haben jedoch nur 5mm Abstand bei den Stützkontakten. Auf dem unteren Bild kann man an der oberen Kante meine zusätzlichen Bohrungen sehen, im KiCAD-Footprint habe ich diese Bohrungen bereits zusätzlich zu den anderen eingefügt.


    Auch muss ich im Moment den Audiostecker mit Kraft reindrücken. Wenn man nicht für jedes Bauteil selbst ein Footprint zeichnet, oder von Eagle einfach welche ungeprüft übernimmt, dann kann das schon mal passieren...


    Hübsch sind die Platinen aber allemal:


    pcb1.jpg



    Ich habe in dieser Woche die Bauteile für die Schaltregler berechnet und die restlichen Bauteile bestellt. Nächste Woche müsste ich alles vorrätig haben.


    Für das Berechnen der Bauteilwerte für den Schaltregler gibt es ein Online-Tool von ST, in dem man seine gewünschten Werte einträgt (z.B. Ausgangsspannung, Strom, etc.) und dann wirft das Tool die Werte für die restlichen Bauteile raus. Blöd nur, wenn man schon was eingelötet hat (die nicht gerade kleinen Induktivitäten), womit das Tool so gar nicht klarkommt. Also flugs die Spulen mit Heissluft wieder ausgelötet. Ging zum Glück alles gut, keine Beschädigung der Platine. Wäre aber auch sonst kein großes Problem gewesen, hatte bis jetzt ja nur billiges Hühnerfutter verlötet und bei den Platinen habe ich ja massig Reserve...


    Eine weitere kleine Einschränkung gibt es noch: Da ich den Digifix-Widerstand am SID-Eingang (und auch den 1K-Widerstand am SID-Ausgang) nicht schaltbar gemacht habe, werde ich "erstmal" alles für einen SID-Typ festlegen müssen. Das bedeutet auch, dass die SID-Spannung erstmal nicht von 9V auf 12V schaltbar ist. Das kommt dann in der nächsten Revision, wenn auch die Widerstände am SID schaltbar sind. Eine umschaltbare SID-Spannung macht dann mehr Sinn. Bis dahin kann ich dann auch die Werte für den Schaltwandler in der Hinsicht optimieren, dass er bei beiden Spannungen gleich gut arbeitet.


    Welchen SID-Typ sehe ich denn hier vor? Den 6581 mit 12V oder lieber den 8580 mit 9V? Vorschläge? Begründungen?


    Wie oben bereits erwähnt, habe ich auch schon angefangen zu Löten. Erstmal eine Menge passiver Bauteile, die nicht zwischen irgendwelchen Versorgungsspannungen liegen. Mit den ICs warte ich bis ich die Schaltwandler am Laufen habe. Denn wenn ein 5V-Regler aus irgendeinem Grund eine höhere Spannung ausgibt und ich schon ICs drauf habe, dann himmel ich die vielleicht. Möchte ich nicht wirklich, also alles schon langsam und der Reihe nach...


    pcb2.jpg



    Ab ca. Mitte nächster Woche (wenn die restlichen Bauteile da sind) werde ich dann die Stromversorgung fertigstellen und testen (belasten). Mal schauen wie sich die Regler verhalten. Wenn alles ok ist, dann gehts weiter mit dem Taktgenerator und weiterem SMD-Kleinkram. Und die ersten ICs...


    Gruß,
    Thomas

  • Jo, kann mich da meinen Vorrednern nur anschließen. Ein tolles Projekt. :zustimm:
    Viel Erfolg noch beim Bestücken und dass das Teil danach auch rennt.

  • Sehr sehr schön! Ich bin auch ganz gespannt, wie es weitergeht!

  • Welchen SID-Typ sehe ich denn hier vor? Den 6581 mit 12V oder lieber den 8580 mit 9V? Vorschläge? Begründungen?

    Nimm mal den SID, der auch auf den 469er Board drauf ist: den 8580. Die meisten aktuellen Demo-Tunes sind einfach auf den 8580 abgestimmt, manche Basedrums hörst Du auf einem 6581 gar nicht - z.B. WeAreDemo-Tune4 oder Goatlight Tune1 und Tune2


    oder am besten beide auf einem MixSID-Board.
    Vorteile:
    * zuschaltbares und justierbares Digi-FIX für den 8580er
    * immer laute oldschool-Digis auf dem 6581
    * zig Möglichkeiten zur Laufzeit umschaltbar u.s.w.


    Nachteil: Dein C64xs geht ein bißchen in die Höhe

  • Und weiter gehts:


    Inzwischen habe ich von 311 Bauteilen 271 aufgelötet. Das umfasst sämtliche SMD-Bauteile, sowie die Stiftleisten und die EMI-Filter. Nächstes Wochenende wird die Platine dann gewaschen um das Flussmittel zu beseitigen. Danach kommen dann die IC-Sockel drauf, die Elkos, Potis, alle Buchsen und schließlich die Taster und Schalter. Also alle Teile, wo ich nicht zu 100% ausschliessen kann, dass Flüssigkeit eindringt. Die Elkos sind zwar dicht, aber ich versuche hier jedes Risiko zu vermeiden...


    Und dann wird es langsam Zeit, das Eprom zu brennen... :)


    Hier mal ein Foto, wie die Platine zur Zeit aussieht.


    PCB1.jpg


    Viel kann man noch nicht erkennen, was wohl auch an der Aufnahme mit dem Mobiltelefon liegt. Sobald die Platine fertig ist (und läuft) gibt es auch ordentliche Fotos...


    Die Elkos rechts im Bild sind nur provisorisch draufgepappt (die kommen wieder runter), damit ich die Schaltregler testen konnte, bevor ich die ICs drauflöte. Hat aber alles problemlos funktioniert, bis auf eine Kleinigkeit: Alle Spannungen sind rund 0,1V bis 0,2V zu niedrig. So ist statt 5,0V nur 4,9V zu messen, statt 9,0V messe ich 8,8V und statt 12,0V sind es "nur" 11,8V. Nein, das liegt nicht am Messequipment, oder drei verschiedene Multimeter messen plötzlich gleich falsch. Aber lieber etwas zu wenig, als zu viel. Ist auch immer noch im Toleranzbereich, also nichts vorüber man sich derzeit Sorgen müsste...


    Inzwischen ist die Platine sehr mit Flussmittel verschmiert. Deshalb kommt sie am Wochenende in ein "Tickopur TR 14"-Bad, wo das Flussmittel verseift und sich dann rückstandsfrei entfernen lässt. Ab dann sieht man auch wieder jeden Fingerabdruck... ;(


    Danach gehts dann weiter mit dem Bestücken des Grobzeugs.



    Zwischenzeitlich habe ich auch eine Platine zur Testplatine erklärt:


    Testplatine.jpg


    Diese Platine habe ich zum Testen von folgenden Komponenten verwendet:


    * Testen der Schaltregler
    Auf der rechten Seite ist ein Schaltregler aufgebaut. Ich verwende ihn, um zum Beispiel Anpassungen an den Wiederstandswerten vorzunehmen, um (später) die Spannungen zu optimieren.



    * Progammerstellung für Atmel-TINY10 für 50Hz-Takterzeugung am TOD-Pin
    Auf der linken Seite befindet sich hinter der LED ein sehr kleiner Mikrocontroller, der nichts anderes macht, als ein Rechtecksignal mit 50Hz für das TOD-Signal zu erzeugen. Eigentlich soll die Frequenz durch ein Poti einstellbar sein, aber für's Erste bleibt es bei einer festen Fequenz. Ausserdem sieht niemand, ob der Mikrocontroller mit 50,0Hz oder 50,1Hz den TOD-Pin taktet...


    Das Programm funktioniert bereits, mein Programmer von "Diamex" braucht für diesen Chip (es wird hierfür eine TPI-Schnittstelle benötigt) mit "avrdude" aber so 5-10 Anläufe, um das Programm zu flashen. Dat Teil taugt nix. Hätte ich den Programmer nicht schon so lange hier liegen, hätte ich ihn wohl zurückgeschickt...



    * Testen der 251715-PLA

    Hast Du die mal geprüft? Evtl. ist das zwar der gleiche Chip mit identischer Beschriftung, allerdings unprogrammiert. Das musste ich leider selbst schon einmal als Fehlkauf erleben. Dann hast Du zwar einen originalen SuperPLA Chip aus der 469er allerdings ist das Ding jungfräulich.

    Ja, ich habe die PLA getestet und habe sogar Neues zur Funktionsweise gefunden:


    Frank Buß hat vor ein paar Jahren die PLA mittels eines programmierbaren Chips nachgebildet und nahm an, dass der Restore-Eingang der PLA einfach an den NMI-Ausgang weitergeleitet wird. So ist es zumindest im VHDL-Code beschrieben (NMI <= Restore;).


    So dachte ich auch, also habe ich mein 50Hz-TOD-Signal auf den Restore-Eingang gelegt und das Scope an den NMI-Ausgang, um das Ausgangssignal zu beobachten.


    Aber nichts geschah, der Ausgangpegel war dauernd auf Low. Hmmm, PLA doch nicht programmiert?


    Bis ich mal kurz mit dem Finger an den Phi0-Eingang kam. Dann gab es ein wildes Geflacker am NMI-Ausgang. Ok, dachte ich mir, dann braucht die PLA wohl einen eigenen Takt. Diesen habe ich mir dann aus einer teildefekten C64-Platine "geborgt" und ihn an den Phi0-Eingang gelegt.


    Aber mein 50Hz-TOD-Signal am Restore-Eingang wurde gar nicht einfach durchgeleitet!


    PLA 251715 - NMI-Logik.jpg


    So wie es sich auf dem Scope-Bild darstellt, wird der NMI-Ausgang asynchron mit der positiven Flanke am Restore-Eingang gesetzt und acht Phi0-Takte (negative Flanke triggert den internen Zähler) später wieder zurückgesetzt.


    Das sollte man sich gut merken, falls man mal einen "perfekten" CPLD-Ersatz für diese PLA bauen möchte...



    Soweit, so gut. Geht irgendwie alles zu glatt...


    Gruß,
    Thomas

  • Wer hat eigentlich behauptet daß die 'Super-PLA' tatsächlich 'im Feld', also nach Abschluß der Fertigung und Einschmelzen ins Gehäuse, programmierbar ist? Das war bekanntlich schon die 'alte' MOS-PLA nicht mehr, und in dem dicken Käfer dürfte allenfalls ein Chip aus einem ASIC-Baukasten stecken, falls Commodore/MOS da nicht ihre 'custom chip magic' für verwendet haben.