•  Back 
  •  Protokolle 
  •  Index 
  •  Tree View 
  •  Cross references 
  •  Help page 
  •  Show info about hypertext 
  •  View a new file 
Topic       : TOS - das Betriebssystem
Author      : 
Version     : tos.hyp (5. März 2013)
Subject     : Programmieren/Atari
Nodes       : 3001
Index Size  : 93602
HCP-Version : 5
Compiled on : Atari
@charset    : atarist
@lang       : 
@default    : Titel
@help       : 
@options    : +g -i -s +x +zz -t4
@width      : 70
View Ref-File15.12  Virtual-Screen-Protokoll                                    TOS

Ein echtes Problem bei Benutzung einer Großbildschirm-Emulation ist, 
daß Dialog- und Alertboxen oft außerhalb des sichtbaren 
Bildschirmausschnitts erscheinen. Daran können auch Programme wie 
BigScreen nichts ändern. Als Lösung bietet sich eine Möglichkeit an, 
mit der man sich darüber informieren kann, welcher Teil des 
Bildschirms zur Zeit sichtbar ist.

Dazu wird der Cookie-Jar benutzt, der genau für solche Zwecke 
vorgesehen ist. In unserem Fall heißt der Cookie VSCR, was für 
Virtual-Screen steht. Er zeigt auf eine Struktur, die insbesondere 
Informationen über den dargestellten Bildschirmausschnitt enthält. 
Anwendungsprogramme können diese Information beispielsweise dazu 
benutzen, um Dialogboxen auf dem tatsächlich sichtbaren Teil des 
Bildschirms zu zentrieren. Die Struktur ist wie folgt definiert:

typedef struct
{
  int32_t cookie;   /* muß 'VSCR' sein                       */
  int32_t product;  /* Analog zur XBRA-Kennung               */
  int16_t version;  /* Version des VSCR-Protokolls           */
  int16_t x,y,w,h;  /* Sichtbarer Ausschnitt des Bildschirms */
} INFOVSCR;

Zur Beschreibung der einzelnen Komponenten: cookie muß den Wert 
$56534352 ('VSCR') haben. Sinn der Sache ist, daß ein Großbildschirm- 
Simulator die Informationsstruktur auf 'ungültig' setzen kann, ohne 
erst den Cookie entfernen zu müssen. BigScreen beispielsweise kann je 
nach gewählter Auflösung aktiv oder inaktiv sein und benutzt diesen 
Mechanismus, um beim Auflösungswechsel die Struktur ein- oder 
auszuschalten.

In product kann ein Großbildschirm-Simulator eine eigene Kennung 
eintragen. Die vier Bytes sollten genauso wie bei einer XBRA-Kennung 
aus vier druckbaren Zeichen (ASCII-Code 32 bis 126) bestehen.

 Programm   Kennung 
 BigScreen  BIGS 
 LaceScan   LEmu 
 NOVA VDI   IMNE 

Die Komponente version kennzeichnet die Version des VSCR-Protokolls 
und soll es erlauben, später einmal die Struktur um neue Felder zu 
ergänzen. x, y, w und h schließlich geben Position, Breite und Höhe 
des sichtbaren Ausschnitts an. Das Protokoll ist absichtlich so 
ausgelegt, daß es auch von anderen Simulatoren benutzt und bei Bedarf 
erweitert werden kann.