Cart-Probleme auf Atari 800 beheben


Cart-Probleme auf Atari 800 beheben

von tfhh » Fr 10. Mai 2013, 11:24
Moin,

durch die coole Incognito-Erweiterung macht es in vielen Punkten umso mehr Spaß, mit einem Atari 800 vermehrt zu arbeiten. Doch leider gab es ein paar Module, die (auch im XL/XE Modus der Incognito) nicht korrekt arbeiten.

Nach ein paar Tests auf mehreren Atari 800 Computern mit diversen problematischen Kombinationen habe ich eine mögliche Lösung gefunden. Mir ist aufgefallen, daß ein Signal bei den 400/800er Computern anders belegt ist als bei neueren (XL/XE) Rechnern. Es geht um Pin "S" des Modulschachts, wo bei allen XL/XE Computern (und so auch überall dokumentiert) das Taktsignal PHI2 anliegt.

Beim 400/800er liegt an diesem Pin jedoch nicht PHI2, sondern RAS an - das ist auch in den alten Service Manuals so zu lesen. Dies dürfte meiner Versuche nach der Grund für das Nicht-Funktionen von myIDE II und Problemen beim Schreiben auf einige Flash-Carts sein. Wenn man sich die beiden Signale auf dem Oszilloskop ansieht, wird deutlich, warum:
Scope.jpg
Signale PHI2 und RAS auf dem Oszi
Scope.jpg (152.01 KiB) 930-mal betrachtet

Die meisten Zusatz-Schaltungen und Module neuerer Art verknüpfen ihre Logiken mit der steigenden Flanke von PHI2. Auf einem unmodifizierten Atari 800 wird jedoch dann RAS anstelle von PHI2 verwendet. Wie man anhand des Oszi-Bildes sehen kann, ist die Zeit, wo RAS auf Low ist, nur halb so lang wie die PHI2 Phase. Wenn nun das myIDE II, das Flash-Modul XYZ etc. ein Schreibzugriff mit PHI2 verknüpft, wird dieser viel zu früh aktiv, so daß unter Umständen fehlerhafte Daten geschrieben werden.

Ein einfacher Patch behebt das Problem - einfach PHI2 anstelle von RAS an den Pin "S" heranführen. Ein möglicher Weg ist dieser hier (gezeigt anhand einer Atari 800 Platine, die Leiterbahnführungen sind identisch bei PAL und NTSC an dieser Stelle):
Mod_d.jpg
Vorschlag einer guten Stelle zum Trennen der RAS-Leitung zu den beiden Modulschächten
Mod_d.jpg (244.97 KiB) 930-mal betrachtet

An dieser Stelle kann das RAS-Signal gut aufgetrennt werden. Es geht von dem unterem Via dann nur noch zu den beiden Modulschächten, so daß es man es an dieser Stelle gut trennen kann.
Connect_d.jpg
PHI2 statt RAS an Pin "S" beider Modulschächte anschließen
Connect_d.jpg (328.38 KiB) 930-mal betrachtet

Auf der Unterseite der Hauptplatine dann einfach die Verbindung zwischen Pin "S" und Pin "A" (das ist PHI2 - aber nur beim *rechten* Modulschacht) ziehen - fertig.

Derart modifiziert arbeitet auch das myIDE II auf dem Atari 800 nach meinen Tests fehlerfrei. Ebenso konnte ich Flash-Module, die ich auf Lager habe, fehlerfrei beschreiben.

Ich gehe auch davon aus, daß es im 800er Modus nicht zu Problemen kommt. Dazu habe ich bei einem 800er die Incognito wieder entfernt und auf "Standard" zurückgebaut (aber den PHI2 Patch drin gelassen). Es liefen alle Module - sofern sie überhaupt unter dem 800er OS laufen - einwandfrei. Auch das Schreiben funktionierte, dazu habe ich aber nur ein Modul zum Testen gehabt: Telelink II. Mir ist kein anderes Modul neuerer Art bekannt, dessen Software etc. im 800er Modus einwandfrei läuft. Weitere Infos und Tests sind willkommen.

Gruß, Jürgen

Re: Cart-Probleme auf Atari 800 beheben

von skriegel » Fr 10. Mai 2013, 11:34
Ich bin ja nun einmal kein Freund von Leiterbahndurchtrennungen. Gibt es da nicht irgendeine Möglichkeit, diese still zu legen, ohne die Leiterbahn zu durchtrennen?

Ich bin ja in Sachen Elektronik nicht ganz so pfiffig, deswegen Frage ich einfach mal doof, ohne das nötige Wissen zu haben: Könnte man nicht an einer Stelle mit Kontakten das RAS-Signal blocken (Diode oder so) und stattdessen PHI2 auf die Leitung legen? Ich weiß nicht wie ich es besser ausdrücken soll.

Meine erste Idee dazu funktioniert nicht, das ist das "Widerstand is zwecklos"-Problem: http://www.getdigital.de/images/produkt ... ecklos.jpg

Mir wäre halt eine Lösung lieb, die wieder komplett rückbaubar ist, auch wenn hier nach Deinen bisherigen Tests keine Probleme zu erwarten sind. So eine durchtrennte Leiterbahn ist halt auch immer doof zu erkennen, während zusätzlich Drähte und Kram ja recht leicht zu identifizieren sind und so als guter Hinweis auf eine Modifikation dienen können.

Re: Cart-Probleme auf Atari 800 beheben

von tfhh » Fr 10. Mai 2013, 11:54
Moin Sascha,

skriegel hat geschrieben:Ich bin ja nun einmal kein Freund von Leiterbahndurchtrennungen. Gibt es da nicht irgendeine Möglichkeit, diese still zu legen, ohne die Leiterbahn zu durchtrennen?

Ich versuche natürlich auch, die wo es geht zu vermeiden.

skriegel hat geschrieben:Mir wäre halt eine Lösung lieb, die wieder komplett rückbaubar ist, auch wenn hier nach Deinen bisherigen Tests keine Probleme zu erwarten sind. So eine durchtrennte Leiterbahn ist halt auch immer doof zu erkennen, während zusätzlich Drähte und Kram ja recht leicht zu identifizieren sind und so als guter Hinweis auf eine Modifikation dienen können.

Also mit der einfachste Weg in solchen Fällen ist es, die Stelle mit einem Lackstift o.ä. (schrei-Rosa bietet sich da an :mrgreen: ) zu markieren.

Es gibt natürlich noch zwei Möglichkeiten (mindestens):

- Du ziehst den Pin "S" aus der Platine und biegst ihn hoch. Ist aber Fummelkram und die Gefahr (aufgrund wenig Platz) besteht, daß der abbricht. Also ganze Buchse entlöten, Pin "S" hochbiegen und wieder einlöten (bis auf den hochgebogenen "S" natürlich).
- RAS wird bei einem Rechner mit Incognito nicht mehr benötigt, und normalerweise vom Personality-Modul erzeugt. Das bedeutet, die Incognito erzeugt RAS.

Ich habe Sebastian bereits angeschrieben, ob er dies optional ändern kann (vermutlich geht dies nur mit einem Update des Xilinx CPLDs), dann wäre gar kein Mod nötig.

Gruß, Jürgen