Hallo Besucher, der Thread wurde 7,4k mal aufgerufen und enthält 50 Antworten

letzter Beitrag von ddb_ am

C128 schwarzer Bildschirm - Ramfehler?

  • Hallo.


    Ich habe hier einen C128 der im 128erModus und auch mit eingestecktem "Check64" (als 128 Diag eingestellt) nur ein schwarzes Bild auf dem Monitor bringt. Da er bei gedrückter C= Taste im 64er Modus anzeigt "Out of Memory Error in 0" nehme ich mal an das der Speicher defekt ist?! Da sind 16 x MT 4264-20 drin. Ich habe hier schonmal irgendwo was von hohen Ausfallquoten bei MT-Rams gelesen - liege ich da richtig?
    Also erstmal neue Rams (mit Sockel) rein und dann mal sehen? Oder sollte ich zuvor noch etwas anderes testen?

  • Da er bei gedrückter C= Taste im 64er Modus anzeigt "Out of Memory Error in 0" nehme ich mal an das der Speicher defekt ist?!

    Ja. Sind Müllzeichen auf dem Bildschirm zu sehen? Dann hätte man schon einen Ansatzpunkt, welche Chips auf jeden Fall defekt sind.
    Funktioniert LOAD? Dann mach einen Speichertest.

    Also erstmal neue Rams (mit Sockel) rein und dann mal sehen? Oder sollte ich zuvor noch etwas anderes testen?

    Beim 128er kann man durch Umlöten/Kreuzen zweier Widerstände die RAM-Banks logisch vertauschen - evtl. ist die zweite Bank ja noch unbeschädigt. EDIT: Es handelt sich um R29 und R30, sie befinden sich rechts neben den RAM-Chips.


    Was Du nicht machen solltest: Alle acht bzw. sechzehn RAMs auf einmal tauschen. Du wärst nicht der erste, der dabei einen klitzekleinen Lötfehler macht, die Situation dadurch verschlimmert und bei der Fehlersuche dann deutlich mehr Zeit verliert. Wenn Du gleich alle MT-Chips wechseln willst, mach einen Einschalttest nach jedem Chip.

  • Ich würde mich erstmal auf die beiden Rambänke konzentrieren.


    U38 THRU U45 8 RAM chips (4164) in Bank 0 (used in 64 and 128 modes)
    U46 THRU U52 8 RAM chips (4164) in Bank 1 (used in 128 mode only)
    4 RAM chips (4464) in later C128DCR (USA version).


    Blank screen, no border. Shorted chips may get hot. Will sometimes
    produce "garbage" screen, abnormal number of bytes free (check also U14
    and U15) or "out of memory" error on startup screen, and program crashes
    when loading (depends on what part of memory is bad).


    Wenn du die Bank 0 OK hast, könntest du mal ein C64 Cartridge einstecken ...


    U35 318020-03 C128 Kernal ROM
    Comes up in C64 mode, but cartridge doesn't work. Partial failure:
    blank screen in 128 mode only.

  • Sind Müllzeichen auf dem Bildschirm zu sehen? Dann hätte man schon einen Ansatzpunkt, welche Chips auf jeden Fall defekt sind.
    Funktioniert LOAD? Dann mach einen Speichertest.

    Ja, siehe Foto. Wobei dort anstelle des "." immer wieder eine "0" flackert. LOAD funktioniert tatsächlich - da hätte ich gar nicht dran gedacht. Hatte jetzt nur kein Speichertestprogramm auf Diskette zur Hand.

    Es handelt sich um R29 und R30

    Ok. Dann werde ich die mal umlöten und...

    U38 THRU U45 8 RAM chips (4164) in Bank 0 (used in 64 and 128 modes)

    ... kann mich dann ja erstmal auf diese 8 konzentrieren. Vielen Dank schonmal :)

  • Da erscheint regelmäßig eine 0 an der Stelle wo auf dem Foto nur ein punkt zu sehen ist . Ich hatte es nicht geschafft diese 0 zu fotografieren da die immer nur kurz aufblinkt...

    Eine Null würde in der Tat auf einen weiteren Chip (U42) hindeuten, aber der Punkt ist seltsam: Ein Punkt hat drei gesetzte Bits mehr als ein Space (0x2e statt 0x20), somit wären an dieser Adresse also gleich U39, U40 und U41 defekt. Drei defekte Chips könnten zwar durchaus sein, aber an ein- und derselben Bildschirmadresse und dann auch noch gleichzeitig blinkend? Das ist hinreichend unwahrscheinlich...


    Tausch bitte erst einmal U41 und U45, denn die sind auf jeden Fall karpott. Vielleicht erzeugen die über einen Zeiger in der Zeropage auch das komische Punkt/Null-Geblinke - ich halte es jedenfalls für sinnvoll, hier schrittweise vorzugehen.


    EDIT: Falls Du die Widerstände umlötest, stimmen natürlich sämtliche Chipangaben nicht mehr, da die Banks dann vertauscht sind! Also mach das bitte in künftigen Posts entsprechend deutlich. :D

  • So... weiter gehts... :)


    Ich habe nun erstmal U41 und U45 erneuert. Nun startet der 128er Modus mit seiner normalen Einschaltmeldung. Allerdings kennt er keine Befehle mehr?! Directory (F3) z.B. quittiert er mit einem Syntax Error. Nach mehrmaligen Directory oder List oder Run etc. wird dann daraus ein Sintax Error...
    Habe dann mal das Check64 als 128er Diag laufen lassen - Ergebniss siehe Bild 1 ;(


    Edit: Da das Foto schlecht zu erkennen ist: Stack Page, Screen RAM, Hi RAM Bank0, Hi RAM Bank1, Lo RAM Bank0, Lo RAM Bank1, U1, U38-U53 alle BAD...


    Wenn ich beim Einschalten in den 64er Modus wechsle erhalte ich weiterhin ein out of memory error in 0. Allerdings sind nun die "Fehlzeichen" wie erwartet weg. Nur die "0" flackert noch immer... diesmal habe ich da auch ein Foto von - Siehe Bild 2 :D
    Nun habe ich mal die Widerstände R29 und R30 gekreuzt. Der 128er Modus scheint nun zu funktionieren... Directroy etc. funktioniert :)
    Im 64er Modus verschwindet die "blinkende 0". Ansonsten ändert sich scheinbar nichts - C64Diag stürzt sowohl mit gekreuzten als auch mit ungekreuzten Widerständen ab.
    So - nun kommt ihr... :D:D
    Als nächstes brauche ich nun erstmal 16pol. Sockel und ein paar Ram-Chips. Weiß jemand welche ich da z.B. bei Reichelt nehmen kann?

  • quittiert er mit einem Syntax Error. Nach mehrmaligen Directory oder List oder Run etc. wird dann daraus ein Sintax Error

    Die Screencodes von Y und I unterscheiden sich nur in Bit 4, somit wäre U42 defekt und auszutauschen.

    Nur die "0" flackert noch immer... diesmal habe ich da auch ein Foto von

    Die befindet sich jetzt aber ein ganzes Stück weiter rechts als ursprünglich...
    Wenn die flackert, mit welchem Zeichen wechselt sie sich ab? Immer noch "." oder nun Space?
    "0" statt Space wäre ebenfalls Bit 4 und somit ebenfalls U42, also ist das der nächste Kandidat.


    EDIT: Der Umrandungsfehler im Diag-Screenshot liegt ebenfalls an U42.

  • Die befindet sich jetzt aber ein ganzes Stück weiter rechts als ursprünglich...
    Wenn die flackert, mit welchem Zeichen wechselt sie sich ab? Immer noch "." oder nun Space?
    "0" statt Space wäre ebenfalls Bit 4 und somit ebenfalls U42, also ist das der nächste Kandidat.


    EDIT: Der Umrandungsfehler im Diag-Screenshot liegt ebenfalls an U42.

    Da erscheint jetzt der normale blaue Hintergrund - also ist das das "Space"?! Ok... dann fliegt U42 als nächstes raus.

    Hast du das Keyboard-Dongle aufgesteckt, nachdem das DIAGNOSTIC gestartet wurde? Darf man bei C128 nicht vorher draufstecken ...

    Ja - habe ich natürlich so gemacht. Wenn man das vorher draufsteckt landet man im Maschinensprachemonitor...


    Edit: Kann ich diese RAM's von Bobbel dafür nehmen? Passende Sockel hat er ja auch im Shop...

  • Und wieder etwas weiter:


    Also - ich habe nun auch noch U42 gewechselt und die beiden Widerstände wieder "richtig" verdrahtet - tadaaa: Einschaltmeldung C128 ok, Einschaltmeldung C64 ok, keine blinkende "0" mehr. :zustimm:
    Habe dann im 64er Modus ein Spielmodul eingesteckt - Bild, Ton, Joystick - alles gut :thumbsup:
    ABER:
    Dann habe ich nochmal das Check64 eingesteckt :| Im 64er Modus: U1 BAD, U2 BAD, UserPort BAD... :nixwiss:
    Im 128er Modus (Diag128): HI RAM Bank1 BAD, U1 BAD, U48 BAD, Keyboard BAD... :hae:
    Ich habe dann mal U1 und U4 gegeneinander gewechselt - keine Änderung...
    Was hat er denn nun noch?? :gruebel Soll ich vielleicht U48 mal tauschen?



    Ja die Passen und besser als die MT

    Danke - dann werde ich seinen Lagerbestand mal dezimieren :-)


    EDIT: Erledigt. Jetzt hat er erstmal keine 16pol. Sockel mehr... :D

  • tadaaa: Einschaltmeldung C128 ok, Einschaltmeldung C64 ok, keine blinkende "0" mehr.

    Sehr schön. Zeigt die 64er-Einschaltmeldung die vollen 38911 Basic Bytes an?
    Lass mal nen Speichertest laufen.
    Und mit diesem 128er-Programm kannst Du den C64-Modus in der zweiten Bank starten, um dann auch die testen zu können (also ohne die Widerstände umlöten zu müssen).

  • Dann habe ich nochmal das Check64 eingesteckt Im 64er Modus: U1 BAD, U2 BAD, UserPort BAD...
    Im 128er Modus (Diag128): HI RAM Bank1 BAD, U1 BAD, U48 BAD, Keyboard BAD...

    Nur der Vollständigkeit halber:
    Im C64-Mode (Diag 586220) muss der IEC-Dongle für den C64 dran, beim 128-Diag der für den 128er. Ansonsten hagelt es ein "SERIAL PORT BAD" und damit auch Meldungen defekter CIAs.

    "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.


  • Sehr schön. Zeigt die 64er-Einschaltmeldung die vollen 38911 Basic Bytes an?
    Lass mal nen Speichertest laufen.
    Und mit diesem 128er-Programm kannst Du den C64-Modus in der zweiten Bank starten, um dann auch die testen zu können (also ohne die Widerstände umlöten zu müssen).

    Ja - es werden 38911 Basic Bytes angezeigt.
    Der Memtest läuft endlos, oder? Da werden offensichtlich alle Zeichen des Zeichensatzes nacheinander angezeigt? Großschrift, Kleinschrift etc. Nur die oberen beiden Zeilen und die ersten drei Zeichen der dritten Zeile enthalten irgendein Kauderwelsch?! Edit: Wer lesen kann ist klar im Vorteil. Steht ja alles im Thread zu deinem Link...
    Wenn ich das 128er Programm starte schaltet er in den 64er Modus um und zeigt wieder "out of memory error in 0" an...

    Im C64-Mode (Diag 586220) muss der IEC-Dongle für den C64 dran, beim 128-Diag der für den 128er. Ansonsten hagelt es ein "SERIAL PORT BAD" und damit auch Meldungen defekter CIAs.

    Guter Hinweis. Ich hatte da natürlich drauf geachtet Hatte aber auch keinen Serial Port BAD erhalten...