Hinweise zu den Pull-Down-Routinen

Parameter BlöckeSpeicherbedarf

Parameter Blöcke

Der Parameterblock UPB ist definiert als:
ByteFunktion
0Horizontale Cursorposition für den Fenstertext
1Vertikale Cursorposition für den Fenstertext
2Länge eines Fensterelementes
3Anzahl Fensterelemente
4Kontrollbyte - Siehe unten
5Feld zum Eintrag des aktuellen horizontalen Cursors
6Feld zum Eintrag des aktuellen vertikalen Cursors
7,8Adresse eines Datenfeldes für alte Bildschirmdaten
9,10Adresse einer Zeile für Eingabe
11Zeichen per Zeile inklusive Fensterelementen
12Zeilen im Fenster inklusive Fensterelemente
13Horizontale Cursorposition für das Fenster
14Vertikale Cursorposition für das Fenster
15Horizontale Cursorposition für Texteingabe
16Vertikale Cursorposition für Texteingabe
17,18Adresse für Texteingabe

Das Kontrollbyte (UPB+4) ist definiert als:
BitFunktion
0Fensterelement
  • 0 : Einfacher Strich
  • 1 : Doppelter Strich
1Zwischenraum
  • 0 : Kein Zwischenraum
  • 1 : Zwischenraum
2Fensterrichtung
  • 0 : Horizontal
  • 1 : Vertikal
3Fensterfarbe
  • 0 : Normale Darstellung
  • 1 : Invertierte Darstellung
4Cursor retten
  • 0 : Nicht retten
  • 1 : Retten (in UPB+S,UPB+6)
5Fenster retten
  • 0 : Nicht retten
  • 1 : Retten (in Adresse aus UPB+7,8)
6Art des Zwischenraums
  • 0 : Strich als Zwischenraum
  • 1 : Leerzeichen als Zwischenraum
7Fenster zurückladen
  • 0 : Nicht zurückladen
  • 1 : Zurückladen (von Adresse aus UPB+7,8)

Die PDMCUL und PDMCUI Kontrollbytes sind definiert als:

BitFunktion
0Farbe bei Start der Auswahl
 
  • 0 : Normal
  • 1 : Invertiert
1Farbe bei Ende der Auswahl
 
  • 0 : Normal
  • 1 : Invertiert
2Cursor unsichtbar
 
  • 0 : Unsichtbar machen
  • 1 : Keine Änderung
3Cursor sichtbar
 
  • 0 : Sichtbar machen
  • 1 : Keine Änderung
4Ende bei RETURN oder ENTER
 
  • 0 : Ende bei RETURN oder ENTER
  • 1 : Ende bei anderer Taste (außer Cursortaste)
5Aufbau eines Fensters bei Aufruf (Nur PDMCUL)
 
  • 0 : Fenster wird neu aufgebaut bei Aufruf
  • 1 : Fenster wird nicht aufgebaut

Die PDMXIO, PDMRET und PDMTXA Kontrollbytes sind definiert als:

BitFunktion
0Farbe bei Start der Ausgabe
 
  • 0 : Normal
  • 1 : Invertiert
1Farbe bei Ende der Ausgabe
 
  • 0 : Normal
  • 1 : Invertiert

Speicherbedarf

Der PCW speichert jedes Zeichen ab als eine 8x8 Bit Matrix, also in 8 Bytes. Dies ist zu berücksichtigen bei der Bereitstellung von Speicher zum Retten von Fenstern. Außerdem ist der unterschiedliche Speicherbedarf für horizontale und vertikale Richtung zu beachten.

MitL Länge eines FensterelementesAus UPB+2
 E Anzahl Elemente im FensterAus UPB+3
 D= 1Bei ZwischenräumenAus Bit 1 [UPB+4]
  = 0Ohne Zwischenraum 

wird
Horizontal(L+2)*(E+2+D*[E-1])*8Bytes
Vertikal(L*E+2+D*[E-1])*3*8Bytes
 
Richtung aus Bit 2 [UPB+4] (siehe oben)