So funktioniert Philips VideoWRITER Erst Bilder von Eisen, dann etwas Langeweile



Das Textbearbeitungs- und Druckgerät VideoWRITER wurde 1985 von Philips auf den Markt gebracht. Es wird auf einem Z80-kompatiblen Prozessor ausgeführt und enthält 16 KB ROM und dieselbe RAM-Größe (wie sich später herausstellte, ist ROM mehr). Zum Speichern von Dokumenten verfügt es über ein 3,5-Zoll-Laufwerk. Es war möglich, ein glücklicher Besitzer dieses „Mähdreschers“ (es gibt auch einen eingebauten Drucker) für 799 US-Dollar zu werden.

Der Bildschirm des orangefarbenen CRT-Monitors ist deutlich breiter als gewöhnlich. Darauf befindet sich nicht nur ein Fenster mit einem bearbeitbaren Dokument, sondern auch ein Menü rechts davon. Dort werden auch Hinweise angezeigt, einschließlich der Zuweisung von Funktionstasten. Das Dokument wird immer mit hellen Symbolen vor einem dunklen Hintergrund angezeigt, das Menü ist umgekehrt. In der unteren linken Ecke des Bildschirms ist Folgendes markiert: DDS - Dual Display Screen ...

Der Editor ist ganz einfach, erwarten Sie nicht einmal Comic Sans davon. Es gibt nur eine Schriftart, Standardattribute sind verfügbar: Fett, Kursiv, Unterstrichen, Oberer und Unterer Index. Und Standardmethoden zum Ausrichten von Text. Es gibt auch ein Lineal und Zeilenvorschubzeichen.

Der Drucker druckt auf normalen A4-Blättern mit Wärmeübertragung. Wenn es laut Wikipedia-Artikel keine spezielle Patrone gibt, können Sie auf Thermopapier drucken. Der Autor war sehr überrascht, dass das Gerät nach so vielen Jahren auf einem heißen Dachboden immer noch druckt.



Die Tastatur ist klein, aber das Tippen ist praktisch. Mit speziellen Tasten können Sie die Schriftattribute wechseln, Aktionen abbrechen und die Rechtschreibung überprüfen, wenn eine Diskette mit einem Wörterbuch vorhanden ist. Die Tastatur ist mit einem RJ14-Anschluss verbunden - das Wesentliche ist das gleiche wie bei RJ11 und RJ45.

Dokumente werden auf 3,5-Zoll-Disketten gespeichert. Beim Einschalten sucht das Gerät sofort nach einer Diskette. Wenn es nicht "verstehen" kann, was sich dort befindet, schlägt es vor, sie zu formatieren. Höchstwahrscheinlich ist das Format nicht mit dem auf dem PC verwendeten Format kompatibel. Und wie viele Kilobyte passen dort hin, 360 oder 720?

Und jetzt ist es Zeit, die obere Abdeckung anzuheben und zu sehen, was sich darunter befindet. Zunächst schauen wir uns nur die Boards an, bis sie tief in ihr Gerät eindringen. Entladen Sie zuerst die Bildröhre. Wir nehmen einen Schraubendreher, der mit Hilfe eines „Krokodils“ im Voraus mit dem gemeinsamen Draht verbunden ist, und halten ihn am isolierenden Griff fest und legen den Stich unter dem Saugnapf ab. Obwohl es auf der Bildröhre selbst steht: Entladen Sie nicht durch eine Lichtbogenentladung, sondern schließen Sie ein hochohmiges Voltmeter zwischen der Anode und dem Gehäuse an. Und wie wird alles allmählich entladen. Vielleicht ist TDKS "sanft".



Um die Stromversorgung zu entfernen, müssen Sie nur zwei Schrauben lösen. Jetzt entfernt der Autor diesen BP zum zweiten Mal. Das erste war, als der Kondensator darin platzte, es gab viel Rauch, aber der Autor fand das gleiche, löte es und es funktionierte. Es war kein Elektrolytkondensator, sondern dieser rechteckige von oben in der Mitte. Welches ist jetzt rot.



Die Monitorplatine ist im Vergleich zu anderen ähnlichen Platinen jener Jahre sehr klein. Auch gibt es keine Kinescope-Platine - nur eine Buchse (was bei Monochrom-Monitoren nicht so selten ist). Es gibt verschiedene Einstellungen auf der Platine sowie einen 10-poligen Anschluss für den Anschluss an die Hauptplatine. Ich frage mich, was für ein Sockel gibt es? Und warum der 556-Chip - zwei 555-Timer in einem Fall? Generatoren "sägen" sofort für Personal und Leitungsfeger?



