Jump to content

VioWrtTTY (FAPI)

From EDM2
Revision as of 21:08, 7 August 2016 by Martini (talk | contribs) (Created page with "==Description== This call writes a character string to the display starting at the current cursor position. At the completion of the write, the cursor is positioned at the fi...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Description

This call writes a character string to the display starting at the current cursor position.

At the completion of the write, the cursor is positioned at the first position beyond the end of the string.

Syntax

 VioWrtTTY

    (CharStr, Length, VioHandle)

Parameters

CharStr (PCH) - input
Address of the string to be written.
Length (USHORT) - input
Length of the character string in bytes.
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
  • 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 screen is scrolled, and the write continues until completed.

The characters carriage return, line feed, backspace, tab, and bell are treated as commands rather than printable characters. Backspace is a non-destructive backspace. Tabs are expanded to provide standard 8-byte-wide fields. VioWrtTTY is the only video call affected by Ctrl-PrtSc and ANSI.

Characters are written using the current attribute defined by ANSI or the default value 7.

VioWrtTTY is supported in graphics mode to process ANSI sequences. This allows the application to enter and exit a graphics mode.

PM Considerations

Write a character string from the current cursor position in TTY mode to the Advanced VIO presentation space. The cursor is positioned after the last character written at the end of the write.

Example Code

C Binding

#define INCL_VIO

USHORT  rc = VioWrtTTY(CharStr, Length, VioHandle);

PCH              CharStr;       /* String to be written */
USHORT           Length;        /* Length of string */
HVIO             VioHandle;     /* Video handle */

USHORT           rc;            /* return code */

MASM Binding

EXTRN  VioWrtTTY:FAR
INCL_VIO            EQU 1

PUSH@  OTHER   CharStr       ;String to be written
PUSH   WORD    Length        ;Length of string
PUSH   WORD    VioHandle     ;Video handle
CALL   VioWrtTTY

Returns WORD

Related Functions