Vom 8032 zum MMF 9000 - ein Thread mit (hoffentlichem) Happy End! :)

  • Bastler, CBM-Quäler, Kenner, Verrückte und Horter aufgemerkt!


    Seit langem reift in meinem verstörten Oberstübchen der Gedanke, Besitzer eines MMF 9000 werden zu wollen.

    Jeder CBM einmal- so mein Credo. Nun, lassen wir extrem Seltenes außen vor- und widmen wir uns den Geräten, die noch so halbwegs bekannt waren.

    Dazu gehört unter anderem der

    :love:

    Leider sind diese Geräte GOLDSTAUB. Falls doch einmal angeboten, werden schwindelerregende Preisregionen erreicht. Regionen, in welche ich dank meiner jungen Familie und den finanziellen Verpflichtungen, die diese mit sich bringt, so schnell nicht wieder vordringen kann.

    Nachdem for(;;) und andere Bastler (so denke ich?) hier absolut VERRÜCKTES leisten, besteht glücklicherweise die Möglichkeit eines Nachbaus.

    Long story short: Aus einem 8032 soll ein MMF 9000 werden! Und zwar so, dass man zumindest von außen nicht erkennen kann, dass es sich um einen Nachbau handelt.


    Dies bedingt einige (zwanghafte) Vorgehensweisen:

    - Erstellen der Labels für Vorder- und Rückseite in Inkscape (Vorlage von Jogi - HERZLICHEN DANK)

    - Nachdruck der Tastaturaufkleber (wohl für die anderen Programmiersprachen/Systeme, welche auf dem MMF laufen können)

    - Nachfertigen der Halter für die Schalter seitlich rechts

    - Nachbau der µMMF-Platine von for(;;)

    - Finden eines adäquaten 8032, in den der ganze Schamott aus digitalem Irrwitz einziehen kann


    Ja- es bleibt ein Nachbau. Dennoch allemal besser, als keinen MMF hier zu haben. Wohlgemerkt wüsste ich nicht auch nur im Ansatz, was man damit überhaupt machen konnte/kann! :fp:

    Egal- das Sammlerherz befiehlt, ich folge ihm artig. Mit EURER Hilfe, Foristen! So hoffe ich wenigstens (ganz kleinlaut). angst


    Den ersten Punkt der obigen Checkliste (zum Teil), sowie den letzten habe ich bereits in Angriff genommen.

    Hier ist er, der "adäquate 8032":


    160 Flocken aus den Kleinanzeigen. So weit- so dreckig:



    Also war ein Großputz angesagt. So ein 8000er ist in Minutenschnelle entkernt und ich bin relativ "fit" drin. Also ging alles leicht von der Hand:


    Natürlich war er auch defekt, womit jedoch zu rechnen war.


    Die Ursache war schnell gefunden, nachdem ich das Board in meinen funktionsfähigen 8032 gehängt hatte. Die beiden 7805-Spannungsregler hatten beschlossen, nach >40 Jahren nicht mehr mitspielen zu wollen. Einem netten Mitforisten habe ich zu verdanken, dass zwei NOS-Regler Einzug halten konnten, so dass nach einem frischen Bad und recapping alles tacko war und mich das Board mit seinen vollen 32k, sowie READY begrüßte:


    Also ging es an weitere Restaurationsarbeiten, wie bspw:

    - Grundreinigung Gehäuse

    - Ausbessern von Kratzern und Lackabplatzern

    - Ausbessern der innen angebrachten Alufolie (mit selbstklebendem Aluband)

    - Recapping des Monitorboards inkl. Dusche, Röhrenreinigung, etc,etc,etc...

    - Test des Trafos

    - Zusammenbau dieses Konglomerats an allerlei verrückten Bauteilen


    Monitoreinheit:


    Rechner wieder vollständig, bis auf die Tastatur (ich hasse diese filigrane Zerlege- und Reinigungsarbeit):


    Die rechte Ecke des Unterteils war 5mm-groß angeschlagen- man sieht es quasi nicht mehr (mit Wattestäbchen RAL1015 aufgetupft):


    Hier ist er nun- bis auf die Tastatur in (fast) neuwertigem Zustand nach Abgleich und Justage des Bildschirms:


    Wie geht es nun weiter?

    - Tastatur von Richi reinigen und überholen (die im 8032 enthaltene hatte leider Kontakt mit Aceton... da sind viele Tasten regelrecht angeschmolzen)

    - Aufbau des µMMF von for(;;) - hier hoffe ich noch auf einen Teilesatz

    - Druckauftrag für die Labels (Frontlabel ist bereits beim Druckunternehmen zur Prüfung, da ich es wirklich authentisch haben will)

    - Anfertigen der Halterung für die seitlichen Schalter (evtl. 3D-Druck, idealerweise aber gebogenes Blech, so wie beim Original)

    - zig Kleinarbeiten


    Bleibt dran, ich halte euch hier auf dem Laufenden- und sage jetzt schon mal allen Helfern und Mitfiebernden HERZLICHEN DANK!

    Vielleicht erfüllt sich der Traum eines echten MMF dennoch irgendwann… solange soll es eben der Nachbau tun. ;)


    Frohes Fest,

    euer Bekloppter. :stupid:

  • Ich habe gerade gelesen, dass das MMF für Micro-Main-Frame stehen soll. Was haben die genommen, als ihnen das eingefallen ist? :D

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • oh ich denke da habe ich auch Bock drauf!

    Einen 8032 habe ich für eine solche OP über.

    Selbstverständlich würde ich die Daten für die Halterung der Schalter, sowie die Labels zur Verfügung stellen.

    Es ist ja ein Geben und Nehmen... schließlich bettle ich hier ja auch um die Teile für die Platine des µMMF. :)

    Mitforisten haben hier auch bereits sehr viel getan (Labels ausgemessen, Detailfotos des Originals zugeschickt, etc...).

    Ich habe gerade gelesen, dass das MMF für Micro-Main-Frame stehen soll. Was haben die genommen, als ihnen das eingefallen ist? :D

    Gute Frage- ich wüsste nicht mal, was ein Micro-Main-Frame überhaupt können müsste. :)

  • Ich habe gerade gelesen, dass das MMF für Micro-Main-Frame stehen soll. Was haben die genommen, als ihnen das eingefallen ist? :D

    Gute Frage- ich wüsste nicht mal, was ein Micro-Main-Frame überhaupt können müsste. :)

    Multi-User- oder Batch-Betrieb. Mit hoher Zuverlässigkeit und hohem Durchsatz. Nur eben in klein. :D

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • Gute Frage- ich wüsste nicht mal, was ein Micro-Main-Frame überhaupt können müsste. :)

    COBOL muss der können :fp:

    Und FORTRAN und andere 'Hochsprachen' - die Compiler der University of Waterloo waren allerdings eher für die Lehre gedacht und nicht für ein echtes Produktivsystem geeignet. Für die Unis war ein SuperPET aka MMF allerdings ein preiswertes System um Studenten den Zugang zu den gängigen Hochsprachen zu gewähren.

  • Das hat aber alles nichts mit Mainframes zu tun.


    Ok, ich sehe gerade, dass der schon 1981 rauskam. Ich hätte den auf später datiert. Zu dem Zeitpunkt war das schon ein ganz ordentlicher Rechner. ;)

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • Kurzes Update:


    Die Druckerei macht mir die Aufkleber (Frontlabel/Rückenlabel), ich muss jedoch mal mit einem Rechner vorbeikommen, um mit ihm die Details zu besprechen.

    Die Label liegen ihm bereits vor.

    Eine Folie mit Struktur kann er mir nicht anbieten, aber es wird halbwegs "echt" aussehen, da bin ich sicher. :)


    Die µMMF-Platine selbst ist leider noch nicht weiter, hier warte ich noch auf Hilfe. ;)


    Ich plane in diesem Zug übrigens gleich, mehrere Frontlabel-Varianten machen zu lassen. Wir werden sehen, ich halte euch auf dem Laufenden.

  • Ui ...könntest du dann bitte gleich auch nen Label (vorne) für meinen 4032 machen lassen?

    ..der is so nackich..


    ich bin signifikant genug:razz:

  • Billig wird das Ganze nicht, kann ich gleich sagen. ;)

    Alleine die Folie für das MMF-Frontlabel kostet >50€ im Einkauf.

    Für einen 4032(8032/96) braucht man silberne Folie, also eine andere- denn die für den MMF ist weiß.

    Will sagen: Bekommt man genügend Interessenten zusammen, sinkt der Preis. Für einige wenige Label hingegen wird es schön teuer.

    Im Falle des MMF ist mir das "egal"- der Nachbau ist in jedem Fall deutlichst günstiger, als ein echter Rechner.

  • Moin Matze CBM_Ba ,


    kann ich da auch was individuelles in Groesse und Form im Commo Style bekommen ?
    Da haette ich fuer eigene Projekte Interesse.


    Beste Gruesse.

    Servus Falco!


    Hmm... fragen kostet ja nie was, gell? ;)

    Allerdings warte ich erstmal, bis hier aus dem Forum Rückmeldung zum µMMF kommt.

    Falls ich keine funktionsfähige Platine zusammen bekomme, ist das Projekt gestorben- dann mach ich mir auch nicht die (Kosten-)Mühe, den Druckauftrag zu geben.

    Jetzt mal abwarten, würde ich sagen.


    Viele Grüsse,
    Matthias

  • Mitleser- und vor allem HELFENDE!


    Es gibt Neuigkeiten. Diese niederzuschreiben, ist nicht zwingend einfach- ich versuch's dennoch:


    for(;;) hat mir seine beiden aufgebauten µMMF-Platinen (einmal alte Variante, einmal neue) überlassen.

    Dafür nochmals hier HERZLICHEN DANK!

    Er ist einfach ein wenig eingespannt und kann/möchte hier nicht mehr weiter einsteigen- was ich absolut respektiere und verstehe!


    Als die beiden Platinen hier ankamen, waren sie nicht funktionsfähig. An der alten Version war ein Pin zum CPU-Sockel abgebrochen, diesen hat Richi wieder angelötet- alles gut.

    Bei der neuen Version war mittendrin ein IC defekt, weshalb auch diese nicht lief. Das dort verbaute 27C010 Eprom funktionierte nicht. Setzte man das 29C010 EEProm der neuen Platine ein, lief sie.

    Und jetzt kommts:

    Das Waterloo Menü erschien und man konnte die Programme (Basic, Pascal, Fortran, etc...) auch nachladen.

    Aber: Entweder hängt der Rechner nun gleich nach dem Ladevorgang, oder aber innerhalb der Programmiersprachen nach einiger Zeit von selbst. Er friert einfach ein.

    Laut Toast_r könnte es sich um ein Timingproblem handeln. Ich stelle außerdem noch etwas fest:

    Brenne ich ein 29C010 EEprom, funktioniert dieses genau EINEN Ladevorgang, danach sind die Daten da drin korrupt?

    Das Write Enable Pin (31) liegt auf +5V und sollte somit das EEprom vor versehentlichem Löschen/Umschreiben schützen.

    Dies klappt allerdings nicht. Mein Eprommer kann das IC allerdings nicht schreibschützen (soll wohl mit mancher Brennsoftware gehen?).

    Meiner Meinung nach sollte es sich aber doch überhaupt nicht löschen, wenn Write Enable auf +5V liegt?


    Nehme ich das von for(;;) mitgegebene EEprom (ein 29C010A), wird dieses zwar nicht gelöscht, der Rechner lädt die Software jedoch in bestimmt 9 von 10 Fällen auch nicht, bzw. hängt unmittelbar danach.


    Getestet haben wir dieses Phänomen mit zwei unterschiedlichen 8032ern, jeweils mit dem 8032090-Board und dem erforderlichen 16Mhz-Signal an Pin 35 vom CPU-Sockel.

    Toast_r berichtete auch von seiner µMMF, dass diese instabil lief.


    Mittlerweile ist funkenzupfer mit ins Boot geholt. Er möchte sich das Thema auch mal ansehen, wenn Zeit dafür ist.


    Generell möchte ich hier JEDEM Mitbastler mein herzliches Dankeschön aussprechen! Wahnsinn! for(;;) für die Boards und bereits viele Tips via PN, Richi für's Mitbasteln, Toast_r , funkenzupfer , fachat (ich überrasche dich einfach auf der CC mit dem Teil :D ), etc... ich habe sicherlich noch Leute vergessen.

    Wenn es wirklich ein Timingproblem sein sollte, müsste es sich eigentlich lösen lassen... allerdings: Nicht von mir, ich bin dazu einfach überhaupt nicht "hell" genug. ;)


    Stellt euch mal vor: Ein MMF9000 im Nachbau!!! Es wäre ein TRAUM!

    Ich lass die Labels nachdrucken, wenn das Ding läuft! Jeder Interessent und Mithelfer bekommt diese natürlich dann gratis. ;)


    Auf bald, bleibt dran!


    Viele Grüsse und einfach DANKE,

    Matthias

    Einmal editiert, zuletzt von CBM_Ba ()

  • Das Write Enable Pin (31) liegt auf +5V und sollte somit das EEprom vor versehentlichem Löschen/Umschreiben schützen.

    Wenn ich das richtig sehe, ist WE Lowaktive - d.h., Du musst es auf GND setzen um den Inhalt zu schützen!


    :)Franky

    Habe Pin 31 grad auf GND gelegt (umgebogen und mit Clip auf Masse) -> läuft überhaupt nicht und verliert sofort den korrekten Inhalt. ;)



    Menü geht jedesmal nach dem Neuprogrammieren:



    Und das Nachladen so lala- hier hängt der Rechner nach dem Druck auf Return:



    Wie gesagt: Ich kenne mich damit leider nicht aus- vielleicht wird das EEProm auch bewusst benutzt, um Daten darin zu "bunkern", wenn Programme nachgeladen werden? Fakt ist: Wenn ich das Nachladen von Programmen 1-x mal versuche, geht nicht mal mehr das Waterloo Menü auf.

  • Ich hab mir mal das Datenblatt von dem 29C01A angesehen.

    Da muss WE auf High liegen damit der Chip nicht beschrieben werden kann!

    Liegt WE über einen Pull Up auf High oder direkt?


    Möglicherweise ist die Spannung an dem µMMF nicht stabil genug?

    So das der Chip Spannungsschwankungen als Programmierzyklen ansieht.


    Das sind nur Vermutungen, ich kenn mich mit der Erweiterung leider nicht aus.

  • Die Spannungsversorgung werde ich mal mittels Labornetzteil extern einspeisen, das ist ein guter Tip. Und evtl. einen Elko zusätzlich installieren.

  • Hätt ich jetzt auch drauf getippt

    "Program inhibit— holding any one of OE
    low, CE high or WE high inhibits program cycles. (d) Noise
    filter— pulses of less than 15 ns (typical) on the WE or CE
    inputs will not initiate a program cycle."

    -> ab noise von länger als 15ns ist also die Gefahr, dass er es als HIGH->Low transistion zum Auslösen des Schreibens sieht.

    Liegt CE auch high? Gibt einen decouplingcap nahe des Chips?

  • Nur mal rein Interesse halber und ohne den Schaltplan zu kennen. Wird da wirklich ein EEPROM verwendet? Kein EPROM?

    Verwendet man ein 27C010, läuft das µMMF nicht, bzw. nur im 6502-Modus (also exakt so, wie mit einem korrupten 29C010), dies hat Nils noch getestet.

    Wir haben das 27er dann auch mal neu gebrannt -> läuft nicht. Evtl. die Zugriffszeiten?

    Ich habe ja versehentlich das 29C010A mit meinem Eprommer gelöscht... hoffentlich kann man das µMMF generell mit einem 29C010 ohne "A" überhaupt verwenden- denn nur diesen Typ kann ich mit meinem Eprommer brennen?

    Nichtsdestotrotz lief es auch mit dem 29C010A nicht stabil.


    Hier ist nochmal das GitHub zu diesem wirklich genialen Projekt:

    GitHub - nils-eilers/uMMF: Upgrades your CBM 8032 to a SuperPET
    Upgrades your CBM 8032 to a SuperPET. Contribute to nils-eilers/uMMF development by creating an account on GitHub.
    github.com


    Und hier sieht man, dass Write Enable auf High (5V) liegt, sowie ein Decoupling Cap (C8) sehr nahe dran ist:


    CE geht auf einen Pin des CPLD:



    Ich sollte in Summe erwähnen, dass die Platinen bei for(;;) einwandfrei funktioniert haben- zumindest immer über einen Zeitraum von länger 1h am Stück.

    Dies klappt hier mit zwei 8032ern leider nicht (weder mit der alten Platinenrevision, noch mit der neuen).


    Es bleibt also spannend. :)

  • Und hier sieht man, dass Write Enable auf High (5V) liegt, sowie ein Decoupling Cap (C8) sehr nahe dran ist:

    Sehe ich hier nicht. Hast Du /WE von U5 aufgetrennt oder weggebogen und auf +5V gelegt? Ansonsten geht das ja auf das RAM und auf U4 und wird von diesem, wie auch immer, angesteuert.


  • Sehe ich hier nicht. Hast Du /WE von U5 aufgetrennt oder weggebogen und auf +5V gelegt? Ansonsten geht das ja auf das RAM und auf U4 und wird von diesem, wie auch immer, angesteuert.

    Verdammt, du hast absolut recht!

    Ich habe einfach schnell eine unbestückte Platine genommen- und bin dort wohl dank des Kondensators eine Pinreihe verrutscht!

    /WE liegt hier:



    Fraglich, weshalb Nils diesen Pin nicht auf 5v gelegt hat... evtl., weil während des Betriebs doch etwas ins EEprom geschrieben werden soll?

    Dann würde es auch nicht helfen, diesen Pin auf 5V zu legen... da sonst diese Funktion (welche auch immer) nicht mehr möglich wäre...

  • Genau, laut Schematic liegt ~{WE} zusammen mit dem ~{WE} des 625812A auf der GR/~{W} Line am CPLD


    Heisst wenn ins Ram geschrieben werden soll geht das ROM auch in den schreibmode.
    Einfach mal am ROM den Trace durchtrennen und nach 5v legen mit einem Bodge?

  • Einfach mal am ROM den Trace durchtrennen und nach 5v legen mit einem Bodge?

    Trenn mal noch nichts durch. Du verwendest doch sicherlich Sockel - biege das Pin /WE weg und lege es auf 5V, das ist reversibel ;)

    Ich hab soeben genau das versucht.

    Ergebnis: Jedes Programm lässt sich zwar vom Menü aus nachladen, hängt dann aber vor der Ausführung (wenn der Ladevorgang beendet ist). :(

    Der einzige Unterschied: Das EEprom löscht/verändert sich jetzt nicht mehr, und das Menü funktioniert auch nach mehrmaligem Ladeversuch.

  • Ergebnis: Jedes Programm lässt sich zwar vom Menü aus nachladen, hängt dann aber vor der Ausführung (wenn der Ladevorgang beendet ist). :(

    Das wäre jetzt wieder was für den Logic Analyzer, um zu sehen, was da so passiert. Denn nichts tun tut die CPU (welche auch immer) nicht. Irgendwo dümpelt sie vor sich hin (außer, sie macht HALT :) )

  • Das wäre jetzt wieder was für den Logic Analyzer, um zu sehen, was da so passiert. Denn nichts tun tut die CPU (welche auch immer) nicht. Irgendwo dümpelt sie vor sich hin (außer, sie macht HALT :) )

    Oh mei... da bin ich ganz sicher komplett raus. :D


    Ich stelle mir hier weitere Fragen:

    - gibt es einen relevanten Unterschied zwischen 29C010A und 29C010?

    - weshalb lief die Platine bei Nils, während sie bei Richi und mir mit zwei unterschiedlichen Rechnern nicht läuft?

    Bei Toast_r lief das Teil, aber ebenfalls instabil.


    Bei Nils lief die neue Version der Platine (wie in GitHub zu sehen und hier auch grad im Rechner) dann mittendrin auch nicht mehr, da hatte sich das 29C010A zerstört (evtl. einfach durch das lange Nichtbenutzen und in China gekauft. Es lies sich nicht mehr beschreiben).

    Ein durch ihn testhalber eingesetzter 27C010 lief überhaupt nicht (müsste logisch sein, da dieser ja nicht in der Schaltung beschrieben werden kann, falls dies notwendig sein sollte). Da ging nichtmal das Menü auf.


    Die alte Platinenversion lief bei ihm, bis das PIN zum CPU Sockel des Rechners hin abgebrochen ist.

    Dieses Pin haben wir bei Richi wieder korrekt angelötet, danach lief diese Platine auch- aber eben sehr instabil.

    Beide Platinen hatten das 29C010A Eprom drin, welches noch funktioniert hat (wechelseitig mal in die alte, mal in die neue Platine eingesteckt).

    Immerhin kam man damit manchmal bis in die Programmiersprachen rein.

    Mit dem 29C010 ohne A klappt dies jetzt quasi nicht mehr.

    Timing? Elko zusätzlich dran? Noch ein Kerko?

    Ein Test mit Labornetzteil hat übrigens keinen Unterschied ergeben.

  • Oh je. Ich glaube, da muss man fast mit schweren Geschützen wie Oszi und Logic Analyzer ran, vor allem, wenn es evtl. Timing-Probleme gibt.

    Was ich als Unterschied vom 29C010A und 29C010 so auf die Schnelle gesehen habe ist halt die Zugriffszeit: 70ns zu 120ns, was doch relativ viel ist. Aber was da sonst noch unterschiedlich ist :ka:


    Ich würde es nochmal mit einem neuen und frisch geschriebenen 29C010A versuchen, bei dem /WE auf +5V liegt. Ich vermute, dass der Flash einfach tot geschrieben wurde.

    Ist halt alles nur Vermutung und keine Messung oder Analyse, was das Ding macht