Die Druckerplatine befindet sich direkt unter dem Drucker. Von dort gibt es eine Schleife zum Motherboard sowie Kabel zu den Motoren, die Papiereinzugstasten, die Kontraststeuerung für den Druck, den Druckkopf, die Enden und den Papiersensor.



Das Motherboard ist von allen Seiten abgeschirmt. Für nur zwei ROM-Chips wurde ein quadratisches Loch in den Bildschirm gemacht:



Wir werden den Bildschirm abnehmen und sehen, was auf dem Motherboard interessant ist.



D8156HC-2 - Eingangs- / Ausgangsregler. Vermutlich steuert es den Drucker, da er sich in der Nähe des Druckeranschlusses in der oberen linken Ecke befindet. Der Chip enthält drei Ports: zwei 8-Bit- und einen 6-Bit-, 14-Bit-Timer und 256 Byte statischen RAM. Später werden wir sehen, warum jeder der Anschlüsse benötigt wird und ob der Chip den Drucker wirklich steuert. Sie „kommuniziert“ höchstwahrscheinlich auch mit der Tastatur. Der Chip verwendet einen kombinierten Adress- und Datenbus. Es stellte sich heraus, dass der Mikroprozessor dasselbe tat.

HN27C256-20 - ROM 32 Kilobyte mit einer Datenbusbreite von 8 Bit. Es gibt zwei solche Mikroschaltungen, es stellt sich heraus, 64 Kilobyte. Dies bedeutet, dass Wikipedia fälschlicherweise angibt, dass das ROM nur 16 Kilobyte groß ist. Nun, das ROM wird den gesamten 64-Kilobyte-Adressraum Z80 belegen? Und es gibt auch 16 Kilobyte RAM. Es gibt also eine Art Seitenwechsel. Mal sehen ...

NSC800N-3I - Mikroprozessor. Es ist nur mit dem Z80 kompatibel und die Pinbelegung ist völlig anders. Auf der linken Seite befindet sich nur ein erstaunlicher kombinierter Adress- und Datenbus. Die unteren 8 Bits des Adressbusses werden auch als Datenbus verwendet. Und um die Adresse von den Daten zu unterscheiden, gibt es eine ALE-Ausgabe. Eine Eins bedeutet, dass die unteren acht Bits Teil der Adresse sind. Und rechts - einige Signale. Das gleiche ALE sowie Read Enable, Write Enable, die Wahl zwischen Speicher und Ports und so weiter. Natürlich ist die Arbeit mit einem solchen Mikroprozessor schwieriger als mit einem normalen Z80 oder seinem Klon. Laut Datenblatt arbeitet es mit einer Frequenz von bis zu 2,5 MHz, was bedeutet, dass die Frequenz von 5 MHz Quarz irgendwo in zwei Teile geteilt wird. Vergleichen Sie die Pinbelegung dieses nicht standardmäßigen Prozessors und des regulären Z80:



HM48416AP-15 - 16 Kilobyte dynamischer RAM. Zwei dieser Chips bilden 16 Kilobyte RAM.

WD1770-PH ist ein Western Digital Drive Controller. Minimale externe Komponenten, Kompatibilität mit verschiedenen Formaten zum Speichern von Daten auf einer Diskette. Im Allgemeinen braucht keine Werbung.

NCR 7250 PY - Videocontroller? Es scheint, dass er, weil es nichts anderes gibt, das diese Funktion auf dem Brett beansprucht.

HM6116-4 - 2 Kilobyte statischer RAM. Im Allgemeinen Videospeicher. Der Videomodus besteht nur aus Text, daher gibt es keinen mehr. Obwohl ... hier ist es nicht 80x25, die Zeile ist breiter als 80 Zeichen plus Attribute. Na dann passt es.

Wir haben also herausgefunden, dass der Computer über 16 Kilobyte RAM und 64 Kilobyte ROM verfügt und dass irgendwo ein Seitenwechsel implementiert werden sollte. Machen Sie mit einem Multimeter einen Spaziergang auf der Leiterplatte und zeichnen Sie alles, was wir sehen.

Suchen Sie zunächst nach den Chip Select-Signalen. Beginnen wir mit dem Ausgang / CE des ROM-Chips, auf dessen Aufkleber der Buchstabe A aufgedruckt ist. Es stellt sich heraus, dass er mit dem Ausgang von Element I verbunden ist. Wohin gehen also seine Eingänge? Zu den beiden Ausgängen des 74139-Chips, die zwei Decoder mit zwei Eingängen und vier Ausgängen enthalten. Von diesen interessiert sich nur einer von uns:



