J-CIA - CIA 6526/8521 Ersatz

Es gibt 168 Antworten in diesem Thema, welches 28.237 mal aufgerufen wurde. Der letzte Beitrag (12. August 2025 um 17:32) ist von Asklia.

  • Bilden diese Nachbauten eigentlich auch das elektrische Verhalten (aktive/passive NMOS-Pullups) des CIA nach? Ist ja nicht ganz unwichtig bei der Tastaturmatrix des C64, wo man im Prinzip zwei Ausgänge gegeneinander schalten kann, wenn man will.

  • Naja das wäre wohl aufgefallen, wenn's nicht richtig funktionierte. Die Tastaturmatrix kann man übrigens nicht nur gegen sich selbst kurzschließen, sondern die Joysticks schließen PA0-4 und PB0-4 auch gegen Masse kurz. Bitte melde dich an, um diesen Link zu sehen.

    Spannender ist das Thema bei IEC, weil dort das "analoge" Verhalten (also welche "Innenwiderstände" vorliegen und wo genau die Schwellwerte für High und Low liegen etc.) speziell bei langen Kabeln und mehreren Geräten am Bus auch etwas wichtiger wird.

    Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen.

  • Nachtrag aus Datenblatt des verwendeten FPGA: (Lattice ICE5lp1k-sg48i)

    Ist bei dem Chip JTAG abschaltbar? Wenn nicht könnte man ja einen Mikrocontroller nachrüsten, der beim Einschalten darüber einen gefixten (oder neu entwickelten) Bitstream reinschiebt. ;)

    10 x=rnd(-1963):fori=1to81:y=rnd(1):next
    20 forj=1to5:printchr$(rnd(1)*16+70);:next
    30 printint(rnd(1)*328)-217

    Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen.

  • Ist bei dem Chip JTAG abschaltbar? Wenn nicht könnte man ja einen Mikrocontroller nachrüsten, der beim Einschalten darüber einen gefixten (oder neu entwickelten) Bitstream reinschiebt. ;)

    Ich hab' ne bessere Idee:

    Der C64 von Floppy einen neuen Bitstream rein. :D Erst in den einen CIA, danach mit Hilfe des gefixten in den anderen.

    Alternativ: TapePort.... :LOL

  • demnächst bei EKA: Eine Schwemme günstiger CIA-Nachbauten. :thumbsup:

    Ach... ich denke bei den Nachbauten herrscht bei manchen noch Goldgräberstimmung. :nixwiss:

    Bei mir herrscht keine Goldgräberstimmung.

    Brauchte einfach ein Hobbyprojekt mit FPGA.;)

  • Bei mir herrscht keine Goldgräberstimmung.

    Brauchte einfach ein Hobbyprojekt mit FPGA.;)

    Dann sind wir schon zu zweit :thumbsup:

  • Bilden diese Nachbauten eigentlich auch das elektrische Verhalten (aktive/passive NMOS-Pullups) des CIA nach? Ist ja nicht ganz unwichtig bei der Tastaturmatrix des C64, wo man im Prinzip zwei Ausgänge gegeneinander schalten kann, wenn man will.

    Bitte melde dich an, um diesen Anhang zu sehen.

    Bei mir liefert die Schottky-Diode ca. 0.5mA Konstantstrom in Sperrrichtung ähnlich den passive NMOS-Pullups.

    Im Durchlassrichtung begrenzt nur der 33Ohm Widerstand.

  • Wobei mich androSID ja mal darüber aufgeklärt hat, daß sich beim CIA genau wie beim VIA 6522 die Ausgangsbeschaltung von PortA und PortB unterscheidet.
    Bild aus dem Handbuch des 6522:
    Bitte melde dich an, um diesen Anhang zu sehen.

    Im Handbuch des 6526 ist an dieser Stelle die Rede von passiven und aktiven Pullups.

    Nach meinen Verständnis ist bei PortA die NMOS-Highside immer aktiviert, während sie bei PortB immer invertiert zur Lowside geschaltet wird.

  • 0xdeadbeef Das kann so nicht (die ganze Wahrheit) sein, weil man PB0 mit der Schaltung direkt auf 5V gelegt bekäme, PB0 aber ein angeschlossener Joystick Port 1 bei "Hoch" hart auf Masse zieht und der dann durch den oberen FET fließende Strom denselben grillen würde. So einfach bekommt man die CIAs dann aber doch nicht kaputt.

    Vielleicht hat der obere FET ungewöhnliche Geometrie, sodass er z.B. bei Durchschalten noch relativ hohen Widerstand hat? Dann würde das ggf. keinen großen Unterschied zu Port A machen außer dass im High/Output-Fall etwas größere Lasten getrieben werden können.

    Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen.

    Einmal editiert, zuletzt von 1570 (4. Januar 2024 um 21:55)

  • Gab es da daaaamals™ nicht so nen "Killer-Poke" mit dem man zwei Ausgänge gegeneinander schalten konnte? Also bei der Tastatur oder beim Joystick?

    Ich meine, da war mal was..

  • Ja, das kann man trivial machen, es geht dabei aber nichts kaputt. Ich hab das hier im Forum glaube ich inzwischen 10mal erklärt. ;) Nochmal, die Joysticks machen das den ganzen Tag lang. Steht alles haarklein auf Bitte melde dich an, um diesen Link zu sehen. beschrieben.

    Oder wenn Du mal beherzt ein paar mehr Tasten auf der Tastatur drückst, was passiert dann? Richtig, es werden einmal alle Leitungen von Port A mit allen Leitungen von Port B verbunden. Und was macht der BASIC-Keyscan währenddessen? Legt einzelne Leitungen auf High/Output und andere auf Low/Output. Was geht kaputt? Nichts.

    Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen.

  • weil man PB0 mit der Schaltung direkt auf 5V gelegt bekäme,

    Bekommt man nicht.

    Der FET ist kein idealer Schalter. Er ist schneller, als der selbstleitende FET bei Port A, aber auch strombegrenzt.

    "Ace - daaa paaaasssiiert nix!!"

  • Gab es da daaaamals™ nicht so nen "Killer-Poke" mit dem man zwei Ausgänge gegeneinander schalten konnte? Also bei der Tastatur oder beim Joystick?

    Ich meine, da war mal was..

    Für den PET (ich glaube den 8032) gab es das, da hat man in der VIA tatsächlich 2 Ausgänge gegeneinander schalten können, worauf die VIA nach einiger Zeit wegen Überhitzung gestorben ist.

    Wenn Killerpoke, dann geht das also höchstens noch bei der 1540/1541/VC20.

    Früher waren 64k unglaublich viel, heute reicht es nicht mal mehr für "Hello, world!".

  • Für den PET (ich glaube den 8032) gab es das, da hat man in der VIA tatsächlich 2 Ausgänge gegeneinander schalten können, worauf die VIA nach einiger Zeit wegen Überhitzung gestorben ist.

    Never ever. Zwei VIAs gegeneinander machen genau gar nix.

  • Never ever. Zwei VIAs gegeneinander machen genau gar nix.

    Ich hatte das mal irgendwo im den Untiefen des Web gelesen. Natürlich findet man sowas nicht, wenn man es sucht.

    Leicht OT, einen Killerpoke für den PET gab es wohl trotzdem: Bitte melde dich an, um diesen Link zu sehen.

    Früher waren 64k unglaublich viel, heute reicht es nicht mal mehr für "Hello, world!".

  • Bekommt man nicht.

    Der FET ist kein idealer Schalter.

    Naja im Schaltbild ist das so aber ultra-irreführend, insbesondere weil die beiden FETs von Port B nicht identisch sind, denn mit +5V am Ausgang angelegt bekommt man den unteren FET durchaus sofort kaputt. Das passiert aber beim C64 eben niemals.

    Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen.

    Einmal editiert, zuletzt von 1570 (4. Januar 2024 um 22:12)

  • Gibt's denn Messungen zur Flankensteilheit bei Port A vs. Port B? Gehe ich richtig in der Annahme, dass der obere FET bei Port B einen ON-Widerstand im Bereich des passiven Pullups hat?

    Und um zum Thema zurückzukommen, ich gehe davon aus, dass die J-CIA Port A und Port B identisch umsetzt, dieses Detail also ignoriert? Wird auch in der Praxis kaum eine Rolle spielen... selbst IEC ist beim C64 an Port A angeschlossen, obwohl unter diesen Gesichtspunkten Port B dafür wohl sinnvoller gewesen wäre...

    Bitte melde dich an, um diesen Link zu sehen. - Bitte melde dich an, um diesen Link zu sehen.

  • Vielleicht hat der obere FET ungewöhnliche Geometrie, sodass er z.B. bei Durchschalten noch relativ hohen Widerstand hat? Dann würde das ggf. keinen großen Unterschied zu Port A machen außer dass im High/Output-Fall etwas größere Lasten getrieben werden können.

    Die Sache ist einfach die, daß das noch kein CMOS ist, sondern daß Highside und Lowside beide einen N-FET benutzen.

    Wenn man einen N-FET als Highside einsetzen will, dann liegt seine Source nicht auf Masse und man braucht eine entsprechend hohe Spannung am Gate (typisch Vgs > 10V), um ihn einigermaßen durchzuschalten. Eigentlich braucht man dafür einen Gate-Treiber oder andere Tricksereien, die ein oller NMOS-IC aber halt nicht hat. Die N-MOS-Highsides im CIA usw. schalten also auch im eingeschalteten Zustand niemals annähernd durch und sind daher eher weak Pullups als irgendwas anderes.