Hello, Guest the thread was called2.1k times and contains 104 replays

last post from DP64 at the

250407 Rev. B - Black Screen

  • Moin!


    Das gab's noch nie: 250407 Rev.B mit Black Screen! :anonym


    Ende 1983 zusammengestellt und augenscheinlich unverbastelt.


    Alle Spannungen ok.

    RESET ok.

    Takt ok.


    CPU ok.

    VIC ok.

    PLA ist mit PLAnkton ersetzt.


    KERNAL ist draußen (bisher ungeprüft).

    CIAs sind draußen (bisher ungeprüft).

    SID ist nicht vorhanden (geprüft).


    RAMs sind Hitachi, Logik auch das meiste, alles soweit (statistisch) unverdächtig. Leider nichts davon gesockelt.


    Bevor ich meinen zur Neige gehenden Sockelvorrat in das Board investiere, würde ich gern mal ein paar inspirierende Ideen sammeln. Ich weiß auch noch nicht, ob ich morgen, am Wochenende oder erst in drei Wochen dazu kommen, überhaupt Hand anzulegen. Insofern ist es auch nicht eilig.


    Einzige Symptome, die sich neben dem Black Screen zeigen:


    Mit Deadtest (Kinzi004) kommt ein vollflächiges Bild in hübschem Pink. (immer)

    Mit Mac Bacons RAM-Test (Ultimax) kommt ein vollflächiges Bild in hübschem Braun. (immer)


    Sonst eben nur schwarz, auch mit anderem Modul (Super Zaxxon).


    Aufgrund des Alters und des optisch guten Zustands würde ich die Eingriffe gern minimieren und dementsprechend sparsam auslöten wollen, aber wenn am Ende alles gesockelt ist, dann ist es so. Vielleicht lässt sich aber durch ein paar Messungen (leider kein Oszi) etwas eingrenzen? Vielleicht kennt sogar jemand das Fehlerbild?


    Ich freu mich drauf. :)

  • Mit Deadtest (Kinzi004) kommt ein vollflächiges Bild in hübschem Pink. (immer)

    Wahrscheinlich ist "rot" gemeint? Oder "hellrot"?

    Kommt zwischen "schwarz" und "pink" noch was, grau/weiß z. B.?

    Mit Mac Bacons RAM-Test (Ultimax) kommt ein vollflächiges Bild in hübschem Braun. (immer)

    • Setzen der Rahmenfarbe klappt.
    • Setzen des DEN-Bits (Display Enable) klappt nicht, bzw. haut es die Kiste vorher auf.

    Das ist der Grund, warum der zweite Befehl in meiner modifizierten Version das Setzen der Rahmenfarbe ist, damit man so bald wie möglich etwas sieht.


    Ich würde auf einen Adress- oder Datenbusfehler tippen. Der Reset-Vector beider ist:

    • URT = $F800
    • DTK = $F000

    Beide laufen also an einer Pagegrenze los. Der URT setzt "Rahmen=braun" hier:

    Code
    1. F8A7 A9 08 LDA #$08
    2. F8A9 8D 20 D0 STA $D020

    Bis dahin kommt er also. Für die Analyse des Dead Test bitte die Frage oben (rot/hellrot) beantworten, damit wir wissen, wie weit er kommt.


    Datenbus würde ich schon mal ausschließen. Ich würde nach jetzigem Stand Adressbus-Bit A8 verdächtigen (Übergang zu $F9xx bzw. $F1xx). [EDIT: Adressen korrigiert]

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

  • Die Farbe werde ich gleich mal überprüfen. Ich fürchte, mein Monitor ist aber zu langsam für eine (zuverlässiges) Anzeige "vor dem Pink"...

    Reset?


    Wahrscheinlich haut es ihn bei $F200 auf, noch im ersten Loop des "Initial RAM Tests".


    Was aber so gar nicht passt ist "rot" / "pink" / "hellrot" ... ?(

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

  • "rot" / "pink" / "hellrot"

    Ich korrigiere: es ist eher lachsfarben. :D

    Wenn ich (mit einem anderen C64) die Farbe POKE, ist es Rahmenfarbe 10 (hex 0a), also "hellrot". Es sollte aber 3 sein, richtig?


    LDA#$08 passt beim URT insoweit (8=orange=hellbraun).


    Reset?

    RESET funktioniert, ist aber relativ schnell. Vielleicht zu schnell? Wobei, wenn ich es messen/sehen kann, dürfte das im Rahmen sein, oder?

  • Hmmm ...

    Code
    1. F897 A9 1B LDA #$1B
    2. F899 8D 11 D0 STA $D011

    ... bereits hier würde der Screen angeschaltet, das ist aber noch vor "setze braun" ... es kann natürlich sein, dass das kaputte Adressbit das Laden korrekter Werte für Farbe und Display-Mode beeinflusst ... :nixwiss:


    Jetzt wäre ein Tool gut, um den Adressbus in der CPU-Phase auszulesen, dann würde man sehen, an welcher Adresse er stehenbleibt.


    Oder man schreibt ein kleines Ultimax-ROM, das im Loop die Farben durchzählt und erweitert es dann.


    Wenn das allerdings nun eher ein Adressproblem zu sein scheint, würde ich erst mal auf die Multiplexer tippen. Wahrscheinlich klemmt einfach einer.

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

  • RESET funktioniert, ist aber relativ schnell. Vielleicht zu schnell? Wobei, wenn ich es messen/sehen kann, dürfte das im Rahmen sein, oder?

    Zu schnell glaube ich nicht. Schon gar nicht "von Hand", da geht es ja so lange, wie du drückst.

    Es sollte aber 3 sein, richtig?

    Der VIC startet mit "schwarz". Der erste Befehl ist (in 004) ein DEC $D020, das wäre also 255 resp. 15, also hellgrau. Das wird dann bei jedem Loop weiter um eins dekrementiert. Das wären dann also fünf Loops runter bis hellrot. Das müsstest du auf jeden Fall sehen, denn die Loops dauern sicher je 0,5 Sekunden oder so. Das passiert also nicht, und das macht mich etwas stutzig.

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

  • Das passiert also nicht

    Wie gesagt, das wird am Monitor liegen. Hab gerade mal statt Composite den S-Video-Eingang genommen, aber wenn es eine Verzögerung gibt, gibt es die auf dem Eingang auch. Das Bild kommt erst nach ca. 3 Sekunden. Der Monitor bleibt zwar "an" (anders als zum Beispiel beim VGA-Eingang, wo er in den "richtigen" Standby schaltet), aber bei fehlendem Signal (C64 aus) geht er auch in einen Ruhemodus und schaltet die Hintergrundbeleuchtung aus, macht aber offensichtlich auch noch irgendwas anderes aus. Die Beleuchtung kann ich durch schnelles Aus-/Anschalten aktiviert lassen. Ein Bild kommt aber trotzdem erst nach den 2-3 Sekunden. Was davor passiert, ist also nicht zu sehen.

  • Wie gesagt, das wird am Monitor liegen. Hab gerade mal statt Composite den S-Video-Eingang genommen, aber wenn es eine Verzögerung gibt, gibt es die auf dem Eingang auch. Das Bild kommt erst nach ca. 3 Sekunden.

    Aber wenn du den RESET-Knopf drückst, bleibt das Bild doch an, da der VIC durchgehend ein Bild produziert? Der wird ja nicht mit geresettet. Ändert sich da die Farbe dann gar nicht mehr beim Reset? Zumindest beim DT muss sie dann ja weiter dekrementiert werden bei jedem Reset; passiert das nicht, macht die CPU offenbar nichts mehr nach einem Reset.

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

  • Beim URT kommt während RESET=low ein graues Bild und schnippst dann bei RESET=high sofort wieder auf orange.

    Kann ich mir nicht erklären! ?(?(?(

    Warum sollte bei einem RESET der VIC eine andere Rahmenfarbe zeigen?

    Beim DT bleibt hellrot! Egal wie lange RESET=low.

    Jo, dann macht die CPU nix mehr.


    Entweder ein Multiplexer hängt und bleibt so bis poweroff, oder die CPU selbst hat einen weg.

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

  • IDEE:

    • Dead Test.
    • Drücke RESET vor dem Einschalten.
    • Schalte ein, warte bis das Bild stabil ist.
    • Lasse los.

    Jetzt müsstest du den Farbwechsel sehen.

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

  • IDEE umgesetzt.


    Deadtest mit RESET=low gestartet, warten bis Monitor ein (sieht man), RESET losgelassen - sofort hellrot.

    URT mit RESET=low gestartet, ... , orange.


    Andere CPU (8500) gleiches Ergebnis.


    Dann:

    wahllos RESET im laufenden Betrieb.


    Deadtest bleibt stabil und unbeirrbar bei hellrot. Egal wie oft oder wie lange RESETtet wird.

    URT zuckt meist beim RESET. Beim RESET halten wird das Bild manchmal hellgrau, einmal auch hellblau, bleibt aber häufiger orange.

  • Deadtest mit RESET=low gestartet, warten bis Monitor ein (sieht man), RESET losgelassen - sofort hellrot.

    URT mit RESET=low gestartet, ... , orange.

    OK, das bedeutet, dass da ein verkehrter Schreibzugriff auf den Rahmen stattfindet.

    Sicher kein geordneter Programmstart.


    Lustig, dass der URT ganz oft Farbe bringt, selbst wenn er nicht gestartet werden kann. Hatte ich auch schon, bei einem Busblocker; ich meine es war ein CIA.


    Assy 250469 Rev.A kein Bild


    Vielleicht probierst du ja das mit den /CS und dem schnellen Ein-Aus noch vor dem "Lötangriff".

    Andere CPU (8500) gleiches Ergebnis.

    OK, dann halt nicht CPU. :-D

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

  • Vielleicht probierst du ja das mit den /CS und dem schnellen Ein-Aus noch vor dem "Lötangriff".

    Also /CS ist nicht messbar, jedenfalls kein Schwingen, keine Frequenz.


    Hab auch mal die ungeprüften CIAs einzeln eingesetzt und untereinander getauscht, so von wegen VIC-Bank, aber keine Veränderung. Die werde ich mal noch in einem anderen Board testen.


    Etwas länger laufen lassen und BASIC bleibt auffallend kalt, CHAR wird ganz leicht warm. Ich denke, ich fange mit den ROMs an, auch wenn weder Daten-, noch Adressleitungen blockiert erscheinen. Wenn das nichts bringt, danach die Multiplexer. Dann sehen wir weiter. :)

  • so von wegen VIC-Bank,

    Die spielt beim Dead Test beim Initial RAM Test keine Rolle.

    Ich würde eher die CIAs ganz raus lassen.

    Also /CS ist nicht messbar, jedenfalls kein Schwingen, keine Frequenz.

    Klemmen auf +5 V?

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

  • Klemmen auf +5 V?

    Meinst du "Klemmen die auf +5 V"? Dann: nein. Da tut sich gar nichts. Nun weiß ich nicht, ob sie auf 0V bzw. low "klemmen". Es sind aber keine Kurzschlüsse in beide Richtungen messbar.


    Oder meinst du "Klemm die mal auf +5 V"? Das würde aber keinen Sinn ergeben. :)


    Ich hätte ja noch irgendwo einen Logic Analyzer. Die Software läuft aber nur unter XP... :grab1:

  • Ich meine:

    Also /CS ist nicht messbar, jedenfalls kein Schwingen, keine Frequenz.

    Dann muss entweder 0 V oder +5 V an den /CS-Leitungen zu messen sein.

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

  • Dann muss entweder 0 V oder +5 V an den /CS-Leitungen zu messen sein.

    Stimmt. 0V sind ja eher kontraproduktiv bei mehr als einem Chip gleichzeitg. Ich überprüf das morgen nochmal. Hab jetzt nur an den ROMs gemessen. Vielleicht hab ich auch den/die richtigen Pin/s gar nicht getroffen. :whistling:


    Aber VIC wär ja vielleicht auch noch interessant...