Forum: PC Hard- und Software Apple Desktop Bus


von Bernd B. (Gast)


Lesenswert?

Hallo Experten,

ich suche eine Dokumentation mit einer PIN-Beschreibung und Nummerierung 
zu einem 6800-Prozessor von Motorola und zwar mit 28 PIN.

Bei meinem Apple Computer ist der ADB (Apple Desktop Bus) ausgefallen. 
Das Signal kann ich genau verfolgen und habe festgestellt, dass eine 
Unterbrechung am Prozessor vorliegt. Nun habe ich irgendwo gelesen, dass 
der ADB an meinem Rechner (ein Mac 6100/60) mit einem 6805 realisiert 
wird. Den Signalpfad kann ich bis zum IC-PIN durchklingeln. Nun möchte 
ich die anderen PINs prüfen, wozu ich meine, dass ich die Funktion 
wissen müßte. Es handelt sich hierbei um eine Multilayer PCB mit 
Leiterbahenn unter dem IC - nix mit auslöten.

Zusammenfassung: Apple hat die Bedruckung abweichend von bekannter 
Bezeichnung vornehmen lassen, sodass ich die IC-Nummer im I-Net nicht 
finde.

Der Prozessor hat "nur" 28 PIN.

Welcher 6800 Prozessor würde wohl in Frage kommen und wo finde ich ein 
entsprechendes Datenblatt?

Ich habe das Problem ausführlich beschrieben, vielleicht hat jemand 
diesen Fehler auch schon einmal beseitigt.

Danke vorab und Gruß

Bernd

: Verschoben durch Moderator
von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

hat denn der Apple Computer auch eine Modellbezeichnung, und hast du 
schon mal in den Schaltplänen nachgesehen, die man zu diesem Modell 
irgendwo im Internet runter laden kann?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Wegstaben Verbuchsler schrieb:
> hat denn der Apple Computer auch eine Modellbezeichnung


Sieht so aus:

Bernd B. schrieb:
> ein Mac 6100/60

Wohl 'ne ziemlich alte Möhre.

http://en.wikipedia.org/wiki/Power_Macintosh_6100


Selbst wenn der von Apple verwendete ADB-Controller ein Motorola 68xx 
ist, ohne die darin befindliche Firmware ist diese Information völlig 
nutzlos. Und zu der Zeit verfügten die Dinger nicht über Flash-ROM, 
sondern waren maskenprogrammiert.

Ein Ersatz dürfte daher nur mit dem Apple-Original-Baustein möglich 
sein, denn es ist eher sehr unwahrscheinlich, daß hier jemand 
Reverse-Engineering betrieben hat, um das Ding nachbilden zu können.

Auch mit einem Datenblatt des Controllers wirst Du nicht die korrekte 
Funktion überprüfen können, denn die ist durch das im Controller 
vorhandene von Apple stammende Programm definiert -- und das wiederum 
ist nicht im Datenblatt beschrieben.


Ein Servicemanual des Macs ist auf o.g. Wikipedia-Seite verlinkt, 
vielleicht hilft das ja etwas weiter.

Bernd B. schrieb:
> Es handelt sich hierbei um eine Multilayer PCB mit
> Leiterbahenn unter dem IC - nix mit auslöten.

Selbstverständlich können auch ICs aus Multilayerplatinen ausgelötet 
werden -- wenn man löten kann und geeignetes Werkzeug hat.

von Marc (gierig) Benutzerseite


Lesenswert?

Kamm mich täuschen, aber der Mac 6100/60 war der erste ohne Motorola.
War quasi die erste liste mit PowerPC von IBM..der hat aber über ~300 
pins..

Aber ich glaube du meinst das der den ADB Controller selber oder ?

: Bearbeitet durch User
von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Marc D. schrieb:
> Also irgendwas stimmt da nicht ganz.

Wieso? Es geht nicht um den eigentlichen Prozessor, es geht um den 
ADB-Controller.

von Marc (gierig) Benutzerseite


Lesenswert?

Ja der Groschen hat bei mir länger gedauert bis er abgekommen ist....


Auszug aus:
http://support.apple.com/kb/TA31319?viewlocale=en_US

Cuda Microcontroller Chip

