Ich erhalte eine dieser http://www.old-computers.com/museum/computer.asp?st=1&c=446
Ich plane, einen Server darin zu bauen. Und ich dachte daran, den eingebauten CGA-Monitor als Statusanzeige zu verwenden (LCDInfo-Stil oder was auch immer die coolen Geeks heutzutage verwenden). Der Bildschirm ist monochrom bernsteinfarben, daher würde er wahrscheinlich ein bisschen wie die Planar EL-Bildschirme aussehen, die einige in ihren Mods verwendet haben. Und ich möchte ein Arduino (oder ähnliches) als Middleware-Lösung verwenden ... PC -> Arduino -> Bildschirm
Ich habe ein bisschen nachgesehen und CGA ist ein RGBI-Signal mit TTL-Kommunikation. 4 Zeilen (RGB + Intensität), kombiniert mit HSYNC (15,75 kHz) und VSYNC (60 Hz). Die 4 "Farbeingänge" sind logisch ein oder aus. Die Kombination dieser erzeugt bis zu 16 Farben. Da es sich jedoch um einen gelben Bildschirm handelt, ist es wahrscheinlich am einfachsten, mit "All-High" oder "All-Low" zu beginnen ... Weiß und Schwarz.
Das Problem ist also das folgende ... Ich könnte das Arduino wahrscheinlich sowohl verdrahten als auch codieren, um die TTL-Leitungen ein- und auszuschalten, aber ich bin mir nicht sicher, was ich mit den HSYNC- und VSYNC-Eingängen mache. Und wie man die TTL-Flips zeitlich so einstellt, dass sie den Pixeln auf dem Bildschirm entsprechen. (Die Standard-CGA-Auflösung beträgt 320 x 200).
Ich bin nicht sehr gut in Elektronik, aber ich bin sehr gut darin, Anweisungen zu befolgen und Hinweise zu nehmen
Hat das schon mal jemand versucht?
EDIT : Könnte ich vielleicht eine modifizierte Version davon verwenden? http://www.eosystems.ro/deogen/deogen_en.html
EDIT2 : Ich habe nicht brauchen ein Arduino zu verwenden. Aber ich möchte es so einfach wie möglich halten.
EDIT3 : Es scheint, dass der betreffende Monitor tatsächlich ein zusammengesetzter Monitor und kein "echter" CGA-Eingangsmonitor ist. Das macht die Sache wahrscheinlich etwas einfacher. Aber ich bin immer noch daran interessiert, wie man mit einem Mikrocontroller ein reines CGA-Signal erzeugt ...
http://code.google.com/p/arduino-tvout/ ist wahrscheinlich das, was Sie brauchen. Wenn Sie Glück haben, akzeptiert der interne Monitor ein NTSC-Signal.
quelle
Ich habe noch nie CGA verwendet, aber Sie können möglicherweise eines der (vielen) Arduino VGA-Projekte an Ihren Zweck anpassen.
Ich habe ein VGA-Pong-Spiel um einen ATMega168 gebaut, das ein guter Ausgangspunkt sein könnte (Links 1 2 ). Ich habe die AVGA-Bibliothek verwendet , die das gesamte VGA-Timing unter Unterbrechung ausführt , sodass sich Ihr Vordergrundcode nur mit dem Verschieben von Sprites befassen muss.
Eine andere Möglichkeit könnte darin bestehen, eine YBox zu ändern .
quelle
Der IBM Portable PC verhielt sich so, als wäre der interne Monitor mit dem Composite-Ausgang einer Standard-CGA-Karte verbunden. Einer der Nebenwirkungen davon war, dass Farben, wenn der Modus auf "Farbe" von 80 Spalten eingestellt war, eher als graue Streifenmuster als als Graustufen angezeigt wurden. Dies wiederum würde viele Vordergrund-Hintergrund-Kombinationen (z. B. Blau auf Schwarz) fast vollständig unleserlich machen. Dies war ziemlich lästig, da (1) der interne Monitor monochrom war und daher Chroma-Informationen für ihn nutzlos wären; (2) Selbst wenn ein externer Composite-Monitor verwendet wurde, wurde das Colorburst-Signal im 80-Spalten-Modus falsch eingestellt, sodass ohnehin keine Farbe erhalten werden konnte.
Übrigens scheint der interne Monitor des Compaq einzigartig zu sein; Es wird die horizontale NTSC-Abtastrate verwendet, die vertikale Abtastrate kann jedoch entweder 60 Hz oder 30 Hz betragen. Ich bin mir nicht sicher, warum Compaq sich für die Verwendung von 30 Hz ohne Interlaced entschieden hat, anstatt den vertikalen Schaltkreis des Monitors zu verhexen, um mit dem nicht ganz richtigen Interlaced-Ausgang des 6485 zu arbeiten, aber es ist die einzige Maschine, die ich jemals mit einem gesehen habe 30Hz Display Scan.
quelle