Die Signale A14 und A15 kommen vom Mikroprozessor zu seinen Eingängen, was bedeutet, dass der Speicher in vier Blöcke von 16 Kilobyte unterteilt ist. Der Eingang / E (Freigabe) vom Mikroprozessor empfängt das Signal / M (Speicherauswahl), so dass der Chip 74139 aktiv ist, wenn der Mikroprozessor Zugriff auf den Speicher benötigt. Es stellt sich heraus, dass die Verteilung des Adressraums dies ist. ROM "A" wird ausgewählt, wenn 74139 eine Einheit entweder am Ausgang / Q0 oder am Ausgang / Q1 hat, ROM "B" wird mit einer Einheit an / Q2, RAM - mit einer Einheit an / Q3 ausgewählt. Aber auch mit RAM ist es nicht so einfach, dann werden wir es herausfinden. Also, was wird mit verschiedenen Kombinationen von Signalen auf A14 und A15 ausgewählt:



Gehe zum Adressbus. Wie wir bereits herausgefunden haben, ist dort alles komplizierter als bei Systemen mit dem üblichen Z80. Es stellt sich heraus, dass hier ein 8-Bit-Latch 74373 angewendet wird, um die Adresse von den Daten zu trennen. Seine Dateneingänge sind mit den AD0 - AD7-Leitungen verbunden, und der Latch-Eingang ist mit der ALE-Leitung verbunden. Wenn eine Einheit auf dem ALE angezeigt wird, wird die untere Hälfte der Adresse in 74373 geschrieben. Und der Eingang / OE ist immer mit einem gemeinsamen Draht verbunden.

Ferner wird der "Adressbus" als Ausgangsleitungen 74373 in Kombination mit den oberen Leitungen des Adressbusses selbst betrachtet, wo niemals Daten vorhanden sind. Nun, die Abbildung zeigt alles:



Nun wollen wir sehen, wie die ROM-Chips verbunden sind. Beim Anschluss des ROM "A" wird nichts Ungewöhnliches beobachtet. Nur die Leitungen A0 - A14 des zuvor betrachteten reinen Adressbusses (nach 74373). Nur die Leitungen A0 - A13 sind mit dem ROM "B" verbunden. Was ist mit der A14? Vielleicht geht diese Leitung zu einem gemeinsamen Kabel oder einer Plus-Stromversorgung, und die Hälfte der Kapazität wird nicht verwendet? Nein. Es geht an Pin 39 (PC2) des A8156-E / A-Controllers. Das ist alles und es wurde klar mit dem Wechseln der Seiten. Die ROM-Hälften „B“ können programmgesteuert umgeschaltet werden.

Wie wir herausgefunden haben, besteht RAM aus zwei dynamischen RAM-Chips mit jeweils 16 Kilobyte. Jedes Byte RAM wird in zwei Chips gleichzeitig gespeichert, ein Halbbyte im ersten und das andere im zweiten.

Um eine Adresse auszuwählen, müssen Sie zuerst eine Zeile und dann eine Spalte auswählen. Hierzu wurden zwei 74157-Mikroschaltungen verwendet - vier Datenselektoren mit zwei Eingängen und einem Ausgang. Und jetzt zurück zum ersten Schema. Zusätzlich zum Ausgang / WR geht ein weiterer Ausgang zum Eingang, um die erste Mikroschaltung 74157 auszuwählen. Wenn Null an / Q3 ist, wird die Adresse der Zeile ausgewählt, und wenn es einen gibt, lautet die Adresse der Spalte:



Beim Durchlaufen der gedruckten Leiter stellte der Autor fest, dass nur sechs von acht Ausgängen von zwei 74157-Mikroschaltungen als MA1-MA6-Adressen für RAM-Mikroschaltungen verwendet werden. Die Leitungen MA0 und MA7 sind direkt mit den Adressbusleitungen A6 und A7 verbunden. Die 48416-Chips haben acht Zeilen und sechs Spalten, sodass nur sechs Leitungen geschaltet werden müssen. Die anderen beiden können direkt an die Adressbusleitungen angeschlossen werden, da sie die Auswahl der Spalte nicht beeinflussen.



Die Reihenfolge der Verbindung der Leitungen mit dem Adressbus folgt keiner Logik. Aber alles funktioniert. Vielleicht war es bequemer, ein Board bequemer zu gestalten?

Interessant ist auch, wie die 74157-Chips kaskadiert werden: Der erste 4Y-Ausgang geht an den zweiten Eingang und der zweite 4Y-Ausgang geht an die / CAS-Leitung:



Im Gegensatz zum ROM verfügt das dynamische RAM nicht über eine separate / CE-Leitung. Wie der Autor verstanden hat, ermöglichen diese Chips das Lesen oder Schreiben, wenn der / CAS Null ist. Nun, so wie es ist: Null an / Q3 bedeutet Null an / CAS. Die RAM-Leitungsadresse wird gebildet, wenn die ALE-Leitung Null ist und wenn der Mikroprozessor nicht zurückgesetzt wird.

