Beiträge von kinzi im Thema „C64 mit bald defekten VIC?“

    Er macht sich mindestens an zwei verschiedenen Stellen bemerkbar, nämlich beim Lesen des Zeichensatzes, was sich dadurch bemerkbar macht, daß an etlichen Stellen das linke Bit fälschlicherweise gesetzt ist. Desweiteren führt er zum A11-Fehler, weil beim Lesen des Screen-RAMs der D7-Fehler dazu führt, das im Zeilenpuffer inverse statt normale Zeichen landen.

    Der Zeilenpuffer enthält die Screencodes einer Zeile, die bei einer Badline aus dem RAM gelesen werden. Ist der Inhalt fehlerhaft, schlägt auch das anschließende "Lookup" der Zeichendaten im Char-ROM fehl. Es erklärt also beides. Natürlich kann es auch was anderes sein, aber wie gesagt: Am Datenbus des VIC ist nichts, das nicht auch am Datenbus der CPU ist (keine besondere Logik, usw.).

    Ob die Register betroffen sind müsste man schauen, wenn man z. B. alle acht Sprites in einer Schleife permanent auf X-Position 255 stellt und dann schaut, ob welche "nach links auf 127" zappeln. Falls ja, sind die Register betroffen.

    Oder man schreibt permanent auf die X-Register und liest den Wert immer wieder zum Vergleich zurück.

    Char-ROM kann man unter diesen Umständen wohl ausschließen.

    Wenn generell D7 nicht zuverlässig beim VIC ankommt, sind auch die Register davon betroffen, und da kann sich ein Programm durchaus komplett verabschieden, wenn sich die Raster-IRQs verheddern. Wahrscheinlich springen durch den Fehler auch Sprites um 128 Pixel nach rechts und/oder nach unten.

    U. a. aus diesen Überlegungen ist ein Fehler im VIC (z. B. in dessen 40x12-Linebuffer) für mich wahrscheinlicher.

    Ich schrieb ja auch nicht "unmöglich" ... :wink:

    Zwischen RAM und CPU scheint's problemlos zu klappen, so

    Alles soweit richtig, nur: Zwischen VIC- und RAM-Datenleitungen ist nichts. Genauso wenig wie zwischen CPU- und RAM-Datenbits. Und gerade weil es zwischen RAM und CPU klappt, dürfte es eben eher ein Fehler im VIC sein (was auch immer - Unterspannung, Hardwaredefekt, ...).

    Da jedoch bei der Übertragung vom RAM in den VIC das Zielbauteil eine eigene Versorgung hat, ist auch der Schwellwert für das Erkennen von 1 oder 0 möglicherweise ein Anderer.

    Ähm ... dann muss +5 V CAN aber schon *sehr* weit unten sein, die Schwelle für 0/1-Erkennung ist eher bei 2,0V als bei 5,0 V ...

    Ich würde trotzdem die "Basics" (Spannungen, usw.) prüfen und die MOS-TTLs tauschen, nur um mal "Seiteneffekte" dadurch auszuschließen.

    Auf der CPU steht glasklar 6510:

    Bitte melde dich an, um diesen Anhang zu sehen.

    Gegen das RAM spricht, dass der Fehler beim RAM-Test des Diags nicht aufpoppt, dass er nicht immer da ist und dass Spiele usw. laufen. Bei einem RAM-Fehler würde ich erwarten, dass der nicht immer nur genau den Videospeicher betrifft. Kann natürlich immer noch sein, wäre aber ein komischer RAM-Fehler. Ein Problem z. B. mit dem 40x12-Linebuffer des VIC ist da für mich wahrscheinlicher.

    Die MOS-TTLs würde ich rein aus Verdacht schon mal tauschen.

    Das "soll nicht so", oder?

    Bitte melde dich an, um diesen Anhang zu sehen.

    Da es nicht ständig, sondern erst gegen Ende der Zeile auftritt, würde ich eher auf den VIC tippen.

    Bit D7 kommt nicht richtig beim VIC an:

    [...]

    Allerdings scheint D7 immer nur fälschlich gesetzt, aber nie fälschlich gelöscht zu werden.

    Beim Bild von der U2 scheint es zu fehlen (außer es wäre irgendwie eine invertierte Darstellung), oder täuscht mich das?

    U13, U15, U27 sind "MOS-TTLs":

    Bitte melde dich an, um diesen Anhang zu sehen.

    Wobei ich da jetzt keinem dieses Fehlerbild zuordnen würde.

    - nur kommen ab und zu Grafikfehler

    Wann genau?

    Nach längerem Betrieb?

    Oder auch, wenn er kalt ist, beim ersten Einschalten?

    Wie kommen die - plötzlich? Oder veränder sich das nach und nach?

    Hast du Kältespray? Dann mal, wenn der Fehler da ist, den VIC anpusten.

    Ansonsten Frischhaltebeutel mit einem Eiswürfel darin auflegen auf den VIC, geht auch.