DE2940897C2 - Digitales Setzgerät - Google Patents
Digitales SetzgerätInfo
- Publication number
- DE2940897C2 DE2940897C2 DE2940897A DE2940897A DE2940897C2 DE 2940897 C2 DE2940897 C2 DE 2940897C2 DE 2940897 A DE2940897 A DE 2940897A DE 2940897 A DE2940897 A DE 2940897A DE 2940897 C2 DE2940897 C2 DE 2940897C2
- Authority
- DE
- Germany
- Prior art keywords
- data
- character
- line
- contour
- memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/002—Specific input/output arrangements not covered by G06F3/01 - G06F3/16
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/12—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers by photographic printing, e.g. by laser printers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K2215/00—Arrangements for producing a permanent visual presentation of the output data
- G06K2215/0002—Handling the output data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K2215/00—Arrangements for producing a permanent visual presentation of the output data
- G06K2215/0002—Handling the output data
- G06K2215/0005—Accepting output data; Preparing data for the controlling system
- G06K2215/0011—Accepting output data; Preparing data for the controlling system characterised by a particular command or data flow, e.g. Page Description Language, configuration commands
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K2215/00—Arrangements for producing a permanent visual presentation of the output data
- G06K2215/0002—Handling the output data
- G06K2215/002—Generic data access
- G06K2215/0022—Generic data access characterised by the storage means used
- G06K2215/0025—Removable memories, e.g. cartridges
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K2215/00—Arrangements for producing a permanent visual presentation of the output data
- G06K2215/0002—Handling the output data
- G06K2215/002—Generic data access
- G06K2215/0028—Generic data access characterised by the format per se
- G06K2215/0034—Outline coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K2215/00—Arrangements for producing a permanent visual presentation of the output data
- G06K2215/0002—Handling the output data
- G06K2215/004—Generic data transformation
- G06K2215/0042—Rasterisation
- G06K2215/0045—Converting outline to bitmap
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K2215/00—Arrangements for producing a permanent visual presentation of the output data
- G06K2215/0002—Handling the output data
- G06K2215/0062—Handling the output data combining generic and host data, e.g. filling a raster
- G06K2215/0065—Page or partial page composition
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Optics & Photonics (AREA)
- Controls And Circuits For Display Device (AREA)
- Digital Computer Display Output (AREA)
- Record Information Processing For Printing (AREA)
- Dot-Matrix Printers And Others (AREA)
Description
20. Gerät nach Anspruch 16, dadurch gekennzeichnet, daß Mittel (Mikroprozessor 92 in Fig. 3) zur
Bildung von AX nach folgender Beziehung vorgesehen sind:
AX = (Y5- Yn) (dx/dy)
wobei
Y5 = die Y-Lage der laufenden Rasterlinie hinsichtlich eines Randes des entsprechenden Schriftzeichen-Gevierts,
2u
"iN = die Y-Lage des Ausgangspunkts der bestimmten Zeichenkoniur ninsitiiUicn des Räüds des zugehörigen Schriftzeichen-Gevierts, und
dx/dx = die inkrcmentalen X- und Y-Abstände eines geradlinigen Vektors von \, entlang der entsprechenden Zeichenkontur ist.
21. Gerät nach Anspruch 20, dadurch gekennzeichnet, daß Mittel (Mikroprozessor 92 in Fig. 3) zur Bildung von AX nach folgender Beziehung vorgesehen sind:
<u wobei j eine erste Konstante gleich der Anzahl der Rastereinheiten in der X- oder Y-Richtung, ausgedrückt
durch die den 'vert dx/dy darstellende digitale Zahl, und Keine zweite einerganzen Zahl gleiche Konstante
ist.
Bekannte digitale Setzgeräte bilden typographische Schriftzeichen ab, die in digitaler Form kodiert und auf
einem beliebigen digitalen Speichermedium, beispielsweise Magnetband, Trommel, fester oder flexibler
Scheibe (Floppy Disk) gespeichert sind. Solche digitalen Setzgeräte sind normalerweise mit einer Kathodenstrahlröhre (CRT) oder einem Laserstrahl-Abbildungssystem zur Aufzeichnung der Schriftzeichen auf fotografischen Film oder Papier versehen. Im Falle digitaler CRT-Setzgeräte werden aufeinanderfolgende Schriftzei-
chen jeweils einzeln vollständig durch den Strahl der Kathodenstrahlröhre abgebildet, der in zwei Dimensionen
durch die X-Y-Ablenkspannungen der Kathodenstrahlröhre positionsgesteuert ist. Normalerweise wird jedes
Schriftzeichen aus einer Reihe vertikaler Striche aufgebaut, die ausgehend vom linken Seitenrand des Schriftzeichens aufeinanderfolgend zum rechten Rand wandern. Ist ein Schriftzeichen vollständig aus Strichen aufgebaut,
so wird der Strahl der Kathodenstrahlröhre in die Stellung des linken Seitenrands des nächstfolgenden Schrift
zeichens gebracht, und so weiter.
In einem anderen bekannten Gerät der eingangs genannten Gattung wird an Stelle des Kathodenstrahlröhren-Abbildungssystems ein Laserstrahl zum Abbilden typografischer Schriftzeichen auf einem Film oder Papier
verwendet. In diesem Fall wird der das Schriftzeichen schreibende Strahl in einer einzigen Linie über die
gesamte Breite des Ausgangsfilms oder -papiers ausgelenkt, und das belichtete Material wird in einer Richtung
quer zur Richtung der Abtastlinie bewegt. Für ein solches Abbildungssystem auf Laserbasis müssen die Strahlschaltpunkte berechnet werden, damit der abtastende Strahl rasch ein- und ausgeschaltet werden kann. Zur
Lösung dieses Problems werden die Schriftzeichen eines jeden Schriftzeichensatzes als digitale Vorlage für jede
zu setzende Typengröße digital umgesetzt. Auf diese Weise können die kodierten Schriftzeicheninformationen
direkt, insbesondere ohne Maßstabsänderung, die normalerweise umfangteiche Berechnungen erfordert, ver
arbeitet werden. Der Nachteil dieser Anordnung liegt darin, daß zum Abbilden der Schriftzeichen in der
gewünschten Typengröße in dem Gerät jeweils ein gesamter Schriftzeichensatz zur Verfügung stehen muß. Dies
führt zu einem großen Speicherraumbedarf des Geräts oder macht erforderlich, daß das Gerät dann mit einem
anderen digital kodierten Schriftzeichensau auszustatten ist, wenn eine andere Typengröße oder ein anderer
Schriftzeichensatz verwendet werden soll.
In einem bekannten Gerät, einem Rechnerausgabegerät, werden Schriftzeichen mit einem rotierenden Polygonspiegel auf Mikrofilm durch Projektion eines Laserstrahls in horizontalen Rasterlinien zusammengesetzt.
Hierzu werden binär kodierte Schriftzeichen von einer Datenverarbeitungseinheit, nämiieh einem Computer in
einem Umlaufspeicher gespeichert, in dem sie jeweils einmal während des Überstreichens je einer horizontalen
D 4U W I
Rasterlinie mittels des Laserstrahls umlaufen und aus dem sie in einen Schriftzeichengcncrator eingespeist werden. Der Schriftzeichengenerator bildet aufeinanderfolgend Reihen von Signalformen, die einem horizontalen
Abschnitt jedes Schriftzeichens entsprechen und einen Lasermodulator steuern. Der Abschnitt wird somit wahrend jeder horizontalen Rasterlinie durch Modulation des Laserstrahls mit den Signalformcη aufgezeichnet. Der
SchrilV/cichungcncnilcir ist fest verdrahtet und stellt Schrift/eichen eines Schrift/cithensni/cs in nur einer <
SchiillKiiHle ilur. Die Schriftzeichen werden ims einer in ihm gespeicherten l'olgc von Punkten uiul hnii/oMlnlen
Linien gebildet. - Die Datenvcrarbeitungseinhcit dient «ils hingubcmitlcl /ur Hcrcilsiclking eislcr digiliilcr
DE'.-n, die Identität und Lage der Schriftzeichen definieren. Diese Daten enthalten aber keine Informationen
über die Größe der Schriftzeichen, da diese durch den Schriftzeichengenerator festliegt. - Dieses Gerät zur
Erzeugung von Schriftzeichen aus Rasterlinien ist nicht flexibel insbesondere für die verschiedenen Belange der
Satzherstellung einsetzbar, da die Schriftzeichen in dem Schriftzeichengenerator fest vorgegeben sind. Bei vertretbarem Speicheraufwand ist die Zahl der verfügbaren abbildbaren Schriftzeichen gering, im vorliegenden
Fall auf einen Schriftzeichensatz einer Schriftzeichengröße beschränkt. Die Eigenart dieses Schriftzeichengenerators bedingt darüber hinaus eine verhältnismäßig grobe Darstellung der Schriftzeichen mit dem Laserstrahl,
so daß dieses Gerät für typographisch anspruchsvolle Aufgaben ungeeignet erscheint. is
Die gleichen Nachteile treffen für einen bekannten Drucker als Computerperipheriegerät zu (US-PS
40 31 519). In diesem Drucker, der dem voranstehend erörterten Gerät in vielem entspricht, werden nur 64
druckbare Buchstaben in dem Schriftzeichenspeicher gespeichert, die - ohne Veränderung ihrer Größe - ausgewählt werden, um den Laserstrahlmodiilafnr 7u steuern. Zur Speicherung jedes dieser Schriftzeichen wird
eine bit-Anordnung eingesetzt, in der die Schriftzeichen Punkt für Punkt durch Anwesenheit oder Fehlen einer
Markierung gespeichert sind. Diese Speichertechnik ist äußerst aufwendig, um digitalisierte Schriftzeicheninformationen zu speichern. Demzufolge kann nur ein sehr grobes Schriftzeichenraster kodiert werden, welches
bei vertretbarem Aufwand typographischen Erfordernissen nicht genügt. Der Aufwand wird noch wesentlich
größer, wenn Schriftzeichen unterschiedlicher Größe abgebildet werden sollen.
Der vorliegenden Erfindung liegt daher die Aufgabe zugrunde, ein Gerät der in dem Oberbegriff des
Anspruchs 1 genannten Gattung so zu verbessern, daß Schriftzeichen unterschiedlicher Größe mit hohem Auflösungsvermögen und bei geringem Speicherbedarf abrufbar sind. Damit soll sich das Gerät insbesondere zur
Herstellung typographisch anspruchsvollen Satzes eignen.
Diese Aufgabe wird durch die in dem kennzeichnenden Teil des neuen Hauptanspruchs angegebene Erfindung gelöst.
j ie ist besonders vorteilhaft bei Geräten zur Erzeugung von Schriftzeichen aus Laser-Rasterlinien, von denen
jede linien- oder punktförmige Abschnitte mehrerer Schriftzeichen in einer Zeile darstellen kann, einsetzbar.
Bevorzugt erstrecken sich Rasterlinien im wesentlichen über die gesamte Breite des Druckmediums, das mindestens die Größe einer üblichen maschinengeschriebenen Seite aufweist. Das Druckmedium kann aus Papier
bestehen, das auf übliche Weise zur KJebemontage oder zur Herstellung von Bürokopien verwendet werden
kann; das Druckmedium kann aber auch aus einer Druckplatte bestehen.
Die Typengröße, d. h. der Schriftgrad, ist hier nicht mit den digitalen Daten, die die Kontur der Schriftzeichen
beinhaltet, festgelegt, sondern kann mit den ersten digitalen Daten bestimmt werden. - Die zweiten digitalen
Daten definieren die Kontur- oder Umfangslinie jedes Schriftzeichens eines gegebenen Schriftzeichensatzes in
bezug auf ein vorgegebenes Koordinatensystem. Das Koordinatensystem oder der normalisierte Kodiersatz ist
für alle Schriftzeichen aller Schriftzeichensätze der gleiche und wird zur Erzeugung der Schriftzeichen aller
unterschiedlichen Größen oder Schriftgrade verwendet. Die Schrifthöhe und -weite jedes Schriftzeichens kann
nach Belieben vergrößert oder verkleinert werden, ohne Rücksicht auf die Koordinaten, in denen die Schriftzeichen kodiert sind.
Gemäß Anspruch 2 sind Rasterlinien-Speichermittel vorgesehen, in die den Rasterstrahl steuernde dritte
Daten eingespeichert werden. Durch die Steuerung wird ein Strahl, vorzugsweise ein Laserstrahl, der die Rasterlinie erzeugt, ein- und ausgeschaltet, während er über das Dmckmedium geführt wird. Die in dem Rasterlinicnspeicher gespeicherten dritten Daten sind in den elektronischen Datenverarbeitungsmitteln aus den ersten und
zweiten digitalen Daten se errechnet worden, daß sie unter Berücksichtigung der Größe der zu setzenden
Schriftzeichen die Schnittstellen der Umrisse mehrerer Schriftzeichen, vorzugsweise sämtlicher Schriftzeichen
innerhalb einer Zeile, mit jeweils einer Rasterlinie bestimmen. Die Schriftzeichen werden dabei also mit Rasterlinien, die parallel zur Zeilenrichtung liegen, in der Weise gesetzt, daß die Umschaltepunkte zur Umsteuerung
des Laserstrahls (Hellsteuerung) entsprechend der Schriftgroße verändert werden, wobei sich die Veränderung
der Umschaltpunkte, beispielsweise eines ersten Schriftzeichens innerhalb der Zeile auch auf die Umschaltpunkte der nachfolgenden Schriftzeichen innerhalb der Zeile auswirkt. Dadurch wird eine wesentlich verbes-
serte Gesamtwirkung des Geräts erzielt. In dem Gerät werden die dritten digitalen Daten für mindestens einen
Teil der Rasterlinien, die sich über die Breite mehrerer Schriftzeichen erstrecken, vorübergehend in einem
Rasterlinien-Speicherpuffer gespeichert. Die mit dem Rasterlinien-Speicherpuffer verbundenen Schriftzeichenabbildungsmittel sind zur Abbildung aufeinanderfolgender Rasterlinien auf einem Dmckmedium vorgesehen. Zur Bewegung des Druckmediums in einer Richtung quer zur Rasterlinie sind Antriebsmittel vorgesehen.
Der Liniempeicherpuffer enthält vorzugsweise zwei Linienpuffer, von denen jeder aus einer Vielzahl von
Speicherelementen aufgebaut ist, von denen jedes eine einzelne Binärzahl speichert, die mit einem entsprechenden Rasterpunkt auf der Rasterlinie korrespondiert Die Binärzahlen im ersten Linienpuffer können also
Positionen auf der Rasterlinie darstellen, bei welchen der Abtaststrahl abgeschaltet werden soll. Der Linienspeicherpuffer kann außerdem einen dritten Linienpuffer enthalten, der mit den anderen zwei identisch ist Die
Binärzahlen in diesem dritten Linienpuffer können somit die Positionen auf der Rasterlinie darstellen, bei der
der Ein- und Ausschaltzustand des Strahls umgekehrt werden soll, so daß eine Tonwertumkehr für eine gesamte
Seite oder einen geradlinigen Teil derselben bewirkt wird.
tu oy ι
Die ersten, Identität, Form, Größe und Lage der zu setzenden Schriftzeichen definierenden digitalen Daten
können von einem Rechnersystem (mit angeschlossenem Setzgerät) oder von einem Speichermedium, beispielsweise einer Magnetscheibe, stammen. Die zweiten digitalen Daton werden vorzugsweise auf einem
magnetischen Aufzeichnungsträger, beispielsweise einer Magnetscheibe, gespeichert.
5 Die Art und Weise, in der die zweiten digitalen Daten die Kontur eines jeden Schriftzeichens eines Schriftzeichensatzes definieren, soll im folgenden beschrieben werden. Diese zweiten digitalen Daten enthalten im
wesentlichen Digitalzahlcn, die die X- und Y-Koordinaten der Ausgangspunkte der Zeichenkonturen definieren, sowie Digitalzahlen, die die Länge und die Richtung einer Vielzahl geradliniger Vektoren, die sich aufeinanderfolgend vm den Ausgangspunkten entlang den Zeichenkonturen erstrecken, definieren. Länge und Rich-IO tung eines jeden Vektors werden durch den ersten Koordinatenabstand X und den zweiten Koordinatenabstand
Y von einem Vektorende zum anderen dargestellt.
Nach einem bevorzugten Merkmal der vorliegenden Erfindung sind die die Vektoren definierenden Digitalzahlen so angeordnet, daß die Vektoren einer gesamten Zeichenfolge aufeinanderfolgend angegeben werden,
bevor die Vektoren einer weiteren Zeichenfolge definiert werden. Die zweiten digitalen Daten enthalten zusätz-15 lieh weitere mit den die Koordinaten eines jeden Ausgangspunkts definierenden Digitalzahlen zusammenhängende Digitalzahlen, die die Ausgangsadressen der die Vektoren der zugehörigen Zeichenfolge definierenden
Digitalzahlen darstellen. Auf diese Weise kann eine einzelne Vektor-Zeichenfolge von einer Vielzahl von Ausgangspunkten innerhalb eines Schriftzeichensatzes adressiert werden. Schließlich ist es zweckmäßig, wenn die
die Koordinaten eines Ausgangspunkts definierenden Digitalzahlen weiterhin den Quadranten (links oder
20 rechts) mindestens des ersten Vektor« der damit zusammenhängenden sdrsssisrtsn Vsktcr-Zcichcnfolgc
bestimmen.
Schriftzeichen-Entwerfer neigen dazu, einige wenige Schriftzeichen-Grundformen zu schaffen, die im ganzen
Satz direkt oder spiegelbildlich wiederholt werden. Überlegungen zur Übereinstimmung erfordern, daß einige
1 " wenige Formen im gesamten Satz wiederholt werden, während es die Symmetrie erfordert, daß das Spiegelbild
25 verwendet wird. Die zur digitalen Definition der Schriftzeichen verwendeten Vektor-Zeichenfolgen gestatten es,
; daß die Mengen der zur Definition eines gesamten Schriftzeichensatzes erforderlichen Daten erheblich vermin-
/ '■■ dert wird, da eine einzelne Vektor-Zeichenfolge von den Ausgangspunkten verschiedener Schriftzeichen adressiert und so gerichtet werden kann, daß sie sich nach links oder nach rechts erstreckt, so daß Spiegelbilder gebildet werden.
·; 30 Das in dem Setzgerät verwendete elektronische Datenverarbeitungssystem enthält vorzugsweise einen Speicher mit willkürlichem Zugriff zur Speicherung vierter digitaler Daten, ein Datenverwaltungs-Untersyttem zum
: Empfangen und Speichern der vierten digitalen Daten im Speicher mit willkürlichem Zugriff, sowie ein Kontu-
','; renumsetzer-Untersystcm zum Empfangen der vierten digitalen Daten aus dem Speicher mit willkürlichem
,, Zugriff und zum Errechnen der die die Rasterlinie schneidenden Schriftzeichenumgrenzungen definierenden
.;■; 35 dritten digitalen Daten aus diesen vierten digitalen Daten. Die Art und Weise, in der die vierten digitalen Daten
■;i
verarbeitet und gespeichert und sodann in die dritten digitalen Daten umgewandelt werden, wird im folgenden
im einzelnen behandelt.
'-J1
Die Erfindung wird im folgenden anhand der Zeichnung näher erläutert:
7 Fig. 1 ist ein Blickschaltbild der gesamten Setzanordnung nach der vorliegenden Erfindung;
40 Fig. 2 ist ein schematisches Diagramm eines eindimensionalen Abtasters (Laserrecorder), der im System
V nach Fig. 1 verwendet werden kann;
j? ■ F i g. 4 ist ein Blockschaltbild der Datenverwaltungs-Unteranordnung im Ausgabedaten-Verarbeitungssystem
;, nach Fig. 3;
Ji 45 Fig. 5 ist ein Blockschaltbild des Konturenumsetzer-Untersystems in der Ausgabedaten-Verarbeitungsanordii
nung nach Fig. 3;
:; Fi g. 6 ist ein Diagramm, das die Struktur des Schriftspeichers in der Schriftsatzspeichereinheit in der Anord-
;;| nung nach Fig. 1 darstellt;
P
Fig. 7 ist ein Diagramm, das die Struktur des Schriftsteuerspeichers im Schriftspeicher nach Fig. 6 darstellt;
■' 50 F i g. 8 ist ein Diagramm, das die Struktur des Schriftbreitenspeichers im Schriftspeicher nach F i g. 6 darstellt;
II den;
|5 Fig-10 ist ein Diagramm, das die Struktur der im Konturendatenspeicher im Schriftspeicher nach Fig. 6 ent-
r| haltenen Konturendatenwörter zeigt;
j§ 55 Fig. 11 ist ein Diagramm, das zeigt, wie der Konturendatenspeicher auf einer Magnetscheibe angeordnet ist;
I Fig. 12 ist ein Diagramm, das die Struktur der im Konturendatenspeicher nach F ig. 11 enthaltenen Kopf-und
|| Konturendaten zeigt;
?i
F i g. 13 ist ein Diagramm, das die Eingabekodestruktur der Terminalelemente zeigt, die vom Eingabesystem
:| zu einer Schriftsatzdatenübertragung abgesendet werden;
l| 60 Fig. 14 enthält ein Flußdiagramm, das das Wirkungsprinzip des Datenverwaltungs-Untersystems und des
%
Konturenumsetzer-Untersystems zeigt;
j| Datenverwaltungs-Untersystem;
§
Fig. 16 ist ein Diagramm der Anordnung der Daten im Datenspeicher mit willkürlichem Zugriff RAM;
I 65 Fig. 17 ist ein Diagramm, das die Struktur der Konturendaten im Datenspeicher mit willkürlichem Zugriff
Ί RAM zeigt;
Fig. 18 ist ein Diagramm, das die in der durch das Ausgabedaten-Verarbeitungssystem durchgerührten
Grundberechnung verwendeten Parameter zeigt;
Fig. 19 ist ein Diagramm, das die Daten- und Steuereingaben für den fest verdrahteten Prozessor im Konturenumsetzer-Untersystem
zeigt;
Fig. ?0A und 20B sind funktioneile Blockschaltbilder des festverdrahteten Prozessors mit den Ausgangsdaten-(Rasterzeilen)-Speicherpuffern;
Fig. 21 ist Blockschaltbild, das die Hauptabschnitte des festverdrahteten Prozessors zeigt; >
Fig. 22 ist ein Blockschaltbild der Daten- und Steuerpuffer und des Speicherabschnitts des festverirahteten
Prozessors nach Fig. 21;
Fig. 23 ist ein Blockschaltbild des Adressenrechnungsabschnitts im Ausgangsdatenpuffer des festverdrahtaten
Prozessors nach Fig. 21, und
Fig. 24 ist ein Blockschaltbild des Ausgabepuffers und des Videologikabschnitts des festverdrahteten Prozessors
nach Fig. 21.
Unter Bezugnahme auf die Fig. 1 bis 24 der Zeichnungen soll nun die bevorzugte Ausführungsform der vorliegenden
Erfindung beschrieben werden. In den verschiedenen Figuren gezeigte identische Elemente sind mit
der gleichen Bezugszahl gekennzeichnet.
Das gesamte erfindungsgemäße System ist in Blockform in Fig. 1 dargestellt. Dieses allgemeine System ist in is
eine Eingabevorrichtung, die Instruktionen, Schriftzeicheninformationen und Schriftsatzdaten von getrennten
Quellen 30 und 32liefert, und ein Ausgabedaten-Verarbeitungssystem 34, das ein Schriftzeichenabbildungssystem
36 ansteuert, unterteilt.
Die Eingabevorrichtung kann ein Papierstreifen- oder Magnetband-Peser, ein getrennter Rechner, ein Eingabetermina!
mit einer Tastatur und einem Kathodenstrahlrohrschirm oder ein Datenübertragungskanal, wie z. B.
eine Telcronleitung, sein. Diese Eingabevorrichtung 30 liefert dem Verarbeitungssystem 34 digitale Daten, die
Identität, Form, Größe und Lage der zu setzenden Schriftzeichen definieren. Der Ausdruck »Identität« von
Schriftzeichen, wie hier verwendet, bezeichnet ein bestimmtes gewähltes Schriftzeichen, beispielsweise ein großes
»A«, ein kleines »a«, ein großes »B«, die Ziffer »5«, den Strichpunkt»;« usw. Diese Identität wird durch einen
ASCII- oder TTS-Kode gegeben. Der Ausdruck »Form«, wie hier verwendet, soll die Form eines Schriftzeichens,
d. h. den speziellen Schriftzeichensatz und die Größe und Richtung der Neigung, bestimmen. Der Ausdruck
»Größe«, wie hier verwendet, soll die Größe in der X-Richtung (»Setzbreite«) und in der Y-Richtung (»Punktgröße«) jedes Schriftzeichens bestimmen. Der Ausdruck »Lage«, wie hier verwendet, soll die Koordinatenlage
(X, Y) des Schriftzeichens auf der zu setzenden Seite bestimmen In dieser speziellen Ausfuhrungsform
bestimmt die Eingabevorrichtung 30 die X-Lage und die Y-Lage der oberen linken Ecke des Geviertes, riiindestens
des ersten Schriftzeichens auf der Seite. Die folgenden Schriftzeichen werden im Verhältnis zu dem
unmittelbar vorausgehenden Schriftzeichen angeordnet, wenn keine Lageipformation gegeben ist.
Zusätzlich zu Identität, Form, Größe und Lage der Schriftzeichen kann die Eingabevorrichtung 30 auch Seitenvarianteninformation
liefern, d. h. »globale Kommandos«, die sich auf alle oder nur eine Gruppe von Schriftzeichen
auf einer Seite beziehen. Beispiele solcher Kommandos sind »fehlerhafte Ableseung«, die ein Links-Rechts-Spiegelbild
auf der Seite durch Überspringen der X-Positionen aller Schriftzeichen beeinflußt, und
»Umkehrvideo«, das eine Helligkeitsumkehr für eine ganze Seite beeinflußt. Mit Umkehrvideo kann beispielsweise
eine Seite als weiß auf schwarz, nicht schwarz auf weiß, abgebildet werden.
Kommandos von der Eingabevorrichtung 30 können auch eine Helligkeitsumkehr für einen Abschnitt einer
Seite beeinflussen, so daß nur ein geradliniger begrenzter Teil der Seite weiß auf schwarz und nicht schwarz auf
weiß ist.
Die Schriftsatzspeichereinheit 32 ist im wesentlichen ein Magnetscheibenleser, der Teil der Eingabevorrichtung
30sein kann. Diese Schriftsatzspeichereinheit liefert dem Ausgabe-Verarbeitungssystem 34 digitale Daten,
die den von der Eingabevorrichtung 30 zuvor gewählten Schriftzeichensatz definiert. Diese »zweiten« di£valen
Daten (zum Unterschied von den »ersten« von der Eingabevorrichtung 30 gelieferten digitalen Daten) definieren
die Kontur jedes Schriftzeichens eines Schriftzeichensatzes hinsichtlich eines normalisierten Kodiersatzes
erster und zweiter Koordinaten. Diese zweiten digitalen Daten definieren insbesondere die Profile öder
Schwarz-Weiß-Grenzen eines jeden Schriftzeichens. Wird ein »Profil« einfach als eine Umgrenzung eines
Schriftzeichens betrachtet, so zeigt es sich, daß jeder »dunkle« Teil eines Schriftzeichens (wenn das Schriftzeichen
dunkel auf einem hellen Untergrund ist) zwischen zwei Profilen (äußeren Umgrenzugen oder Rändern)
des Schriftzeichens liegen muß. Durch definieren aller Profile des Schriftzeichens hinsichtlich eines Koordiriatensatzes
ist die »Kontur«, Umgrenzung oder Form des Schriftzeichens vollständig definiert.
Ein Aspekt dieser zweiten digitalen Daten, die die Kontur eines jeden Schriftzeichens eines Sehriftzeichensatzes
definieren, ist, daß die Schriftzeichenkonturen in Werten eines normierten Koordinatensatzes, beispielsweise
der X-Y-Koordinaten eines kartesischen Koordinatensatzes, definiert werden. Der Ausdruck »normiert«,
wie hier verwendet, bedeutet, daß die Definition eines Schriftzeichens in den Werten des Koordinatensatzes
lediglich auf eine beliebig gegebene absolute Größe oder eine endgültige Größe des Schriftzeichens, wenn es
abgebildet wird, bezogen ist. Die digitalen Werte, die ein Schriftzeichen in diesem normierten Koordinatensatz
definieren, sind also die Werte, von denen ausgehend das Schriftzeichen nach oben oder nach unten bis zur endgültigen
Ausgangsauflösung maßstäblich verändert wird. Wenn der Skalenfaktor nicht gerade gleich I ist (eine i>o
einmalige Situation), wird das Schriftzeichen mit einer anderen Auflösung als die endgültige Ausgabegröße
definiert.
Das Ausgabedaten-Verarbeitungssystem 34, das im folgendem im einzelnen beschrieben werden soll, ist beispielsweise
in der Lage, Schriftzeichen mit Punktgrößen von größenordnungsmäßig 3-130 im Maßstab zu verändern,
ein Ausdehnungsfaktor von 43 zu 1. Unabhängig von diesem Umfang von Punktgrößen wird die Kontur
eines jeden Schriftzeichens nur einmal hinsichtlich des normierten Kodiersatzes der Koordinaten definiert.
Das Ausgabedaten-Verarbeitungssystem 34 empfängt die ersten Identität, Form, Größe und Lage der zu setzenden
Schriftzeichen definierenden digitalen Daten und die zweiten die Kontur eines jeden Schriftzeichens des
gewählten Schriftzeichensatzes definierenden digitalen Daten und erzeugt dritte, eine Rasterzeile sehne: dende
Schriftzeichenumgrenzungen definierende digitale Daten. Diese dritten digitalen Daten sind in einem oder
mehreren ebenfalls innerhalb des Ausgsbedaten-Verarbeitungssyrtems angeordneten Rasterlinienpuffern fertig fur das Schriftzeichenabbildungssystem 36 gespeichert Der oder die Rasterlinien-Speicherpuffer sind vor-
zugsweise aus binären Speicherelementen aufgebaut, von denen jedes eine einzelene Binärzahl speichert, die
mit einem entsprechenden einzelnen Rasterpunkt auf der Rasterzeile korrespondiert Der oder die Zeilenpuffer !:
speichern genügend Raster (dritte digitale Daten) für einen Teil der Rasterlinie, die sich entlang der Breite mindestens mehrerer Schriftzeichen ausdehnt Tatsächlich speichern der oder die Zeilenpuffer vorzugsweise ausreichend Daten, um eine gesamte Rasterlinie, die sich über die gesamte Breite des Abgabedruckmediums :
ίο erstreckt definieren zu können, was beispielsweise mindestens die Größe einer üblichen maschinengeschriebe-
nen Seite ausmachen kann. '
Die in dem oder den Rasterlinien-SpeicherpufTer(n) gespeicherte Information wird durch ein mit den Ausgabedaten-Verarbeitungssystem 34 verbundenes Schriftzeichenabbildungssystem 36 in ein Rasterzeilenbild !
umgewandelt Dieses Schriftzeichenabbildungssystem erzeugt auf einem Druckmedium ein Bild für die spe-
is zielle Rasterlinie, die durch die in dem oder den Rasterlinien-Speicherpufler(n) gespeicherte Information definiert ist Zur Bewegung des Druckmediums in einer Richtung quer zur Richtung der abgebildeten Rasterlinie ist
im Schriftzeichenabbildungssystem gleichzeitig ein Antriebsmechanismus vorgesehen. Ά
aufweisen. Vorzugsweise enthält das Schriftzeichenabbildungssystem jedoch eine Vorrichtung, beispielsweise ;y
eine Kathodenstrahlröhre oder eine Laserquelle, zur Erzeugung eines Abtaststrahls sowie Mittel, beispielsweise .?■
über dem Druckmedium. Ein derartiger eindimensionaler Abtaster ist in Fig. 2 dargestellt '
F i g. 2 zeigt eine Laserquelle 38, die einen optischen Strahl 40 erzeugt Der Strahl wandert durch einen Lichtmodulator 42, beispielsweise einen akustisch-optischen Modulator, der den Strahl durch ein Videosteuersignal
44 ein- und ausschaltet. Dieses Signal wird im Ausgabedaten-Verarbeitungssystem 34 als zeitliche Funktion der
in dem oder den Rasterlinien-SpeicherpulTer(n) gespeicherten dritten digitalen Daten erzeugt Der vom Verschluß ausgehende intermittierende Strahl 40 wird zu einem bewegbaren Spiegel 46 geführt, der sich um eine
Achse 48 parallel zur Spiegelebene und senkrecht zur Zeichnungsebene wiederholend vorwärts und rückwärts
bewegt. Der Spiegel 46 wird durch einen GaI vanometermctor angetrieben, de." den Spiegel bei im wesentlichen
;o konstanter Winkelgeschwindigkeit in einer Richtung bewegt den Spiegel schnell in die Ausgangslage zurück- :
bringt und diesen Abtastvorgang nach Eingang des nächsten Triggerimpulses auf Leitung 50 wiederholt.
Der Strahl wird vom Spiegel 46 reflektiert und wandert durch ein krümmungsreduzierendes optisches System
52, das ihn auf ein geeignetes Aufzeichnungs- oder Druckmedium 54 fokussiert. Der Zweck des krümmungsreduzierenden optischen Systems sowie ein spezielles System, das mit dem in F i g. 2 gezeigten Laserrecorder ver-
wendet werden kann, ist in der DE-OS 24 38 353 (US-Patentschrift 38 81 801) beschrieben. Das mit dem Laserrecorder von Fig. 2 verwendete Druckmedium 54 kann ein fotografischer oder elektrofotographischer
Film oder Papier sein, das gegenüber der speziellen Lichtfrequenz des Laserstrahls empfindlich ist Dieses
Druckmedium wird, vorzugsweise während der Rückbewegung des Spiegels 46, in einer Richtung quer zur Richtung der Strahlabtastlinie bewegt. Das Druckmedium wird durch eine Vorschubwalze 56 und einen Antriebsmo-
tor 58 auf Grund eines Triggerimpulses auf Leitung 60 fortbewegt. Dieser Triggerimpuls wird ähnlich durch das
Ausgabedaten-Verarbeitungssystem 34 als zeitverschobene Version des Triggerimpulses auf Leitung 50.
Allgemein ist dann ersichtlich, daS die Funktion des Ausgabedaten-Verarbeitungssystems darin liegt, die aus
der Eingabevorrichtung 30 und der Schriftsatzspeichereinheit 32 empfangenen ersten und zweiten digitalen
Daten in dritte digitale Daten umzuwandeln, die zweckmäßigerweise zur Steuerung des Schriftzeichenabbil
dungssystems 36 verwendet werden können. Der Aufbau der vom Ausgabedaten-Verarbeitungssystem empfan
genen ersten und zweiten digitalen Daten wie auch der Struktur des Ausgabedatenverarbeitungssystems soll
nun unter Bezugnahme auf die Fig. 3-23 im einzelnen beschrieben werden. Die Beschreibung wurde der besseren Übersicht halber in getrennte Abschnitte wie folgt unterteilt:
1. Ausgabedatenverarbeitungssystem
1.1 Allgemeines
1.2 Datenverwaltungs-Untersystem DMS
1.3 Konturenumsetzer-Untersystem OCS
2. Beschreibung der Schriltsatzdaten
2.1 Allgemeines
2.2 Schriftsteuerspeicher
2.2.1 Anzahl der Schriftzeichen
2.2.3 Zahl der Schriftzeichen in 16 K
2.2.4 Zahl der Schriftzeichen in 32 K
2.2.5 Zahl der Schriftzeichen in 48 K
2.2.6 Zahl der Sektoren, letzter Speicher mit willkürlichem Zugriff
2.2.7 Y MIN
2.2.8 YMAX
2.2.9 Verschiebung zur Schriftlinie bei Akzenten und auf Großbuchstaben
2.2.10 Verschiebung des Akzents bei Kursivzeichen Nr. 0
2 2.11 Vorschii-huim /ur Schriftlinic/ausgepriigte Exponent/eichen
2.2.12 Verschiebung /ur Schriniinic/Ziihlcr bei Bruchzahlen
29 40 897 | Allgemeines | > | 5 |
2.2.12 Verschiebung zur Schriftlinie/Indexzeichen auf Exponentzeichen | .1 Seitendaten | ||
2.2.14 Verschiebung zur Schriftlinie/lndsxzeichen auf Indexzeichen | .2 Schriftzeichensatz-Daten | ||
2.2.15 Verschiebung zur Schriftlinie/Exponentzeichen 1. Ordnung | .3 andere Daten | ||
2.2.16 Verschiebung zur Schriftlinie/Indexzeichen 1. Ordnung | .4 Notation | ||
2.2.17 Verschiebung zur Schriftlinie/Exponentzeichen auf Exponentzeichen | .4.1 »«Terminal | 10 | |
2.2.18 Verschiebung zur Schriftlinie/Exponentzeichen auf Indexzeichen | .4.2 () Non-terminal | ||
2.2.19 geringer Zwischenraum | .4.3 () Fakultative Wiederholungen | ||
2.2.20 Zwischenraum En | 4.1.4.4 / Entweder-Oder | ||
2.2.21 Geviert-Zwischenraum (Em) | 4.1.4.5 * Nur einmal | ||
2.222 Verschiebung zur Schriftlinie/Nenner bei Bruchzahlen | 4.2 Seiten-Daten | 15 | |
2223 Seriennummer | 4.1 | ||
2.2.24 Akzentverschiebung bei Kursivzeichen Nr. 1 | !.1 Struktur der Seiten-Daten | ||
2.225 Akzentverschiebung bei Kursivzeichen Nr. 2 | |||
2.2.26 Akzentverschiebung bei Kursivzeichen Nr. 3 | |||
2.2.27 Akzentverschiebung bei Kursivzeichen Nr. 4 | 20 | ||
2.2.28 Kapitälchen, % | |||
2.2.29 Reserven | |||
2.2.30 Schriftsatz-Layout-Nummer | |||
2.2.31 Nummer der Schriftsatz-Vorlage | |||
2.2.33 Ausführliche Beschreibung des Schriftzeichensatzes | 25 | ||
2.2.34 Willkürliche Füllzeichen | |||
2.2.35 Anschlußadresse | |||
2.3 Schriübreitespeicher | |||
2.3.1 Einheiten-Breite | |||
2.3.2 Kennzeichenbreite | 30 | ||
2.3.3 Anschlußadresse | |||
2.4 Schriftzeichen-Digitalisierung | |||
2.4.1 Schriftzeichen-Definitionen | |||
2.4.2 Skala | |||
2.4.3 Konturen-Datenwörter | 35 | ||
2.4.4 Struktur des Konturen-Datenspeichers | |||
2.4.4.1 FSIZE | |||
2.4.4.2 CINDEX | |||
2.4.4.3 ENDFNT | |||
2.4.4.4 Sektorfüller | 40 | ||
2.4.4.5 Anfangsetikett- und Konturendaten | |||
2.3.3.6 Anfangsetikettspeicher | |||
2.4.4.7 Konturenspeicher | |||
2.4.4.8 CHKSUM | |||
2.4.5 Profil-Zeichenfolgen | 45 | ||
2.4.6 Verschiedenes | |||
2.5 Schriftzeichensatz-RAM-Format | |||
2.5.1 In-RAM-Tabelle | |||
2.5.2 In-Seg-Tabelle | 50 | ||
3. Beschreibung der Seitendaten | |||
3.1 Definition der Seiten | |||
3.2 Seitenvarianten | |||
3.2.1 Hohe Auflösung | |||
3.2.2 Prüfseite | 55 | ||
3.2.3 Seitenbreite | |||
3.2.4 Fehlerhafte Ablesung | |||
3.2.5 Umkehrvideo | |||
3.2.6 Zeilenlinie | 60 | ||
4. Eingabesystem-Schnittstellenbestimmungen | |||
4. | |||
4. | |||
4. | |||
4, | 65 Η | ||
4. | ι < | ||
4. | '[ | ||
4. | '.'■'' | ||
4. |
4.2.1.1 Schriftzeichensets
4.2.12
Umkehrvideosets
4.2.1.3 Zeiienliniensets
422 Eingabekode/Terminalelcmente
4.2.2.1 (SEG*) = »SEG*<
4.2.2.2 (YPOS) = »YPOS« 4223 (XPOS) = »XPOS«
422.4 (YLOW) = »YLOW« 4.2.2.5 (FONT) = »FONT«
42.2.6 (CHAR) = »CHAR«
4.2.2.7 (PT SIZE) = »PT SIZE«
4.2.2.8 (SET WIDTH) = »SET WIDTH« bzw. Setzbreite
4.2.2.9 (LR CODE) = »LR CODE«
4.2.2.10 (SLANT) = »SLANT« bzw. Neigen 4.2.2.i 1 (RV CODE) = »RV CODE«
4.2.2.12 (YEND) = »YEND« (XEND) = »XEND«
4.2.2.13 »ENDSEG«
4.2-2.14 »ENDPAGE«
4.3 Schriftzeichensatz-Daten
4.3.1 Struktur der Schriftzeichensatz-Daten
4.3.2 Eingabekode/Terminalelemente
4.32.1 (CHAR) = »CHAR«
4.3.2.2 (»OUTLINES) 4.3.2.3 »END FONT«
5. Datenspeicher mit willkürlichem Zugriff (DATA RAM)
5.1 Allgemeines
5.2 Aufbau des Datenspeichers mit willkürlichem Zugriff 5.3 Datenspeicher-Format
5.3.1 Seitenstruktur
5.3.2 Zcilensegmentspeicher
5.3.2.1 Schriftzeichon-Seti'-n
5.3.2.2 Umkehrvideo Setzen 5.3.3 Konturenspeicher
5.4 Terminalelemente
5.4.1 [OUTLINE ADDRESS] = »outline address« bzw. Adresse der Umgrenzung
5.4.2 [YPOS] = »YPOS«
5.4.2.1 [ZERO DATA WORD] = »ZERO DATA WORD« bzw. Nulldatenwort
5.4.3 [YACC HIGH] = »YACC HIGH«
5.4.3.1 [YACC LOW] = »YACC LOW«
5.4.4 [XPOS] = »XPOS«
5.4.5 [NULL] = »NULL«
5.4.6 [A Ys HIGH] = »A Ys HIGH« 5.4.7 [A Ys LOW] = »A Ys LOW«
5.4.8 [SCALE HIGH] = »Scale High«
5.4.9 [SCALE LOW] = »Scale Low«
5.4.10 [BLJ] = »BLJ« (Base Line Adjustment - Schriftlinienabgleich)
5.4.11 [LINK HIGH] = »Link High« 5.4.12 [LINK LOW] = »Link Low«
5.4.13 [RVY HIGH] = »RVY High« [RVY LOW] = »RVY Low«
[RVX HIGH] = »RVX High« [RVX LOW] = »RVX Low«
5.4.14 [NEW PAGE] = »New Page«
5.4.15 [SLANT OFF] = »Slant Off« bzw. Neigen ausgeschaltet [SLANT +7] = »Siant +7«
[SLANT -7] = »Slant -7« [SLANT+14] = »Slant +14« M) [SLANT-14] = »Slant-14«
5.4.16 [END DATA] = »End Data«
5.4.17 [END Page] = »End Page«
5.4.18 [YLMT] = »Y limit« bzw. Y-Grenzc
5.4.19 »Font Call« (Schriftsatz-Abruf)
6. Konturenalgorithmus
6.1 Grundlegende Konturen-Schnittlinien
6.2 Grenzbit und Ein/Aus-Pufferspeicher
10
6.3 | lange Vertikale | Allgeme:nes |
6.4 | steile Schrägen | Eingabe |
6.5 | schwache Schrägen | Ein/Aus-Lösung |
6.6 | eckige Außenformen | Umkehrvideo-Eingabe |
6.7 | Extrapolation | Rasterzeilen-Datenspeicherpuffer |
6.8 | Flatterbit | EIN/AUS-Puffereingabe |
6.9 | Extrapolation-Löschbit | Umkehrvideo-Puffereingabe |
6.10 | SchrägsteJlung | Pufferausgabe |
6.11 | Umkehrvideo | Die HWP-Struktur |
6.12 | Zeilenlinie | Grundabschnitte |
6.13 | Fehlerhafte Ablesung | Daten- und Steuerpuffer und -speicherung |
Festverdrahteter Prozessor | Berechnung der Ausgabedaten-Pufferadresse | |
7.1 | Ausgabedatenpuffer und Videologik | |
7.2 | ||
7.3 | ||
7.4 | ||
7.5 | ||
7.5.1 | ||
7.5.2 | ||
7.5.3 | ||
7.6 | ||
7.6.1 | ||
7.6.2 | ||
7.6.3 | ||
7.6.4 |
10
20
25
enpuffer und Videologik
8. Rechnerprogramme
8.1 Allgemeines
8.1 Allgemeines
30
1. Ausgabedatenverarbeitungssystem
1.1 Aligemeines
1.1 Aligemeines
Das Ausgabedatenverarbeitungssystem ist für die Errechnung der horizontalen Koordinaten auf der zu setzenden
Seite verantwortlich, bei denen der Laserabtaststrahl fürjede einzelne Rasterlinie auf der Seite ein- oder
ausgeschaltet werden muß. Die Errechnung basiert auf der erforderlichen speziellen Rasterlinie (Länge der
Seite), den speziellen Schriftzeichen (d. h. Identität), die an diesem Punkt der Seite zu setzen sind, und auf der
Form und der Größe wie auch der Gestalt dieser Schriftzeichen wie durch die Eingabevorrichtung definiert.
Da die Umsetzung von den die Kontur der zu setzenden Schriftzeichen definierenden »zweiten« digitalen
Daten in Pasterdaten komplex ist und da die Rasterausgabeform wiederholten Mehrzeichen-Datenzugriff erfordert,
ist die zur Errechnung jeder einzelnen Rasterzeile erfcderliche Zeit bedeutsam. Zur Herabsetzung der
Rechenzeit wurde das Ausgabedatenverarbeitungssystem in zwei große Untersysteme unterteilt:
(1) das Datenverwaltungs-Untersystem (DMS) und
(2) das Konturenumsetzer-Untersystem (OCS).
Im erstgenannten System wird ein Mikroprozessor Z80A, im zweiten ein Mikrokontroller 8X300 (oder »SMS
300«) mit festverdrahtetem Prozessor verwendet.
F i g. 3 zeigt das Ausgabedatenverarbeitungssystem als Blockschaltbild. Dieses System erhält Identität, Form,
Größe und Lage der ΐ·>
setzenden Schriftzeichen definierende digitale Daten sowie zweite die Kontur eines
jeden Schriftzeichens aus einem üblichen Eingabesystem definierende digitale Daten. Das Eingabesystem
arbeitet mit einem programmierten 8080-Mikrocomputer 62 der von einem Randomspeicher 64 geeigneter
Größe unterstützt wird. Mikrocomputer und Speicher sind auf einer 8080-Schiene 66 angeordnet, ebenso wie
zwei Magnetscheiben-Lese-Schreibeinheiten, die aus Magnetplaiten-Speichereinheiten 68 und den Scheiben
70 selbst bestehen. Eine Scheibe 70 enthält die Textinformation oder die »er«u;n« digitalen Daten, wehrend die
andere Scheibe die Schriftzeichensatz-Information, oder die »zweiten« digitalen Daten enthält. Die Schiene
endet in einer IOPSO-Schnittstelle 72, die mit einer Schnittstelle 74 im Ausgabedatenverarbeitungssystem verbunden
ist. Die letztgenannte Schnittstelle ist auf einer Z80A-Schiene 76 zusammen mit dem Z80A-Mikroprozessor
78 und vier Speichereinheiten 80, 82, 84 und 86 des Datenverwaltui.gs-Subsystems angeordnet.
Die Speichereinheit 80 dient zur Speicherung des Programms für den Z80A-Mikroprozessor 78 und stellt
einen Arbeitsraum für die Mikroprozessor-Rechnungen dar. Der Speicher 82, »Schriftsatz-Randomspeicher«
bezeichnet, speichert die zweiten, die Schriftzeichen des gewählten Schriftsatzes definierenden digitalen Daten.
Diese Daten werden verarbeitet und in zweckmäßiger Form, wie im folgenden im einzelnen beschrieben, an
zwei Speicher 84 und 86 als »Daten-Randomspeicher« bezeichnet, gespeist.
Die Daten-Randomspeicher 84 und 86 »teilen sich« das Datenverwaltungs-Sübsystcm und das Konturenumsetzungs-Subsystem.
Im Grunde genommen liefert der Z80A-Mikroprozessor die Daten für diese Daten-Randomspeicher,
und de: 3X300-Mikrokontroller 88 empfängt und analysiert diese Daten durch Steuerung und
einem in einem weiteren Speicher 80 gespeicherten Programm und liefert die entsprechenden Daten an einen
11
festverdrahteten Prozessor 92 Dieser festverdrahtete Prozessor setzt die Daten in die sogenannten »dritten«
digitalen Daten um, die in drei Rasterlinienpuffern gespeichert werden. Die in diesen Puffern enthaltene Information wird dann durch eine Schnittstelle 94in ein Videosteuersignal umgesetzt und synchron mit der Bewegung des Abtaststrahls dem Laserrecorder zugeführt.
5
1.2 Datenverwaltungs-Untersystem
Die Schaltungsblöcke und deren wechselseitige Verbindung, wie sie im Datenverwaltungs-Untersystem verwendet werden, sind in F i g. 4 dargestellt. Im allgemeinen ist das Datenverwaltungs-Untersystem für die Organisation und Lieferung von Daten an den mit dem Konturenumsetzer-Untersystem geteilten Speicher verantwort
lich, damit die rasche Verarbeitung durch das Konturenumsetzer-Untersystem erleichtert wird. Das Datenverwaltungs-Untersystem führt insbesondere die folgenden Prozeßschritte durch:
(a) Bei Bereitschaft: Einlesen des nächsten erforderlichen typografischen »Zeilensegments« von der Text-Magnetscheibe in einen Daten-Randomspeicher.
(b) Übertragung der Schriftsatzdaten von der Schriftsatz-Magnetscheibe auf einen der Schriftsatz-Randomspeicher fur eine »Schriftsatz-Datei«.
(c) Erstellung einer »Konturendatei« im Randomspeicher für das Konturenumsetzungs-Untersystem. Diese
Datei enthält die X- und Y-Ausgangspunkte einer jeden Kontur eines jeden erforderlichen Schriftzeichens,
wie auch die die Kontur eines jeden Schriftzeichens definierenden »Vektordaten«.
(d) Änderung der »Zeilensegmentdatei« durch Ersatz der Schriftzeichennummer gegen die Position der Konturendatei.
(e) Wiederholung der obigen Schritte, bis kein Speicherraum für die Zeilensegmentdatei oder die Konturendatei mehr verfügbar ist.
(D Abgabe der Steuerung an das Konturenumsetzer-Untersystem. Beginn am nächsten Daten-Randomspe:-
cher.
1.3 Konturenumsetzer-Untersystem
Die integrierten Schaltungen und Querverbindungen, die das Konturenumsetzer-Untersystem darstellen,
sind in Fig. 5 gezeigt. Im allgemeinen ist das Konturenumsetzer-Untersystem für die Umsetzung der in dem
gemeinesamen Daten-Randomspeicher gespeicherten Umgrenzungs- oder Konturendaten in horizontale
Strichdaten für den Laserrecorder verantwortlich. Das Konturenumsetzer-Subsystem führt insbesondere die folgenden ProzeBschritte durch:
(a) Ablesen der Identifizierungsdalen und der Größendaten für das erste Zeilensegment.
(b) Ablesen des Abstands vom Schreibrand zum linken Schriftzeichenrand (LSB). Speicherung in einem X-Register.
(c) Ablesen der Konturen-Ausgangsdaten für das nächste Schriftzeichen, Umrechnung des Abstands vom linken Schriftzeichenrand zur Kontur. Erforderlichenfalls Entnahme neuer Konturenvektordaten zur Aktuali
sierung der X.Y-Daten.
(d) Ausgabe der Summe aus diesem Wert und dem laufenden X-Wert (in einem »X«-Register festgestellt) an
den entsprechenden Raster!inienpuffer.
(e) Ablesen der nächsten Kontur(en). Wiederholung des Schritts (c), bis alle Konturen auf einer Höhe der zu
setzenden Seite errechnet sind.
(0 Ablesen des Abstands zum linken Schriftzeichenrand des nächsten Schriftzeichens; dies dem X-Register
zuführen,
(g) Schritte (c) bis (f) wiederholen, bis alle Schriftzeichen im Zeilensegment errechnet und ausgegeben sind.
Dann Schritte (a) bis (0 für alle anderen Zeilensegmente auf dieser Höhe wiederholen.
so (h) Sind alle Zeilensegmente auf dieser Höhe errechnet, Übertragungssteuerung des oder der Rasterlinienpuf
fer(s) auf das Laserantriebssystem mit Speicherung der Daten in einem alternativen (nächsten) Rasterpuf
fer für die Rasterlinie 1/10 Punkt weiter unten auf der Seite.
2. Beschreibung der Schriftsatzdaten
-5 2.1 Allgemeines
Die die Schriftzeichen eines jeden gewünschten Schriftzeichensatzes definierenden zweiten digitalen
Daten sind auf der Schriftsatz-Magnetscheibe gespeichert. Diese Daten sind vom »Konturen«-Typ, d. h. sie
definieren die Kontur eines jeden Schriftzeichens hinsichtlich eines normalisierten Koc-rdinaten-Kodiersatzes. Um die Daten zu komprimieren, werden nicht alle Randpunkte des Schriftzeichens auf der Auflösungswi matrix kodiert. Die allgemeine Natur des Kodierschemas ist in der Patentanmeldung P 29 19 013.4-53
beschrieben.
Da die Magnetscheibe das hauptsächliche Speichermedium für Schriftsätze ist, wurden die Schriftsatzdaten so strukturiert, daß sie der Größe der Sektoren der Scheibe entsprechen. Drei getrennte Unterdaieien
bilden, wie in Fig. 6 gezeigt, einen Schriftsatzspeicher:
1. Schriftsteuerspeicher
2. Schriftbreitespeicher
3. Konturendatenspeicher
Der Schriftsteuerspeicher enthält alle Daten, die den Schriftsatz als ganzes beschreiben, wie Schriftsatzbeschreibung,
Seriennummer, Anzahl der Schriftzeichen, Verschiebung zur Schriftlinic (base jump) und feste
Abstandsdaten. Diese Datei ist vollständig in einem Abschnitt der Magnetscheibe (125 Wörter) enthalten.
Abschnitt 2.2 der vorliegenden Beschreibung beschreibt den Schriflstcuerspcichcr im Detail.
Der Schriltbreite.speicher enthält die breite eines jeden Schrifizcichens sowie weitere mit dem Schriftzeichen
zusammenhängende für die KingnhcvorrichtuiiK erforderlichen Daten. Diese Datei isl je mich der Anzahl der
Schriftzeichen pro Schriftsatz auf einem oder mehreren vollen Sektoren enthalten. Abschnitt 2.3 der vorliegender;
Beschreibung beschreibt den Schriftbreitespeicher im Detail.
Der Konturendatenspeicher enthält die Koordinaten der Schriftzeichenkonturen, die Vektoren, die die Form
der Kontur definieren, Schriftzeichensteuerwörter und Dateigrößensteuerungen. Diese Datei ist je nach der
Anzahl der Schriftzeichen und der Komplexität der Schriftzeichen auf einem oder mehreren vollen Sektoren
enthalten. Abschnitt 2.4 der vorliegenden Beschreibung beschreibt diesen Speicher im Detail.
Erfordert das Datenverwaltungs-Untersystem (DMS) Schriftsatzdaten, dann werden die entsprechenden
Schriftsatzdaten durch die Eingabevorrichtung von der Magnetscheibe abgelesen und durch das DMS dem
Schriftsatz-Randomspeicher Font RAM 82 zugeführt. Abschnitt 2.5 der vorliegenden Beschreibung beschreibt
die Struktur und den Inhalt der Daten, die in den Schriftsatz-Randomspeicher Font RAM übertragen wurden.
2.2 Schriftsteuerspeicher
Der Schriftsteuerspeicher enthält alle Daten, die den gesamten Schriftsatz oder Doppelbuchstaben im Schriftsatz
beschreiben. Diese Datei ist auf einem Sektor einer Magnetscheibe untergebracht und ist daher 125 Wörter
lang. Die Struktur dieser Datei ist in F i g. 7 dargestellt. Die in F i g. 7 angedeuteten Elemente dieser Datei werden
im folgenden beschrieben.
2.2.1 Anzahl der Schriftzeichen
Das höchstwertige Byte (most significant byte, MSB) des Worts 0 definiert die Anzahl der Schriftzeichen im
Schriftzeichensatz in Binärzahlen.
2.2.2 Anzahl der Sektoren
Das niedrigstwertige Byte (least significant byte LSB) des Wortes 0 definiert die Anzahl der Magnetscheiben-Sektoren,
die Tür den Konturenumsetzerspeicher erforderlich ist. Das kann durch die Eingabevorrichtung ausgenutzt
werden, um Raum auf der Scheibe zu belegen, wenn weitere Schriftsätze zugefügt werden.
2.2.3 Anzahl der Schriftzeichen in 16 K
Das MSB des Worts 1 definiert die Anzahl der in den ersten 16 384 Bytes des Konturendatenspeichers enthaltenen
Schriftzeichen in Binärzahlen.
2.2.4 Anzahl der Schriftzeichen in 32 K
Das LSB des Worts 1 definiert die Anzahl der in den ersten 32 768 Bytes des Konturendatenspeichers enthaltenen
Schriftzeichen in Binärzahlen.
2.2.5 Anzahl der Schriftzeichen in 48 K
Das MSB des Worts 2 definiert die Anzahl der in der ersten 49 152 Bytes des Konturendatenspeichers enthaltenen
Schriftzeichen in Binärzahlen.
50 2.2.6 Letzte Zahl der Sektoren des Randomspeichers
Das LSB des Worts 2 definiert die Anzahl der Magnetscheiben-Sektoren des Konturendatenspeichers in
Binärzahlen, die für den Randomspeicher RAM übertragen werden muß, der das letzte Schriftzeichen im
Schriftzeichensatz enthalten würde. Das wird eine Zahl zwischen 3 und 68 sein, die von der Eingabevorrichtung
ausgenutzt werden kann, um die Übertragung der Schriftzeichensatzdaten zum ODS zu steuern.
2.2.7 YMIN
Wort 3 definiert in Binärzahlen den Yn-Minimalwert in Datenauflösungseinheiten (data resolution units
DRU) im gesamten Konturendatenspeicher. Dies wird durch die Eingabevorrichtung ausgenutzt, um die Y-Position
(YPOS) für jedes Zeilensegment einzustellen.
2.2.8 YMAX
Wort 4 definiert in Binärzahlen den Yn-Maxi mal wert in DRUs, der sich aus der Addition aller Konturen-dy
zum entsprechenden Yn-Wert ergibt. Dies ist der niedrigste Punkt auf allen Schriftzeichen im Schriftzeichensatz,
und er wird durch die Eingabevorrichtung ausgenutzt, um den niedrigsten Punkt (YLOW) für jedes Zeilen-
segment einzustellen.
2.2.9 Verschiebung zur Schriftlinie für Akzente auf Großbuchstaben
5 Das MSB von Wort 5 definiert die vertikale Verschiebung, die einen Akzent von seiner nominalen Stellung .
über einen Kleinbuchstaben auf die entsprechende Stellung zur Verwendung bei einem Großbuchstaben
bewegt. Dies isi eine vorzeichenlose Binärzahl in einem l/432stel eines Geviertes.
2.2.10 Verschiebung des Akzents bei Kursivzeichen *0
Das LSB des Worts 5 definiert die vorzunehmende horizontale Verschiebung, wenn ein Kleinbuchstaben-Akzent auf Großbuchstaben verwendet werden soll. Dies ist normalerweise nur bei Kursiv-Schriftsätzen der
Fall, die Verschiebung geschieht nominell nach rechts. Das ist der Fehlwert, wenn keine andere Akzentverschiebung bei Kursivzeichen vorgeschrieben ist. Der Verschiebungswert wird als vorzeichenloser 7-Bit-Wert in
15 DRUs ausgedrückt. Das achte höchstwertige Bit ist ein Vorzeichenbit, das zur Rechtsverschiebung auf 0, zur
Linksverschiebung auf 1 gesetzt wird.
2.2.11 Verschiebung zur Schriftlinie/ausgeprägte Exponentzeichen
20 Das MSB des Worts 6 definiert die Verschiebung zur Schriftlinie, um ausgeprägte Exponentschriftzeichen entsprechend der Bit-Definition nach Absatz 2.2.9 auszurichten. Es ist normalerweise gleich der Hälfte der Höhe
der Zahlen im Schriftsatz und wird nominell mit 50%iger Verminderung der Punktgröße verwendet, um die
beste Ausrichtung der Exponentzeichen für Preise usw. zu erzielen.
ls
2.2.12 Verschiebung zur Schriftlinie/Zähler bei Bruchzahlen
Das LSB des Worts 6 definiert die Verschiebung zur Schriftlinie zur Ausrichtung der Zähler von Bruchzahlen
entsprechend der Bit-Definition nach Absatz 2.2.9. Es ist nominell gleich 40% der Höhe der Zahlen im Schriftsatz und wird nominell mit 60%iger Verminderung der Punktgröße verwendet, um die beste Ausrichtung zu
erzielen.
JO
2.2.13 Verschiebung zur Schriftlinie/Indexzeichen auf Exponentzeichen
;. zeichen erster Ordnung auszurichten. Der Wert der Verschiebung zur Schriftlinie wird als vorzeichenfreier 7-Bit-
35 Wert in Einheiten von 1/5 eines Geviertes (acht DRUs) ausgedrückt. Das achte höchstwertige Bit ist ein Vorzei-
'.-; chen-Bit, das auf 0 gesetzt wird, wenn eine Verschiebung nach oben erforderlich ist und auf 1 bei Verschiebung
nach unten gesetzt wird. Es ist nominell gleich der Hälfte der Höhe der Zahlen im Schriftsatz und wird nominell
" rnii einer Verminderung der Punktgröße von 4/9 verwendet.
;. -W 2.2.14 Verschiebung zur Schriftlinie/Indexzeichen auf Indexzeichen
i; Das LSB des Worts 7 definiert die Verschiebung zur Schriftlinie, um ein Indexzeichen auf einem Indexzeichen
erster Ordnung auszurichten, entsprechend der Bit-Definition nach Absatz 2.2.13. Es ist nominell gleich bis zur
Hälfte der Höhe der Zahlen.
Λ 45
2.2.15 Verschiebung zur Schriftlinie/Exponentzeichen erster Ordnung
j Das MSB des Worts 8 definiert die Verschiebung zur Schriftlinie, um ein Exponentzeichen erster Ordnung
' auszurichten, entsprechend der Bit-Definition nach Absatz 2.2.13. Es ist nominell gleich 7/12 der Zahlenhöhe
;;! 50 und wird nominell mit einer Verminderung der Punktgröße von 2/3 verwendet.
)| 2.2.16 Verschiebung zur Schriftlinie/Indexzeichen erster Ordnung
fi| Das LSB des Worts 8 definiert die Verschiebung zur Schriftlinie, um ein Indexzeichen erster Ordnung aus-
v 55 zurichten, entsprechend der Bit-Definition nach Absatz 2.2.13. Es ist nominell gleich bis zu 3/12 der Zahlen-
S höhe.
ι%
2.2.17 Verschiebung zur Schriftlinie/Exponentzeichen auf Esponentzeichen
f 60 Das MSB des Worts 9 definiert die Verschiebung zur Schriftlinie, um ein Exponentzeichen auf einem Expo-
0 nentzeichen erster Ordnung auszurichten, entsprechend der Bit-Definition nach Absatz 2.2.13. Es ist nomine)!
%
gleich der Zahlenhöhe.
'k
2.2.18 Verschiebung zur Schriftlinie/Exponentzeichen auf Indexzeichen
■|| Das LSB des Worts 9 definiert die Verschiebung zur Schriftlinie, um einen Exponenten auf einem Indexzei-
£| chen erster Ordnung auszurichten, entsprechend der Bit-Definition nach Absatz 2.2.13. Es ist nominell Null.
1 14
2.2.19 Geringer Zwischenraum
Das MSB des Worts K) definiert die Breite, die geringen Zwischenräumen dieses Schriftsul/cs zugeordnet ist.
Ls wird in i /54 Geviert ausgedrückt und ist nominell gleich dem Zwischenraum nach dem Punkt (period width).
2.ζ.20 Zwischenraum η
Das LSB des Worts 10 definiert die Breite, die »n« Zwischenräumen für diesen Schriftsatz zugeordnet sind. Es
wird in 1/54 Geviert ausgedrückt und ist nominell gleich dem Zwischenraum zwischen den Zahlen.
2.2.21 Geviert-Zwischenraum
Das MSB des Worts 11 definiert die Breite, die Geviert-Zwischenräumen für diesen Schriftsatz zugeordnet
sind. Es wird in 1/54 Geviert ausgedrückt und beträgt nominell 54 Einheiten.
2.2.22 Verschiebung zur Schriftlinie/Nenner bei Bruchzahlen
Das LSB des Worts 11 definiert die Verschiebung zur Schriftlinie zur Ausrichtung des Nenners bei Bruchzahlen.
Der Wert der Verschiebung wird als vorzeichenloser 7-Bit-Wert in DRUs ausgedrückt. Das achte Bit ist ein
Vorzeichenbi'., das auf ö gesetzt wird, wenn eine Verschiebung nach oben erforderlich ist, und auf i bei Verschie- 20
bung nach unten gesetzt wird.
2.2.23 Seriennummer
Das Wort 12 definiert in Binärzahlen eine Nummer, die die Anzahl von Malen identifiziert, die diese Nummer 25
der Schriftzeichensatz-Vorlage reproduziert wurde.
2.2.24 Akzentverschiebung bei Kursivzeichen, Nr. 1
Das MSB des Worts 13 definiert die erste alternative Kursivverschiebung des Akzents bei Kursivzeichen ent- 30
sprechend der Bit-Definition vor. 2.2.10. Der Wert wird den Fehlwerten (Null oder 2.2.10) addiert.
2.2.25 Akzentverschiebung bei Kursivzeichen Nr. 2
Das LSB des Wort 13 definiert die zweite alternative Verschiebung des Akzents bei Kursivzeichen entspre- 35
chend der Bit-Definition von 2.2.10. Der Wert ist additiv.
Das MSB des Worts 14 definiert die dritte alternative Verschiebung des Akzents bu Kursivzeichen entspre- 40
chend der Bit-Definition von 2.2.10. Der Wert ist additiv.
2.2.27 Akzentverschiebung bei Kursivzeichen, Nr. 4
Das LSB des Worts 14 definiert die vierte alternative Verschiebung des Akzents bei Kursivzeichen entspre- 45
chend der Bit-Definition von 2.2.10. Der Wert ist additiv.
2.2.28 Kapitälchen, %
Das MSB des Worts 15 definiert den Prozentsatz der Verminderung in Punktgröße, um ein Kapitälchen aus 50
einem gezeichneten Großbuchstaben zu erhalten. Es wird als 8-Bit-Binärbruchteil ausgedrückt.
2,2,29 Reserven
Die Wörter 15 bis 17 einschließlich stellen Reservewörter mit Nullfüllung dar. 55
2.2.30 Schriftsatz-Layout-Nummer
Die Wörter 18 und 19 definieren, in ASCII-Kode, eine Schriftsatz-Layout-Nummer, die der spezifischen
Schriftzeichenform im Schriftsatz mit ihrer sequentiellen Lage im Schriftbreitespeicher und dem Konturenda- 60
tenspeicher-Index entsprechen. Jede bestimmte Schriftsatz-Layout-Nummer identifiziert einen bestimmten
Satz von Schriftzeichenformen in einer bestimmten Folge.
2.2.31 Nummer der Schriftsatzvorlage
Die Wörter 20 und 21 definieren, in ASCII-Kode, die Nummer der Schriftsaizvoriage, die die Schriftzeichensätze
bestimmt definieren:
2.2.32 Beschreibung des Schriftzeichensatzes
Die Wörter 22 bis einschließlich 29 stellen eine Folge im ASCII-Kode dar, die einen 16 Schriftzeichen enthaltenden Titel bildet, der Bezeichnung, Schriftart, GröSe usw. des Schriftzeichensatzes in abgekürzter Version zur
raschen Identifizierung des Schriftzeichensatzes beschreibt Zur Auffüllung werfen erforderlichenfalls Zwischenräume verwendet
2.2.33 Ausführliche Beschreibung des Schriftzeichensatzes
Die Wörter 30 bis einschließlich 77 stellen eine Folge im ASCII-Kode dar, die einen 96 Schriftzeichen enthaltenden Titel bildet, der den Schriftzeichensatz vollständig beschreibt. Zur Auffüllung werfen erforderlichenfalls Zwischenräume verwendet.
2.2.34 Zufallsfüllung
20
2.2.3S Anschlußadresse
2.3 Schriftbreitespeicher
Der Schriftbreitespeicher enthält für ein Satzsystem erforderliche auf individuelle Schriftzeichen anwendbare
Daten. Das Ausgabedatenverarbeitungssystem benutzt diesen Speicher nicht F i g. 8 veranschaulicht die Struktur dieses Speichers.
Zwei Bytes sind erforderlich, um die Daten für ein Schriftzeichen zu definieren; in jedem Sektor können bis
zu 125 Schriftzeichen beschrieben werfen. Alle nicht erforderlichen Bytes werfen mit Nullen aufgefüllt. Die
Schriftzeichenbreite-Gruppen müssen so angeordnet werfen, daß sie der Folge der Schriftzeichen im Konturenindex entsprechen.
2.3.1 Einheiten-Breite
Das erste Byte einer jeden Schriftzeichenbreite-Gruppe definiert, in Binärzahlen, die Einheiten-Breite in 1/54
des normalisierten Gevierts.
2.3.2 Kennzeichenbits
Gekennzeichnete Bits im zweiten Byte einer jeden Schriftzeichenbreite-Gruppe definieren spezifische Kennzeichen des Schriftzeichens. Das Kennzeichenbit 6 ist beispielsweise das B-BiI, welches definiert, daß das
Schriftzeichen ein Akzent ist, der nicht verschoben werfen soll.
2.3.3 Anschlußadresse
Das Wort 125 (Bytes 250 und 251) enthält die Anschlußadresse (Spur bzw. Sektor) des nächsten Sektors des
Schriftbreitespeichers oder des ersten Sektors des Konturendatenspeichers.
2.4 Schriftzeichen-Digitalisierung
55
2.4.1 Schriftzeichen-Definitionen
Alle Schriftzeichen sind digital kodiert oder für ein relatives Vektordekodiersystem »digitalisiert«, wobei alle
Schriftzeichenkonturen als durch geradlinige Elemente eng approximiert angenommen werfen. Ein derartiges
co System ist in der oben erwähnten deutschen Patentanmeldung beschrieben.
Alle Schriftzeichen sind als Vielfach-Serie von »Kurven« definiert. Jede Kurve beschreibt einen vertikalen
Konturenrand mit den folgenden Komponenten:
(a) eine X-, Y-Koordinate, die den nächsten Punkt auf der Kurve innerhalb eines Geviertes definiert,
as (b) eine Weiß-Schwarz- oder Schwarz-Wciü-Grenze,
(C) eine Reihe geradliniger Teilensegmente, die durch eine die Krümmung und die Länge eines jeden Segments der Kurve definierende Reihe von Datenbytes definiert wird, und
(d) Vektorrichtung (nach unten und von links nach rechts oder von rechts nach links) der Segmente.
Die Definition des Schriftzeichens besteht in der Auflistung aller Kurven, die das Schriftzeichen umgrenzen.
Sie werden in absteigender Ordnung aufgelistet, d. h. die Kurven, die am oberen Teil des Schriftzeichens beginnen, werden zuerst aufgeführt, die am FuB zuletzt.
2.4.2 Maßstab S
Die hauptsächliche Maßeinheit ist die Datenauflösungseinheit (Date Resolution Unit, DRU). die als 1/432
des traditionellen Gevierts definiert ist Ein erweitertes Geviert ist 576 x 576 DRLIs.
Die Position 0,0 ist am Schnittpunkt des linken Rands (LSB) und dem oberen Teil des erweiterten Gevierts,
wie in Fig. 9 gezeigt, angeordnet. X-Werte (links-rechts) können daher positiv (positiv ist rechts) oder negativ
(wenn die Grenze des Schriftzeichens sich links vom linken Rand (LSB) erstreckt) sein, Y-Werte (oben-unten)
sind jedoch immer positiv (positiv ist unten).
2.4.3 Konturen-Datenwörter
Jede Kontur wird durch 3 oder mehr Datenwörter definiert: Einem Y-Wort, einem X-Wort und einem oder
mehreren Konturen<Vektor-/Steuer-)Bytes. Das Format dieser Datenwörter ist in Fi g. 10 gezeigt. Die verschiedenen Teile der in Fig. 10 gezeigten Kodierung sind im folgenden aufgeführt:
Yn Dieses Datenteil definiert die vertikale Position eines Ausgangspunktes vom oberen Rand eines erweiterten Gevierts.
K Undefiniert.
X Vorzeichen Das Vorzeichenbit definiert die Verschiebungsrichtung von Xn hinsichtlich des linken
Rands LSB.
gerichteten Vektor, eine Null einen nach rechts gerichteten.
dierer bei der Extrapolation der Schriftzeichenkontur im Bereich des Gitters unmittelbar
über der Linie Yn verwendet wird.
Ε-Bit Das Ε-Bit oder »Extrapolationsbit« definiert, ob über der Ausgangspunkt-Gitterzeile Yn
grenze (ein) oder eine Rechtsgrenze (aus) darstellt. 4ü
Vektoren:
dydx Für alle Werte dy größer als 0 definiert dieses Byte die Neigung der Vektorkontur des
Schriftzeichens vom Ausgangspunkt (Xn, Yn) oder vom letzten Vektorendpunkt. Alle
Vektoren sind aufeinanderfolgend in der gleichen Folge angeordnet wie sie auf jer Schriftzeichenkontur erscheinen.
Für alle Werte dy = 0 definiert dieses Byte einen Steuerkode. Die spezifische Steuerung hängt vom Wert dx
(in sedezimaler Darstellung) wie unten angegeben ab:
0 Ende der Kontur.
1 Umkehrung der dx-Richtung für den nächsten Vektor.
2 definiert, daß für den durch die vorangehenden Y- und X-Datenwörter definierten Ausgangspunkt
keine Verschiebungsvektoren anwendbar sind. Dieser Steuerung folgt immer ein Null-Byte, damit ein
»Konturenendew-Steuerkode erzeugt wird.
3 definiert den Vektor mit einer horizontalen Verschiebung von 0 DRUs (vertikaler Vektor und einer vertikalen Verschiebung größer als 30 DRUs. Das nächste Datenbyte hat einen resultierenden Bereich
vertikaler Verschiebungen von 0 bis einschließlich 255, wird jedoch zwischen 0 und einschließlich 30
nicht verwendet. (Beispiel: Die zwei Bytes 0/3,2/6 beschreiben einen zusammengesetzten Vektor, der
vertikal um 38 DRUs heruntergeht).
4 definiert einen Vektor mit einer horizontalen Verschiebung von 1 DRU und einer vertikalen Verschiebung von 30 DRUs.
5 definiert einen Vektor mit einer horizontalen Verschiebung von 1DRU und einer vertikalen Verschiebung von 120 DRUs.
7 bis
5
D definiert eine Änderung einer geradlinigen Kontur mit einer vertikalen Verschiebung von IDRU und
einer horizontalen Verschiebung bis zu 255 DRUs. Das nächste Datenbyte definiert den Binärwert der
horizontalen Verschiebung. (Beispiel: Die zwei Bytes o/D, 2/6 beschreiben eine Kontur aus 1 DRU
10 vertikaler und 38 DRU horizontaler Verschiebung).
E definiert eine Änderung einer geradlinigen Kontur mit einer vertikalen Verschiebung von 1 DRU und
einer horizontalen Verschiebung größer als 255 DRUs. Das nächste Datenbyte definiert den Binärwert
der horizontalen Verschiebung über 256. (Beispiel: Die zwei Bytes o/E, 2/6 beschreiben eine Kontur
aus 1 DRU vertikaler und 294 horizontaler Verschiebung).
15 F definiert einen Vektor mit einer schwachen Neigung mit einer vertikalen Verschiebung von 1 DRU
und einer horizontalen Verschiebung größer als 15 DRUs. Das nächste Datenbyte definiert den Binärwert der horizontalen Verschiebung. (Beispiel: Die zwei Bytes 0/F, 2/6 beschreiben einen zusammengesetzten Vektor, der über 38 horizontale DRUs und einen DRU hinunter geht).
20 2.4.4 Struktur des Konturen-Datenspeichers
Der Konturen-Datenspeicher ist auf der Schriftsatz-Magnetscheibe untergebracht und speichert eine
Speicherabbildung der Daten, die in einen oder mehrere Schriftsatz-Randomspeicher eingeführt werden. Die
Datei besetzt einen oder mehrere Sektoren auf der Scheibe und ist daher Modulo 125 Wörter lang. F i g. 11 ver-25 anschaulicht diese Dateistrukiur.
Betragen die gesamten Konturendaten des Schriftsatzes weniger als 16 384 Bytes, dann enthält der Konturen-Datenspeicher:
1%
1. FSIZE-Wort (Anzahl der Bytes im Randomspeicher RAM)
ί 30 2a. CINDEX (Schriftzeichen-Index)
f2b. AnfangsetiV»u- und Konturen-Daten
3. ENDFNT (Nullwort)
m
4. Sektorfülltr
!.'; .15 Die Punkte 2a und 2b stellen das kandomspeicher-Speicherabbild dar und dürfen 16 384 Bytes nicht überstei-
$ gen.
& Betragen die gesamten Konturendaten des Schriftsatzes mehr als 16 K Bytes, dann enthält der Speicher:
1. FSIZE-Wort
|| 4Q 2ab CiNDEX. Anfangseiikeit· und Konturcn-Datcn (16 384 Bytes max)
>'.'■ 3. FSIZE-Wort (Anzahl der Bytes im nächsten Randomspeicher RAM)
'4
4. Anfangsetikett- und Konturen-Daten (16 384 Bytr.s max)
\·:1
5. ENDENT
^ 6. Sektorfüller
;■' Die Punkte 3 und 4 können wiederholt werden, wenn die gesamten Konturendaten des Schriftsatzes mehr als
;.., 32 768 oder 49 152 Bytes betragen. Die Daten besetzen den Schriftsatz-Randomspeicher Font RAM beginnend
' ■ mit der Adresse "4000 und können bis zur Adresse "7FFF verlaufen (wobei das Anführungszeichen Anfang (")
auf eine Sedezimalzahl hinweist. Die Adressen in den Anfangsetiketten (headers) sind absolut; Adressen im
50 CINDEX sind versetzt absolut ("0000 bis "3FFF) wobei die zwei MSBs Multispeicher-Positionen (multi-RAM
locations) darstellen.
Die spezifischen Inhalte des Konturendatenspeichers sind folgende:
2.4.4.1 FSIZE
55
Dieses Wort definiert in Binärzahlen die Anzahl der Bytes, die in einen Schriftsatz-Randomspeicher eingegeben werden. Die Zählung beinhaltet nicht das FSIZE-Wort oder das ENDFNT-Wort. Die Zählung Tür den ersten
Schriftsatz-Randomspeicher (Font-RAM) enthält den gesamten CINDEX und alle Anfangsetikett- und Konturendaten.
2.4.4.2 ClNDEX
Der Schriftzeichenindex ist von veränderlicher Länge und besteht aus einer Schriftzeichenzählung
(CCOUNT) und einem relativen Adressenindex.
&5 CCOUNT ist ein Byte, das in Binärzahlen die Anzahl der Schriftzeichen im Schriftzeichensatz und somit auch
die Wortlänge definiert. Es handelt sich um eine Zahl zwischen 1 und 255 einschließlich. Die Lage der Adresse
im Randomspeicher RAM des CCOLJNT ist "4000.
stellt die versetzte absolute Adresse des YCOUNT-Bytes für das Schriftzeichen (siehe Abschnitt 2.4.4.6 unten)
dar. Die zwsi höchstwertigen Bits des Worts weisen in Binärzahlen auf den Randomspeicber RAM, der das
Schriftzeichen enthält, wobei 00 der Randomspeicher RAM ist, der den Index enthält. Die 14 niedrigstwertigen
Bits enthalten die versetzte Randomspeicher-Adresse (die absolute RAM-Adresse weniger "4000) des
YCOUNT-Bytes des Schriftzeichens.
Die erste Eintragung im Index ist definitionsgemäß Schriftzeichen Nummer 1 und muß mit der ersten Schriftzeichenbreite-Gruppe
im Schriftbreitespeicher übereinstimmen. Die Schriftzeichen-Nummern laufen sequentiell
durch Implikation fett (es gibt keine ausgesprochenen Schriftzeichen-Nummern oder Bibliotheks-Nummern
an irgendeiner Stelle des Schriftzeichensatzes).
2.4.4.3 ENDFNT
Dieses Wort definiert das Ende aller Schriftsatzdaten und besteht aus 2 Bytes von Nullen.
Dieses Wort definiert das Ende aller Schriftsatzdaten und besteht aus 2 Bytes von Nullen.
2.4.4.4 Sektorfüller
Um bis zum Ende des Magnetscheiben-Sektors aufzufüllen, der das ENDFNT-Wort enthält, werden Nulldaten
verwendet.
2.4.4.5 Anfangsetikett- und Konturet-Daten
Die Anfangsetikett- und Konturen-Daten in jedesi Randomspeicher RAM enthalten alle Digitali^erungsdaten
des Schriftzeichens, die zu jedem der in diesem RAM untergebrachten Schriftzeichen gehören. Die X- und
Y-Ausgangsstellungen für die Schriftzeichen sind im Anfangsetikettspeicher aufgerührt; die Vektoren und
Steuerbytes, die die Profile der Schriftzeichen definieren, sind im Konturenspeicher aufgeführt. Die zwei Speieher
sind durch ein Nulldatenbyte (ENDHDR) getrennt. Fig. Ii veranschaulicht die Speicherstruktur der
Anfangsetikett- und Konturen-Daten.
Ein Prüfsummen-Byte folgt dem Konturenspeicher und geht dem ENDFNT-Wort oder dem FSIZE-Wort, das
Randomspeicher RAMs trennt, unmittelbar voraus.
2.4.4.6 Anfangsetikett-Speicher
Der Anfangsetikett-Speicher enthält eine Reihe von Schriftzeichenanfangsetiketten, jeweils eins für jedes
Schriftzeichen im Satz. Zwischen Anfangsetiketten gibt es keinen Zwischenraum. Jedes Schriftzeichen-Anfangsetikett
enthält (aufeinanderfolgend und ohne Zwischenraum) ein YCOUNT-B>£e, ein CSIZE-Wort und
ein oder mehrere Anfangs-Paarsätze von Datenwörtern (ein Satz für jedes Paar von Anfängen).
YCOUNT:
Das YOOUNT-Byte definiert in Binärzahlen die Anzahl von YN-Einträgen im Anfangsetikett, was das
gleiche ist wie die Anzahl der Anfangs-Paare. Die Länge in jedem Schriftzeichen-Anfangsetikett beträgt
zehnmal den YCOUNT plus 3 Bytes.
CSlZE:
Das CSIZE-Wort definiert in Binärzahlen die Gesamtmenge an Datenraum in Bytes, den das Schriftzeichen
ausfüllt, wenn es einmal in den Daten-Randomspeicher eingeführt wird. Es ist also gleich zwölfmal
YCOUNT plus der Länge aller adressierten Profil-Zeichenfolgen innerhalb der Anfangs-Paardatensätze.
Anfangs-Paardaten:
YN ist das Y-Datenwürt und XN ist das X-Datenwort, wie in 2.4.3 definiert. N muß gerade sein, da Konturen
immer in Paaren beginnen. AN ist die absolute Adresse des Anfangsbytes der Profil-Zeichenfolge der Vektoren
und Steuerungen, die jede Konturform definieren. Jede Adresse ist eine Zahl zwischen "4000 und
"7FFF. Adressen können innerhalb des Anfangsetiketten-Speichers dupliziert werden, falls eine Pr>fil-Zeichenfolge
für mehr als einen Anfangspunkt geteilt werden muß (die Schriftzeichen-Konturform -st gemeinsam).
Eine Adresse kann nicht auf eine Profil-Zeichenfolge in einem anderen Randomspeicher RAM weisen.
Die YN-, XN- und AN-Datenwörter sind in der Reihenfolge wie in F i g. 12 gezeigt und ohne Zwischenraum
aufgelistet. Jeder folgende YN-Wert ist gleich oder größer als der vorausgehende YN-Wert.
2.4.4.7 Konturenspeicher
Der Konturenspeicher besteht aus einer Reihe von Profil-Zeichenfolgen. Jede Profil-Zeichenfolge stellt eine
sequentielle Reihe von zwei oder mehr Vektoren/Steuerdatenbytes, wie in 2.4.3 defin-ert, dar. Jede Zeichenfolge
definiert eine oestimmte vertikale Schriftzeichenkcntur und beginnt am Anfangsetikett-Startpunkt. Eine
Zeichenfolge wird durr,K Steuer-Null (Konturende), das ein Nulldatenbyte ist, beendet. Füllerbytes dürfen
innerhalb einer Zeichenfolge nicht verwendet werden; sie sind vor oder nach einer Zeichenfolge zulässig. Das
oder die Digitalisierungsproeramm(e) vermeidet Duplikation identischer Profil-Zeichenfolgen und minimisiert
die Anzahl der Randomspeicher RAM, die ein Schriftzeichensatz benutzt, indem er Profil-Zeichenfolgen für
Schriftzeichenkonturen teilt, die sich sehr annähern.
2.4.4.8 CHKSUM
Eine Ein-Byte Prüfsumme verifiziert jeden vollständigen Randomspeicher RAM; sie wird durch alle Daten
im Schriftsatz-Randomspeicher mit Ausnahme des CHKSUM-Bytes selbst gebildet. Die Prüfsumme wird durch
Initialisierung auf Null gebildet; dann wird die Prüfsumme Tür jedes Byte ein Bit nach rechts bewegt (LSB wird
!0 MSB), und das Datenbyte wird zur Bildung der neuen Prüfsumme addiert. Überlauf bei der Addition wird vernachläßigt. Die endgültige 8-Bit-Prüfsummc wird als CHKSUM definiert und wird nach dem letzten Datenbyte
eingeführt.
2.4.5 Profil-Zeichenfolgen
Im allgemeinen werden die Profil-Zeichenfolgen im Konturen-Datenspeicher von den Anfangspunkten (YN
und XN) getrennt, damit sich mehrere Anfangspunkte auf die gleiche Profil-Zeichenfolge beziehen (sie adressieren) können. Auf diese Art können verschiedene Schriftzeichen innerhalb ein- und desselben Schriftzeichen-
MK.L3 Hill CM3 IVtI UV33HUtill gIGtVltl.1 \JI UIIUIUt III UUIbII UIU glβII·IIWII LSCtI. Vl I UOIIIlIVI I (VVI UVIl1 Ot/ XJQUt VIl(V L/atbir
komprimierung erzielt wird.
Die folgenden Buchstaben können beispielsweise auf der linken Seite identische Kontur aufweisen: »ο«, »c«
und »e«. Der Konturen-Datenspeicher enthält also zwei Profil-Zeichenfolgen, die die inneren und die äußeren
Umgrenzungen auf der linken Seite dieser Schriftzeichen definieren. Das höchste Paar von Anfangspunkten im
Schriftzeichen-Anfangsetikett für »o«, »c« bzw. »e« kann daher diese zwei Profil-Zeichenfolgen adressieren.
Da die dx-Werte in den Profil-Zeichenfolgen je nach dem »L-Bit« im X-Datenwort (XN) positiv oder negativ
sein können, kann eine einzige Profil-Zeichenfolge für verschiedene Schriftzeichen, die symmetrisch sind, dienen. Teile des Schriftzeichens »b« können beispielsweise mit dem Schriftzeichen »d« und Teile des Schriftzeichens »p« können mit dem Schriftzeichen »q« symmetrisch sein. So! ,-he Schriftzeichen können mit den gleichen
Profil-Zeichenfolgen definiert werden, die durch das »L-Bit« zur Bewegung in entgegengesetzten Richtungen
geleitet werden.
Schriftzeichen-Designer neigen dazu, einige wenige Schriftzeichen-Grundformen zu schaffen, die im ganzen
Satz direkt oder spiegelbildlich wiederholt werden. Überlegungen zur Übereinstimmung erfordern, daß einige
wenige Formen im gesamten Satz wiederholt werden, während es die Symmetrie erfordert, daß das Spiegelbild
verwendet wird. Die in der digitalen Definition der Schriftzeichen im vorliegenden System verwendeten Profiles Zeichenfolgen stellen ein wichtiges Werkzeug zur Neubildung dieser Schriftzeichen-Grundformen dar. Da das
Kodierschema die Adressierung einer einzelnen Profil-Zeichenfolge von den Anfangspunkten verschiedener
Schriftzeichen erlaub! und es gestattet. daS die dx-Inkremente in einer Profil-Zeichenfolge positive oder negative Werte hat, wird die Menge der zur Definition eines gesamten Schriftzeichensatzes erforderlichen Daten
erheblich herabgesetzt.
2.4.6 Verschiedenes
Innerhalb der Definition eines einzelnen Schriftzeichens gibt es keine Einschränkung dahingehend, daß zwei
Konturen (Profil-Zeichenfolgen) von dem gleichen Punkt angefangen werden müssen. Es gibt auch keine Einschränkung, daß zwei Konturen am gleichen Punkt enden müssen. Zwei Konturen dürfen sich berühren, dürfen
sich aber nicht überschneiden, wenn sie von »Ein«-Konturen zu »Aus«-Konturen überwechseln.
Gebrochene Schriftzeichen sind im Konturen-Datenspeicher ebenfalls zulässig. Es gibt keine Einschränkung
für gebrochene (unterteilte, getrennte) Schriftzeichen.
so 2.5 Schriftzeichensatz-RAM-Format
Das Datenverwaltungssystem DMS benutzt den Randomspeicher RAM zur Aufnahme der Schriftsatzdaten
für den oder die auf der Seite zu setzenden Schriftzeichensätze, um beschleunigten Zugang zu diesen Daten zu
haben. Die Daten für den Schriftzeichensatz werden dem DMS durch das Eingabesystem geliefert, wo sie auf
der System-Magnetscheibe (System Floppy Disk SFD) gespeichert sind.
Ein vollständiger Schriftzeichensatz ist auf einem oder mehreren Schriftsatz-Randomspeichern Font RAM
gespeichert, wobei jeder Schriftsatz-Randomspeicher nicht mehr als einen Schriftzeichensatz gleichzeitig speichert.
funktioniert mit nur einem Schriftsatz-Randomspeicher, vorausgesetzt, daß Schriftzeichensätze nur einer für
den Schriftsatz-Randomspeicher g.rigneten Größe verwendet werden. Vielfach-Schriftsatz-Randomspeicher
sichern gegen eine Herabsetzung der Durchsatzgeschwindigkeit auf Seiten mit verschiedenen Schriftsätzen.
Jeder Schriftsatz-Randomspeicher Font RAM besteht aus 16K Bytes; jede Schriftsatz-Randomspeicher-Karte
kann bis zu 64K Speicherbytes enthalten: das ist das Äquivalent zu 4 Schriftsatz-Randomspeichern. Einheiten
von weniger a!s vier Schriftzeichensätzen können durch Depopularisierung der Schriftsatz-Randomspeicher-Karten in 16K-Byte-Inkrementen erzielt werden.
Nach neuerlicher Einstellung des Systems entscheidet das Datenverwaltungssystem DMS, welche Schriftsaiz-Randomspeicher zur Aufnahme verfügbar sind, indem in jede Randomspeicher-Position ein Muster einge-
schrieben und die Ergebnisse zurückgelesen werden. Jede Nichtübereinstimmung wird als eine inaktive Schrift- ,,!
satzlage in einer Schriftzcichensatz-Tabelle aufgezeichnet. Nach Prüfung jeder der acht Positionen wird eine M
Meldung an das Eingabesystem gesandt, die die Anzahl der aktiven Schriftsatz-Randomspeicher definiert; dies -J
kann zur Feststel'ung defekter Randomspeicher ausgenutzt werden. Die Schriftzeichensatz-Tabelle wird später ?J
zur Aufzeichnung der in jedem Randomspeicher gespeicherten Schriftzeichensatz-Nummern verwendet. s [}
In dem Verfahren zur Entwicklung eines Daten-Randomspeichers kopien das Datenverwaltungssystem DMS ί
spezifische Schriftzeichenkonturdaten vom Schriftsatz-Randomspeicher in den Konturenspeicher im Daten- j
Randomspeicher Data RAM. Tritt eine Änderung des Schriftzeichensatzes ein, dann prüft das Datenverwal- ${■
tungssyjtem DMS die Tabelle der eingeführten Schriftzeichensatz-Nummern. Ist der Schriftzeichensatz noch ' j
nicht eingeführt, dann führt das Datenverwaltungssystem DMS den neuen Schriftzeichensatz in den oder die io '
ersten leeren Schriftsatz-Randomspeichc· RAM. Sind alle Schriftsatz-Randomspeicher im Gebrauch, so wird ;;
oder werden der oder die Randomspeicher RAM, die vor längster Zeit verwendet worden waren, mit dem neuen 'ij
benötigten Schriftzeichensatz überschrieben. Jj.
Die im Schriftsatz-Randomspeicher gespeicherten Daten sind dem Inhalt und der Struktur nach den Schrift- ;|
satzdaten im Konturen-Datenspeicher auf der Eingabesystem-Magnetscheibe, wie in Abschnitt 2.4.4 dargelegt, 15 ?"
identisch.
Zusätzlich zu den auf der oder den Schriftsatz-Randomspeicher-Kartetn) gespeicherten Schriftsatzdaten
unterhalt das Datenverwaltungssystem DMS zwei weitere Tabellen pro Schriftzeichensatz im Programm-Arheitsrau.
die zur Regulierung der Datenübertragung vom Schriftsatz-Randomspeicher Font RAM zum
Daten-Randomspeicher Data-RAM verwendet weiden, nämlich eine In-Sep,-Tabelle und eine ln-RAM-Tabelle.
Sie werden im folgenden beschrieben.
2.5.1 In-RAM-Tabelle
Diese 512-Byte-Tabelle enthält die Adresse innerhalb des Daten-Randomspeichers Data-RAM, in der ein
Schriftzeichen-Anfangsetikett gespeichert wurde. Die Tabelle ist nach den Schriftzeichen-Nummern angeordnet.
Jeder Eintrag beträgt zwei Bytes. Ein Null-Eintrag zeigt an, daß die Schriftzeichendaten nicht eingegeben
sind.
Immer wenn ein neues Schriftzeichen in den Daten-Randomspeicher Data-RAM eingegeben wird, werden
die entsprechenden 2 Bytes in dieser Tabelle mit der Daten-Randomspeicher-Adresse versehen. Diese Tabelle
wire1 beim Beginn des Aufbaus jedes neuen Data-Randomspeichers aufgelöst.
2.5.2 In-Seg-Tabelle
Diese 32-Byte-Tabelie wird zur Anzeige dafür verwendet, welche Schriftzeichen des Schriftzeichensatzes
bereits innerhalb des zur Zeit im Daten-Randomspeicher Data-RAM entwickelten Zeilensegments angetroffen
wurden. Immer wenn eine Adresse in die In-RAM-Tabelle eingegeben wird, wird entsprechend ein Bit in dieser
Tabelle gesetzt. Diese Tabelle wird beim Beginn eines jeden neuen Setzniveaus (Set level) (YSL) aufgelöst.
Der Struktur nach entspricht jedes Bit einer Schriftzeichen-Nummer zwischen 0 und einschließlich 255. Die
Adresse des Bits wird errechnet durch
Schriftzeichen-Nummer _ , n ,,-.... ^ .. . „ . <-, ...
— = Q + R (Quotient-Ganzzahl und Rest-Ganzzahl)
45 wobei Q das Byte in der Tabelle und R das Bit innerhalb des Bytes ist.
3. Beschreibung der Seitendaten 3.1 Definition der Seite
Eine Seitenposition wird durch X-, Y-Koordinaten in 1/10 Punkten definiert. Dies wird eine Rasterauflösungseinheit
(Raster Resolution Unit RRU) genannt. Der obere linie Rand ist die Position 0,0. Die maximale Seitengröße ist 11 Zoll x 17 Zoll. Das ist 7954 x 12 292 RRU. Bewegung kann auf einer Seite nur von oben noch unten
geschehen.
Die für jede Zeit zu lösende Rasterposition wird Y-Setzniveau (Y set level, YSL) genannt. Dieser Wert beginnt
zunächst bei 0 und wird um eins inkrementiert bis er die maximale Seitentiefe erreicht.
3.2 Seitenvarianten
Zusätzlich zu der in Abschnitt 3.1 definierten normalen Standardseitenform wurden fünf volle Seitenvarian- ω
ten in das ODS-Muster eingefügt. Alle Varianten sind wechselseitig ausschließlich.
3.2.1 Hohe Auflösung
Das Verhältnis des Trommelantriebsgetriebes eines Laserrecorders mit hoher Auflösung kann so verändert
werden, daß jeder Schritt des Schrittmotors 58 die Trommel 56 um 1/20 Punkt antreibt, eine Rasterauflösungseinheit
hoher Auflösung (high resolution raster resolution unit, HRRU). Die horizontale (x-) Auflösung ist nicht
verstärkt.
Das ODS hat einen Chip-Schalter am (Z80 A)-Mikroprozessor des Datenverwaltungssystem DMS, der für die-
hu öy ι
sen Laserrecorder eingestellt ist. Das Datenverwaltungssystem DMS halbiert die Δ Ys, und das OCS inkrementiert das Setzniveau auf jeden anderen Rp.sterausgang.
3.2.2 Prüfseite
5
Ein Laserrecorder mit Prüfseitenfähigkeit macht zwischen jeder Rasterzeile zwei Schrittmotorschritte, so daß
die Geschwindigkeit des Setzens einer Seite mit Prüfungsqualität effektiv verdoppelt wird.
3.2.3 Seitenbreite
15 Das ODS hat einen Chip-Schalter am (Z80A)-Mikroprozessor des Datenverwaltungssystems DMS, der auf
8 1/2 Zoll oder 11 Zoll eingestellt ist. Das Datenverwaltungssystem DMS benutzt eine entsprechende Seitenbreite, wenn Seitenkomplementierung des XPOS-Wertes wegen Ausgabe »fehlerhafte Ablesung« eintritt.
3.2.4 Fehlerhafte Ablesung
Jede Seite kann von jedem Laserrecorder-Typ in korrekter oder fehlerhafter Ablesung (Spegelbild) ausgegeben werden.
Auswahl der fehlerhaften Ablesung geschieht durch einen Kippschalter auf dem (Z80A)-Mikroprozessor des
Datenverwaltungssystems DMS. Das Datenverwaltungssystem DMS veranlaßt eine Seitenkomplementierung
25 der XPOS-Lage eines jeden Schriftzeichens sowie eine Komplementierung der X-Position einer jeden Kontur
jedes Schriftzeichens und der Richtung, in der sich jede Kontur bewegt.
3.2.5 Umkehrvideo
30 Jede Seite kann weiß auf schwarz oder schwarz auf weiß ausgegeben werden (umgekehrt normal).
Auswahl des Umkehrvideo geschieht durch einen Kippschalteram festverdrahteten Prozessor (hardwired processor HWP).
Der HWP kehrt die Polarität des Rasters um.
:>; 35 3.2.6 Zeilenlinie
; ί Erzeugung von Linien auf der Seite.
i' 4. Eingabesystem-Schnittstellenbestimmungen
'■J.
4.1 Allgemeines
Die vorliegende Beschreibung offenbart die erforderlichen Daten und das Datenformat, das zwischen Eingax 45 besystem und Ausgabedaten-Verarbeitungssystem übertragen werden soll. Die Übertragung geschieht durch
das Eingabesystem IOP-80 auf der Basis des Austausches einer Byte-Serien-Übertragung. Tabelle 1 faßt alle
'■:,]
Schnittstellenübertragungen zum ODP-System zusammen.
%
Tabelle 1
fj x
Zusammenfassung der Schnittstellen-Übertragungen
i| Steuerimpuls Übertragungen Eingabe ins ODP-System von
'Si
· Neue Anfrage
i'5 Einstellung neue Anfrage
1 ω Anfang Programm-Speicher
ί Fehler Programm-Speicher
's 6:> Daten Progr-Knmdaten
Ί| 16 Bits (zwei Bytes) und CTL = O Schriftzeichensatz-Daten
Ϊ 22
4U
4.1.1 Seiten-Daten
Das Aujgabedatenverurbcitungssystem ist eine Seitenausgabe-Maschine, hauptsächlich weil der Laserrecorder
die zur Belichtung eines vollständigen Rasters erforderliche Zeit aufbringen muß, selbst wenn er nur Daten
für einen Teil des Rasters hat. Der Durchsatz d~r Maschine wird daher bedeutend heraufgesetzt, wenn der Laserrecorder
mit allen grafischen Daten versehen wird, die in jedem vollständigen Raster erforderlich sind, bevor das.
Raster belichte! wird. Dies erfordert die Speicherung und Umgruppierung der Zufallsfolge-Eingabedaten in
eine Sequenz von oben nach unten. Auf Grund beschränkter Speicherkapazität im Ausgabedatenverarbeitungssystem
müssen die Daten weiterhin in Gruppen verpackt werden, die als »Zeilensegmente« definiert werden,
was die Standardeinheit der durch das Eingabesystem zu übertragenden Seiten-Daten darstellt. Abschnitt 4.2
gibt die Anforderungen an die Seiten-Daten im Detail wieder.
4.1.2 Schriftzeichensatz-Daten
Die Eingabevorrichtung speichert wie oben beschrieben die Schriftzeichensätze in digitalen Konturen auf
Magnetscheiben. Die Konturendaten werden für die Auflösung der Ein-Aus-Rasterpunkte benötigt, und diese
Daten werden durch das Eingabesystem auf der Basis eines gesamten Schriftzeichensatzes (mit Ausnahme der
Breite-Daten, der BLJ-Daten usw.) übertragen. Abschnitt 4.3 beschreibt die Anforderungen an dieSchriftzei-
4.1.3 Andere Daten
Zusätzlich zu den obigen mit dem Betrieb zusammenhängenden Daten können erforderlichenfalls auch
periodische Datenübertragungen durch die Eingabevorrichtung vorgenommen werden. Diese beinhalten Programme,
Fehlermitteilungen, Wiederanlauf und Programmrückstellung. Das Leistungs-Rückstellsignal kann is
ebenfalls von der Eingabevorrichtung ausgehen.
4.1.4 Notation
Zur Beschreibung der Syntax der Datenerfordernisse wird eine Notation der Metasprache verwendet. Verwendet
wird die folgende Notation:
4.1.4.1 »«Terminal - ein Element mit einem Symbol Tür eine feste Bitlänge (z. B.: alle Elemente der Seifen-Daten
sind 16-Bit-Wörter).
4.1.4.2 () Non-Terminal - ein Element einer Sprache höherer Ordnung, die aus einem oder mehreren Terminals
und/oder einem oder mehreren Non-Terminals zusammengesetzt ist.
4.1.4,3 ί J Fakultative Wiederholungen - Die geschweiften Klammern deuten an, daß das oder die angeschlossenen
Non-Terminal(s) nicht oder so oft wie gewünscht benutzt werden dürfen.
4.1.4.4 / Entweder-Oder - Ein Schrägstrich deutet an, daß die Non-Terminals beiderseits des Schrägstrichs
mögliche alternative Elemente sind.
4.1.4.5 ♦ Nur einmal - Ein Sternchen wird verwendet, um anzudeuten, daß das Non-Terminal nicht mehr als
einmal innerhalb des definierten komplexen Non-Terminals verwendet werden darf.
4.2 Seiten-Daten
4.2.1 Struktur der Seiten-Daten
4.2.1 Struktur der Seiten-Daten
Wie in Abschnitt 4.1.1 angedeutet, müssen kodierte Daten, die eine Seite beschreiben, in Gruppen, die als
»Zeilensegmente« definiert sind, zusammengepackt werden:
(SEITE) = {(ZEILEN SEG)} »SETTENENDE«
((PAGE) = {(LINE SEG)} »END PAGE«)
((PAGE) = {(LINE SEG)} »END PAGE«)
Jede Seite kann aus einem oder mehreren Zeilensegmenten, gefolgt von einem Seitenend-Kode, bestehen.
Eine leere Seite hat keine Zeilensegmente. Der Seitenend-Kode ist ein Beendigungskode, nach diesem Kode
können keine die Seiten betreffenden Daten mehr aktzeptiert werden. Die vor dem Seitenend-Kode erhaltenen
funktionellen Daten werden nicht auf die nächste Seite übertragen und müssen, wenn benötigt wiederholt werden.
Jedes Zeilensegment definiert ein Schriftzeichenset, ein Umkehrvideosatz und/oder ein Zeilenliniensatz:
(ZEILEN SEG) = (SEG*)* (YPOS) ((SCHR SET)/(RVSET)/(ZLSET)} »END SEG«
((LINE SEG) = (SEG*)* (YPOS) {(CHAR SET)/(RVSET)/(LR SET)} »END SEG«
Das erste Element in jedem Zeilensegment ist die Segmentnummer.
Getrennte Zeilensegmente mit bestimmten Segmentnummem müssen für jedes Schriftzeichenset mit einer
bestimmten YPOS und Punktgrcße-Kombination definiert werden. Getrennte Zeilensegmente sollten vorzugsweise
für jeden Umkehrvideosatz oder Zeüenüniensatz und vorzugsweise auch für einen Satz definiert werden,
der nicht innerhalb der Y-Grenzen des erweiterten Gevierts eines Schriftzeichensatzes enthalten ist. Die
Umkehrvideo- oder Zeilenliniensätze innerhalb eines einzelnen Zeilensegments müssen den gleichen YPOS-Wert
haben.
erweiterten Gevierts des Schriftzeichen·; im Zeilensegment und/oder die obere Koordinate des Umkehrvideo
oder des oder der Zeilenlintensatzes/sätze im Zeilensegment ist Die Zeilensegmente auf der Seite müssen alle
in der Ordnung der YPOS-Koordinate angeordnet werfen; es gibt keine Sequenzanforderung zwischen Zeilen
segmenten mit gleicher YPOS-Koordinate.
Das Zsilensegnient kann einen oder mehrere Schriftzeichensätze und/oder ein oder mehrere Umkebrvideo-
und/oder Zeileniiniensätze aurweisen.
Der Endsegment-Kode ist ein Beendigungskode, und nach diesem Kode können keinerlei sich auf das Segment beziehende Daten akzeptiert werden. Die vor dem Endsegmentkode erhaltenen Daten werden nicht in das
ίο nächste Segment übertragen und müssen, wenn benötigt, wiederholt werden.
4.2.1.1 Schriftzeichensätze
Die Schriftzeichensets innerhalb eines Zeilensegments müssen der folgenden Struktur folgen:
(SCHRZ SET) = (ANF SCHRZ) {(SCHRZ PAAR)}
((CHAR SET) = (INITIAL CHAR) {(CHAR PAIR)})
wobei einem Anfangsschriftzeichen ein oder mehrere Schriftzeichenpaare folgen. Das Anfangsschriftzeichen
muß dsr folgenden Struktur entsprechen:
(Auf Schrzj = (PUNKT GROSSE)* (SCHRSaTZ) (XPOS) (SCHRZ PAAR)
((INITIAL CHAR) = (PT SIZE)* (FON-D (XPOS) (CHAR PAIR))
'Das Anfangsschriftzeichen in einem Zeilensegment muß eine Größe aufweisen, eine Schriftzeichensatz-Nummer, die x-Koordinate der linken Seite des Schriftzeichens (XPOS) und die Schriftzeichenpaar-Daten, die
folgendermaßen strukturiert sind:
(Schrzpaar) = {(Funktion)} »SCHRZ«
JO ((CHAR PAIR) = {(FUNCTION)} »CHAR«)
und wobei die zulässigen Funktionen die folgenden sind:
(FUNKTION) = (XPOS)Z(SCHRZS)Z(SETBREITEV(NEIGUNG)Z(BU)Z(YLOw)
((FUNCTION) = (XPOS)Z(FONT)Z(SET WIDTCH)Z(SLANT)Z(BU)Z(YLOW) )
Der Schriftzeichenkode ist teilweise ein Beendigungskode, d. h. obwohl keine einem bestimmten Schriftzeichen zugehörige Funktionen nach dem Kode akzeptiert werden können, werden alle vor dem Kode erhaltenen
funktionalen Daten übertragen und bleiben gültig, bis sie durch einen neuen Funktionskode oder ein Zeilensegment-Eleendigungskode (END SEG) verändert werden.
Alle späteren Funktionskode gelten auf diese Weise, bis sie verändert werden, mit der Ausnahme von YLOW,
der nur durch die Ausgabe eines numerisch höherwertigen YLOW verändert werden kann.
Innerhalb eines Schriftzeichensatzes muß jedem folgenden Schriftzeichenpaar ein Anfangsschriftzeichen vorausgehen. Alle funktionalen Kode können beliebig aufgereiht werden, wobei lediglich die obigen Einschränkungen beachtet werden müssen.
4.2.1.2 Umkehrvideosätze
Die Umkehrvideosätze innerhalb eines Zeilensegments müssen der folgenden Struktur folgen:
so
(UMKEHRVIDEO SET) = (XPOS) (UMKEHRVIDEO CODE) (YEND) I XEND)
((RV SET) = (XPOS) (RV CODE) (YEND) (XEND)).
Die Elemente des Umkehrvideosets müssen in der obigen Reihenfolge ohne Zwischenelemente aufgereiht
werden.
4.2.1.3 Zeileniiniensätze
Die Zeileniiniensätze innerhalb eines Zeilensegments müssen der folgenden Struktur folgen:
(ZEILENLINIENSET) = (XPOS) (ZE1LENL1N1ENK0DE) (YEND) (XEND)
((LR SET) = (XPOS) (LR CODE) (YEND) (XEND)).
Die Elemente der Zeileniiniensätze müssen in der obigen Reihenfolge ohne eingreifende Elemente angeordnet werden.
Tabelle 2 laUt die Syntax der Seiicndulen-Struktur zusammen:
Tabelle 2
Seitendaten-Syntax
(PAGE) = {(LINE SEQ)} »END PAGE«
(LINESEG) = (SEG*)* (YPOSrKCHARSET)Z(RVSET)Z(LRSET)JwENDSEGw
(CHAR SET) = (INITfAL CHAR) {(CHAR PAIR) J
(INITIAL CHAR) = (PT SIZE)*(FONT) (XPOS) (CHAR PAIR)
(CH AR PAIR) = {(FUNCTION)} ^H AR«
(FUNCTION) = (XPOS)Z(FONT)Z(SET WIDTH)Z(SLANT)Z(BU)Z(YLOW)
(RV SET) = (XPOS) (RV CODE) (YEND) (XEND)
(LR SET) = (XPOS) (LR CODE) (YEND) (XEND)
4.2.2 EingabekodeZTerminalelemente
Tabelle 3 faßt die Eingabekode-Struktur für die Terminalelemente zusammen, die von der Eingabevorrichtung
zum Ausgabedatenverarbeitungssystem gesandt werden sollen, unter Bezugnahme auf die folgende Beschreibung
der Terminalelemente, die in der Syntax von Abschnitt 4.2.1 verwendet werden.
42.2.1 (SEG*) = »SEG*«
Dies ist eine 13-Bit-Zahl (die LSBs des 16-Bit-Felds, die 3 MSBs sollen O sein), die für jedes Zeilensegment auf
der Seite einmalig ist. Es ist die zur Identifizierung jedes Zeilensegments benutzte Zahl, und sie wird durch das
Ausgabedatenverarbeitungssystem verwendet, wenn es ein bestimmtes Zeilensegment abrufen muli. Es muß der
erste Kode jeder Zeile sein, und er darf nicht mehr als einmal pro Zeilensegment ausgegeben werden.
Segmentnummern können jede Nummer zwischen 1 und 8191 einschließlich (nicht Null) sein, und es ist nicht
notwendig, daß die Segmentnummer mit den zunehmenden YPOS-Werten angeordnet ist.
4.2.2.2 (YPOS) = »YPOS«
Dies ist die Y-Koordinate auf der Seite in RRUs am Kopf eines erweiterten Gevierts der Schriftzeichen im Zeilensegment undZoder die obere Koordinate des Umkehrvideosets im Zeilensegment. Der Kopf der Seite (der
nominell unter dem Oberteil des Papierblatts liegt) wird als O RRU bezeichnet. Zur Bescheibung von YPOS-Werten zwischen O und 12 292 RRUs (17 Zoll) sind bis zu 14 Bits verfügbar.
Der LSB des YPOS entspricht dem LSB des Eingabe worts. Dieser Kode folgt normalerweise auf die Segmentnummer und wird innerhalb eines Zeilensegments nur einmal angegeben.
4.2.2.3 (XPOS) = »XPOS«
Dies ist die X-Koordinate auf der Seite in RRUs auf der linken Seite des Schriftzeichens oder der Umkehrvideo-
!coordinate, die mit den YPOS der Umkehrvideokoordinate ein Paar bilden. Der linke Rand des Papierblatt« und
der Seite ist als O definiert. Normale Randversetzungen werden durch die Programme des Eingabesystems
gesteuert. Zur Beschreibung der XPOS-Werte zwischen O und 7 und 7954 RRUs (11 Zoll) sind bis zu 14 Bits verfügbar. Der LSB der XPOS entspricht dem LSB des Eingabeworts.
16-Bit Eingabe Code Format
15 | 14 | 13 | 12 | O | 11 | 10 | 9 | 8 | 7 | 6 | 5 | π RRU's) YLOS-Daten in RRU | 0 |
(Char number)
Schriftzeirhen-Nr. |
4 3 2 1 |
SEG | O | η RRU's) YPOS-Daten in RRU | 1 |
(FONT number)
Schriftzeichensatz Nr. |
(Betr.: 4.2.2.1) | ||||||||||
0 | 0 | (YLOS data ι | O | η RRU's) XPOS-Daten in RRU | 0 |
CPT SIZE in 1/2 pts)
Punktgröße in 1/2 Pkt. |
(Betr.: 4.2.2.4) | ||||||||
0 | 1 | (YPOS data i | Λ U |
0 | 1 |
(SETWIDTK in ±1/8 ptä)
Setzbreite in ±1/8 Pkt. |
[Betr.: 4.2.2.2) | ||||||||
1 | 0 | (XPOS data i | 1 | 0 | 0 | (LR CODE) Zeilenlinienkode | [Betr.: 4.2.2.3) | ||||||||
1 | 1 | O | 1 | 1 | 1 | (SLANT) Schrägstellung | (Betr.: 4.2.2.6) | ||||||||
1 | 1 | O | 1 | 1 | 0 | (RV CODE) Umkehrvideokode | (Betr.: 4.2.2.5) | ||||||||
1 | 1 | O | 1 | 0 | 1 | (END SEG) Segmentende | (Betr.: 4.2.2.7) | ||||||||
1 | 1 X |
λ U |
O | 0 | 0 | (END PAGE) Seitenende | [Betr.: 4.2.2.8) | ||||||||
1 | 1 | O | 1 | [Betr.: 4.2.2.9) | |||||||||||
1 | 1 | O | 1 | [Betr.: 4.2.2.10) | |||||||||||
1 | 1 | O | 0 | [Betr.: 4.2.2.11) | |||||||||||
1 | 1 | O | [Betr.: 4.2.2.13) | ||||||||||||
1 | 1 | 1 | [Betr.: 4.2.2.14) |
4.2.2.4 (YLOW) = »YLOW«
Dies ist die Y-Koordinate auf der Seite in RRUs am unteren Rand des erweiterten Gevierts des Schriftzeichens
im Zeilensegment. Es ist nicht notwendig, daß dieser Wert für Zeilensegmente mit Normalbuchstaben, d. h. für
Schriftzeichen, die innerhalb des erweiterten Gevierts fallen, geliefert wird. Er muß jedoch für Logos geliefert
werden, die sich tiefer als das erweiterte Geviert erstrecken.
Das Eingabesystem leitet den Wert von den Schriftzeichensatzdaten und der Punktgrößc, ün der das Logo
gesetzt wird, her. Wird dieser Kode mehr als einmal ausgegeben, dann wird der höchste Wert (niedrigster Punkt
auf der Seite) durch das Ausgabedatenverarbeitungssystem zurückgehalten. Maßstabsveränderung, Nuiianordnung und Datenanordnung sind identisch zu YPOS.
4.2.2.5 (FONT) = »FONT« - d. h. (SCHRIFTZEICHENSATZ) = »SCHRIFTZEICHENSATZ«
Dieser Terminalkode definiert die Schriftzeichensatz-Nummer, die für alle folgenden Schriftzeichen benutzt
wird, bis ein neuer Schriftzeichensatz eingegeben ist. Zur Eingabe von Schriftzeichensatz-Nummern zwischen 1
und einschließlich 254 stehen bis zu 10 Bits zur Verfugung. Die Schriftzeichensatz-Nummer LSB entspricht dem
Wort LSB.
4.2.2.6 (CHAR) = »CHAR« - d. h. (SCHRIFTZEICHEN) = »SCHRZ«
Dieser Terminalkode definiert die auszugebende Schriftzeichennummer und stellt einen halb-beendigenden
Kode dar (siehe Beschreibung Abschnitt 4.2.1.1). Zur Eingabe von Schriftzeichennummern zwischen O und 255
einschließlich stehen bis zu 10 Bits zur Verfügung. Die Schriftzeichennummer LSB entspricht dem Wort LSB.
4.2.2.7 (PT SIZE) = »PT SIZE« - d. h. (PUNKTGRÖSSE = »PUNKTGRÖSSE«
Dieser Terminalkode definiert die für alle Schriftzeichen im Zeilensegment zu benutzende Punktgröße. Er
kann innerhalb eines Zeilensegments nur einmal ausgegeben werden. Zur Eingabe aller Halbpunktgrößen zwischen 1/2 und einschließlich 130 stehen bis zu 10 Bits zur Verfugung. Das Wort LSB entspricht 1/2 Punkt und
Bits 1 bis 8 definieren den Binärwert der Punktgröße direkt.
4.2.2.8 (SET WIDTH) - »SET WIDTH« d. h. (SETZBREITE) = »SETZBREITE«
Dieser Terminalkode definiert die für alle folgenden Schriftzeichen zu verwendende Salzbreite, bis eine neue
Breite eingegeben wird. Wird dieser Kode nicht eingegeben, dann hat die Setzbreite einen Fehlwert gleich der
Punktgröße des zu setzenden Zellensegments. Das oder die Setzbreitekommando(s) müssen auf die Punktgröße-Kommandos
folgen.
4.2.2.9 (LR CODE) - »LR CODE«
Dieser Terminalkode definiert, daß die unmittelbar folgenden 2 Wörter das YEND bzw. XEND in einem Zei-.
lenliniensatz darstellen, in dem vorausgehende YPO5! und XPOS die Anfangskoordinaten sind. Die 10 LSBs des
Eingabekode sind Null.
4.2.2.10 (SLANT) = »SLANT« - d. h. (SCHRÄGSTELLUNG) = »SCHRÄGSTELLUNG«
Dieser Terminalkode definiert die Größe der verwendeten Schrägstellung für alle folgenden Schriftzeichen im
Zeilensegment, bis eine neue Schrägstellung eingegeben wird. Um 5 mögliche Schrägstellungen zu definieren,
sind bis zu 10 BiU- verfügbar; der Wert 0 entspricht SLANT OFF (SCHRÄGSTELLUNG AUS), Wert 1 SLANT
+ 7 (SCHRÄGSTELLUNG +7), Wert 2 SLANT +14 (SCHRÄGSTELLUNG +14), Wert 3 SLANT -7 IS
(SCHRÄGSTELLUNG -7) und Wert 4 SLANT -14 (SCHRÄGSTELLUNG - 14).
4.2.2.11 (RV CODE) = »RV CODE - d. h. (UMKEHRVIDEO-KODE) = »UMKEHRVIDEO-KODE«
Dieser Terminalkode definiert, daß die unmittelbar folgenden 2 Wörter das YEND bzw. XEND in einem
IJmkehrvideosei darstellen, in dem vorausgehende YLPQS und XPOS die Anfangsfcoordinaten sirjd. Die IQ LSBs
des Eingabekode sind Null.
4.2.2.12 (YEND) = »YEND«, (XEND) = »XEND«
Diese Terminalkodes definieren die Schlußkoordinaten auf der Seite eines Umkehrvideosets in gleicher Skala
wie YPOS und XPOS. Die zwei MSB werden auf Null gestellt. Hat die YEND-Eingabe einen Wert über dem laufenden
YLOW, dann wird dieser Wert zur neuen Definition von YLOW verwendet.
4.2.2.13 »END SEG«
Dieser Terminalkode definiert das Ende eines Zeilensegments und setzt alle variablen Funktionen innerhalb
dieses Segments auf einen Fehlwert. Die 10 LSBs sind alle Null.
4.2.2.14 »END PAGE« - d. h. »SEITENENDE«
Dieser Terminalkode definiert das Ende einer Seite und setzt alle variablen Funktionen auf den Fehl wert. Alle
10 LSBs sind Null.
Diesem Kode muß ein Zeilensegment vorausgehen, das einen YLOW-Wert gleich der Satzhöhe enthält. Dies
kann geschehen durch
(1) Definition eines YLOW gleich der Satzhöhe innerhalb des letzten Zeilensegments der Seite oder
(2) Definition eines zusätzlichen Zeilensegments mit dem Inhalt: (SEG*) (YPOS) (YLOW) »END SEG«
wobei YPOS und YLOW gleich der Satzhöhe, oder mit dem Inhalt: (SEG*) (YPOS) »END SEG,<,
wobei YPOS gleich der Satzhöhe.
wobei YPOS gleich der Satzhöhe.
4.3 Schriftzeichensatz-Datcn so
4.3.1 Struktur der Schriftzeichensatz-Daten
Kodierte Daten, die die Konturen von Schriftzeichen in einem Schriftzeichensatz beschreiben, werden auf der
Basis des gesamten Schriftzeichensatzes vom Eingabesystem zum Ausgabeditenverarbeitungssystern .übertragen:
(FONT) = {(CHAR OUTLINE DATA)) »END FONT« d. h.
(SCHRIFTZEICHENSATZ) = {(SCHRZ KONT DATEN)! »SCHRIF,ZEICHENSATZENDE«
jeder Schriftzeichensatz besteht aus einem Satz von Schriftzeichenkonturen-Daten für jedes im Schri^zeichensatz
enthaltene Schriftzeichen. Im Schriftzeichensatz können bis zu 256 Schriftzeichen enthalten sein, vorausgesetzt,
daß die in einem Schriftzeichensatz enthaltene Gesamtmenge weniger ist als 15 328 Bytes durch
zweimal die Gesamtzahl der Konturen im Schriftzeichensatz. Der Schriftzeichensatz-Ende-Kode ist ein Beendigungskode,
und nach diesem Kode können keine auf diesen Schriftzeichensatz üezüalichen Daten mehrak7en- h<
(CHAR OUTLINE DATA) = (CHAR) («OUTLINES) {(OUTLINE)) - d. h.
(SCHRZ KONTUR-DATEN) = (SCHRZ) (»KONTUREN) {< KONTUREN)}
wobei das Konturen-Non-Terminal furjede durch das »OUTLINES-Terminai definierte Kontur nur einmal verwendet wird.
Die Schriftzeichennummer ist identisch mit dem in Abschnitt 4.2.26 beschriebenen CHAR-Terminal und ist
eine Zahl zwischen 0 und einschließlich 255. Die Zahl der Konturen pro Schriftzeichen ist auf 255 begrenzt.
Jede Kontur besteht aus Anfangskoordinaten, Vektoren und Steuerungen, wie sie zur Beschreibung eines
Rands des Schriftzeichens erforderlich sind:
(OUTLINE) = (YN) (XN) {(VECTORS/CONTROLS)) d. h.
(KONTUR) - (YN) (XN) ((VEKTORENVfSTEUERUNGEN))
15
wobei die zulässigen Steuerungen sind:
(CONTROLS) = (END OUTLINE)/(CHANGE DIRECTION)(NO VECTORS)/
(LONG VERTICAL)/(SHALLOW HORIZONTAL) - d. h.
(LANGE VERTIKALE)/(FLACHE HORIZONTALE)
Abschnitt 2.4.3 beschreibt besonders detailliert die Struktur der Konturendaten, die in den zwei obigen Statements syntaktisch behandelt sind. Auf diesen Abschnitt muß Bezug genommen werden; genau diese Daten
müssen für diese zwei Statements vom Magnetscheiben-Speichermedium zum Ausgabedatenverarbeitungssystem übertragen werden.
Tabelle 4 faßt die Syntax der Struktur der Schriftzeichensatzdaten zusammen:
(FONT) = {(CHAR OUTLINE DATA)) »END FONT«
(CHAR OUTLINE DATA) = (CHAR) (»OUTLINES) «OUTLINE»
(OUTLINE) = (YN) (XN) {(VECTORSViCONTROLS))
(CONTROLS) = (END OUTLINE)Z(CHANGE DIR)Z(NO VECTORS)Z
(LONG VERT1CAL)Z(SHALLOW HORIZONTAL)
4.3.2 EingabekodeZTerminalelemente
Fig. 13 faßt die Struktur der Eingabekode für die Terminalelemente zusammen, die vom Eingabesystem
für eine Übetragung der Schriftzeichensatzdaten vorgesehen sind.
4.3.2.1 (CHAR) = »CHAR« - d. h. (SCHRZ) = »SCHRZ«
Dieser Terminalkode definiert die durch das Eingabesystem zugeteilte Schriftzeichennummer. Um Schriftzeichennummern zwischen O und 255 einschließlich zu beschreiben, sind bis zu 8 Bits verfügbar. Bit 15 entspricht
dem MSB und Bit 8 ist das LSB.
4.3.2.2 (»OUTLINES) = »»OUTLINES« d. h. (»KONTUREN) = »»KONTUREN«
Dieser Terminalkode definiert die Anzahl der Konturen in diesem Schriftzeichen und geht von der Schriftzeichensatz-Magnetscheibe aus. Um zwischen 1 und 255 Konturen zu beschreiben, stehen bis zu 8 Bits zur Verfugung.
4.3.2.3 »END FONT« d. h. »SCHRIFTZEICHENSATZ-ENDE«
Dieser Terminalkode ist der Beendigungskode für die Schriftzeichenübertragung. Alle 16 Bits im Wort sind
Nullen.
5. DATENRANDOMSPEICHER DATA RAM
5.2 Allgemeines
Der Datenrandomspeicher Data RAM dient als Ausgabepuffer für das Datenverwaltungsuntersystem DMS
und als Eingabepuffer für das Konturenumsetzer-Untersystem OCS. Während die Zeilensegmentdaten in das
DMS eingegeben »erden, werden sie urnibrmslitrt und im Datenrandomspeicher Data RAM gespeichert.
Innerhalb des Systems werden zwei soicher Data RAMs verwendet, wobei jeder 32K Bytes lang ist. Beide Datenrandomspeicher Data RAM sind durch das DMS und das OCS mit folgenden Einschränkungen zugänglich:
(1) Ein Prozessor kann nur an einem Datcn-Randomspeicher zu gleicher Zeit auswählen und arbeiten.
(2) Ein Prozessor kann keinen Datenrandomspeicher auswählen, der durch einen anderen Prozessor ausgewählt wurde.
(3) Entselektiert ein Prozessor einen Datenrandomspeicher (oder löst er die Steuerung), so sind die Daten
innerhalb dieses Randomspeichers RAM für diesen Prozessor nicht mehr gültig. .s
5.2 Aulbau der Daten-Randomspeicher (Data RAM)
Die Daten-Randomspeicher werden durch das Datenverwaltungs-Untersystem DMS entwickelt und zur Verarbeitung an das Konturenumsetzer-Untersystem OCS weitergeleitet. Zum Aufbau der Daten wird Doppelpufferung benutzt, und daher gibt es zwei solche Daten-Randomspeicher. Dies erlaubt es, daß das Datenverwaltungs-Untersystem DMS den nächsten Puffer der Daten entwickelt, während das Konturenumselzer-Untersystem OCS den anderen verarbeitet. Das Grundkonzept ist in Fig. 14 dargestellt. Bei der Entwicklung dieses
Daten-Randomspeichers versucht das Datenverwaltungs-Untersystem DMS, möglichst viele Daten einzufüllen. Dadurch sollte es das Konturenumsetzer-Untersystem OCS mit ausreichend Daten zur Verarbeitung versehen, damit eine mögliche Verlangsamung der Fotosatzeinheit (PTU) vermieden wird.
Der Pufferraumwirdoptimiert, indemer mit Konturendaten geteilt wird, die für andere Zeilensegmente in den
Puffer eingegeben wurden. Um dies zu erreichen, entwickelt das Datenverwaltungs-Untersystem DMS den
Daten-Randomspeicher RAM von zwei Richtungen. Zeilensegmentdaten werden beim Einlesen und Umformatieren an das untere Ende des Speichers gesetzt und ähnliche Schriftzeichenkonturan-Daten an das obere
Bereichsende. Wenn diese zwei Datensets sich gegenseitig beeinflussen, dann werden die Daten bis zum letzten
Zeilensegment sichergestellt, und der Ausgabe-Grenzwert ist definiert. Dieser Vorgang ist in F i g. 15 dargestellt.
5.3 Datcn-Randomspeicher-Format (Data RAM Format)
Die Anordnung des Daten-Randomspeichers ist in Fig. 16 dargestellt. Der Abschnitt zur Schriftzeichenkontur des Daten-Randomspeichers Data RAM ist in Fig. 17 gezeigt. Zur Definition des Formats des Daten-Randomspeichers Data RAM wird die Metasprache, wie in Abschnitt 4.1.4 dargelegt, verwendet. Die Struktur von
Seite, Zeilensegment-Speicher und Konturenspeichcr sind in den Tabellen 5, 6, bzw. 7 dargelegt.
5.3.1 Seitenstruktur
Das Konturenumsetzer-Untersystem OCS definiert eine Seite als einen oder mehrere Daten-Randomspeicher
(Data RAMs):
[PAGE] = [INITIAL DATA RAM] {[DATA RAM]} d. h.
[SEITE] = [ANFANGS DATA RAM] {[DATA RAM])
[INITIAL DATA RAM] = [YLMT][NEW PAGE][PAGE SECTION] d. h.
[ANFANGS DATA RAM] = [YLMT][NEUE SEITE][SEITENaBSCHNITT]
[DATA RAM] = [YLMT][PAGE SECTION] d. h.
[DATA RAM] = [YLMT][SEITENaBSCHNITT]
[NEW PAGE] = »new page« d. h.
[NEUE SEITE] = »neue Seite«
[YLMT] = »limit«
haben.
Der Datenspeicher kann in zwei getrennte Speicher, den Zeiiensegmentspeicher und den Schriftzeichenkontur-Speicher, aufgeteilt werden:
[PAGE SECTION] = [LINE SEG FILE] [OUTLINE FILE] d. h.
[SEITENABSCHNITT] = [ZEILEN-SEGMSPEICHER] [KONTURENSPEICHER]
5.3.2 Zeiiensegmentspeicher
Der Zeiiensegmentspeicher besteht aus allen eingegebenen und durch das Datenverwaltungs-Untersystem
reformierten Zeilensegmenten. Es hat die folgende Form:
[LINE SEG FILE] = ([LINE SEG]) [END RAM] d. h.
[ZEILENSEGMSPEICHER]= ([ZEILENSEGM])[ENDRaM]
In diesem Speicher können so viele Zeilensegmente untergebracht werden, wie Platz vorhanden ist. Dem letz-5
ten »Zeilensegment« muß das End-RAM-Kode folgen.
[END RAM] = [END DATE] / [END PAGE] d. h.
[ENDF^M] = [DATENENOE] / [SEITENENDE]
[ENDF^M] = [DATENENOE] / [SEITENENDE]
io Existieren für die Seite mehr Daten, dann wird das Datenende-Element verwendet. Ist dies der letzte Randomspeicher
RAM für die Stile, dann wird das Seitenende-Element verwendet.
Das Zeilensegment kann wie folgt definiert werden:
Das Zeilensegment kann wie folgt definiert werden:
[LINE SEG] = [START SEG] ([CHAR SET] / [RV SET]) d. h.
!5 [ZEILENSEGM] = [ANFANGSSEGM] ([SCHRZSET] /[UMKEHRVIDEO-SET]}
!5 [ZEILENSEGM] = [ANFANGSSEGM] ([SCHRZSET] /[UMKEHRVIDEO-SET]}
Die Struktur ist dem Eingabeformat sehr ähnlich, die Kodestruktur variiert jedoch.
Die Zeilensegmente müssen mit einem Anfangssegment-Element beginnen. Dieses wird definiert als I
20 [START SET] = [YSET] / [SEG LINK PAIR] / [YACC PAIR] ~~
YSET kann definiert werden als
[YSET] = [YPOS](ZERO DATA WORD] d. h.
25 [YSET] = [YPOS][NULLDATENWORT]
25 [YSET] = [YPOS][NULLDATENWORT]
und wird durch das Datenverwaltungs-Untersystem DMS stets zu Beginn jedes Zeilensegments eingeführt. Dieses
definiert die Y-Koordinate der Seite, aufder das Zeilensegment zu verarbeiten ist. Das NULLDATENWORT
( (ZERO DATA WORD) dient als Zwei-Byte-Kissen, wenn das Zeilensegment aktiv (d. h. die Verarbeitung der
30 Konturen beginnt) oder gestrichen wird.
Beginnt die Verarbeitung eines Zeilensegments, dann wird YSET durch das YACC PAIR ersetzt, wobei
[YACC PAIR] = [YACC HIGH][YACC LOW]
J5 Das YACC PAIR ist das nächste Setzniveau in DRUs Tür das Zeilensegment. Nachdem das Konturenumsetzei-Untersystem
OCS ein Zeilensegment vollständig verarbeitet hat, ersetzt es es durch ein Kettungspaar (link
pair)
[SEG LINK PAIR] = [LINK HIGH] [LINK LOW]
Dieses Kettungspaar besteht aus zwei Elementen, die kombiniert eine absolute Adresse des nächster^Zeileni-i
segments ergeben.
5.3.2.1 Schriftzeichenset
Die Schriftzeichensets innerhalb eines Zeilensegments müssen folgender Struktur entsprechen:
[CHAR SET] = [INITIAL CHAR]([CHAR PAIR]) d. h.
[SCHRZ-SET] = [ANFANGS SCHRZldANFANGSPAAR])
[SCHRZ-SET] = [ANFANGS SCHRZldANFANGSPAAR])
^ mit einem Anfangsschriftzeichen, dem ein oder mehrer Schriftzeichenpaare folgen. Das Anfangsschriftzeichen
;< muß folgende Struktur haben:
F·: [INITIAL CHAR] = [Δ YS PAIR] [SCALE PAIR] [XPOS] [CHAR PAIR]
% Das Δ YS-Paar definiert die Veränderung in DRUs pro Rasterauflösungseinheit. Es hängt von der Punktgröße
% ab.
I [Δ YS PAIR] = [Δ YS HIGHI \Δ YS LOW]
ί Das Skalenpaar definiert die Anzahl der Rasterauflösungseinheiten für jede DRU. Es hängt von derSetbreiie
I ab.
ij [SCALE PAIRj = [SCALE HIGH] [SCALE LOW]
~ig fcin Schriftzeichenpaar ist wie folgt definiert:
m [CHAR PAIR] = ([FUNCTION]![OUTLINE ADD]
I 3o
vobei die zulässigen Funktionen sind
[FUNCTION] - [XPOS] / (SCALE PAIR] / [SLANT OFF] / [SLANT +7] / [SLANT -7] /
[SLANT - 14] / SLANT -14] / [BLJ] / [NULL]
[SLANT - 14] / SLANT -14] / [BLJ] / [NULL]
Alle vor der Konturcnudressc erhaltenen Funktionen werden übertragen und bleiben gültig, bis sie durch
:inen neuen Funktionskode oder ein neues Zcilensegment geändert werden.
:inen neuen Funktionskode oder ein neues Zcilensegment geändert werden.
5.3.2.2 Umkehrvideoset
Das Umkehrvideo hat folgende Struktur
[RV SET] = [XPOS] [RVY PAIR] [RVX PAIR]
und ,.
und ,.
[RVY PAIR] = [RVY HIGH] [RVY LOW]
[RVX PAIR] = [RVX HIGH] [RVX LOW]
[RVX PAIR] = [RVX HIGH] [RVX LOW]
^ ^ ^ \Cr»ntnrpncnp;rhf*r
Der Röhrenspeicher hat folgende Grundslruktur:
[OUTLINE FILE] = {[CURVE UPDATE FILE] / [CHAR OUTLINE]) d. h.
[KONTURENSPEICHER] = {[KURVENÄNDERUNGSSPEICHER] / [SCHRZKONTUR]}
Der Schriftzeichenkonturenspeicher stellt die Daten des Schriftzeichensatz-Randomspeichers RAM für das
spezielle durch das Datenverwaltungs-Untersystem DMS in folgendes Format formatierte Schriftzeichen dar:
spezielle durch das Datenverwaltungs-Untersystem DMS in folgendes Format formatierte Schriftzeichen dar:
[CHAR OUTLINE] = [PURVE UPDATE FILE] [SLOPE FILE] d. h.
[SCHRZKONTUR] = [KURVENÄNDERUNGSSPEICHER] [SCHRÄGE-SPEICHER] 30
Der Kurvenänderungsspeicher ist der Anfang für jede Kurve im Schriftzeichen
[CURVE UPDATE FILE] = {[OUTLINE STARTS]!
[OUTLINE STARTS] = [YN][XN] [SLOPE ADD] d. h.
[KURVENÄNDERUNGSSPEICHER] = {[KONTURANFANG]} 35
[KONTURANFANG] = [YN][XN] [SCHRÄC-ZUNAHME]
Die Vorzeichen im XN-Wort im Konturenspeicher wurden durch das Datenverwaltungs-Untersystem DMS
komplementiert, wenn fehlerhalfte Ablesung stattfindet.
komplementiert, wenn fehlerhalfte Ablesung stattfindet.
Während das Konturenumsetzer-Untersystem OCS die Konturen verarbeitet, werden die OUTLINE- 40
STARTS-Daten so verändert, daß sie den augenblicklichen Verarbeitungspunkt innerhalb jeder Kontur darstellen.
Der Schräge-Speicher (slope file) ist
[SLOPE FILE] = {[VECTORS] / [CONTROLS])
Die Steuerungen sind in den Abschnitten 4.3.1 und 2.4.3 definiert.
Tabelle 5
Seiten-Struktur
Die Steuerungen sind in den Abschnitten 4.3.1 und 2.4.3 definiert.
Tabelle 5
Seiten-Struktur
[PAGE] = [INITIAL DATA RAM] {[DATA RAM]}
[INmAL DATA RAM] = [YLMT][NEW PAGE][PAGE SECTION]
[DATA RAM] = [YLMT] [PAGE SECTION]
[PAGE SECTION] = [LINE SEG FILE] [OUTLINE FILE]
[LINE SEG FILE] = {[LINE SEG] [END RAM]] 55
[END RAM] = [END DATA] / [END PAGE]
Struktur des Zeilensegment-Speichers
[LINE SEG] = [SEG START] {[CHAR SET] / [RV SET]}
[SEG START] = [YSET PAIR] / [LINK PAIR] / [YACC PAIR]
[YSET PAIR] = [YPOS] [ZERO DATA WORD]
[LINK PAIR] = [LINK HIGH] [LINK LOW]
[YACC PAIR] = [YACC HIGH] [YACC LOW] ^5
[CHAR SET] - [INITIAL CHAR] {[CHAR PAIR]}
[INITIAL CHAR] = [A YS PAIR] [SCALE PAIR] [XPOS] [CHAR PAIR]
[A YS PAIR] = [A YS HIGH] [A YS LOW]
[SCALE PAIR] = {SCALE HIGH] [SCALE LOW]
[CHAR PAIR] = {[FUNCTION]} [OUTLINE ADRESS]
[FUNCTION] = P(POS] / [SCALE PAIR] / [SLANT OFF] / [SLANT +7] / [SLANT -7] I
[SLANT +14] / [SLANT -14] / [BLJ] / [INfULL]
[RV SET] = [XPOS] [RVY PAIR] [RVX PAIR]
[RVY PAIR] = [RVX PAIR] [RVY LOW]
[RVX PAIR] = [RVX HIGH] [RVX LOW]
[OUTLINE FILE] = {[CURVE UPDATE HLE] / [CHAR OUTLINE]}
[CHAR OUTLINE] = [CURVE UPDATE HLE] [SLOPE HLE]
[CURVE UPDATE HLE] = {[OUTLINE STARTS]}
[OUTLINE STARTS] = [YN][XN] [SLOPE ADD]
[SLOPE HLE] = {[VECTORS] / [CONTROLS]}
5.4 Terminalelemente
unkodierten Elemente, YLMT, YSACC und Konturenelemente innerhalb eines Daten-Randomspeichers Data
definieren. Die unkodierten Konturenelemente des Daten-Randomspeichers entsprechen den in Abschnitt
2.4.3 definierten; die oben definierte Syntax ist einzuhalten.
5.4.1 ([OUTLINE ADDRESS] = »outline address«) d. h. Kontur-Adresse
bestimmt. Die Adresse weist immer auf die erste Kurve der Kontur im Änderungsspeicher (update file). Es ist
eine Wortadresse und muß daher verdoppelt werden, um die Byte-Adresse in den 32K-Randomspeicher RAM
zu bekommen. (Da alle Daten im Randomspeicher 16-Bit-Kode sind, fangen die Kode immer bei einer geraden
5.4.2 [YPOS] = »YPOS«
Das ist die gleiche Kode, wie sie in das Datenverwaltungs-Untersystem DMS eingetragen wurde. Hinsichtlich
Format und Definition siehe Abschnitt 4.2.2.2. Im Konturenumsetzer-Untersystem OCS zeigt er eine zusätzliche Funktion. Er bezeichnet nicht nur den Anfang eines neuen Zeilensegments, er beendet auch das vorausgehende Zeilensegment.
5.4.2.1 [ZEOR DATA WORD] - »ZERO DATA WORD« d. h.
[NULLDATENWORT) - »NULLDATENWORT«
Dieses unkodierte 16-Bit-Feld folgt immer auf YPOS. Es dient als Kissen, wenn ein Zeilensegment aktiv wird.
5.4.3 [YACC HIGH] - »YACC HIGH«
Dieser Kode definiert die wichtigsten 8 Bits des Satzniveaus in DRUs. Er enthält die 8 wichtigsten ganzzahligen Bits des Werts.
Dies ist ein 16-Bit-Feld, das stets auf YACC HIGH folgt. Es enthält die verbleibenden 2 ganzzahligen BiU und
die 11 Dezimalbits des Satzniveaus: die niedrigstwertigen Bits sind immer O.
5.4.4 [XPOS) = »XPOS«
Dies ist der gleiche Kode wie er in das Datenverwaltungs-Untersystem DMS eingetragen wurde. (Hinsichtlich
Format und Definition siehe Abschnitt 4.2.2.3) mit der Ausnahme des Falls, daß der Schalter fehlerhalfie Ablesung gesetzt wird, wenn das Komplement der Seitenbreite von XPOS (PG WDTH-XPOS) eingetragen wird.
5.4.5 [NULL] = »NULL«
Der Nullkode wird verwendet, um Elemente innerhalb eines Zeilensegments zu streichen. Das Datenverwaltungs-Untersystem DMS führt diesen Kode ein, um Schriftzeichensatz-Anfragen innerhalb eines Segments zu
streichen, wenn sie bearbeitet werden. Das Konturenumsetzer-Untersystem OCS führt diesen Kode ein, um
»Konturenadresse« zu entfernen, wenn sie vervollständigt ist.
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | O | 0 | 0 | 0 | 7 | 6 | 5 | Null | 4 | 3 | 2 | 1 | Abschnitt 5.4.1 |
0 | 0 |
Character Outline Address)
Schriftzeichen-Konturen-Adresse) |
O | 0 | 0 | 1 | AYs High | Abschnitt 5.4.2 | ||||||||||||
0 | 1 |
[YPOS data in RRU's)
YPOS-Daten in RRU |
O | 0 | 1 | 0 | Δ Ys Low | Abschnitt 5.4.4 | ||||||||||||
1 | 0 |
[XPOS data in RRU's)
XPOS-Daten in RRU |
O | 0 | 1 | 1 | Scale High | Abschnitt 5.4.5 | ||||||||||||
1 | 1 | 0 | O | O | 1 | 0 | 0 | Scale Low | Abschnitt 5.4.6 | |||||||||||
1 | 1 | 0 | O | O | 1 | 0 | 1 | BU | Abschnitt 5.4.7 | |||||||||||
1 | 1 | 0 | O | O | 1 | 1 | 0 | Link High | Abschnitt 5.4.8 | |||||||||||
1 | 1 | 0 | O | O | 1 | 1 | 1 | Link Low | Abschnitt 5.4.9 | |||||||||||
1 | 1 | 0 | O | 1 | 0 | 0 | 0 | RVY High | Abschnitt 5.4.10 | |||||||||||
1 | 1 | 0 | O | 1 | 0 | 0 | 1 | RVY Low | Abschnitt 5.4.11 | |||||||||||
1 | 1 | 0 | O | 1 | 0 | 1 | 0 | RVX High | Abschnitt 5.4.12 | |||||||||||
1 | 1 | 0 | O | 1 | 0 | 1 | 1 | RVX Low | Abschnitt 5.4.13 | |||||||||||
1 | 1 | 0 | O | I | 1 | 0 | 0 |
(New Page)
Neue Seite |
Abschnitt 5.4.13 | |||||||||||
1 | 1 | 0 | O | 1 | 1 | 0 | 1 |
(Siant OfT)
Schrägstellung Aus |
Abschnitt 5.4.13 | |||||||||||
1 | 1 | 0 | O | 1 | 1 | 1 | 0 |
(Slant +7)
Neigung +7 |
Abschnitt 5.4.13 | |||||||||||
t f |
1 | 0 | O | 1 | 1 | 1 | 1 |
(Slant -7)
Neigung -7 |
Abschnitt 5.4.14 | |||||||||||
1 | 1 | 0 | O | O | 0 | 0 | 0 |
(Slant +14)
Neigung +14 |
Abschnitt 5.4.15 | |||||||||||
1 | 1 | 0 | O | O | 0 | 0 | 1 |
(Slant -14)
Neigung -14 |
Abschnitt 5.4.15 | |||||||||||
1 | 1 | 0 | O | O | 0 | 1 | 0 |
(End of Data)
Datenende |
Abschnitt 5.4.15 | |||||||||||
1 | 1 | 0 | O | O | 0 | 1 | 1 |
(End of Page)
Seitenende |
Abschnitt 5.4.15 | |||||||||||
1 | 1 | 0 | 1 | O | 1 | 0 | 0 | YACC High | Abschnitt 5.4.15 | |||||||||||
1 | 1 | 0 | 1 | O | 1 | 0 | 1 | (Font Call) Schriftsatz-Abruf |
Abschnitt 5.4.16 | |||||||||||
1 | 1 | 0 | 1 | Abschnitt 5.4.17 | ||||||||||||||||
1 | 1 | 0 | 1 | Abschnitt 5.4.3 | ||||||||||||||||
1 | 1 | 0 | I | Abschnitt | ||||||||||||||||
1 | 1 | 0 | 1 |
5.4.6 [Δ Ys HIGH] = »A Ys HIGH«
Es enthält die wichtigsten 8 Bits der Rechnung 43.2/PUNKTGRÖSSE. Es besteht aus einer 5-Bit-Ganzzahl und
einer 3-Bit-Ganzzahl.
einer 3-Bit-Ganzzahl.
5.4.7 [A Ys LOW] = »A Ys LOW«
Es enthält den verbleibenden 8-Bit-Dezimalwert der Rechnung 43.2/PUNKTGRÖSSE. Dieser Kode folgt
immer auf ein Ys HIGH.
5.4.8 [SCALE HIGH] = »scale high«
Es enthält die wichtigsten 8 Bits der Rechnung Satzbreite/43.2. Es besteht aus einer 4-Bit-Ganzzahl und einer
4-Bit-Dezimalzahl.
5.4.9 [SCALE LOW] = »scale low«
Es enthält den verbleibenden 8-Bit-Dezimalwert der Rechnung Satzbreit/43.2. Dieser Kode folgt stets auf ein
»scale high«.
5.4.10 [BU] = »BLJ«
Dieser Kode definiert die Schriftlinienadaption in 154steln. Hinsichtlich Format siehe 4.2.2.9.
5.4.11 [LINK HIGH] = »link high«
Dieser Kode liefert die wichtigsten 8 Bits einer Bindeadresse, die verwendet wird, um Zeilensegmente zu
überspringen, die bereits komplettiert sind.
5.4.12 [LINK LOW] = »link low«
Dieser Kode liefert die unwichtigsten 8 Bits einer Bindeadresse, die verwende wird, um Zeilensegmente zu
überspringen. Dieser Kode folgt immer auf den »link high«-kode.
5.4.13 [RVYHIGH] = »RVY high«
[RVYLOW] = »RVY low«
[RVXHIGH] = »RVXhigh«
[RVXLOW] = »RVXlow«
Diese Kode müssen in der übige Reihenfolge auftreten. Die niederwertigen 8 Bits definieren die Umkehrvideogrenzen.
5.4.14 [NEW PAGE] = »New Page« d. h. Neue Seite
Diese Steuerung definiert einen Daten-Randomspeicher Data RAM als ersten einer neuen Seite. Sie muß vor
dem ersten Zeilensegrnent einer Seite ausgegeben werden.
Bit 0 ist eine 0 für normalen Standardbetriebsmodus und ist eine 1 für einen Prüfseitenmodus. Bit 1 ist eine 0
für normale Auflösungseinheiten (1/10 Punkt pro Rätter) und ist eine 1 für Einheiten hoher Auflösung (1/20
Punkt pro Raster). Die anderen 6 LBSs haben keine Bedeutung.
5.4.15 [SLANTOFF] = »slant olT« Neigung
[SLANT +7] = »slant +7«
[SLANT -7] = »slant -7«
[SLANT+14] = »slant+14«
Diese Kode definieren, welche Neigungskonstante Tür die folgende Konturrechnung verwendet wird. Die
LSBs haben keine Bedeutung.
5.4.16[END DATA] = »End data«, d.h. Datenende
Dieser Kode folgt auf das letzte Zeilensegment innerhalb des Datenrandomspeichers Data RAM. Er informiert das Konturenumsetzer-Untersystem OCS, daß weitere Daten Für diese Seite im nächsten Datenrandomspeicher Data-RAM folgen. Die LSBs haben keine Bedeutung.
5.4.17 [END PAGE] = »End page«, d. h. Seitenende
Dieser Kode folgt auf das letzte Zeilensegment innerhalb des Datenrandomspeiehefs. Es infofmiert das Konturenumsetzer-Untersystem OCS, daß keine weiteren Datenrandomspeicher Data-RAMs für die Seite folgen.
Die LSBs haben keine Bedeutung.
ft5 5.4.18 [YLMT] = »Y limit«, d. h. Y-Grenzwert
Dieser Terminal ist der erste Kode im Datenrandomspeicher. Es handelt sich um eine 14-Bit-Zahl, die den
letzten Raster in RRUs definiert, der durch das Konturenumsetzer-Untersystem OCS mit den Daten im Datenrandomspeicher Data-RAM ausgegeben wird.
5.4.19 »Font Call« ü. h. Schrittsatzabruf
Dieser Kode wird durch den 7.80Λ erzeugt, um Schriftsatzabruf-Prozesse zu vereinfachen. LIs handelt sich um
einen vorübergehenden Kode, der vor der Freigabe des Datenrandomspeichers Data RAM an das Konturenumsetzer-Untersysteme
OCS zur Verarbeitung der Ausgabe durch einen Null-Kode ersetzt wird. S
6. Konturenalgorithmus
Der Konturenalgorithmus stellt Formeln und Prozesse dar, die die Schnittlinien der Raster mit den Konturen
der auf jedem beliebigen vertikalen Niveau der Seite zu setzenden Schriftzeichen lösen und speichern. Diese
Schnittlinien sind die horizontalen Positionen, bei denen der Laserstrahl ein- und ausgeschaltet werden muß,
wenn er von den Rasterlinien abweicht.
6.1 Grundlegende Konturen-Schnittlinien
Alle Schriftzeichen im Datenset werden durch eine Reihe von Anfangsadressen und Vektoren beschrieben,
die die Konturen der Schriftzeichen umreißen. F i g. 18 veranschaulicht die zur Lösung einer Kontur verwendeten
Faktoren. (Zur Korrelation vgl. Fig. 9).
Der Vektor VN stellt einen Rand eines Schriftzeichens dar. Der Abstand vom linken Rand der Seite zu dem
Punkt auf diesem Vektor, wo er durch das laufende Rasterniveau gescbni tten wird, soll gelöst werden. Man sieht,
daß dieser Abstand, der hier als XREG definiert ist,
XREG = XPOS + XN + AX
Der allgemeine Ausdruck muß also die Möglichkeit berücksichtigen, daß XN auf der linken Seite gelassen
wird (XN-Zeichenbit ist negativ) und daß der Vektor nach unten u~.d nach links zeigen kann (das Daten-L-Bif ist
eins), was zu einem negativen X führt:
XREG = XPOS ± XN ± Δ Χ
Da XREG in Rasterauflösungseinheiten (RRU) für die endgültige Laserausgabe gewünscht wird, müssen die
entsprechenden Skalenfaktoren angewandt werden. XPOS wkd vom Eingabesystem in RRUs eingegeben und
wird während des gesamten Ausgabedatenverarbeitungssystems aufrechterhalten. XN und die Δ X-Faktoren
werden in relativen Schriftzeicheneinheiten gespeichert, damit ein Setzen von Schriftzeichen aller Größen aus
einem Datensatz möglich wird. Die horizontale Maßstabsänderung der Schriftzeichen basiert auf dem Setzbreitekommando,
damit Ausdehnung und Komprimierung der Schriftzeichen für Abbildungszwecke und/oder
kopierfähige Zwecke ermöglicht wird. Der Ausdruck wird:
XREG = XPOS + [± XN ± Δ X] [SW/43.2]
Ähnliche Dreiecke werden benutzt, um geometrisch für A X zu lösen:
Δ X dx
(Ys-YN) dy '
45 Durch Ersetzen:
XREG = XPOS + [± XN ± (Ys - YN) (dx/dy)] [SW/43.2] (1)
In der allgemeinen Form der obigen Gleichung sind XN und YN die Anfangsadressen des Vektors VN, dessen
Neigung dx/dy ist. Ys ist der Abstand in Schriftzeicheneinheiten, definiert als Datenauflösungseinheiten
(DRUs), von den Nu!ld?ten auf dem erweiterten Geviertbereich des Schriftzeichens zum Rasterniveau. Ys ist
also eine Funktion der zu setzenden Punktgröße und des Rasterabstands in RRUs vom oberen Teil des Gevierts:
Ys = (YSL - VHI) (43.2/Punktgröße)
In der Praxis sucht der Algorithmus die zunehmenden Ys in einer Tabelle auf, wobei
Δ Ys = (43.2/Punktgröße) ist
und addiert diesen Wert den vorausgehenden Ys für jede neue Rasterzeile.
6.2 Grenzbit und Ein/Aus-Pufferspeicher
Gleichung (1) wird für alle Schriftzeichen-Konturensektoren gelöst, die das I ,ufende Raster schneiden. Inner- A5
halb der Schriftzeichendaten ist ein Grenzbit (B-Bit) mit jeder Konturenreihe eingebettet, welche aufzeichnet,
ob die Kontur den L?serstrahl ein- oder ausschalten soll.
Die schließlich erhaltenen Lösungen jeder Schnittstelle werden in einem EIN-Randomspeicher ON RAM
oder einem AUS-Randomspeicher OFF RAMJe nach dem Zustand des B-Bits, gespeichert. Diese Randomspeichcr, die sogenannte »RasterlinienpulTer« darstellen, sind jeweils 8K lang und enthalten jeweils ein Bit für jedes
horizontale Aufiösungselement (Bezug: Abschnitt 7.5). Jede XREG-Rechnung fuhrt zum Setzen eines
bestimmten Randomspeicher-Bits, das dem Wert der XREG-Lösung entspricht, lnkrementbildungs-lechniken
veranlassen, daß ein angrenzendes Bit gesetzt wird, wenn eine Lösung einer vorausgehenden Lösung auf der
gleichen Raslerzeiie identisch ist, was sich ergeben kann, wenn die Schriftzeichen überlegt oder unterschnitten
sind.
6.3 Lange Vertikale
Zur Verstärkung der Datenkomprimierung sind ein Paar Datensteuerbytes zur Verwendung im Vektordatenstrom vorgesehen, um vertikale Vektoren zu definieren, die langer als der nominal längste zulässige geneigte
Vektor VN (dessen Maximallänge durch die 15 DRU-Grenze bei dy und dx eingeschränkt ist).
Ein Steuerbyte wird zu Definition dieser Bedingungen verwendet, wobei dx (und daher auch Δ X) Null sind,
und das folgende Byte definiert die dy-Lange des Vektors in Binärkode (Bezug Abschnitt 2.4.3 »Steuerungen»,
wo dx = 3). Dieses Datenbyte-Paar könnte jeden vertikalen Vektor mit einer Länge zwischen 1 und 255 DRUs
definieren. Seine Verwendung wurde jedoch auf Vektoren mit Längen 31 und 255 DRUs begrenzt, weil (a) Längen zwischen 1 und 15 DRUs mit weniger Daten ausgedrückt werden können, wobei die verfügbare nichtgesteuerte dydx-Definitvektorkodierung ve-wendet wird, und (b) Längen zwischen 16 und 30 DRUs im 8X300-Mikroprozessor schneller verarbeitet werden können, wenn sie als zwei definite vertikale Vektoren ausgedrückt
6.4 Steile Schrägen
Es gibt Schriftzeichenkonturen, die eine derartige steile, fast vertikale. Neigung haben, daß sie bei Verwendung des steilsten nicht-vertikalen dxdy-Paars auf Grund der 15-DRU-Begrenzung nicht adäquat definiert wer
den können. Würden diese Konturen durch die Kombination einer langen Vertikalen und eines 1/15-Vektors
definiert (dieses Paar würde die Endpunkte des gewünschten steilen Vektors exakt definieren), dann würde die
verwendete Ausgabe jeden Bestandteil des Paars genau ausgeben; dies würde einem Schriftzeichenrand bei großen Punktgrößen jedoch ein unsauberes Aussehen verleihen, besonders dann, wenn die vertikale Komponente
des Paars länger als die schräge Komponente ist.
Es wurde eine Peihe von Steuerbytes definiert, die es gestatten, daß alle steilen Vektoren durch die Kombination einer vertikalen Komponente und einer längeren schrägen Komponente definiert werden. Die Steuerbytes
(siehe Abschnitt 2.4.3 »Steuerungen«, wo dx = 4,5 und 6) definieren Vektoren mit Neigungen von 1/30, 1/60
und 1/230; sie werden mit vertikalen Vektoren oder langen Vertikalen verwendet, je nachdem, was zur Vervollständigung des exakten steilen Vektors erforderlich ist.
Da der festverdrahtete Prozessor (HWP) (siehe Abschnitt 7) keine 1/30, etc., Neigungen akzeptiert, wird die
Lösung dieser Steuervektoren so erreicht, daß der SMS300-Mikroprozessor dem HWP kompensierte Werte
zufiihrt. Der S.MS300 gibt den Wert eines ! /! S-Vekiors in den HWPein, verringerta&cf die Ys- und YN-Werte, so
daß sich eine halbierte (oder geviertelte oder geachtelte) Δ X-Lösung ergibt.
6.5 Schwache Schrägen
Es gibt Schriftzeichenkonturen, die eine derartige schwache Neigung haben, daß sie durch ein dxdy-Paar auf
Grund der 15-DRU-Begrenzung nicht definiert werden können. In diesem Fall ist dy ein DRU und dx muß größer sein als 15 DRUs. Ein Steuerbyte wird verwendet, um diese Bedingung zu definieren, und das folgende Byte
definiert ein Vielfaches (1 bis 15) von 16 DRU Verschiebungen plus einer Verschiebung von weiteren 0 bis 15
DRU (siehe Abschnitt 2.4.3: »Steuerungen«, wobei dx = F). Jeder Vektor mit einem dx zwischen 16 DRUs und
255 DRUs in Verbindung mit einem dy von 1 kann durch dieses Byte definiert werden.
6.6 Eckige Außenformen
Schriftzeichenkonturen wie etwa die rechte Seite eines großen »E« der»Helvetic«-Schrift haben eckige Form.
Diese Formen können als eine Reihe individueller vertikaler Konturen behandelt werden; dies würde jedoch
voraussetzen, daß eine gültige Datenladung die Anfangspositionen einer jeden Kontur aufzeichnet. Es wurden
daher zwei Steuerbytes vorgesehen, die die Verhältnisse einer Kontur definieren, die sich horizontal in geradliniger Form während einer vertikalen DRU verschiebt (im Vergleich mit einer schwachen Schräge, die sich wäh-
rend einer vertikalen DRU in schräger Form horizontal verschiebt). Ein Steuerbyte (siehe Abschnitt 2.4.3:
»Steuerungen«, wo dx = D) definiert horizontale Verschiebungen bis zu 255 DRUs; das zweite Steuerbyte (siehe
Abschnitt 2.4.3: »Steuerungen«, wobei dx = E) definiert Verschiebungen zwischen 256 und 511 DRUs einschließlich.
Der Mikroprozessor 8X300 gibt dx und K als Null innerhalb dieser vertikalen DRU-Zone aus, damit eine
gekantete Konturenform erhalten wird.
6.7 Extrapolation
Nähert sich das lautende Rasterniveau 1 DRU des anfanglichen YN (Anfang) einer Kontur, dann wird eine
Lösung durchgeführt. Es handelt sich um eine extrapolierte Lösung, da das Rasterniveau den Vektor noch nicht
erreicht hat. In diesem Fall ist Ys kleiner als YN, das den Ausdruck (Ys-YN) negativ macht, was wiederum die
Polarität des Vorzeichens, das diesem Ausdruck in der Gleichung (2) oben vorausgeht, umkehrt [A X kehrt das
Vorzeichen um).
Die Neigung des nächsten folgenden Vektors wird verwendet, während Ys größer als Yn-I und gleich oder kleiner
als YN, vorausgesetzt, daß das Flatterbit (siehe Abschnitt 6.8) nicht eingeschaltet ist. In dieser Zone ergibt
sich eine echte Extrapolation.
6.8 Flatterbit
In zwei Fällen ist die Extrapolation auf die folgende Neigung unzureichend flach zur qualitativ zufriedenstellenden
Reproduktion eines Schriftzeicnens. Im Fall 1 wünscht der Drucker auf Grund einer Sichtprobe des realen
oder des simulierten Schriftzeichenausgangs eine schwächere Eingangsneigung in der Extrapolationszone.
Ein Flatterbit (F-Bit) wird im XN-Datenwort verwendet, das er ansetzen kann. Im Fall 2 erzeugt ein sehr feines
vertikales Rücksprungmerkmal des Schriflzeichens Anfangspunkte ohne folgende Vektoren; in diesem Fall is
setzt das Schriftzeichen-Digitalisierungsprogramm das Flatterbit automatisch auf eine Eins. Das Digitalisierungsprogramm
setzt das Flatterbit auch auf eine Eins, wenn der Anfangsvektor eine Neigung hat, die geringer
als 30° ist.
Ist das Flatterbit eingeschaltet, dann wird der K-Wert in der Gleichung (2) nur Tür die Extrapolationszone auf
einen Wert Eins gesetzt, wodurch die Neigung in dieser Zone verringert wird. Dies wird durch das Konturenum- μ
setzer-Untersystem OCS gesteuert.
6.9 Extrapolations-Löschbit
Das Ε-Bit im XN-Datenwort löscht die Extrapolation. Dieses Bit kann durch den Drucker auf eine Eins gesetzt
werden.
6.10 Schrägstellung
Elektronische Schrägstellung eines Schriflzeichens besteht darin, daß man die Schriftzeichenkonturen innerhalb
eines Geviertes nimmt und sie in einer bestimmten Anzahl von Graden in der rechten oder linken Richtung,
je nach gewünschter Schrägstellung, in die Grundform eines Parallelogramms bringt. Dies geschieht um
eine neutrale Mittelachse, die an Ort und Stelle bleibt; Ys von 344 DRUs ist das Niveau der neutralen Achse.
Die Veränderung der Konturen in der x-Stellung, die durch diese Schrägstellung bedingt ist, ist also
SLC = (344 - Ys) (tg Schrägstellungswinkel)
r\: .ix :_.- C-U.^—.»ii.._„....:„u.ι -J-- -ι- ι ι n~A ..-J \λ n.nA „»...:;uu ...„:i :u-« x„_„„„>.· ι /ο κ,,.,
u\%* Z.uio33l0bll LiUItI ogaibii uiigDTr ninwi nuiubiiaia /,i VJ lau uit\J ιτυ lau gv vraint, ττ\.ιι mi ν laiigvtuba ifu i/tir.
1/4 betragen und daher eine Skalierung des SLC durch Bit-Verschiebung zulassen.
Setzt man diesen endgültigen Faktor in Gleichung (2), so führt die zu
Setzt man diesen endgültigen Faktor in Gleichung (2), so führt die zu
XREG = XPOS + [± XN ± (Ys - Yn)(dx/dy + 16K) ± SLC] [SW/43.2] (3)
Dies ist die Lösung, die durch das Konturenumsetzer-Untersystem OCS und den festverdrahteten Prozessor
HWP gelöst wird.
6.11 Umkehrvideo
Umkehrvideo folgt nicht der Gleichung des Konturenalgorithmus; es kehrt lediglich die resultierende Ausgabe
von den EIN/AUS-Puffern (siehe Abschnitt 6.2) zwischen zwei Stellungen horizontaler Lösung um. Diese so
Stellungen sind durch das Eingabesystem bestimmt, das auch die vertikalen Grenzen bestimmt, in denen die
Umkehr wirksam ist. Die Punkte sind in einem Randomspercher RAM in ähnlicher Datenstruktur wie die EIN/
AUS-Randomspeicher ON/OFF RAMs gespeichert.
Diese Fähigkeit kann auf einfache Art horizontale Linierr, vertikale Linien oder Umkehrvideoblocks erzeugen.
Überlappende Umkehrvideobereiche kehren sich an der Überlappungsstelle um.
Randlinien können durch Definition eines Bereichs innerhalb eines zweiten hergestellt werden. Unterstreichung
kann ähnlich durch zwei RV-Bereiche definiert werden. Bei der Spezifizierung sich überlappender RVs
muß jedoch Sorgfat beachtet werden. Horizontale Linien, die vertikale Linien schneiden, haben beispielsweise
weiße Schnitte und RV-Unterstreichung, die Schriftzeichen schneidet, ist an den Schnitten weiß.
6.12 Linienziehen
Es sind Zeilenlinierungskommandos, die ähnlich wie Umkehrvideokommandos definiert sind, vorgesehen, so
daß Linien hergestellt werden können, die sich optisch nicht umkehren, wenn sie Schriftzeichen oder andere
Linien kreuzen.
Bits werden in die entsprechenden EIN/A US-Puffer gesetzt, spezielle Hardware ist für diesen Zweck im festverdrahteten
Prozessor HWP jedoch nicht vorgesehen. Der 8X300 gibt einen XPOS-Wert an den HWP, der dem
entsprechenden Ende der Linie (LRX HIGH, LRX LOW) entspricht und gibt ein Null dx und ein NuII-XN aus,
wobei entsprechende Grenzbits zur Durchführung dieser Funktion gesetzt sind.
4.J TV/ K)S I
6.13 Falsche Ablesung
Zur Erzielung einer falschen Ablesung errechnet man XPOS durch Subti,.ktion des eingegebenen XPOS von
der Seitenbreite, um den Abstand vom rechten Rand der Seite zu erhalten. Das Vorzeichen eines jeden XN und
5 seiner L- und B-Bits wird ebenfalls komplementiert, um jedes Schriftzeichen effektiv fehlerhaft abzulesen.
Diese Aufgaben werden während des Aufbaus des Daten-Randomspeichers Data RAM durch das Datenverwaltungs-Untersystem DMS (Z80A) durchgeführt und sind codeunabhängig (transparant) gegenüber dem Konturenumsetzer-Untersystem OCS, das die Daten auf übliche Weise für die normale Laserstrahl-Abtastung von
links nach re:hts ausgibt.
6. Festverdrahteter Prozessor
7.1 Allgemeines
Der festverdrahtete Prozessor (HWP) erhält Daten und Steuerungen vom Konturenumsetzer-Untersystem
15 (OCS) und vom Laserrecorder oder der »Lichtsetzeinheit« (PTU) und sendet ein »Videosignal« wie auch andere
Steuersignale an die PTU. Diese Funktionen weiden durch die Ausführung folgender allgemeiner Schritte
durchgeführt:
(1) Unter Verwendung der Eingangsdaten und Steuerinformation aus dem OCS werden die Ein/Aus-Punkte
20 und eine Umkehrvideopunkte errechnet, und »Eins«-Bits werden in ein »EIN«-Register. ein »AUSw-Reju
ster oder ein »Umkehrvideo«-Register gesetzt; sie werden hier als »Ausgaberaster-Zeilenpuffer« bezeichnet.
(2) Unter Verwendung eines Eingabe-Taktgebers und Steuerungen von der PTU wird ein Video-NR-Steuersignal erzeugt, das von den in den Ausgaberaster-Zeilenpuffer gesteuerten »Einsen« abhängige Übergänge
25 aufweist.
;. (3) Unter Verwendung intern erzeugter Kennzeichen werden die durchschnittlichen Eingabe- und Ausgabe-
' ■·;■■ Übertragungsgeschwindigkeiten so justiert, daß sie die große Breite in der Dauer (oder der Menge) der Eingabedaten kompensieren.
., (4) Unter Verwendung von F.ingabcsteuerungen vom Konturenumsetzer-Untersystem OCS und der Lichtsetz-
1 .ίο einheit PTU werden die RasterzeilcnpulTer gelöst und die erforderlichen Steuer- (oder Antwort-)Signale
an die PTU, beispielsweise zur Ingangsetzung des Antriebsmotors der Vorschubwalze der Lichtsetzeinheit
PTU, gesandt (Element 58 in Fig. 2).
■ 35 zungen treten Ein-Aus-Übergänge auf. Die Eingabedaten basieren auf den Schriftzeichen in jedem zu drucken-• den Zeilensegment bzw. Liniensegment. Da sich Zeilensegmente überlappen dürfen, dürfen sich auch Schrift-ΐ zeichen überlappen. Um dies unterzubringen, wird eine Technik verwendet, die einen »EIN«-Puffer und einen
λ »AUS«-Puffer benutzt. Jeder Puffer stellt einen Speicher von genügendem Raum dar, um ein Bit zu speichern,
ΪΪ das jedes Element einer einzelnen Abtastzeile darstellt. Der »EIN«-Puffer speichert ein Eins-Bit in jenen EIe-
£ 40 menten, die einen Schwarz-Weiß-Übergang eines Schriftzeichens darstellen und der »AUS«-Puffer tut das
ii gleiche für den Weiß-Schwarz-Übergang. In Fällen, in denen zwei Schriftzeichen einen Übergang am gleichen
ν' Element haben, wird das nächsthöhere Adressenelement auf Eins für den »EIN«-Übergang und das nächstnied-%
rigere Adressenelemer·. auf Eins für den »AUS«-Übergang gesetzt. Zur Erzeugung des Ausgangs-Videosignals
.\
werden die aufeinanderfolgenden Einsen im Puffer demoduliert, wobei die aus dem »EIN«-Puffer stammenden
■ 'ι 45 einen Aufwärts-Abwärts-Zählerstand vermindern und die aus dem »AUS«-Puffer stammenden den Zählerstand
I; vergrößern. Wird der Zähler auf einen negative Zahl vermindert, dann ist das Video-Ausgangsniveau (niedrig
5 relativ zur PTU) so, daß es den Laserstrahl einschaltet.
ί Für die Umkehrung der üblichen Schwarz-auf-Weiß-Ausgabe wird ein »Umkehrvideo«-Puffer (RV-Puffer)
■;3 von gleicher Größe wie die EIN/AUS-Puffer verwendet. Ein Eins-Bit im RV-Puffer kehrt die Polarität des Aus-"■: 50 gabevideosignals für dieses Element und alle folgenden Elemente bis zum nächsten Eins-Bit im RV-Puffer um.
gj Ein Schalter, mit »Global RV« bezeichnet, macht die Umkehrung der Video-Polarität für eine ganze Seite mög-
ü\
lieh.
£j Zur Erleichterung eines raschen Durchsatzes werden die Ausgaberasterzeilenpuffer dupliziert, so daß Einle-[j? sen (Laden) und Auslesen (Entladen) gleichzeitig durchgeführt werden können. Die Puffer sind entweder in der
|ΐ 55 Betriebsart zum Empfang der eine Zeile darstellenden Eins-Muster oder zur Ausgabe zur Erzeugung des Video's signals vorgesehen. Beide Betriebsarten stellen Lese-Schreib-Operationen im Speicher dar, da im Falle der Aus-
:g gabe-Betriebsart Nullen eingeschrieben werden, die die Einsen ersetzen. Die Puffer können dann durch paral-Jg IeIe Eingänge (ports) vom Konturenumsetzer-Untersystem OCS, die zwei Entladeschritte durchführen, in eine
f Gesamt-Null-Situation (all zero condition) gebracht werden.
1 7.2 Eingabe
ff ' Der festverdrahtete Prozessor empfängt seine Eingabe von drei »I V«-Bytes. Jedes IV-Byte hat 8 Bits. Zwei die-
,i. ser Bytes sind »Datenbytes« (D ATA HIGH, DATA LOW), das dritte ist ein »Steuerbyte«, das dem festverdrahte-
fö 65 ten Prozessor HWP anzeigt, welche Funktion als nächste auszugühren ist. Das Format des Steuerbytes ist in F i g.
'§
19A dargestellt.
,Il seizer-Untcrsystem OCS, daß der festverdrahtete Prozessor HWP eine Funktion ausführt, dann läßt es das oder
38
die Datenbyte(s) mit allen erforderlichen Daten und setzt dann das Steuerbyte mit der entsprechenden Steuerung,
was das Austauschbit einschließt. Akzeptiert der testverdrahtete Prozessor HWP die geforderte Funktion,
setzt er das Austauschbit auf Null zurück.
Die Steuerinformation ist eine von drei Grundarten:
Die Steuerinformation ist eine von drei Grundarten:
(a) Ladevariable
(b) Lösung und
(c) Ausgabe
Die Daten-Ladevariablen sind in Tabelle 9 aufgeführt. Die in Tabelle 10 aufgeführten Ausgabesteuerungen
stehen außer für das RVX (Steuerung 88), das einen Umkehrvideo-Begrenzungsspeicher steuert, mit der Lichtsetzeinheit
PTU in Verbindung.
Die Lösung-Steuerung (87) wird mit der dydx-Dateneingabe geduplext und ist die Steuerung, die vom HWP
die Lösung der Gleichung verlangt. Vor der Lösung muß das Daten-IV-Byte eingegeben werden.
25
30
35
40
45
50
7.3 Ein/Aus-Lösung
Die zu lösende Cleichung lautet:
Die zu lösende Cleichung lautet:
55
XREG = XPOS + [± Xn ± A X ± SLC] SCALE
wobei AX = (Ys - Yn) (^- + 16K).
dy
dy
Das Vorzeichen des Ergebnisses von A χ hängt vom Ergebnis der Subtraktion (Ys - Yn) ab und von der Richtung
der Kurve (es wird unter Steuerung 84 Bit 0 Data Low eingegeben). Die in dieser Gleichung verwendeten
Parameter werden durch den festverdrahteten Prozessor HWP wie folgt verarbeitet:
XREG Dieses Ergebnis ist die zu setzende Adresse des Bits am Ein- oder Aus-Puffer. Der Puffer (ein oder aus)
wird in Abhängigkeit von Bit 1 Data Low unter der Steuerung 84 gewählt (ist dieses B-Bit ein, so muB
der Puffer gewählt werden).
XPOS Dieser Wert wird unter Steuerung 82 eingegeben und ist 14 Bits.
39
Tabelle | 9 | α Variabel Relarirn | 10 | RVX SPEICHER | 11 | K dx/dy |
Datenladefunktionen | SCALE | Ausgabesteuerungen | LADUNG NEUE SEITE | wie geliefert wie geliefert | ||
Steuerun | XPOS | Steuerung Ausgabe | SEITEN-ENDE | 1 wie geliefert | ||
81 | Yn, K | 88 | AUSGABE-RASTER | |||
82 | Xn, VORZEICHEN, RICHTUNG, | 90 | ||||
83 | FLATTER, EIN/AUS, EXTRAPOLIEREN | AO | ||||
84 | SCHRÄGSTELLUNG | CO | ||||
Ys | Tabelle | |||||
85 | dydx | Flauer | ||||
86 | 0 | |||||
87 | 1 | |||||
Tabelle |
- ist Der Wert wird als Zweiet-Komplement ausgedrückt, wenn das Vorzeichen negativ ist
Ys Diese Variable wird unter Steuerung 86 eingegeben. Beim Dezimal werden nur die Bits S bis 2 in Data
eingegeben wird. Anmerkung: (Ys - Yn) ergibt immer eine Zahl
> -1 und < 15 (siehe Beschreibungen fur dydx und K).
dydx Diese Variable wird unter Steuerung 87 eingegeben. Dieser Wert wird immer wie geliefert verwendet,
wenn (Ys — Yn) positiv ist Sind die Ergebnisse der Subtraktion negativ, dann wird dydx verwendet
ίο oder durch dx/dy von 16 entsprechend dem Flatterbit-Status ersetzt Siehe Tabelle 11.
SLC Die Schrägstellungs-Konstante wird unter Steuerung 85 eingegeben. Nur die 4 MSB von Data Low
werden benötigt Das Vorzeichen in Bit 7 von Data High definiert ±. Der Wert wird also ein Zweier-Komplement definiert, wenn das Vorzeichen negativ ist
nicht erforderlich. Die Maßstabskonstante ist gleich der Setzbreite geteilt durch 43,2.
E Bit 7 von Data High löscht unter Steuerung 84 die Lösungsanforderungen, wenn das Ergebnis der Sub-
traktion (Ys - Yn) negativ ist. (Ε-Bit ein löscht).
20
F i g. 20λ stellt ein funktionelles Blockschaltbild des Ein/Aus-Lösungsabschnitts des festverdrahteten Prozessors HWP dar.
7.4 Umkehrvideo-Eingabe
Umkehrvideobegrenzungen werden über die XPOS-Eingabe eingegeben. Der festverdrahtete Prozessor HWP
akzeptiert eine XPOS-Eingabe unter Steuerung 82. Ist dieser Wert ein RVX-Punkt, dann wird die Steuerung 88
eingegeben, damit der HWP den XPOS-Wert im RV-PufTer speichert (siehe Abschnitt 7.5.2).
7.5 Rasterzeilen-DatenspeicherpufTer
Der festverdrahtete Prozessor HWP enthält sechs Datensp-iicherregister zur Speicherung der Daten, die den
Laserrecorder steuern. Während die Daten in drei dieser Register an den Laserrecorder ausgegeben werden,
damit eine Rasterzeile gebildet wird, speichern die anderen drei das Ergebnis der Berechnung der Schriftzeichenkoniur.
eingeschaltet werden muß (EIN-PUFFER), an denen er ausgeschaltet werden muß (AUS-PUFFER) und an
denen die normalen Ein-Aus-Bedingungen umgekehrt werden müssen (RV-Puffer). Jeder Puffer weist ein Bit
auf, das für jedes Element der horizontalen Auflösung im Raster vorgesehen ist und hat daher eine Mindestlänge
von 7 954 Bits.
Fig. 2OB ist ein funktionelles Blockschaltbild des Abschnitts des HWP mit den Rasterlinien-Datenspeicherpuffem.
7.5.1 EIN/AUS-PufTereingabe
Die Ausgabe des XREG-Addierwerks enthält die Adresse des Bits im Ein- oder Aus-Puffer, das eingeschaltet
werden muß, um die Ein- oder Au,"=-Funktion zu speichern. Der Zustand des Grenzbits (B) bestimmt, ob der Ein-
oder der Aus-Puffer geladen werden muß.
Die Beladung des Puffers muß ergeben, ob das adressierte Bit bereits aus einer früheren Lösung eingegeben
war. Ist das adressierte Bit eine Null, dann kann ein Lese-Modifizier-Schreib-Zyklus am Randomspeicher RAM
durchgeführt werden. Ist das adressierte Bit bereits eine Eins, dann muß der Inhalt des XREG heraufgesetzt
(»der herabgesetzt, wenn das Aus-Puffer beladen wird) und eine weitere Ladung versucht werden. Dies wird
wiederholt, bis ein gültiger Lese-Modifizier-Schreib-Zyklus durchgeführt ist. Dieser Vorgang gewährleistet, daß
wenigstens ein Bit für jede Eingabeanforderung eingeschaltet wird.
7.5.2 Umkehrvideo-Puffereingabe
um die umgekehrte Videofunktion zu speichern. Für jede RV-Eingabe wird ein Lese-Modifizier-Schreib-Zyklus
am Randomspeicher RAM durchgeführt. Dies kehrt das Bit um, ob der laufende Status eine Null oder eine eins
7.5.3 PufTerausgabe
Der Inhalt des Ein- und des Aus-Speichers wird durch einen Aufwärts-Abwärts-Zähler mit einem Minimalben:ich von ±15 getaktet. Bits im Ein-Puffer, die Eins sind, setzen den Zähler herab, während Eins-Bits im Aus-Puffer den Zähler heraufsetzen. Eine Demodulationsschaltung mit negativer Zählung steuert die Ausgabe an
den Laserrecorder, wobei der Laserstrahl eingeschaltet wird, sobald die Zählung weniger als Null ist. (Sind die
Bits von Ein- und Aus-Puffer bei irgendeiner Adresse identisch, dann verändert sich die Zählung nicht). Der RV-Puffer
wird mit der gleichen Geschwindigkeit getaktet und kehrt die normale Ausgabe vom Null-Detektor um.
Nach dem Ausgabezyklus werden alle Puffer auf Null zurückgestellt.
Das Takten wird durch das Signal »Taktablesung« von der PTU gesteuert. Auf der HWP-Karte (Platte) ist ein
Kippschalter vorgesehen, damit die Bedienungsperson das Kommando Global Reverse Video, d. h. Schwarz-Weiß-Umkehr
für die gesamte Seite, geben kann.
7.6 Die HWP-Straktur
Zunächst wird der festverdrahtete Prozessor HWP unter Verwendung eines vereinfachten Blockschaltbildes
beschrieben. Anschließend wird die Gesamt-Zeiteinteilung gegeben, gefolgt von einer detaillierten Darlegung
des logischen Konzepts.
7.6.1 Grundabschnitte
Fig. 21 zeigt die Grundabschnitte des festverdrahteten Prozessors HWP. Daten- und Steuerwörter »rrrien
unter der Steuerung eines »Austauschsignals« vom 8X300 im Konturenumsetzer-Untersystem OCS in einen
Puffer- und Steuerabschnitt 100 eingegeben. Eines der Steuerwörter beginnt eine Adressenrechnung, die im
nächsten Abschnitt 102 durchgeführt wird, und dieselbe Steuerung beginnt eine Eingabe in diesen durch den
letzten Abschnitt 104 durchgeführten Adressenplatz. Jeder Abschnitt hat seine eigene Steuer- und Ablauflogik.
Die Steuerungs- und PTU-Wechselwirkungslogik 16 erzeugt synchron mit einem Ablesetakt von der PTU das
Ausgabe-Videosignal. Dieser Abschnitt verwendet ebenfalls Synchronisierungssignale von der PTiJ zur Erzeugung
von Kennzeichen, die anzeigen, daß die Datenpuffer aufgefüllt sind. Die Verhältnisse dieser Kennzeichen
werden benutzt, um die Dateneingabe (durch das Austauschsignal (handshake signal)) zu steuern und die 2s
Datenausgabe zu unterbrechen, wenn die Menge und die Dauer der Eingangsdaten derartig ist, daß die Ausgabe
nicht mehr aufrecht erhalten werden kann. Dieser Abschnitt erhält auch Bedingungssignale wie »ladebereit«
und »abtastbereit«, um Ausgaben wie »Ladekommando«, »Abtastung möglich«, »Schritt möglich«, zu erzeugen.
30 7.6.2 Daten- und Steuerpuffer und -speicherung
FIg. 22 zeigt den ersten Abschnitt 100 in Blockform. Daten- und Steuerbytes kommen über drei 8-Bit-Schienen
vom 8X300. Data High und Data Low werden gepuffert, um einen Satz von Verriegelungen anzutreiben. Die
für die Daten verwendeten Abkürzungen werden im nächsten Abschnitt dargelegt. Die in Fig. 22 verwendete
Notation zeigt den Bitbereich und das Bitgewicht für jedes übertragene Datenteil an. Das Steuerbyte wird, ausgenommen
für das einzelne, Austauschbit (HS) (handshake bit HS) genannte Bit, direkt in einer 8-Bit-Verriegelung
107 gespeichert. Wird das HS-Bit auf eins gesetzt, dann wird ein Ladetaktpuls erzeugt und der Steuerbyteverriegelung
zugeführt. Die Ausgabe dieser Verriegelung liefert ein Drei-Bit-Worl und einen Satz von vier einzelnen
Zeilensteuersignalen. Das 3-Bit-Wort wird dekodiert und zur Erzeugung von 4 Taktimpulsen für
gewählte Datenverriegelungen verwendet.
Die Steuerleitung 87 löst eine Rechnung und eine EIN/AUS-Pufferladung aus. Die Steuerleitung 88 löst eine
RV-Pufferladung aus.
Die Steuerleitung 90 ermöglicht die Erzeugung eines Ladekommandos an die PTU, wenn die »Ladebereit«-
Bedingung gegeben ist. Das AO-Steuersignal setzt die »Abtastbereit«- und »Abtast- und Synchr.bereitw-Ausgabebedingungen
zurück. Das Steuersignal CO zeigt an, daß ein Datenpuffer beladen und zur Entladung bereit ist.
7.6.3 Berechnung der Ausgabedaten-PufTeradresse
Der zweite Abschnitt 102 errechnet die Ausgabedaten-(Rasterzeile)-Pufferadresse, die im wesentlichen durch
folgende Formel gegeben ist:
Xr=Xp+ [Xn + AX + SLC] SC,
wobei
wobei
Die hier benutzte Notation ist geringfügig anders als die zuvor verwendete: go
Xr = XREG
Xp = XPOS
SC = SCALE.
Xp = XPOS
SC = SCALE.
Die Vorzeichen dieser Mengen und die Ergebnisse können unter der Annahme verstanden werden, daß Xn,
A X, SCL und SC Zweierkomplcmentzahlen sind. Außer A X sind alle vom Konturenumsetzer-Untersystem
OSC als Zweierkomplementzahlen vorgesehen. Die Menge Δ X wird in diesem Abschnitt errechnet, wo dy/dx
durch ein Paar Festwertspeicher ROM 108 und 110 erzeugt wird, wobei der zweite das Zweierkomplement, wie
in Fig. 23 gezeigt, vorsieht Der K-Wert ist als eine positive Zahl vorgesehen, und wenn die Menge
μ—l-16 Kj eine negative Zahl ist, formuliert die Logik eine vollständige 16-Bit-Zweierkomplementzahl. Das
Vorzeichen dieser Menge ist unter der Steuerung des L·Bits (siehe Fig. 22).
Für die Xu-Berechnung gibt es andere Steuermodülkationen.
1st das Vorzeichen von Y, - Yn negativ und das Flatterbit F (F i g. 22) eins, dann muß Kgleich eins sein. Ist Y1 -Yn negativ und das Ε-Bit eins, dann wird die Xu-Berechnung abgebrochen. Das letztgenannte Ereignis wird als
Teil der Steuerlogik für diesen Abschnitt beschrieben.
ίο Man beachte, daß die Menge A X und der zweite Ausdruck von XR einer Multiplikation bedürfen. Diese Multiplikation geschieht durch eine zeitlich verzahnte 16-Bit-MultipIiziereinrichtung 112.
Der Betrieb des Abschnitts 102 wird nun unter Bezugnahme auf Fig. 23 beschrieben. Die Menge (Y, - Yn)
wird durch ein Addierwerk 114 auf den Bits (0,3) vorgesehen (diese Notation bedeutet Bits 0,1,1 und 3) weil Yn
immer als eine negative Zweierkomplementzahl geliefert wird. Da Yn keine Bruchzahlen aufweist, wandern der
Addierwerk-Ausgang und die Bits (-4, -1) von Y1 zu Drcifach-Puffern 116 und 118 und bilden den Multiplikator
für die erste Multiplikation. Das Vorzeichen für die Errechnung von (Y1 - Yn) wird durch das Addierwerk
bestimmt und ist für ein negatives Ergebnis Null. Man beachte, daß die Eingangsdaten nur Bits (-4,3) vorsehen,
die übrigen Bits müssen durch das Vorzeichenbit vorgesehen werden. Das Vorhandensein von Bits (-6, -5) wird
klar, wenn die Multipliziereinrichtung beschrieben wird.
Die Eingaben dy, dx geben 8-Bit-Adressen für das 256-Wort durch 8-Bit-ROMs 108 und 110, die die Verhältnisse dx/dy und dx/dy erzeugen (der Doppeisirich bedeutet Zweierkomplement). Die Festwertspeicher ROM
haben Dreifach-Ausgänge, die zusammen verdrahtet werden und durch das L-Bit ausgewählt werden.
J5 Die Schaltungen nach den zwei Festwertspeichern ROM 108 und 110 erzeugen die Menge (-Jp + 16 κ) in
Form des Zweierkomplements. Die K-Variable geht zu einem Multiplexer 120, der unter der Steuerung des Flatterbits F und dem Vorzeichen von (X - Yn), S A Y steht. Die andere Eingabe des Multiplexers ist die Xonstante
eins, die gewählt wird, wenn (X - Yn) negativ und F eins ist. Für eine nicht-negative Bedingung (L = 0), wird der
,„ -^- - Festwertspeicher ROM 108gewählt und der K-Wert wird dem Wert Null addiert und bildet die Gewichts-
Positionen (4, T) der Menge. Diese Menge geht zu einem Dreifachpufler 122 und ist der Multiplikator für die
erste Multiplikation. =====
Ist das L-Bit negativ, so wird dt/dy/dx-Festwertspeicher ROM 110 gewählt. Die Ausgabe des Multiplexers
120 geht an eine Exklusives ODER-Schaltung 124. Für L = 0 kehrt ihre Eingabe in die Exklusives-ODER-Schal-
tung den K-Wert um. Ist dy/dV ni& ι Null, dann wird die EX-ODER-Ausgabedurch ein vollständiges Addierwerk 126, das die Zweierkomplementzahl bildet, dem Nullwert addiert. Ist dy/dx gleich Null, dann muß der K-Wert ein Zweierkomplement sein (nicht nur umgekehrt). Die Null-Bedingung wird durch einen Inverter 128 und
eine 8-Eingaben-WEDER-NOCH-Schaltung 130 demoduliert und erzeugt einen Übertrag für das Addierwerk
126 zur Erzeugung des Zweierkomplements von K.
Die Multipliziereinrichtung 112 besteht aus zwei 8-Bit-Multiplizierchips und drei 8-Bii-Serieii-Schieberegister-Chips, die ein Schieberegister 132 bilden. Für jeden Schiebetakt wird ein Produkt aus 1 Bit mal 16 Bit gebildet. Zweiunddreißig Verschiebungen erzeugen ein 32-Bit-Produkt (das im Schieberegister untergebracht ist); da
das vollständige Produkt jedoch nicht erforderlich ist, werden nur 24 Bits zurückgehalten. Da die Operationen so
durchgeführt werden, daß das niedrigstwertige Bit zuerst behandelt wird, sind die untersten 8-Bit-Positionen
verloren. Der Multiplikand (\ - Y1) und der Multiplikator (^+ 16K^ sind so eingegeben, daß der Binärpunkt
\dy /
zwischen den Gewichtspositionen 5 und 6 der Multipliziereinrichtung des Schieberegisters liegt. Das erste Produkt behält dann die Gewichte (-4, 11) und wird in den zwei niederwertigeren Schieberegisterchips untergebracht. Die Positionen (12, 19) werden nicht verwendet. Das erste Produkt wird durch ein Addierwerk 134
geUNDet, und das Ergebnis wird durch ein Addierwerk 136 dem SLC zugeführt. Dieses Ergebnis wandert zu
einem Dreifach-Pufler 138zur Schaffung des Multiplikanden für das zweite Produkt. Man beachte, daß die Dreifach-Puffer und die Dreifach-Festwertspeicher ROM Ausgangssteuerungen haben, die durch die entsprechende
Polarität eines M-Signals geliefert werden.
Das zweite Produkt ergibt:
55
einen Ausgang aufweist, der durch das Umkehrvideo-Steuersignal 88 gesteuert wird, und einen Puls SP, der in
der Aufladezeit der Multipliziereinrichtung auftritt. Ist das Umkehrvideo-Steuersignal 88 vorhanden, dann wird
die SC-Verriegelung im Zustand einer offenen Schaltung gehalten, und das Produkt P des Schieberegisters wird
auf Null gedruckt.
Für das zweite Produkt ist der Binärpunkt für den Multiplikand zwischen den Gewichtspositionen 3 und 4, und
der Multiplikator-Binärpunkt liegt zwischen den Gewichtspositionen 11 und 12. Die Produktgewichte sind (-8,
15), jedoch werden nur die Ganzzahlwerte benötigt, die in den oberen zwei (MSB) Stellungen des Schieberegisters untergebracht sind.
Das Produkt Pl wird durch ein vollständiges Addierwerk 140 zu Xp addiert, so daß XR, die Datenregisteradresse, gebildet wird. Man beachte, daß bei vorhandener RV-Steuerung 88 Pl Null ist und XP die Daten-
registeradresse wird.
7.6.4 Ausgabedatenpuffer und Videologik
F i g. 24 stellt ein Blockschaltbild des dritten Abschnitts 104 dar. Die Registeradresse wandert zu einem Multiplexer
142, der durch das höchstwertige Bit von X, das Vorzeichenbit, gesteuert wird. Die Registeradresse, wie
berechnet, ist üblicherweise eine positive Zahl, deren MSB das Gewicht 12 hat, was 8192 Positionen ergibt, was
mehr als die Anzahl von Elementen auf einer Abtastzeile darstellt. Führt die Adressenberechnung zu einer
negativen Zahl, was zu Beginn der Abtastung geschehen kann, dann wird das Vorzeichenbit von Xr(Sxr) verwendet,
den Multiplexer zu schalten und eine eins in die Adresse 32 einzugeben. Ist das Vorzeichenbit nicht
eins, dagegen Bits 13 und 14 eins, so wird die Eingabeoperation abgebrochen.
Die Ausgabe des Multiplexer 142 wird parallel in einen Aufwärts-Abwärts-Zähler eingegeben. Die Zählerausgabe
wandert zu den Multiplexern 146 und 148, welche auswählen, welche der zwei Ausgabedatenpuffer für die
Ladung verwendet werden. Die andere Pufferadresse wird für die Entladung gewählt, sie kommt von einem Zähler
150, der von einem Ausgabetakter in der Lichtsetzeinheit PTU betrieben wird.
Der Adressenmultiplexer 146 oder 148 wird durch das Pufferwarnsignal (BUSE) gewählt. Ist dieses Signal
klein, dann wird Puffer Eins für Beladung und Puffer Zwei für Entladung gewählt Betrachtet man zunächst den
Beladusgsvorgang, so lauten die Steuerungen zu den Speicherchips »Chip Frei« (CE) und »Schreibbereit« WE.
Das Signal CE wird durch eine (nicht gezeigte) Steuerlogik gesteuert, die ein bestimmtes Chip im EIN-, AUS-
oder RV-Puffer unter der Steuerung des Grenzbits (B) zur Auswahl von EIN oder AUS, und des Umkehrvideo-Steuersignals
88 zur Auswahl des RV-Puffers wählt. Steht am gewählten EIN- oder AUS-Puffer- i ?atz eine Null,
so tritt das WE-Signal auf und schreibt Eins in diesen Platz. Findet man eine Eins auf dem EIN-Piffer-Platz,
dann wird das WE-Signal verzögert, bis die Adresse durch einen Takt auf den Aufwärts-Abwärts-Eingabeadressen-Zähler
152 heraufgesetzt wird. Man beachte, daß die Richtung der Zählung durch das B-Bit gesteuert
wird.
Ist eine Eins im AUS-Puffer, dann wird die Adresse vermindert. W;rd der RV-Puffer gewählt und eine Eins vorgefunden,
so wird eine Null geschrieben und umgekehrt. Die Eingabe für den RV-Puffer geschieht über eine
Verriegelung 154 und einen Multiplexer 156.
Für die Entladungssequenz werden alle drei Puffer durch die Signale CE und WE freigegeben. Für den EIN-
und den AUS-Puffer wird über das BUSE-Signalniveau Null eingegeben, und für die RV-Puffereingabe wird
durch den Multiplexer 156 ein Grundniveau gewählt. Das Ausgabeniveau eines jeden Puffers wird in der Verriegelung
154 gespeichert. EXCLUSIVE-ODER-Schaltungen 158 stellen fest, ob die Bits im EIN- und AUS-Puffer
unterschiedlich sind, und wenn dies der Fall ist, wird der Ausgabe-Aufwärts-Abwärts-Zähler 152 durch einen
Multiplexer 160, der die Bedingung aus dem entsprechenden Puffer wählt, freigegeben. Ist im AUS-Puffer eine
Eins vorhanden, so wandert sie zur Aufwärts-Abwärts-Steuerung des Zählers 152 und verursacht eine Aufwärts-Zählung.
Befindet sich eine Eins im RV-Puffer, dann verursacht das, daß ein JK-Flip-Flop 162 den Zustand
ändert, und die Flip-Flop-Ausgabe wird mit dem MSB des Aufwärts-Abwärts-Zählers als EXCLUSIVE-ODER-Schaltung
behandelt. Die Ausgabe dieser EXCLUSIVE-ODER-Schaltung 164 wandert zu einem D-Flip-Flop
166, das durch einen Lesetaktimpuls von der Lichtsetzeinheit PTU getaktet wird. Die Ausgabe des D-Flip-Flops
166 wird m'.t einem »Global-RV«-Signal als EXCLUSIVE-ODER-Schaltung behandelt, und diese Ausgabe wird
gepuffert, so daß das Video-Ausgabesignal den Laserstrahl ein- und ausschaltet.
8. Rechnerprogramm
8.1 Allgemeines
Der allgemeine Aufbau, die detaillierte Struktur, wie auch der Betrieb des Ausgabedatenverarbeitungssystems
(OCS) sind beschrieben worden. Es wird angenommen, daß ein durchschnittlicher Programmierer die
erforderlichen Programme für die Mikroprozessoren Z80A und 8X300 schreiben kann.
Das Wesen der Erfindung besteht also darin, daß ein digitales Setzgerät zu;n Abbilden von Schriftzeichen
eines vorgegebenen Schriftzeichensatzes (Alphabets) in grafischer Qualität ein elektronisches Datenverarbeitungssystem
umfaßt, das erste digitale Daten empfängt, die Identität, Form, Größe und Lage des zu setzenden
Schriftzeichens definieren, das zweite digitale Daten empfängt, die die Kontur eines jeden zu setzenden Schriftzeichens
hinsichtlich eines normalisierten Kodiersatzes erster und zweiter Koordinaten definieren, uid dritte
digitale Daten erzeugt, die die eine Raster-(Abtast-)linie schneidenden Schriftzeichenumgrenzungen definieren.
Diese dritten digitalen Daten werden für mindestens einen Teil der Rasterlinien, die sich über die Breite
mehrerer Schriftzeichen erstrecken, vorübergehend in einem Rasterlinien-Speicherpuffer gespeichert. Ein mit
dem Linienspeicherpuffer verbundenes Schriftzeichen-Abbildungsgerät ist z^.r Abbildung aufeinanderfolgender
Rasterlinien auf einem Druckmedium vorgesehen. Zur Bewegung des Druckmediums in einer Richtung
quer zur Raster-(Abtast)linie sind ferner Antriebsmittel vorgesehen.
Hierzu 23 Blatt Zeichnungen
Claims (1)
- Patentansprüche:1. Gerät zur Erzeugung von Schriftzeichen, mit Eingabemitteln zur Bereitstellung erster digitaler Daten, die zumindest Identität und Lage der Schriftzeichen definieren, und mit Schriftzeichensatz (Alpbabet)-s Speichermitteln zur Speicherung und Erzeugung zweiter schriftzeichenspezifischer Daten, dadurch gekennzeichnet, daß die Eingabemittel (30) zur Bereitstellung erster digitaler Daten, die auch die Größe der Schriftzeichen definieren, ausgebildet sind, daß die Schriftzeichensatz-Speichermittel (32) zur Speicherung und Erzeugung zweiter digitaler Daten, die die Kontur jedes Schriftzeichens hinsichtlich eines normalisierten Kodiersatzes erster und zweiter Koordinaten definieren, ausgebildet sind, und daß mit den Eingabe-10 mitteln (30) und den Schriftzeichensatz-Speichermitteln (32) Datenverarbeitungsmittel (34) zum Empiang der Daten von den Eingabemitteln (30) und den Schriftzeichensatz-Speichermitteln (32) zur Bestimmung der Lage der Schnittstellen der Umrißlinie der Schriftzeichen rrlit einer Rasterlinie verbunden sind.2. Gerät nach Anspruch 1, dadurch gekennzeichnet, daß mit den Datenverarbeitungsmitteln (32) ausgangsseitig Rasterlinien-Speichermittel (EIN-Puffer, AUS-Puffer in F i g. 20 B) mit einer Vielzahl von Spei-H 15 cherplätzen zur Speicherung dritter digitaler Daten, welche die Schnittstellen der Umrißlinien von mehrerenP Schriftzeichen mit jeweils einer Rasterlinie nach Maßgabe der Größe der Schriftzeichen angeben, fur min-H destens einen Teil der sich entlang der Breite mindestens eines Schriftzeichens ausdehnenden RasterlinienIf vorgesehen sind, wobei jedes der Speicherelemente einem korrespondierenden Rasterpunkt entlang derIl Rasterlinie entspricht.5 20 3. Gerät nach Anspruch 2, dadurch gekennzeichnet, daß die Raster-Linienspcichermittel (im Prozessor 92 g in Fig. 3)« jndestens zwei Linienspeicher (AUS-Puffer, EIN-Puffer in Fig. 20 B) enthalten, von denen jeder SI aus einer Vieizah! von Speicherelementen gebildet ist, daß jedes der Speicherelemente einem korrespondiefi renden einzigen Rasterpunkt entlang der Rasterlinie entspricht, daß die Speicherelemente in einem ersten P der Linienspeicher (EIN-Puffer) die Lagen auf der Abtastlinie darstellen, bei denen der Abtaststrahl eingeil 25 schaltet wird, und daß die Inhalte der Speicherelemente im zweiten Linienspeicher (AUS-Puffer) die Lagen ^ auf der Abtastlinie darstellen, bei denen der Abtaststrahl abgeschaltet ist.fe 4. Gerät nach Anspruch 3, dadurch gekennzeichnet, daß der Linienspeicher weiterhin einen dritten§ Linienspeicher (Umkehrvideopuffer in F i g. 20 B) mit einer Vielzahl von Speicherelementen umfaßt, deren§f Zustand die Lagen auf der Abtastlinie darstellt, bei denen der Ein- und Ausschaltzustand des Strahles umge-I* 30 kehrt wird.5. Gerät nach Anspruch 4, dadurch gekennzeichnet, daß der normalisierte Kodiersatz die Konturen der Schriftzeichen definiert, daß die zweiten Koordinatenabstände in Datenauflösungseinheiten definiert sind, daß das Datenverarbeitungssystem (Mikroprozessor 92 in Fig. 3) den Rasterschnitt in der ersten Koordinatenrichtung entsprechend jeöer folgenden Rasterlinie in der zweiten Koordinatenrichtung zur Skalierung35 (Maßstabsänderung) der Schriftzeichen auf eine vorbestimmte Größe aus dem normalisierten (normierten) Kodiersatz auf folgenden Raste;linien definiert, daß dabei jede Datenauflösungseinheit des normalisierten Kodiersatzes mit jeder Rasterlinie durch die folgende Beziehung verbunden ist:Ys = (Ysl-Yhi) K/Punktgröße; •»owobei Yhi ein Nulldatenniveau in Rastercinheiten, YsI das Rasterlinienniveau, K eine mit der SchriftzeichengföBe in Punkieinhciien zusammenhängende Konstante und Ys das entsprechende Niveau der Daienauflösungseinheit ist.6. Gerät nach Anspruch 5, dadurch gekennzeichnet, daß das Nulldatenniveau in Rastereinheiten dem obe-45 ren Rand des normalisierten Gevierts eines kodierten Schriftzeichens entspricht.7. Gerät nach Anspruch 5, dadurch gekennzeichnet, daß das Nulldatenniveau in Rastereinheiten einem Ausgangspunkt für jedes kodierte Schriftzeichen entspricht, und daß die kodierten Daten digitale Zahlen«gjj beinhalten, die die erste und die zweite Koordinate des Ausgangspunkts der Zeichenkontur definieren, sowiefi digitale Zahlen, die eine Vielzahl geradliniger aufeinanderfolgend entlang der Zeichenkontur vom Aus-i 50 gangspunkt sich erstreckender Zeilenvektoren definieren, daß jeder Vektor eine Digitalzahl aufweist, die denP ersten Koordinatenabstand darstellt, und eine zweite Digitalzahl, die den zweiten Koordinatenabstand vonte einem Vektorenende zum anderen darstellt.I; 8. Gerät nach Anspruch 5, dadurch gekennzeichnet, daß der Schnitt (Schnittstelle) in der ersten Koordina-6 tenrichtung durch den Ausdruck; XREG = XPOS + [± XN ± (Ys - YN (dx/dy)] (k)]gegeben, ist, wobei XREG der Schnitt in der ersten Koordinatenrichtung in Rasterauflösungseinheiten, N) XPOS der Abstand in der ersten Koordinatenrichtung von einem Nulldatenniveau in Rasterauflösungsein-; heilen, XN und YN die Ausgangslagen eines Vektors VN, dessen Neigung dy/dx beträgt, in Datenauflösungseinheiten ist und K der Skalenfaktor (Maßstabsfakior) ist.9. Gerät nach Anspruch 3, dadurch gekennzeichnet, daß die Speicherelemente der Linienspeicher (ElN-PufTer, AUS-Puffer in Fig. 20 B) zur Speicherung einer einzelnen, einem Rasteipunkt auf der Rasterlinie65 entsprechenden Binärzahl eingerichtet sind.10. Gerät nach Anspruch 9, dadurch gekennzeichnet, daß ein erster Linienpuffer (AUS-Puffer) der beiden Linienpuffer (AUS-Puffer, EIN-Puffer in F i g. 20 B) zur Speicherung von Binärzahlen eingerichtet ist, die die Lagen auf der Abtastlinie bestimmen, bei denen der Abtaststrahl abgeschaltet wird.11. Gerät nach Anspruch 3, dadurch gekennzeichnet, daß die Linienspeichermittel (in Prozessor 92 in Fig. 3) einen dritten Linienpuffer (Umkehrvideopuffer in Fig. 20 B) enthalten, der zur Aufnahme von Binärzahlen eingerichtet ist, die die Lagen auf der Abtastlinie darstellen, bei denen der Ein- und Ausschaltzustand des Strahls umgekehrt wird.12. Gerät nach Anspruch 1, dadurch gekennzeichnet, daß die Eingangsmittel (30) zum Erzeugen von ersten digitalen Daten ausgebildet sind, die Seitenvariierkommandos für die zu setzenden Schriftzeichen enthalten.13. Gerät nach Anspruch 9, dadurch gekennzeichnet, daß die Schriftzeichensatz-Speichermittel (32) zur Speicherung und Erzeugung vom zweiten digitalen Daten mit folgenden Informationen eingerichtet sind:(1) die erste und zweite Koordinate des Ausgangspunkts einer Zeichenkontur definierende digitale Zahlen und(2) eine Vielzahl geradliniger entlang einer Zeichenkontur vom Ausgangspunkt sich erstreckender gerader Linienvektoren, die sich aufeinanderfolgend entlang eines Buchstabenumrisses erstrecken, wobei jeder Vektor eine den ersten Koordinatenabstand darstellende Digitalzahl und eine den zweiten Koordinatenabstand - beide Abstände von einem Ende des Vektors zum anderen Ende definiert - darstellende zweite Digitalzahl umfaßt.14. Gerät nach Anspruch 13, dadurch gekennzeichnet, daß die erste und die zweite Koordinate eines Ausgangspunkts definierenden Digitalzahlen vor den die die vom Ausgangspunkt sich erstreckenden Vektoren definierenden Digitalzahlen stehen.15. Gerät nach Ansprach 1 und 2, dadurch gekennzeichnet, daß die Datenverarbeitunssmiue! (34 in Fig. 1) umfassen:(1) einen Speicher (84, 86) mit willkürlichem Zugriff (random access) zur Speicherung vierter digitaler Daten, welche Linienabschnitte der Schriftzeichen entlang den Rasterlinien beinhalten,(2) Datenverwaltungsmittel, die einen ersten Mikroprozessor (78) zum Empfang und zur Speicherung der ersten und zweiten digitalen Daten und Erzeugung und Speicherung der vierten digitalen Daten in dem Speicher (84, 86) mit willkürlichem Zugriff umfassen, und(3) Konturenumsetzermittel, die einer, zweiten Mikroprozessor (92) zum Empfang der vierten digitalen Daten aus dem Speicher (84,86) mit willkürlichem Zugriff und zur Erreichung der die eine Rasterlinie schneidenden Schriftzeichenumgrenzungen definierenden dritten digitalen Daten enthalten (Fig. 3).16. Gerät nach Anspruch 15, dadurch gekennzeichnet, daß die Konturenumsetzmittel (Mikroprozessor 92in Fig. 3; Fig. 20 A, B) zur Errechnung der dritten digitalen Daten nach folgender Beziehung eingerichtet « sind:Xn = Xp + X^ + 4X
wobeiXR = der X-Äbsiand von einem Rand der zu setzenden jeiie zu dem Funkt auf der Zeichenkontur ist, wodiese durch die laufende Rastcrlinie geschnitten ist,
Xp = der X-Abstand von dem einen Rand der Seite zum linken Rand des der bestimmten Zeichenkontur zugeordneten Schriftzeichens ist,Xn = die X-Lage des Ausgangspunkts der bestimmten Zeichenkontur hinsichtlich des linken Rands deszugehörigen Schriftzeidiens ist und
Δ X = der X-Abstand des Ausgangspunkts der Kontur zum Schnittpunkt der bestimmten Zeichenkontur mit der durch sie laufenden Rasterlinie ist.17. Gerät nach Anspruch 16, dadurch gekennzeichnet, daß die durch die Rasterlinien geschnittenen Schriftzeichen skalierbar (in der Größe veränderbar sind und daß die Konturenumsetzermittel (Mikroprozessor 92 in F i g. 3; F i g. 20 A, B) zur Errechnung der dritten digitalen Daten nach folgender Formel eingerichtet sind:55 XR = Xp + [Xn + Δ X] SCwobei SC ein auf einer gewünschten Setzbreite basierender Maßstabofaktor ist.18. Gerät nach Anspruch 16, dadurch gekennzeichnet, daß die durch die Rasterlinien geschnittenen Schriftzeichen schräg stellbar sind und daß die KonturenumsetzermiUel (Mikroprozessor 92 in Fig. 3; m> Fig. 20 A, B) zur Errechnung der dritten digitalen Daten nach folgender Formel ausgebildet sind:XR = Xp + Xn + Δ X + SLCwobei SLC die Änderung der X-Richtung in der X-Lage des Schnittpunkts der bestimmten Zeichenkontur ist, die dutch die Schrägstellung der Schriftzeichen verursacht wird.19. Gerät nach Anspruch 18, dadurch gekennzeichnet, daß Mittel (Mikroprozessor 92 im Konturenumsetzersystem in Fig. 3) zur Bildung der BeziehungSLC = (A-Y5)(IgB)vorgesehen sind, wobei sA = die Y-Lage der zentralen neutralen Achse, um die die Schrägstellung erzielt wird, Ys = die Y-Lage der laufenden Rasterlinie hinsichtlich eines Rands des entsprechenden Schriftzeichen-Gevierts, und B = der Schrägstellungswinkel ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/950,242 US4231096A (en) | 1978-10-10 | 1978-10-10 | Digital typesetter |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2940897A1 DE2940897A1 (de) | 1980-04-24 |
DE2940897C2 true DE2940897C2 (de) | 1985-01-03 |
Family
ID=25490153
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2940897A Expired DE2940897C2 (de) | 1978-10-10 | 1979-10-09 | Digitales Setzgerät |
Country Status (8)
Country | Link |
---|---|
US (1) | US4231096A (de) |
JP (1) | JPS55105290A (de) |
CA (1) | CA1135867A (de) |
DE (1) | DE2940897C2 (de) |
FR (1) | FR2438543B1 (de) |
GB (1) | GB2033307B (de) |
IT (1) | IT1164725B (de) |
SE (1) | SE444090B (de) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4338673A (en) * | 1978-12-05 | 1982-07-06 | Compugraphic Corporation | Phototypesetting system and method |
US4345245A (en) * | 1979-11-26 | 1982-08-17 | Eltra Corporation | Method and apparatus for arranging segmented character groups in a digital typesetter |
US4333153A (en) * | 1979-11-26 | 1982-06-01 | Eltra Corporation | Scanning and control system for electro optical printer |
GB2074259B (en) * | 1980-04-12 | 1983-08-17 | Automotive Prod Co Ltd | Rotation sensitive drum brake |
US4331955A (en) * | 1980-08-07 | 1982-05-25 | Eltra Corporation | Method and apparatus for smoothing outlines |
US4481602A (en) * | 1981-04-06 | 1984-11-06 | International Business Machines Corporation | Font compression and decompression for character generation |
US4495490A (en) * | 1981-05-29 | 1985-01-22 | Ibm Corporation | Word processor and display |
US4520455A (en) * | 1982-05-10 | 1985-05-28 | Xerox Corporation | Printing system |
US4555763A (en) * | 1982-07-01 | 1985-11-26 | Decision Data Computer Corp. | Method and apparatus for storage and accessing of characters, and electronic printer employing same |
US4591846A (en) * | 1982-09-28 | 1986-05-27 | Burroughs Corp. | Real time cell specification processor |
US4593278A (en) * | 1982-09-28 | 1986-06-03 | Burroughs Corp. | Real time graphic processor |
JPS59101969A (ja) * | 1982-12-01 | 1984-06-12 | Dainippon Screen Mfg Co Ltd | 2値画像パタ−ンのデ−タ処理方法及び装置 |
DE3317842A1 (de) * | 1983-05-17 | 1984-12-06 | Mergenthaler Linotype Gmbh, 6236 Eschborn | Graphisches reproduktions- und seztverfahren von schriftzeichen |
US4679153A (en) * | 1985-04-26 | 1987-07-07 | R. R. Donnelley & Sons Company | Printing systems for typesetter emulation |
US5170467A (en) * | 1985-07-29 | 1992-12-08 | Dai Nippon Insatsu Kabushiki Kaisha | Method of printing leaflets, catalogs or the like |
GB2196769A (en) * | 1986-10-29 | 1988-05-05 | China Computer Corp | Method and apparatus for high resolution character generation |
US4839829A (en) * | 1986-11-05 | 1989-06-13 | Freedman Henry B | Automated printing control system |
JPH0820862B2 (ja) * | 1987-02-27 | 1996-03-04 | キヤノン株式会社 | 文字処理装置 |
US5574842A (en) * | 1988-07-29 | 1996-11-12 | Canon Kabushiki Kaisha | Document processing apparatus and method for generating a character or symbol pattern across a plurality of lines |
US5045869A (en) * | 1988-09-16 | 1991-09-03 | Canon Kabushiki Kaisha | Printing controller for printing at selected resolutions |
AU629210B2 (en) * | 1988-10-26 | 1992-10-01 | Sun Microsystems, Inc. | Method and apparatus for minimizing the visual degradation of digital typefaces |
US5274365A (en) * | 1988-10-26 | 1993-12-28 | Sun Microsystems, Inc. | Method and apparatus for minimizing the visual degradation of digital typefaces-character analysis |
JP2899003B2 (ja) * | 1988-12-19 | 1999-06-02 | キヤノン株式会社 | 文字処理装置及び方法 |
JP3050327B2 (ja) * | 1995-05-04 | 2000-06-12 | ハイデルベルガー ドルツクマシーネン アクチエンゲゼルシヤフト | 露光方法及び装置 |
US6347256B1 (en) | 1998-11-02 | 2002-02-12 | Printcafe System, Inc. | Manufacturing process modeling techniques |
US6279009B1 (en) | 1998-12-04 | 2001-08-21 | Impresse Corporation | Dynamic creation of workflows from deterministic models of real world processes |
US6321133B1 (en) | 1998-12-04 | 2001-11-20 | Impresse Corporation | Method and apparatus for order promising |
US6546364B1 (en) | 1998-12-18 | 2003-04-08 | Impresse Corporation | Method and apparatus for creating adaptive workflows |
US6278901B1 (en) | 1998-12-18 | 2001-08-21 | Impresse Corporation | Methods for creating aggregate plans useful in manufacturing environments |
US7587336B1 (en) | 1999-06-09 | 2009-09-08 | Electronics For Imaging, Inc. | Iterative constraint collection scheme for preparation of custom manufacturing contracts |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3226706A (en) * | 1965-12-28 | Cathode ray tube display and printer controlled by coded mask | ||
US2736770A (en) * | 1952-06-25 | 1956-02-28 | Gen Dynamics Corp | Printer |
US3132206A (en) * | 1960-05-06 | 1964-05-05 | Xerox Corp | High speed printing apparatus |
US3422420A (en) * | 1966-03-23 | 1969-01-14 | Rca Corp | Display systems |
US3389403A (en) * | 1966-09-06 | 1968-06-18 | Dresser Ind | Laser beam recorder with means to compensate for change in angular velocity of swept beam |
US3588870A (en) * | 1966-11-03 | 1971-06-28 | Harris Intertype Corp | Apparatus for providing graphical images on cathode-ray tubes |
US3893079A (en) * | 1967-03-20 | 1975-07-01 | Cognitronics Corp | Character reading apparatus with improved document scanner |
US3448458A (en) * | 1967-06-16 | 1969-06-03 | Ncr Co | Laser recorder with scanning and display systems |
US3593305A (en) * | 1968-08-19 | 1971-07-13 | Harris Intertype Corp | System and method for making up a newspaper page |
US3582905A (en) * | 1969-01-13 | 1971-06-01 | Ibm | Character generation by improved scan, storage, and decoding apparatus |
US3546681A (en) * | 1969-01-30 | 1970-12-08 | Rca Corp | Programmed method for manipulating electronic fonts in electronic photocomposition systems |
US3573849A (en) * | 1969-02-04 | 1971-04-06 | Bell Telephone Labor Inc | Pattern generating apparatus |
US3573847A (en) * | 1969-08-22 | 1971-04-06 | Olivetti General Electric Spa | Character recorder |
US3701999A (en) * | 1970-08-21 | 1972-10-31 | Ncr Co | Computer output laser microform recording system |
US3740743A (en) * | 1971-03-29 | 1973-06-19 | Columbia Broadcasting Sys Inc | Character generating apparatus for television titling |
US3739088A (en) * | 1971-05-20 | 1973-06-12 | Perkin Elmer Corp | Printing plate production method and apparatus |
US3836709A (en) * | 1972-04-12 | 1974-09-17 | Grace W R & Co | Process and apparatus for preparing printing plates using a photocured image |
DE2306185A1 (de) * | 1973-02-08 | 1974-08-15 | Agfa Gevaert Ag | Verfahren und vorrichtung zur kompensation des pyramidenfehlers eines spiegelrades |
US3820123A (en) * | 1973-04-04 | 1974-06-25 | Quantor Corp | Laser microfilm recorder |
GB1442544A (en) * | 1973-05-11 | 1976-07-14 | Rockwell International Corp | Apparatus for use in character generation |
US4029947A (en) * | 1973-05-11 | 1977-06-14 | Rockwell International Corporation | Character generating method and system |
US3946150A (en) * | 1973-12-20 | 1976-03-23 | Xerox Corporation | Optical scanner |
US3851951A (en) * | 1974-01-16 | 1974-12-03 | Isomet Corp | High resolution laser beam recorder with self-focusing acousto-optic scanner |
US3898627A (en) * | 1974-03-22 | 1975-08-05 | Ibm | Optical printer having serializing buffer for use with variable length binary words |
US3945318A (en) * | 1974-04-08 | 1976-03-23 | Logetronics, Inc. | Printing plate blank and image sheet by laser transfer |
US3984171A (en) * | 1974-08-21 | 1976-10-05 | Image Information Inc. | Linear scan system |
US4031519A (en) * | 1974-11-11 | 1977-06-21 | Ibm Corporation | Printer |
DE2460147C2 (de) * | 1974-12-19 | 1983-05-05 | Ibm Deutschland Gmbh, 7000 Stuttgart | Anordnung zur Dekomprimierung komprimierter Information für aus schwarzen und weißen Bereichen zusammengesetze darzustellende Zeichen |
US4044363A (en) * | 1974-12-23 | 1977-08-23 | Dymo Industries, Inc. | Laser photocomposition system and method |
US3970359A (en) * | 1975-02-03 | 1976-07-20 | Xerox Corporation | Flying spot flat field scanner |
US4090187A (en) * | 1976-05-10 | 1978-05-16 | Thomson-Csf Laboratories, Inc. | Television titling system for producing overlapping characters |
US4071909A (en) * | 1976-09-30 | 1978-01-31 | Xerox Corporation | Digital interface system for a printer |
-
1978
- 1978-10-10 US US05/950,242 patent/US4231096A/en not_active Expired - Lifetime
-
1979
- 1979-10-09 GB GB7934991A patent/GB2033307B/en not_active Expired
- 1979-10-09 DE DE2940897A patent/DE2940897C2/de not_active Expired
- 1979-10-09 CA CA000337237A patent/CA1135867A/en not_active Expired
- 1979-10-09 IT IT50507/79A patent/IT1164725B/it active
- 1979-10-09 SE SE7908363A patent/SE444090B/sv not_active IP Right Cessation
- 1979-10-09 FR FR7925095A patent/FR2438543B1/fr not_active Expired
- 1979-10-11 JP JP13130379A patent/JPS55105290A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
SE7908363L (sv) | 1980-04-11 |
DE2940897A1 (de) | 1980-04-24 |
FR2438543B1 (fr) | 1987-04-17 |
US4231096A (en) | 1980-10-28 |
FR2438543A1 (fr) | 1980-05-09 |
GB2033307B (en) | 1983-03-23 |
IT7950507A0 (it) | 1979-10-09 |
CA1135867A (en) | 1982-11-16 |
IT1164725B (it) | 1987-04-15 |
GB2033307A (en) | 1980-05-21 |
SE444090B (sv) | 1986-03-17 |
JPS55105290A (en) | 1980-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2940897C2 (de) | Digitales Setzgerät | |
DE3044092C2 (de) | ||
DE69221414T2 (de) | Intelligenter Schriftartdarstellungskoprozessor | |
DE1961173C3 (de) | Steuereinrichtung zum Festlegen bzw. Verändern der Textaufteilung einer Textdatenfolge mit Hilfe eines Bildanzeigegerätes | |
DE2760260C2 (de) | Vorrichtung zum Anzeigen eines gerasterten Bildes | |
DE2919013C2 (de) | ||
DE68929094T2 (de) | Stückweise Druckbildverbesserung für Punktmatrixdrucker | |
DE3121503C2 (de) | Dokumenten-Verarbeitungssystem | |
DE69320746T2 (de) | Rasterbildverbesserung unter Verwendung eines reduzierten Schablonenspeichers | |
DE69622957T2 (de) | Verfahren und vorrichtung zur erzeugung von textbildern auf einer anzeigevorrichtung mit anti-aliasing effekt | |
DE2459106C2 (de) | Schaltungsanordnung zur Darstellung von Zeichen auf einem Bildschirm mittels eines Kathodenstrahls | |
DE2549792A1 (de) | Zeilendrucker mit gemischter zeichenteilung | |
EP0096079A1 (de) | Verfahren zur Aufbereitung von Punktrasterdaten für Zeichen- und/oder Bilddarstellungen | |
DE2550268B2 (de) | Schnelldrucker für Datenverarbeitungssysteme | |
DE2724108A1 (de) | System zur optischen wiedergabe von symbolen, zeichen und darstellungen, insbesondere fuer layout von anzeigen in zeitungen u.dgl. | |
DE2724075A1 (de) | System zur optischen wiedergabe von symbolen, zeichen und darstellungen, insbesondere fuer den layout von anzeigen in zeitungen u.dgl. | |
DE3787073T2 (de) | Mehrrichtungs-Abtast- und -Druckfähigkeit. | |
DE2106759A1 (de) | Verfahren und Gerat fur den Satz von Publikationen | |
DE2935890C2 (de) | Verfahren zum Ausbilden von Formatlinien bei einem Bildabtastsystem zur gemeinsamen Aufzeichung oder Anzeige mit Zeichendaten | |
WO1996031837A1 (de) | Verfahren zur generierung einer contone-map | |
EP0153584A2 (de) | Verfahren und Einrichtung zum Aufzeichnen von Schriftzeichen | |
EP0132456A1 (de) | Verfahren und Vorrichtung zur Prüfung der Satzqualität von Druckerzeugnissen, insbesondere Zeitungen | |
DE2548145A1 (de) | Drucker mit pufferspeicher | |
DE2724199A1 (de) | System zur optischen wiedergabe von symbolen, zeichen und darstellungen, insbesondere fuer den layout von anzeigen in zeitungen u.dgl. | |
DE2550212A1 (de) | Drucker mit pufferspeicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
8127 | New person/name/address of the applicant |
Owner name: ALLIED CORP., MORRIS TOWNSHIP, N.J., US |
|
8128 | New person/name/address of the agent |
Representative=s name: SCHMIED-KOWARZIK, V., DR., 8000 MUENCHEN DANNENBER |
|
D2 | Grant after examination | ||
8363 | Opposition against the patent | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: LINOTYPE CO., HAUPPAUGE, N.Y., US |
|
8328 | Change in the person/name/address of the agent |
Free format text: DANNENBERG, G., DIPL.-ING., 6000 FRANKFURT WEINHOLD, P., DIPL.-CHEM. DR., 8000 MUENCHEN GUDEL, D., DR.PHIL. SCHUBERT, S., DIPL.-ING., 6000 FRANKFURT BARZ, P., DIPL.-CHEM. DR.RER.NAT., PAT.-ANWAELTE, 8000 MUENCHEN |
|
8331 | Complete revocation |