Hallo Besucher, der Thread wurde 8,7k mal aufgerufen und enthält 40 Antworten

letzter Beitrag von daybyter am

C128D Reparaturhilfe

  • Hallo alle zusammen.


    Ich habe seit ca 3 Jahren einen Commodore 128D (Plastik-Gehäuse), der leider schon immer defekt war. Da ich vor kurzen einen normalen C128 bekommen habe, habe ich mich jetzt mal etwas mit dem defekten C128D beschäftigt. Immerhin habe ich ja jetzt eine Möglichkeit, IC's zu testen, indem ich sie austausche.


    Da gab es schon einige Probleme an dem C128D. Erstes Problem war, das an der PLA ein Pin abgebrochen war, und zwar direkt, wo der Pin aus dem Keramikgehäuse rauskam. Ich habe mit dem Dremel etwas vom Keramik abgeschliffen, die PLA in einen Sockel gesetzt, und den Pin mit dem Sockel-Pin verlötet. Ein Test in dem funktionierenden C128 zeigt, das die PLA wieder funktioniert. Dann wieder in den defekten 128D gesteckt, aber der Rechner lief immer noch nicht. Ich habe im Internet eine Diagnose-Anleitung gefunden, mit Hilfe derer ich diverse IC's überprüft habe. Dadurch konnte ich den nächsten Fehler finden. Der 7407 in U60 war ebenfalls defekt. Diesen habe ich durch einen 74LS07 ersetzt. Und nach einen neuen Smocke-Test hatte ich zum ersten mal ein Bild bekommen. Einen grünen Rahmen mit wirren Zeichen in der Mitte. Halte ich auf der Tastatur beim Einschalten die Commodore-Taste fest, lande ich im C64-Modus, der anscheinend komplett funktioniert. Nur der C128-Modus geht nicht. Stecke ich ein C64-Spielemodul in den Expansionsport, geht das auch. Ich denke daher mal, des der Kernal des C128 funktioniert, da er ja zumindest bis zu der Routine, welche nach Steckmodulen sucht, gekommen ist. Ich habe alle ROMS (128-Kernal und die beiden 128 Basic-Roms) mit dem funktionierenden C128 getauscht. Die ROMS funktionieren. Die beiden CIA's, den SID und die MMU habe ich auch schon probeweise getauscht, auch daran liegt es nicht.


    Hat einer von euch eine Idee, warum der C128-Modus nicht funktioniert, oder was ich als nächstes Testen könnte? Kann es sein, das der 128-Modus nur startet, wenn die Floppy-Platine der Internen Floppy verbunden ist, oder sollte er auch ohne Floppy-Platine zumindest erstmal laufen? Oder wird im C128 Modus ein anderer Speicherbereich genutzt, als im C64 Modus, so das es auch an einem defekten Ram-Baustein liegen könnte?

  • Mach mal ein Foto von den wirren Zeichen auf dem Bildschirm. Zeigt der C64-Modus die vollen 38911 Basic Bytes an? Selbst wenn das so ist, kann der Fehler trotzdem von RAM-Fehlern herrühren, da die Zeropage in den beiden Modi unterschiedlich benutzt wird.
    Da sind nicht zufällig "MT-RAM"s auf der Platine?


    EDIT: Ach ja - Speicher testen!

  • Ich habe mal ein Foto von den wirren Zeichen gemacht.


    der C64-Modues zeigt die 38911 Basic Bytes an.
    Auch den von dir empfohlenen Memtest habe ich gemacht (Foto anbei). Wenn ich den Memtest richtig verstanden habe, ist der Ram, den der C64 Modus ansprechen kann nicht defekt, oder?



    Was du mit "MT-RAM's" meinst, weis ich leider nicht. Deshalb habe ich auch mal die RAM-Bausteine fotografiert.

  • Der Memtest muss nicht mit RUN, sondern mit SYS1024 gestartet werden. Aber wie hast Du den eigentlich transferiert/geladen? Mich wundert, dass das Programm plötzlich eine ganze Page groß ist...

  • Au mann, das war ja ne glatte fünf von mir. Wenn der Memtest schon in den Bildschrimspeicher geladen wird, hätte ich auch selbst drauf kommen sollen, das ein RUN nicht geht. ^^
    Ich habe den Memtest.prg auf eine SD-Karte kopiert und diese dann in mein MMC-Replay-Modul gesteckt. Das Modul dann einfach in den C128D gesteckt, und das Programm geladen.


    Ich habe den Memtest jetzt nochmal gestartet. Er testete 256 Durchläufe, dann hat ner aus dem ersten Klammeraffen eine "a" gemacht und den Durchlauf wiederholt. Nach weiteren 256 Durchläufem hat er aus dem "a" ein "b" gemacht. u.s.w. Er ist noch dabei. Bisher hat er keinen Fehler.

  • Der grüne Rahmen mit wirren Zeichen könnte am Char-ROM liegen. Drück mal die Aufsatzplatine, die mittig am unteren Mainboard-Rand sitzt, fest. (und achte darauf dass das Kühlblech einen ausreichend großen Ausschnitt hat, damit die Aufsatzplatine beim Zusammenbau nicht wieder schief gedrückt wird)

  • Das Char-Rom habe ich ebenfalls mit dem funktionierenden C128 getestet. Um genau zu seine habe ich testhalber das Char-Rom vom funktionierenden C128 in den Sockel vom defekten C128D gesteckt. Das half leider auch nicht, das selbe Bild. Aber kann das Char-Rom überhaupt Probleme machen, wenn der C64-Modus geht? Ich dachte, beide Modies nutzen das selbe Char-Rom? Desweiteren kann man ja bei den Wirren Zeichen auch Buchstaben sehen, das würde doch bedeutet, das er auf die Charakter-Daten zugreiften kann, oder liege ich da falsch?

  • Der U17 (74373) ist bei mir nicht gesockelt. Denn müsste ich auslöten, was ich auch machen würde. Aber kann es überhaupt daran liegen, wenn der C64-Modus funktioniert? Nutzt der C64-Modus andere IC's zum generieren der Adressen vom Zeichenegenerator und Farbspeicher?


    Ich habe in der Zwischenzeit noch etwas festgestellt. Wenn ich in den C64-Modus starte, und dann einen Reset mache, ohne die Commodore Taste festzuhalten, so das er wieder im C128 Modus ist, habe ich auch den grünen Rahmen, nur steht dann auf dem Bildschirm der zuletzt im C64-Modus benutzte Bildschirminhalt. Die wirren Zeichen sind also anscheinend nur der Bildschirmspeicher nach dem einschalten, bevor er vom Kernal geleert wird.

  • Ich habe in der Zwischenzeit noch etwas festgestellt. Wenn ich in den C64-Modus starte, und dann einen Reset mache, ohne die Commodore Taste festzuhalten, so das er wieder im C128 Modus ist, habe ich auch den grünen Rahmen, nur steht dann auf dem Bildschirm der zuletzt im C64-Modus benutzte Bildschirminhalt. Die wirren Zeichen sind also anscheinend nur der Bildschirmspeicher nach dem einschalten, bevor er vom Kernal geleert wird.


    Teste mal U35 das Kernal-Rom.

  • Hat mal jemand an die Sockel selbst gedacht?


    Hatte vor kurzem das selbige Problem. Bei mir war es ein korrodierter Sockel. Habe einfach mal alle Sockelkontakte von allen Sockeln mit Isopropanol und einem feinen Schraubendreher gereinigt und schon gings.

  • Fang bei den Sockeln für die Basic-ROMs an, und das 128er-Kernal wäre der nächste Kandidat: Die Resetroutine wird ja ausgeführt (Rand auf grün, Commodore-Taste prüfen, 64er-Modus aufrufen), und die liegt ganz oben im Adressraum bei $fxxx. Der Einsprung ins Basic geht aber zu $4xxx und der zum Monitor zu $bxxx, daher sind die Basic-Sockel verdächtiger.
    Abgesehen von korrodierten Kontakten kämen natürlich auch kalte Lötstellen in Frage; Du kannst ja mal per Multimeter die Adress- und Datenleitungen vom einen Basic-ROM-Chip zum anderen Basic-ROM-Chip durchklingeln.

  • Sorry für ein wenig OT:


    Ist es normal, dass wenn per RF-Video-Ausgang betrieben, das 40-Zeichen-Bild im C128 Modus ein wenig verwaschener auf dem LED TV wirkt als im C64 Modus? Das C64-Bild sieht bei mir etwas klarer und schärfer aus.


    Ich habe seit Kurzem einen C128 und bin begeistert. Ich möchte das eigentliche Threadthema nicht stören, aber evtl. ist meine Frage auch in diesem Zusammenhang von Interesse.

  • Ist es normal, dass wenn per RF-Video-Ausgang betrieben, das 40-Zeichen-Bild im C128 Modus ein wenig verwaschener auf dem LED TV wirkt als im C64 Modus? Das C64-Bild sieht bei mir etwas klarer und schärfer aus.

    Gib mal ein:

    Code
    1. color 0, 7:color 4, 15:color 5, 15

    ...und schon wird das Bild etwas klarer und schärfer.

  • @ MacBacon


    Mache ich sobald ich zu Hause bin.
    Ich bin ganz aufgeregt. CP/M geht damit ja auch. Und der C128 versteht meine SD2IEC vom C64. Und mein selbst programmierter C64 Kram bildet der C128 im C64 Modus exakt ab, sogar Rasterbars mit nop-Chaos im Sourcecode.


    edit:


    Ha ha. :p
    HAb es im Emulator probiert weil mir die Farbwerte so bekannt vorkamen. Wieder eine Erfahrung reicher. :-)

  • Die PLA und die MMU könnten diesen Fehler Verursachen, Ich tippe aber eher auf die MMU weil diese im C64 Modus abgeschaltet ist.

    Nein, die MMU ist im C64-Modus nicht abgeschaltet. Auch durch ständige Wiederholung wird dieser Unsinn nicht wahr.