Contents of the ANSIDRV.DOC file
ANSIDRV.ASM -- ANSI windowed video routines for Microsoft C
Mike Dumdei, 6 Holly Lane, Texarkana TX 75503
The ANSIDRV functions in this ARC file provide MSC users with a group
of display functions that support both windows and ANSI sequence trans-
lation. The 'setwndsz' function or the SETWND macro set the area of
the screen that is affected by the other functions. This includes the
'cls' function and the area of the screen cleared when the ANSI 'ED
(erase display)' sequence is displayed.
The ANSIDRV.H file contains the function declarations for MSC, some
macro definitions to be used with the routines, and a declaration of
global variables accessable by your C program that are defined in the
Use of any of these functions requires that you first call 'initvid' to
set up some of the internal variables.
The routines can be assembled to be linked with any memory model using
MASM 5.0 and the MIXED.INC file that is included with MASM 5.0. The
OBJ module included in the ARC file is for small model programs only.
You will have to look over the .H file and the .ASM file to see what's
available and how the global variables are used. I will give a quick
explanation of the most important globals here:
v_wndsz - an unsigned long that determines the area of the screen
affected by the other functions except the d_msgat function
vs_wndsz - an unsigned long that sets the bounds for the d_msgat
function. Defaults to entire screen.
v_color - the atribute that will be used when a string or character
is displayed using these functions. ANSI sequences that change
the colors will directly set this variable.
v_ansi - if this variable is non-zero ANSI sequences will be rec-
ognized as ANSI sequences. If the variable is zero ANSI features
v_textm - NZ == change newline chars to CR/LF's. If ZR then newlines
are displayed as LF's only.
v_scrlm - NZ == scroll the window when cursor is moved past the last
window position. If ZR then the cursor wraps to the HOME position
rather than scrolling the window.
These routines provide the basic video functions needed to write an ANSI
capable program. The entire ANSI sequence is not supported, only those
commonly used by BBS systems. If you find any bugs or have any questions
leave mail for me at Split Up the Middle -- 214 838-8307.
A complete assembled library of these functions as well as the source and
object code for some other C functions is available for $10 from me.
If interested my mailing address is:
6 Holly Lane
Texarkana, Tx 75503
Please state you are sending the $10 for the ANSIDRV library plus other
C functions since I have a couple other $10 projects out also.