DE3606858C2 - - Google Patents
Info
- Publication number
- DE3606858C2 DE3606858C2 DE3606858A DE3606858A DE3606858C2 DE 3606858 C2 DE3606858 C2 DE 3606858C2 DE 3606858 A DE3606858 A DE 3606858A DE 3606858 A DE3606858 A DE 3606858A DE 3606858 C2 DE3606858 C2 DE 3606858C2
- Authority
- DE
- Germany
- Prior art keywords
- cursor
- screen
- line
- text
- register
- 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 - Lifetime
Links
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/34—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators for rolling or scrolling
- G09G5/343—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators for rolling or scrolling for systems having a character code-mapped display memory
-
- 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0485—Scrolling or panning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Controls And Circuits For Display Device (AREA)
- User Interface Of Digital Computer (AREA)
- Document Processing Apparatus (AREA)
- Digital Computer Display Output (AREA)
Description
Die vorliegende Erfindung betrifft ein Verfahren gemäß dem Oberbegriff des Anspruchs 1
sowie eine Einrichtung zur Durchführung des Verfahrens.
Anzeigevorrichtungen werden oft für die visuelle Beobachtung
von Informationen verwendet. Unter anderen
verschiedenen Verwendungen wird eine Anzeigevorrichtung
auch in einer Textverarbeitungsvorrichtung verwendet.
Bei einer solchen Vorrichtung wird ein zuvor eingegebener
Text eingelesen und auf einem Bildschirm
wiedergegeben, um ihn zu korrigieren. Sowohl diese
Funktion als auch das Ausdrucken sind wichtige Aufgaben
einer Textverarbeitungsvorrichtung. Aus Gründen, die
durch Begrenzungen in der Hardware und Ähnlichem
liegen, ist es jedoch schwierig, den auf einer Seite
vorhandenen Text (beispielsweise in der Größe DIN A 4)
gleichzeitig auf dem Bildschirm darzustellen. Deshalb
wird ein Teil des Textes auf dem Bildschirm wiedergegeben
und wird so ausgewechselt, daß der Text einer
ganzen Seite, wie er benötigt wird, aufeinanderfolgend
auf dem Bildschirm dargestellt wird. Genauer gesagt,
erscheint der andere Teil eines einseitigen Textes
jeweils mit den nächstfolgenden Zeilen auf dem Bildschirm,
wenn bereits vorhandene Zeilen nach oben oder
nach unten verschoben werden.
Zur Korrektur des Textes wird ein Cursor zu einem zu korrigierenden
Zeichen hinbewegt. Wenn ein Zeichen korrigiert
werden soll, das noch nicht auf dem Bildschirm
erschienen ist, wird der Cursor bei einem herkömmlichen
Steuerungsverfahren zum oberen oder untern Ende des
momentan vorliegenden Bildschirminhaltes bewegt, wonach
eine Taste für die Cursorbewegung betätigt wird, um den
Schirminhalt vertikal zu bewegen. Beispielsweise
wird der Cursor zum unteren Bildschirmende durch Betätigen
einer Taste, die seine Bewegung nach unten
steuert, gebracht, wenn diese Taste weiter betätigt
wird, erscheint ein unterhalb des gegenwärtig dargestellten
Teils vorhandener Teil des Textes auf dem
Bildschirm. Das gleiche geschieht im umgekehrten Sinne,
wenn eine Taste, die den Cursor nach oben bewegt, betätigt
wird. Wenn die benötigte Zeile eines Textes
durch fortwährendes Betätigen der Cursorbewegungstaste
in die Mitte des Bildschirms gebracht worden ist, muß
der Cursor auch dorthin zum Platz des zu korrigierenden
Zeichens gebracht werden. So ist beim herkömmlichen
Verfahren bei der praktischen Anwendung eine mühsame
Betätigungsweise erforderlich, wenngleich der dargestellte
Text unbewegt bleibt und leicht beobachtet
werden kann.
Eine Vorrichtung zum Umgehen des zuvor dargelegten
Problems wird in der deutschen Patentanmeldung P 29 15 673.8
und der japanischen, offengelegten Patentanmeldung
No. 55-1 40 935 offenbart. Gemäß diesen Offenbarungen
wird ein Cursor in einer gegebenen Stellung auf
einem Bildschirm festgelegt, auch wenn eine Taste für eine
Anzeigebewegung betätigt wird oder wenn Zeichen eingegeben werden, wird
nur der wiedergegebene Text weiterbewegt. Bei diesem Verfahren ist es jedoch
nicht leicht, den dargestellten Text zu erkennen, weil der Bildschirm
sich jedes Mal weiterbewegt, wenn die Bewegungstaste betätigt wird.
Die EP-00 52 754 beschreibt Vorrichtungen und Verfahren, um Teile eines
gespeicherten Textes hervorzuheben und insbesondere diese Teile
entsprechend zu markieren. Eine Grenzmarkierung kann dabei der Cursor
sein. Die Bearbeitung erfolgt seitenweise und der Cursor wird über den
ganzen Bildschirm geführt, soweit dies erforderlich ist.
Die DE-OS 33 02 230 bechreibt ein Verfahren und eine Anordnung zum
Darstellen von Text, bei der an der Anzeigeeinheit jeweils nur eine
vollständige Zeile dargestellt wird und wobei die Schreibmarke der einen
Zeile so verschoben werden kann, wie der Cursor bei einer mehrzeiligen
Textdarstellung. Die Cursorverschiebung erfolgt mittels kreuzförmig
angeordneten Steuertasten.
Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren der eingangs genannten
Art sowie eine Einrichtung zur Durchführung des Verfahrens zu schaffen, wodurch
sich das vertikale Positionieren des Cursors zum Bearbeiten von Texten einfacher
und übersichtlicher gestaltet.
Diese Aufgabe wird durch die im Patentanspruch 1 bzw. Patentanspruch 6
angegebenen Maßnahmen gelöst. Vorteilhafte Weiterbildungen der Erfindung
sind in den Patentansprüchen 2 bis 5 enthalten.
Nach dem erfindungsgemäßen Verfahren wird die vertikale Positionierung des
Cursors mit der Verschiebung des darzustellenden Textes so gekoppelt, daß der
Cursor solange in einem mittleren Bereich des Bildschirms gehalten wird,
bis beim Verschieben des Textes die letzte oder erste Textzeile am unteren bzw.
oberen Rand des Bildschirms erscheint, und daß von einer Verschiebung
des Textes automatisch auf eine entsprechende Verschiebung des Cursors
umgeschaltet wird, sobald die letzte bzw. erste Textzeile den unteren
bzw. den oberen Rand des Bildschirms erreicht hat.
Nachfolgend wird ein Ausführungsbeispiel
einer Einrichtung zur Durchführung des erfindungsgemäßen Verfahrens
anhand der beiliegenden Zeichnungen beschrieben.
Es zeigt
Fig. 1 ein Blockschaltbild einer Einrichtung zur Durchführung des
erfindungsgemäßen Verfahrens,
Fig. 2A bis 2F Darstellungen verschiedener Anzeigesituationen der in Fig. 1 dargestellten Einrichtung,
Fig. 3 ein Flußdiagramm des Vorgangs, wenn eine
Cursorbewegungstaste betätigt wird, wobei eine
zu haltende Cursorposition entlang einer horizontalen
Mittellinie des Bildschirms ausgewählt
wird,
Fig. 4 ein Flußdiagramm des Vorgangs, wenn Daten in
die Vorrichtung nach Fig. 1 eingegeben werden,
Fig. 5 ein Flußdiagramm für den Betrieb der Einrichtung
nach Fig. 1, wenn ein Flußdiagramm zur
Unterscheidung des Vorliegens/oder des Nichtvorliegens
von abzubildenden Daten in einen
Textspeicher zu dem in Fig. 3 abgebildeten
Flußdiagramm eingefügt wird und
Fig. 6 ein Flußdiagramm des Vorgangs, wenn die einzuhaltende
Cursorposition in einem Bereich gewählt
wird, der zwischen horizontalen Zeilen
liegt, die entsprechend von dem oberen und
unteren Rand des Bildschirms durch einen vorbestimmten
Abstand getrennt sind gemäß einer
weiteren Ausführungsform der vorliegenden Erfindung.
Eine Ausführungsform der vorliegenden Erfindung wird
nun anhand der Zeichnungen beschrieben.
Die in Fig. 1 dargestellte Einrichtung
besitzt einen Eingabetastenbereich
1, eine Anzeigesteuerung 2, einen Textspeicher
3, eine Anzeigeeinheit 4 und einen Sprachumwandlungs-ROM
5. Der Eingabetastenbereich 1 weist eine
Taste 11 für die Bewegung des Cursors nach rechts, eine
Taste 12 für die Bewegung des Cursors nach links, eine
Taste 13 für die Bewegung nach unten und eine Taste 14
für die Bewegung nach oben auf, wodurch eine
Cursorbewegung oder ein vertikales Verschieben von wiedergegebenem
Text auslösbar ist. Außerdem sind eine Layout-Taste 15
mit einem reduzierten Layout-Display für eine reduzierte
Layoutanzeige des Zustandes der Datenspeicherung im
Speicher 3 und Eingabetasten 16 für Buchstaben und
Symbole im Eingabebereich 1 enthalten. Der Textspeicher 3
besteht aus einem RAM-Speicher, der eingegebene Zeichendaten
(beispielsweise alphanumerische Zeichen und
Symbole) in Reihenfolge der Eingabe speichern kann und
eine Speicherkapazität von 2640 Zeichen einer Textinformation
besitzt.
Die Anzeigesteuerung 2 weist einen zentralen Prozessor
CPU 21 (Vergleichs- und Steuervorrichtung), einen Zeitgeber 23, der nicht direkt mit dem
Betrieb der Vorrichtung dieser Ausführungsform in
Beziehung steht, und eine Registergruppe 22 auf.
Die Registergruppe 22 besitzt ein Cursor-Positionsregister
für die X-Richtung, das eine Spaltenposition des Cursors in
Spaltenrichtung des Bildschirms anzeigt und einen
zwischen "1" und "44" variierenden Wert annimmt, ein
Cursor-Positionsregister für die Y-Richtung, das nicht die Cursorposition
auf dem Bildschirm, sondern eine Zeilenposition
einer gewünschten Textzeile im Speicher 3 in
Zeilenrichtung anzeigt und einen zwischen 1 und 60
variierenden Wert annimmt, ein Bildschirmrandzeilenregister SLR, welches
die Anfangszeilenposition der Textinformation im
Speicher im verkleinerten Layout-Anzeige-Betrieb
anzeigt und einen zwischen 1 und 31 variierenden Wert
annimmt, ein Arbeitsregister W, welches während der
Cursorbewegung oder vertikalen Textverschiebung benutzt wird,
und ein Sicherungsregister SAV zum Sichern verschiedener
Variablen während der Rechenoperationen der CPU
21. Das Sicherungsregister SAV steht nicht direkt mit
dem Betrieb der Vorrichtung dieser Ausführungsform in
Beziehung und eine detaillierte Beschreibung ist deshalb
weggelassen.
Die Anzeigeeinheit 4 ist mit der CPU 21 verbunden und
besitzt einen Anzeigespeicher 41 zum Speichern von
anzuzeigenden Daten vom Speicher 3, einen mit dem
Speicher 41 verbundenen Treiber 42 zum Treiben der
darin gespeicherten, anzuzeigenden Daten und einen mit
dem Treiber 42 zum Darstellen der Daten dienenden Bildschirm
43. Der Bildschirm 43 besitzt einen Anzeigeschirm
44 mit verkleinertem Anzeigefenster zum Anzeigen des
Speicherzustandes des Speichers 3, beispielsweise der
Anzeige der Fenstergröße als ein Teil davon, wenn die Taste 15
gedrückt wird. Der Schirm 44 ermöglicht eine
Anzeige von 44 Spalten mal 30 Zeilen und andere Teile
der anzuzeigenden Daten werden durch vertikales Verschieben angezeigt.
Im Schirm 44 wird eine gewünschte Position,
beispielsweise die Position eines zu korrigierenden
Zeichens durch einen blinkenden Cursor 45 angezeigt
(Fig. 1). Der Speicher 3 kann 44 Spalten
(entsprechend dem Schirm 44) mal 60 Zeilen von Daten
speichern und Adressen 0 bis 2639 sind seinen
Speicherstellen zugeordnet. Auf dem Schirm 44 ist die
Zahl 46, beispielsweise eine Adresse entsprechend Daten
in einer zweiten Zeile und einer dritten Spalte. Die
CPU 21 erzeugt ein Layout-Anzeigebild unter Verwendung
der Registergruppe 22, überträgt anzuzeigende Daten zum
Speicher 41 und bewirkt, daß der Bildschirm 43
durch den Treiber 42 die Daten auf der Anzeigeeinheit 4
anzeigt.
Während eine detaillierte Arbeitsweise später noch
erläutert wird, sei nun der prinzipielle Betrieb der
zuvor beschriebenen Einrichtung gemäß diesem Ausführungsbeispiel
beschrieben. Für das leichtere Verständnis
der vorliegenden Erfindung wird die Arbeitsweise
anhand des maskierten Anzeigeschirms einer Textverarbeitungsanlage
erläutert. Der Grundgedanke der vorliegenden
Erfindung ist jedoch der gleiche, unabhängig davon
ob Text dargestellt wird oder ob verschiedene andere
Daten zur Anzeige kommen. Eine gewünschte Cursorposition
auf dem Schirm wird längs einer horizontalen
Mittellinie des Schirms 44 ausgewählt. Wie sich jedoch
aus der nachfolgenden Beschreibung ergibt, ist die
vorliegende Erfindung nicht auf diese Position beschränkt.
Ein Teil des Textinhalts des Speicherbereichs des
Speichers 3 soll auf dem Schirm 43 angezeigt werden.
Hierzu wird die Layout-Anzeigetaste 15 im Eingabetastenfeld
1 betätigt. Die CPU 21 bestimmt, daß die
eingegebene Kodierung ein Layout-Anzeigebefehl ist und
das reduzierte Anzeigefenster 44 wird auf dem
Schirm 43 angezeigt. Ferner wird der Cursor 45 auf eine
vorbestimmte Position auf dem Schirm 44, beispielsweise
längs der horizontalen Mittellinie desselben eingestellt.
Wenn nun irgendeine Taste des Eingabebereichs 1
gedrückt wird, bestimmt die CPU 21 aus den kodierten
Daten, welche der Tasten 11 bis 16 gedrückt wurde. Wird
bestimmt, daß die Taste 13 oder 14 für eine Vertikalbewegung
des Cursors gedrückt wurde, dann wird die
Cursorposition unverändert gelassen und die angezeigten
Daten auf dem Schirm 44 werden unter dem Einfluß der
Steuerung 2 vertikal verschoben. Insbesondere liest die CPU 21
den Inhalt des Speichers 3 unter Verwendung der
Registergruppe 22 aus, um den Cursor auf dem Schirm zu
bewegen oder die angezeigten Daten vertikal zu verschieben. Wenn
beispielsweise die Taste 13 für eine Cursorbewegung
nach unten betätigt wurde, dann wird ein Textteil
unmittelbar unter den augenblicklich angezeigten Daten
aus dem entsprechenden Speicherbereich des Speichers 3
ausgelesen, während der Cursor unbewegt in der Mitte
des Schirms bleibt und die ausgelesenen Daten
erscheinen vom unteren Ende des Schirms 44 her durch
vertikales Verschieben. In diesem Falle prüft die Steuerung 2, ob der
ensprechende Speicherbereich im Speicher 3 vorhanden
ist. Ist dies der Fall, dann führt die Steuerung 2 den
obengenannten vertikalen Verschiebevorgang durch. Ist dies nicht der
Fall, dann beginnt die Cursorposition sich von der
Schirmmitte zum unteren Ende des Schirms hin zu
bewegen. Wird die Taste 14 für eine Cursorbewegung
nach oben betätigt, dann ist die Operation die gleiche
mit der Ausnahme, daß die Bewegung bzw. das vertikale Verschieben in
umgekehrter Richtung erfolgt. Wenn ein anzuzeigender
Text nicht dem Ende- oder Startteil einer Seite entspricht,
dann wird das vertikale Verschieben durchgeführt,
während der Cursor in der Schirmmitte bleibt.
Wird eine der Zeicheneingabetasten 16 betätigt, dann führt
die CPU 21 eine KANA-KANJI-Umwandlung unter Bezugnahme
auf den ROM-Speicher 5 durch, welche auf der eingegebenen
Zeichenkodierung basiert, um diese in einem
entsprechenden Bereich im Speicher 3 zu speichern.
Ferner bewirkt die CPU 21 eine Anzeige auf dem Schirm
44 und eine Aktuallisierung der Cursorposition. Unter
Bezugnahme auf die Fig. 2A bis 2F, 3 und 4, wird nun
der Anzeigevorgang beschrieben. Bei dem vorliegenden
Ausführungsbeispiel wird als Cursorposition auf dem
Schirm 44 die 16. Zeile (Mittelzeile) des Schirms gewählt,
damit ein anzuzeigender Text oder ein anzuzeigendes
Dokument gut erfaßt werden kann.
Es wird nun der Ablauf beschrieben, wenn die Taste 13
für eine Cursorbewegung nach unten gedrückt wurde. Wie
in Fig. 2A gezeigt, werden auf dem Schirm 44 die 10.
bis 39. Zeile des Textes im Speicher 3 angezeigt und
der Cursor ist auf die 16. Zeile (das heißt, die 25.
Zeile im Speicher 3) eingestellt. Es ist zu
beachten, daß in den Fig. 2A bis 2F die Zahlen in
Klammern die Zeilen auf dem Schirm und die außenstehenden
Zahlen die Zeilen im Speicher 3 angeben. In Fig. 2A
gibt das Register Y zur Anzeige der Zeilenposition des
Cursors 25 und das SLR-Register "10" an. Wird die Taste
13 zur Abwärtsbewegung des Cursors im Eingabefeld 1 in
dieser Situation gedrückt, dann prüft zuerst die CPU
21, ob die Eingabekodierung ein Befehl zur Bewegung des
Cursors nach unten ist. Bejahendenfalls geht das
Programm zu Schritt 101 in Fig. 3. In Schritt 102 prüft
die CPU 21, ob der Inhalt des Registers Y den Wert "60"
überschreitet. Da der Speicher beim vorliegenden Ausführungsbeispiel
bis zu 60 Datenzeilen speichern kann
und die gewünschte Zeile durch den Cursor angezeigt
wird, prüft die CPU 21, ob die gewünschte Zeile der
letzten Zeile in dem Speicherbereich des Speichers 3
entspricht. Aus dem Ergebnis des Schrittes 102 wird
bestimmt, ob die anzuzeigenden Daten vertikal zu bewegen sind
oder der Cursor bewegt werden soll. Da beim vorliegenden
Beispiel das Register Y die Zeile "25", also
kleiner als "60", anzeigt, geht der Ablauf nach Schritt
103. In diesem Schritt 103 wird der Inhalt des
Registers Y um 1 erhöht. Dies bedeutet, daß sich die
Cursorposition von der "25." zur "26." Zeile im
Speicher 3 verschiebt. Der Programmablauf schreitet
dann zu Schritt 104, in dem geprüft wird, ob der Inhalt
des Registers Y "15" überschreitet. Da auf dem Schirm
44 bis zu "30" Zeilen angezeigt werden können und der
Cursor gegenwärtig auf der "16." Zeile steht, wird
geprüft, ob ein Speicherbereich zum Speichern von
darzustellenden gespeicherten Textdaten in der ersten
Zeile des Schirms 44 im Speicher 3 vorhanden ist. Da
das Register Y im vorliegenden Falle "26" anzeigt,
läuft das Programm nach Schritt 105. Im Schritt 105
wird wie im Schritt 104 geprüft, ob der Speicherbereich
der in der "30." Zeile des Schirms 44 anzuzeigenden
Textdaten im Speicher 3 vorhanden ist. Da im vorliegenden
Falle das Register Y "26" angibt, geht das Programm
nach Schritt 106. Im Schritt 106 wird von dem Wert des
Registers Y "15" subtrahiert und die Differenz wird im
Register SLR eingestellt. Der Inhalt des Registers Y
bleibt unverändert. Insbesondere wird die in der ersten
Zeile auf dem Schirm 44 darzustellende Zeilennummer im
Speicher 3 berechnet. Im vorliegenden Fall ist der
Inhalt des Registers Y = "26", so daß "26" minus "15" =
"11" im Register SLR eingestellt wird. Wenn auf diese
Weise die Cursorzeile ("26." Zeile) im Speicher 3 in
der "16." Zeile des Schirms 44 angezeigt wird, dann
wird die "11." Zeile im Speicher 3 in der ersten Zeile
des Schirms 44 dargestellt.
Für eine Layout-Anzeige-Verarbeitung von Dokument- oder
Textdaten auf dem Schirm 44 werden die Schritte 107 bis
112 nun durchgeführt. Da der Schirm 44 eine 30-Zeilen-
Anzeige ist, wird 30 in das Arbeitsregister W im
Schritt 107 eingestellt. Da der Inhalt des Registers
SLR nun 11 ist, wird im Schritt 108 "440" als die erste
Spaltenadresse der "11." Zeile im Speicher 3 im
Register TXADR eingestellt.Im Schritt 109 liest die
CPU 21 den Inhalt des Registers TXADR aus und greift
unter Verwendung dieses Wertes als Adresse auf den
Speicher 3 zu, so daß aus diesem 44-spaltige Layout-
Daten entsprechend den Daten der "11." Zeile im
Speicher 3 ausgelesen und dann zum Speicher 41 übertragen
werden. Im Schritt 110 wird zum Inhalt des
Registers TXADR "44" hinzugezählt. Insbesondere wird
die Adresse zur Angabe des Speicherbereichs um eine
Zeile erhöht. Da Einzeilendaten angezeigt werden, wird
in Schritt 111 der Inhalt des Registers W um "1" verringert.
Im Schritt 112 wird geprüft, ob der Inhalt des
Registers W = "0" ist. Insbesondere wird geprüft, ob
alle anzuzeigenden Layout-Daten ausgelesen und angezeigt
wurden. Ist dies in Schritt 112 nicht der Fall
(= "NO"), dann werden die Schritte 109 bis 112 wiederholt.
Nach Ausführung der Schritte 107 bis 112 wird das
Layout der Daten von 30 Zeilen von der "11." bis zur
"40." Zeile im Speicher 3 in den Speicher 41 übertragen
werden. Die Daten im Speicher 41 werden mittels des
Treibers 42 auf dem Schirm 44 angezeigt. Dies bedeutet,
daß sich das Bild des Schirms 44 von Fig. 2A nach 2B
ändert. Im Schritt 113 wird der Cursor in der "16."
Zeile angezeigt, was bestimmt wird durch die Subtraktion
des Inhalts "11" des Registers SLR vom Inhalt "26"
des Registers Y und der Erhöhung der Differennz um "1".
Die Cursorposition in Spaltenrichtung ist die gleiche,
wie der Inhalt des Registers X. Wie zuvor beschrieben
wird bei der Betätigung der Taste 13 für eine Bewegung
des Cursors nach unten im Zustand der Fig. 2A der Text
um eine Zeile nach oben bewegt, während die Cursorposition auf
dem Schirm 44 unverändert gelassen wird, wie dies aus
den Fig. 2A und 2B ersichtlich ist. Die "40." Zeile
im Speicher 3 erscheint nun vom unteren Ende des
Schirms her. Eine Änderung der Anzeige gemäß Fig. 2A
nach 2B kann erfolgen, wenn eine der "17." bis "45."
Zeile im Speicher 3 an der Cursorposition ("16." Zeile)
auf dem Schirm 44 angezeigt wird.
Es wird nun im einzelnen die Arbeitsweise beschrieben,
wenn die Taste 14 zur Bewegung des Cursors nach oben
betätigt wird. Beim Drücken der Taste 14 in dem in Fig.
2A gezeigten Zustand prüft die CPU 21 genau wie beim
Drücken der Taste für die Bewegung des Cursors nach
unten, ob die Eingabekodierung ein Befehl für die
Bewegung des Cursors nach oben ist. Bejahendenfalls
läuft das Programm nach Schritt 117. Dort wird geprüft,
ob der Inhalt des Register Y größer als "1" ist. Dies
bedeutet, daß die CPU 21 prüft, ob die interessierende
Zeile nicht der ersten Zeile im Speicher 3 entspricht.
Bei "NEIN" in Schritt 117 kann die nachstehend
beschriebene vertikale Verschiebeoperation am Schirm nicht durchgeführt
werden. Da der Inhalt des Registers Y "25" ist,
folgt Schritt 118, indem der Inhalt des Registers Y um
"1" verringert wird, so daß sich "24" ergibt. Nun
werden die Schritte 104 bis 114 genau so durchgeführt,
als wenn die Taste 13 für die Bewegung des Cursors nach
unten betätigt worden wäre. Somit wird der dargestellte
Text nach unten auf dem Schirm 44 um eine Zeile ohne
Änderung der Cursorposition verschoben.
Es sei nun die Arbeitsweise beschrieben, wenn wie in
Fig. 2C gezeigt, die "31." bis "60." Zeile der Layout-
Daten im Speicher 3 auf dem Schirm 44 dargestellt wird,
wobei sich der Cursor in der "46." Zeile im Speicher 3
befindet. In diesem Falle ist der Inhalt des Registers
Y "46" und derjenige des Registers SLR "31". Bei
Betätigung der Taste 13 für eine Cursorbewegung nach
unten, prüft in diesem Falle die CPU 21, ob die Eingabekodierung
ein Befehl für die Bewegung des Cursors
nach unten ist, und zwar in der gleichen Weise, wie bei
der Betätigung der Taste 13 gemäß Fig. 2A. Dies wird
festgestellt, da der augenblickliche Inhalt des
Registers Y = "46" ist und es werden die Schritte 101
bis 104 durchgeführt, mit dem Ergebnis, daß der Inhalt
des Registers Y zu "47" wird. Im Schritt 105 wird der
Inhalt des Registers Y geprüft und da er größer als
"45" ist, geht das Programm nach Schritt 115, in dem
der Wert "31" im Register SLR eingestellt wird. Der
Inhalt des Registers SLR wird somit vor und nach
Betätigen der Taste 13 für eine Bewegung des Cursors
nach unten unverändert gelassen. Im vorliegenden Fall
ist der Speicherbereich zum Speichern der "61." Zeile
im Speicher 3 nicht vorhanden, so daß die auf dem
Schirm 44 dargestellten Daten nicht vertikal verschoben werden
können. Obwohl dann die Schritte 107 bis 113 ausgeführt
werden, können die angezeigten Daten nicht länger vertikal verschoben
werden, da der Inhalt des Registers SLR bis zum
Schritt 115 unverändert gelassen wird. Da andererseits
der Inhalt des Registers Y im Schritt 103 um "1" erhöht
wird, bewegt sich die Cursorposition um eine Zeile in
der Cursoranzeigebetriebsart im Schritt 113 nach unten,
wie dies Fig. 2D zeigt. Wenn die Taste 13 in der Situation
gemäß Fig. 2C gedrückt wird, wird insbesondere der
Schirmverschiebevorgng nicht durchgeführt und die Cursorposition
wird nach unten verschoben. Bei jedem Drücken
der Taste 13 bewegt sich der Cursor nach unten, bis die
"60." Zeile erreicht ist. Hat die Cursorposition die
"60." Zeile erreicht, dann führt die CPU 21 die
Schritte 102 und 104 durch. Da somit der Schritt 103
nicht durchgeführt wird, ist der Inhalt des Registers Y
nicht erhöht. Deshalb werden die angezeigten Daten
nicht abgerollt und der Cursor bleibt in der "60."
Zeile.
Es sei angenommen, daß auf dem Schirm 44 gemäß Fig. 2E
die "1." bis "30." Zeile der Layout-Daten im Speicher 3
angezeigt werden. In diesem Falle ist der Inhalt des
Registers Y = "16" und derjenige des Registers SLR =
"1". Beim Drücken der Taste 14 für eine Cursorbewegung
nach oben prüft in dieser Situation die CPU 21 die
Eingabekodierung wie zuvor. Wird der Befehl für eine
Cursorbewegung nach oben festgestellt, dann werden die
Schritte 116 bis 118 durchgeführt und der Inhalt des
Registers Y wird um "1" erniedrigt, damit sich "15"
ergibt. Somit wird nach Schritt 104 der Schritt 119
durchgeführt und es wird der Wert 1 im Register SLR
eingestellt. Der Inhalt des Registers SLR zur Angabe
der anzuzeigenden Anfangszeile bleibt vor und nach der
Betätigung der Taste 14 für eine Cursoraufwärtsbewegung
unverändert. Obwohl die Schritte 107 bis 112 für eine
Datendarstellung durchgeführt werden, erfolgt kein
vertikales Verschieben der angezeigten Daten, da der Inhalt des
Registers SLR bis zum Schritt 119 unverändert gelassen
wird. Da andererseits der Inhalt des Registers Y im
Schritt 118 um "1" erniedrigt wird, ergibt sich eine
Verschiebung der Cursorposition um eine Zeile nach
oben, wie dies Fig. 2F zeigt, wenn der Cursor in
Schritt 113 dargestellt wird. Insbesondere können bei
Betätigung der Taste 14 in dieser Situation (Fig. 2E)
die angezeigten Daten nicht nach unten verschoben
werden, da sich vor der ersten Zeile im Speicher 3
keine Zeile befindet, und die Cursorposition verschiebt
sich nach oben, bis sie die erste Zeile erreicht. Hat
die Cursorposition die erste Zeile erreicht, dann führt
die CPU 21 die Schritte 117 und 104 aus. Da Schritt 118
in dieser Situation nicht durchgeführt wird, bleibt der
Cursor in der ersten Zeile, genau wie in dem Fall der
Fig. 2C, wo der Cursor in der 60. Zeile in dem Anzeigezustand
verbleibt.
Es soll nun die Arbeitsweise bei Betätigung der Taste
14 in der in Fig. 2D gezeigten Situation beschrieben
werden. Hierbei ist der Inhalt des Registers Y = "47"
und derjenige des Registers SLR = "31". Wird die Eingangskodierung
als ein Befehl zur Cursorbewegung nach
oben festgestellt, dann führt die CPU 21 die Schritte
116, 117, 118, 104, 105 und 115 aus. Hierdurch wird der
Inhalt des Registers Y um "1" auf "46" erniedrigt und
derjenige des Registers SLR wird unverändert auf "31"
gelassen. Wenn somit die Schirtte 107 bis 113 durchgeführt
werden, erfolgt kein Verschieben der angezeigten
Daten und nur der Cursor wird nach oben verschoben
(Fig. 2C). Wird die Taste 13 in der Situation der Fig.
2F betätigt, dann werden in gleicher Weise die angezeigten
Daten nicht vertikal verschoben, sondern nur der Cursor bewegt
sich und wird gemäß Fig. 2E angezeigt.
Befindet sich, wie zuvor beschrieben, der Cursor auf
der 16. Zeile des Schirms 44, das heißt, an einer
Grenze eines vorbestimmten Bereichs des zu betrachtenden
Schirms 44, dann erfolgt bei Eingabe eines Befehles
für eine Cursor-AB- oder -AUF-Bewegung ein Verschieben der
angezeigten Daten nach unten oder oben, während der
Cursor auf der gleichen Position des Schirms verbleibt.
Somit kann ein zu korrigender Textteil unmittelbar
nach Anzeige im Mittelbereich des Schirmes durch vertikales Verschieben
mittels des Cursors korrigiert werden. Wird die
letzte Zeile im Speicher 3 auf dem Schirm angezeigt,
dann wird die Cursorposition ohne Verschieben der angezeigten
Daten bewegt.
Es wird nun ein Fall beschrieben, bei dem die Taste 11
zur Cursorbewegung nach rechts im Zustand der Fig. 2A
betätigt wird. In diesem Falle ist der Inhalt des
Registers Y = "25" und derjenige des Registers SLR =
"10" und derjenige des Registers X = "20", wenn sich
der Cursor in der Nähe der Schirmmitte, beispielsweise
in der "20." Spalte, befindet. Wird in dieser Situation
die Taste 11 gedrückt, dann prüft die CPU 21, ob die
eingegebene Kodierung ein Befehl für eine Cursorbewegung
nach rechts ist. Bejahendenfalls führt die CPU 21
den Schritt 121 (Fig. 3) aus. In diesem Schritt 121
wird geprüft, ob die Cursorposition auf dem Schirm der
"44." Spalte, das heißt der rechten Kante des Schirms
entspricht. Da im vorliegenden Fall der Inhalt des
Registers X = "20" ist, läuft das Programm nach Schritt
122 und der Inhalt des Registers X wird um "1" erhöht.
In dieser Situation wird der Inhalt des Registers Y und
SLR unverändert gelassen. Es folgen die Schritte 107
bis 112. Das Ergebnis ist, daß die angezeigten Daten
nicht verschoben werden und daß der Cursor sich um eine
Spalte im Schritt 113 nach rechts verschiebt.
Es wird nun ein Fall beschrieben, in dem die Taste 11
gedrückt wird, wenn die Cursorposition der "44." Spalte
des Schirms 44 entspricht. In dieser Situation ist der
Inhalt des Registers X = "44". Die CPU 21 prüft, ob die
eingegebene Kodierung ein Befehl für die Cursorbewegung
nach rechts ist. Bejahendenfalls führt die CPU 21 den
Schritt 121 aus. Da der Inhalt des Registers X = "44"
ist, wird nach Schritt 121 der Schritt 123 ausgeführt
und der Wert "1" in das Register X eingestellt. Nun
werden die Schritte 102 bis 113 abhängig von der jeweiligen
Situation durchgeführt. Werden die Daten auf
dem Schirm 44 gemäß Fig. 2A angezeigt, dann werden
hiernach die angezeigten Daten um eine Zeile nach oben
verschoben und der Cursor wird am linken Ende der "16."
Zeile des Schirms 44 angezeigt. Ist die Datendarstellung
gemäß Fig. 2C, dann werden die angezeigten
Daten nicht verschoben und der Cursor wird an der linken
Kante der "17." Zeile des Schirms angezeigt.
Es soll nun ein Fall beschrieben werden, bei dem in der
Sitution gemäß Fig. 2A die Taste 12 für eine Cursorbewegung
nach links betätigt wird. Hierbei ist der
Cursor in der Nähe der Schirmmitte, z. B. in der 20.
Spalte positioniert. Insbesondere ist der Inhalt des
Registers X = 20 und die CPU 21 prüft, ob die eingegebene
Kodierung ein Befehl für eine Cursorbewegung
nach links ist. Bejahendenfalls wird der Schritt 125
durchgeführt und es wird geprüft, ob der Inhalt des
Registers X = 1 ist, das heißt, ob der Cursor an der
linken Kante des Schirms 44 steht. In der vorliegenden
Situation ist der Inhalt des Registers X = 20, so daß
der Schritt 126 durchgeführt und der Inhalt des
Registers X um "1" verringert wird. Hiernach werden die
Schritte 107 bis 113 ausgeführt, um die Daten und den
Cursor darzustellen. Da im vorliegenden Fall der Inhalt
der Register Y und SLR unverändert gelassen wird,
erfolgt kein Verschieben der angezeigten Daten und der
Cursor wird nicht in vertikaler Richtung, sondern nach
links um eine Spalte verschoben.
Es wird nun ein Fall erläutert, bei dem die Taste 12
für eine Cursorbewegung nach links betätigt wird, wenn
sich der Cursor in der ersten Spalte des Schirms 44
befindet. Die CPU 21 prüft, ob die eingegebene Kodierung
ein Befehl für eine Cursorbewegung nach links ist.
Ist dies der Fall, dann wird nach Schritt 125 der
Schritt 127 durchgeführt und der Inhalt des Registers X
wird auf "44" eingestellt. Hiernach folgen die Schritte
117 bis 113, abhängig von der jeweiligen Situation.
Werden Daten gemäß Bild Fig. 2A angezeigt, so
werden die angezeigten Daten um eine Zeile nach unten
verschoben und der Cursor wird an der rechten Kante der
16. Zeile des Schirms 44, das heißt, am rechten Ende
der gleichen Zeile auf dem Schirm, angezeigt, wie dies
vor Eingabe des Befehls der Fall war. Ist die Anzeige
der Daten wie in Fig. 2E gezeigt, dann werden die angezeigten
Daten nicht verschoben und der Cursor wird nach
rechts verschoben und wird am rechten Ende der 15.
Zeile auf dem Schirm 44 angezeigt.
Es wird nun unter Bezugnahme auf Fig. 4 ein Fall beschrieben,
bei dem Zeichentasten im Eingabebereich 1
betätigt werden. Die CPU 21 prüft, ob die eingegebene
Kodierung eine Zeichenkodierung ist. Die CPU 21 führt
dann eine KANA-KANJI-Umwandlung für die eingegebenen
Zeichendaten unter Zuhilfenahme des ROM-Speichers 5
durch und speichert dann die Daten an einer Adresse im
Speicher 3 entsprechend der Cursoranzeigeposition.
Gleichzeitig bestimmt die CPU 21, daß der Befehl für
eine Cursorbewegung nach rechts eingegeben wurde und
führt den Schritt 121 aus. Hiernach wird die Einrichtung
genau so betätigt, als wenn die Taste 11 für eine
Cursorbewegung nach rechts gedrückt worden wäre.
Da die Schirmanzeige vertikal verschoben werden
kann, während sich der Cursor in Schirmmitte befindet,
kann der angezeigte Text in übersichtlicher Weise betrachtet
werden.
Bei dem zuvor beschriebenen Ausführungsbeispiel wird
die vertikale Schirmbewegung durchgeführt, wenn Textdaten in
dem Speicherbereich des Textspeichers in der Cursorbewegungsrichtung
vorhanden sind. Selbst wenn der anzuzeigende
Speicherbereich keinerlei Daten speichert,
wird vorzugsweise der vertikale Schirmverschiebungsvorgang unterbrochen
und der Cursor bewegt. Fig. 5 zeigt ein Flußdiagramm
einer derartigen Situation. Dieses Flußdiagramm
wird durchgeführt, wenn im Schritt 105 gemäß
Fig. 3 die Antwort "NEIN" ist, das heißt, wenn der
anzuzeigende Speicherbereich vorhanden ist. Das Ergebnis
aus dem Flußdiagramm in Fig. 3 wird im Schritt 107
akzeptiert. Der Inhalt der Register Y und SLR sind
nicht auf die obengenannten Bereiche des Ausführungsbeispiels
beschränkt, sondern können willkürlich sein.
Im Schritt 141 wird geprüft, ob eine Abwärts-Flag gesetzt
ist. Die Abwärts-Flag ist insbesondere gesetzt,
wenn ein Befehl für eine Cursorabwärtsbewegung eingegeben
wurde und die Abwärts-Flag ist rückgestellt, wenn
der Befehl für eine Cursoraufwärtsbewegung eingegeben
wurde. Unter der Annahme, daß ein Befehl für eine
Cursorabwärtsbewegung eingegeben wurde, wird nach
Schritt 141 der Schritt 142 durchgeführt und die CPU 21
prüft, ob irgendwelche Textdaten hinter den den Zeilen
auf dem Schirm 44 entsprechenden Zeilen im Speicher 3
gespeichert sind. Ist die Antwort im Schritt 142 "JA",
dann läuft das Programm nach Schritt 144 ab und es wird
eine normale Schirmverschiebefunktion durchgeführt, und zwar
wie dies oben angegeben ist, ohne Bewegung des Cursors
aus der Zeile 16. Ist die Antwort im Schritt 142 jedoch
"NEIN", dann folgt Schritt 143 und, sofern die Cursorposition
nicht an der Unterkante des Schirms ist, der
Schritt 107. Da der Inhalt des Registers SLR unverändert
bleibt und derjenige des Y-Registers um "1"
erhöht wird, wird nur die Cursorposition um eine Zeile
nach unten verschoben, ohne daß ein Schirmverschieben
erfolgt. Sind keine Textdaten gespeichert, wenn die
Cursorposition zur Unterkante des Schirmes 44 nach dem
oben angegebenen Vorgang verschoben ist, dann läuft das
Programm von Schritt 143 zu 144 und die angezeigten
Daten werden vertikal verschoben und verlassen Zeile um Zeile den
Schirm.
Wurde andererseits ein Befehl für eine Cursoraufwärtsbewegung
eingegeben, bei der die Abwärs-Flag rückgestellt
ist, dann wird nach Schritt 141 der Schritt 145
durchgeführt, in dem die CPU 21 prüft, ob vor der der
ersten Zeile im Schirm 44 entsprechenden Zeile im
Speicher 3 Textdaten gespeichert sind. Ist die Antwort
im Schritt 145 "JA", dann folgt Schritt 144 und es wird
das normale Schirmverschieben durchgeführt, und zwar wie
zuvor angegeben, ohne Änderung der Cursorposition auf
dem Schirm. Ist jedoch im Schritt 145 die Antwort
"NEIN", dann läuft das Programm nach Schritt 146 und es
wird geprüft, ob sich der Cursor an der Oberkante des
Schirms 44 befindet. Ist dies im Schritt 146 nicht der
Fall, dann folgt Schritt 107. Da nur der Inhalt des
Registers Y um "1" erniedrigt wurde, ohne daß der
Inhalt des Registers SLR verändert wurde, wird lediglich
die Cursorposition um eine Zeile nach oben geschoben,
ohne daß ein Verschieben der angezeigten Daten
erfolgt. Sind keine Dokument- oder Textdaten gespeichert,
wenn die Cursorposition den oberen Rand des Schirms 44
erreicht, nach dem der obengenannte Vorgang wiederholt
wurde, dann läuft das Programm von Schritt 146 zum
Schritt 144 und die angezeigten Daten werden vertikal verschoben
und verlassen eine Zeile nach der anderen den Schirm,
ohne daß die Cursorposition auf dem Schirm 44 bewegt
wird.
Ein weiteres Ausführungsbeispiel der vorliegenden Erfindung
wird unter Bezugnahme auf Fig. 6 beschrieben.
Wenn bei diesem Ausführungsbeispiel der Cursor in einem
vorbestimmten mittleren Bereich getrennt von dem oberen
und unteren Rand des Schirmes durch eine vorbestimmte
Anzahl von Zeilen angeordnet ist, dann bewegt sich der
Cursor normal, das heißt, entweder vertikal oder horizontal.
Befindet sich jedoch der Cursor am oberen oder
unteren Rand, wenn ein Befehl für eine Cursoraufwärts-
oder -abwärtsbewegung eingegeben wird, dann erfolgt eine vertikale
Schirmverschiebung, ohne daß sich die Cursorposition grundsätzlich
ändert. Wird jedoch die gleiche Taste wiederholt
betätigt und es befinden sich keine anzuzeigenden
Textdaten mehr im Speicher 3, dann werden nicht die
angezeigten Daten verschoben, sondern der Cursor wird in
Richtung des oberen oder unteren Randes des Schirms
bewegt. Erreicht der Cursor den Rand des Schirms, dann
erfolgt ein Schirmverschieben ohne Cursorbewegung. Bei dem
vorliegenden Ausführungsbeispiel ist die vorbestimmte
Anzahl von Zeilen = "3". Auch bei diesem Ausführungsbeispiel
kann der Inhalt der Register Y und SLR
beliebige Werte annehmen.
Wird die Taste für eine Cursoraufwärts- oder -abwärtsbewegung
gedrückt, dann ergibt sich eine Verarbeitung
gemäß dem Flußdiagramm der Fig. 6 und dem Schritt 150
folgt Schritt 151 zur Aktualisierung der Register X
und Y gemäß dem Cursorbefehl innerhalb des Anzeigebereichs.
Im einzelnen bedeutet dies, daß bei Eingabe
des Befehls für eine Cursoraufwärtsbewegung der Inhalt
des Registers Y um "1" verringert wird (sonst wird er
um "1" erhöht). Hiernach wird im Schritt 152 geprüft,
ob der Inhalt des Registers Y um "3" größer oder
kleiner als derjenige des Registers SLR ist. Unter der
Annahme, daß sich der Cursor unterhalb der "4." Zeile
des Schirms 44 vor dem Schritt 151 befindet, wird der
Inhalt des Registers Y um "1" erhöht, wenn sich der
Ablauf in Schritt 151 in der Cursorabwärtsbewegungsbetriebsart
befindet, und die Differenz zwischen dem
Inhalt des Registers Y und des Registers SLR 4 überschreitet.
Somit wird nach Schritt 152 der Schritt 165
ausgeführt. Befindet sich jedoch der Cursor in der "4."
Zeile des Schirms 44, wenn der Cursoraufwärtsbewegungsbefehl
eingegeben wird, dann wird der Inhalt des
Registers Y um "1" verringert. Der Inhalt des Registers
Y wird somit "3" und Schritt 153 folgt dem Schritt 152.
Befindet sich der Cursor oberhalb der zweiten Zeile des
Schirms 44, dann bedeutet dies, daß vor der dem Inhalt
des SLR-Registers entsprechenden Adresse im Speicher 3
keine Daten vorhanden sind. Hierfür wird Schritt 154
verwendet. Ist der aktuallisierte Inhalt des Registers
Y um "3" größer als derjenige des SLR-Registers oder
kleiner, dann wird der Schritt 153 durchgeführt und es
wird geprüft, ob der Inhalt des Registers Y kleiner als
derjenige des Registers SLR ist. Ist die Antwort im
Schritt 153 "JA", das heißt, daß sich der Cursor am
oberen Rand des Schirms 44 befindet und der Cursoraufwärtsbewegungsbefehl
eingegeben ist, dann wird Schritt
155 durchgeführt und der Inhalt des SLR-Registers wird
um "1" verringert. Das Ergebnis ist, daß der Inhalt des
Registers Y gleich demjenigen des Registers SLR wird.
Hierauf wird in Schritt 156 der Inhalt des Speichers 3,
basierend auf dem Inhalt des Registers SLR, angezeigt
und der Cursor wird ebenfalls angezeigt, was die Verarbeitung
beendet. Der Schritt 156 entspricht den
Schritten 107 bis 113 des ersten Ausführungsbeispiels,
da im vorliegenden Fall der Inhalt des Registers SLR um
"1" verringert wird, während die angezeigten Daten um
eine Zeile nach unten verschoben und die Cursorposition
auf Schirm 44 unverändert gelassen wird.
Ist die Antwort im Schritt 153 "NEIN", dann folgt
Schritt 154 und es wird geprüft, ob anzuzeigende Daten
vor derjenigen Adresse im Speicher 3 vorhanden sind,
die dem Inhalt des Registers SLR entspricht. Befindet
sich der Cursor auf der 2. Zeile des Schirms 44 im
Schritt 150 und wurde der Cursoraufwärtsbewegungsbefehl
eingegeben, dann läuft das Programm von Schritt 154
nach Schritt 156, da wie zuvor keine anzuzeigenden
Daten vorhanden sind und der Cursor verschiebt sich in
der Richtung, die durch den Befehl angegeben wird, ohne
daß die angezeigten Daten verschoben werden. Befindet
sich der Cursor auf der "3." Zeile des Schirms 44 im
Schritt 150 und sind anzuzeigende Daten vorhanden, dann
wird Schritt 155 durchgeführt und der Inhalt des
Registers SLR wird um "1" erniedrigt. Das Ergebnis ist,
daß die angezeigten Daten nach unten verschoben werden,
während die Cursorposition auf Schirm 44 unverändert
bleibt.
Ist im Schritt 152 die Antwort "NEIN", dann läuft das
Programm nach Schritt 165 und es wird geprüft, ob die
Differenz zwischen dem Inhalt der Register Y und SLR
größer als oder gleich "28" ist. Befindet sich der
Cursor zwischen der "5." und "26." Zeile des Schirms im
Schritt 150 und ist der Cursoraufwärtsbefehl eingegeben,
nachdem der Cursor auf die "4." Zeile eingestellt
wurde oder ist der Cursorabwärtsbewegungsbefehl
eingegeben, nachdem der Cursor auf die "27." Zeile eingestellt
wurde, dann ist die Antwort im Schritt 165
"NEIN". Der Ablauf geht nach Schritt 156 mit dem Ergebnis,
daß der Cursor in einer Richtung bewegt wird,
die durch den Befehl angegeben wird, und zwar ohne Verschieben
der angezeigten Daten.
Ist im Schritt 165 die Antwort "JA", dann folgt Schritt
166. Im einzelnen bedeutet dies, daß bei Einstellung
des Cursors auf den unteren Rand oder auf die "28."
oder "29." Zeile des Schirms 44 und Eingabe des Cursorabwärtsbewegungsbefehls
der Schritt 166 durchgeführt
wird, in dem geprüft wird, ob beim Cursor in einer
Position auf der "30."Zeile des Schirms 44 der Cursorabwärtsbewegungsbefehl
eingegeben ist. In diesem Falle
folgt Schritt 168 und der Inhalt des Registers SLR wird
um "1" erhöht. Hiernach folgt Schritt 156. Die angezeigten
Daten werden somit ohne Änderung der Cursorposition
nach oben verschoben. Ist jedoch im Schritt 166
die Antwort "NEIN", dann läuft das Programm nach
Schritt 167 und es wird geprüft, ob anzuzeigende Daten
nach derjenigen Adresse im Speicher 3 vorhanden sind,
die der untersten Zeile des Schirms 44 entsprechen. Ist
im Schritt 167 die Antwort "JA", dann werden die
Schritte 168 und 156 durchgeführt und die angezeigten
Daten werden ohne Änderung der Cursorposition nach oben
verschoben. Ist jedoch im Schritt 167 die Antwort
"NEIN", dann springt das Programm nach Schritt 156 und
der Cursor wird ohne Verschieben der angezeigten Daten in
eine Richtung verschoben, wie sie durch den Eingangsbefehl
angegeben wird.
Der vorstehend beschriebene Ablauf wird nun bezüglich
Eingabedaten zusammengefaßt. Es sei beispielsweise
angenommen, daß der Speicherinhalt des Speichers 3, in
dem anzuzeigende Daten vorhanden sind, auf dem Schirm
44 angezeigt wird und daß sich der Cursor innerhalb der
24 Zeilen in der Schirmmitte befindet und der Cursoraufwärtsbewegungsbefehl
eingegeben wird. In dieser
Situation wird trotz der Verringerung des Inhalts des
Registers Y um "1" und der Beibehaltung des Inhalts des
Registers X bei jedem Betätigen der Cursorbewegungstaste
der Cursor aufeinanderfolgend bewegt, da die Cursorposition
noch nicht den Bereich innerhalb dreier Zeilen vom
oberen oder unteren Rand des Schirms erreicht hat; der
Cursor erreicht schließlich die Grenze des vorbestimmten
Bereichs. In dieser Situation prüft die Anzeigesteuerung,
ob in dem Anzeigespeicher vor der durch
den Inhalt des Registers SLR angezeigten Adresse anzuzeigende
Daten vorhanden sind. Ist dies der Fall, dann
verringert die Steuerung den Inhalt des Registers SLR um
"1" und bewirkt die Anzeige der Daten. Der Schirm wird
somit um eine Zeile nach unten verschoben, während die Cursorposition
auf der "3." Zeile beibehalten wird. Wird der
Cursoraufwärtsbefehl wiederholt eingegeben, dann wird
die gleiche Verschiebefunktion wiederholt, bis keine anzuzeigenden
Daten in dem Anzeigespeicher vor der durch
den Inhalt des Registers SLR angezeigten Adresse mehr
vorhanden sind. Sind keine anzuzeigenden Daten mehr
vorhanden, dann wird die Verschiebefunktion unterbrochen und
der Cursor wird von der "3." auf die "2." Zeile bewegt
und dann auf die "1." Zeile. Erreicht der Cursor die
oberste Zeile, dann verschiebt sich der Schirm abwärts und die
Daten verlassen eine Zeile nach der anderen an dem
unteren Rand den Schirm.
Unter der Annahme, daß der Cursorabwärtsbewegungsbefehl
zur Bewegung des Cursors von der Mitte des Schirms nach
unten eingegeben wird und der Cursor innerhalb des oben
angegebenen Bereichs angezeigt wird, erfolgt eine
Erhöhung des Inhalts des Registers Y um "1" und der
Cursor wird auf dem Schirm abwärts bewegt. Erreicht der
Cursor die Grenze des Dreizeilenbereichs, dann prüft
die Anzeigesteuerung 2, ob in derjenigen Zeile im
Speicher 3, die dem Inhalt des Registers SLR plus "30"
entspricht, anzuzeigende Daten vorhanden sind. Wird
dies festgestellt, dann wird der Inhalt des SLR-
Registers um "1" erhöht und die festgestellten Daten
werden angezeigt. Somit werden die angezeigten Daten um
eine Zeile nach oben verschoben, während die Cursorposition
auf der "28." Zeile des Schirms beibehalten
wird. Bewegt sich der Cursor nacheinander nach unten,
dann wird die gleiche Verschiebefunktion wie zuvor beschrieben
wiederholt, bis die angezeigten Daten in der
Zeile im Speicher 3, die dem Inhalt des Registers SLR +
"30" entsprechen, nicht vorhanden sind. Sind keine
angezeigten Daten mehr vorhanden, dann wird die Verschiebefunktion
unterbrochen und der Cursor von der "28." in
die "29." Zeile bewegt. Erreicht der Cursor den unteren
Rand des Schirms, dann werden die angezeigten Daten
wiederum nach oben verschoben und verlassen den Schirm
eine Zeile nach der anderen am oberen Rand.
Wird die Taste für die Cursoraufwärtsbewegung oder
-abwärtsbewegung betätigt, dann bewegt sich der Cursor
frei innerhalb des Bereichs der 24 mittleren Zeilen und
wenn er die "3."Zeile vom oberen oder unteren Rand des
Schirms erreicht, dann werden die angezeigten Daten
nach unten oder oben verschoben, während der Cursor seine
Position beibehält. Somit kann die Schirmverschiebefunktion
auch dann durchgeführt werden, wenn der Cursor noch
nicht vollständig den Rand des Schirms erreicht hat,
was eine leichte Erfassung des Textes ermöglicht. Auch
kann in dieser Cursorposition ein Text unmittelbar
korrigiert werden. Bei dem vorliegenden Ausführungsbeispiel
ist der Cursorbewegungsbereich in den 24
mittleren Zeilen, es ist jedoch klar, daß er beliebig
eingestellt werden kann.
Die zuvor beschriebenen Ausführungsbeispiele zeigen,
daß angezeigte Daten verschoben werden können, während
der Cursor in einer mittleren Position des Schirms sich
befindet und gut zu sehen ist, was eine leichte Erfassung
des gesamten Textes oder Dokumentes ermöglicht.
Claims (6)
1. Verfahren zum vertikalen Positionieren eines auf einem Bildschirm
einer Textverarbeitungsvorrichtung darstellbaren Cursors auf eine
gewünschte Position eines die Zeilenzahl des Bildschirms übersteigenden
gespeicherten Textes, der zur Darstellung vertikal über den Bildschirm
verschiebbar ist,
dadurch gekennzeichnet, daß die vertikale
Positionierung des Cursors mit der Verschiebung des darzustellenden
Textes so gekoppelt wird, daß der Cursor solange in einem mittleren
Bereich des Bildschirms gehalten wird, bis beim Verschieben des Textes
die letzte oder erste Textzeile am unteren bzw. oberen Rand des
Bildschirms erscheint, und daß von einer Verschiebung des Textes
automatisch auf eine entsprechende Verschiebung des Cursors umgeschaltet
wird, sobald die letzte bzw. erste Textzeile den unteren bzw. oberen Rand
des Bildschirms erreicht hat.
2. Verfahren nach Anspruch 1,
dadurch gekennzeichnet, daß der mittlere Bereich des
Bildschirms von einer Zeile gebildet wird.
3. Verfahren nach Anspruch 1,
dadurch gekennzeichnet, daß der mittlere Bereich des
Bildschirms von mehreren Zeilen gebildet wird.
4. Verfahren nach einem der Ansprüche 1 bis 3,
dadurch gekennzeichnet, daß eine Cursor-
Rückverschiebung in den mittleren Bereich des Bildschirms Priorität vor
einer Verschiebung des Textes hat.
5. Verfahren nach einem der Ansprüche 1 bis 4,
dadurch gekennzeichnet, daß der Cursor in dem
einzeiligen Bereich bzw. an der Bereichsgrenze bei mehrzeiligem Bereich
in seinen horizontalen Randstellungen bei einem weiteren horizontalen
Verschiebungsbefehl eine vertikale Verschiebung des Textes auslöst und an
den anderen horizontalen Rand springt, solange Textanfang bzw. -ende nicht
den jeweiligen Bildschirmrand erreicht hat.
6. Einrichtung zur Durchführung des Verfahrens nach einem der Ansprüche
1 bis 5,
gekennzeichnet durch zwei Cursor-Positionsregister
(X, Y), ein Zeilenspeicher-Adressenregister (TXADR), ein Bildschirmrandzeilenregister
(SLR), sowie Vergleichs- und Steuervorrichtungen (21),
die abhängig von betätigbaren Cursorbefehlstasten (11, 12, 13, 14) den
Inhalt der Cursor-Positionsregister (X, Y) mit vorgegebenen Werten
vergleichen und unter Auf- bzw. Abzählen der vorgenannten Register eine
Verschiebung des Textes oder eine Auf- bzw. Abbewegung des Cursors (45) auf
dem Bildschirm (43, 44) steuern.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60045642A JPS61204686A (ja) | 1985-03-07 | 1985-03-07 | 表示制御装置 |
JP60092423A JP2678270B2 (ja) | 1985-04-30 | 1985-04-30 | 表示制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3606858A1 DE3606858A1 (de) | 1986-09-11 |
DE3606858C2 true DE3606858C2 (de) | 1990-09-20 |
Family
ID=26385673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19863606858 Granted DE3606858A1 (de) | 1985-03-07 | 1986-03-03 | Anzeigevorrichtung mit in bezug auf eine cursorstellung durchrollender information |
Country Status (2)
Country | Link |
---|---|
US (1) | US4734689A (de) |
DE (1) | DE3606858A1 (de) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6188328A (ja) * | 1984-09-19 | 1986-05-06 | Canon Inc | 画像表示装置 |
US5206949A (en) * | 1986-09-19 | 1993-04-27 | Nancy P. Cochran | Database search and record retrieval system which continuously displays category names during scrolling and selection of individually displayed search terms |
US5349368A (en) * | 1986-10-24 | 1994-09-20 | Kabushiki Kaisha Toshiba | Machine translation method and apparatus |
JPH0634218B2 (ja) * | 1987-10-31 | 1994-05-02 | シャープ株式会社 | 情報ファイル装置の画像読取り表示方法 |
US5333247A (en) * | 1988-06-10 | 1994-07-26 | International Business Machines Corporation | Scrolling tool for text and graphics in a display system |
JP2784032B2 (ja) * | 1989-04-04 | 1998-08-06 | 株式会社日立製作所 | 画面表示切換方法及び画面表示切換装置 |
JPH071427B2 (ja) * | 1989-05-26 | 1995-01-11 | 株式会社日立製作所 | トレンドグラフ表示方式 |
US5075673A (en) * | 1989-06-16 | 1991-12-24 | International Business Machines Corp. | Variable speed, image pan method and apparatus |
US5107251A (en) * | 1989-08-25 | 1992-04-21 | Sun Microsystems, Inc. | Method and apparatus for detecting cursors |
AU6274490A (en) * | 1989-09-11 | 1991-04-18 | Motorola, Inc. | Selective call receiver |
WO1991016771A1 (en) * | 1990-04-23 | 1991-10-31 | Motorola, Inc. | Portable graphic display having integral display movement tracking |
US5757358A (en) * | 1992-03-31 | 1998-05-26 | The United States Of America As Represented By The Secretary Of The Navy | Method and apparatus for enhancing computer-user selection of computer-displayed objects through dynamic selection area and constant visual feedback |
US5526481A (en) * | 1993-07-26 | 1996-06-11 | Dell Usa L.P. | Display scrolling system for personal digital assistant |
JPH07105191A (ja) * | 1993-09-30 | 1995-04-21 | Fujitsu Ltd | 共有文書表示システム |
JP3349577B2 (ja) | 1993-12-30 | 2002-11-25 | セイコーエプソン株式会社 | 印字装置 |
JPH0944428A (ja) * | 1995-07-31 | 1997-02-14 | Canon Inc | ネットワーク画像処理システム |
US6532001B1 (en) | 1996-04-10 | 2003-03-11 | Snap-On Technologies, Inc. | Mouse control for scrolling switch options through screen icon for the switch |
US6057839A (en) * | 1996-11-26 | 2000-05-02 | International Business Machines Corporation | Visualization tool for graphically displaying trace data produced by a parallel processing computer |
JPH11184600A (ja) * | 1997-12-22 | 1999-07-09 | Sony Corp | 携帯情報端末装置、画面スクロール方法、記録媒体およびマイクロコンピュータ装置 |
SE511516C2 (sv) * | 1997-12-23 | 1999-10-11 | Ericsson Telefon Ab L M | Handburen displayenhet och metod att visa skärmbilder |
US6331866B1 (en) | 1998-09-28 | 2001-12-18 | 3M Innovative Properties Company | Display control for software notes |
JP4631150B2 (ja) * | 2000-10-31 | 2011-02-16 | ソニー株式会社 | 情報処理装置及び方法、並びに記録媒体 |
US6577296B2 (en) * | 2000-11-14 | 2003-06-10 | Vega Vista, Inc. | Fixed cursor |
US20030169280A1 (en) * | 2002-03-08 | 2003-09-11 | Kinpo Electronics, Inc. | Method and apparatus of scrolling a screen display corresponding to the movement of a cursor |
JP4148170B2 (ja) * | 2004-03-23 | 2008-09-10 | セイコーエプソン株式会社 | 表示ドライバ及び電子機器 |
CN100351762C (zh) * | 2004-07-30 | 2007-11-28 | 京瓷美达株式会社 | 电气设备及其控制方法 |
JP4170314B2 (ja) * | 2005-05-25 | 2008-10-22 | 株式会社スクウェア・エニックス | スクロール表示制御装置、プログラム、及び記録媒体 |
US9542091B2 (en) | 2010-06-04 | 2017-01-10 | Apple Inc. | Device, method, and graphical user interface for navigating through a user interface using a dynamic object selection indicator |
US9032338B2 (en) * | 2011-05-30 | 2015-05-12 | Apple Inc. | Devices, methods, and graphical user interfaces for navigating and editing text |
US9557913B2 (en) * | 2012-01-19 | 2017-01-31 | Blackberry Limited | Virtual keyboard display having a ticker proximate to the virtual keyboard |
US9898162B2 (en) | 2014-05-30 | 2018-02-20 | Apple Inc. | Swiping functions for messaging applications |
US9971500B2 (en) | 2014-06-01 | 2018-05-15 | Apple Inc. | Displaying options, assigning notification, ignoring messages, and simultaneous user interface displays in a messaging application |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2915673A1 (de) * | 1979-04-18 | 1980-10-30 | Olympia Werke Ag | Textbearbeitungseinrichtung mit einer anzeigeeinrichtung |
CA1168367A (en) * | 1980-11-20 | 1984-05-29 | John A. Aiken, Jr. | Bidirectional character definition |
US4495490A (en) * | 1981-05-29 | 1985-01-22 | Ibm Corporation | Word processor and display |
EP0108520B1 (de) * | 1982-10-11 | 1990-03-28 | Fujitsu Limited | Verfahren zur Steuerung von in einer Datenverarbeitungsanlage für Kartenbilddarstellungen angezeigten Bildfenstern |
DE3302230A1 (de) * | 1983-01-24 | 1984-07-26 | Siemens Ag | Verfahren und anordnung zum darstellen von texten an einer anzeigeeinheit einer textstation |
US4586035A (en) * | 1984-02-29 | 1986-04-29 | International Business Machines Corporation | Display terminal with a cursor responsive virtual distributed menu |
-
1986
- 1986-02-24 US US06/833,055 patent/US4734689A/en not_active Expired - Fee Related
- 1986-03-03 DE DE19863606858 patent/DE3606858A1/de active Granted
Also Published As
Publication number | Publication date |
---|---|
US4734689A (en) | 1988-03-29 |
DE3606858A1 (de) | 1986-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3606858C2 (de) | ||
DE3629104C2 (de) | ||
DE3346816C2 (de) | ||
DE3141571C2 (de) | Rechner mit einem Ein-/Ausgabe-Bildschirmsystem | |
DE3245610C3 (de) | Ein/Ausgabeeinheit für eine numerische Steuerung | |
DE3134282A1 (de) | Verfahren zur darstellung ideografischer zeichen und vergleichbarer graphiken | |
DE3320213C2 (de) | ||
DE3625390A1 (de) | Graphisches anzeigesystem mit beliebiger rberlappung von bildausschnitten | |
EP0026378A1 (de) | Verfahren zur Hervorhebung eines Bildbereiches innerhalb eines Bildes, das auf einem Bildschirm dargestellt wird | |
DE2936915C2 (de) | Verfahren und Vorrichtung zur Steuerung eines Ein-Aus-Anzeige-Wählsignals in einer Anzeige- und Ablaufsteuerung | |
DE3148685A1 (de) | Verfahren zur aenderung des zeichenvorrates einer ideografischen schreibmaschine | |
CH647877A5 (de) | Verfahren und schaltungsanordnung zur programmerstellung und/oder programmaenderung bei numerisch gesteuerten maschinen. | |
DE3100481A1 (de) | "verfahren und durchfuehrungsanordnung zum aufbau und zur wiedergabe graphischer informationen in form eines bildes auf einem wiedergabegeraet" | |
DE3914905C2 (de) | ||
DE3209187A1 (de) | Verfahren zur darstellung eines textes auf einer einzeiligen anzeigevorrichtung eines texterstellungsgeraetes | |
DE3151357C2 (de) | Einrichtung zum Steuern der Bewegung eines Cursors | |
DE3046037A1 (de) | Textbearbeitungsgeraet | |
DE3735654C2 (de) | Elektronischer Rechner | |
DE60006149T2 (de) | Verfahren zur steuerung einer berührungsempfindlichen oberfläche | |
EP0158718B1 (de) | Verfahren zum Steuern der Schreibposition in einer Schreib- oder ähnlichen Maschine für ein automatisches Unterstreichen eines Textabschnittes | |
DE3725194C2 (de) | ||
DE3138734C2 (de) | ||
DE3613740C2 (de) | ||
DE2223257C3 (de) | Sichtanzeigeeinrichtung zum Ziehen von Linien auf einer Kathodenstrahlröhren-Sichtanzeigefläche | |
DE69722765T2 (de) | Verfahren zur bestimmung der stiftgeschwindigkeit entlang einer graphischen tafel und für das ausführen des verfahrens adaptierte graphische tafel |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition |