en:docs:fapi:viowrtcharstratt

This is part of Family API which allow to create dual-os version of program runs under OS/2 and DOS

Note: This is legacy API call. It is recommended to use 32-bit equivalent

2021/09/17 04:47 · prokushev · 0 Comments
2021/08/20 03:18 · prokushev · 0 Comments

VioWrtCharStrAtt

This call writes a character string with repeated attribute to the display.

Syntax

VioWrtCharStrAtt (CharStr, Length, Row, Column, Attr, VioHandle)

Parameters

  • CharStr (PCH) - input : Address of the character string to be written.
  • Length (USHORT) - input : Length, in bytes, of the character string.
  • Row (USHORT) - input : Starting cursor row.
  • Column (USHORT) - input : Starting cursor column.
  • Attr (PBYTE) - input : Address of the attribute(s) (1 or 3 bytes) to be used in the display buffer for each character of the string written.
  • 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

If a string write gets to the end of the line and is not complete, the string write continues at the beginning of the next line. If the write gets to the end of the screen, the write terminates.

PM Considerations

Write a character string with a repeated attribute string to the Advanced VIO presentation space. The caller must specify the starting location on the presentation space where the string is to be written.

Bindings

C Binding

#define INCL_VIO
 
USHORT  rc = VioWrtCharStrAtt(CharStr, Length, Row, Column, Attr,
                               VioHandle);
 
PCH              CharStr;       /* String to be written */
USHORT           Length;        /* Length of string */
USHORT           Row;           /* Starting row position for output */
USHORT           Column;        /* Starting column position for output */
PBYTE            Attr;          /* Attribute to be replicated */
HVIO             VioHandle;     /* Video handle */
 
USHORT           rc;            /* return code */

MASM Binding

EXTRN  VioWrtCharStrAtt:FAR
INCL_VIO            EQU 1
 
PUSH@  OTHER   CharStr       ;String to be written
PUSH   WORD    Length        ;Length of string
PUSH   WORD    Row           ;Starting row position for output
PUSH   WORD    Column        ;Starting column position for output
PUSH@  OTHER   Attr          ;Attribute to be replicated
PUSH   WORD    VioHandle     ;Video handle
CALL   VioWrtCharStrAtt
 
Returns WORD

Note