Jump to content

VioScrollDn: Difference between revisions

From EDM2
No edit summary
Ak120 (talk | contribs)
mNo edit summary
 
Line 1: Line 1:
{{Legacy
|RepFunc=
|Remarks=This page list the older version of the function for reference.
}}
This call scrolls the entire display buffer (or area specified within the display buffer) down.
This call scrolls the entire display buffer (or area specified within the display buffer) down.


Line 9: Line 5:


==Parameters==
==Parameters==
;TopRow (USHORT) - input : Top row to be scrolled.  
;TopRow (USHORT) - input : Top row to be scrolled.
;LeftCol (USHORT) - input : Left column to be scrolled.  
;LeftCol (USHORT) - input : Left column to be scrolled.
;BotRow (USHORT) - input : Bottom row to be scrolled.  
;BotRow (USHORT) - input : Bottom row to be scrolled.
;RightCol (USHORT) - input : Right column to be scrolled.  
;RightCol (USHORT) - input : Right column to be scrolled.
;Lines (USHORT) - input : Number of lines to be inserted at the top of the screen area being scrolled. If 0 is specified, no lines are scrolled.
;Lines (USHORT) - input : Number of lines to be inserted at the top of the screen area being scrolled. If 0 is specified, no lines are scrolled.
;Cell (PBYTE) - input : Address of the character-attribute(s) pair (2 or 4 bytes) used as a fill character on inserted lines.
;Cell (PBYTE) - input : Address of the character-attribute(s) pair (2 or 4 bytes) used as a fill character on inserted lines.
Line 18: Line 14:


==Return Code==
==Return Code==
rc (USHORT) - return
;rc (USHORT) - return:Return code descriptions are:
Return code descriptions are:
* 0   NO_ERROR
* 0         NO_ERROR  
* 355 ERROR_VIO_MODE
* 355       ERROR_VIO_MODE  
* 358 ERROR_VIO_ROW
* 358       ERROR_VIO_ROW  
* 359 ERROR_VIO_COL
* 359       ERROR_VIO_COL  
* 436 ERROR_VIO_INVALID_HANDLE
* 436       ERROR_VIO_INVALID_HANDLE  
* 465 ERROR_VIO_DETACHED
* 465       ERROR_VIO_DETACHED


==Remarks==
==Remarks==
Line 34: Line 29:
If TopRow and LeftCol = 0 and if BotRow, RightCol, and Lines = 65535 (or -1 in assembler language), the entire screen is filled with the character-attribute pair defined by Cell.
If TopRow and LeftCol = 0 and if BotRow, RightCol, and Lines = 65535 (or -1 in assembler language), the entire screen is filled with the character-attribute pair defined by Cell.


;OS/2 Developer's Toolkit 4.5
This function is defined in header file <tt>bsesub.h</tt>.
<code>
#define VioScrollDn            VIO16SCROLLDN
APIRET16 APIENTRY16  VioScrollDn (USHORT usTopRow,
                                  USHORT usLeftCol,
                                  USHORT usBotRow,
                                  USHORT usRightCol,
                                  USHORT cbLines,
                                  PBYTE pCell,
                                  HVIO hvio);
</code>


===OS/2 Toolkit 4.52===
==Bindings==
This function is defined on bsesub.h header of the OS/2 Toolkit on 4.52.
===C===
    #define VioScrollDn            VIO16SCROLLDN
 
  APIRET16 APIENTRY16  VioScrollDn (USHORT usTopRow,
                                    USHORT usLeftCol,
                                    USHORT usBotRow,
                                    USHORT usRightCol,
                                    USHORT cbLines,
                                    PBYTE pCell,
                                    HVIO hvio);
 
==Example Code==
 
===C Binding===
<PRE>
<PRE>
#define INCL_VIO
#define INCL_VIO


USHORT  rc = VioScrollDn(TopRow, LeftCol, BotRow, RightCol, Lines, Cell,
USHORT  rc = VioScrollDn(TopRow, LeftCol, BotRow, RightCol, Lines, Cell, VioHandle);
                            VioHandle);


