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

letzter Beitrag von GMP am

C64 friert nach Betätigung des Joysticks ein

  • Hallo zusammen,


    jetzt komme ich auch mal mit einem kniffligen Fall.


    Habe für einen Freund hier zwei C64 C (250469) zur Reparatur stehen, die fast exakt das gleiche Problem haben.
    Zur kurzen Erklärung: Er experimentierte für ein Projekt an den Joystickports herum und anstatt die Pins auf Low zu ziehen, gab er ein High-Signal drauf.
    Bitte jetzt keine Kommentare zum Hergang. Ist passiert und da kann man jetzt auch nichts mehr dran ändern.


    Ich beschreibe nachfolgend den einzigen Fehler, den beide haben.


    Beide Rechner frieren komplett ein, wenn man beim ersten in Controlport 2 die Feuertaste betätigt und beim zweiten in CP1 den Joystick nach rechts bewegt.
    Der Cursor blinkt nicht mehr. Ein Reset bringt nichts, nur Aus- und Einschalten lässt ihn wieder leben. Das interessante ist, das bei beiden das CHECK64 einwandfei und ohne Fehler durchläuft.
    Dann bin ich hin gegangen und habe mal ein Joystick-Testprogramm geladen. In dem Moment wo der Rechner einfriert, werden (fast) alle Richtungen und Feuertasten gleichzeitig betätigt.


    Jetzt möchte man vermuten....... Joystickports :gruebel ...... hhhmm, könnte eigentlich nur die CIA sein. Also CIA U1 ausgelötet und getestet. Einwandfrei.
    Als nächstes CIA U2, ebenfalls in Ordnung. Nun war die CPU dran, doch die ist auch ok. Ja, jetzt geht meine Vermutung so langsam in Richtung PLA U8.
    Doch wenn die defekt ist, dann wäre es ja in meinen Augen schon fast ein Totalschaden.


    Habt Ihr evtl. noch einen Tipp für mich?


    VG
    Thomas

  • Stimmt. :thumbup: U18 wäre noch ein heißer Kandidat. Ich teste den mal.


    Edit: Der ist auch in Ordnung.

  • Er experimentierte für ein Projekt an den Joystickports herum und anstatt die Pins auf Low zu ziehen, gab er ein High-Signal drauf.

    Auf Up/Down/Left/Right/Fire? Oder lässt sich das weiter einschränken? Beide Ports?

    Beide Rechner frieren komplett ein, wenn man beim ersten in Controlport 2 die Feuertaste betätigt und beim zweiten in CP1 den Joystick nach rechts bewegt.

    Diese beiden Leitungen gehen aber wirklich nur zu CIA1. Selbst wenn der 4066 und/oder der VIC was abbekommen hätten, sollte der Defekt so nicht ausgelöst werden können...
    Wobei: Der 4066 hängt doch an den POT-Leitungen, und die sollten mit +5V zurechtkommen, oder?


    Haben die verwendeten ASSYs evtl. noch irgendwelche Filterkondensatoren oder so an den Ports? Denn wenn die CIA1 ok ist, wäre das das einzige, was noch an den fraglichen Leitungen hängt.

  • Ich tippe auf die EMV-Filter, die auf der 469 an den Control-Ports dran sind. Vermutlich ist einer gegen Vcc durchgegangen, wenn jetzt gegen GND gezogen wird bricht die Spannung zusammen - würde ich mal messen, ob man da was sieht.

    "Wenn du überredet, ermahnt, unter Druck gesetzt, belogen, durch Anreize gelockt, gezwungen, gemobbt, bloßgestellt, beschuldigt, bedroht, bestraft und kriminalisiert werden musst. Wenn all dies als notwendig erachtet wird, um deine Zustimmung zu erlangen, dann kannst du absolut sicher sein, dass das, was angepriesen wird, nicht zu deinem Besten ist." - Quelle unbekannt.


    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten." - Quelle unbekannt.

    "Mein Herr, ich teile Ihre Meinung nicht, aber ich würde mein Leben dafür einsetzen, dass Sie sie äußern dürfen." - Voltaire.

    "Diskutiere nie mit einem Idioten - er zieht dich auf sein Niveau hinunter und schlägt dich dort mit seiner Erfahrung!" - Volksweisheit.


  • Auf Up/Down/Left/Right/Fire? Oder lässt sich das weiter einschränken? Beide Ports?

    Beide auf unterschiedlichen Pins. Der eine bei der Feuertaste (CP2) und der andere auf Knüppel rechts (CP1).


    Haben die verwendeten ASSYs evtl. noch irgendwelche Filterkondensatoren oder so an den Ports? Denn wenn die CIA1 ok ist, wäre das das einzige, was noch an den fraglichen Leitungen hängt.

    Nein, da ist nichts mehr dazwischen. Geht über die EMV-Filter direkt in die CIA.


    Ich tippe auf die EMV-Filter, die auf der 469 an den Control-Ports dran sind. Vermutlich ist einer gegen Vcc durchgegangen, wenn jetzt gegen GND gezogen wird bricht die Spannung zusammen - würde ich mal messen, ob man da was sieht.

    Leider unauffällig. Alle bringen die gleichen Werte.

  • Leider unauffällig. Alle bringen die gleichen Werte.

    So, das war Blödsinn meinerseits, gerade erst Gelegenheit gehabt, den Schaltplan zu studieren: Die EMV-Filter gehen nur gegen Masse.


    Aber ich dachte eigentlich, du solltest mal Vcc messen, ob das einbricht. Es ist ein Unterschied, ob man den Eingang mit einem Schalter gegen Masse klemmt oder ob man - wie bei der Tastatur und bei den CHECK64-Dongles - einen Portbaustein die Eingangsleitung nach GND ziehen lässt.


    Andere blöde Frage: Der Joystick ist aber in Ordnung? Anderen mal probiert? (Ja, ich weiß ... nur zur Sicherheit ... :) ).

    "Wenn du überredet, ermahnt, unter Druck gesetzt, belogen, durch Anreize gelockt, gezwungen, gemobbt, bloßgestellt, beschuldigt, bedroht, bestraft und kriminalisiert werden musst. Wenn all dies als notwendig erachtet wird, um deine Zustimmung zu erlangen, dann kannst du absolut sicher sein, dass das, was angepriesen wird, nicht zu deinem Besten ist." - Quelle unbekannt.


    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten." - Quelle unbekannt.

    "Mein Herr, ich teile Ihre Meinung nicht, aber ich würde mein Leben dafür einsetzen, dass Sie sie äußern dürfen." - Voltaire.

    "Diskutiere nie mit einem Idioten - er zieht dich auf sein Niveau hinunter und schlägt dich dort mit seiner Erfahrung!" - Volksweisheit.


  • Ach ja:

    Ein Reset bringt nichts, nur Aus- und Einschalten lässt ihn wieder leben. D

    Das wäre ein Indiz für den VIC - denn der hat keine Reset-Leitung und wird nur durch einen Power-Off-On wieder resetted! VIC tot - Takt tot - CPU tot.
    Dagegen spricht, dass der LightPen-Eingang an Control-Port 1 hängt, nicht am zweiten. Wie das den VIC beeinflussen sollte weiß ich nicht. :nixwiss::gruebel


    Was macht denn /IRQ so? Hast du da mal ein Oszi rangehängt? Überhaupt an alle Leitungen des Steuerbusses, Takt, usw.?

    "Wenn du überredet, ermahnt, unter Druck gesetzt, belogen, durch Anreize gelockt, gezwungen, gemobbt, bloßgestellt, beschuldigt, bedroht, bestraft und kriminalisiert werden musst. Wenn all dies als notwendig erachtet wird, um deine Zustimmung zu erlangen, dann kannst du absolut sicher sein, dass das, was angepriesen wird, nicht zu deinem Besten ist." - Quelle unbekannt.


    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten." - Quelle unbekannt.

    "Mein Herr, ich teile Ihre Meinung nicht, aber ich würde mein Leben dafür einsetzen, dass Sie sie äußern dürfen." - Voltaire.

    "Diskutiere nie mit einem Idioten - er zieht dich auf sein Niveau hinunter und schlägt dich dort mit seiner Erfahrung!" - Volksweisheit.


  • Aber ich dachte eigentlich, du solltest mal Vcc messen, ob das einbricht.

    Um exakt 0,01 Volt, sobald ich den Feuerknopf betätige. Ich denke, das ist zu vernachlässigen.


    Andere blöde Frage: Der Joystick ist aber in Ordnung? Anderen mal probiert?

    Der ist tadellos in Ordnung. Auch bereits einen anderen probiert. :-)


    Das wäre ein Indiz für den VIC

    Ebenfalls in Ordnung.


    Was macht denn /IRQ so? Hast du da mal ein Oszi rangehängt? Überhaupt an alle Leitungen des Steuerbusses, Takt, usw.?

    Bisher noch nicht. Sobald meins wieder läuft......Das liegt in Teilen hier auch gerade auf dem Tisch.
    Ich weiß, schlechter Zeitpunkt. :-D

  • Naja, notfalls mit dem Multimeter ... /IRQ, /NMI, R/W, AEC, BA sollten z. B. nicht dauerhaft auf 0 V liegen. Aber wenn's der VIC nicht ist ...


    Waren es sicher "nur" 5 V, mit dem der Kollege da experimentiert hat? Sind das zwei komplette C64? Beide mit gleichem Fehler? Also bei beiden auch das "Experiment" gemacht?


    Noch eine Idee: https://www.c64-wiki.de/wiki/Tastatur
    Was passiert, wenn du statt des Joysticks die entsprechenden Tasten laut Tastaturmatrix drückst?

    "Wenn du überredet, ermahnt, unter Druck gesetzt, belogen, durch Anreize gelockt, gezwungen, gemobbt, bloßgestellt, beschuldigt, bedroht, bestraft und kriminalisiert werden musst. Wenn all dies als notwendig erachtet wird, um deine Zustimmung zu erlangen, dann kannst du absolut sicher sein, dass das, was angepriesen wird, nicht zu deinem Besten ist." - Quelle unbekannt.


    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten." - Quelle unbekannt.

    "Mein Herr, ich teile Ihre Meinung nicht, aber ich würde mein Leben dafür einsetzen, dass Sie sie äußern dürfen." - Voltaire.

    "Diskutiere nie mit einem Idioten - er zieht dich auf sein Niveau hinunter und schlägt dich dort mit seiner Erfahrung!" - Volksweisheit.


  • Naja, notfalls mit dem Multimeter ... /IRQ, /NMI, R/W, AEC, BA sollten z. B. nicht dauerhaft auf 0 V liegen.

    Habe mein Oszi auf die Schnelle mal wieder zusammengebaut. Alle Pegel gehen nach dem Einschalten auf High und bleiben dann auch so. Auch wenn er einfriert, nachdem ich die Feuertaste gedrückt habe.


    Waren es sicher "nur" 5 V, mit dem der Kollege da experimentiert hat? Sind das zwei komplette C64? Beide mit gleichem Fehler? Also bei beiden auch das "Experiment" gemacht?

    Ich gehe mal stark davon aus. Es war ein Raspberry Pi.
    Ja, beide C64 sind komplett und beide haben den gleichen Fehler, nur auf unterschiedlichen Ports und Pins. Der eine war sogar noch original versiegelt.
    Jo, nachdem der eine nicht mehr lief, nahm er den anderen und wiederholte den Schritt.


    Was passiert, wenn du statt des Joysticks die entsprechenden Tasten laut Tastaturmatrix drückst?

    Er läuft weiter. Da reagiert er komischerweise nicht drauf. Es erscheinen erst ganz normal die Zeichen auf dem Bildschirm und wenn ich die letzte Taste in der Kombi drücke, passiert nichts.


    Frieren die beiden C64 C auch ein, wenn das Keyboard nicht angeschlossen ist?

    Ja, das tun sie.


    Weiter getestet. PA0-PA6 liegen nach dem Einschalten auf High. Drücke ich auf den Feuerknopf, zieht er alle Leitungen auf Low und die bleiben dann auch so. Das erklärt auch die Anzeige des Joystick Testprogramms.
    Teste ich das mit den anderen Steuersignalen (Hoch, Runter, Rechts, Links), werden diese jeweils kurz auf Low- und in Joystick Ausgangsstellung wieder auf High gezogen. Also alles normal.


    Bei PB0-PB7 geht der Pegel im Fehlerfall um 0,5V in den Keller.

  • Hast Du mal den SID gecheckt?

    Jo, habe ich. SID ausgebaut - gleiches Verhalten.

  • Passiert das auch, wenn gar kein Programm läuft, nur der BASIC-Schirm? Also auch kein Joystick-Test-Programm?


    Gut, es ist grundsätzlich was anderes, ob man den CIA-Eingang per Joystick hart auf GND zieht oder ob man, wie beim Check64, die EIngänge durch einen CIA-Ausgang auf HI/LO zieht ... bei HI fließt nur ein kleiner Strom, begrenzt durch den FET, der als Pull-Up geschaltet ist im CIA intern. Bei LO wird der Widerstand (RDSON) des CIA-Ausgangs-FETs auch nicht 0 sein, muss mal im Datenblatt graben. Eventuell ist das der Grund warum das Check64 keinen Fehler meldet.


    Hast du die CIAs mal in einem anderen Rechner mit Joystick getestet? Und hast du mal einen anderen CIA im Patienten getestet?

    "Wenn du überredet, ermahnt, unter Druck gesetzt, belogen, durch Anreize gelockt, gezwungen, gemobbt, bloßgestellt, beschuldigt, bedroht, bestraft und kriminalisiert werden musst. Wenn all dies als notwendig erachtet wird, um deine Zustimmung zu erlangen, dann kannst du absolut sicher sein, dass das, was angepriesen wird, nicht zu deinem Besten ist." - Quelle unbekannt.


    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten." - Quelle unbekannt.

    "Mein Herr, ich teile Ihre Meinung nicht, aber ich würde mein Leben dafür einsetzen, dass Sie sie äußern dürfen." - Voltaire.

    "Diskutiere nie mit einem Idioten - er zieht dich auf sein Niveau hinunter und schlägt dich dort mit seiner Erfahrung!" - Volksweisheit.


  • Ja, jetzt geht meine Vermutung so langsam in Richtung PLA U8.
    Doch wenn die defekt ist, dann wäre es ja in meinen Augen schon fast ein Totalschaden.

    Die gibt's noch, ich glaube ich bei sly.

    Ich gehe mal stark davon aus. Es war ein Raspberry Pi.

    Was NMOS-ICs jedenfalls nicht mögen ist, wenn man ihre Ausgänge auf Vcc zieht. Auch nicht auf die 3,3 V eines RasPi. Ziehen gegen GND macht nichts.

    Bei PB0-PB7 geht der Pegel im Fehlerfall um 0,5V in den Keller.

    OK, das würde ich mal so deuten, dass die Versorgung im CIA intern in die Knie geht, weil irgendwas "Strom zieht".

    Drücke ich auf den Feuerknopf, zieht er alle Leitungen auf Low und die bleiben dann auch so.

    Das kann nur ein "Latch-Up" ooder so irgendwas im CIA sein.

    "Wenn du überredet, ermahnt, unter Druck gesetzt, belogen, durch Anreize gelockt, gezwungen, gemobbt, bloßgestellt, beschuldigt, bedroht, bestraft und kriminalisiert werden musst. Wenn all dies als notwendig erachtet wird, um deine Zustimmung zu erlangen, dann kannst du absolut sicher sein, dass das, was angepriesen wird, nicht zu deinem Besten ist." - Quelle unbekannt.


    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten." - Quelle unbekannt.

    "Mein Herr, ich teile Ihre Meinung nicht, aber ich würde mein Leben dafür einsetzen, dass Sie sie äußern dürfen." - Voltaire.

    "Diskutiere nie mit einem Idioten - er zieht dich auf sein Niveau hinunter und schlägt dich dort mit seiner Erfahrung!" - Volksweisheit.


  • :gruebel Ich weiß jetzt nicht, wie das sein kann, aber nachdem ich die U1 CIA jetzt noch mal getauscht habe, ist der Fehler verschwunden. Ich verstehe es beim besten Willen nicht.
    Ich mache mich nun mal an den zweiten ran.

  • Gott sei Dank ... damit scheint Esoterik erstmal vom Tisch zu sein als Ursache. :bgdev

    "Wenn du überredet, ermahnt, unter Druck gesetzt, belogen, durch Anreize gelockt, gezwungen, gemobbt, bloßgestellt, beschuldigt, bedroht, bestraft und kriminalisiert werden musst. Wenn all dies als notwendig erachtet wird, um deine Zustimmung zu erlangen, dann kannst du absolut sicher sein, dass das, was angepriesen wird, nicht zu deinem Besten ist." - Quelle unbekannt.


    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten." - Quelle unbekannt.

    "Mein Herr, ich teile Ihre Meinung nicht, aber ich würde mein Leben dafür einsetzen, dass Sie sie äußern dürfen." - Voltaire.

    "Diskutiere nie mit einem Idioten - er zieht dich auf sein Niveau hinunter und schlägt dich dort mit seiner Erfahrung!" - Volksweisheit.