layout | title | permalink |
---|---|---|
page |
Q34575: MASM 5.10 MACRO.DOC: Character and Cursor Control |
/kb/034/Q34575/ |
{% raw %}
Article: Q34575
Product(s): See article
Version(s): 5.10 | 5.10
Operating System(s): MS-DOS | OS/2
Keyword(s): ENDUSER | | mspl13_masm
Last Modified: 12-JAN-1989
The following information was taken from the MASM Version 5.10
MACRO.DOC file.
CHARACTER AND CURSOR CONTROL
@GetCur (I 10h F 04h)
Gets the cursor position and size
Syntax: @GetCur [page]
Arguments: page = 8-bit page with cursor (if none, 0
assumed)
Return: DL = Column
DH = Row
CL = Starting scan line
CH = Ending scan line
Registers used: AX, DX, CX, and BH
@SetCurPos (I 10h F 02h)
Sets the cursor position
Syntax: @SetCurSz [column] [,[row] [,page]]
Arguments: column = 8-bit column; if none, DL used
row = 8-bit row; if none, DH used
page = 8-bit page with cursor (if none, 0
assumed)
Return: none
Registers used: AX, DX, and BH
@SetCurSz (I 10h F 01h)
Sets the cursor size and shape by specifying active scan lines. The
CGA adapter the lines are 0-7. The monochrome adapter has lines
0-13.
Syntax: @SetCurSz startline, endline
Arguments: startline = 8-bit starting scan line (default C
GA=6; MA=12)
endline = 8-bit ending scan line (default CGA=7;
MA=13)
Return: none
Registers used: AX and CX
@GetChAtr (I 10h F 08h)
Gets the character and attribute at the cursor location
Syntax: @GetChAtr [page]
Arguments: page = 8-bit page to check (if none, 0
assumed)
Return: AH = Attribute
AL = ASCII character
Registers used: AX and BH
@PutChAtr (I 10h F 09h) and @PutCh (I 10h F 0Ah)
Puts one or more characters and attributes at the current cursor
position. For @PutCh, the current attribute is used in text modes and
any specified attribute is ignored.
Syntax: @PutChAtr [character] [,[attrib] [,[page]
[,count]]]
Arguments: character = 8-bit ASCII character to put; if
none, AL used
attrib = 8-bit attribute to put; if none, BL
used
page = 8-bit page to put on (if none, 0
assumed)
count = Number to put (if none, 1 assumed)
Return: AH = Attribute
AL = ASCII character
Registers used: AX, BX, CX
@Scroll (I 10h F 06h and 07h)
Scrolls a specified window up or down
Syntax: @Scroll dist [,[attr] [,[uprow [,[upcol [,[dnrow]
[,dncol]]]]]
Arguments: dist = 8-bit number of lines to scroll;
positive scrolls down; negative scrolls
up; 0 clears
attr = 8-bit attribute for blank lines (if
none, 07h)
uprow = Upper left row (if none, CH used)
upcol = Upper left column (if none, CL used)
dnrow = Lower right row (if none, DH used)
dncol = Lower right column (if none, DL used)
Return: none
Registers used: AX, CX, DX, and BH
@Cls (I 10h F 06, 08h, and 02h)
Clears the screen of the current page
Syntax: @Cls
Arguments: None
Return: None
Registers used: AX, BX, CX, and DX
{% endraw %}