Siemens 6.610 Reparatur geglückt

  • Ich sehe im Programmcode, dass das Rennspiel so programmiert ist, dass es nur Eingaben in Großbuchstaben akzeptiert. Stellen Sie sicher, dass die Umschaltsperre aktiviert ist.

  • Hier sind die ROMs von meiner Maschine. Die Monitorversion sieht aus wie die Version direkt nach der in Rolands Maschine, daher wäre es interessant, sie zu lesen, damit wir sie vergleichen können.


    Aus einigen alten Tandberg-Dokumenten geht hervor, dass die Maschinen mit doppelseitigen Double-Density-Festplattenlaufwerken als TDV-2124 vermarktet wurden und TOS-II unterstützten. Ich gehe davon aus, dass TOS-II praktisch dasselbe ist wie BS1MP, jedoch mit der Marke Tandberg und auf Englisch.

  • Für IMD brauchst Du aber einen PC mit DOS.


    Der nächste Schritt ist, dass der PC kein Diskettenlaufwerk mehr unterstützt. Spätestens dann ist es aus mit dem herkömmlichen FDC. Es gibt zwar USB-Floppies, die lassen sich aber nicht mit SAMdisk ansteuern. Dann kommen die FLUX-Programme ins Spiel. Da sie z.B. eine eigene Hardware via USB betreiben, können sie auch auf neueren PC's laufen.


    Was die Dokumentation der Fluximages betrifft, ist das raw-Format von Kryoflux ebenfalls sehr gut dokumentiert.

    Ich habe mir eine Linux-Version von IMD geschrieben, die liegt auf unserem FTP-Server unter /utils/. Die DOS-Version nutze ich praktisch nicht. Die ist auch etwas umständlich zu bedienen.


    Da wir hier im Forum für Classic Computing sind, setze ich quasi voraus, dass man selbstverständlich die passende Hardware hat ;) Also ein paar PCs mit entsprechender Ausstattung sollten schon vorhanden sein.


    Das raw-Format von Kryoflux ist zwar dokumentiert, aber nicht sehr angenehm mit einem File pro Spur. Tatsächlich nutze ich auch SCP als raw-Format, als Hardware den GreaseWeazle. Für Fremdformate muss ich auf selbstgeschriebene Dekoder zurückgreifen (z.B. für HP M²FM, hartsektorierte Signetics TWIN, usw.) Weder für gw noch für z.B. fluxengine bin ich in der Lage (wegen nicht vorhandener Dokumentation und obskurem Code), hierfür Dekoder zu schreiben.

  • Ich habe einige Nachforschungen angestellt und meine Boards mit den Bildern verglichen, die ich vor 12 Jahren herumliegen habe. Ich sehe, dass nur die RAM-Karte vom Typ 961024 und eine Modifikation der CPU-Karte, die zwischen U61/Pin 8 und U37/Pin 1 verläuft, in der Lage sein werden, volle 64 KB RAM zu ermöglichen (wahrscheinlich wie beim TDV-2324).


    Diese RAM-Karte verfügt über ein Registerbit zum Aktivieren/Deaktivieren des Speichers der CPU-Karte als Ganzes und dieses Signal geht über einen Pin des Rückwandbusses zurück zum CPU-Kartenmodul. Ohne dies ist CP/M leider nicht kompatibel, da es RAM in niedrigen Adressen benötigt. Das Intel-Board verfügt nicht über dieses Register, aber möglicherweise über andere Funktionen. Vielleicht bleiben dadurch einfach die letzten 10 KB ungenutzt.


    Wie Sie im alten Video sehen können, hat The Rudolf dies installiert und führt CP/M ohne Probleme aus.

    Einmal editiert, zuletzt von FrodeVan ()

  • Bitte ignorieren Sie meinen letzten Beitrag, ich habe mir die Bilder genauer angesehen und in Kombination mit der Analyse des TDV-2324-Boot-ROMs konnte ich herausfinden, wie das alles funktioniert.


    Das Register befindet sich nicht auf der RAM-Karte, sondern im Mod selbst. Es bindet an den OUT F5-Befehl, der bis zum nächsten RESET dauerhaft 64 KB RAM aktiviert.


    Was die Leitung am Erweiterungsbus betrifft, geht diese lediglich an das Freigabesignal der 16-KB-RAM-Karte, die so eingestellt ist, dass sie bei Adresse 0 beginnt. Das sehr Interessante ist, dass die Intel-RAM-Karte tatsächlich ein Signal an diesem Pin angeschlossen hat. aber ich weiß nicht, ob es speziell mit dieser Modifikation kompatibel ist.



  • verstehe ich richtig: wenn das Laufwerk genutzt wird, bricht das Bild zusammen ?


    Ich halte eine Einstreuung vom Laufwerk für unwahrscheinlich (könnte man durch Ausbau des Laufwerkes und Betrieb mit etwas Abstand/anderer Orientierung testen). Wahrscheinlich ist es ein Netzteilproblem, eine der Versorgungsspannungen bricht während des Betriebs ein.


    Roland

  • Hallo FrodeVan!


    Im Netzteil und auch auf den Platinen des Monitors gibt es die gleichen Kondensatoren wie im Netzfilter.

    Die Gehäuse dieser Kondensatoren (Rifa) waren bei mir allesamt rissig.


    Gruß

    Axel

  • verstehe ich richtig: wenn das Laufwerk genutzt wird, bricht das Bild zusammen ?


    Ich halte eine Einstreuung vom Laufwerk für unwahrscheinlich (könnte man durch Ausbau des Laufwerkes und Betrieb mit etwas Abstand/anderer Orientierung testen). Wahrscheinlich ist es ein Netzteilproblem, eine der Versorgungsspannungen bricht während des Betriebs ein.


    Roland

    Ah, Übersetzungsfehler. Ich meinte Verstärkeroutput, nicht Diskettenlaufwerk.

  • Ich arbeite gerade daran, die Intel-Speicherkarte aufzuspüren, und ich habe gute und schlechte Neuigkeiten in Bezug auf die Unterstützung einer 64-KB-RAM-Modifikation.


    Die gute Nachricht ist, dass die Karte die Adressendekodierung für den gesamten 64-KB-Speicherplatz durchführt, aber die schlechte Nachricht ist, dass die Umgehung der von Tandberg Data vorgenommenen Änderung zum Blockieren der niedrigsten 10 KB keine Ein-Signal-Lösung ist.


    Die Adressdekodierung auf dieser Karte ist recht komplex: Es gibt zunächst einen Abschnitt, in dem der Adressraum in lokale Adressen innerhalb der Karte übersetzt wird. Dadurch wird sichergestellt, dass die Speicherbänke je nach beweglichem Jumper wie folgt zugeordnet werden:


    * Bank 0 bei C000-FFFF

    * Bank 0 bei 8000-BFFF, Bank 1 bei C000-FFFF

    * und so weiter...


    Danach gibt es einen Abschnitt, in dem die Speicherbänke in 8-KB-Blöcken deaktiviert werden können. Dies kann durch das Hinzufügen von Jumpern zu N6, dem leeren Sockel im oberen Bereich der Karte, erreicht werden. Danach befindet sich der Patching-Bereich mit der Bezeichnung E9-E28, in dem die verschiedenen 8K-Blöcke der Bänke erneut zugeordnet werden können. In diesem Patching-Bereich hat Tandberg die Schaltung hinzugefügt, die die Signale abfängt, die Bank 0 auswählen. Der aufmerksame Leser wird vielleicht bemerken, dass diese Schaltung die niedrigsten 10 KB von Bank 0 blockiert, unabhängig davon, wo sie sich im CPU-Speicher befindet. Wie auf der Karte von Fishermansfriendtoo zu sehen ist, wurde der Schaltkreis hier nicht hinzugefügt, da die Karte auf 48 KB eingestellt ist (obwohl in allen Bänken Speicherchips vorhanden sind).


    Wie leitet man also das 64-KB-Aktivierungssignal vom in meinem vorherigen Beitrag erwähnten CPU-Karten-Mod weiter?


    Nun, für die Karte von Fishermansfriendtoo wäre das einfach, da das Anlegen des (positiv-aktiven) Aktivierungssignals an einige der N6-Jumperblock-Eingänge alle gewünschten 8-KB-Blöcke blockiert, wenn der 64-KB-Mod nicht aktiviert ist. Danach muss der L2-Jumperblock nur noch auf 64 KB eingestellt werden. Für die Bank-3-Signale müssen möglicherweise auch zwei Jumper an E9-E19 und E10-E20 hinzugefügt werden.


    Für den Rest von uns müssen wir ein Paar Multiplexer (z. B. den 74LS157) auf dem E9-E28-Patchblock hinzufügen. Das Aktivierungssignal vom 64-KB-Mod muss zwischen den ursprünglichen Signalen der Bank 0 von der E9-E18-Seite wählen, andernfalls muss der Multiplikator die beiden Ausgänge der Tandberg-Schaltung weiterleiten.


    Schaltpläne kann ich morgen posten.


    Möglicherweise gibt es an anderer Stelle auch noch andere kleine Änderungen, die beachtet werden müssen, aber ich bin noch nicht so weit in die Schaltung vorgedrungen.

  • Ja bei mir sind 2 RAM-Bänke mit jeweils 16k Bausteinen bestückt und in den beiden anderen Bänken stecken 8k-ICs.

    Im RAM-Board von Rolands Tandberg/Siemens sind 3 Bänke mit jeweils 16kB bestückt und in der 4. stecken 8kB, wenn ich mich

    recht erinnere.

    Was passiert mit den 2kB RAM auf dem CPU-Board?

    Gruß

    Axel

  • Die Tandberg-Schaltung um A1 begrenzt die Größe der Bank 0 auf 6 KB, selbst wenn Sie 8-KB- oder 16-KB-RAM-Chips darin haben. Auf diese Weise überschneidet es sich nicht mit den 2 KB auf der CPU-Karte.

  • Danke vielmals!


    Hier ist der größtenteils vollständige Schaltplan des Intel-Karten-Adressdecoders.


    Einige Schalter:

    * L2 legt den Gesamtspeicher auf der Karte fest

    * E1-E8 bildet die Aufzählung von 8-KB-Blöcken ab

    * N6 deaktiviert 8-KB-Blöcke

    * E9-E28 ordnet 8-KB-Blöcke Bänken zu

    * E29-E30 wählt aus, ob alle Bänke 8 KB groß sind oder ob bis zu zwei Bänke aus der Zuteilung 8 KB groß sind

    * E31-E32 wählt aus, ob das High-Bit der 8-KB-Banken (A6 Zeile) HIGH oder LOW sein soll.


    Dies sollte genügend Informationen liefern, um den Speicher der Karte nach unseren Wünschen neu zuzuordnen. Beachten Sie jedoch, dass AB11 auf dem 74LS373 (J1) Teil der 6-KB-Bank0-Modifikation ist und nicht auf der Platine selbst (zusätzlich zum 74LS00 bei A1). Ich habe einen Vorschlag beigefügt, wie ich die aktuelle Konfiguration meiner Karte mit dem 64-KB-RAM-Mod kompatibel machen kann, den ich zuvor in diesem Thread erwähnt habe.

  • Es gibt eine kleine Optimierung, die ich vergessen habe hinzuzufügen: Beim 64-KB-Mod ist es einfacher, den Multiplexer von E26 als von E27 zu routen. Diese beiden Pads sind ohnehin über eine Leiterbahn miteinander verbunden.


    Noch ein Hinweis, wenn Sie eine 48-KB-Karte haben und den im Diagramm hier als Standard gezeigten 54-KB-Mod hinzufügen möchten: Stellen Sie sicher, dass Ihre CPU-Karte spät genug überarbeitet ist, um die externe 54-KB-RAM-Unterstützung zu haben. Vergleichen Sie den Adressdekodierungsteil der beiden CPU-Karten-Schaltpläne in den von Roland_t29 durchgeführten Scans, da die zweite Version am Ende der PDF-Datei diese Änderung aufweist.


  • Noch eine kleine Korrektur, ich konnte die tatsächliche Reihenfolge der physischen Bank 1-3 finden.

    Ansonsten bin ich mit dem Nachzeichnen des gesamten Schaltplans ziemlich weit gekommen. Ich gehe davon aus, dass im Timing-Teil noch etwa ein Drittel der Klebelogik übrig ist.

  • FrodeVan : damit ich es richtig verstehe, die 64k RAM-Karte nutzt mir mit dem Original-Siemens-Betriebssystem nichts. Sie macht nur Sinn, wenn man ein CP/M auf der Maschine laufen lassen will, ist das so ?


    Roland

    Ja, das ist der Fall.


    Am besten wäre es, wenn ich CP/M für den TDV-2114 finden könnte, denn ich weiß, dass es diese gibt. Die Highschool, die ich besuchte, hatte zum Beispiel vor 13 Jahren eine. Die Alternative besteht jedoch darin, dass ich die E/A-Schicht möglicherweise von Grund auf implementieren und selbst eine CP/M-Distribution vorbereiten muss.

  • Heute Nachmittag habe ich versucht, die Änderung hinzuzufügen. Bisher scheint es gut zu funktionieren. Ich habe P2 7b als Brücke auf der Rückwandplatine hinzugefügt.


    Ich konnte überprüfen, ob der Speicher der CPU-Karte verschwindet, wenn der Port aktiviert wird, und wieder angezeigt wird, wenn der Computer zurückgesetzt wird. Aber bis ich meine eigene Software dafür schreibe, kann ich nicht überprüfen, ob die RAM-Karte den gesamten 64-KB-Adressraum ausfüllt.


    Der nächste Schritt für mich wird darin bestehen, das Netzteil durchzugehen und die erwähnten RIFA-Kondensatoren auszutauschen. Ich dachte, es wäre in Ordnung, aber direkt nach dem Einschalten ist es nicht immer stabil genug. 5 V pendeln sich ebenfalls etwas niedrig bei 4,7 V ein. Was den Bildschirm betrifft, so schwankt auch der Schwarzwert von Zeit zu Zeit ein wenig, und ich messe auch, dass die +95 V etwas zu niedrig sind.

  • Ja Kondsatoren verhalten sich nicht digital. Der Übergang zwischen voller Kapazität und Kurzschluß ist zunächst fließend mit

    allen möglichen Auswirkungen in der Folge. Am Ende wirst Du diese Typen allesamt erneuern müssen, damit Du an der

    Stelle Ruhe hast. Ich könnte mir sogar vorstellen, daß das Einfluß auf Deiner Modifikation des RAM-Boards ausübt. Und zwar

    dahingehend, das Störungen im System auftreten, die eine ganz andere Ursache haben.

    Am besten Du erneuerst die Tantals auf der RAM-Karte gleich mit. Die Hälfte für die 12V-Schiene waren bei meiner schon

    in der Vergangenheit erneuert worden und ein Alter ging dann promt defekt.

  • Ich bin etwas weiter gekommen und habe den Code des Diskettenlaufwerks entschlüsselt. Es ist stark anrufbasiert und läuft fast ausschließlich über DMA und einen Interrupt.


    Sie richten einen Steuerblock für einen Befehl ein, der an den Controller im RAM gesendet werden soll, überprüfen dann den Controller-Status (lesen Sie Port 0x30) und senden Sie ihm einen Zeiger an den Steuerblock, wenn er bereit ist (schreiben Sie Port 0x30, MSB der Adresse zuerst). Dann müssen Sie nur noch auf einen Interrupt mit Status/Urteil der Befehlsausführung warten. Der Diskettencontroller holt oder schreibt alle Daten basierend auf dem im Steuerblock gespeicherten Zeiger ganz alleine mithilfe von DMA aus dem RAM bzw. in den RAM.

  • Gilt der Code für beide Versionen des Diskettenkontrollers ?

    Ich weiß es nicht, aber ich kann mir später heute das ROM von Ihrem Computer ansehen.


    Eine Sache ist, dass ich immer noch nicht genau herausgefunden habe, was die verschiedenen Bits im Befehlsbyte bewirken. Ich weiß, dass eine davon darin besteht, eine „Türkontrolle“ zu aktivieren, und es muss auch eine zur Auswahl der Dichte geben (da diese nirgendwo anders eingestellt ist).

  • Der Single-Density-Controller ist etwas anders, ja. Anstatt einen Zeiger auf einen Steuerblock im RAM zu übergeben, wird alles über mehrere I/O-Ports eingespeist:


    0x30 Ausgewählte Laufwerksbitmap (lsb = Laufwerk 0)

    0x31 Zu suchende Spuren (7b signiert)

    0x32 Sektor nr

    0x33 Pufferzeiger (msB)

    0x34 Pufferzeiger (lsB)

    0x37 Befehl/Status


    Auch die Befehle scheinen unterschiedlich zu sein und es ist das letzte geschriebene Byte, um den Vorgang zu starten. Es ist daher nicht möglich, zwischen dem Single-Density- und dem Double-Density-Controller zu wechseln, ohne auch die Monitor-Firmware auszutauschen.

  • Interessant wären auch noch die Frage: Wieviel Intel/MDS/ISIS steckt in diesem Computersystem?

    Es hat zumindest den Anschein als wurde dieses Entwicklungssystem bei der Konstruktion verwendet.

    Eine Antwort, sofern man sie geben kann, hat jetzt und hier absolut keine Priorität !!