PET 2001-8C Assembly 320008 hängt beim "Garbage screen"

  • PET 2001-8C Assembly 320008 hängt beim "Garbage screen"

    Der PET 2001 (YEAH! - siehe Bilder) bleibt nach dem Einschalten bei der Bildschirm-Ansicht mit den Zufallszeichen stehen.



    Zu dem Gerät:

    - PET 2001-8C.
    - Assembly 320008.
    - Mit 6550 RAMs und 6540 ROMs.

    Eventuell hat ja jemand mit Ahnung (die ich nicht habe..) aufgrund meiner Beschreibung unten eine Idee.
    Mit einem ROM/RAM - Adapter werde ich das demnächst ansonsten auch nocheinmal probieren.

    Was ich bisher gemacht habe:

    - Alle gesockelten ICs herausgenommen, Sockel und IC-Beine mit Zahnbürste abgebürstet [ ohne Zahnpasta ;) ] - sah eh alles recht sauber aus - wieder hereingesteckt.
    - Spannung an den vier Spannungsreglern (links nahe der Stromversorgung, jeweils mittleres und rechtes Bein, wenn man vor dem Computer steht) gemessen (~5V). => OK.
    - Bei allen gesockelten ICs VCC (~5V) und VSS (~0V) gemessen. => OK.
    - Bei allen gesockelten ICs Phi / CLK - Spannung (mit Multimeter ~1.86V) gemessen. => Ist OK, oder?
    - Wenn beide Video-RAMs entfernt sind, zeigt der Monitor das Schachbrettmuster. => OK.
    - Wenn das Video-ROM durch jeweils eines der anderen ROMs ersetzt ist, zeigt der Monitor ein stabiles, zufälliges Pixel-Muster an. => OK.
    - Wenn ich beide PIAs und alle Arbeitsspeicher-RAMs, bis auf die "ersten" 4 (I1, I2, J1 und J2) herausnehme, ändert das nichts. => Schade!
    - Ohne PIAs und mit nur 4 RAMs (siehe letzter Punkt) die Video-RAMs und/oder 4 eingesetzten Arbeitsspeicher-RAMs durch andere (mehr oder weniger wild und sinnlos) austauschen, führt zwar teilweise zu anderen Mustern auf dem Bildschirm, aber zu keiner Verbesserung. => Schade!
    - Ist einer der ICs auffallend heiß? => Nein, zumindest die RAMs und ROMs sind alle gleich warm/heiß.

    Danke fürs Lesen und eventuelle Ideen!

    Hier meine Quellen:

    Forum64: https://www.forum64.de/index.php?thread/73739-commodore-pet-2001/
    Forum64: https://www.forum64.de/index.php?thread/75194-fragen-zum-pet-2001-8-c/
    Pin-Belegung (und mehr) zu MOS ICs: http://www.6502.org/documents/datasheets/mos/
    Reparatur: http://blog.tynemouthsoftware.co.uk/2017/07/commodore-pet-2001-repair-garbage.html
    Reparatur: http://www.8bit-homecomputermuseum.at/repair/bluepet/bluepet.html
    Schaltplan: http://www.zimmers.net/anonftp/pub/cbm/schematics/computers/pet/2001/index.html
    Bilder
    • 3 - Platine A.jpg

      181,81 kB, 1.200×675, 15 mal angesehen
    • 5 - Platine C.jpg

      203,84 kB, 1.200×675, 12 mal angesehen
    • 4 - Platine B.jpg

      199,71 kB, 1.200×675, 12 mal angesehen
    • 6 - Stromversorgung.jpg

      55,11 kB, 421×750, 8 mal angesehen
  • 1. Ist der Motor der eingebauten Datasette bei entriegelten Tasten (= nichts gedrückt) auch im Dauerlauf, während die Zufallszeichen am Schirm sind? Oder steht der selbige still?

    2. ist - wenigstens schemenhaft angedeutet - der Anschein eines mit 2 Hz blinkenden Cursor da zu erkennen, wo er normalerweise zu sehen ist? (unter dem READY.)

    3. Fängt der Motor an zu drehen, wenn man probehalber PLAY drückt? und hört wieder auf zu drehen wenn man die Play - Taste wieder entriegelt /ausschaltet?

    Falls der Motor nicht auf das Play-Drücken reagiert, wäre m.E. ein Defekt der RESET-Schaltung oder des Prozessor 6502 möglich.
    Gesendet über das Bimetall Thermorelais meines Rowenta DW 4015 Dampfbügeleisens
  • Stephan schrieb:

    1. Ist der Motor der eingebauten Datasette bei entriegelten Tasten (= nichts gedrückt) auch im Dauerlauf, während die Zufallszeichen am Schirm sind? Oder steht der selbige still?

    2. ist - wenigstens schemenhaft angedeutet - der Anschein eines mit 2 Hz blinkenden Cursor da zu erkennen, wo er normalerweise zu sehen ist? (unter dem READY.)

    3. Fängt der Motor an zu drehen, wenn man probehalber PLAY drückt? und hört wieder auf zu drehen wenn man die Play - Taste wieder entriegelt /ausschaltet?

    Falls der Motor nicht auf das Play-Drücken reagiert, wäre m.E. ein Defekt der RESET-Schaltung oder des Prozessor 6502 möglich.
    1. Ja, man hört ohne gedrückte Datasette-Tasten, dass in der Datasette etwas "läuft" (wird wohl der Motor sein..).

    2. Nein, es ist kein Cursor zu sehen, auch nicht andeutungsweise.

    3. Ja, nach Drücken der Play-Taste der Datasette sieht man, wie sich das rechte "Drehdings" (sorry..) bewegt. Und ja, wenn man auf die Stop-Taste drückt, dreht sich nichts mehr (den Motor hört man aber noch laufen).

    Danke, Stephan!
  • Wie sieht die RESET-Leitung aus, hast du Möglichkeiten deren Pegel zu bestimmen?
    Zumindest den "statischen" Pegel. Fehlermöglichkeiten: a) "stuck low" b) "no pulse"

    (Die Möglichkeit b) ist prinzipiell auch ohne teures Oszilloskop testbar, indem man den Stecker eines hochohmigen Ohrhörers (Piezo, > 100kOhm) mit dem Spitzenkontakt an die Resetleitung hält, mit dem Zeigefinger eine Art Massekontakt bereitstellt indem man den Ringkontakt des Klinkensteckers berührt.
    Wenn man dann mit der freien Hand den evtl. noch anzubauenden Reset-Taster drückt, müsste ein deutliches Klicken im Ohrhörer zu hören sein. Bei diesen Tests sollte man tunlichst nicht irgendwohin abrutschen und einen Kurzschluß verursachen auf dem Board.)

    ----
    Nach längerem Lesen des VcFed-Threads denke ich, ähneln sich die Fehlerbilder doch sehr stark. Die Vermutung geht in Richtung defektes ROM.

    Am User-Port (?) des PET so wie ich ihn kenne gibt es auch einen Diagnostic-Eingang, an dem man einen Taster (gegen GND) anschließen kann. Hält man diesen gedrückt während dem Einschalten bzw. RESET, springt das Kernel-ROM in den TIM-Monitor (Maschinensprachmonitor). Meines Wissens geschieht das vor dem Anspringen des Basic-ROM. es gibt so eine schwache Chance, dass ein defektes Basic-ROM sich so "umgehen" lässt. Wenn statt des Basic- das Kernel-ROM selber defekt ist, vermindert sich diese Chance.

    Es hängt aber von der Version des PET ab bzw. welche Firmware drin ist, weiß nicht ob schon die ganz alten den Diagnostic-Eingang ausgewertet haben.

    ----
    der Test mit dem Motor soll eine Einschätzung erlauben, wie weit die Initialisierung des Rechners "gediehen" ist und ob er auf äussere Signale reagieren kann. Das ist hier nun nicht der Fall, denn sonst müsste beim Entriegeln der Play-Taste die Interrupt-Routine den Motor-Pin abstellen.

    ----
    Weitere Test-Möglichkeiten, ohne Ersatz-ROMs zu beschaffen:
    * PIA 6520 - Bausteine entfernen, evtl. zusätzlich auch VIA 6522 (bin unsicher, wieweit das die natürliche Funktion beeinträchtigt) --> würde Defekt beheben, falls Baustein die Datenleitungen blockiert

    * Die Chip-Select-Leitungen vom Decoder 74154 zu den Roms verfolgen und auf Durchgängigkeit messen (dabei auf Möglichkeit zu hoher Meßströme und oder statischer Entladung achten; ich verwendete dafür früher meist ein Zeiger-Multimeter mit schwacher Batterie ~ 0,8 Volt im Meßbereich "niederohmig"--> dann fließt besonders wenig Meßstrom)

    * sofern untereinander kompatibel, RAMs die Plätze tauschen lassen. Möglichst so, dass in die erweiterte Zeropage 0 .. $03FF Bausteine kommen die vorher da nicht saßen.
    Gesendet über das Bimetall Thermorelais meines Rowenta DW 4015 Dampfbügeleisens

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Stephan ()

  • Edit: sorry, das hatte ich übersehen, dass du schon sehr viel gestestet hattest.

    mantillo schrieb:

    Bei allen gesockelten ICs Phi / CLK - Spannung (mit Multimeter ~1.86V) gemessen. => Ist OK, oder?
    Kommt mir relativ normal vor, wenn 4 Volt der ~ High-Pegel ist und ca. 50% Duty-Cycle -> 2 Volt zu erwarten, dein Meßwert liegt lediglich 7% darunter. NMOS geht nicht bis auf die vollen 5 Volt rail-to-rail wie es CMOS täte.

    mantillo schrieb:

    Wenn ich beide PIAs und alle Arbeitsspeicher-RAMs, bis auf die "ersten" 4 (I1, I2, J1 und J2) herausnehme, ändert das nichts. => Schade!
    Ja, finde ich auch schade.
    Was du auch noch tun kannst, ist, das Fehlerbild fotografieren und vergleichen ob sich was ändert wenn das Kernel-ROM (bzw. die Kernel-ROMS, wenn das 2 oder mehr Bausteine verteilt ist, kenne mich mit Uralt-PET nicht so aus) gänzlich entfernt ist.

    auch sehenswert:
    cbmhardware.de/show.php?r=14&i…%20ROM%20und%206550%20RAM

    EDIT:
    Da die Video-Logik ganz offensichtlich "arbeitet" und das Video-ROM offensichtlich intakt ist, denn sonst wären keine Zeichen identifizierbar (R,S,T,Q .. A,E,P,Y ..) kommt mir noch folgende verwegene Idee:

    Falls das Character-Generator-ROM das du oben "Video-ROM" genannt hast, ein 2 KB großes 6540 ist und der Kernel aus 2 dazu pinkompatiblen weiteren 6540 besteht,
    ... könnte man probehalber das Character-Generator-ROM aus dem Sockel entfernen und sicher beiseitelegen
    und dann
    ... die beiden Kernel-ROMs jeweils einzeln probehalber als Character-Generator-ROMs "temporär" einsetzen.
    So müsste sich zumindest grob abschätzen lassen, ob größere "eintönige" Farbflächen, oder feingrieselige Bitmap-Strukturen sich ergeben. In ersterem Fall ist das ROM stärker beschädigt (Datenleitungen verklemmt) als in letzterem (evtl. nur einzelne Bitfehler oder gar intakt).

    Das wäre eine primitive Möglichkeit das Kernel-ROM irgendwie "auszulesen" auch ohne Eprom-Brenner / Ersatzrechner / Adaptersockel.

    Unter der Annahme, dass ähnliche Bausteine mit ähnlichem Herstellungsdatum sich auch in der Haltbarkeit ähneln, spricht ein intaktes "Video_ROM" allerdings dafür, dass auch die Kernel-ROMs noch intakt sind (Spekulation).
    Gesendet über das Bimetall Thermorelais meines Rowenta DW 4015 Dampfbügeleisens

    Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von Stephan ()

  • Ich will jetzt nicht an Spekulationen teilnehmen, aber mal kurz meine Einsichten:

    - Bildschirm mit "zufälligem Muster aus korrekten Zeichen" bedeutet meistens, dass der Videschaltkreis intakt ist, aber die CPU nicht startet, oder vor der Routine zum Bildschirm löschen abstürzt. Das kann defekte CPU, defektes ROM oder RAM oder vieles andere sein.

    . Bildschirm leer beim Einschalten heisst meistens, dass die CPU immerhin noch den Bildschirm löschen konnte und dann auch aufgrund ähnlicher Gründe wie oben nicht weiterkam.
    Zuletzt repariert:
    21.2. Logitech M570 Microschalter ausgetauscht - geplante Obsoleszenz durch Billigtaster?
    19.11. Toshiba 3,5" Floppy defekter Elko durch Kerko getauscht auf Motorplatine
    27.11. 1541B Dauerlauf, Elko im Resetschaltkreis defekt, nicht der 7406 wie zuerst verdächtigt!
  • Stephan schrieb:

    Wie sieht die RESET-Leitung aus, hast du Möglichkeiten deren Pegel zu bestimmen?
    Zumindest den "statischen" Pegel. Fehlermöglichkeiten: a) "stuck low" b) "no pulse"
    Am _RST - Eingang des 6502 (Pin 40) liegen ~3,6V an. Ist es sinnvoll, das noch woanders zu überprüfen?

    Stephan schrieb:

    Am User-Port (?) des PET so wie ich ihn kenne gibt es auch einen Diagnostic-Eingang, an dem man einen Taster (gegen GND) anschließen kann. Hält man diesen gedrückt während dem Einschalten bzw. RESET, springt das Kernel-ROM in den TIM-Monitor (Maschinensprachmonitor). Meines Wissens geschieht das vor dem Anspringen des Basic-ROM. es gibt so eine schwache Chance, dass ein defektes Basic-ROM sich so "umgehen" lässt. Wenn statt des Basic- das Kernel-ROM selber defekt ist, vermindert sich diese Chance.

    Es hängt aber von der Version des PET ab bzw. welche Firmware drin ist, weiß nicht ob schon die ganz alten den Diagnostic-Eingang ausgewertet haben.
    Ich werde mich noch über den Diagnose-Eingang informieren - danke. Wahrscheinlich hat der PET noch keinen eingebauten TIM (da Basic 1 ROM). Aber bei mir lief er noch nie, deswegen weiss ich das nicht.

    Stephan schrieb:

    * Die Chip-Select-Leitungen vom Decoder 74154 zu den Roms verfolgen und auf Durchgängigkeit messen (dabei auf Möglichkeit zu hoher Meßströme und oder statischer Entladung achten; ich verwendete dafür früher meist ein Zeiger-Multimeter mit schwacher Batterie ~ 0,8 Volt im Meßbereich "niederohmig"--> dann fließt besonders wenig Meßstrom)
    Ich habe nur ein digitales Multimeter - vielleicht sollte ich das lieber lassen..?

    Stephan schrieb:

    Da die Video-Logik ganz offensichtlich "arbeitet" und das Video-ROM offensichtlich intakt ist, denn sonst wären keine Zeichen identifizierbar (R,S,T,Q .. A,E,P,Y ..) kommt mir noch folgende verwegene Idee:

    Falls das Character-Generator-ROM das du oben "Video-ROM" genannt hast, ein 2 KB großes 6540 ist und der Kernel aus 2 dazu pinkompatiblen weiteren 6540 besteht,
    ... könnte man probehalber das Character-Generator-ROM aus dem Sockel entfernen und sicher beiseitelegen
    und dann
    ... die beiden Kernel-ROMs jeweils einzeln probehalber als Character-Generator-ROMs "temporär" einsetzen.
    So müsste sich zumindest grob abschätzen lassen, ob größere "eintönige" Farbflächen, oder feingrieselige Bitmap-Strukturen sich ergeben. In ersterem Fall ist das ROM stärker beschädigt (Datenleitungen verklemmt) als in letzterem (evtl. nur einzelne Bitfehler oder gar intakt).

    Das wäre eine primitive Möglichkeit das Kernel-ROM irgendwie "auszulesen" auch ohne Eprom-Brenner / Ersatzrechner / Adaptersockel.

    Unter der Annahme, dass ähnliche Bausteine mit ähnlichem Herstellungsdatum sich auch in der Haltbarkeit ähneln, spricht ein intaktes "Video_ROM" allerdings dafür, dass auch die Kernel-ROMs noch intakt sind (Spekulation).
    Das meinte ich mit:

    mantillo schrieb:

    - Wenn das Video-ROM durch jeweils eines der anderen ROMs ersetzt ist, zeigt der Monitor ein stabiles, zufälliges Pixel-Muster an. => OK.
    Die ROMs sind also wahrscheinlich OK (der Test ist natürlich nicht 100%'ig).

    Danke für Eure Antworten soweit! Spätestens, wenn ich eine ROM/RAM - Ersatzplatine hier habe, wissen wir konkretes (dauert noch ein bisschen).
  • Wäre nett, wenn du von diesem " Zufallsbild" wenn eines der Kernel-Roms im Steckplatz des Character-Generator-ROMs steckt, noch ein Foto hättest (dann lerne ich noch was..) :)

    * Andere User nennen das Durchmessen oft "Durchklingeln" und schreiben nicht dazu, mit welchem Meßgerät... (digital/analog)... habe nur geschrieben womit ich das gemacht habe.

    Beim oben abgebildeten Bildschirm fiel mir noch folgendes auf:

    Das Bit 7 des Video-RAM alterniert sehr exakt alle 64 Zeichen; nach 128 Zeichen ist wieder der "Originalzustand" erreicht. Dadurch folgen auf je 64 "normale" Zeichen (helle Schrift auf dunkel) dann 64 invertierte Zeichen (Negativdarstellung/Attribut). Kleine Ausnahmen vorhanden (Einsprengsel).

    Wenn die Zeichen invertiert sind, bit 7 = 1 , dominiert eindeutig der Zeichencode 110 = hex. $6E bei dem die Mehrzahl der Bits gesetzt ist.

    Wenn nicht invertiert, bit 7 = 0, sind Q, U wie es scheint merklich häufiger als der Durchschnitt (Codes 17 und 21 = $11 und $15).

    Der Code $11, besagter "Q-Bildschirmcode", ist nun die genaue 7bittige binäre Negation zu $6E. Ergänzt sich mit $6E zu $7F.
    $6E stellt sich bei den Inversen viel häufiger ein als Q bei den nicht-Inversen. Bit 7 zieht die anderen "mit"?

    Das kann natürlich eine interne "Vorzugsrichtung" der RAMs bezeichnen, dass die nach dem Einschalten (Reset) zufälligen Bits in beetimmten Bereichen in eine bestimmte Richtung fallen wollen. Um das zu beurteilen müsste man wissen wie ein zufälliger Garbage-Screen auf echter Hardware typischerweise aussieht. Aber es fiel mir halt auf.

    Wenn man nichts über das Innenleben der RAMs weiß, würde man fast annehmen, dass bit 6 der Video-Logik-Adresse VA6 auf VD7 (und weitere Datenbits) "einstreut".
    Gesendet über das Bimetall Thermorelais meines Rowenta DW 4015 Dampfbügeleisens
  • Nachtrag (ausnahmsweise nicht als Edit):

    wenn du einen (auch improvisierten) Reset-Taster anbauen könntest - Bauanleitung sollte sich finden - , ließe sich mehr ausprobieren; auch testen, ob der Impuls bis zur CPU durchkommt. (z.B: Taster gedrückt halten - > mit Multimeter am CPU-Eingang messen -> geht solange auf LOW)

    Beim CBM 3008 Schaltbild ist ein Timer NE 555 mit paar sehr hochohmigen Widerständen eingezeichnet, der den RESET erzeugt. Nachgeschaltet sind 2 Inverterbausteine 7407 (oder 74S04 o.s.ä.) und ein 7417. Da wären Ansatzpunkte zu überprüfen ob das in Ordnung ist (bei den Invertern kann man einfach messen, dass Pin 1 und 2 sowie alle nachfolgenden jeweils entgegengesetzten Pegel haben müssen). Ob das Netzteil des Uralt-PET ein Power-Good-Signal vom Netzteil braucht um den Reset hinzukriegen, weiss ich allerdings nicht.
    Gesendet über das Bimetall Thermorelais meines Rowenta DW 4015 Dampfbügeleisens
  • Wenn schon kein Oszi zur Verfügung steht, würde ich wenigstens mal ein paar Euro in so einen Logiktester investieren.

    Ob dieses konkrete Modell was taugt, weiss ich nicht - ist nur beispielhaft.
    ebay.de/itm/DTL-TTL-C-mos-Logik-Tester-Eistar-/182704828341

    Ansonsten ist das RAM/ROM-Board eine gute Idee. Damit kann man sehr schnell herausfinden, ob das ROM, RAM oder die CPU (inkl Adress-/Datenbus) die Fehlerursache ist.
    Danach kann man geziehlter suchen.
    Welches RAM/ROM-Board hast du bestellt? Das von Tynemouth oder das originale?

    Die meistens PETs/CBMs die ich zur Reparatur auf dem Tisch hatte, liefen mit dem RAM/ROM-Board auf Anhieb.

    Ansonsten scheint dein PET in einem Top-Zustand zu sein. Maßstab ist für mich immer die Tastatur und das Typen-Label. Ich sehe auch keine Korrosion am Gehäuse.
    Hat das Gehäuse links oben unter dem Bildschirm eine Delle, oder täuscht das auf dem Foto?

    Ich werde immer neidisch, wenn ich sowas sehe. ^^
    Meine PET 2001 ist leider nicht in einem so guten Zustand und bei ebay sind die unerschwinglich.
    PET 2001 / CBM 3032 / CBM 3040+4040 / CBM 8250 (Dauerleihgabe) / C64+1541 / VC20

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von detlef ()

  • @detlef

    Danke für den Tipp mit dem Logiktester.

    Das Board ist von Tynemouth.
    Mehr oder weniger die einzige Quelle momentan
    (es sei denn, man ist löttechnisch begabt und mehr).

    Ja, der PET macht einen guten Eindruck.

    Die Delle ist während des Versands passiert.
    Kombination optimistisch verpackt plus "Rüpel" beim Paketdienst kommt nicht so gut..
    Aber das kann man bestimmt korrigieren.
  • mantillo schrieb:

    Das Board ist von Tynemouth.
    Mehr oder weniger die einzige Quelle momentan
    (es sei denn, man ist löttechnisch begabt und mehr).
    Ich mag das Tynemouth-Board, weil es so schön komptakt ist. Leider ist das mit Versand immer eine teuere Sache aus England. Und nach dem Brexit kann man das wohl ganz vergessen. :(

    Ich habe aber auch das originale RAM/ROM-Board hier (Bausatz von Donald). Ich wüsste im Moment überhaupt keine Quelle für das originale RAM/ROM-Board - nicht mal als Bausatz. Einzige Möglichkeit: Platine beim Chinesen bestellen. Aber ich hoffe auf Bobbel. :thumbsup:

    Ich werde das hier mal weiter verfolgen - falls du noch Tipps brauchst.
    Ich habe zwar noch kein 320008er Board auf dem Tisch gehabt, aber so groß sind die Unterschiede auch wieder nicht.
    PET 2001 / CBM 3032 / CBM 3040+4040 / CBM 8250 (Dauerleihgabe) / C64+1541 / VC20

  • Mit dem Tynemouth-Board funktioniert es (kam inkl. CPU)!

    Im Test-Modus (Zeichensatz-Anzeige & erste 1024 Bytes überprüfen) des Boards sieht alles gut aus.

    Bonus:

    Es funktioniert sogar, wenn ich weder ROM, noch RAM ersetzen lasse!
    D.h., nur der 6502 scheint keine Lust mehr zu haben. :)

    Als nächstes werde ich den RAM einmal durchtesten
    und eventuell nur den anderen 6502 einsetzen (wenn ich ich mich traue..).

    Danach kommen die scheinbar funktionierenden ROMs und RAMs dann in Sicherheitsverwahrung.

    Aber schön, wenn ich mir eine weitere 6502 organisiere,
    habe ich (so wie es jetzt aussieht) einen komplett ohne ROM-/RAM-Adapter funktionierenden PET.
    Das schreit ja nach der Anschaffung eines weiteren PETs.. 8-O