Hallo Besucher, der Thread wurde 19k mal aufgerufen und enthält 136 Antworten

letzter Beitrag von mc71 am

CBM 4016-N reparieren

  • Nun ist heute endlich meine Reichelt Bestellung eingetroffen.


    Nun kann ich loslegen.


    Habe bereits den UD10 ausgelötet und bei UD8 und UD10 einen Sockel eingelötet.


    Wie gehe ich nun weiter vor?


    Den UA3 wieder in den UA3 stecken.
    Den UA8 wieder in den UA8 stecken.
    Den UA10 wieder in den UA10 stecken.
    Und dann schauen ob das Bild wieder kurz aufscheint. (Reines Interesse)


    Und dann den UA10 anstelle des UA3 stecken und schauen ob sich was am Einschaltbild ändert?

  • Den UA3 wieder in den UA3 stecken.
    Den UA8 wieder in den UA8 stecken.
    Den UA10 wieder in den UA10 stecken.
    Und dann schauen ob das Bild wieder kurz aufscheint. (Reines Interesse)

    ja

    Und dann den UA10 anstelle des UA3 stecken und schauen ob sich was am Einschaltbild ändert?

    ja

  • Ich habe zuerst den Test durchgeführt indem ich alle Komponenten auf ihren Originalen Platz gesteckt habe.


    UA3 IC in den UA3 Sockel.
    UD8 IC in den UD8 Sockel.
    UD10 IC in den UD10 Sockel.


    Aber wo ich zuvor noch den kurzen Garbage Screen sah ist nun nichts mehr.
    Nur mehr das "Düdelüt" ertönt und der Bildschirm bleibt schwarz.
    Außer wenn der Rechner komplett entladen ist, erscheint beim einschalten am Bildschirm in der Mitte ein grüner Punkt. (Da wird sich vermutlich die Röhre aufladen, oder?)


    Wenn ich den UD8 IC im ID8 Sockel verweilen lasse und den UD10 IC anstelle des UA3 ICs in den UA3 Sockel stecke, dann ist es das gleich Ergebnis. (Kein Garbage Screen mehr - Nur "Tüdelüt")


    Ich kann somit den Ausgangszustand (kurzer Garbage Screen) nicht mehr reproduzieren.


    Wie soll ich nun weiter vorgehen?


    UD8 und UD10 sind nun gesockelt.


    Kann ich die ICs irgendwie testen oder auslesen? Einen USBasp und AVRISP mkII hätte ich. (Habe ich aber immer nur zum schreiben von ICs verwendet)


    EDIT:
    Ich habe nun auch die Tests mit der Datasette welche "Stephan" geschildert hat, durchgeführt.
    Wenn ich die Datasette anschließe und der CBM ausgeschaltet ist, dann passiert nichts.
    Wenn ich dann den CBM einschalte, dann läuft der Motor der Datasette bis das "Düdelüt" ertönt und dann stoppt sofort die Datasette mit dem Drehen des Motors.
    Wenn keine Taste bei laufenden CBM gedrückt ist, dann passiert gar nichts.
    Die kleine Spindel wo die große Gummrolle draufdrückt fängt erst an sich zu drehen wenn ich auf Play drücke. (Sonst steht die still)
    Wenn ich das aus deinem Post richtig entnehme, ist alles so wie es sein soll. (Gutes Zeichen) :-)

  • Also möglicherweise ist der Prozessor nicht eingefroren weil er auf einen Code $X2 (02/22/42 ..) aufgelaufen ist, sondern ist
    a.) tatsächlich in der Basic-Hauptschleife und man sieht nur nichts davon - aus welchen Gründen auch immer, die noch zu klären sind, den ganzen Video-Signalpfad betreffend - , oder er ist


    b.) wegen fehlerhaften Basic-ROM zwar irgendwo anders gelandet und hängt in einer irregulären Endlosschleife fest, schafft es aber dabei (Interrupt-Flag clear) regelmässig den IRQ zu bedienen.


    falls a.) : neben den bisherigen Vorschlägen
    print chr$(7) einzutippen
    (ist das überhaupt der richtige ASCII-Code für Klingeln auf dem CBM???)
    könnte man auch versuchen
    sA und RETURN-taste
    (save abgekürzt) blind einzugeben und dann aufs geratewohl record und play an der Datasette zu drücken.
    wenn ich mich richtig erinnere, dann speichert der CBM ein sehr kurzes File auf Kassette, das im wesentlichen aus den 192 Bytes Vorspann mit leerem Dateinamen und 3 Null-Bytes Endekennung besteht. Bitte korrigiert mich wenn das nicht stimmt.
    Ob dabei wirklich Aktivität des Rechners stattfindet, ließe sich verifizieren
    aa.) indem man eine fabrikneu gekaufte Leerkassette verwendet und diese danach in einem Audiorecorder zurückspult / abspielt - sind die wohlbekannten Kreischtöne festzustellen, kann der CBM Kernel-Routinen wie eben z.b. SAVE ausführen;
    ab.) daran, dass nach dem blind initiierten SAVE die Datasette nach einer Weile automatisch den Motor stoppt obwohl PLAY und RECORD gedrückt sind
    ac.) indem man während dem Speichern die WRITE-Leitung mit dem oben erwähnten Ohrhörer "belauscht" oder eine Verbindung a la Proxa-axorp-Helmut zum Piezolautsprecher herstellt.
    ad.) indem man eine damals übliche modifizierte Datasette mit eingebautem Mithör-Lautsprecher verwendet


    b.) unter der Hypothese, dass das Basic-ROM einen Schaden weg hat und Eingaben im BASIC-Direktmodus nicht möglich sind:
    ... könnte man versuchen wie beschrieben (ebenfalls blind) den Rechner mittels RESET und gezogener DIAG-Leitung zu starten und dann im (angenommenen) TIM-Monitor-Modus wiederum blind
    mittels
    .S <Startadresse> <restliche Syntax>
    einen Memory-Block über die Datasette auf Band zu schreiben.
    Dabei wird angenommen, dass der TIM-Monitor-Modus unabhängig vom BASIC aktiviert werden kann.


    Dies könnte man versuchen OHNE dass das Basic-ROM (bzw. die Basic-ROMs , $B000, $c000, $d000) funktioniert und evtl. sogar ohne dass es im Rechner steckt.
    Die Syntax des Monitorprogramms auf dem CBM müsste ich aber noch nachschlagen; wer weiss das Kommando auswendig? :)



    Die Bewertung welches ROM defekt ist anhand der Einschalttests auf Zeichengenerator-Position überlasse ich gerne Helmut oder anderen, da mir momentan der Überblick schwerfällt bei den ganzen Sockelbezeichnungen ....

  • Ich habe nun eine Kassette in die am CBM angeschlossene Datasette eingelegt.
    Den CBM eingeschaltet und gewartet bis zum "Tüdelüt".
    Danach blind save eingegeben und auf der Tastatur enter gedrückt.
    Nun an der Datasette Play und Record gedrückt. Ein paar Sekunden lang aufgezeichnet, zurück gespult und in meinen Audio Kassetten Recorder eingelegt.
    Leider hört man nichts außer rauschen. Es scheint nicht so als wurden hier Daten geschrieben.


    axorp: Hast du noch eine Idee mit den ICs?

  • Aber wo ich zuvor noch den kurzen Garbage Screen sah ist nun nichts mehr.

    das ist schade, verstehe nicht, warum nun nicht mehr zu sehen ist :(


    es könnte sein das der monitor nun länger benötigt um ein bild anzuzeigen
    und somit man den garbage screen nicht mehr sehen kann.
    da der bildschirmspeicher inzwischen gelöscht ist.


    den (garbage) screen kann man auch nur sehen, wenn der crt-controller vorher schon initialisiert wurde.


    man müsste nun den monitor mit einer extra spannung versorgen.
    damit er beim ausschalten und wiedereinschalten vom rechner auch immer anbleibt.


    Ich kann somit den Ausgangszustand (kurzer Garbage Screen) nicht mehr reproduzieren.

    :(

    schafft es aber dabei (Interrupt-Flag clear) regelmässig den IRQ zu bedienen.

    so sehe ich es auch.

    print chr$(7) einzutippen
    (ist das überhaupt der richtige ASCII-Code für Klingeln auf dem CBM???)

    ja, ist richtig.


    Die Bewertung welches ROM defekt ist anhand der Einschalttests auf Zeichengenerator-Position überlasse ich gerne Helmut oder anderen, da mir momentan der Überblick schwerfällt bei den ganzen Sockelbezeichnungen ....

    leider ist gar kein einschaltbild mehr zu sehen.

    axorp: Hast du noch eine Idee mit den ICs?

    z.z. leider nicht.


    ich hatte mir früher einen einfachen zähler, mit z.b. einem 4040 und LEDs, aufgebaut.
    den eingang habe ich dann z.b. mit dem cs signal verbunden.
    so konnte man sehr gut sehen, auf welche roms zugegriffen wurde.
    welche signale noch aktiv sind und man konnte mit dem zähler (teiler) schnelle signale
    über den diag-pin oder kleinen verstärker hörbar machen.


    am besten ist es wohl, wenn du mir die platine (oder nur die ROMs) zusendest.
    da schon ende nächste woche die cc2017 in berlin ist.


    gruß
    helmut

  • hallo,


    hast du berücksichtigt, dass während jener "paar Sekunden" erstmal das Klarsichtband (Vorspannband) der Kassette durchläuft , ohne Ferrobeschichtung? ;) sorry wahrscheinlich hast du das, aber manchmal passieren in der Eile auch Missverständnisse ..


    noch ist nicht aller Tage Abend! das ist ja nur die erste Hälfte meines Datasetten-Tests gewesen. Und der Ausgang war fast zu erwarten unter der Prämisse, dass das BaSIC-ROM defekt sei.


    Die zweite Hälfte besteht darin, den Rechner in den TIM-Monitormodus zu bringen (wie bereits diskutiert mit der DIAG Leitung während Reset) und dort das S-Kommando zu geben.


    Ich werde dieses Posting ggf. noch editieren und nachtragen, sobald ich näheres über die korrekte Syntax weiss. Jedenfalls ist das Repertoire der Testmöglichkeiten noch nicht ausgeschöpft! Ausserdem darf Helmut sich auch gern zur 'TIM-Methode' äußern da ich annehme dass er sie auch kennt..


    Edit: C64-Wiki weiss folgendes:
    https://www.c64-wiki.de/wiki/TIM


    S "Dateiname",<Geräteadresse (00-1F)>,<Anfangsadresse>,<Endadresse+1>


    es müsste also nach dem Start mit DIAG nach Eingabe folgendes blind einzutippen sein:
    S "TEST",01,0800,0900
    wobei nach meiner Erinnerung die Parameter alle ohne Leerzeichen dazwischen gegeben werden können / sollen.
    @Inino, kannst du das bitte mal testen, was dabei auf Kassette aufgezeichnet wird?


    Edit2:
    Eine weitere Idee von meiner Seite wäre, die beiden PIA 6520 Bausteine mit ihrer Sockelposition zu kennzeichnen und dann gegeneinander Plätze tauschen zu lassen. (sind die gesockelt?)
    Dies würde den Fall abfangen, dass die Ports defekt sind und dadurch keine Tastatureingaben "durchkommen".

  • An das Klarsichtband habe ich gedacht. Aber danke für den Hinweis. Ich bin immer froh wenn jemand an alles denkt und es so einfach wie möglich beschreibt.


    Ich habe nun den Diagnose Button gedrückt gehalten und dann den CBM eingeschaltet.
    Als der CBM "Tüdelüt" gemacht hat, habe ich den Diagnose Button losgelassen.


    Danach blind S "TEST",01,0800,0900 eingegeben, die Datasette auf 10 vorgespult, auf Record/Play gedrückt und dann ENTER auf der Tastatur.


    Bei 37 habe ich mit der Aufnahme gestoppt und in meinen Audio Kassettenrekorder eingelegt.


    Aber leider immer noch Rauschen.


    Aber dadurch, dass ich es blind eingebe, weiß ich natürlich nicht, ob ich auch wirklich im Diag Modus bin.


    axorp: Habe dir eine Nachricht an vorname@proxa.de geschickt.

  • Vielen Dank für die Rückmeldung.



    Aufgrund der fehlenden optischen Rückmeldung wissen wir auch nicht, ob Tastatureingaben "durchdringen".
    Wenn Du möchtest, kannst du auch noch die Matrixspalten der Tastatur akustisch abtasten.


    Über den PIA-Ausgabeport (und einen Demultiplexer ähnlich 74LS154) wird ein Signal ausgegeben,bei dem eine der 10 Leitungen reihum immer auf Null gezogen wird; dies ebenfalls mit einer Wiederholfrequenz von 60 Hz.


    dadurch ließe sich der Fehler weiter eingrenzen, ob die Tastatur aktiv abgefragt wird bzw. die Abtastung "dorthin durchdringt".


    Matrix-Ausgabeleitungen lassen sich vom Tastatur-Connector zu einem Demultiplexer verfolgen. Habe den Plan nicht vor Augen; ggf. folgt Edit.

  • Wenn Du möchtest, kannst du auch noch die Matrixspalten der Tastatur akustisch abtasten.

    ja, den diag-pin mit jeweils pin1 bis 10 am J5 verbinden.

    Matrix-Ausgabeleitungen lassen sich vom Tastatur-Connector zu einem Demultiplexer verfolgen. Habe den Plan nicht vor Augen; ggf. folgt Edit.

    das ist der UC11 ein 74ls145



    axorp: Habe dir eine Nachricht an vorname@proxa.de geschickt.

    hallo nino, ich habe deine email erhalten.


    leider hat sich hier keiner gemeldet, der einen 4xxx oder 8xxx hatt. :(


    dann hätte man sehr schnell feststellen können, ob bei dig-pin low, der rechner sich mit dem tim meldet.
    und bei entnahme von welchem rom, der bildschirm noch gelöscht wird,
    aber die commodore einschaltmeldung nicht mehr kommt.


    bitte sende mir deine platine zu. ich schreibe dann hier, was ich gemacht habe.


    viele grüße
    helmut

  • Um die Zeit des Wartens gut zu nutzen, habe ich mich genauer in die Thematik und den Systemaufbau des CBM eingelesen.


    Hier das Mainboard meines CBM 4016 mit der Beschriftung aller wichtigen ICs. (Leider hat die Bildqualität beim Upload etwas gelitten.)


    Ich hoffe meine Recherchen stimmen, falls nicht bitte um Korrektur.


  • Ich hoffe meine Recherchen stimmen, falls nicht bitte um Korrektur.

    hallo nino,


    1. der via 6522 und der tastatur pia 6520 steuern auch den iec / ieee-488 bus.
    2. ud6 ist das kernal rom. ist kein basic rom.
    3. ud8 + 9 + 10 sind die basic roms. keine kernal roms. (ein teil vom kernal ist in ihnen vorhanden aber eigentlich für basic)
    4. der tastatur pia 6520 steuert auch die cassette.


    gruß
    helmut


    edit....

  • Da mein CBM aktuell ohne Mainboard bei mir steht nutze ich gleich die Gelegenheit und baue alles auseinander und reinige den CBM von Grundauf.


    Bei den 3 Erdungsanschlüssen(Monitor, Mainboard und Trafo) sieht es rundherum recht braun aus. Ist das Rost oder Grundierung?


    Sollte es Rost sein, sollte ich wahrscheinlich diesen mit ein Schleifpapier wegrubbeln damit der Kontakt wieder gegeben ist. Was meint ihr?


  • Ja, das ist Rost. Nein, der hat da nix zu suchen. Grundierung übrigens auch nicht, selbst wenn Commodore jemals welche verwendet hätte.

    Okay, dann schleif ich den Mal schnell weg. Soll ich dann wieder schwarzen Lack drüber geben, oder ist es besser für die Erdung wenn die Klemme direkt am blanken Metall anliegt?


    So dann habe ich auch wieder die Zeit genutzt und das optische des CBM in Angriff genommen.


    Mal gründlich gereinigt und einen CBM Aufkleber in GIMP erstellt.




  • Soll ich dann wieder schwarzen Lack drüber geben, oder ist es besser für die Erdung wenn die Klemme direkt am blanken Metall anliegt?


    Selbstverständlich muss die Klemme am blanken Metall anliegen. Der Schutzleiterwiderstand muss so gering wie möglich gehalten werden ( unter 0.3 Ohm ) . Das geht nur auf blankem Metall.


    Es gibt spezielle Kontaktscheiben. Die besitzen Zähne, welche beim Festziehen ins Metall gedrückt werden. Die sorgen für guten Kontakt zum Metall. Ich kenne die für M5ér und M8ér Schrauben. Vielleicht gibt es die ja auch für kleinerer Schrauben. Ansonsten kannst du die M5ér unter den Bolzen setzen und dazwischen eine herkömliche Unterlegscheibe aus Messing, damit der Bolzen nicht durch die Bohrung der Kontaktscheibe gedrückt wird. Vorrausgesetzt, das Aussengewinde des Bolzens ist lang genug.




  • Mal gründlich gereinigt und einen CBM Aufkleber in GIMP erstellt.

    Der Aufkleber gefällt mir. Wie hast du den gedruckt?
    Ich habe einen PET 2001 und einen CBM 3032, die neuen Aufkleber bräuchten.

  • Der Sticker auf dem Bild ist nur Papier. War ein Test ob die Maße und die Qualität stimmt. Einfach einen A3 Druck in 2 A4 Drucke geteilt und dann zusammengeklebt.


    Den Sticker bestelle ich dann bei Onlineprinter.at


    Meist gleich einen ganzen A2 Bogen damit es sich rentiert. Voll mit Aufklebern. Ist recht günstig. Ca 14€ der A2 Bogen.


    Habe auch schon meine Arcade damit beklebt.