Wir haben den Adressraum herausgefunden und gehen zur Peripherie über. Der Autor ging auch mit einem Multimeter auf die Leiterplatte und bekam dieses Schema:



Die obere linke Ecke zeigt, woher die Signale / RD und / WR für den Videocontroller (VDP) kommen. Beachten Sie, dass die Chipauswahl für VDP nicht sichtbar ist. Das einzige Signal, das / CS für den Videocontroller ähnlich ist, ist das ALE-Signal vom Mikroprozessor. Es stellt sich heraus, dass der Videocontroller im Allgemeinen Daten über alle E / A-Vorgänge empfängt. Wir werden uns nicht darauf konzentrieren, wir werden sehen, was mit den restlichen Eingabe-Ausgabe-Geräten passiert.

Die verbleibenden E / A-Adressen werden von der zweiten Hälfte des 74139-Chips entschlüsselt - genau der, deren erste Hälfte die Seiten des Adressraums wechselt. Dieser Decoder wird ausgewählt, wenn die Eingabe-Eingabe-Operation ausgeführt wird, und auf A7 ist er Null. Es scheint, dass die A7-Leitung für die Wahl zwischen dem Videocontroller und den übrigen Peripheriegeräten verantwortlich ist. A6 und A5 bestimmen, welches Gerät vom Decoder ausgewählt wird:



Kann der A7 die Chipauswahlleitung für den Videocontroller sein und wird er ausgewählt, wenn das Gerät vorhanden ist? Es ist unmöglich, ohne ein Datenblatt auf dem NCR 7250 zu bestimmen, aber dies ist durchaus plausibel, wenn die Auswirkung der ALE-Leitung auf den Videocontroller nicht irgendwie völlig ungewöhnlich realisiert wird.

Ferner führte der Autor ein Reverse Engineering zum Verbinden der Signalleitungen des Mikroprozessors durch:



Das gleiche Diagramm zeigt ein Verfahren zum Erzeugen eines Rücksetzsignals. Beim Einschalten lädt sich der Kondensator verzögert auf, beim Ausschalten entlädt er sich schnell. Das Rücksetzsignal / RESET IN ist invers, es wird dem Mikroprozessor zugeführt und es erzeugt ein direktes RESET OUT-Signal zum Zurücksetzen verschiedener Peripheriegeräte.

Die nicht maskierbare Interrupt- / NMI-Leitung funktioniert genauso wie die reguläre Z80. Wenn Interrupts aktiviert sind, ruft eine Null in dieser Zeile die Interruptroutine unter der Adresse 0x66 auf. In diesem Fall kommt das / NMI-Signal vom Ausgang des IC25-Timers. Bei jedem Überlauf dieses Timers tritt ein Interrupt auf.

Der Mikroprozessor NSC800N verfügt auch über einen / INTR-Eingang, an dem er auf 0x38 geht. Dieser Eingang wird jedoch in VideoWRITER nicht verwendet.

Es gibt auch drei Neustartsignale / RSTA, / RSTB und / RSTC, die jeweils einen Übergang zur Adresse 0x3C, 0x34 oder 0x2C bewirken. Von diesen sind nur die ersten beiden beteiligt und werden von der Antriebssteuerung gesteuert. Mit dem Signal / RSTA informiert die Antriebssteuerung den Mikroprozessor über den Zustand seines Datenregisters und zeigt mit dem Signal / RSTB den Abschluss des Befehls an.

Und jetzt noch eine Zeile - S1. Zusammen mit der Leitung S0 bestimmt sie den Zustand des Busses. Somit wählt die Antriebssteuerung den Lese- oder Schreibmodus. Aber warum wird die S1-Leitung anstelle von / RD und / WR nur von der Antriebssteuerung verwendet? Unverständlich. Die Leitungen S0, S1 und IO / M können sehr gut verwendet werden, um zwischen Lese- und Schreibmodi für Speicher und Peripheriegeräte zu wählen, aber die Verwendung anderer Leitungen ergibt den gleichen Effekt. Vielleicht haben die Entwickler verschiedene Optionen ausprobiert und beschlossen, sich mit der Methode zum Entschlüsseln des Lese- / Schreibmodus zu befassen, der im üblichen Z80 verwendet wird? In jedem Fall kann das Signal S1 gemäß dem Datenblatt des NSC800N und der folgenden Tabelle ein Lesesignal von Peripheriegeräten sein, jedoch nur, wenn auch ein Auswahlsignal direkt an das Gerät gesendet wird:



Das Gerät ist in Betrieb, das Video wurde von einem anderen Autor aufgenommen - Grr_I'm_Here:

Source: https://habr.com/ru/post/de450310/


All Articles