Hallo Besucher, der Thread wurde 2,1k mal aufgerufen und enthält 16 Antworten

letzter Beitrag von Overdoc am

C64 mit Grafikproblemen, evtl. VIC Adressierungsproblem?

  • Hallo die Hadrware Experten,


    Hab wieder mal einen spannenden Fall:

    Ein Brotkasten (Assy 250407) von einem Bekannten.


    Die Kiste hatte anfangs eine tote PLA, einen toten SID, sowie ein defektes RAM Bit 4 (OKI Rams).

    Nachdem ich die alle getauscht hab, lief er leider immer noch nicht, was mich dann auch noch zum Tausch der beiden Multiplexer, dem 7406 , und der MOS TTLs auf U14 und U15 bewogen hat - allerdings umsonst, denn die waren alle ok, und ich fand den Fehler letztendlich am Kernal-Sockel, wo eine Leitung schlechten Kontakt hatte (das Kernal hatte schon zuvor mal jemand gesockelt, um eine Kernal-Umschatplatine für ein Speeder Kernal einzubauen)


    Jetzt macht die Kiste allerdings immer noch Manderln. Und zwar in folgender Art und Weise:


    - Wenn man ein Spiel lädt, dann läuft das Spiel (meist). Allerdings gibt es Grafik-Fehler in einem typischen Muster, welches sich alle 128 Zeichen wiederholt (siehe Screenshot von International Soccer, Last Ninja II läuft z.b. auch, mit dem selben Muster)

    - die Grafikfehler betreffen so wie ich es sehe auch durch veränderten Zeichensatz erzeugte Grafik, nicht nur Hires und Multicolor Grafiken, sowie auch Sprites

    - Startbild ist ok, 38911 Bytes free, Cursor blinkt, Character und Farben sind ok, usw, - alles normal.

    - Deadtest Cartridge blinkt 1 mal - meldet also ein defektes Bit 7 auf U12 -> hab ich jedoch bereits getauscht, und war ok.

    - Ultimax Cartridges wie z.b. Kickman und Jupiter Lander funktionieren einwandfrei, ohne Grafikstörungen!

    - 'normale' Cartridges (also mit CBM80 Markierung), starten nur ganz selten (wenn er länger ausgeschaltet war). Meist kommt aber nur ein leerer blauer Bildschirm

    - ein Ram-Test hat keinen Fehler ergeben

    - Tastatur, Floppy Ansteuerung, Joysticks, usw. funktioniert alles einwandfrei. Auch Sound und Musik sind immer einwandfrei.


    Für mich sieht es typischerweise danach aus, als würde der VIC eine falscher RAM Bank ansteuern, so wie es z.b. bei einem defekten CIA U2 passiert?

    Nachdem der U2 aber problemlos die Floppy ansteuert und auch sonst alles richtig zu machen scheint, vermute ich da eher ein Adressierungsproblem auf A7?

    Offenbar aber nicht zur CPU und nicht zum RAM, weil sonst würde ja gar nichts mehr laufen.


    Vielleicht habt ihr ja Tips, wo ich am besten weitersuchen sollte?

    Evtl. mal A7 vom VIC durchmessen und überall hin rückverfolgen? Oder doch mal den Kernal Sockel noch genauer durchmessen?


    Danke für eure Hilfe :)


    Und hier die Screenshots:


  • Danke für den Tip, ja, den hab ich schon getauscht (allerdings noch bevor ich die Leitung am Kernal bemerkt hab), und auch jetzt danach schon gefühlte 100mal durchgeklingelt, aber da kann ich nichts abnormales feststellen....?!

    Sockel ist einwandfrei eingelötet und alle Pins haben guten Kontakt, ohne irgendwelche Kurzschlüsse. Und ich hab schon 2 andere 74LS257er probiert, bei allen das selbe....


    Kann mir aber auch nicht vorstellen, daß zb. ein Last Ninja II oder Soulless laufen würde, wenn der Multiplexer nicht in Ordnung wäre bzw. alle Kontakte zu ihm, denn dann gäbe es ja sofort Datenbus-Fehler, und es würde kein Spiel mehr irgendwie laufen.

  • OK ... tausche mal die Multiplexer untereinander ... und die RAM-ICs untereinander ... Dead Test immer mal wieder zwischendurch durchlaufen lassen ... C64 ohne was ein-/ausschalten ... BIT 7 muss nicht zwingend U12 sein, sondern kann auch ein anderer Fehler in diesem Zusammenhang sein (siehe Bild; bitte schauen).


    Kommt noch ein anderes Fehlerbild dann?

  • Danke, aber das hab ich alles natürlich schon gemacht, hab ich vergessen zu erwähnen.

    Fehlerbild ist mit allen in einem anderen Board als gut getesteten ICs das selbe.

    D.h. die gesockelten ICs sind alle 100%ig ok. Das sind mittlerweile die beiden Multiplexer auf U13 und U25, die TTLs auf U14 und U15, der 7406 auf U8, die Rams für Bit 4 und 7, sowie der PLA und das Kernal.


    Es könnte höchstens sein, daß ich bei irgendeinem Sockel eine Leiterbahn beschädigt hätte, aber das hab ich denke ich alles schon gut durchgemessen.

    Höchstens der Kernal Sockel wäre noch verdächtig, weil das kein Präzisionssockel ist, und der schon ein Kontaktproblem auf Datenbit 4 hatte? Der ist auch nicht von mir, sondern bereits von irgendjemand zuvor gesockelt worden....?

    Also vertrau ich dem nicht so ganz, hehe ;) Beim Durchmessen ist mir aber nichts aufgefallen.


    Muss allerdings auch sagen, daß ich beim Durchmessen via Schaltplan manchmal was übersehe, weil die Verbindungen auf der Platine ja öfters über andere Wege gehen, spezielle Datenbus und Adressbus Leitungen. Da muss man immer 'jeden gegen jeden' messen.

    Ideal wäre eine leere Platine, wo man genau sieht wie die Leitungen verlaufen.

    Viellicht kann ja mal irgendwer von den Glüpcklichen, die solche Leerplatinen haben, einen Scan machen? (aber eher von Assy 250425 oder 407, und nicht von KU, weil da ist vermutlich einiges anders?)

  • Für mich sieht es typischerweise danach aus, als würde der VIC eine falscher RAM Bank ansteuern, so wie es z.b. bei einem defekten CIA U2 passiert?

    Dann wäre das Bild komplett im Eimer. "Ein Teil des Bildes ok und ein anderer Teil nicht" lässt sich nur dann mit falscher VIC-Bank erklären, wenn das Spiel Split-Screen-Grafik mit verschiedenen VIC-Bänken macht. Hier bei Commodore-Soccer ist das aber offensichtlich nicht der Fall, das sieht man z.B. schon daran, dass innerhalb einer Zeile ein Teil ok ist und ein Teil nicht.

    Lustigerweise benutzt Commodore Soccer die unterste VIC-Bank, genau wie das Einschaltbild, welches aber korrekt angezeigt wird. Hast Du den VIC schon in einem anderen Board getestet?

  • Ram auf U9 und U21 hab ich noch nicht gesockelt, sehe aber auch keinen Grund dafür, denn der Ramchip von U12 funktioniert in meinem 'Test 64er' ebenfalls auf U12 einwandfrei (sowohl mit Deadtest Cart als auch z.b. mit dem Game Soulless)

    Der VIC ist ebenfalls unschuldig --> macht im Test 64er keine Grafikprobleme.


    Wie gesagt, ich tippe eher auf eine abgerissene oder unabsichtlich zum 'Nachbarn' verbundene Leitung?

    Oder ich werd vielleicht doch mal den Kernal Sockel tauschen? Irgendwie macht es mich nämlich schon stutzig, daß das Probem mit den Ultimax Cartridges nicht auftritt, jedoch Cartridges mit CBM80 Markierung nicht wirklich starten wollen?! (und wenn, dann mit Grafikfehlern)

  • PLA sicher OK?

    PLA-Sockel OK?

    74LS373 OK? Keine Adresspins dort verbunden beim Sockeln?

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


  • PLA ist sicher ok, läuft im Test-64er problemlos, und eine andere PLA sowie auch eine Eprom PLA macht im defekten 64er das selbe Problem.

    Der Sockel sollte auch ok sein, optisch kann ich keine schlechten Kontakte oder abgerissenen Leiterbahnen erkennen, wenn ich die Platine mit der Lampe 'durchleuchte'. Die PLA hab ich ja selbst gewechselt, da pass ich schon gut auf, und es wär mir aufgefallen wenn mir da was passisrt wär. Hab die PLA glaube ich auch schon mal durchgeklingelt, aber werd ich nochmal machen, weiß es nimmer genau?


    Der 74LS373 ist noch eingelötet. Aber den könnte ich heute abend mal in Angriff nehmen. ;)


    Danke mal soweit, ich berichte wieder :)

  • Also, den 74LS373 hab ich gestern abend noch getauscht - wars leider nicht, Problem besteht weiterhin.

    Hab mir jetzt gerade McBacon's kleines Speicher-Test Proggy runtergeladen - mal schaun was der defekte 64er dazu sagt?


    Mir ist auch noch eine winzige Kleinigkeit bei Kickman aufgefallen:

    Die 3 Dinger auf der 'Wäscheleine' im Hintergrund, welche normalerweise wie Fadenkreuze aussehen, und ca. 2 Sekunden nach dem Reset verschwinden, die schaun beim defekten C64 aus wie ein Divisions-Zeichen (also ein Punkt mittig oberhalb und unterhalb von einem waagrechten Strich, ohne den Kreis rundherum)


    Da sollte ich vielleicht den Zeichensatz von dem Spiel mal unter die Lupe nehmen?

    Hab mich mit dem Thema allerdings schon ewig nimmer beschäftigt....also falls da jemand schneller ist als ich, dann wäre ich sehr dankbar :)

  • Also McBacon's Memtest läuft soweit ich es einschätzen kann einwandfrei durch - der Bildschirmspeicher wird (unterhalb des Test-Proggy-Codes)) zyklisch mit dem Zeichensatz befüllt, wobei alle 256 Zeichen überall am Bildschirm korrekt dargestellt werden.


    Ramfehler schließe ich also eher aus.

    Die Frage ist aber warum das Dead-Test Cartridge einen Bit 7 Fehler meldet?

    Offenbar spuckt es diesen Fehler ja auch in anderen Fällen aus, nur was sind dafür die Kriterien?

  • Ich weiß jetzt nicht, wie Mac Bacon s RAM-Test genau testet, aber wenn da der Speicher von $0000 bis $FFFF mit einem Muster gefüllt wird, erkennt man einen Adressierungsfehler unter Umständen nicht. Das Dead Test schreibt glaube ich für jede Page einen anderen Wert, muss ich aber erst nochmals nachsehen.


    Könnte also schon sein.


    Mac Bacon , erhelle uns! :-)

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


  • Ich weiß jetzt nicht, wie Mac Bacon s RAM-Test genau testet, aber wenn da der Speicher von $0000 bis $FFFF mit einem Muster gefüllt wird, erkennt man einen Adressierungsfehler unter Umständen nicht.

    Version 3 schreibt direkt nach dem Test eines Bytes bereits den Wert für den nächsten Durchlauf, d.h. sämtliche Adressierungsfehler müssten(tm) erkannt werden.

    Im vorliegenden Fall würde ich langsam anfangen, die PLA zu verdächtigen: Mein Speichertest schaltet ja auf "ROMs und I/O aus, nur RAM aktiv". Wenn in anderen Konfigurationen Speicherfehler auftreten, wäre meine erste Vermutung, dass die PLA evtl. eins der ROMs aktiviert hat oder so...


    EDIT: Schlechte Verbindungen zum Prozessorport und/oder dem Expansionsport ginge natürlich auch.

  • dass die PLA evtl. eins der ROMs aktiviert hat oder so...

    Könnte sein, wobei im Ultimax Mode (Dead Test) per CPU-Portbits nix umgeschaltet werden kann. Aber weiß das ein defektes PLA auch? ;-)

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


  • So, diese sch....Kiste ist nun endlich wieder repariert.


    Der Dreck hat mich garantiert ein paar Haare gekostet hat. Im Endeffekt lag es an kalten Lötstellen am Sockel des unteren Mulitplexers, sowie am Sockel des PLA.

    Allerdings hatte ich davor alle Verbindungen zu den Pins von jedem gesockelten Chip penibel genau mit dem Multimeter durchgepiepst, wobei nichts aufgefallen war. Auch optisch hat alles gut ausgesehen.

    Bin dann eigentlich nur deshalb darauf gekommen, weil sich das Grafik-Muster änderte, wenn man im Betrieb auf einzelne ICs am Board klopfte.

    So einen Mist hatte ich zuvor noch nie - und jetzt gleich an 2 Sockeln! Da muss mein Bekannter in seinem C64 wohl ein richtig mieses Board erwischt haben.


    Naja, immerhin läuft die Kiste jetzt wieder.

    Jetzt muss ich nur noch den VC20 von ihm auch noch wieder zum Laufen kriegen. Der ist auch so ein sch... Fall, schon fast alles ausgetauscht, und er bleibt immer nur schwarz, auch mit Ram-Test Kernal. Evtl. mach ich für den auch noch einen Thread auf, falls ich gar nimmer weiter weiß.


    Danke nochmal an alle die hier versucht haben zu helfen :)