Up ] Docs Home ]

Values for MODE 00h (set or display values) "WINDOW STREAM" opcodes

Back ] Next ]

Opcode Arguments
Size Description

00h

display 20h blanks with the default attribute

01h - 1Fh

display OPCODE blanks with the default attribute

20h

display char with default attribute 20h times

BYTE

char to repeat

21h - 3Fh

display char with default attribute OPCODE-20h times

BYTE

char to repeat

40h

display 20h blanks with specified attribute

BYTE

attribute of blanks

41h - 5Fh

display OPCODE-40h blanks with specified attribute

BYTE

attribute of blanks

60h

display next 20h characters

20h BYTEs

characters to display

61h - 7Fh

display next OPCODE-60h characters

N BYTEs

characters to display

80h - 87h

display N blanks with default attribute

BYTE

low 8 bits of 11-bit count (high 3 in low 3 bits of OPCODE) [000h means 800h]

88h - 8Fh

display N copies of the character

BYTE

low 8 bits of 11-bit count (high 3 in low 3 bits of OPCODE) [000h means 800h]

BYTE

character to repeat

90h - 97h

display N blanks with specified attribute

BYTE

low 8 bits of 11-bit length (high 3 in low 3 bits of OPCODE) [000h means 800h]

BYTE

attribute

98h - 9Fh

display string at logical cursor pos

BYTE

low 8 bits of 11-bit length (high 3 in low 3 bits of OPCODE) [000h means 800h]

N BYTEs

string to display

A0h

set logical cursor row

BYTE

row number (0 is top)

A1h

set logical cursor column

BYTE

column number (0 is leftmost)

A2h

set top edge of scrolling region

BYTE

row

A3h

set left edge of scrolling region

BYTE

column

A4h

set row of physical window position

BYTE

line

A5h

set column of physical window position

BYTE

column

A6h

set height of physical window

BYTE

number of rows

A7h

set width of physical window

BYTE

number of columns

A8h

set viewport row

BYTE

row

A9h

set viewport column

BYTE

column

AAh

set virtual screen height [contents of window unpredictable after]

BYTE

rows

ABh

set virtual screen width [contents of window unpredictable after]

BYTE

columns

ACh - AEh

unused

AFh

set compatible/preferred video modes

BYTE

compatibility/preference mask
bit 7 - compatible with monochrome
bit 6 - compatible with color text, EGA/VGA graphics
bit 5 - compatible with medium-resolution CGA graphics
bit 4 - compatible with high-resolution CGA graphics
bit 3 - prefer monochrome
bit 2 - prefer color text, EGA/VGA graphics
bit 1 - prefer medium-resolution CGA graphics
bit 0 - prefer high-resolution CGA graphics

B0h

move logical cursor down

BYTE

number of rows (signed, negative values move up) [if rows=0 and hardware cursor owner, update hardware cursor]

B1h

move logical cursor right

BYTE

number of columns (signed, negative values move left) [if cols=0 and hardware cursor owner, update hardware cursor]

B2h

shift top edge of scrolling region

BYTE

number of rows (signed)

B3h

shift left edge of scrolling region

BYTE

number of columns (signed)

B4h

shift physical window down

BYTE

number of lines (signed)

B5h

shift physical window right

BYTE

number of columns (signed)

B6h

expand physical window vertically

BYTE

number of lines (signed)

B7h

expand physical window horizontally

BYTE

number of columns (signed)

B8h

adjust viewport row

BYTE

number of rows (signed)
B9h adjust viewport column

BYTE

number of columns (signed)

BAh

adjust virtual screen height [contents of window unpredict after]

BYTE

number of rows to increase (signed)

BBh

adjust virtual screen width [contents of window unpredictbl after]

BYTE

number of columns to increase (signed)

BCh - BFh

reserved (currently unused)

C0h

set logical cursor position

BYTE

row number (0 is top border)

BYTE

column number (0 is left border)

C1h

set top left corner of scrolling region

BYTE

row

BYTE

column

C2h

set physical window pos

BYTE

upper left row (no top border if 0)

BYTE

upper left column (no left border if 0)

C3h

set current window size

BYTE

number of rows

BYTE

number of columns

C4h

set upper left corner of viewport (portion of virtual screen displayed in window)

BYTE

row

BYTE

column

C5h

set size of virtual screen [contents unpredictable afterwards]

BYTE

number of rows

BYTE

number of columns

C6h

unused

C7h

unused

C8h

set logical cursor relative to current position

BYTE

number of rows to move down (signed)

BYTE

number of columns to move right (signed) [if rows=cols=0 and hardware cursor owner, update hardw cursor]

C9h

shift top left corner of scrolling region

BYTE

number of rows (signed)

BYTE

number of columns (signed)

CAh

set window pos relative to current position

BYTE

number of rows to shift down (signed)

BYTE

number of columns to shift right (signed)

CBh

set window size relative to current size

BYTE

number of rows to expand (signed)

BYTE

number of cols to expand (signed)

CCh

shift viewport relative to current position

BYTE

rows to shift (signed)

BYTE

cols to shift (signed)

CDh

resize virtual screen

BYTE

number of rows to expand (signed)

BYTE

number of columns to expand (signed)

CEh

scroll text when using E8h-EBh/F8h-FBh opcodes (default)

