Amiga 2000 Reparatur: Green Screen nach Akkuschaden

  • Hallo Leute,

    ich hab mal wieder etwas repariert bzw. es versucht. Aber der Amiga 2000 weigert sich noch zu funktionieren. Und ich bräuchte eure Hilfe...

    Aber nun von Anfang an:


    Ich habe sehr günstig einen Amiga 2000 ohne irgendwelche Karten gekauft. Es ist ein Amiga 2000 Rev 6.2 - also der mit nur mehr 8 RAM ICs.

    Natürlich war die Batterie noch drauf und hat wie üblich ordentlich Schaden verursacht.

    Ab und zu lieferte der Computer einen green Screen, meistens aber war er komplett tot.


    Ich habe zuerst einmal den Schaden durch die Batterie beseitigt. Dazu habe ich den CPU-Sockel, den ROM-Sockel und U540 + U541 entfernt und die Leiterbahnen geprüft und repariert.

    Aber - keine Besserung. Eher wurde es schlechter. Die Zustände auf Pin 17 und 18 (HLT + RST) waren komplett chaotisch. Ab und zu war da was, meisten nix. Oft kompletter Schwachsinn. Ich hatte echt schon das Oszilloskop in Verdacht (bzw. mich als zu blöd um richtig zu messen).


    Die Gründe waren:

    GARY war plötzlich kaputt. Er funktionierte zu Beginn noch. Vermutlich habe ich ihn irgendwie zerstört. Keine Ahnung.

    Einer der beiden CIAs war kaputt. Dasselbe. Auch der hat zu Beginn funktioniert.

    Mit meiner Lötarbeit hatte ich einen Kurzschluss zwischen A8 und A18 (direkt am ROM) verursacht.


    Im Zuge der "Reparaturen" habe ich dann in meiner Verzweiflung weitere Chips gesockelt: U600 bis U605 (alle 6 ICs), U103 - U105 (alle 4 ICs) und natürlich auch alle 8 RAMs.

    Übrigens sind laut meinem Chiptester 4 der RAMs kaputt. Keine Ahnung, ob das stimmt.


    Danach hatte ich einen stabilen green Screen. Diagrom in Version 1.3 ist drinnen und liefert stabil an der seriellen Schnittstelle eine Ausgabe.

    Immerhin. Deutlich besser als zuvor.


    Um die Fehlerquellen weiter zu reduzieren, habe ich dann nur 4 von 8 RAMs befüllt und zwar durch Neue, die auf jeden Fall funktionieren.

    Auf das hat gar nichts gebracht.


    Aber: Ich habe nun keine Idee mehr, was ich noch prüfen soll.

    Diagrom gibt folgendes aus:

    Addr $00010400 OK Number of 64K blocks found: $01

    Chipmem Shadowram detected, .....


    und dann vor allem:

    Startaddr: $00000400 Endaddr: $0000FFFF


    Dann noch: Addresserror at: 000000500 000000000000...000000010100000000 00000400

    und das durchgehend bis

    Addresserror at: 0000059C <binäres Zeug, das $59C entspricht>. 0000049C


    Man sieht hier folgendes:

    Er findet nur 64kB Chipram! Warum!?

    Und was sagt diese "Addresserror at" Meldung aus?



    Wenn ich nun einen der 4 RAMs durch einen der ICs ersetze, die laut Chiptester kaputt sind, bleibt das Verhalten gleich. Sehr seltsam.


    Was kann ich noch als gegeben angeben:

    -) Alle Customchips funktionieren. Nicht nur gemäß Chiptester. Ich habe sie alle in ein A500-Board eingebaut und der funktioniert super.

    -) Ausnahme ist U800 (Buster). Den gibt's in einem 500er ja nicht; da verlasse ich mich darauf, dass der Chiptester erkannt hätte, wenn er nicht funktionieren würde.

    -) Die Leitungen zwischen allen RAMs und Agnus und CPU habe ich mehrmals getestet: Weder gibt es weitere Kurzschlüsse, noch defekte Leitungen.

    -) Sämtliche Puffer und Latches (siehe oben, U600 - U605, U540, U541, U103 - U106) wurden getestet und teilweise auch durch neue ICs ersetzt.


    Zusammenfassung:

    -) Warum erkennt DiagROM nur 64KB Chipmem?

    -) Was bedeutet diese seltsame Fehlermeldung "Addresserror at: ....."?


    Vielen Dank für Eure Hilfe im Voraus!

  • Das klingt nach viel Arbeit.

    Von der Logik her: Wenn jeder Chip getestet und eingebaut ist, sowie jeder Chipkontakt korrekt verbunden ist sollte das laufen. Solltest schon alle 8 RAMs einsetzen.

    Kann von der Reinigung noch Restfeuchte im Board sein oder irgendwelche Kristalle aus dem Akku leitende Verbindungen erstellen? Wirklich jeder Kontakt/jedes Via geprüft? Man testet an den IC-Kontakten, nicht an den Sockelkontakten. Keine weiteren Kurzschlüsse mehr vorhanden?


    Aber das hast du sicherlich auch schon gefunden:

    Statusfarbe: grün

    Fehler im CHIP-MEM (RAM Speicher) gefunden

    mögliche Ursache

    • Kontaktproblem / Defekt: RAM Baustein(e)
    • Kontaktproblem / Defekt: CIA-A Baustein
    • Kontaktproblem / Defekt: Agnus Baustein
    • Kontaktproblem / Defekt: ggf. IC Sockel


    Ich hatte mal Grün wegen defektem 74F-Bausteinen. Ist der RAM defekt, werden die gerne mal mitgenommen. Sind die (ich glaube Multiplexer und Buffer) auch getestet/probeweise gewechselt? Müssen F oder HCT sein, LS ist zu lahm!

    Da gibt es natürlich so Konstellationen, das minimal schnellere LS drin waren, deine Ersatz-LS aber 1ns zu langsam sind...


    Ist die Versorgungsspannung safe? Also nicht nur +/-5%, sondern auch Ripple, Belastbarkeit ect. Bei tauben/aufgeblähten Elkos kannst du auf dem Mainboard lange suchen.


    Wenn das alles nicht hilft: Ersatzboard komplett bestücken.

    ::solder::Ich "darf" beruflich basteln...

  • Herzlichen Dank für Deine Antwort!

    Ich messe immer an den ICs selbst, nicht an den Sockeln :)

    Und die Pins der ICs wurden zuvor mit einem Glasfaserstift und IPA gereinigt.


    Aber ja, der Agnus-Sockel stellt noch eine Unbekannte dar. Eventuell werde ich einen neuen einsetzen, aber davor scheue ich noch zurück.


    Gibt es irgendwo eine Beschreibung, wie DiagROM prüft, wieviel Chipmem im System vorhanden ist?


    Dass man HCT-Bausteine statt LS einsetzen darf, wusste ich noch nicht. Das ist ein heißer Tipp. Ich werde das mal versuchen.


    Kann man mit dem Oszi irgendwie erkennen, dass Signale nicht stimmen?

  • HCT sind CMOS-Bausteine mit TTL kompatiblen Ausgängen. Normalerweise lassen die sich 1:1 ersetzen. Wenn es irgendwie geht, würde ich aber dazu raten originale Bausteine einzusetzen.

    Man kann sicherlich mit einem Oszi alle wichtigen Signale analysieren. Da musst du aber z.B. fanhistorie fragen, der ist da visierter als ich...

    ::solder::Ich "darf" beruflich basteln...

  • PROBLEM GELÖST! Der Amiga 2000 funktioniert!


    Was war die Ursache?

    Ich habe mir die Signale an den RAMs noch einmal angesehen. Alles hat "vernünftig" ausgesehen, mit Ausnahme von CASL, das zuerst zu U541 und dann weiter zu den 4 RAMs U501, U502, U505 und U506 geht (jeweils Pin 17).

    Das Signal hatte nicht nur klare LOW- und HIGH-Pegel, sondern auch irgendwas dazwischen. Auf jeden Fall seltsam.

    Das andere CAS-Signal sieht wieder total unverdächtig aus, klar LOW- und HIGH-Pegel.


    Noch seltsamer ist die Tatsache, dass das Eingangssignal von Agnus (U541, Pin 4) ebenfalls gut aussieht.

    Ich habe dann also den 74F244 (U541) durch einen HCT getauscht, der definitiv funktioniert.

    Keine Änderung. Noch immer ist das Signal nicht besser geworden.

    Die 4 RAMs funktionieren auch alle. Mein Chiptester hat das bestätigt.


    Also die Leiterbahnen angesehen. Als Vergleich nutze ich das Layout vom Amiga2000-remake, das man bequem mit dem Sprint-Layout-Viewer ansehen kann. Ich habe diese Info aus einem Reparaturvideo von Chris Edwards.


    Und siehe da: Die CAS-Leitung geht um Widerstandsnetzwerk RP501 (Pin 9), dann weiter von Pin 10 zu U541.

    Die Leitung geht zu einer Via, dann auf der Rückseite weiter zu U541.

    Diese Via ist sehr knapp an Pin 11 von U540 - und war bei mir mit diesem Pin verbunden.

    Das sollte sie aber nicht sein.....


    Ich habe diese Verbindung gelöst und jetzt funktioniert der Amiga wieder! Alle 8 RAMs werden korrekt erkannt und der Memorytest von AmigaTestKit läuft problemlos durch.


    Nur eine kurze Anmerkung zu meinem Chiptester: Ich benutze den "Chip Tester Pro V2" von "BackBit". Ein tolles Gerät, aber beim Test von RAMs scheinbar ein wenig übergenau. Einige meiner RAMs wurden als fehlerhaft getestet, laufen im Amiga aber problemlos.

  • Quote

    HCT sind CMOS-Bausteine mit TTL kompatiblen Ausgängen. Normalerweise lassen die sich 1:1 ersetzen.

    Das ist eine tolle Info! LS-Dinger sind ja eh noch recht leicht zu bekommen, ebenso die HCT. Aber ALS oder F (z.B. die beiden 74F244 oder die 74ALS245) im A2000 kriegt man eher schwer. Deshalb gut zu wissen, dass ein HCT ein guter Ersatz ist.

  • PROBLEM GELÖST! Der Amiga 2000 funktioniert!

    Das ist großartig! Toll, dass du diesen Mini-Fehler gefunden hast.

    Naja wenn z.B. 80ns RAM drin ist, der genau 80ns macht, dem Amiga würde 100ns reichen und der Tester bügelt da mit 79ns drüber, kann sowas passieren.

    ::solder::Ich "darf" beruflich basteln...

  • Quote

    Naja wenn z.B. 80ns RAM drin ist, der genau 80ns macht, dem Amiga würde 100ns reichen und der Tester bügelt da mit 79ns drüber, kann sowas passieren.

    Mann, Du kennst Dich ja super aus :thumbup::thumbup: Danke für die Erklärung!


    Quote

    Das ist großartig! Toll, dass du diesen Mini-Fehler gefunden hast.

    Mini-Fehler mit maximalen Auswirkungen :cry2: Der Amiga tut mir eh fast leid, dass er gerade an mich als "Reparierer" gekommen ist. So miese Lötarbeit habe ich schon lange nicht mehr abgeliefert.

    Aber immerhin geht er jetzt. Wieder eine alte Maschine gerettet :sunny:


    Hoffentlich gibt es jemanden, der aus meinen Fehler lernen kann, dem dieser Thread hilft.

    Euch danke ich recht herzlich für's Mitlesen und für die angebotene Hilfe!

  • Deshalb gut zu wissen, dass ein HCT ein guter Ersatz ist.


    Ein kleiner Hinweis aus zweiter Hand: HCTs mögen aber wohl keine unbeschalteten Eingänge!


    Ich bastle gerne an NDR-Klein-Computern rum, bin da aber erst später eingestiegen. Ich las bei den neu entwickelten Baugruppen aber oft was zu "HCT statt LS" und da war die Aussage immer, dass sie gut funktionieren wenn eben alle Eingänge - auch die evtl. nicht verwendeten! - definierte Pegel haben und nicht in der Luft hängen.


    Creep kann da evtl. mehr zu schreiben. Er war intensivst bei der Neuentwicklung dabei...

  • Ein kleiner Hinweis aus zweiter Hand: HCTs mögen aber wohl keine unbeschalteten Eingänge!

    Eine Weisheit, die inzwischen hoffentlich jeder kennt. Gerade bei ICs, die an einem BUS hängen, also z.B. 74xxx245 etc. weiß man oft nie, ob die Leitungen wirklich gerade beschaltet sind. Beim Ersatz von vorhandenen LS auf jeden Fall die Lötpads anschauen, ob eins, was nirgendwo hin geht ein Eingang ist. Den dann direkt oder per Pull-Up/Down auf festen Pegel legen. Aber drauf achten, daß die Funktion nicht verändert wird, falls das Gatter doch verwendet wird und nur der Eingang unbelegt ist. Im Zweifel also auf H Pegel.

  • Eine Weisheit, die inzwischen hoffentlich jeder kennt. Gerade bei ICs, die an einem BUS hängen, also z.B. 74xxx245 etc. weiß man oft nie, ob die Leitungen wirklich gerade beschaltet sind. Beim Ersatz von vorhandenen LS auf jeden Fall die Lötpads anschauen, ob eins, was nirgendwo hin geht ein Eingang ist. Den dann direkt oder per Pull-Up/Down auf festen Pegel legen. Aber drauf achten, daß die Funktion nicht verändert wird, falls das Gatter doch verwendet wird und nur der Eingang unbelegt ist. Im Zweifel also auf H Pegel.

    Danke, diese Weisheit hatte sich mir bis jetzt verschlossen...


    Nur um es richtig zu verstehen: LS kann mit unbeschalteten Eingängen, HCT nicht ?


    Lg. TOM:0)

  • Nur um es richtig zu verstehen: LS kann mit unbeschalteten Eingängen, HCT nicht ?

    Genau. Bei LS und klassischen TTL hat ein unbeschalteter Eingang H Pegel. Bei CMOS ist der Pegel undefiniert, was dazu führen kann, daß er sogar schwingt. Das ist kritisch, auch, wenn das ganze Gatter nicht genutzt wird und kann zu übermäßiger Erhitzung und sogar Zerstörung des IC führen.


    Siehe auch hier: :)

    Kann man 74LSnn durch 74HCTnn ersetzen ?

  • CMOS immer mit beschalteten Pegeln, egal ob HCT, ACT oder die alten 40xx-Bausteine...

    Stand schon in meinem 199x Elektronikbuch, dass ich als Jugendlicher hatte

    ::solder::Ich "darf" beruflich basteln...

  • Genau. Bei LS und klassischen TTL hat ein unbeschalteter Eingang H Pegel. Bei CMOS ist der Pegel undefiniert, was dazu führen kann, daß er sogar schwingt. Das ist kritisch, auch, wenn das ganze Gatter nicht genutzt wird und kann zu übermäßiger Erhitzung und sogar Zerstörung des IC führen.

    Vielen Dank für die Erklärung! Hatte ich bis jetzt in meinen Designs ignoriert :0) (Hatte aber bis vor kurzem immer "LS" verwendet...)

  • Guten Abend

    Scouter3D


    Noch als Hinweis, was auch gerne vergessen wird, :hatschi:,

    wenn du einen TTL Output hast und dieser dann auf einen CMOS Eingang geht, sollte bzw. wird auch laut den "meisten" Datenbüchern ein Pull Up Widerstand benötigt, vorausgesetzt


  • Guten Abend

    Wackelstein


    Vermutlich beziehen sich deine Angaben auf diese Schematik oder weicht diese, da du R6_2 schriebst von deinem Board ab

    Hallo!

    Und erst einmal entschuldige bitte die späte Antwort. Ich habe einfach vergessen hier noch einmal reinzuschauen :(


    Ja, ich beziehe mich auf diesen Schaltplan, den Du hier reingestellt hast, also Rev 6.2

    Mein A2000 hat nur 8 RAM-ICs und einen 8372A Agnus verbaut.


    Entschuldige bitte, aber ich verstehe nicht, was Du damit meinst:


    Quote

    Funktionieren einer oder mehrere als defekt deklarierte (welche Fehlermeldung, zeigt der Tester an auf jeder Position /Steck Fassung des Main-Boards,

    Ich verstehe den Satz leider gar nicht. Was meinst Du mit "einer oder mehrere als defekt markierte"?

    Und was meinst Du mit "zeigt der Tester an auf jeder Position/Steck Fassung des Main-Boards"?

  • Guten Abend

    Wackelstein



    Da der Rechner aber wohl wieder zuverlässig funktioniert, wollen wir es aber auch belassen,

    das weitere nur als Beantwortung deiner Frage, etwas ausführlicher formuliert,


    Die damalige Ausgangsfrage war, als wir uns über die Rams unterhielten , welcher Fehler zeigt dein RAM Tester an, wenn die du verschiednesten Rams Bausteine überprüfst, gibt es eine Fehlermeldung oder nur eine schlecht / Gut Anzeige , ist die Meldung dann immer gleich oder gibt es unterschiedliche Fehlerzustände,


    anhand deinen Vorinfos hast du wohl mehrere 256K* 4 Bit ( verschiedene Hersteller ??,

    oder nur Siemens HYB514256 , mit 50 , 60, oder 70ns access time, ? ausprobiert,

    und so wie andere auch festgestelt, daß manche RAM Tester, einen oder mehrere als defekt deklarieren, , ( anzeigt) , aber in der Schaltung bzw Funktion soweit funktioniert,

    Wenn du auf dem Mainbaord ein Ram Bausteine rausnimmst, in diesen leeren Steckplatz dann einen anderen "fehlerhaften" laut deinem Tester Rams steckst, läuft dann der Recher , der Speichertest auch durch,


    Wenn du das selbige , mit dem gleichen " fehlerhaften" auf einem anderen Steckplatz durch führst ,

    läuft dann der Recher , der Speichertest auch durch