USHORT           TopRow;        /* Top row */
USHORT TopRow;        /* Top row */
USHORT           LeftCol;      /* Left column */
USHORT LeftCol;      /* Left column */
USHORT           BotRow;        /* Bottom row */
USHORT BotRow;        /* Bottom row */
USHORT           RightCol;      /* Right column */
USHORT RightCol;      /* Right column */
USHORT           Lines;        /* Number of lines */
USHORT Lines;        /* Number of lines */
PBYTE           Cell;          /* Cell to be written */
PBYTE   Cell;          /* Cell to be written */
HVIO             VioHandle;    /* Video handle */
HVIO   VioHandle;    /* Video handle */


USHORT           rc;            /* return code */
USHORT rc;            /* return code */
</PRE>
</PRE>
===MASM Binding===
 
===MASM===
<PRE>
<PRE>
EXTRN  VioScrollDn:FAR
EXTRN  VioScrollDn:FAR

Latest revision as of 15:39, 3 January 2019

This call scrolls the entire display buffer (or area specified within the display buffer) down.

Syntax

VioScrollDn (TopRow, LeftCol, BotRow, RightCol, Lines, Cell, VioHandle)

Parameters

TopRow (USHORT) - input
Top row to be scrolled.
LeftCol (USHORT) - input
Left column to be scrolled.
BotRow (USHORT) - input
Bottom row to be scrolled.
RightCol (USHORT) - input
Right column to be scrolled.
Lines (USHORT) - input
Number of lines to be inserted at the top of the screen area being scrolled. If 0 is specified, no lines are scrolled.
Cell (PBYTE) - input
Address of the character-attribute(s) pair (2 or 4 bytes) used as a fill character on inserted lines.
VioHandle (HVIO) - input
This must be zero unless the caller is a Presentation Manager application, in which case it must be the value returned by VioGetPs.

Return Code

rc (USHORT) - return
Return code descriptions are:
  • 0 NO_ERROR
  • 355 ERROR_VIO_MODE
  • 358 ERROR_VIO_ROW
  • 359 ERROR_VIO_COL
  • 436 ERROR_VIO_INVALID_HANDLE
  • 465 ERROR_VIO_DETACHED

Remarks

TopRow = 0 and LeftCol = 0 identifies the top left corner of the screen.

If a value greater than the maximum value is specified for TopRow, LeftCol, BotRow, RightCol, or Lines, the maximum value for that parameter is used.

If TopRow and LeftCol = 0 and if BotRow, RightCol, and Lines = 65535 (or -1 in assembler language), the entire screen is filled with the character-attribute pair defined by Cell.

OS/2 Developer's Toolkit 4.5

This function is defined in header file bsesub.h.

#define VioScrollDn             VIO16SCROLLDN

APIRET16 APIENTRY16  VioScrollDn (USHORT usTopRow,
                                  USHORT usLeftCol,
                                  USHORT usBotRow,
                                  USHORT usRightCol,
                                  USHORT cbLines,
                                  PBYTE pCell,
                                  HVIO hvio);

Bindings

C

#define INCL_VIO

USHORT  rc = VioScrollDn(TopRow, LeftCol, BotRow, RightCol, Lines, Cell, VioHandle);

USHORT  TopRow;        /* Top row */
USHORT  LeftCol;       /* Left column */
USHORT  BotRow;        /* Bottom row */
USHORT  RightCol;      /* Right column */
USHORT  Lines;         /* Number of lines */
PBYTE   Cell;          /* Cell to be written */
HVIO    VioHandle;     /* Video handle */

USHORT  rc;            /* return code */

MASM

EXTRN  VioScrollDn:FAR
INCL_VIO            EQU 1

PUSH   WORD    TopRow        ;Top row
PUSH   WORD    LeftCol       ;Left column
PUSH   WORD    BotRow        ;Bottom row
PUSH   WORD    RightCol      ;Right column
PUSH   WORD    Lines         ;Number of lines
PUSH@  OTHER   Cell          ;Cell to be written
PUSH   WORD    VioHandle     ;Video handle
CALL   VioScrollDn

Returns WORD

Related Functions