CFh

scroll attributes when using E8h-EBh/F8h-FBh opcodes

D0h

allow window frame to extend beyond screen

D1h

always display a complete frame, even if window extends beyond edge of screen

D2h

allow DV to change logical colors on video mode switch (default)

D3h

application changes logical attributes

D4h

window is visible [must redraw to actually make visible]

D5h

window is hidden [must redraw to actually remove]

D6h

window has frame (default)

D7h

window unframed [must redraw to actually remove frame]

D8h

READ/READN will read characters from window (default)

D9h

READ/READN will read attributes from window

DAh

use logical attributes, which may be remapped (see #00441)

DBh

use physical attributes for characters

DCh

enable special actions for control characters (default)

DDh

disable special control char handling, all chars displayable by BIOS TTY call

DEh

write both character and attribute (default)

DFh

write character only, leave attribute untouched

E0h

repeat following commands through E1h opcode

BYTE

number of times to repeat (00h means 256 times)

E1h

end of commands to repeat, start repeating them

E2h

set current output color

BYTE

color

E3h

clear virtual screen from scroll origin to end using current color

E4h

redraw window

E5h

select menu style

BYTE

style (normally 18h)
bits 5, 4 = 01 use two-letter menu entries for remainder of this stream

E5h

(panel file only)

BYTE

modifier
bit 7, 6 = 11 panel stream creates new window
= 10 panel defines new field table for existing window
= 01 panel stream uses existing window & field table
bit 5 = 1 stream contains a field table (create kyboard object)
bit 4 = 1 stream defines input fields (create keyboard object)
bit 3 = 1 stream defines select fields but not input fields
bit 2 = 1 stream defines exclusive input window (DV 2.2)
bit 1 - reserved
bit 0 - reserved

E6h

create new window and perform rest of manipulations in new window

BYTE

number of rows

BYTE

number of columns

Return:

DWORD object handle of new window returned on stack at end

Note:

the window is created with a physical size of 0x0 at the same position as the window to which this stream was sent

E7h

no operation

E8h

scroll area up (top left corner defined by opcode C1h)

BYTE

height

BYTE

width

E9h

scroll area down (top left corner defined by opcode C1h)

BYTE

height

BYTE

width

EAh

scroll area left (top left corner defined by opcode C1h)

BYTE

height

BYTE

width

EBh

scroll area right (top left corner defined by opcode C1h)

BYTE

height

BYTE

width

ECh

set logical attributes for window contents

BYTE

video modes command applies to
bit 7 - monochrome
bit 6 - color text, EGA/VGA graphics
bit 5 - medium-resolution CGA graphics
bit 4 - high-resolution CGA graphics

BYTE

which attributes to set
bit 7 - if set, copy single following byte to indicated attribs
bit 4 - 6 - number of first attribute to change - 1
bit 0 - 3 - number of consecutive attributes to change

N BYTEs

new attributes

EDh

set logical attributes for window frame

BYTE

video modes command applies to (also see opcode ECh)

BYTE

which attributes to set
bit 7 - if set, copy single following byte to indicated attribs
bit 4 - 6 - number of first attribute to change - 1
bit 0 - 3 - number of consecutive attributes to change

N BYTEs

new attributes
1 = top left corner
2 = top right corner
3 = bottom left corner
4 = bottom right corner
5 = top edge
6 = bottom edge
7 = left edge
8 = right edge

EEh

set characters for window frame

BYTE

video modes command applies to (also see opcode ECh)

BYTE

which characters to set
bit 7 - if set, copy single following byte to indicated chars
bit 4 - 6 - number of first character to change - 1
bit 0 - 3 - number of consecutive characters to change

N BYTEs

new chars (same relative position as attributes above)

EFh

set window name

BYTE

length of name (should be in range 0 to logical screen width)

N BYTEs

name

F0h

clear input field to blanks

BYTE

field number

F1h

fill input field with character

BYTE

field number

BYTE

char

F2h

set color of input field

BYTE

field number (1-N)

BYTE

attribute

F3h

set initial contents of input field

BYTE

field number (1-N)

N BYTEs

enough chars to exactly fill field as defined by op FFh

F4h

position cursor to start of specific input field

BYTE

field number (1-N)

F5h

change field table entry

BYTE

field number

7-8 BYTEs

field table entry (also see opcode FFh below)

F6h

set field type

BYTE

field number

BYTE

type
00h - inactive
40h - output field
80h - input field
C0h - deselected field
C2h - selected field

F7h

"broadcast write" write data to fields with program output bit set in the field table entry, in field number order

N BYTEs

total length of all program output fields)

F8h

scroll field up a line

BYTE

field number

F9h

scroll field down a line

BYTE

field number

FAh

scroll field left

BYTE

field number

FBh

scroll field right

BYTE

field number

FCh

set field table header

6 BYTEs

field table header (see #00442)

FDh

reset modified bit for all fields

FEh

reset selected and modified bits for all fields

FFh

set up input fields

6 BYTEs

table header (see #00442)

7/8N BYTEs

the field table entries, one for each field (see #00444)

Note:

DESQview uses and updates the actual copy of the information which is contained in the stream. Thus this info must remain intact until after the data entry is complete.

See Also:

#00439,#00446