Inhaltsverzeichnis

BWS

Heiko Poppe

Grafikkarte zum Anschluss an VGA-Monitor, wahlweise 32×32 Zeichen oder 64×16 (Peters-Kompatibel)

mit CLPD und DUAL-Port-Ram

s. http://www.robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=9512

http://www.robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=13104

http://www.robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=11682

s.a. http://www.ac1-info.de/galerie/poppe_heiko/poppe.htm
September 2015, Bildschirmkarte für K1520

Anwendungsmöglichkeiten:

1. Eine Darstellung 64×16, z.B. für den Ersatz einer K7023, in Kombination mit der 80×24 Darstellung, beides ohne Farbe (die Logik dafür wollte nicht mehr in den CPLD passen).

2. Eine Darstellung 32×32 für den Z1013 in Kombination mit der 80×24 Darstellung, hier ist eventuell sogar Farbe möglich. Die Zeichendarstellung beträgt wie beim Z1013 8×8 Pixel, damit kann der ZG-Inhalt vom Z1013 verwendet werden.

3. In Vorbereitung habe ich eine Darstellung 32×8 für den MC80.2 (ohne Farbe), dort muss u.a. noch der ZG-Inhalt angepasst werden. Die Anzeige erfolgt hier um den Bildschirm zu füllen mit doppelter Zeichengröße, dafür sollen dann auch kleine Displays eingesetzt werden können.

Wer die Karte nur monochrom betreiben und die Anzeige grün auf schwarz haben möchte kann es noch einfacher haben. Der Farb-RAM, die beiden ICs danach und die 3 Ausgangsstufen können komplett unbestückt bleiben. Vom Monochrom-Pin des JP7 wird direkt zum Grün-Ausgang an ST2 ein Widerstand 330 Ohm quer über die Platine gelegt - fertig. Wer das Bild noch schärfer haben möchte ersetzt den DL004 durch einen D204 oder einen 74S04.

2019 Neuauflage mit geändertem Layout

Karte von Klaus

http://www.robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=11682&pagenum=3#178457

geändert wurde:

Die Jumper sind überwiegend identisch mit der Version von 2015, d.h. der Schaltplan von Heiko passt genau so weiter. Die Jumper befinden sich nur zum Teil an anderer Position.

Änderungen sind:
JP4 (64/80) und JP5 (AC1) waren am hinteren Platinenrand und sind nun als Klavier ausgeführt. Die anderen beiden Klavierschalter daneben wären für ein Low der A13 und A14, wenn von der Möglichkeit eines 27128 oder 27256 gebrauch gemacht wird. High bekommen diese Leitungen - schon für den 2764 - automatisch über das Widerstandsnetzwerk. An Pin27 (/PGM) liegt also kein „hartes“ 5P mehr an, Pin26 war bisher „nc“.

* Widerstand in Reihe zur Diode in der MEMDI_OUT Leitung ist für /MEMDI und NANOS: Der Widerstand in der MEMDI_OUT Leitung wurde vorgesehen, weil der CPLD in einigen Konstellationen scheinbar zu schnell ist. Der Widerstand - welcher in seiner Größe zu probieren ist - soll die Flanken etwas ziehen, also das Signal etwas verzögern helfen. Es kann auch eine Drahtbrücke eingesetzt werden.

Unterlagen

Beschreibung

Der Kombi-BWS wurde ursprünglich für den AC1 entwickelt, um hier für CP/M eine 80×24 Darstellung zu ermöglichen. Die Funktionen des 80×24-Modus wurden nach dem Vorbild der Video3-Karte vom NANOS-System übernommen. Durch den universellen Aufbau ist die Schaltung auch in anderen Rechnern einsetzbar. Beim BWS ist die gesamte Logik außer RAM, Zeichengenerator und Farbausgabe in einem CPLD enthalten.

Der BWS stellt einen RAM von 2 kByte dar.

In der Farbversion kommt zum normalen RAM (Text-RAM) ein weiterer RAM, der Farbspeicher (Farb-RAM), hinzu. Er liegt parallel zum Text-RAM im gleichen Adressbereich und wird durch Setzen von Bit 0 im I/O-Register statt dem Text-RAM für die CPU sichtbar. Bit 0 entscheidet also, welcher RAM gerade aktiv gelesen/geschrieben werden kann.

Für jedes Byte im Text-RAM gibt es an gleicher Adresse ein FarbByte, welches die Vordergrund- und Hintergrundfarbe bestimmt. Es sind damit 7 Farben + INTENS jeweils für Vorder- und Hintergrund möglich.

Bit 0 Zeichen ROT Bit 4 Hintergrund ROT
Bit 1 Zeichen GRÜN Bit 5 Hintergund GRÜN
Bit 2 Zeichen BLAU Bit 6 Hintergrund BLAU
Bit 3 Zeichen INTENSIV Bit 7 Hintergrund INTENSIV

Für die Steuerung der BWS-Funktionen befindet sich ein rücklesbares I/O-Register im CPLD. Dieses belegt 2 aufeinanderfolgende Adressen.

Übersicht der Jumper

Belegung des I/O-Registers:

Zugriff auf das I/O-Register:

( X = mit JP2 eingestellter Wert)