Suche Infos über unbekannten MC6800 Mikrocomputer von zirka 1977

  • Hallo Zusammen,


    vor kurzem bin ich bei Ebay-Kleinanzeigen über einen ziemlich schicken Computer mit MC6800 Prozessor gestolpert.

    Äußerlich besitzt der ein Tastenfeld mit 25 Tasten, 8 Hexadezimal-Anzeigen und zwei 8-Bit Ein-/Ausgabeports.

    Im Inneren stecken zwei Europakarten, die erste mit einem MC6800 CPU, MC6871 Taktgenerator, MPS6532 RIOT (RAM, Input/Output, Timer), vier MCM6810 RAMs, einem PROM der für die Adressdekodierung zuständig ist (und dessen Inhalt im Anhang zu finden ist) sowie einigen Bustreibern (auch aus der MC68xx Serie) und Logikchips:

    Die zweite beherbergt das Tastenfeld sowie die Hexadezimalanzeigen. Die Anzeigen sind offensichtlich vom Typ TIL311, auf den Tastern steht "A1001 2.78" und zudem ist noch ein MC6820 PIO mit zwei Logikchips drauf:

    Diese beiden Karten sind mit einer handverdrahteten Busrückwand verbunden (Mittlere Buchse ist für CPU-Karte, untere für Ein-/Ausgabe), von der 16 Drähte zum Ausgangsport sowie den LED-Treibern gehen:

    Außerdem ist eine fünfpolige DIN 41524 Buchse vorhanden die mit nichts verbunden ist, sowie eine weitere VG-Leiste an der Busrückwand (oberste) in der keine Karte steckte.

    Auf der CPU-Platine lassen sich lediglich die Schriftzüge "L57.8060.191.01/01" und "B57.8060.191.01" finden, auf der Ein-/Ausgabeplatine nur "L57.8060.095.01" und "B57.8060.095.01". Die Präfixe stehen dabei offensichtlich für Leiterbahn- und Bestückungsseite.

    Mir ist außerdem ein kleines Logo auf der Rückseite beider Platinen aufgefallen (Am besten in ioback.jpg zu erkennen, gleich links vom Schriftzug), kennt das irgendjemand?


    Vielleicht ist es einigen schon aufgefallen, auf der CPU-Platine fehlen vier Chips. Zuerst hatte ich gehofft, dass diese vier Sockel für alternative RAM-Chips vorgesehen sind und das Programm im PROM gespeichert ist. Also habe ich den Computer erstmal mit Spannung versorgt, und habe mich zu früh gefreut als die LEDs sowie Anzeigen angingen. Leider tut kein Tastendruck außer "RES" etwas (der völlig überraschenderweise und ungeahnt den Computer resettet). (Dass die letzten beiden Anzeigen im ersten Bild "FF" anzeigen ist reiner Zufall, nach einem Reset gingen die auch auf "00")

    Also habe ich nochmal die vier leeren Sockel unter die Lupe genommen, und dessen Pinout aufgeschrieben. Dabei kam heraus, dass dort eigentlich vier weitere PROMs mit einer Größe von 256*4 stecken sollten, in denen wahrscheinlich der Code war:

    (Passende PROM-Typen können auf dieser Seite gefunden werden)


    Ich möchte diesen Computer unbedingt wieder in Betrieb nehmen, zumal man nicht alle Tage einen mit so schönen Bauteilen sieht. Leider habe ich im Internet nach stundenlanger Suche nichts darüber finden können, und hoffe jemand von euch da draußen weiß etwas dazu.

    Wenn auch das nicht der Fall ist werde ich wohl oder übel mal ein bischen 6800 Assembler Nachhilfe nehmen müssen...

    Apropos, weiß jemand für was die verschiedenen Tastenbeschriftungen (J0, SS, ACCU (Accumulator Register?), X-REG (Index Register?), PC (Program Counter?), STACK (Stack Register?), BEG (Beginn?), END (End?), PNCH (Punch?), LOAD (Load?), GO (Go?), BRA, BKPT, KILL, UP00, UP10, UP20, UP30, ↓, -1, +1) stehen könnten?


    Schonmal vielen Dank im Voraus,

    Magnus

    • Offizieller Beitrag

    Das sieht man selten, MCM6810 sind 128 Byte RAMs... die ROMs sind 82S129 Bipolare PROMs... In den 70ern kam das zu Beginn mal vor, dass Programm-ROMs nicht in EPROMs, sondern in kleinen PROMs abgespeichert wurden - bei irgendeinem Raumfahrt-Rechner z.B. und bei einigen derersten Arcade-Games.


    82S129 Rohlinge habe ich da, ebenso Programmer dafür - aber der Code fehlt dir...


    Mitglied im Verband der nicht anonymen Elektroschrottabhängigen


  • Das sieht man selten, MCM6810 sind 128 Byte RAMs... die ROMs sind 82S129 Bipolare PROMs... In den 70ern kam das zu Beginn mal vor, dass Programm-ROMs nicht in EPROMs, sondern in kleinen PROMs abgespeichert wurden - bei irgendeinem Raumfahrt-Rechner z.B. und bei einigen derersten Arcade-Games.


    82S129 Rohlinge habe ich da, ebenso Programmer dafür - aber der Code fehlt dir...

    Ja, bei den 6810 sollte man sich nicht von der Gehäusegröße täuschen lassen, da sind ja quasi alle Bits einzeln herausgeführt...

    Dass Programme in PROMs anstatt EPROMs gespeichert werden habe ich das erste mal beim Apple 1 gesehen, hätte ich das nicht vorher gewusst würde ich wahrscheinlich immernoch rätseln wozu die PROMs da sind. Ich habe auch noch drei TBP24SA10N PROMs hier, die scheinen auch eine Alternative zu sein. Leider einer zu wenig und mein Programmiergerät unterstützt die nicht.
    Ich würde allerdings vor dem brennen von PROMs sowieso erstmal ein Adapter auf ein EPROM machen, bevor man ausversehen vier PROMs rausschmeißen kann.

  • Magnus
    in dem MC6800PROM.bin steht ja nicht wirklich was drin (nur 0C und 0F) :(

    Das stimmt, das ist auch kein Programmm sondern dient vereinfacht gesagt dazu verschiedene Teile des Computers zu aktivieren. Je nachdem wo die CPU gerade im Speicher liest/schreibt wird zum Beispiel RAM, ROM oder Ein-/Ausgänge aktiviert. Die Adresseingänge des PROMs sind an die Adressausgänge vom CPU verbunden und die Datenausgänge des PROMs mit entsprechenden Aktivierungseingängen von z.B. RAM oder ROM. Deshalb sieht die .bin Datei auch so "komisch" aus (Außerdem sind die Adressleitungen etwas durcheinandergewürfelt, deshalb bringt die Datei im Moment kaum etwas, ich muss noch herausfinden wie ich Adressen in einer .bin Datei vertauschen kann).

    Kannst du ausmessen, oder sagen, wo die Eingänge/Ausgänge hinführen, oder einen grobe Skizze erstellen

    Jup, das mache ich morgen mal, dann wird die .bin Datei auch klarar für euch, so bringt die ja doch recht wenig... :fp:

  • Guten Abend


    Meinst du dieses als evt. Hersteller Logo,

    Wenn ja, denke ich eher es ist das Zeichen für die Schutzklasse,

    Oh, mir fällt gerade auf, dass ich deine Nachricht übersehen habe, entschuldige bitte... :fp:

    Ist es denn wirklich ein Zeichen einer Schutzklasse? Wäre irgendwie komisch wenn von allen Infos oder Logos die man hätte auf die Platine drucken können gerade das die wichtigste Sache wäre... :/ Hier nochmal ein schärferes Bild:

  • Guten Abend


    Wie gesagt nur eine Vermutung, weil alles was du bisher gezeigt hast, mit Schutzkleinspannung betrieben wird,


    War halt damals üblich, oder sogar als VDE Design Vorlage vorgeschrieben oder empfohlen, dies auch auf der PCB anzubringen,


    Anhand dem Nummernschlüssel tippe ich auf ein serienmäßige Verkaufsprodukt, also nicht für Intern gedacht, oder designt,


    Hast du noch weitere Infos vom Vorbesitzer aus welchem Industrie Bereich die Baugruppe stammt, (SPS, ggf. CNC Steuerung,),


    Ich habe aber noch keine klare Vorstellung

    -( Direkte Adressmanipulation, mit ändern, speichern wäre denkbar, aber über den ursprünglichen Sinn und Zweck bin ich noch in der Vorstellungsphase aber mir fehlen noch ein paar Bausteine, auch weil vermutlich eine Karte fehlt,

  • Wie gesagt nur eine Vermutung, weil alles was du bisher gezeigt hast, mit Schutzkleinspannung betrieben wird,


    War halt damals üblich, oder sogar als VDE Design Vorlage vorgeschrieben oder empfohlen, dies auch auf der PCB anzubringen,


    Anhand dem Nummernschlüssel tippe ich auf ein serienmäßige Verkaufsprodukt, also nicht für Intern gedacht, oder designt,

    Ich hab mir mal die Schutzklassen-Symbole angeguckt, und ich muss dir recht geben, das sieht sehr ähnlich aus! Scheint aber trotzdem nicht ganz zu passen.

    Ich gehe auch davon aus, dass es ein Serienprodukt ist, für ein Prototyp "sieht die Platine zu gut aus", und die Schriftzüge wären auf einem Prototyp wohl auch nicht drauf gewesen.

    Hast du noch weitere Infos vom Vorbesitzer aus welchem Industrie Bereich die Baugruppe stammt, (SPS, ggf. CNC Steuerung,),


    Ich habe aber noch keine klare Vorstellung

    -( Direkte Adressmanipulation, mit ändern, speichern wäre denkbar, aber über den ursprünglichen Sinn und Zweck bin ich noch in der Vorstellungsphase aber mir fehlen noch ein paar Bausteine, auch weil vermutlich eine Karte fehlt,

    Nein, leider überhaupt keine. Der Vorbesitzer hatte dieses Teil auf einem Flohmarkt gekauft um die Taster für ein anderes Projek zu benutzen, vom ursprünglichen Besitzer ist also wohl jegliche Spur verloren.

    Ich würde einfach annehmen, dass der Computer rein aus Hobbyzwecken zusammengebaut wurde, um vielleicht extern ein paar Relais anzusteuern oder so... :nixwiss:


    Ich hatte den Gedanken, dass die fehlende Karte vielleicht den ROM beherbert hat, aus welchem Grund sonst würde man sonst nicht wiederverwendbare PROMs entfernen. Ich werde morgen auch mal gucken welche Signale an die dritte VG-Leiste verbunden sind, dann sollte sich der nutzen hoffentlich klären. Jedoch kann ich jetzt schon sagen, dass insgesamt nur 14 Signale verbunden sind, bei 8 Daten-Bits und nur einem Steuersignal (z.B. ~OE) würden schon nur noch 5 Adresssignale übrig bleiben, also 32 Byte Speicher...

    Naja, sieht man morgen.


    Übrigens vielen Dank für deine Hilfe :):thumbup:


    Ich bin gerade dabei die Ausgänge vom PROM zu verfolgen (Eingänge habe ich schon herausgefunden), und einige gehen zu den (Signetics???) 7608 N74L S10A Chip. Leider konnte ich über die Google-Suche zu wenig sinnvollen Ergebnissen kommen, weiß jemand was 7608 für ein Chip ist? 7408 vielleicht?

  • Ich bin gerade dabei die Ausgänge vom PROM zu verfolgen (Eingänge habe ich schon herausgefunden), und einige gehen zu den (Signetics???) 7608 N74L S10A Chip. Leider konnte ich über die Google-Suche zu wenig sinnvollen Ergebnissen kommen, weiß jemand was 7608 für ein Chip ist? 7408 vielleicht?

    Manchmal... :platsch:

    7608 bezieht sich wohl auf Jahr '76 Woche 8 und wenn man N74L S10A zusammen schreibt wird ein 74LS10 draus.

  • So, ich hab die Schaltung mal aufgezeichnet. Nicht schön, aber selten:

    Der Bus Pin A30 ist mit der Ein-/Ausgabekarte Pin C24 verbunden, der wiederum mit Pin 23, ~CS2 des PIO verbunden ist.

    "Bus Data OE/~IE" ist mit den Pins 1&15 der MC6880 Transceiver verbunden. Diese tun nichts anderes als die acht Daten-Pins des CPU zum Bus weiterzuleiten. Bei einem Low-Pegel dieses Signals werden Daten vom Bus gelesen, bei einem High-Pegel werden Daten zum Bus ausgegeben.

    Demnächst gibt es noch einen genauen Schaltplan der Bus-Transceiver, dann wird das klarer.:thumbup:


    Dass Go wahrscheinlich zum starten eines Programms ab eienr bestimmten Adresse verwendet wird ist wohl halbwegs klar, aber J0 und SS klingt nach irgendwas 6800-spezifischem...:/

  • Vielleicht sollte ich zur .bin Datei noch sagen, dass ich den PROM mit einem Adapter auf einen 2716 ausgelesen habe, welcher im Gegensatz zum PROM viel größer ist und 8- anstatt 4-Bit. Sprich:

    Es sind lediglich die ersten 16 Zeilen (von 00H bis FFH) interessannt, danach wiederholt sich der Inhalt einfach.

    Da A7 dauerhaft auf GND liegt, kann man die obere Hälfte ebenfalls ignorieren (das wäre dann ein Adressraum von 00H bis 7FH).

    Und nicht vergessen: Der PROM hat nur 4 Bit, die .bin-Datei allerdings 8. Deshalb kann die erste Hälfte eines Bytes (In diesem Fall immer die "0") ignoriert werden.

    Die Memory-map habe ich schon relativ fertig, aber keine Garantie dass die so fertig ist. Ich mache gezwungenermaßen nochmal einen kompletten Schaltplan in KiCad, dann wird das sowieso besser verständlich.

    AdresseBezeichnung
    0000H-007FHRAM
    0080H-00CFHRIOT
    0100H-01FFHPIO
    FF70H-FFFFHROM


    Eigentlich wollte ich die aktuelle Notiz nochmal einscannen, aber gerade streikt der Scanner und die Notiz ist sowieso total unleserlich...

  • SS "böse Abkürzung" könnte in diesem Fall aber für Single Step stehen.

    Über den Tasten 0-F

    BRA Branch Berechnung für den Branch Befehl

    BKPT Breakpoint setzen

    KILL Alle Breakpoints löschen

    PNCH Punch Speichern der Daten auf ...

    LOAD Laden der Daten von ..


    Zu J0 fällt mir momentan auch nichts ein.

  • Ahhh - das klingt schonmal ganz plausibel! :)

  • Da man als Abiturient sowieso nicht genug zu tun hat habe ich in den letzten Tagen mal einen (hoffentlich) kompletten Schaltplan der CPU-Platine angefertigt.

    Mit dabei ist auch das Pinout der VG-Leiste sowie eine detaillierte Memory-Map:


    Der volle Schaltplan ist als PDF im Anhang. Wer auch die KiCad-Dateien haben möchte kann gerne Bescheid sagen.:thumbup:


    Best Grüße,

    Magnus

  • Ich habe gestern und heute mal etwas Zeit investiert und einen Adapter der PROMs auf einen EPROM gebastelt. Adress- und Datenbus habe ich einfach 1:1 verbunden, bei ~CE, ~OE und A8 musste ich etwas tricksen (Ich hoffe das kommt so hin...):

    - ~CE des EPROM habe ich mit ~CE1 der PROMs verbunden (Dieses Signal wird aktiviert wenn in der obigen Memory-Map "ROM" aktiv ist)

    - ~OE des EPROM habe ich ebenfalls mit ~CE1 des PROMs verbunden, damit der EPROM Daten ausgibt sobald er ausgewählt wird (so wie bei den PROMs, wenn ich die Schaltung richtig verstehe)

    - A8 des EPROM habe ich mit ~CE2 der PROMs U4 bzw. U5 verbunden (Im Schaltplan mit ROM_~LOW betitelt), da dieses Signal aktiviert ist sobald A8 (und R/~W? Das muss mir einer erklären... :grübel:) aktiviert ist.


    Jetzt fehlt (hoffentlich) nur noch das wichtigste... das Programm. Mit MC6800 Asembly habe ich mich noch nie beschäftigt, aber ich würde mich gerne mal ein bischen damit auseinandersetzen. Kann mir jemand einen Compiler oder vielleicht sogar Simulator für MC6800 Assembly empfehlen?


    Beste Grüße,

    Magnus