The Cuda is a microcontroller chip. Its function is to:
* turn system power on and off
* manage system resets from various commands
* maintain parameter RAM
* manage the Apple Desktop Bus (ADB)
* manage the real-time clock
* let an external signal from either Apple GeoPort serial port control 
system power

Squidlet Chip
Squidlet is a 28-pin chip that provides a set of synchronized system 
clocks for Power Macintosh computers.

Ohne das System zu kennen... ich glaube du hast den "Squidlet" Chip 
gefunden..

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Nicht der "Squidlet", sondern der "Cuda":

> The VIA (versatile interface adapter) interfaces to the CUDA,
> a 6805 microprocessor core which controls the ADB (Apple Desktop
> Bus) which connects to the keyboard and mouse.  The CUDA also
> controls system power and the RTC (real time clock) chip.


(Quelle: 
http://www.cs.fsu.edu/~baker/devices/lxr/http/source/linux/drivers/macintosh/via-cuda.c)


Nun, 6805 hat ja der Threadstarter schon genannt.

Es bleibt aber trotzdem dabei, daß ein Datenblatt des 6805 hier
nicht weiterhilft, denn das Datenblatt beschreibt nicht das von Apple 
stammende Programm im ROM des 6805.

: Bearbeitet durch User
von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Ab System 8.6 kannst du eine USB PCI Karte in den Rechner stecken und so 
wieder Maus und Tastatur anschliessen. Das Problem dabei ist, das Apple 
nur OHCI Chips unterstützt - du musst also eine Karte mit einem Chip 
nach diesem Standard finden. UHCI geh nicht.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Matthias Sch. schrieb:
> Ab System 8.6 kannst du eine USB PCI Karte in den Rechner stecken

Das ist bei einem Power Mac 6100 allerdings eine Leistung -- das Ding 
hat keine PCI-Slots.

von Luther B. (luther-blissett)


Lesenswert?

MESS kann auch verschiedene Macs emulieren, die CUDA Chips werden da mit 
emuliert (über den 6805 Emulator). In den Quellen des Treibers findet 
man einen Hinweis auf die "Schematics" aus denen das Pinout ausgelesen 
wurde:

http://git.redump.net/mame/tree/src/mess/machine/cuda.c

Der Controller hat übrigens Kommandos, um den ROM auszulesen:

http://minivmac.sourceforge.net/extras/egretrom.html

Ich würde mich mal an die MAME/MESS Mailingliste wenden.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Rufus Τ. Firefly schrieb:
> Matthias Sch. schrieb:
>> Ab System 8.6 kannst du eine USB PCI Karte in den Rechner stecken
>
> Das ist bei einem Power Mac 6100 allerdings eine Leistung -- das Ding
> hat keine PCI-Slots.

Ach Mist, stimmt ja, die Dinger hatten ja noch NuBus. Habe ich mit den 
Nachfolgern verwechselt.
Sorry für die Fehlinformaton.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Luther Blissett schrieb:
> MESS kann auch verschiedene Macs emulieren, die CUDA Chips werden da mit
> emuliert (über den 6805 Emulator).

Das ist natürlich ein potentieller Lichtblick für jemanden, der einen 
prähistorischen Mac reparieren möchte und viel Zeit mitbringt. 
Vorausgesetzt, der "Cuda" ist bei 68k-Macs und bei PPC-Macs gleich, 
könnte man ja auch über eine Emulation mit irgendeinem leichter 
zugänglichen µC als ausgerechnet einem Fossil wie dem 6805 nachdenken.

Das sollte sich mit jedem durchschnittlichen AVR o.ä. hinbekommen 
lassen, der 6805 war schließlich keine Rakete und hatte auch keine über 
das übliche hinausgehende Peripherie.

von Bernd B. (Gast)


Lesenswert?

Hallo Experten,

leider komme ich erst jetzt wieder dazu meinen Thread zu lesen und zu 
beantworten.

Danke für die vielen Antworten! Also richtig weiter bringt mich das 
alles leider nicht, ich hatte ja bereits ausgiebig im Internet 
recherchiert.

Dann werde ich hardware-debugging weiter fortsetzen, mit Oszilloskop und 
Signalverfolgung. In den einschlägigen Foren hatte ich bereits von 
mehreren Teilnehmern gelesen, die diesem Problem beim PPC 6100/60 
ebenfalls ausgeliefert waren. Meine Hoffnung war, dass vielleicht jemand 
dieses Problem bereits gelöst hatte.

Wie auch immer, mindestens eine Antwort wird noch folgen, in der ich die 
weitere Vorgehensweise beschreibe.

Gruß

Bernd

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Bernd B. schrieb:
> Also richtig weiter bringt mich das
> alles leider nicht, ich hatte ja bereits ausgiebig im Internet
> recherchiert.

Was möchtest Du denn herausfinden? Wenn der Baustein kaputt ist, ist er 
kaputt, und kann nur durch ein gleichartiges oder nachgebildetes Bauteil 
ersetzt werden.

Wenn der Baustein nicht kaputt sein sollte, aber trotzdem nicht 
funktioniert, dann wird es ein Problem entweder zwischen ADB-Geräten und 
dem Baustein oder aber zwischen dem Baustein und dem Rest des PPC-Macs 
geben.

Um herauszufinden, was der Fall ist, brauchst Du einen Schaltplan, in 
dem zumindest die Umgebung des Bausteines zu sehen ist -- also alles, 
was zwischen ADB-Gerät und diesem Baustein zu finden ist sowie die 
Anbindung des Bausteines an das interne Bussystem des PPC-Macs.

Besorg' Dir einen Schaltplan.

von Bernd B. (Gast)


Lesenswert?

Hallo Experten,

also kurze Zwischeninfo: auf Pin 3 liegt der Oszillatoreingang und auf 
Pin4 der -ausgang des 32kHz Oszillators, wie ich soeben ermittelt habe. 
Damit scheiden Ansätze in Richtung PIC16C5x, wie in AN591 von Microchip 
beschrieben aus, sofern nur das IC umgestempelt und das Pinning gleich 
ist.

Auf Pin 20 liegt das Bussignal. Damit sollte Pin 20 zu einem 
Eingangs-/Ausgangsregister mit mit Open Collector Funktion führen. Oder 
dieser Pin geht direkt auf einen Timer des Prozessors, natürlich mit 
OC-Funktion. Auf jeden Fall muss dieser Pin zurückgelesen werden können, 
sonst kann man den ADB nicht realisieren.

Sofern ich nun zum 6805 ein Datenblatt vorliegen hätte, könnte ich diese 
Bedingungen an den Pins ebenfalls überprüfen.

Mich wundert auch, dass kein Takt mit höherer Frequenz in das IC 
eingespeist wird. 32kHz erscheinen mir für das Busprotokoll zu langsam, 
da die Abarbeitung pro Codeelement mehrere Taktzyklen benötigt. Auch 
frage ich mich, wie das exakte Timing aus 32kHz abgeleitet werden soll. 
Demnach müßte ein interner Oszillator an die 32kHz gelocked sein, oder 
der Takt fehlt auf der Leiterplatte aufgrund einer 
Leiterbahnunterbrechung.

Mit den "neuen" Erkenntissen würde ich gerne in ein Datenblatt zum 6805 
gehen und prüfen, ob dieser Prozessor überhaupt die Anforderungen 
erfüllen kann.

Vielleicht wird jetzt etwas klarer, wie ich hier die Hardware debugge.

Gruß

Bernd

von Bernd B. (Gast)


Lesenswert?

Hallo Rufus,

ich konnte vor ein paar Tagen beobachten, wie das Signal am ADB immer 
schlechter wurde. Die Spannung hatte einen "Wackler" und driftete 
langsam weg und kam dann sprungartig wieder. Das ganze korreliert mit 
dem Fehlerbild. Die Verbindung zwischen dem IC und der Peripherie ist 
okay und stabil.

An ein Schaltbild bin ich bislang noch nicht herangekommen. Ich habe 
auch keine Idee mehr.

Einige Eingänge am IC werden sicher unbeschaltet sein. Nun versuche ich 
herauszufinden, welche Anschlüsse unbedingt beschaltet sein müssen.

Das IC ist sicher auch nicht erhältich, sodass ich keinen Ersatz 
beschaffen kann. Warum dann auslöten? Da die Funktion immer mal wieder 
gekommen ist, glaube ich nicht an einen Totalausfall. Und da im Internet 
an unterschiedlichen Stellen von diesem Fehler berichtet wird, sollte 
sich doch der Fehler finden lassen. Meine Vermutung liegt irgendwo im 
Fertigungsprozess von damals. Diesen will ich natürlich nicht mehr 
optimieren, sondern eine Basis bilden, die vielleicht herumstehenden 
Schätzchen zu retten.

Gruß

Bernd

von Uwe (Gast)


Lesenswert?

Leiterbahn gebrochen oder Kalte Lötstelle ?
Na dann kannst du ja erstmal alle Pins Nachlöten bzw. alle Lötstellen 
auf der Leiterkarte. Steckverbinder kann man auch alle Nachlöten und 
Kontakte reinigen. Wenn keine besserung mußt du halt suchen welche 
leiterbahn nen Riss hat. Elkos kann man sich auch mal anschauen.

von Bernd B. (Gast)


Lesenswert?

Hallo Experten,

danke noch einmal für die Diskussion. Seit heute Nachmittag läuft die 
Kiste wieder mit gewünschter Performance.

Ich habe die Leiterplatte im Bereich um den Controller für den ADB und 
die Uhr gespült. Zwar konnte ich vorher keine Verschmutzung erkennen, 
der Kontakt ist jedoch wieder hergestellt und ADB mit Tastatur und Maus 
läuft wieder.

Es muß etwas mit dem Reset-Mechanismus des Controllers (nicht der PPC) 
zu tun haben. Allerdings glaube ich mittlerweile auch nicht mehr an die 
Aussage auf den Internetseiten hinsichtlich 6805-Prozessor. Ich habe 
keinen mit 28-pin und 32kHz Takt auf den obigen Pins, sowie Vdd auf 27 
und ADB (also open collector I/O) auf  Pin 20 gefunden. Ebenso müßte 
irgendwie der Prozessortakt intern erzeugt werden, da ich kein 
"Megahertz-Signal" an anderen Pins messen konnte. Die 68xx Familie habe 
ich soweit von den Funktionsblöcken angesehen und keine geeignete 
Übereinstimmung gefunden. Hier setzte meine ursprüngliche Frage an.

Da es Anleitungen zum ADB mit den Prozessor von Microchip im I-Net gibt, 
hatte ich diese Variante ja ebenfalls geprüft, aber nichts 
Übereinstimmendes gefunden.

Ich halte einmal die Augen und Ohren offen und bin gespannt, wie lange 
die "Fehlerbereinigugn" nun hält.

Vielleicht stößt ja in den nächsten Monaten oder Jahren jemand auf 
diesen Thread - Kontakt ist dann immer noch möglich, entweder um mir 
Klarheit zu verschaffen oder ich würde mit Referenzmessungen bei einer 
Fehlersuche aushelfen, sofern meine Kiste dann noch läuft. Übrigens an 
Pin 19 sehe ich das Framing invertiert ohne Response von den Devices. Ob 
sich das jemand zum Debuggen darauf gelegt hat?

Wie auch immer, die Fehlersuche hat erbracht, dass ich die Kiste 
vollständig zerlegt hatte. Hut ab !!! Das Gerät ist super aufgebaut. 
Auch der ADB ist schon eine feine Sache. Schade, dass es den heut nicht 
mehr gibt. Also allen Respekt für dieses Gerät den Entwicklern 
gegenüber! ... und schade, dass man die Schaltbilder nicht findet.

So, genug des Lobes. Die Entwickler sind sicher schon alle im Ruhestand 
auf ihrer Ponderosa oder sonst wo ...

Gruß

Bernd

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Wenn du Geräte für den ADB bauen willst - Infos inkl. Timing finden sich 
in Addison Wesley 'Macintosh Family Hardware Reference', wo der 
klassische Mac (MacPlus), der SE und der Mac II beschrieben werden. Sie 
lassen sich nicht über die Chips aus (deswegen konnte ich da nicht 
helfen), aber Timing und Kommandos usw. werden beschrieben. Der Mac SE 
war ja der erste mit ADB (und hat mir viele Jahre treue Dienste 
geleistet).

Ich habe mir damals mal eine ADB Tastatur mit eingebautem Sequenzer 
gebaut, und eine Tastatur mit ADB aus einem alten Multitel 
Bildschirmtext Gerät liegt hier immer noch rum.
Eine Frage bleibt: Was machst du mit dem alten Schlachtschiff 
eigentlich?

von Bernd B. (Gast)


Lesenswert?

Hallo Matthias,

das Internet macht es heute relativ einfach: In der AN591 von Microchip 
ist der ADB aus meiner Sicht ausreichend genau beschrieben. Diese 
basiert auf den Originaldaten (mit Erlaubnis zur Veröffentlichung von 
Apple) des "Erfinders" des Bus-Systems. Alle weiteren Veröffentlichungen 
lassen sich dann weitestgehend wieder auf dieses Papier zurück führen. 
Man muss nur die Literaturangaben weiter bis hin zum Ursprung verfolgen. 
Heise oder C't hat auch einmal eine Schaltung zum Umschalten von 
ADB-Devices vorgestellt. Diese Schaltung war ebenfalls zum Nachbauen, 
nachbauen will ich aber nichts.

Durch den geglückten Versuch das Ding wieder zum Leben zu erwecken 
konnte ich in der Geschichte um dieses Gerät viel nachlesen. Man muß es 
sich einmal vorstellen: Da findet jemand, dass die vielen Kabel auf dem 
Schreibtisch neben dem Computer echt blöd sind, geht für einen Monat 
nach Hause und kommt dann mit der Bus-Lösung wieder in die Firma - hat 
sich das Prinzip, die Hardware, die Software und natürlich das Protokoll 
ausgedacht. Und man darf nicht vergessen in welcher Zeit das geschah! 
Solche Leute wünsche ich mir manches Mal in der Geschäfts- oder 
Firmenleitung.

Daneben muss man sich das Gerät einmal ansehen: Der mechanische Aufbau, 
die modulare Bauweise, die Verkabelung und vor allem die Schirmung am 
Gehäuse!!! Selbst das Diskettenlaufwerk ist mit einem Blech geschirmt, 
nur für die Diskette findet sich ein kleiner Schlitz zum Einführen. ... 
usw.

Den Quatsch, dass man die Disketten mit dem Daumen oder Finger aus 
Computern herausdrücken muss, verstehe ich bis heute nicht.

Wenn damals nicht so viele Leute auf die zweitbeste Technik gesetzt 
hätten, wo wären wir mit den Rechnern heute?

Okay, was mache ich mit dem Teil? Ich sehe mir die alten Programme an 
und versuche zu verstehen, was die Leute sich damals dabei gedacht 
haben. Die Ideen von damals lassen sich heute teilweise echt prima in 
Projekten mit den Mikroprozessor-Applikationen verwenden (ich arbeite 
fast ausschließlich mit dem MSP430). Auf den Seiten zu alten Dokumenten 
von IBM findet man übrigens auch sehr gute Ideen, die man heute nicht 
wieder neu erfinden muss. Z.B. habe ich in einem meiner Projekte auf dem 
Display ein polares Diagramm OHNE Verwendung von trigonometrischen 
Funktionen realisiert. Wer weiß, wie man Kreise oder Kreisbögen ohne 
Sinus/Cosinus (auch keine Tabellen) konstruiert, wird jetzt nicken. Der 
Bildschirmaufbau geht einfach "flupp" und ohne viel Rechenleistung.

Also das sind nur Beispiele, das Spektrum ist ein bisschen größer...

Bester Gruß nach Berlin

Bernd (aus Westdeutschland)

von Guido Körber (Gast)


Lesenswert?

Der CUDA ist so weit ich mich erinnere einer der 68HC05 mit Masken-ROM 
zu dem es keine exakte Äquivalenz als 68HC705 gibt. Also wird das 
Ersetzen davon nicht klappen, selbst wenn man einen pingleichen HC705 
findet.

Da der CUDA nicht nur den ADB, sondern auch diverse nicht näher 
dokumentierte Funktionen steuert wird das Nachentwickeln davon auch 
keine Option sein. Fällt so ein Teil wirklich mal aus, sollte man 
entweder den Rechner verschrotten, oder den Chip aus einem anderen Mac 
"gewinnen".

von Bernd B. (Gast)


Lesenswert?

... im 6100/60 ist kein CUDA eingebaut!

Der Thread kann auch geschlossen werden.

Gruß

Bernd

von Bernd B. (Gast)


Lesenswert?

... bin jetzt selber ins Schlingern gekommen. Der Cuda wird benannt. Wie 
auch immer, es war nie die Absicht diesen Chip zu kopieren.

Bernd

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.