Ankündigung

Einklappen
Keine Ankündigung bisher.

B780 Firmware

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    B780 Firmware

    Hallo
    Ich habe mir schon länger überlegt wie der Mikrocontroller im Revox B780 mit etwas aktuellem ersetzt werden könnte. Man bräuchte sinnvollerweise die bestehende Firmware, die man dann reverse engineert und mit all diesem Knowhow könnte man einen Ersatzmikrocontroller bauen auf Basis ATMEGA oder ähnlichem.
    Nach einiger Recherche war klar, dass im B780 eine CPU vom Typ Mostek MK3875 verbaut ist. Die Firmware ist fix mit eingebaut in diesem Prozessor und ist von aussen eigentlich nicht zugänglich. Sie ist auch nirgendwo im Internet zu finden. Es gibt allerdings Informationen darüber, dass mit einigen Tricks bei diesen CPUs die Firmware ausgelesen werden kann. Falls euch das interessiert findet ihr weitere Infos unter http://www.seanriddle.com/f8.html
    Ich habe anhand dieser Informationen einen Adapterprint gebaut, um mit Hilfe eines Arduino Mega die Firmware zu extrahieren. Nach einigen Schwierigkeiten mit einem etwas anderen Timing wie auf der genannten Seite beschrieben und einem CPU Anschluss, der einen elektrischen defekt hatte, konnte ich die Firmware erfolgreich extrahieren.
    Nun bin ich daran, sie zu verstehen.
    Es dürfte dann möglich sein, einen 1:1 Ersatz für die alte CPU zu entwickeln.
    Beste Grüsse
    Christian

    #2
    Hallo Christian

    Ich gehe stark davon aus, dass der SourceCode damals in C geschrieben wurde, oder einen anderen Hochsprache.
    Das was du da auslesen konntest, ist purer Assembler-Code.
    Das manuell reverse zu engineeren ist pure Selbstquälung... Das würde ich mir nicht antun.
    Oder hast du einen Decompiler von Assembler dieses Chips nach C?

    Danach musst du eh alles neu schreiben für den Atmel.
    Vermutlich besser du schreibst gleich selber eigenen Code mit einem Atmel, der jedoch ziemlich sicher eine Adapterplatine benötigt, weil die nicht Pinkompatibel sind.
    Ich wünsche auf jeden Fall viel Erfolg und hoffe positive Erfolgsberichte zu lesen

    Stephan

    Kommentar


      #3
      Nach allem was ich bis jetzt recherchiert habe, gab es bis heute keinen C-Compiler für die Mostek CPUs. Ich habe das ROM durch einen Disassembler geschickt und anhand von dem was ich schon angeschaut habe, wurde das mit sehr hoher Wahrscheinlichkeit in Assembler geschrieben. Die Selbstquählung hält sich bei 4KB Binärcode auch in Grenzen.
      Aber du hast schon recht, wenn man eine Ersatz-CPU baut, macht man das nicht mehr mit Assembler und wird auch nichts vom ursprünglichen Code wiederverwenden. Mir geht es mehr darum, bis ins Detail alle implementierten Funktionen zu verstehen, oder auch wie die anderen Komponenten im Gerät anzusteuern sind oder wie alles Initialisiert wird.

      Grüsse
      Christian

      Kommentar


        #4
        Ja, da könntest du Recht haben mit dem C-Compiler.
        4kb Binärcode ist trotzdem nicht gerade wenig, hinzu kommt noch dass er anonym ist und du keine sprechenden Labels hast....
        Bin gespannt auf Dein Resultat... Will mich dann irgendwann in der Zukunft auch mit dem B780 beschäftigen, falls es möglich ist ihn auf DAB+ umzubauen....

        Kommentar


          #5
          Hallo Christian,

          Ich bin wie Sie damit beschäftigt, über eine Ersatzlösung für den MOSTEK 3875-Controller des B780 nachzudenken. Persönlich habe ich auch versucht, auf die Software zuzugreifen und sie zu lesen, die sich in der Maske des 3875 „FOR REVOX“ befindet, und obwohl ich die Tipps insbesondere auf seanriddle.com befolgt habe, habe ich keine Ergebnisse erzielt.

          Herzlichen Glückwunsch zu Ihrer Leistung!

          In einer viel weniger ehrgeizigen Perspektive als der Übersetzung des so gesammelten Maschinencodes, um ihn auf eine andere, modernere Plattform (ATMEL, MicroChip...) zu portieren, haben Sie versucht, die „Piggy Back“-Version des 3875, den 38P75, zu verwenden, der Ihnen das Laden ermöglicht den betreffenden Code in ein externes EPROM kopieren, anstatt eine interne Industriemaske zu verwenden? Trotz der offensichtlichen Veralterung des 38P75 sind sie immer noch zu einem relativ günstigen Preis von rund fünfzig Euro zu finden.

          Fest steht jedenfalls, dass die 3875-Version „REVOX B780 1.780.260-01“ nirgends als Ersatzteil verfügbar ist. Und für mich ist es das dritte Mal, dass er mich gehen lässt!

          Aufrichtig,

          Jean Paul.​mostek & revox.jpg

          Kommentar


            #6
            Hallo Jean Paul
            Ich habe bisher nicht versucht, die Firmware mit einem MK38P75 und passendem EPROM zu verwenden. Ich habe aber bei mir einen 38P75, den ich verwendet habe für Tests um die Firmware zu extrahieren.
            Es gibt den 38P75 in zwei Varianten ->
            MK97416: Open Drain Ausgänge für Ports 4 und 5
            MK97403: Standard Ausgänge für Ports 4 und 5 -> diesen habe ich

            Revox hat bei ihrer Version des MK3875 folgende Konfiguration:
            Port 4: Direct Drive
            Port 5.0: Standard
            Port 5.1: Direct Drive
            Port 5.2 bis 5.7: Open Drain

            Das wäre also ein Problem und würde nicht ohne Weiteres funktionieren.

            Gruss
            Christian
            Screenshot 2024-02-22 172332.png

            Kommentar


              #7
              ​Lieber Christian,

              Das wusste ich nicht! Wir sind definitiv von allen Seiten blockiert!

              Haben Sie sich weiter mit einer neuen kompatiblen Entwicklung beschäftigt?

              Persönlich bin ich nicht kompetent in der Softwareentwicklung, aber ein sehr enger Freund verfügt über umfangreiche Fähigkeiten, er ist (unter anderem!) auf MicroChip-Produkte (PICs) spezialisiert.
              Andererseits sagt er mir, dass die *umfassende* Retroanalyse der damals von REVOX für die Pilotierungsbedürfnisse der 780 implementierten Funktionen keine einfache Angelegenheit sei, die sein Niveau blockieren würde...

              Beste grüße !

              Jean Paul.​

              Kommentar


                #8
                Hallo Jean Paul
                Ich bin aktuell damit beschäftigt, einen Ersatz zu entwickeln. Ich habe bereits ein Board erstellt, dass als Ersatz in den bestehenden Sockel eingebaut werden kann.
                Mittlerweile bin ich in der Lage, das Display anzusteuern, Ausgänge zu schalten und die EIngänge inkl. Tasten einzulesen.
                Hier noch Bilder...
                Grüsse Christian
                WhatsApp Image 2024-03-07 at 09.02.24.jpg
                WhatsApp Image 2024-03-07 at5 09.02.25.jpg
                WhatsApp Image 2024-03-07 at 09.02.25.jpg

                Kommentar


                  #9
                  Wie gross ist eigentlich das Intresse an so einem CPU Ersatz?
                  Ich komme gut voran, bisher funktioniert die Quellenwahl, sowie Record Wahl, die beiden Displays, Speaker protection und ich kann schon eine fixe Frequenz einstellen. Der Tuner hats ziemlich in sich, wie der angesteuert wird. Aber es wird schon werden.
                  Grüsse Christian

                  Kommentar


                    #10
                    Hallo Christian,

                    gut zu wissen, dass es Dir gelungen ist, die Firmware von MK3875 auszulesen! Ich habe einen B780 der leider mitten im Betrieb die Funktion eingestellt hat. Eine Analyse hat gezeigt, das wirklich die CPU tot ist. Interessant ist der Umstand, dass es sich offensichtlich um einen Ausfall der CPU nach gut 40 Jahren Betrieb handelt. Das ist sehr ungewöhnlich für eine CPU in einer solchen Fertrigungstechnologie (lt. Recherche 5um oder 8um EE-NMOS Prozess). Das deutet auf einen systematischen Fehler hin und bedeutet, dass früher oder später sehr viele CPU ausfallen werden! Warum ich das weiß? Ich habe die letzten 40 Jahre nichts anderes gemacht als solche CPU`s zu entwickeln.... Ich denke es wäre also gut eine Lösung für dieses Problem zu haben.

                    Ich wäre also an der Firmware, oder einem wie auch immer gearteten Ersatz interessiert. Mein präferierter Lösungsansatz wäre allerdings einen MK38P75 zu verwenden, dem mit dem externen EPROM die Firmware gegeben wird. Die hier auch beschrieben Probleme mit der Kompatibilität der I/O´s halte ich für lösbar. Voraussetzung dafür ist allerdings das die Firmware (vorzugsweise als Intel HEX file). Ich bin mir nicht sicher, ob ich aus meiner defekten CPU überhaupt den ROM code auslesen kann - deshalb möchte ich auch nicht den Aufwand betreiben mit eine entsprechende Hardware zum auslesen zu bauen....

                    Herzlichen Gruß
                    Lutz

                    Kommentar


                      #11
                      Hallo Lutz
                      Ganz so einfach sind die MK38P75 ja auch nicht mehr zu finden und teuer sind sie auch (50$). Wenn die CPUs wirklich sterben mit der Zeit kann davon ausgegangen werden, dass auch ein 38P75 sterben wird.
                      Mein Ersatz mit Atmega, PCB und paar SMD Teile wird etwa 10Fr. kosten in der Herstellung.
                      Wenn du möchtest, kann ich dir die Firmware (4KB binär) zusenden, schreibst du mir hier eine PN mit deiner E-Mail.
                      Grüsse Christian

                      Kommentar


                        #12
                        Hallo Christian,

                        danke für Deine schnelle Antwort. ich gebe Dir vollkommen recht - Deine Lösung mit ATmega ist auf jeden Fall die Lösung mit der besseren Prognose.
                        Ein Lösung mit MK38P75 hätte für mich den Charme, dass ich das innerhalb von wenigen Stunden zum laufen bringen würde. Ich nutze den B780 immer noch of und gerne.
                        Die CPU Baugruppe dann später gegen die von Dir geschaffene Lösung zu tauschen geht ja immer noch! Ich würde eine solche Lösung auch unterstützen.
                        Wenn Du mir die Firmware zusenden könntest wäre ich sehr dankbar! email: lutz.porombka@advicesemi.org

                        Herzlichen Dank und Grüsse!
                        Lutz

                        Kommentar


                          #13
                          Hallo Christian,

                          leider habe ich erst heute gesehen, dass Du die Firmware geschickt hast. Leider ist Deine Mail bei mir im Spam-Ordner gelandet. Vielen herzlichen Dank dafür. ich werde über die Ergebnisse meiner Versuche berichten!

                          Herzlichen Gruß
                          Lutz

                          Kommentar

                          Lädt...
                          X