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


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


;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


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 Toolkit 4.52

This function is defined on bsesub.h header of the OS/2 Toolkit on 4.52.

  #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> #define INCL_VIO

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


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 */ </PRE>

MASM Binding


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 </PRE>


en/docs/fapi/vioscrolldn.txt · Last modified: 2018/09/01 10:12 by prokushev