DE69828994T2 - Sekundärbenutzerschnittstelle - Google Patents

Sekundärbenutzerschnittstelle Download PDF

Info

Publication number
DE69828994T2
DE69828994T2 DE69828994T DE69828994T DE69828994T2 DE 69828994 T2 DE69828994 T2 DE 69828994T2 DE 69828994 T DE69828994 T DE 69828994T DE 69828994 T DE69828994 T DE 69828994T DE 69828994 T2 DE69828994 T2 DE 69828994T2
Authority
DE
Germany
Prior art keywords
display
display area
user interface
video
controllable
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
Application number
DE69828994T
Other languages
English (en)
Other versions
DE69828994D1 (de
Inventor
D. David Nason
C. Thomas O'ROURKE
J. Scott Campbell
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
xSides Corp
Original Assignee
xSides Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=27375984&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE69828994(T2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Priority claimed from US08/975,268 external-priority patent/US6018332A/en
Application filed by xSides Corp filed Critical xSides Corp
Application granted granted Critical
Publication of DE69828994D1 publication Critical patent/DE69828994D1/de
Publication of DE69828994T2 publication Critical patent/DE69828994T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G1/00Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data
    • G09G1/06Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows
    • G09G1/14Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows the beam tracing a pattern independent of the information to be displayed, this latter determining the parts of the pattern rendered respectively visible and invisible
    • G09G1/16Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows the beam tracing a pattern independent of the information to be displayed, this latter determining the parts of the pattern rendered respectively visible and invisible the pattern of rectangular co-ordinates extending over the whole area of the screen, i.e. television type raster
    • G09G1/165Details of a display terminal using a CRT, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G1/00Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data
    • G09G1/06Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows
    • G09G1/14Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows the beam tracing a pattern independent of the information to be displayed, this latter determining the parts of the pattern rendered respectively visible and invisible
    • G09G1/16Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows the beam tracing a pattern independent of the information to be displayed, this latter determining the parts of the pattern rendered respectively visible and invisible the pattern of rectangular co-ordinates extending over the whole area of the screen, i.e. television type raster
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/20Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters
    • G09G3/34Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters by control of light from an independent source
    • G09G3/36Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters by control of light from an independent source using liquid crystals
    • G09G3/3611Control of matrices with row and column drivers
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/37Details of the operation on graphic patterns
    • G09G5/377Details of the operation on graphic patterns for mixing or overlaying two or more graphic patterns
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2310/00Command of the display device
    • G09G2310/06Details of flat display driving waveforms
    • G09G2310/061Details of flat display driving waveforms for resetting or blanking
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/12Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/02Graphics controller able to handle multiple formats, e.g. input or output formats
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/395Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
    • G09G5/397Arrangements specially adapted for transferring the contents of two or more bit-mapped memories to the screen simultaneously, e.g. for mixing or overlay

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Erfindungsgebiet
  • Die vorliegende Erfindung betrifft Computer-Benutzerschnittstellenanzeigen und insbesondere den Gebrauch einer Benutzerschnittstelle getrennt von der Standard-Benutzerschnittstellenanzeige.
  • 2. Beschreibung des Standes der Technik
  • Es gab eine Zeit als das populärste Betriebssystem für Personal Computer (DOS) über keine grafische Benutzerschnittstelle verfügte. Jedes Unternehmen konnte ein "Menü" oder "Gerüst" schaffen, das das erste nach dem Anlaufen des Computers gestartete Programm sein würde und dem Benutzer Optionen zum Starten und Verwalten verschiedener Anwendungen vorlegen würde. Obwohl Grafik-Programmierung in der DOS-Umgebung schwierig war, erzeugten einige Firmen sogar grafische Benutzerschnittstellen, die dann andere Programme starten konnten.
  • Microsoft Corporation, Redmond, Washington, führte eine solche grafische Benutzerschnittstelle zum Starten von Anwendungen ein, die "Windows" genannt wird. Die ersten drei Versionen von Windows waren einfach nur Anwendungen, die unter DOS liefen und eines von zahlreichen Elementen sein konnten, das aus einem vorher laufenden Menü oder Gerüst auszuwählen ist und von einer anderen Firma als Microsoft angeboten werden konnte. Dies erlaubte anderen Firmen, Benutzern Primärbenutzer-Schnittstellenprogramme anzubieten, ohne dass der Benutzer durch eine Microsoft-kontrollierte Benutzerschnittstelle geht.
  • Mit der Einführung von WindowsTM durch Microsoft präsentiert das anfängliche Laden des Betriebssystems von Anfang an eine von Microsoft entwickelte grafische Benutzerschnittstelle, die die ganze Bildschirmanzeige belegt. Wie bei ihren früheren Betriebssystem-Produkten arrangierte sich Microsoft mit Herstellern von Standard-Computerhardware, dieses Betriebsystem mit jedem verkauften Computer einzuschließen. Mit der Beherrschung dieses Marktes durch Microsoft war es für andere Software-Lieferanten unmöglich geworden, Benutzern eine Schnittstelle anders als ein Microsoft-Symbol in dem Microsoft-"Desktop", der aus der ganzen Bildschirmanzeige besteht, zu präsentieren. Dies führte zu einer Notwendigkeit nach Zugang zu einer Benutzerschnittstelle, die außerhalb der Standard-Computer-Bildschirmanzeige und daher unabhängig von den Diktaten von Microsoft für Elemente in ihrem "Desktop" präsentiert werden konnte.
  • Standard Personal Computer verwenden VGA oder Super VGA oder XGA Videoanzeigesysteme. Diese Anzeigesysteme arbeiten in standardisierten Grafik-Modi wie 640 × 480 Pixel, 800 × 600 Pixel, 1024 × 768 Pixel und 1280 × 1024 Pixel. Wenn einer dieser Anzeigemodi ausgewählt wird, ist dies die ganze zur Anzeige verfügbare Fläche. In der Microsoft Windows-Umgebung weist der Benutzer das Windows-Betriebssystem an, einen dieser Standard-Anzeigemodi auszuwählen, und das Windows-Betriebssystem präsentiert dann alle Anwendungen und ihre Icons in dem ausgewählten Anzeigebereich. Zur Zeit gibt es keine Möglichkeit, den Windows-"Desktop" zu veranlassen, weniger als den ganzen Anzeigebereich zu verwenden und dennoch wie gedacht zu funktionieren und einem anderen Programm von einem anderen Lieferanten zu erlauben, den Rest zu kontrollieren. Was benötigt wird, ist die Fähigkeit, behindernden Videospeicher aus dem Weg zu räumen und sicherzustellen, dass nicht anderes, was behindernd sein könnte, später diesem Raum zugeteilt wird.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die Erfindung ist ein Verfahren, das bereitgestellt wird, um der grafischen Standard-Benutzeranzeigeschittstelle eine neue Benutzerschnittstelle hinzuzufügen und diese zu verwenden, z.B. in dem Rand jenseits der Standard-Schirmanzeigefläche. Herkömmliche Videosysteme wie VGA, SVGA und XGA enthalten einen definierten Rand, der die Anzeigefläche umgibt. Der ursprüngliche Zweck dieses Randes war, dem horizontalen und vertikalen Rücklauf der Elektronenkanone in einer Kathodenstrahlröhrenanzeige eine angemessene Zeit einzuräumen. Mit dem Erscheinen von LCD-Displays und da die Recklaufgeschwindigkeiten in modernen Monitoren zugenommen haben, ist es aber jetzt möglich, eine Benutzer-Schnittstellenanzeige in diesem Rand zu präsentieren. Der Rand, der als eine Benutzerschnittstelle gesteuert werden kann, ist ein Abschnitt von dem, was als "Overscan" bekannt ist. Diese Erfindung ist ein Verfahren zum Präsentieren von einer oder mehreren zusätzlichen Sekundär-Benutzerschnittstellen, z.B. in dem Overscan-Bereich, der die herkömmliche Benutzer-Schnittstellenanzeige, oft Desktop genannt, umgibt.
  • Wenn die Elektronenkanone in einer CRT zum linken oder oberen Rand des Bildschirms zurückspringt, benötigt sie eine bedeutende Menge an Zeit im Vergleich zu der Präsentation einer abgetasteten Datenzeile. Während des Rüdklaufs wird die Elektronenkanone abgeschaltet ("ausgetastet"). Wenn die für den Rücklauf benötigte Austastreit gleich dem Betrag an verfügbarer Zeit ist, gibt es keinen brauchbaren Overscan. Die Rücklaufgeschwin digkeiten moderner Monitore sind jedoch viel schneller geworden, sodass eine bedeutende Menge an Zeit übrig ist, wenn die Elektronenkanone nicht ausgetastet werden muss, was einen anzeigefähigen Rand gestattet. Obwohl beim Stand der Technik der Rand gewöhnlich "schwarz" ist (die Kanone ist ausgeschaltet), ist wohl bekannt, zu spezifizieren, dass dem Rand irgendeine von sechs Farben gegeben werden soll. Standard BIOS erlaubt eine Spezifikation dieser Farbe. Die gewünschte Farbe wird einfach in einem der Register für den Video-Controller spezifiziert. Keine Daten für diese Farbe werden in dem Videospeicherpuffer für die Anzeige gespeichert. Diese Erfindung errichtet einen zusätzlichen Videopuffer für den Rand und erlaubt es, diesen Puffer mit Anzeigedaten wie der reguläre Anzeigepuffer zu beschreiben. Die Anzeigefläche wird dadurch an einer oder mehreren Kanten erweitert, um eine vorher unsichtbare, sichtbare Fläche bereitzustellen. Die Pixel in dieser neu sichtbaren Fläche der Anzeige werden für Programme durch eine Anwendungsprogrammierungs-Schnittstellen-(API)Komponente dieser Erfindung zugänglich gemacht. Ein Programm, das eine grafische Benutzerschnittstelle enthält, kann in der früher ausgetasteten Fläche der Anzeige angezeigt werden, was die zugängliche Fläche der Anzeige ohne Hardware-Modifikation funktionell vergrößert.
  • Die Erfindung umfasst ein Verfahren entsprechend dem in dem unabhängigen Anspuch 1 beanspruchten, einen Anzeige-Controller entsprechend dem in dem unabhängigen Anspruch 22 beanspruchten sowie ein computerlesbares Speichermedium entsprechend dem in dem unabhängigen Anspruch 44 beanspruchten.
  • In einer ersten Ausführung wird nur die vertikale Abmessung vergrößert, und die Overscan-Benutzerschnittstelle wird über oder unter der Primär-Anzeigefläche präsentiert. Alternativ kann die horizontale Abmessung vergrößert und die Overscan-Benutzerschnittstelle links oder rechts von der Primär Anzeigefläche angezeigt werden. Desgleichen kann das Schnittstellenbild auf einer oder allen vier Seiten der Primär-Anzeigefläche angezeigt werden.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt eine Standardanzeige des Standes der Technik.
  • 2 zeigt eine Standardanzeige mit einer Overscan-Benutzerschnittstelle in der unteren Overscan-Fläche.
  • 3 zeigt eine Standardanzeige mit einer Overscan-Benutzerschnittstelle auf allen vier Rändern der Anzeige.
  • 4 zeigt die Komponenten des Computersystems, die das Video-Anzeigesystem betreffen.
  • 5 zeigt einen Cursor oder Zeiger in der Overscan-Benutzerschnittstelle und den Hotspot darüber in der Standardanzeige.
  • 6 zeigt den nutzbaren Rand in dem vertikalen Overscan und dem horizontalen Overscan, der die Standardanzeige umgibt,
  • 7 ist ein Übersichts-Flussdiagramm, das die Arbeitsweise einer bevorzugten Ausführung der vorliegenden Erfindung zeigt.
  • 8 ist ein Flussdiagramm der Unterschritte im Display-Identifizieren-Schritt 102 von 7.
  • 9 ist ein Flussdiagramm der Unterschritte des Schrittes zum Ändern der Anzeigeauflösung 114 in 7.
  • 10 ist ein Flussdiagramm der Unterschritte des Anzeige-Malen-Schrittes 120 von 7.
  • 11 ist ein Flussdiagramm der Unterschritte des Schrittes zum Freigeben linearer Adressierung 112 von 7.
  • 12 ist ein Flussdiagramm der Unterschritte der Nachrichten-Verarbeitungsschleife von 7.
  • 13 ist ein Flussdiagramm der Unterschritte des Schrittes zum Prüfen von Maus- und Keyboard-Ereignissen 184 in 12.
  • 14 ist ein Flussdiagramm der Unterschritte des Schrittes zum Ändern der Emulationsauflösung 115 in 7.
  • AUSFÜHRLICHE BESCHREIBUNG EINER BEVORZUGTEN AUSFÜHRUNG
  • Die vorliegende Erfindung umfasst Verfahren zum Bereitstellen und Verwenden einer Sekundär- oder Zusatz-Benutzerschnittstelle, vorzugsweise einer sekundären grafischen Benutzerschnittstelle oder Sekundär-GUI, die auf der Anzeige wenigstens scheinbar gleichzeitig mit der Primär-Benutzerschnittstelle, z.B. der herkömmlichen Desktop-GUI, vorhanden sein soll.
  • Bei einer bevorzugten Ausführung stellen Programmier-Mechanismen und Schnittstellen in einem Computersystem die Sekundär-GUI in einer bequemen und gegenwärtig unbenutz ten potenziellen Anzeigefläche bereit, durch Bereitstellen von Zugang und Sichtbarkeit für einen Abschnitt der Monitoranzeige, der normal ignoriert wird und unzugänglich ist (im Folgenden "Overscan-Bereich"). 1 zeigt einen Standard-Anzeige-Desktop des Standes der Technik, der Microsoft WindowsTM fährt. In dem Desktop 31 befinden sich die Taskleiste 32 und Desktop-Icons 33.
  • Bei einer bevorzugten Ausführung der vorliegenden Erfindung wird ein grafisches Benutzer-Schnittstellenbild auf eine oder mehrere Seiten des Overscan-Bereichs gemalt, wie in 2 und 3 gezeigt. 2 und 3 zeigen Darstellungen einer Super VGA (SVGA) Anzeige, wobei zusätzlich eine grafische Balken-Benutzerschnittstelle in dem Overscan-Bereich angezeigt wird. Der Overscan-Benutzschnittstellenbalken 30 ist definiert, außerhalb der Grenzen des "Desktop"-Anzeigebereichs 31 zu liegen. In 2 ist die Anzeige modifiziert, um eine grafische Benutzerschnittstelle 30 in einem 20 Pixel hohen Balken unter der Unterkante zu enthalten. In 3 ist die Anzeige modifiziert, um eine grafische Benutzerschnittstelle in vier je 20 Pixel hohen/breiten Balken außerhalb aller vier Anzeigekanten zu enthalten: ein unterer Balken 30, ein linker Balken 34, ein rechter Balken 36 und ein oberer Balken 38.
  • Die Overscan-Schnittstelle kann Schaltflächen, Menüs, Anwendungs-Ausgabesteuerungen (z.B. ein "Ticker-Fenster"), Animationen und Benutzer-Eingabesteuerungen (z.B. Editierfelder) enthalten, ist aber nicht darauf begrenzt. Weil die Overscan-Schnittstelle durch andere Anwendungen, die in dem Standani-Desktop laufen, nicht getrübt wird, kann die Overscan-Schnittstelle dauernd sichtbar sein oder sie kann zwischen einem sichtbaren und einem unsichtbaren Zustand basierend auf einer Anzahl von Programmierparametern umschalten (einschließlich, aber nicht darauf begrenzt, des Zustands des aktiven Fensters, des Zustands einer Umschall-Schaltfläche usw.).
  • 4 zeigt die Hauptkomponenten des Computersystems, die das Video-Anzeigesystem betreffen. In der Software-Komponente 5 befinden sich das Betriebssystem 63 und Anwendungen 61. In den geschützten Modi moderner Systeme haben Anwendungen 61 keinen direkten Zugang zu den Video- oder Grafik-Treibern 64 oder Hardware-Komponenten, z.B. die Videokarte 66, die den Video-Chipsatz 66A, 66B und 66C enthält. Abstraktionsschichten, z.B. Anwendungsschnittstelle (AOI) 60 und/oder Direkt-API 62, stellen begrenzten Zugang bereit, oft durch das Betriebssystem 63.
  • Die Erfindung stellt ein Verfahren zum Malen und Zugreifen auf einen Bereich der Computeranzeige in Grafikmodi bereit, die normalerweise nicht zugänglich sind oder benutzt werden. In den Microsoft Windows-Umgebungen (einschließlich Windows 95 und Derivaten und Win dows NT 4.0 und Derivaten) und anderen zeitgemäßen Betriebsumgebungen wird der primäre Anzeigebereich "Desktop" durch das Betriebssystem so zugewiesen, dass er ein Satz von vorbestimmten Video-"Modi" ist, wie z.B. in Tabllen 1 und 2 unten dargelegt, von denen jeder mit einer spezifischen Pixelauflösung vordefiniert ist. Der zugängliche Bereich der Computeranzeige kann daher nicht modifiziert werden, außer durch Auswählen eines anderen der verfügbaren vordefinierten Modi.
  • TABELLE 1: ROM BIOS Videomodi
    Figure 00060001
  • Figure 00070001
  • TABELLE 2: In der VESA BIOS Erweiterung definierte SVGA-Videomodi
    Figure 00070002
  • Figure 00080001
  • Wie in 6 gezeigt, wird ein angezeigtes Bild "overscanned". Das heißt, die anzeigten Videopufferdaten belegen weniger als die ganze treibbare Schirmgröße. Die Breite des nutzbaren Overscan-Randes hängt von dem Betrag des Horizontal-Overscans 52 vermindert um die Horizontalaustastung 54 und dem Betrag des Vertikal-Overscans 53 vermindert um die Vertikalaustastung 55 ab.
  • In einer ersten bevorzugten Ausführung wird nur ein Rand am Boden des Standard-Anzeigebereichs benutzt. Folglich müssen nur die Vertikal-Steuerparameter für den Kathodenstrahlröhren-(CTR)Controller, gezeigt als Steueregister 6H, 16H, 11H, 10H, 12H und 15H in 4, justiert werden. Diese Parameter und andere werden in Tabelle 3 unten gezeigt.
  • TABELLE 3: Vertikal-Timing-Parameter für CR-Programmierung
    Figure 00090001
  • In den Standard 640 × 480 Grafikmodus beträgt die nominelle Horizontal-Abtastrate 31.5 kHz (31,500 Mal pro Sekunde) mit einer Vertikal-Abtastrate 60 Hz (60 Bilder pro Sekunde). Die Zahl von Zeilen in einem Bild ist somit 31,500/60 oder 525. Weil nur 480 Datenzeilen angezeigt werden müssen, gibt es 525–480 oder 45 Zeilen, die für den Vertikal-Overscan zur Verfügung stehen. Es bleibt mehr als genug Spielraum für den Rücklauf, der nur die Zeit von 2 Zeilen kostet. Die bevorzugte Ausführung verwendet 20 Zeilen für die erfundene Overscan-Anzeige.
  • Das offenbarte Verfahren der bevorzugten Ausführung der vorliegenden Erfindung wird durch Erfüllen von drei Forderungen zu Stande gebracht:
    • (1) Adressieren und Modifizieren der sichtbaren Auflösung des Video-Anzeigesystems so, dass Abschnitte des Overscan-Bereichs sichtbar sind, wie in 6 gezeigt,
    • (2) Adressieren und Modfizieren des Video-Anzeigeinhalts für den sichtbaren Abschnitt des Overscan-Bereichs, und
    • (3) Bereitstellen einer Anwendungsprogrammierungsschnittstelle (API) oder anderen Mechanismusses, um Anwendungen zu erlauben, diese Funktionalität zu implementieren.
  • 7 und die in 813 bereitgestellten weiteren Details und Unterschritte stellen ein Flussdiagramm einer Implementierung einer bevorzugten Ausführung der vorliegenden Erfindung bereit, die die oben beschriebenen Forderungen erfüllt. Die Umgebung dieser Implementierung ist eine Standard Microsoft WindowsTM Betriebsumgebung, die Microsoft Visual C und Microsoft MASM für die Entwicklungsplattform verwendet. Dies bedeutet nicht, dass diese Erfindung im Umfang auf diese Umgebung oder Plattform beschränkt ist. Die Erfindung könnte in jeder grafischen Schnittstellenumgebung, z.B. OSF Motif, Apple OS, Java OS und andere, implementiert werden, in der ähnliche Video-Standards (VGA, SVGA. XGA, 8514/A) praktiziert werden. Die Handbücher PC Video Systems von Richard Wilton, veröffentlicht von Microsoft Press und Prorammer's Guide für die EGA-, VGA- und Super VGA-Karten von Richard F. Ferrano, veröffentlicht von Addison Wesley liefern mehr als angemessene Hintergrundinformation, um diese Ausführung zu implementieren.
  • Nun besonders auf 7 verweisend versucht nach Initialisierung das Programm in Schritt 102 den Anzeigetyp und die von dem Anzeigetreiber benutzte gegenwärtige Stelle in Speicher zu bestimmen, um die Größe und Stellen aller vorzunehmenden Anzeigemodfikationen zu bestimmen, z.B. die Größe und Stelle des zu verwendenden Overscan-Bereichs.
  • Wie in 8 weiter im Einzelnen beschrieben, fragt das Programm zuerst in Schritt 131 die Hardware-Registrierung ab, um zu versuchen, den registrierten Hardware-Typ zu bestimmen. Wenn erfolgreich, ermittelt das Programm dann Kompatibilitäts-Information, Schritt 135, um zu verifizieren, dass das Programm diesen Anzeigetyp unterstützt, und um Speicher-Zuteilungsinformation zu ermitteln.
  • Wenn die Hardware-Registrierinformation nicht verfügbar ist, wie in Schritt 131 bestimmt, oder der in Schritt 131 bestimmte Anzeigetyp nicht unterstützt wird, wie durch Schritt 104 bestimmt, kann das Programm einen alternativen Weg verwenden, gezeigt als Unterprogramm Hardware-Abfragen, Schritte 135 in 8, um das BIOS in Schritt 134 und den Chipsatz in Schritt 136 nach ähnlicher Information, wie direkt unten beschrieben, abzufragen.
  • Wenn in Schritt 134 auf das BIOS zuzugreifen ist, wird zuerst in Schritt 132 physikalischer Speicher zugeteilt und darauf unter Verwendung von Microsoft DPMI (DOS Protected Mode Interface) zugegriffen, um ihn in die lineare Speicheradresse abzubilden, in der das BIOS residiert, unter Verwendung von DPMI, um lineare BIOS-Adresse physikalischem Speicher zuzuweisen, Schritt 133.
  • Danach fragt das Programm das BIOS in Lesen-BIOS-Block Suchen nach VGA/XVA-Typ und Hersteller-ID ab, Schritt 134. Wenn erfolgreich, werden der Treiber und Chipsatz werter nach dem genauen Chipsatz abgefragt, um den Anzeigetyp und Speicherstelle in Treiber/Chipsatz Abfragen zu bestimmen, Schritt 136.
  • Wenn die Kompatibilitäts-Information kein Standard VGA, SVGA, XGA oder 8514/A Signatur angibt, Schritt 134, gibt diese Routine einen Fehler zurück. Wenn eine bekannte Chipsatz-Hersteller-ID gefunden wird, kann der Treiber und/oder Chipsatz mit herstellerspezifischen Routinen abgefragt werden, Schritt 136, um den spezifischen Chipsatz zu identifizieren, und, wenn nötig, zu initialisieren.
  • Wenn in Schritt 104 das Programm außerstande war, den Anzeigetyp zu identifizieren, weil entweder die Registrierungsabfrage in Schritt 131 oder die Hardware-Abfrage in Schritt 135 erfolglos war, kann der Benutzer in Laufen im Windows-Modus, Schritt 116, dahin gehend abgefragt werden, ob das Programm als eine Standard "Anwendungsleiste" oder "Werkzeugleiste" weiterlaufen soll. Das Programm kann entweder abtreten oder als eine Werkzeugleiste auf dem Desktop weiterlaufen.
  • Wenn zu 8 zurückkehrend ein unterstützer Anzeigetyp erfasst wird, bestimmt das Programm in Ränder Identifizieren die Schirmränder, auf die zuzugreifen ist, um im Overscan anzuzeigen, Schritt 106, basierend auf Benutzer-Präferenzen, und bestimmt, wenn nötig, ob genügend Videospeicher vorhanden ist, um die Anzeigeänderungen vorzunehmen. Wenn z.B. der Schirm gegenwärtig auf eine 1024 × 768 Auflösung bei 16 Bit pro Pixel eingestellt ist, und das Programm vier grafische Schnittstellenbalken, einen auf jeder Kante, wobei jeder Balken 20 Pixel tief ist, einschließen soll, muss das Programm prüfen, ob der Videospeicher größer als 1.7 MB ist (benötigte Zahl von Bytes = Pixelbreite × Bits pro Pixel × Pixelhöhe).
  • Auf die Controller-Register 6H, 16H, 11H, 10H, 12H und 15H, wie in 4 gezeigt und in Tabelle 3 aufgeführt, kann durch Standard-Eingabe/Ausgabe-Ports unter Verwendung von Standard-Eingabe/Ausgabe-Funktionen zugegriffen werden. Die CR-Register 6H, 16H, 11H, 10H, 12H und 15H müssen zuerst entriegelt werden, wie in Unlock-CRTC-Registern angegeben, Schritt 108 in 7, um sie beschreibbar zu machen. Sie werden durch Löschen von Bit 7 im Controller Register 11H entriegelt.
  • Das Adressieren von Videospeicher, Schritt 112, erfolgt durch eines von mehreren Mitteln. Eines ist, das Standard VGA 64 kB "Hardware-Fenster" zu benutzen und es entlang dem Videospeicherpuffer 67 (4) in 64 kB Schritten, wenn nötig, zu bewegen. Das bevorzugte Verfahren ist, lineare Adressierung durch Abfragen des Video-Chipsatzes nach der linearen Fensterpositionsadresse zu ermöglichen, Schritt 138 von 11. Dieser 32-Bit Offset im Speicher erlaubt dem Programm, den linearen Speicher in eine physikalische Adresse abzubilden, Schritte 140 und 142 von 11, die programmatisch manipuliert werden kann.
  • An diesem Punkt kann das Programm die Anzeige modifizieren, Schritt 114 und 9, um die Randbereiche zu inkrementieren. Diese Routine stellt zuerst fest, ob das System im "Werkzeugleisten"-Modus arbeitet, Schritt 144, und gibt, wenn ja, wahr zurück. Wenn nicht, stellt sie fest, ob alle Register und Werte auf ihren Originalzustand zurückusetzen sind, um so die Anzeige effektiv in ihr ursprüngliches Aussehen zurückzubringen, Schritt 152. Die Feststellung basiert auf einer Anzahl von Parametern, z.B., ob die gegenwärtige Auflösung, Schritt 146, einen Standardwert oder eine frühere programmatische Manipulation widerspiegelt, Schritt 148. Wenn bereits eine Standard-Auflösung eingestellt ist, werden die Variablen zurückgesetzt, um die spezifizierten Randbereiche zu enthalten (Schritt 150. Die CR-Register werden erhöht, Schritt 154, um die abgetasteten und ausgetasteten Bereiche der Anzeige zu modifizieren. Wenn der obere oder seitliche Bereiche modifiziert werden, wird vorhandener Videospeicher in Schritt 162 von 10 entsprechend verschoben.
  • Wenn eine der vorangehenden Routinen einen Fehler zurückgibt, kann das Programm den Benutzer auffordern, festzustellen, ob "Emulations"-Modus, Schritt 13, oder Fenstermodus, Schritt 116, benutzt werden soll, oder ob das Programm in Schritt 124 abtreten soll.
  • In ihrer einfachsten Form kann die Erfindung als ein Verfahren zum Hinzufügen einer Sekundär-GUI durch Rekonfigurieren des wirklichen Anzeigemodus, um einen modifizierten Nicht-Standard-GUI-Modus hinzuzufügen, in dem die Standard-Anzeigegröße oder Auflösung erhöht wurde, um zusätzlich zu der Standard-Anzeige eine sekundäre Anzeige zu enthalten, behandelt werden. Zum Beispiel wird eine Standard 640 × 480 Anzeige erfindungsgemäß modifiziert, um eine größere Anzeige zu werden, wobei ein Abschnitt davon der ursprünglichen 640 × 480 Anzeige entspricht, während ein anderer Abschnitt einer 640 × 25 Sekundär-GUI-Anzeige entspricht.
  • Es sind verschiedene Verfahren oder Mechanismen zum Modifizieren des Systems erforderlich, um die Sekundär-GUI einzuschließen, abhängig von den Anforderungen der Sekundär-GUI und den gegenwärtigen Gegebenheiten des unmodifizierten Systems.
  • In einer anderen Ausführung der vorliegenden Erfindung werden Systemressourcen für eine Sekundär-GUI zugeteilt, durch Täuschen des Videotreibers, zu größerer Auflösung zu gehen. Dieses Verfahren garantiert automatisch, dass genug Raum frei gehalten wird, da der Videotreiber-Systemressourcen entsprechend der Auflösung zuteilt, von der der Videotreiber glaubt, dass er dann arbeiten wird. Um eine oder mehrere Sekundär-Benutzerschnittstellen in einem oder mehreren Bereichen des Schirmes zu betrieben, ist es erforderlich, einen Speicher zu haben, der im Videospeicher oder im Bildspeicher mit dieser Stelle verbunden war, zusammenhängend unter der Hauptoberfläche frei und verfügbar. Durch Schreiben einer Reihe von kleinen Applets spezifisch für Hardware, die bekannt ist, Systemressourcen-Zuteilungsprobleme zu haben, für eine Sekundär Benutzerschnittstelle kann die Sekundär-Benutzerschnittstellenanwendung ein solches Applet immer dann fahren, wenn Auflösungen gewechselt werden, und den zu diesem einzelnen Applet gehörenden Chipsatz initialisieren. Wenn die Anwendung ein zu dem gegenwärtigen bestimmten Chipsatz gehörendes Applet findet, wird es gestartet. Das Applet oder Minitreiber initialisiert sich selbst, führt notwendige Änderungen an den Videoauflösungstabellen des Treibers durch, erzwingt eine Neufreigabe, und ausreichender Raum ist anschließend für eine oder mehrere Sekundär-Benutzerschnittstellen verfügbar.
  • Wenn neu freigegeben, teilt der Treiber Videospeicher für die Primäranzeige entsprechend den Daten in den UCCO-Auflösungstabellen nach Bedarf zu. Die modifizierten Werte resultieren daher in einer größeren Zuteilung. Sobald der Treiber den für die Primär-Oberfläche benötigten Speicher zugeteilt hat, wird der Treiber keinen äußeren Zugriff auf den zugeteilten Speicher erlauben. Durch Täuschen des Treibers, zu glauben, dass er genügend Speicher für eine Auflösung genau x Bytes größer als die gegenwärtige Auflösung, wo x die Größe von einer oder mehreren Sekundär-Benutzerschnittstellen ist, zuteilen muss, kann die Anwendung sicher sein, dass kein interner oder externer Gebrauch der zugeteilten Speicherstelle mit der Sekundär-Benutzerschnittstelle in Konflikt gerät.
  • Dieses Verfahren stellt sicher, dass Systemressourcen für eine oder mehrere Sekundär-Benutzerschnittstellen durch Schreiben eines Applets zugeteilt werden, das den Videotreiber so adressieren würde, dass der Videotreiber bei seiner nächsten Neufreigabe gezwungen wird, Videospeicher ausreichend für eine Auflösung höher als die wirkliche Betriebssystem-Auflösung zuzuteilen. Dies kann auch durch Modifizieren jeder Version der Werbemodus-Tabellen getan werden, um so eine Schirmgröße größer als die Primär-Benutzerschnittstellen-Schirmgröße zu erzeugen.
  • Dieses Verfahren hat einen zusätzlichen Nutzen des Beseitigens der Notwendigkeit, zu verhindern, dass der Treiber wirklich zu der spezifizierten größeren Auflösung wechselt, die der Primär-Benutzerschnittstelle eine größere Anzeigeflächenauflösung übergibt. Die "Hardware-Modustabelle", eine Variante der vorerwähnten Videoauflösungstabellen, wird nicht bekannt gegeben und ist nicht zugänglich. Wenn der Treiber die neue Auflösung bestätigt, wird daher das Prüfen gegen die Hardware-Modustabelle immer fehlschlagen, und sich daher weigern, zu dieser Auflösung zu wechseln. Weil dieses Verfahren die bekannt gegebenen Videoauf lösungstabellen früh genug in dem Prozess des Treibers modifizierte, wurde der zugeteilte Speicher modifiziert und Speicheradressen vor dem Fehler in einen gültigen Modus gesetzt. Danach, wenn die CRTCs in Schritt 114 modifiziert werden, reserviert der Treiber genügend Speicher für eine oder mehrere Sekundär-Benutzerschnittstellen und macht ihn für jeden anderen Prozess oder Zweck unverfügbar.
  • In noch einer anderen Ausführung der vorliegenden Erfindung wird ein einhüllender Treiber installiert, der über dem bestehenden Treiber sitzt und sich zwischen die Hardware-Abstraktionsschicht und den wirklichen Videotreiber legt, um in der Lage zu sein, alle Aufrufe an den Videotreiber zu behandeln und den Treiber und die Treibertabellen in einer viel generischeren Weise als in einer chipsatzspezifischen Weise zu modifizieren. Der umhüllende Treiber legt sich in den Primär-Videotreiber, um Aufrufe an den Primär-Videotreiber hin und her transparent zu übergeben. Der umhüllende Treiber findet die Videoauflösungstabellen in dem Primär-Videotreiber, die an einer Anzahl von Stellen in dem Treiber sein können. Der umhüllende Treiber modifiziert die Tabellen (z.B. Erhöhen von 800 mal 600 auf 800 mal 620). Ein 1024 mal 768 Tabelleneintrag kann 1024 mal 800 werden.
  • Wie die vorher beschriebene Ausführung kann der Primärtreiber die neue Auflösung nicht bestätigen und kann daher die Anzeigeeinstellung nicht wirklich ändern. Als Folge teilte der Treiber Speicher zu, teilte Cach-Raum zu, bestimmt durch Speicheradresse, und den Cache und Offscreen-Puffer nach Bedarf. Der Primärtreiber benutzt somit niemals den ganzen zugeteilten Raum und wird niemals in diesem Raum zeichnen.
  • Wie oben erwähnt, enthält das Verfahren der vorliegenden Erfindung die Hauptschritte, Finden des Overscan-Bereichs, Vergrößern oder Erweitern des Overscan-Bereichs und Legen von Daten in der erweiterten Overscan-Bereich.
  • Der Schritt des Findens des Overscan-Bereichs erfordert eine Durchsicht des Inhalts der Controller-Register, die CR-Register, die von VGA-kompatiblen Chipsätzen oder Grafikkarten benutzt werden, um zu identifizieren, wohin der Overscan-Bereich, das Austasten, das vertikale und horizontale Gesamt und das Senken gesetzt werden sollen. Das CR definiert die Desktop-Anzeige, wie sie synchronisiert wird, wo ihr Layout links und rechts ist, wieviel Pufferbereich es auf jeder Seite geben würde, und wie sie in dem Videospeicherbereich gespeichert werden würde. Eine Durchsicht des Inhalts der CR-Datenregister definiert daher voll die Stelle und Größe des Overscan-Bereichs.
  • Um den Schritt des Erweiterns des Overscan-Bereichs zu vollbringen, können die CRs ge genwärtig direkt für Systeme mit Videoanzeigeauflösungen bis zu und einschleßlich 1024 Pixel in jeder Abmessung benutzt werden, das heißt, Auflösungen, die in den allgemein akzeptierten VGA-Standards durch 10 Bit pro Register definiert werden können. Um den Overscan-Bereich zu erweitern, werden neue Daten unter Verwendung von Standard-Verfahren wie die Input- und Output-Funktionen in das CR geschrieben. Ein Standard-Videoport und MMIO-Funktionen können ebenfalls benutzt werden, um die CRs zu modifizieren.
  • Bei größeren Auflösungen können 11 Bit nötig sein, um die Auflösung richtig zu definieren. Es gibt gegenwärtig kein Standardverfahren, in dem die 11-te Bitstelle definiert ist. Bei einer Auflösung von z.B. über 1280 × 1024 ist daher gegenwärtig ein Verständnis der Videokarte selbst, besonders, wie die 11 Bits, die die Auflösung darstellen, gespeichert werden, erforderlich und wird unten ausführlicher beschrieben.
  • Wenn der Overscan-Bereich erweitert wird, ist es wichtig, sicherzustellen, dass ein vorheriger Overscan nicht bereits angezeigt wird, vielleicht von einem früheren Absturz oder einem anderen unerwarteten Problem. Entweder die Anzeige muss sofort auf die geeigneten Auflösungs-Vorgabewerte zurückgesetzt werden oder das CR muss abgefragt werden, um festzustellen, ob die Gesamtschirmauflösung, wie von der Videokarte und den Treibern verstanden, sich von der durch die Betriebssystem-Anzeigeschnittstelle bekannte Schirmauflösung unterscheidet. Ein Overscan-Balken kann bereits angezeigt werden, wenn die Gesamtschirmauflösung nicht gleich einer der Standard-VGA- oder SVGA-Auflösungen ist. Das heißt, wenn die Gesamtschirmauflösung gleich einer Standard-VGA/SVGA-Auflösung plus dem für den Overscan-Balken benötigten Bereich ist oder größer ist als die von der Betriebssystem-Anzeigeschnittstelle mitgeteilte Auflösung, wird die Anzeige zurückgesetzt.
  • Sobald der Anzeigebereich oder die Auflösung, wie in dem CR gespeichert, bestimmt ist, kann die Auflösung oder der Anzeigebereich auf mehreren verschiedenen Wegen erweiter werden. Der Overscan-Bereich kann dem Boden, der Spitze oder der rechten Seite des gegenwärtigen Anzeigebereichs hinzugefügt werden, und optional kann der Anzeigebereich umpositioniert werden, sodass der Overscan-Balken im Aussehen zentriert bleiben kann. Alternativ kann der Overscan-Bereich irgendwo hinzugefügt werden, und der Original- oder Desktop-Anzeige reich kann zentriert werden, um das Aussehen zu verbessern. In jedem Fall wird die Höhe/Breite des für den Overscan-Balken benötigten Bereichs zu der bereits in dem CR gespeicherten Größe des Anzeigebereichs addiert, und die Summe wird in das CR geschrieben, wobei die früheren Daten überschrieben werden.
  • Der Schirm zeigt typischerweise ein schnelles Aufblitzen, wenn er in einen anderen Modus gebracht wird, einschließlich des Original-Anzeigebereichs plus einem neuen Anzeigebalken in dem Overscan-Bereich. Sobald diese Änderung eintritt, kann eine schwarze Maske über den neuen Bereichen positioniert werden. Die neuen Menüdaten können dann sicher oben auf die Maske geschrieben werden, sodass der Benutzer niemals Speicher-"Schrott" sieht.
  • Typischerweise gibt es ein paar Sekunden Ladezeit, während der eine einfache Nachricht, z.B. "Laden ...", angezeigt werden kann, um Verwirrung des Benutzers zu vermeiden.
  • Es gibt eine Anzahl von Mechanismen, mit denen dies getan werden kann. Ein Satz von Klassen-Objekten wird benutzt, die alle von einer Grundklasse abgeleitet werden, die der oben beschriebenen generischen VGA-Technik entspricht.
  • Der erste Mechanismus ist eine Implementierung der generischen VGA-Technik. Bei Verwendung dieses Mechanismusses ist keine für eine Videokarte spezifische Information erforderlich, außer der, die VGA-Unterstützung sicherstellt. Unter Verwendung von Standard-Anwendungsprogrammier-Schnittstellen-(API)Routinen werden Primär- und Sekundär-Oberflächen zugeteilt. Die neuen Anzeigedaten in dem CR sind einfach die physikalische Adresse am Anfang der Primär-Oberfläche plus die durch die Schirmgröße definierten Zahl von Pixeln.
  • Die Zuteilung der Primär-Oberfläche wird immer auf der ganzen Schirmanzeige basieren. Die lineare Adresse der zugeteilten Primär-Oberfläche gegeben, von der eine physikalische Adresse abgeleitet werden kann, kann extrapoliert werden, dass die physikalische Adresse der Stelle im Videospeicher unmittelbar angrenzend an die Primär-Oberfläche durch die Summe der Zahl von Speicherbytes, die zum Unterhalten der Primär-Oberfläche im Speicher benutzt werden, plus dem Wert der physikalischen Adresse der Primär-Oberfläche dargestellt wird.
  • Sobald die physikalische Adresse der Primär-Oberfläche bekannt ist, kann die Größe der Primär-Oberfläche, wie im Videospeicher dargestellt, bestimmt werden.
  • Das System sucht z.B. in den CRs nach der Auflösung des Schirms, 800 mal 600, in Form der Zahl von Bits pro Pixel oder Bytes pro Pixel. Dann werden alle in dem CR gespeicherten Daten, die jeden horizontalen Synchronisationsraum darstellen, addiert. Dies ist die wahre Abtastzeilenlänge. Die Abtastzeilenlänge ist ein genaueres Maß der Breite einer gegebenen Auflösung.
  • Als Nächstes wird die physikalische Adresse der zugeteilten Sekundär-Oberfläche aus ihrer linearen Adresse gewonnen. In dem Fall, wo die zugeteilte Sekundär-Oberfläche tatsächlich in dem Speicherraum angrenzend an die Primär-Oberfläche zugeteilt wird (der Wert der physikalischen Adresse der Sekundär-Oberfläche ist gleich dem Wert der physikalischen Adresse der Primär-Oberfläche plus der Größe der Primär-Oberfläche), wird die Sekundär-Oberfläche als die Stelle im Speicher für die Overscan-Anzeige bestimmt.
  • Wenn jedoch das Obige nicht wahr ist und die Sekundär-Oberfläche nicht an die Primär-Oberfläche angrenzt, ist ein anderer Lösungsmechanismus erforderlich.
  • Zusammengefasst, der erste Mechanismus bestimmt, was der physikalische Bereich für den Desktop sein wird und fügt dann einen Sekundärraum darunter hinzu, um ihn in dem Overscan-Bereich anzuzeigen. Der neu zugeteilte Bereich wird der allererste verfügbare Speicherblock sein. Wenn dieser Block unmittelbar auf die Primär-Oberfläche folgt, wird die physikalische Adresse dem mit der physikalischen Adresse der Primär-Oberfläche verbundenen Wert plus der Größe der Primär-Oberfläche entsprechen. Wenn dies wahr ist, sind die Speicherblöcke zusammenhängend, und dieser VGA-generische Mechanismus kann verwendet werden.
  • Wenn dieser erste VGA-generische Mechanismus nicht verwendet werden kann, werden der Videokarten- und Treibername und Versionsinformation, die aus der Hardware-Registrierung und BIOS zurückgewonnen werden, in Verbindung mit einer Look-up-Tabelle benutzt, um die besten Alternativen unter den verbleibenden Mechanismen zu bestimmen. Die Tabelle enthält einen Satz von Standards, die mit der in der Hardware-Registrierung gefundenen Liste von Treibernamen verbunden sind. Ein für den Video-Chipsatz spezifisches Klassenobjekt wird direkt oder indirekt basierend auf dem VGA-generischen Objekt eingerichtet.
  • Wenn das Nachsehen der Hardware keine zuverlässige Übereinstimmung ergibt, kann ein Zuverlässigkeits- oder Vertrauens-Fudge-Faktor, der nicht Teil der Erfindung ist, benutzt werden. Wenn z.B. das Hardware-Nachsehen feststelle, dass eine XYZ-Marken-Vorrichtung irgendeiner Art benutzt wird, aber die genannte einzelne XYZ-Vorrichtung in der Look-up-Tabelle nicht gefunden wird, kann oft ein generisches Modell von diesem Chipsatz-Hersteller brauchbar sein. Wenn keine Information verfügbar ist, kann der Benutzer eine Nachricht erhalten, die angibt, dass die Hardware nicht unterstützt wird und dass das Programm in dem Overscan-Bereich nicht laufen kann. Der Benutzer kann dann gefragt werden, zu entscheiden, ob das System in dem "Anwendungs-Werkzeugleisten"-Modus betrieben werden soll, der im Grunde mit genau der gleichen Funktionalität läuft, aber in einer Fensterumgegung in dem Desktop, anstelle in dem Overscan-Bereich außerhalb des Desktops.
  • Der nächste alternative Mechanismus, der auch nicht Teil der Erfindung ist, benutzt Oberflächen-Overlays. Der erste Schritt zu dieser Lösung ist, festzustellen, ob das System Oberflächen-Overlays unterstützt. Es erfolgt ein Aufruf an den Videotreiber, um festzustellen, welche Merkmale unterstützt werden und welche anderen Faktoren benötigt werden. Wenn Oberflächen-Overlays unterstützt werden, kann z.B. ein Skalierungsfaktor erforderlich sein.
  • Zum Beispiel könnte eine bestimmte Videokarte in einer gegebenen Maschine, die 2 MB an Video-RAM benutzt, unskalierte Oberflächen-Overlays mit 1024 × 768 bei 8 Bit pro Pixel, nicht aber mit 1024 × 768 bei 16 Bit pro Pixel unterstützen, weil die Bandbreite der Videokarte oder die Geschwindigkeit der Karte verbunden mit der relativ kleinen Menge an Videospeicher nicht ausreichend sein wühle, ein Overlay mit voller Breite zu zeichnen. Oft ist es horizontales Skalieren, das zur Frage steht und den Treiber daran hindert, ein Overlay mit voller Breite zu zeichnen. Ein Overlay ist buchstäblich ein Bild, das oben auf der Primär-Oberfläche gezeichnet wird. Es ist keine Sekundär-Oberfläche, die oben beschrieben ist. Das System sendet buchstäblich sein Signal von den Videotreiben an die Hardware, sodass sie die zwei Signale miteinander vermischt, um ein zweites Signal über das erste zu legen.
  • Wenn ein System unskalierte Overlays nicht unterstützen kann, vielleicht wegen Bandbreiten- oder Speicherproblemen, ist dieser Mechanismus nicht wünschenswert. Er wird nicht verworfen, wird aber eine Alternative mit niedriger Priorität. Wenn z.B. der Skalierungsfaktor unter 0.1 ist, kann der normale Balken gezeichnet werden und er wird näher an der Kante beschnitten. Wenn der Skalierungsfaktor größer als 10% ist, wird ein anderer Lösungsmechanismus benötigt.
  • In dem nächsten Satz alternativer Mechanismen, die auch nicht Teil der Erfindung sind, wird eine Sekundär-Oberfläche zugeteilt, deren Größe ausreichend ist, den normalen Desktop-Anzeigebereich plus den zum Anzeigen des oder der Overscan-Balken(s) zu benutzenden Overscan-Bereich einzuschließen. Mit diesen Mechanismen muss sich die zugeteilte Sekundär-Oberfläche im Speicher nicht angrenzend an die Primär-Oberfläche befinden. Diese Lösungen verwenden jedoch mehr Videospeicher als die anderen.
  • Der erste Schritt ist, eine Sekundär-Oberfläche zuzuteilen, die ausreichend groß ist, um die Videoanzeige (die Primär-Oberfläche) und den zu verwendenden Overscan-Bereich zu enthalten. Wenn die Zuteilung misslingt, bedeutet das, dass nicht genug Videospeicher vorhan den ist, um diese Aufgabe zu erfüllen, und dieser Satz von Mechanismen wird ausgelassen und die nächste Alternative versucht. Nachdem ein neuer Speicherblock zugeteilt ist, wird ein Timer mit sehr kleiner Körnung benutzt, um eine einfache Speicherkopie des Inhalts der Primär-Oberfläche auf die geeignete Stelle dieser Sekundär-Oberfläche auszuführen. Der Timer führt die Kopie mit etwa 85 Mal pro Sekunde aus.
  • In diesem Satz von alternativen Mechanismen gibt es eine Variante, die Systemseitentabellen verwendet. Dieser Mechanismus fragt die Systemseitentabellen ab, um die gegenwärtige GDI-Oberflächenadresse zu bestimmen, d.h. die physikalische Adresse in der Seitentabelle für die Primär-Oberfläche. Eine Sekundär-Oberfläche wird dann erzeugt, die groß genug ist, um alles, was in dem Videospeicher ist, plus den Speicher zu haken, der für den anzuzeigenden Overscan-Balken benötigt wird. Diese Oberflächenadresse wird dann in die Systemseitentabelle geschoben und als die GDI-Oberflächenadresse geltend gemacht.
  • Danach, wenn GDI die Primär-Oberfläche durch den Treiber liest oder beschreibt, liest oder beschreibt sie tatsächlich die neue, größere Oberfläche. Das Overscan-Balken-Programm kann anschließend den durch die GDI nicht adressierten Bereich der Oberfläche modifizieren. Die ursprüngliche Primär-Oberfläche kann freigesetzt und die Speichernutzung neu beansprucht werden. Dieser Mechanismus, der speichereffizienter ist der vorher beschriebene Mechanismus, ist die bevorzugte Alternative. Aber die Speichertabellenlösung wird nicht richtig auf einem Chipsatz arbeiten, der eine Koprozessor-Vorrichtung enthält. Wenn die anfängliche Vorrichtungsabfrage ergibt, dass die Vorrichtung einen Koprozessor enthält, wird diese Mechanismus-Variante nicht versucht werden.
  • Andere Variationen der oben beschriebenen Mechanismen, die nicht Teil der Erfindung sind, werden in abgeleiteten Klassenobjekten berücksichtigt. Die VGA-generischen Mechanismen können z.B. variieren, wenn die Videokarte mehr als 10 Bit nötigt, um die Videoauflösung in dem CR darzustellen. Einige Fälle können 11 Bit benötigen. Solche Register benutzen typischwerweise keine zusammenhängenden Bytes, sondern verwenden Erweiterungsbits, um die Adressinformation für die Bits höherer Ordnung zu bezeichnen.
  • In diesem Beispiel wird das elfte Bit gewöhnlich in einem erweiterten CR-Register spezifiziert, und die erweiterten CR-Register sind gewöhnlich chipspezifisch.
  • Desgleichen enthält eine Variation des Oberflächen-Overlay-Mechanismusses einen skalierungsfaktor, wie oben beschrieben. Diese Alternative wird in spezifischen Implementierungen durch abgeleitete Klassenobjekte gehandhabt und kann in bestimmten Situationen die beste Lösung sein.
  • Eine andere Implementierung dieser Technologie verwendet einen "Hooking"-Mechanismus, wie in 14 gezeigt. Nachdem der Anzeigetreiber durch die Hardware-Registrierung oder das BIOS identifiziert ist, werden bestimmte Programmierschnittstellen-Einsprungpunkte in den Treiber eingehakt, wie z.B. in Schritt 117. Mit anderen Worten, wenn die Videosystem-Vorrichtungsschnittstelle, z.B. Windows GDI, diese Einsprungpunkte in den Anzeigetreiber ruft, kann das Programm die Gelegenheit ergreifen, die an den Anzeigetreiber übergebenen Parameter zu modifizieren und/oder die von dem Anzeigetreiber zurückgegebenen Werte zu modifizieren.
  • Durch Einkaken der "Reenable"-Funktion in dem Anzeigetreiber in Schritt 117 kann das Overscan-Balken-Programm in Schritt 119 einen Schirmbereich auf verschiedene Weise zuweisen:
    • (1) Im Einstellmodus, Schritt 121, durch Abfangen einer Auflösungs-Änderungsanforderung und Identifizieren der nächsthöheren unterstützten Schirmauflösung und Übergeben dieser höheren Auflösung an den Anzeigetreiber, dann, wenn der Anzeigetreiber die Änderung bestätigt, Abfangen des zurückgegebenen Wertes, der die neue Auflösung widerspiegeln würde, und stattdessen tatsächlich die ursprünglich angeforderte Auflösung zurückgeben. Zum Beispiel fordert die GDI eine Änderung von 640 × 480 Auflösung auf 800 × 600 Auflösung an; das Overscan-Programm fängt die Anforderung ab und modifiziert sie, um den Anzeigetreiber auf die nächste unterstützte Auflösung höher als 800 × 600, z.B. 1024 × 768, zu ändern. Der Anzeigetreiber wird die Schirmauflösung in 1024 × 768 ändern und diese neue Auflösung zurückgeben. Das Overscan-Programm fängt die Rückgabe ab und übergibt stattdessen die ursprüngliche Anforderung, 800 × 600, an die GDI. Der Anzeigetreiber hat einen Speichert reich von 1024 × 768 zugeteilt und zeigt ihn an. Die GDI und Windows werden den Desktop in einem 800 × 600 Bereich dieser Anzeige anzeigen, wobei Bereiche auf der rechten und unteren Kante des Schirms für das Overscan-Programm verfügbar gelassen werden.
    • (2) Im geteilten Modus, Schritt 123, durch Abfangen nur der Rückgabe von dem Anzeigetreiber und Modifizieren des Wertes, um das Verstehen des Betriebssystems der wirklichen Schirmauflösung zu ändern. Zum Beispiel fordert die GDI eine Änderung von 800 × 600 Auflösung auf 1024 × 768 Auflösung an. Das Overscan-Programm fängt die zurückgegebene Bestätigung ab und subtrahiert 32 vor dem Übergeben der Rückgabe an die GDI. Der Anzeigetreiber hat einen Speicherbereich von 1024 × 768 zugeteilt und zeigt ihn an. Die GDI und Windows werden den Desktop in einem 1024 × 736 Bereich dieser Anzeige anzeigen, wobei ein Bereich auf der unteren Kante des Schirms für das Overscan-Balken-Programm verfügbar gelassen wird.
  • Nach dem Einhaken kann das Overscan-Balken-Programm anzeigen durch:
    • (1) Verwenden von Standard-API-Aufrufen, um den Balken an einen Offscreen-Puffer auszugeben, wie im nächsten Abschnitt beschrieben, und dann Einhaken des "BitBlt"-Funktions-Einsprungpunktes in den Anzeigetreiber, um die Offset- und Größen-Parameter zu modifizieren, und anschließend die BitBlt zu dem Bereich außerhalb von dem umleiten, von dem die API glaubt, dass er Onscreen ist.
    • (2) Verwenden von Mechanismen von Primär- und Sekundär-Adressen, oben beschrieben. Das Programm bestimmt die linearen Adressen für die Off-Desktop-Speicherstelle(n), die ihm verfügbar gelassen sind, und kann direkt an diese Speicherstellen zurückgeben.
  • Phase 2 der Erfindung beginnt mit Malen der neuen Bilder in einen Standard-Offscreen-Puffer, Schritt 118, wie gewöhnlich in der Technik benutzt, und Sichtbarmachen des Inhalts, Schritt 120, wie in 10 beschrieben. Wenn das Programm im "Werkzeugleisten"-Modus ist, Schritt 156, wird der Offscreen-Puffer in den Standard-Fenster-Client-Raum gemalt, Schritt 166, und unter Verwendung generischer Fenstersystem-Routinen sichtbar gemacht, Schritt 164. Andernfalls wird die lineare Fensterpositionsadresse zugeordnet, Schritt 158, wie in 10 beschrieben, die vorher erklärt wurde. Sobald der lineare Speicher einer physikalischen Speicheradresse zugeordnet ist, Schritt 142, kann der Inhalt des Offscreen-Anzeigepuffers direkt in den Videopuffer kopiert werden, Schritt 154 von 10, oder bezüglich einer Sekundär-Oberfläche gemalt werden.
  • Die Anwendung der bevorzugten Ausführung enthält eine Standard-Anwendungs-Nachrichtenschleife, Schritt 122, die System- und Benutzerereignisse verarbeitet. Ein Beispiel einer Verarbeitungsschleife mit minimaler Funktionalität ist in 12. Hier handhabt die Anwendung einem Minimalsatz von Systemereignissen, z.B. Malen von Anforderungen, Schritt 170, Systemauflösungsänderungen, Schritt 172, und Aktivieren/Deaktivieren, Schritt 174. Hier ist auch, wo Benutzerereignisse, z.B. Tasten- oder Maus-Ereignisse, behandelt werden können, Schritt 184, erklärt in 13. Systemmalen-Nachrichten werden durch Malen, wenn angebracht, in den Offscreen-Puffer, Schritt 178, und Malen des Fenster- oder Anzeigepuffers, Schritt 180, wenn angebracht, wie früher in 10 beschrieben, gehandhabt. Systemauflösungsnachrichten werden empfangen, wann immer das System oder der Benutzer die Schirm- oder Farbauflösung ändert. Die Programme setzen alle Register auf die richtigen neuen Werte und ändern dann die Anzeigeauflösung, Schritt 182, wie früher in 9 beschrieben, um die modifizierte, neue Auflösung widerzuspiegeln. Benutzernachrichten werden ignoriert, wenn das Programm nicht die aktive Anwendung ist.
  • 13 beschreibt ein Verfahren zur Implementierung benutzereingegebener Ereignisse. Bei dieser Ausführung gibt es drei alternative Mechanismen, die benutzt werden, um Cursor- oder Maus-Unterstützung zu implementieren, sodass der Benutzer ein Zeigevorrichtungs-Eingabewerkzeug in der Overscan-Bereichs-Benutzerschnittstelle hat.
  • In dem bevorzugten Mechanismus wird "Cliprect" der GDI modifiziert, um den Anzeigebereich des Overscan-Balkens einzuschließen. Dies verhindert, dass das Betriebssystem den Cursor beschneidet, wenn er sich in den Overscan-Bereich bewegt. Diese Änderung macht nicht unbedingt den Cursor sichtbar oder stellt Ereignis-Rückmeldung bereit, ist aber der erste Schritt.
  • Einige gegenwärtige Windows-Anwendungen setzen Cliprect fortlaufend zurück. Es ist eine Standard-Programmierprozedur, nach Gebrauch oder Verlust von Eingabefokus zurückzusetzen. Einige Anwendungen verwenden Cliprect, um die Maus auf einen spezifischen Bereich einzuschränken, wie er von der aktiven Anwendung verlangt werden kann. Wann immer die Overscan-Anzeigebalkenschnittstelle den Eingabefokus empfängt, macht sie Cliprect erneut geltend, wobei sie groß genug gemacht wird, damit sich die Maus hinab in den Overscan-Raum bewegt.
  • Sobald Cliprect erweitert wurde, kann die Maus Nachrichten für das Betriebssystem erzeugen, die Bewegung in dem Erweiterungsbereich widerspiegeln. Die GDI zieht jedoch den Cursor nicht aus dem heraus, was sie als ihre Auflösung versteht, und leitet keine "Out-of-Bounds"-Ereignisnachrichten an eine Anwendung weiter. Das Overscan-Programm benutzt einen V × D-Gerätetreiber und verwandte Rückruf-Funktion, um Hardwaretreiber-Aufrufe bei Ring null zu machen, um die wirklichen physikalischen Deltas oder Änderungen in der Mausposition oder Zustand zu überwachen. Jede Mauspositions- oder Zustandsänderung wird als ein Ereignis an das Programm zurückgegeben, das die Position in dem Menüanzeigebalken grafisch darstellen kann.
  • Ein alternativer Mechanismus umgeht die Notwendigkeit, Cliprect zu erweitern, um einen Konflikt mit Vorrichtungstreibern zu vermeiden, die Cliprect verwenden, um eine Drehung der virtuellen Anzeige zu ermöglichen. Durch direktes Abfragen der Mauseingabevorrichtung kann das Overscan-Programm "Deltas", Änderungen in Position und Zustand, bestimmen. Wann immer der Cursor die letzte Reihe oder Spalte von Pixeln auf der Standardanzeige berührt, wird er dort durch Setzen von Cliprect auf ein Rechteck, das nur aus dieser letzten Reihe oder Spalte besteht, begrenzt. Eine "virtuelle" Cursor-Position wird aus den von der Eingabevorrichtung verfügbaren Deltas gewonnen. Der wirkliche Cursor ist verborgen, und eine virtuelle Cursor-Darstellung wird explizit in den virtuellen Koordinaten angezeigt, um eine genaue Rückmeldung an den Benutzer zu liefern. Wenn sich die virtuellen Koordinaten von dem Overscan-Bereich zurück auf den Desktop bewegen, wird Cliprect gelöscht, die virtuelle Darstellung entfernt und der wirkliche Cursor auf dem Schirm wiederhergestellt.
  • Ein dritter alternativer Mechanismus erzeugt ein durchsichtiges Fenster, das sich mit dem wirklichen Windows-Desktop-Anzeigebereich um eine vordefinierte Zahl von Pixeln, z.B. zwei oder vier Pixel, überschneidet. Wenn die Maus in diesen kleinen, durchsichtigen Bereich eintritt, versteckt das Programm den Cursor. Ein Cursor-Bild wird dann in dem Overscan-Balkenbereich in der gleichen X-Koordinate, aber in einer Y-Koordinate, die in den Overscan-Bereich entsprechend versetzt ist, angezeigt. Wenn ein Überschneidungsbereich von zwei Pixeln benutzt wird, verwendet dieses Verfahren eine Körnigkeit von zwei. Diese Nur-API-Lösung liefert folglich nur eine begrenzte Vertikal-Körnigkeit. Dieser alternative Mechanismus stellt sicher, dass alle Implementierungen einen gewissen Grad an Maus-Eingabeunterstützung haben werden, selbst wenn Cliprect- und Eingabevorrichtungstreiber-Lösungen versagen.
  • 7 beschreibt den Aufräum-Mechanismus, der ausgeführt wird, wenn das Programm geschlossen wird, Schritt 124. Die Anzeige wird auf die ursprüngliche Auflösung zurückgesetzt, Schritt 126, und die CR-Register werden auf ihre ursprünglichen Werte zurückgesetzt, Schritt 128, und verriegelt, Schritt 130.
  • Alternative Beispiele, die nicht Teil der Erfindung sind
    • 1. Verwenden der VESA BIOS Erweiterungen (VBE) anstelle der CRT Controller Register (5), um die lineare Fensterpositionsadresse, Schritt 138, wenn nötig, zu bestimmen.
    • 2. Verwenden von APIs (Anwendungsprogrammier-Schnittstellen) 62, die zur direkten Treiber- und/oder Hardware-Manipulation imstande sind, z.B. Microsoft DirectX und/oder DirectDraw, anstelle der CRT Controller Register und/oder Direktzugriff auf den Anzeigepuffer.
    • 3. Verwenden von APIs (Anwendungsprogrammier-Schnittstellen) 62, z.B. Microsoft DirectX und/oder DirectDraw, die zur direkten Treiber und/der Hardware-Manipulation imstande sind, um eine zweite virtuelle Anzeigeoberfläche auf der Primäranzeige mit dem gleichen Zweck zu erzeugen, um eine getrennte und ungetrübte grafische Benutzerschnittstelle anzuzeigen.
    • 4. Verwenden von Modifikationen in dem Video-Untersystem des Betriebssystems 63 anstelle der CRT Controller Register und/oder DirectX-Zugriff auf den Anzeigepuffer.
    • 5. Verwenden von Modifikationen in dem Video-Untersystem des Betriebssystems 63, um eine zweite virtuelle Anzeigeoberfläche auf der Primäranzeige mit dem gleichen Zweck zu erzeugen, um eine getrennte und ungetrübte grafische Benutzerschnittstelle anzuzeigen.
    • 6. Einbauen dieser Funktionalität in die wirklichen Videotreiber 64 und/oder Minitreiber. Microsoft Windows liefert Unterstützung für virtuelle Vorrichtungstreiber, die auch direkt mit der Hardware und Treibern verbunden werden könnten. Diese könnten auch eine API einschließen, um Anwendungen mit einer Schnittstelle zu der modifizierten Anzeige bereitzustellen.
    • 7. Einschließen der gleichen Funktionalität, mit oder ohne die VGA-Register, in das BIOS und Bereitstellen einer API, um Anwendungen eine Schnittstelle zu der modifizierten Hardware zu erlauben.
    • 8. Einschließen der gleichen Funktionalität in Hardware-Vorrichtungen, z.B. der Monitor selbst, mit Hardware- und/oder Software-Schnittstellen zu der CPU.
  • Zusammengefasst, der visuelle Anzeigebereich wird herkömmlich durch die Werte definiert, die in den CRTC-Registern unterhalten werden und dem Treiber zugänglich sind. Der normalerweise angezeigte Bereich wird durch VGA-Standards und später durch SVGA-Standards so definiert, dass er eine voreingestellte Zahl von Modi ist, wobei jeder Malus eine bestimmte Anzeigeauflösung enthält, die den Bereich der Anzeige spezifiziert, in dem der Desktop angezeigt werden kann.
  • Der Desktop kann nur in diesem Bereich angezeigt werden, weil Windows den Videospeicher nicht direkt liest/schreibt, und stattdessen Programmierschnittstellenaufrufe an den Videotreiber verwendet. Und der Videotreiber liest/schreibt einfach unter Verwendung einer Adresse, die in dem Videospeicher liegt. Der Wert, den dieser Mechanismus realisieren muss, ist somit das, was die Videokarte und der Treiber als zum Malen verfügbar geltend machen. Dieser Wert wird von den Registern abefragt, mit spezifischen Beträgen modifiziert und wieder auf die Karte geschrieben. Anschließend ändert die vorliegende Erfindung den Bereich des beschreibbaren, sichtbaren Anzeigeraums, ohne die Anzeigeschnittstelle des Betriebssystems über die Änderung zu informieren.
  • Diese Erfindung ändert nicht unbedingt die CRTCs, um nur den Boden hinzuzufügen. Vorzugsweise wird auch die Spitze ein wenig nach oben bewegt. Dies hält die Anzeige in dem Overscan-Bereich zentriert. Anstatt nur dem Boden 32 Abtastzeilen hinzuzufügen, wird die Spitze des Anzeigebereichs um 16 Zeilen nach oben bewegt.
  • Diese Erfindung hängt nicht allein von dem Vermögen ab, die CRTCs zu ändern, um den sichtbaren Anzeigebereich zu modifizieren. Alternative Mechanismen definieren andere Verfahren zum Erzeugen von und Zugreifen auf sichtbare Bereiche des Schirms, die außerhalb der Abmessungen des Desktops liegen, auf die die Anzeigeschnittstelle des Betriebssystems zugreift.
  • Aus einer Betrachtung der Beschreibungen, Zeichnungen und Ansprüche werden andere Ausführungen und Variationen der Erfindung für eine in der Computerwissenschaft erfahrene Person ersichtlich sein.
  • Im Besonderen, die Sekundär-GUI kann sich in Bereichen befinden, die normalerweise nicht als der herkömmliche Overscan-Bereich angesehen werden. Zum Beispiel kann die Sekundär-GUI in einem kleinen Quadrat genau in der Mitte der normalen Anzeige positioniert werden, um eine von dem einzelnen System und der Anwendung benötigten Service bereitzustellen. In der Tat können die Verfahren des Lesens und Umschreibens von Schirmanzeigeinformation innerhalb des Umfangs der Erfindung benutzt werden, um die Primar-GUI-Information oder Teile davon in einem zusätzlichen Speicher zu bewahren, und selektiv auf einer zeitgesteuerten oder anderen Basis einen Teil der Primär-GUI durch die Sekundär-GUI zu ersetzen.
  • Als ein einfaches Beispiel kann ein Sicherheitssystem die Fähigkeit erfordern, dem Benutzer Information ohne Rücksicht auf den Zustand des Computersystem anzuzeigen, und/oder erfordern, dass der Benutzer eine Auswahl trifft, z.B. durch Klicken auf "911?" nach Hilfe ruft. Die vorliegende Erfindung könnte einen Videoanzeigepuffer bereitstellen, in dem ein Teil der Primar-GUI-Schnittstelle dauernd aufgezeichnet und in einer Sekundär-GUI, z.B. in der Mitte des Schirms, angezeigt wurde. Unter gefahrlosen Bedingungen würde die Sekundär-GUI dann effektiv unsichtbar sein, wobei der Benutzer nichts außer der Primär-GUI zur Kenntnis nehmen würde.
  • Unter den geeigneten Gefahrenbedindungen könnte ein Alarmmonitor die Sekundär-GUI veranlassen, dem Benutzer die "911?" zu präsentieren, durch Überschreiben der in dem Sekundär-GUI-Speicher gespeicherten Kopie der Primäranzeige. Alternativ kann eine Datenbank von Fotografien gespeichert werden und eine als Reaktion auf einen ankommenden Telefonanruf aufgerufen werden, in dem die Anrufer-ID eine mit einem Datenbank-Fotoeintrag verbundene Telefonnummer identifizierte.
  • Grundsätzlich kann die vorliegende Erfindung eine oder mehrere Sekundär-Benutzerschnittstellen bereitstellen, die immer dann hilfreich sein können, wenn es bequemer oder wünschenswert ist, einen Teil des Gesamtanzeige, entweder außerhalb der Primäranzeige in einem unbenutzten Bereich, z.B. Overscan, oder auch in einem Abschnitt der Primär-GUI direkt oder durch Zeitmultiplexierung, direkt durch Kommunikation mit dem Videospeicher durch Umgehen wenistens eines Teils des Videospeichers zu steuern, um einen neuen Videospeicher zu erzeugen. Mit anderen Worten, die vorliegende Erfindung kann eine oder mehrere Sekundär-Benutzerschnittstellen außerhalb der Steuerung des Systems, z.B. des Betriebssystems, das die Primär-GUI steuert, bereitstellen.
  • Zusätzliche Benutzerschnittstellen können für eine Vielfalt verschiedener Zwecke verwendet werden. Zum Beispiel kann eine Sekundär-Benutzerschnittstelle verwendet werden, um einen gleichzeitigen Zugriff auf das Internet, voll bewegtes Video und einen Konferenzkanal bereitzustellen. Eine Sekundär-Benutzerschnittstelle kann einem lokalen Netzwerk zugeordnet werden oder mehrfache Sekundär-Benutzerschnittstellen können gleichzeitigen Zugang und Daten für ein oder mehrere Netzwerke bereitstellen, mit denen ein bestimmter Computer verbunden sein kann.
  • Nachdem nun die Erfindung nach den Erfordernissen der Patentstatute beschrieben wurde, werden die Fachleute in dieser Technik verstehen, wie Änderungen und Modifikationen in der vorliegenden Erfindung vorzunehmen sind, um ihre spezifischen Anforderungen oder Bedingungen zu erfüllen. Solche Änderungen und Modifikationen können vorgenommen werden, ohne von dem Umfang der Erfindung, wie in den folgenden Ansprüchen dargelegt, abzuweichen.

Claims (55)

  1. Verfahren zum Anzeigen von Daten auf einem Video-Anzeigesystem in Verbindung mit einer Computer-Betriebssystem-Benutzerschnittstelle, die wenigstens einen Teil eines ersten Anzeigebereiches einnimmt, wobei der erste Anzeigebereich über die Computer-Betriebssystem-Benutzerschnittstelle zugänglich ist und erste Bilddaten anzeigt, und das Video-Anzeigesystem einen adressierbaren Gesamt-Anzeigebereich hat, zu dem der erste Anzeigebereich als ein Teil gehört, und das Verfahren umfasst: Modifizieren des adressierbaren Gesamt-Anzeigebereiches des Video-Anzeigesystems, indem die Anzeigeparameter des Video-Anzeigesystems so eingestellt werden, dass es einen zweiten Anzeigebereich einschließt, der über die Computer-Betriebssystem-Benutzerschnittstelle nicht zugänglich ist; Zuweisen des modifizierten ansteuerbaren Gesamt-Anzeigebereiches und entsprechender Speicherressourcen des Video-Anzeigesystems zwischen dem ersten Anzeigebereich und dem zweiten Anzeigebereich; und Schreiben zweiter Bilddaten in die Speicherressource des zweiten Anzeigebereiches, so dass die zweiten Bilddaten auf dem Video-Anzeigesystem zusammen mit den ersten Anzeigedaten angezeigt werden, die in Verbindung mit der Benutzerschnittstelle des Computer-Betriebssystems angezeigt werden.
  2. Verfahren nach Anspruch 1, wobei durch das Zuweisen des modifizierten ansteuerbaren Gesamt-Anzeigebereiches die Größe des Teils, der für die Betriebssystem-Benutzerschnittstelle zugänglich ist, relativ zur Größe des ansteuerbaren Gesamt-Anzeigebereiches verringert wird.
  3. Verfahren nach Anspruch 2, wobei der modifizierte ansteuerbare Gesamt-Anzeigebereich größer ist als vor der Modifizierung.
  4. Verfahren nach Anspruch 1, wobei der modifizierte ansteuerbare Gesamt-Anzeigebereich größer ist als vor der Modifizierung und durch das Zuweisen des modifizierten ansteuerbaren Gesamt-Anzeigebereiches die Größe des ersten Anzeigebereiches vergrößert wird.
  5. Verfahren nach Anspruch 4, wobei die vergrößerte Größe des ersten Anzeigebereiches keine Standard-Videoauflösungsmodus-Größe ist.
  6. Verfahren nach Anspruch 1, wobei durch das Einstellen der Anzeigeparameter des Video-Anzeigesystems die Anzahl ansteuerbarer Pixel in wenigstens einer Dimension des ansteuerbaren Gesamt-Anzeigebereiches auf weniger als oder genauso viel wie die maximale Anzahl von Pixeln erhöht wird, die effektiv durch das Video-Anzeigesystem angezeigt werden können.
  7. Verfahren nach Anspruch 6, wobei durch das Einstellen der Anzeigeparameter des Video-Anzeigesystems die Anzahl ansteuerbarer Pixel erhöht wird, indem Pixel in einem Bildschirmrahmenbereich des Video-Anzeigesystems angesteuert werden.
  8. Verfahren nach Anspruch 7, wobei die zweiten Bilddaten in wenigstens einem Teil von Pixeln in dem Bildschirmrahmenbereich angezeigt werden und Bilddaten eines beweglichen Zeigers einschließen, der sich in Zusammenhang mit Benutzereingabe bewegt.
  9. Verfahren nach Anspruch 8, wobei der Zeiger eine dazugehörige Spitze aufweist, die außerhalb eines Cursor-Aktivierungspunktes angeordnet ist, der zu der Spitze gehört, und der Cursor-Aktivierungspunkt innerhalb des ersten Anzeigebereiches bleibt, während der Zeiger in dem zweiten Anzeigebereich angezeigt wird.
  10. Verfahren nach Anspruch 6, wobei die eingestellten Anzeigeparameter Steuerparameter für eine Steuerung einer Kathodenstrahlröhren-Anzeige sind.
  11. Verfahren nach Anspruch 1, wobei der modifizierte ansteuerbare Gesamt-Anzeigebereich so vergrößert wird, dass er einen zweiten Anzeigebereich einschließt, indem die Anzahl ansteuerbarer Pixel in wenigstens einer Dimension des ansteuerbaren Gesamt-Anzeigebereiches erhöht wird.
  12. Verfahren nach Anspruch 11, wobei die Dimension, in der die Anzahl ansteuerbarer Pixel erhöht wird, vertikal ist und die Daten unter der Betriebssystem-Benutzerschnittstelle angezeigt werden.
  13. Verfahren nach Anspruch 11, wobei die Dimension, in der die Anzahl adressierbarer Pixel erhöht wird, vertikal ist, und die Daten über der Betriebssystem-Benutzerschnittstelle angezeigt werden.
  14. Verfahren nach Anspruch 11, wobei die Abmessung, in der die Anzahl ansteuerbarer Pixel erhöht wird, horizontal ist und die Daten links von der Betriebssystem-Benutzerschnittstelle angezeigt werden.
  15. Verfahren nach Anspruch 11, wobei die Dimension, in der die Anzahl ansteuerbarer Pixel erhöht wird, horizontal ist und die Daten rechts von der Betriebssystem-Benutzerschnittstelle angezeigt werden.
  16. Verfahren nach Anspruch 11, wobei die Dimension, in der die Anzahl ansteuerbarer Pixel erhöht wird, sowohl horizontal als auch vertikal ist und die Daten auf einer vertikalen Seite der Betriebssystem-Benutzerschnittstelle sowie auf einer horizontalen Seite der Betriebssystem-Benutzerschnittstelle angezeigt werden.
  17. Verfahren nach Anspruch 1, wobei, wenn der ansteuerbare Gesamt-Anzeigebereich des Video-Anzeigesystems modifiziert wird, so dass er den zweiten Anzeigebereich einschließt, nachdem die Parameter eingestellt werden, der ansteuerbare Gesamt-Anzeigebereich auf eine Standardauflösung vergrößert wird, die von dem Video-Anzeigesystem unterstützt wird.
  18. Verfahren nach Anspruch 1, wobei das Einstellen der Anzeigeparameter und das Zuweisen des modifizierten ansteuerbaren Gesamt-Anzeigebereiches des Weiteren umfasst: Empfangen einer Aufforderung von dem Betriebssystem, einen ersten, höheren Videoauflösungsmodus zu verwenden; Auffordern des Video-Anzeigesystems, einen zweiten höheren Videoauflösungsmodus zu verwenden, der höher ist als der erste höhere Videoauflösungsmodus, um so die Größe des adressierbaren Gesamt-Anzeigebereiches zu vergrößern; Zuweisen eines Teils des ansteuerbaren Gesamt-Anzeigebereiches, der dem ersten höheren Videoauflösungsmodus entspricht, zu dem ersten Anzeigebereich; und Zuweisen eines Teils des ansteuerbaren Gesamt-Anzeigebereiches zwischen dem ersten höheren Videoauflösungsmodus und dem zweiten höheren Videoauflösungsmodus zu dem zweiten Anzeigebereich zum Anzeigen der zweiten Bilddaten.
  19. Verfahren nach Anspruch 1, wobei das Einstellen der Anzeigeparameter und das Zuweisen des modifizierten ansteuerbaren Gesamt-Anzeigebereiches des Weiteren umfasst: Empfangen einer Aufforderung von dem Betriebssystem, einen höheren Videoauflösungsmodus zu verwenden, der höher ist als ein aktueller Auflösungsmodus, so dass der ansteuerbare Gesamt-Anzeigebereich auf den höheren Videoauflösungsmodus vergrößert wird; Zuweisen eines Teils des ansteuerbaren Gesamt-Anzeigebereiches, der dem aktuellen Auflösungsmodus entspricht, zu dem ersten Anzeigebereich; und Zuweisen des vergrößerten ansteuerbaren Gesamt-Anzeigebereiches zwischen dem höheren Videoauflösungsmodus und dem aktuellen Videoauflösungsmodus zu dem zweiten Anzeigebereich zum Anzeigen der zweiten Bilddaten.
  20. Verfahren nach Anspruch 1, wobei das Einstellen der Anzeigeparameter und das Zuweisen des modifizierten ansteuerbaren Gesamt-Anzeigebereiches des Weiteren umfasst: Empfangen einer Aufforderung von dem Betriebssystem, einen ersten höheren Videoauflösungsmodus zu verwenden; Auffordern des Video-Anzeigesystems, den ersten höheren Videoauflösungsmodus zu verwenden, so dass sich der Bereich des ansteuerbaren Gesamt-Anzeigebereiches vergrößert; Zuweisen eines Teils des vergrößerten Bereiches des ansteuerbaren Gesamt-Anzeigebereiches zu dem ersten Anzeigebereich; und Zuweisen des restlichen Teils des vergrößerten Bereiches zu dem zweiten Anzeigebereich zum Anzeigen der zweiten Bilddaten.
  21. Verfahren nach Anspruch 1, wobei wenigstens ein Teil des zweiten Bildes zusammen mit dem ersten Bild, das in Verbindung mit der Betriebssystem-Benutzerschnittstelle angezeigt wird, so angezeigt wird, dass unterbunden wird, dass die Betriebssystem-Benutzerschnittstelle die Daten des Teils des zweiten Bildes überschreibt.
  22. Anzeige-Steuerung, die die Anzeige einer sekundären Benutzerschnittstelle auf einem Video-Anzeigesystem zusammen mit der Anzeige einer primären Benutzerschnittstelle ermöglicht, wobei die primäre Benutzerschnittstelle durch ein separat gesteuertes Programm auf einem ersten Anzeigebereich des Video-Anzeigesystems dargestellt wird und das Video-Anzeigesystem einen ansteuerbaren Gesamt-Anzeigebereich hat, und die umfasst: eine Anzeige-Einstelleinrichtung, die den ansteuerbaren Gesamt-Anzeigebereich des Video-Anzeigesystems modifiziert, indem sie die Anzeigeparameter des Video-Anzeigesystems so einstellt, dass es einen zweiten Anzeigebereich einschließt, der für das separat gesteuerte Programm nicht zugänglich ist; eine Anzeige-Zuweisungseinrichtung, die den modifizierten ansteuerbaren Gesamt-Anzeigebereich und entsprechende Speicherressourcen des Video-Anzeigesystems zwischen dem ersten Anzeigebereich und dem zweiten Anzeigebereich zuweist; und einen Anzeige-Übertragungsmechanismus, der Bilddaten für die sekundäre Benutzerschnittstelle in die Speicherressource des zweiten Anzeigebereiches schreibt, so dass die sekundäre Benutzerschnittstelle zusammen mit der primären Benutzerschnittstelle auf dem Video-Anzeigesystem angezeigt wird.
  23. Steuerung nach Anspruch 22, wobei die Anzeige-Zuweisungseinrichtung die Größe eines Teils des ansteuerbaren Gesamt-Anzeigebereiches, der für das separat gesteuerte Programm zugänglich ist, relativ zu der Größe des ansteuerbaren Gesamt-Anzeigebereiches verkleinert.
  24. Steuerung nach Anspruch 23, wobei die Anzeige-Einstelleinrichtung den ansteuerbaren Gesamt-Anzeigebereich vergrößert.
  25. Steuerung nach Anspruch 22, wobei die Anzeige-Einstelleinrichtung den ansteuerbaren Gesamt-Anzeigebereich vergrößert und die Anzeige-Zuweisungseinrichtung die Größe des ersten Anzeigebereiches vergrößert.
  26. Steuerung nach Anspruch 25, wobei die vergrößerte Größe des ersten Anzeigebereiches keine Standard-Videoauflösungsmodus-Größe ist.
  27. Steuerung nach Anspruch 22, wobei durch das Einstellen der Anzeigeparameter des Video-Anzeigesystems die Anzahl ansteuerbarer Pixel in wenigstens einer Dimension des ansteuerbaren Gesamt-Anzeigebereiches auf weniger als oder ge nauso viel wie die maximale Anzahl von Pixel erhöht wird, die effektiv on dem Video-Anzeigesystem angezeigt werden können.
  28. Steuerung nach Anspruch 27, wobei die Anzeige-Einstelleinrichtung die Anzeigeparameter des Video-Anzeigesystems einstellt, indem Pixel in einem Bildschirmrahmenbereich des Video-Anzeigesystems angesteuert werden.
  29. Steuerung nach Anspruch 28, wobei der Anzeige-Übertragungsmechanismus die sekundäre Benutzerschnittstelle in wenigstens einem Teil von Pixeln in dem Bildschirmrahmenbereich anzeigt und einen beweglichen Zeiger anzeigt, der sich in Zusammenhang mit Benutzereingabe bewegt.
  30. Steuerung nach Anspruch 29, wobei der bewegliche Zeiger eine dazugehörige Spitze aufweist, die außerhalb eines Cursor-Aktivierungspunktes angeordnet ist, der mit der Spitze verbunden ist, und der Cursor-Aktivierungspunkt innerhalb des ersten Anzeigebereiches bleibt, während der Zeiger in dem Anzeigebereich angezeigt wird, der mit der sekundären Benutzerschnittstelle verbunden ist.
  31. Steuerung nach Anspruch 27, wobei die Anzeigeparameter, die durch die Anzeige-Einstelleinrichtung eingestellt werden, Steuerparameter für eine Steuerung einer Kathodenstrahlröhren-Anzeige sind.
  32. Steuerung nach Anspruch 22, wobei die Anzeige-Einstelleinrichtung den ansteuerbaren Gesamt-Anzeigebereich so vergrößert, dass er einen zweiten Anzeigebereich anschließt, indem die Anzahl ansteuerbarer Pixel in wenigstens einer Dimension des ansteuerbaren Gesamt-Anzeigebereiches erhöht wird.
  33. Steuerung nach Anspruch 32, wobei die Dimension, in der die Anzahl ansteuerbarer Pixel erhöht wird, vertikal ist und die sekundäre Benutzerschnittstelle unter der primären Benutzerschnittstelle angezeigt wird.
  34. Steuerung nach Anspruch 32, wobei die Dimension, in der die Anzahl ansteuerbarer Pixel erhöht wird, vertikal ist und die sekundäre Benutzerschnittstelle über der primären Benutzerschnittstelle angezeigt wird.
  35. Steuerung nach Anspruch 32, wobei die Dimension, in der die Anzahl ansteuerbarer Pixel erhöht wird, horizontal ist und die sekundäre Benutzerschnittstelle links von der primären Benutzerschnittstelle angezeigt wird.
  36. Steuerung nach Anspruch 32, wobei die Dimension, in der die Anzahl ansteuerbarer Pixel erhöht wird, horizontal ist und die sekundäre Benutzerschnittstelle rechts von der primären Benutzerschnittstelle angezeigt wird.
  37. Steuerung nach Anspruch 32, wobei die Dimension, in der die Anzahl ansteuerbarer Pixel erhöht wird, sowohl horizontal als auch vertikal ist und die sekundäre Benutzerschnittstelle auf einer vertikalen Seite der primären Benutzerschnittstelle sowie auf einer horizontalen Seite der primären Benutzerschnittstelle angezeigt wird.
  38. System nach Anspruch 22, wobei die Anzeige-Einstelleinrichtung den ansteuerbaren Gesamt-Anzeigebereich so modifiziert, dass er den zweiten Anzeigebereich einschließt, indem die Anzeigeparameter so eingestellt werden, dass der ansteuerbare Gesamt-Anzeigebereich auf eine Standardauflösung vergrößert wird, die von dem Video-Anzeigesystem unterstützt wird.
  39. Steuerung nach Anspruch 22, wobei die Anzeige-Einstelleinrichtung und die Anzeige-Zuweisungseinrichtung des Weiteren umfassen: einen Hooking-Mechanismus, der: eine Aufforderung von dem separat gesteuerten Programm empfängt, einen ersten höheren Videoauflösungsmodus zu verwenden; das Video-Anzeigesystem auffordert, einen zweiten höheren Videoauflösungsmodus zu verwenden, der höher ist als der erste höhere Videoauflösungsmodus, um so die Größe des ansteuerbaren Gesamt-Anzeigebereiches zu vergrößern; dem ersten Anzeigebereich einen Teil des ansteuerbaren Gesamt-Anzeigebereiches zuweist, der dem ersten höheren Auflösungsmodus entspricht; und dem zweiten Anzeigebereich einen Teil des ansteuerbaren Gesamt-Anzeigebereiches zwischen dem ersten höheren Videoauflösungsmodus und dem zweiten höheren Videoauflösungsmodus zuweist.
  40. Steuerung nach Anspruch 22, wobei die Anzeige-Einstelleinrichtung und die Anzeige-Zuweisungseinrichtung des Weiteren umfassen: einen Hooking-Mechanismus, der: eine Aufforderung von dem separat gesteuerten Programm empfängt, einen höheren Videoauflösungsmodus zu verwenden, der höher ist als ein aktueller Auflösungsmodus, um so die Größe des ansteuerbaren Gesamt-Anzeigebereiches zu vergrößern; dem ersten Anzeigebereich einen Teil des ansteuerbaren Gesamt-Anzeigebereiches zuweist, der dem aktuellen Auflösungsmodus entspricht; und dem zweiten Anzeigebereich einen Teil des ansteuerbaren Gesamt-Anzeigebereiches zwischen dem höheren Videoauflösungsmodus und dem aktuellen Videoauflösungsmodus zuweist.
  41. Steuerung nach Anspruch 22, wobei die Anzeige-Einstelleinrichtung und die Anzeige-Zuweisungseinrichtung des Weiteren umfassen: einen Hooking-Mechanismus, der: eine Aufforderung von dem separat gesteuerten Programm empfängt, einen ersten höheren Videoauflösungsmodus zu verwenden; das Video-Anzeigesystem auffordert, den ersten höheren Videoauflösungsmodus zu verwenden, so dass der ansteuerbare Gesamt-Anzeigebereich vergrößert wird; dem ersten Anzeigebereich einen Teil der Vergrößerung des ansteuerbaren Gesamt-Anzeigebereichs zuweist; und dem zweiten Anzeigebereich einen verbleibenden Teil der Vergrößerung des ansteuerbaren Gesamt-Anzeigebereiches zuweist.
  42. Steuerung nach Anspruch 22 wobei der Anzeige-Übertragungsmechanismus wenigstens einen Teil der sekundären Benutzerschnittstelle zusammen mit der primären Benutzerschnittstelle so anzeigt, dass unterbunden wird, dass die primäre Benutzerschnittstelle den Teil der sekundären Benutzerschnittstelle überschreibt.
  43. Steuerung nach Anspruch 22, wobei die Anzeige-Einstelleinrichtung die Anzeigeparameter des Video-Anzeigesystems einstellt, indem sie Funktionsaufrufe an Ansteuer-Software des Video-Anzeigesystems durchführt.
  44. Computerlesbares Speichermedium, das Befehle enthält, mit denen ein Computer-Prozessor zum Anzeigen einer sekundären Benutzerschnittstelle auf einem Video-Anzeigesystem in Verbindung mit der Anzeige einer primären Benutzerschnittstelle eines separat gesteuerten Programms auf einem ersten Anzeigebereich des Video-Anzeigesystems, wobei das Video-Anzeigesystem einen ansteuerbaren Gesamt-Anzeigebereich hat, zu dem der erste Anzeigebereich als ein Teil gehört, gesteuert wird, indem: der ansteuerbare Gesamt-Anzeigebereich des Video-Anzeigesystems modifiziert wird, indem die Anzeigeparameter des Video-Anzeigesystems so eingestellt werden, dass sie einen zweiten Anzeigebereich einschließen, der für das separat gesteuerte Programm nicht zugänglich ist; der modifizierte ansteuerbare Gesamt-Anzeigebereich und entsprechende Speicherressourcen des Video-Anzeigesystems zwischen dem ersten Anzeigebereich und dem zweiten Anzeigebereich zugewiesen werden; Bilddaten der sekundären Benutzerschnittstelle in die zweite Speicherressource für den zweiten Anzeigebereich geschrieben werden.
  45. Computerlesbares Speichermedium nach Anspruch 44, wobei durch das Zuweisen des modifizierten ansteuerbaren Gesamt-Anzeigebereiches die Größe des Teils, der für das separat gesteuerte Programm zugänglich ist, relativ zu der Größe des ansteuerbaren Gesamt-Anzeigebereiches verringert wird.
  46. Computerlesbares Speichermedium nach Anspruch 45, wobei der modifizierte ansteuerbare Gesamt-Anzeigebereich vergrößert wird.
  47. Computerlesbares Speichermedium nach Anspruch 44, wobei der modifizierte ansteuerbare Gesamt-Anzeigebereich größer ist als vor der Modifizierung und durch das Zuweisen des modifizierten ansteuerbaren Gesamt-Anzeigebereiches die Größe des ersten Anzeigebereiches vergrößert wird.
  48. Computerlesbares Speichermedium nach Anspruch 47, wobei die vergrößerte Größe des ersten Anzeigebereiches keine Standard-Videoauflösungsmodus-Größe ist.
  49. Computerlesbares Speichermedium nach Anspruch 44, wobei durch das Einstellen der Parameter des Video-Anzeigesystems die Anzahl ansteuerbarer Pixel in wenigstens einer Dimension des ansteuerbaren Gesamt-Anzeigebereiches auf weniger oder genauso viel wie die maximale Anzahl von Pixeln erhöht wird, die effektiv durch das Video-Anzeigesystem angezeigt werden können.
  50. Computerlesbares Speichermedium nach Anspruch 49, wobei durch das Einstellen der Anzeigeparameter des Video-Anzeigesystems Pixel in einem Bildschirmrahmenbereich des Video-Anzeigesystems angesteuert werden.
  51. Computerlesbares Speichermedium nach Anspruch 44, wobei die sekundäre Benutzerschnittstelle in wenigstens einem Teil von Pixeln in dem Bildschirmrahmenbereich angezeigt wird und einen beweglichen Zeiger einschließt, der sich im Zusammenhang mit Benutzereingabe bewegt.
  52. Computerlesbares Speichermedium nach Anspruch 51, wobei der Zeiger eine dazugehörige Spitze hat, die außerhalb eines Cursor-Aktivierungspunktes angeordnet ist, der zu der Spitze gehört, und der Cursor-Aktivierungspunkt innerhalb des ersten Anzeigebereiches bleibt, während der Zeiger innerhalb der zweiten Benutzerschnittstelle angezeigt wird.
  53. Computerlesbares Speichermedium nach Anspruch 44, wobei, wenn der ansteuerbare Gesamt-Anzeigebereich des Video-Anzeigesystems so modifiziert wird, dass er den zweiten Anzeigebereich einschließt, indem die Parameter eingestellt werden, der ansteuerbare Gesamt-Anzeigebereich auf eine Standardauflösung vergrößert wird, die von dem Video-Anzeigesystem unterstützt wird.
  54. Computerlesbares Speichermedium nach Anspruch 44, wobei das Einstellen der Anzeigeparameter und das Zuweisen des modifizierten ansteuerbaren Gesamt-Anzeigebereiches durchgeführt wird, indem: eine Aufforderung von der primären Benutzerschnittstelle empfangen wird; das Video-Anzeigesystem aufgefordert wird, einen anderen Videoauflösungsmodus zu verwenden, um so die Größe des ansteuerbaren Gesamt-Anzeigebereiches zu modifizieren; und der modifizierte ansteuerbare Gesamt-Anzeigebereich zwischen dem ersten Anzeigebereich und dem zweiten Anzeigebereich zugewiesen wird.
  55. Computerlesbares Speichermedium nach Anspruch 44, wobei wenigstens ein Teil der sekundären Benutzerschnittstelle zusammen mit der primären Benutzerschnittstelle so angezeigt wird, dass unterbunden wird, dass die primäre Benutzerschnittstelle den Teil der sekundären Benutzerschnittstelle überschreibt.
DE69828994T 1997-11-21 1998-11-18 Sekundärbenutzerschnittstelle Expired - Lifetime DE69828994T2 (de)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US08/975,268 US6018332A (en) 1997-11-21 1997-11-21 Overscan user interface
US975268 1997-11-21
US8847898P 1998-06-05 1998-06-05
US88478P 1998-06-05
US09/191,322 US6330010B1 (en) 1997-11-21 1998-11-13 Secondary user interface
US191322 1998-11-13
PCT/US1998/024633 WO1999027517A1 (en) 1997-11-21 1998-11-18 Secondary user interface

Publications (2)

Publication Number Publication Date
DE69828994D1 DE69828994D1 (de) 2005-03-17
DE69828994T2 true DE69828994T2 (de) 2006-03-30

Family

ID=27375984

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69828994T Expired - Lifetime DE69828994T2 (de) 1997-11-21 1998-11-18 Sekundärbenutzerschnittstelle

Country Status (10)

Country Link
US (4) US6330010B1 (de)
EP (1) EP1031127B1 (de)
JP (1) JP2001524725A (de)
CN (1) CN1130683C (de)
AT (1) ATE289108T1 (de)
AU (1) AU736654B2 (de)
BR (1) BR9814888A (de)
CA (1) CA2310759C (de)
DE (1) DE69828994T2 (de)
WO (1) WO1999027517A1 (de)

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6686936B1 (en) 1997-11-21 2004-02-03 Xsides Corporation Alternate display content controller
US6330010B1 (en) 1997-11-21 2001-12-11 Xsides Corporation Secondary user interface
US6337717B1 (en) 1997-11-21 2002-01-08 Xsides Corporation Alternate display content controller
US6018332A (en) 1997-11-21 2000-01-25 Ark Interface Ii, Inc. Overscan user interface
US6639613B1 (en) 1997-11-21 2003-10-28 Xsides Corporation Alternate display content controller
US6437809B1 (en) 1998-06-05 2002-08-20 Xsides Corporation Secondary user interface
US8555194B2 (en) * 1998-07-17 2013-10-08 D. David Nason Secondary user interface
US6426762B1 (en) * 1998-07-17 2002-07-30 Xsides Corporation Secondary user interface
US6590592B1 (en) * 1999-04-23 2003-07-08 Xsides Corporation Parallel interface
US6593945B1 (en) 1999-05-21 2003-07-15 Xsides Corporation Parallel graphical user interface
US6570595B2 (en) * 1999-06-24 2003-05-27 Xoucin, Inc. Exclusive use display surface areas and persistently visible display of contents including advertisements
US7523415B1 (en) * 1999-06-24 2009-04-21 Porter Swain W Exclusive use display surface areas and persistently visible display of contents including advertisements
US6630943B1 (en) 1999-09-21 2003-10-07 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
US6677964B1 (en) 2000-02-18 2004-01-13 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
US20040226041A1 (en) * 2000-02-18 2004-11-11 Xsides Corporation System and method for parallel data display of multiple executing environments
AU2001245406A1 (en) * 2000-03-03 2001-09-17 Merinta, Inc. Persistent portal for a browser
US7227511B2 (en) * 2000-04-24 2007-06-05 Microsoft Corporation Method for activating an application in context on a remote input/output device
US7030837B1 (en) 2000-04-24 2006-04-18 Microsoft Corporation Auxiliary display unit for a computer system
US6917373B2 (en) * 2000-12-28 2005-07-12 Microsoft Corporation Context sensitive labels for an electronic device
JP3601781B2 (ja) * 2000-10-17 2004-12-15 インターナショナル・ビジネス・マシーンズ・コーポレーション コンピュータ装置、表示装置、表示制御装置、記憶媒体、プログラム伝送装置、表示制御方法
US6793625B2 (en) * 2000-11-13 2004-09-21 Draeger Medical Systems, Inc. Method and apparatus for concurrently displaying respective images representing real-time data and non real-time data
US7099439B2 (en) 2001-02-26 2006-08-29 Classco Inc. Loop test apparatus and method
DE10112723A1 (de) * 2001-03-14 2002-09-19 Siegfried Koenig Verfahren zum Platzieren einer Informationsfläche auf einer Webside und Informationsfläche auf einer Webside
AU2002316475A1 (en) * 2001-06-27 2003-03-03 United Virtualities, Inc. Method for controlling a computer display
WO2003036558A1 (en) * 2001-10-24 2003-05-01 Nik Multimedia, Inc. User definable image reference points
US7602991B2 (en) * 2001-10-24 2009-10-13 Nik Software, Inc. User definable image reference regions
US7418087B2 (en) * 2002-01-04 2008-08-26 Classco Inc. Telephone network messaging
US20030223586A1 (en) * 2002-05-30 2003-12-04 Edward Green Method and system for secure communications over a communications network
TW591398B (en) * 2002-09-26 2004-06-11 Tatung Co Method of implementing a plurality of system tray areas
US7111245B2 (en) * 2002-12-17 2006-09-19 International Business Machines Corporation System and method for smart graphical components
US20040113950A1 (en) * 2002-12-17 2004-06-17 International Business Machines Corporation System and method for centrally managed self-contained desktops
US7117448B2 (en) 2002-12-17 2006-10-03 International Business Machines Corporation System and method for determining desktop functionality based on workstation and user roles
US7310775B2 (en) * 2002-12-17 2007-12-18 International Business Machines Corporation System and method for restoring desktop components using distributed desktop packages
US7243336B2 (en) * 2002-12-17 2007-07-10 International Business Machines Corporation System and method of extending application types in a centrally managed desktop environment
US7203905B2 (en) 2002-12-17 2007-04-10 International Business Machines Corporation System and method for platform independent desktop lockdown
KR100524066B1 (ko) * 2003-02-08 2005-10-26 삼성전자주식회사 디바이스 대화창 표시방법 및 장치
US7395334B2 (en) * 2003-04-25 2008-07-01 International Business Machines Corporation System for determining unreturned standby resource usage
WO2004104982A1 (en) * 2003-05-14 2004-12-02 Collaborative Sciences And Technology, Inc. Persistent portal
US8302111B2 (en) 2003-11-24 2012-10-30 Time Warner Cable Inc. Methods and apparatus for hardware registration in a network device
US7266726B1 (en) 2003-11-24 2007-09-04 Time Warner Cable Inc. Methods and apparatus for event logging in an information network
US9213538B1 (en) 2004-02-06 2015-12-15 Time Warner Cable Enterprises Llc Methods and apparatus for display element management in an information network
JP4589308B2 (ja) * 2004-04-05 2010-12-01 パナソニック株式会社 表示画面管理装置
US7546599B2 (en) * 2004-12-20 2009-06-09 Intel Corporation Method, apparatus and system for instructing a virtual device from a virtual machine
US7890881B1 (en) * 2005-07-29 2011-02-15 Adobe Systems Incorporated Systems and methods for a fold preview
US20070033522A1 (en) * 2005-08-02 2007-02-08 Lin Frank L System and method for dynamic resizing of web-based GUIs
US9563876B2 (en) * 2005-10-24 2017-02-07 International Business Machines Corporation Control options for instant message display and notification
US7844673B2 (en) * 2005-10-24 2010-11-30 International Business Machines Corporation Filtering features for multiple minimized instant message chats
US20070094342A1 (en) * 2005-10-24 2007-04-26 Bostick James E Detachable control window for instant messaging chats
US20080034037A1 (en) * 2006-08-04 2008-02-07 Jean-Pierre Ciudad Sharing Graphical User Interface Output In Chat Environment
KR101321435B1 (ko) * 2006-11-10 2013-10-25 삼성전자주식회사 컴퓨터 시스템 및 그 제어방법
US8174491B2 (en) * 2007-06-05 2012-05-08 Fuji Xerox Co., Ltd. Image display medium and image display device
CN101398766B (zh) * 2007-09-29 2012-05-09 联想(北京)有限公司 一种虚拟机系统中的显示处理方法及虚拟机系统
US9292069B1 (en) * 2007-11-12 2016-03-22 Nvidia Corporation System and method for controlling mode switches in hardware
US8319805B2 (en) * 2008-02-20 2012-11-27 Google Inc. Screen condensation with heterogeneous display resolution
US10489053B2 (en) * 2008-11-20 2019-11-26 Gula Consulting Limited Liability Company Method and apparatus for associating user identity
TW201101117A (en) * 2009-06-26 2011-01-01 Ibm Handheld device, method and computer program product for user selecting control unit of application program
US8856682B2 (en) * 2010-05-11 2014-10-07 AI Squared Displaying a user interface in a dedicated display area
US9401099B2 (en) 2010-05-11 2016-07-26 AI Squared Dedicated on-screen closed caption display
US10417018B2 (en) * 2011-05-27 2019-09-17 Microsoft Technology Licensing, Llc Navigation of immersive and desktop shells
US8924885B2 (en) 2011-05-27 2014-12-30 Microsoft Corporation Desktop as immersive application
US9843665B2 (en) * 2011-05-27 2017-12-12 Microsoft Technology Licensing, Llc Display of immersive and desktop shells
CN103365563A (zh) * 2012-04-06 2013-10-23 精英电脑股份有限公司 保持窗口应用程序完整可视范围的方法
KR101975049B1 (ko) * 2014-07-30 2019-05-03 후아웨이 테크놀러지 컴퍼니 리미티드 Ui 제어의 배경을 설정하는 방법 및 장치, 및 단말
CN107077816A (zh) * 2014-10-29 2017-08-18 寇平公司 三进制可寻址选择扫描器
EP3270372B1 (de) * 2015-03-13 2023-10-18 Panasonic Intellectual Property Management Co., Ltd. Elektronische vorrichtung und verfahren zur steuerung davon
WO2017069551A1 (en) 2015-10-23 2017-04-27 Samsung Electronics Co., Ltd. Image displaying apparatus and method of operating the same
CN105278811B (zh) * 2015-10-23 2022-06-07 三星电子(中国)研发中心 智能终端的屏幕显示装置和方法
US11716558B2 (en) 2018-04-16 2023-08-01 Charter Communications Operating, Llc Apparatus and methods for integrated high-capacity data and wireless network services
US11366571B2 (en) * 2018-05-04 2022-06-21 Dentma, LLC Visualization components including sliding bars
WO2020077346A1 (en) 2018-10-12 2020-04-16 Charter Communications Operating, Llc Apparatus and methods for cell identification in wireless networks
US10866728B2 (en) * 2018-10-23 2020-12-15 Lenovo (Singapore) Pte. Ltd. Notch taskbar
US11129171B2 (en) 2019-02-27 2021-09-21 Charter Communications Operating, Llc Methods and apparatus for wireless signal maximization and management in a quasi-licensed wireless system
US11026205B2 (en) 2019-10-23 2021-06-01 Charter Communications Operating, Llc Methods and apparatus for device registration in a quasi-licensed wireless system

Family Cites Families (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2096866B (en) 1981-04-10 1985-02-20 Philips Electronic Associated Improvements relating to character display
EP0121015B1 (de) 1983-03-31 1990-03-07 International Business Machines Corporation Abbildungsraumverwaltung und Wiedergabe in einem bestimmten Teil des Bildschirms eines virtuellen Mehrfunktionsterminals
US4558413A (en) 1983-11-21 1985-12-10 Xerox Corporation Software version management system
US5163024A (en) 1983-12-30 1992-11-10 Texas Instruments Incorporated Video display system using memory with parallel and serial access employing serial shift registers selected by column address
US4586035A (en) 1984-02-29 1986-04-29 International Business Machines Corporation Display terminal with a cursor responsive virtual distributed menu
US4649499A (en) 1984-03-07 1987-03-10 Hewlett-Packard Company Touchscreen two-dimensional emulation of three-dimensional objects
US4710761A (en) 1985-07-09 1987-12-01 American Telephone And Telegraph Company, At&T Bell Laboratories Window border generation in a bitmapped graphics workstation
US4868765A (en) 1986-01-02 1989-09-19 Texas Instruments Incorporated Porthole window system for computer displays
US4899136A (en) 1986-04-28 1990-02-06 Xerox Corporation Data processor having a user interface display with metaphoric objects
US5072412A (en) 1987-03-25 1991-12-10 Xerox Corporation User interface with multiple workspaces for sharing display system objects
US5394521A (en) 1991-12-09 1995-02-28 Xerox Corporation User interface with multiple workspaces for sharing display system objects
US5001697A (en) 1988-02-10 1991-03-19 Ibm Corp. Method to automatically vary displayed object size with variations in window size
US5036315A (en) 1988-09-06 1991-07-30 Spectragraphics, Inc. Simultaneous display of interleaved windowed video information from multiple asynchronous computers on a single video monitor
US4947257A (en) 1988-10-04 1990-08-07 Bell Communications Research, Inc. Raster assembly processor
US5146556A (en) 1988-10-11 1992-09-08 Next Computer, Inc. System and method for managing graphic images
US4972264A (en) 1989-06-19 1990-11-20 International Business Machines Corporation Method and apparatus for viewing an overscanned image
US5060170A (en) 1989-08-09 1991-10-22 International Business Machines Corp. Space allocation and positioning method for screen display regions in a variable windowing system
US5167030A (en) 1989-08-23 1992-11-24 Helix Software Company, Inc. System for dynamically allocating main memory to facilitate swapping of terminate and stay resident communication program to increase available memory space
US5119082A (en) 1989-09-29 1992-06-02 International Business Machines Corporation Color television window expansion and overscan correction for high-resolution raster graphics displays
JP3245655B2 (ja) 1990-03-05 2002-01-15 インキサイト ソフトウェア インコーポレイテッド 作業スペースの表示処理方法
US5202961A (en) 1990-06-08 1993-04-13 Apple Computer, Inc. Sequential information controller
JPH0455890A (ja) * 1990-06-25 1992-02-24 Canon Inc 画像データ制御装置及び表示システム
US5305435A (en) 1990-07-17 1994-04-19 Hewlett-Packard Company Computer windows management system and method for simulating off-screen document storage and retrieval
US5367623A (en) 1990-09-25 1994-11-22 Sharp Kabushiki Kaisha Information processing apparatus capable of opening two or more windows on screen, one window containing a page and other windows containing supplemental information
FR2693810B1 (fr) * 1991-06-03 1997-01-10 Apple Computer Systemes d'interfaces d'utilisateurs a acces direct a une zone secondaire d'affichage.
JPH05181443A (ja) 1991-07-01 1993-07-23 Seiko Epson Corp コンピュータ
US5237669A (en) 1991-07-15 1993-08-17 Quarterdeck Office Systems, Inc. Memory management method
US5500934A (en) 1991-09-04 1996-03-19 International Business Machines Corporation Display and control system for configuring and monitoring a complex system
US5148346A (en) * 1991-09-20 1992-09-15 Conax Florida Corporation EMI protected water-activated pressurized gas release apparatus
JP2552071B2 (ja) 1992-03-31 1996-11-06 インターナショナル・ビジネス・マシーンズ・コーポレイション 異なるグラフィック・ユーザ・インタフェースでサポートされる複数のウィンドウを同時に提示するための方法及びシステム
US5418572A (en) 1992-04-29 1995-05-23 Quantel Limited Method of and apparatus for displaying images at different rates
JPH06167966A (ja) 1992-06-15 1994-06-14 Seiko Epson Corp 表示回路
KR960003880B1 (ko) 1992-10-12 1996-03-23 엘지전자주식회사 캡션 자막 표시 제어장치와 표시 제어방법
US5673403A (en) 1992-11-13 1997-09-30 International Business Machines Corporation Method and system for displaying applications of different operating systems on a single system using the user interface of the different operating systems
US5986684A (en) * 1992-12-08 1999-11-16 Ricoh Company, Ltd. Thermal printing system having function for preventing over heating of thermal head
US6091430A (en) 1993-03-31 2000-07-18 International Business Machines Corporation Simultaneous high resolution display within multiple virtual DOS applications in a data processing system
CA2095448C (en) 1993-05-04 1998-05-05 Phillip J. Beaudet Window management system utilizing icons and miniature windows
US5784046A (en) 1993-07-01 1998-07-21 Intel Corporation Horizontally scaling image signals using digital differential accumulator processing
US5652851A (en) 1993-07-21 1997-07-29 Xerox Corporation User interface technique for producing a second image in the spatial context of a first image using a model-based operation
US5631825A (en) 1993-09-29 1997-05-20 Dow Benelux N.V. Operator station for manufacturing process control system
US5872714A (en) * 1993-11-26 1999-02-16 Ford Global Technologies, Inc. Rapidly making a contoured part
JP2972510B2 (ja) 1993-11-25 1999-11-08 株式会社日立製作所 文書作成装置
US5825357A (en) 1993-12-13 1998-10-20 Microsoft Corporation Continuously accessible computer system interface
US5421009A (en) 1993-12-22 1995-05-30 Hewlett-Packard Company Method of remotely installing software directly from a central computer
US5513342A (en) 1993-12-28 1996-04-30 International Business Machines Corporation Display window layout system that automatically accommodates changes in display resolution, font size and national language
US6185629B1 (en) 1994-03-08 2001-02-06 Texas Instruments Incorporated Data transfer controller employing differing memory interface protocols dependent upon external input at predetermined time
US5651127A (en) 1994-03-08 1997-07-22 Texas Instruments Incorporated Guided transfers with variable stepping
US5521614A (en) 1994-04-29 1996-05-28 Cirrus Logic, Inc. Method and apparatus for expanding and centering VGA text and graphics
WO1995034186A1 (en) 1994-06-03 1995-12-14 Apple Computer, Inc. System for producing directional sound in computer-based virtual environments
US5568603A (en) 1994-08-11 1996-10-22 Apple Computer, Inc. Method and system for transparent mode switching between two different interfaces
US5555364A (en) 1994-08-23 1996-09-10 Prosoft Corporation Windowed computer display
KR970005940B1 (ko) 1994-09-30 1997-04-22 대우전자 주식회사 모니터의 온스크린 디스플레이 장치
US5619639A (en) 1994-10-04 1997-04-08 Mast; Michael B. Method and apparatus for associating an image display area with an application display area
US5764964A (en) 1994-10-13 1998-06-09 International Business Machines Corporation Device for protecting selected information in multi-media workstations
US5838334A (en) 1994-11-16 1998-11-17 Dye; Thomas A. Memory and graphics controller which performs pointer-based display list video refresh operations
US6067098A (en) 1994-11-16 2000-05-23 Interactive Silicon, Inc. Video/graphics controller which performs pointer-based display list video refresh operation
US6002411A (en) 1994-11-16 1999-12-14 Interactive Silicon, Inc. Integrated video and memory controller with data processing and graphical processing capabilities
US6008803A (en) 1994-11-29 1999-12-28 Microsoft Corporation System for displaying programming information
US5621428A (en) 1994-12-12 1997-04-15 Auravision Corporation Automatic alignment of video window on a multimedia screen
US5617526A (en) 1994-12-13 1997-04-01 Microsoft Corporation Operating system provided notification area for displaying visual notifications from application programs
US5473745A (en) 1994-12-14 1995-12-05 International Business Machines Corporation Exposing and hiding a title bar behind its window using a visual cue
US5745762A (en) 1994-12-15 1998-04-28 International Business Machines Corporation Advanced graphics driver architecture supporting multiple system emulations
US5621904A (en) 1995-01-24 1997-04-15 Intel Corporation Method and apparatus for avoiding overlapped windows and a gutter space
JP3517301B2 (ja) 1995-03-28 2004-04-12 富士通株式会社 仮想画面表示処理システム
AR000593A1 (es) 1995-04-26 1997-07-10 Wink Communications Inc Método y sistema de información intreactivo para determinar información de radiodifusor
US5867178A (en) 1995-05-08 1999-02-02 Apple Computer, Inc. Computer system for displaying video and graphic data with reduced memory bandwidth
US5675755A (en) 1995-06-07 1997-10-07 Sony Corporation Window system preventing overlap of multiple always-visible windows
FR2735648B1 (fr) * 1995-06-13 1997-07-11 Bull Sa Procede de refroidissement d'un circuit integre monte dans un boitier
DE19523715C1 (de) * 1995-06-22 1996-10-10 Mannesmann Ag Horizontal-Stranggießanlage mit einem beheizbaren Mehrkammerofen mit ofenabhängiger Kokille
US5680323A (en) 1995-06-23 1997-10-21 Canon Information Systems, Inc. Multimedia player
US5704050A (en) 1995-06-29 1997-12-30 International Business Machine Corp. Snap control for relocating elements of a graphical user interface
US5742797A (en) 1995-08-11 1998-04-21 International Business Machines Corporation Dynamic off-screen display memory manager
US5757386A (en) 1995-08-11 1998-05-26 International Business Machines Corporation Method and apparatus for virtualizing off-screen memory of a graphics engine
TW302453B (de) 1995-08-25 1997-04-11 Ibm
US5838296A (en) 1995-08-31 1998-11-17 General Instrument Corporation Apparatus for changing the magnification of video graphics prior to display therefor on a TV screen
US5745386A (en) * 1995-09-25 1998-04-28 International Business Machines Corporation Timing diagram method for inputting logic design parameters to build a testcase for the logic diagram
US5940610A (en) 1995-10-05 1999-08-17 Brooktree Corporation Using prioritized interrupt callback routines to process different types of multimedia information
JPH09106336A (ja) 1995-10-11 1997-04-22 Sharp Corp 複数の表示画像を情報処理装置の表示窓内に表示する方法
JPH09114443A (ja) 1995-10-20 1997-05-02 Seiko Epson Corp 映像スケーリング装置
US5793438A (en) 1995-11-13 1998-08-11 Hyundai Electronics America Electronic program guide with enhanced presentation
KR19990072063A (ko) 1995-12-08 1999-09-27 엔, 마이클 그로브 컴퓨터 네트워크 상에 광고를 게재하기 위한 방법 및 시스템
US5724797A (en) * 1995-12-21 1998-03-10 New Holland North America, Inc. Crop guide for forage harvester row crop attachment
US5657050A (en) * 1996-01-30 1997-08-12 Microsoft Corporation Distance control for displaying a cursor
US5940077A (en) 1996-03-29 1999-08-17 International Business Machines Corporation Method, memory and apparatus for automatically resizing a window while continuing to display information therein
US5745109A (en) 1996-04-30 1998-04-28 Sony Corporation Menu display interface with miniature windows corresponding to each page
US6148346A (en) 1996-06-20 2000-11-14 Peerless Systems Imaging Products, Inc. Dynamic device driver
US6067071A (en) * 1996-06-27 2000-05-23 Cirrus Logic, Inc. Method and apparatus for expanding graphics images for LCD panels
KR0174152B1 (ko) 1996-07-02 1999-04-01 삼성전자 주식회사 디지털 디스플레이 모니터의 영상크기 조정장치
US5771042A (en) 1996-07-17 1998-06-23 International Business Machines Corporation Multi-size control for multiple adjacent workspaces
WO1998006219A1 (en) 1996-08-06 1998-02-12 Starsight Telecast, Incorporated Electronic program guide with interactive areas
KR100256443B1 (ko) * 1996-08-16 2000-06-01 윤종용 멀티 미디어 디스플레이 장치
US5847709A (en) 1996-09-26 1998-12-08 Xerox Corporation 3-D document workspace with focus, immediate and tertiary spaces
US5796393A (en) 1996-11-08 1998-08-18 Compuserve Incorporated System for intergrating an on-line service community with a foreign service
US5870767A (en) 1996-11-22 1999-02-09 International Business Machines Corporation Method and system for rendering hyper-link information in a printable medium from a graphical user interface
US6081262A (en) 1996-12-04 2000-06-27 Quark, Inc. Method and apparatus for generating multi-media presentations
US5850218A (en) 1997-02-19 1998-12-15 Time Warner Entertainment Company L.P. Inter-active program guide with default selection control
US5874958A (en) 1997-03-31 1999-02-23 Sun Microsystems, Inc. Method and apparatus for accessing information and items across workspaces
US5874709A (en) * 1997-04-14 1999-02-23 Tweco Products, Inc. Strain relief assembly for welding cable
US6072483A (en) 1997-06-02 2000-06-06 Sony Corporation Active frame scroll interface
US6025841A (en) 1997-07-15 2000-02-15 Microsoft Corporation Method for managing simultaneous display of multiple windows in a graphical user interface
US6337717B1 (en) 1997-11-21 2002-01-08 Xsides Corporation Alternate display content controller
US6330010B1 (en) * 1997-11-21 2001-12-11 Xsides Corporation Secondary user interface
US6018332A (en) 1997-11-21 2000-01-25 Ark Interface Ii, Inc. Overscan user interface
KR100253002B1 (ko) * 1997-11-28 2000-04-15 구자홍 디티브이의 디스플레이용 영상 처리장치 및 그 방법
JPH11167478A (ja) 1997-12-02 1999-06-22 Yokogawa Electric Corp 警報表示方法及びこれを用いた分散型制御システム
US6434532B2 (en) 1998-03-12 2002-08-13 Aladdin Knowledge Systems, Ltd. Interactive customer support for computer programs using network connection of user machine
US6437809B1 (en) 1998-06-05 2002-08-20 Xsides Corporation Secondary user interface
US6426762B1 (en) 1998-07-17 2002-07-30 Xsides Corporation Secondary user interface
US6320577B1 (en) 1998-11-03 2001-11-20 Agilent Technologies, Inc. System and method for graphically annotating a waveform display in a signal-measurement system
US6356284B1 (en) 1999-03-29 2002-03-12 Powerware Corporation Operating system-independent graphical user interface with sliding panel
US6570595B2 (en) 1999-06-24 2003-05-27 Xoucin, Inc. Exclusive use display surface areas and persistently visible display of contents including advertisements
US6510451B2 (en) 1999-10-14 2003-01-21 Yodlee.Com, Inc. System for completing a multi-component task initiated by a client involving Web sites without requiring interaction from the client

Also Published As

Publication number Publication date
US20050052473A1 (en) 2005-03-10
CA2310759C (en) 2004-02-03
CN1130683C (zh) 2003-12-10
ATE289108T1 (de) 2005-02-15
US6330010B1 (en) 2001-12-11
AU1528899A (en) 1999-06-15
AU736654B2 (en) 2001-08-02
CN1283296A (zh) 2001-02-07
CA2310759A1 (en) 1999-06-03
US6661435B2 (en) 2003-12-09
JP2001524725A (ja) 2001-12-04
US20020113807A1 (en) 2002-08-22
US20020101452A1 (en) 2002-08-01
EP1031127B1 (de) 2005-02-09
DE69828994D1 (de) 2005-03-17
WO1999027517A1 (en) 1999-06-03
EP1031127A1 (de) 2000-08-30
US6828991B2 (en) 2004-12-07
BR9814888A (pt) 2001-11-13

Similar Documents

Publication Publication Date Title
DE69828994T2 (de) Sekundärbenutzerschnittstelle
US6590592B1 (en) Parallel interface
US6678007B2 (en) Alternate display content controller
US6686936B1 (en) Alternate display content controller
US6426762B1 (en) Secondary user interface
US6437809B1 (en) Secondary user interface
US6639613B1 (en) Alternate display content controller
DE69533568T2 (de) Virtuelles Desk-Top-System und Verfahren dafür
US6433799B1 (en) Method and system for displaying data in a second display area
US5877762A (en) System and method for capturing images of screens which display multiple windows
US7340682B2 (en) Method and system for controlling a complementary user interface on a display surface
DE69526634T2 (de) Verschiebungs- und Entladungsoperation in einer graphischen Benutzerschnittstelle
DE69735975T2 (de) System und Verfahren zur Überlagerung von wahlweise in unterschiedlichen nativen Formaten gespeicherten Bildern
DE10005812B4 (de) Vom Benutzer ausgewählte Anzeige von zweidimensionalem Fenster in drei Dimensionen auf einem Rechnerbildschirm
DE19522185A1 (de) Ein Verfahren und System zur dynamischen Übersetzung zwischen verschiedenen grafischen Benutzeroberflächen-Systemen
US8555194B2 (en) Secondary user interface
JPH10503855A (ja) ビデオ情報の多重化方法
DE69839281T2 (de) Managen von multiplen betriebssystem in einem einzelnen rechner
DE69837084T2 (de) Vorrichtung und verfahren zur dynamischen kontrolle von objekthelligkeit auf einem bildschirm
AU772369B2 (en) Secondary user interface
DE60024853T2 (de) Anwendungs-klickstartliste

Legal Events

Date Code Title Description
8364 No opposition during term of opposition