Retro video games delivered to your door every month!
Click above to get retro games delivered to your door ever month!
X-Hacker.org- QWIKC20 & Multi-Level Virtual Windows - <b>video software</b> http://www.X-Hacker.org [<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
                                VIDEO SOFTWARE

 Video Software Variables - These variables indicate the current video mode
 and screen characteristics to which QWIK is writing and what is being
 viewed on the CRT.  There are several pointer macros listed that duplicate
 some of the global variables, i.e., crtcolumns and crt_cols.  It is
 preferable to use the global ones, where the pointer macros are only needed
 for handling exceptions.

   Variable      Description
   ------------  -----------------------------------------------------------
   crt_cols      (Type: macro) Defined as qscr.vcols (current virtual/actual
                 screen columns).  qscr.vcols is initialized by
                 qinit/qreinit to the currently viewed number of CRT columns
                 for any card or video mode.

   crtcolumns    (Type: macro) Defined to directly access the 1-based
                 currently viewed number of CRT columns for any card or
                 video mode.  This pseudo-variable may be assigned a value,
                 as well as evaluated.

   crt_rows      (Type: macro) Defined as qscr.vrows (current virtual/actual
                 screen rows).  qscr.vrows is initialized by qinit/qreinit
                 to the currently viewed number of CRT rows for any card or
                 video mode.

   egafontsize   (Type: macro) Defined to directly access the 1-based number
                 of horizontal scan lines per character for EGA/MCGA/VGA.
                 This pseudo-variable may be assigned a value, as well as
                 evaluated.

   egarows       (Type: macro) Defined to directly access the 0-based number
                 of rows on the current screen for EGA, MCGA, and VGA.  This
                 number is used to set crt_rows, which is done by qinit.
                 egarows may be assigned a value as well as evaluated.

   inmultitask   (Type: char)  This flag indicates if MTVB is being used
                 for the screen in lieu of the normal screen.  It defaults
                 to 0 and is possibly altered with setmultitask if the
                 multitasking software has be instructed to expect writing
                 direct to the MTVB (not direct screen).

   page0seg      (Type: unsigned int) Segment for the base page, page 0.  In
                 multitasking environments, change this value to its video
                 display buffer.  qscrseg and qscrofs should also be set.

   qeosofs       (Type: macro) Defined as vscr.veosofs, the 0-based offset
                 where q*eos functions will write.

   qscrseg       (Type: macro) Acesses the segment of vscr.vscrptr, the
                 segment for QWIKC writing which is altered when changing
                 pages.  qscrseg=page0seg on page 0.

   qscrofs       (Type: unsigned int) Offset for QWIKC writing needed for
                 virtual screens.  The usual value is 0 for the video pages.

   qscrptr       Combines qscrseg and qscrofs

   qscr          (Type: vscr_t) Structure containing essential variables for
                 QWIKC screen writing.  This structure has several macros
                 that access its members:

                   Macro      qscr member
                   --------   -----------
                   crt_rows   vrows
                   crt_cols   vcols
                   crt_size   vsize
                   qsnow      vsnow
                   qeosofs    veosofs
                   qscrptr    vscrptr

                 These macros are also described in this section.  Since
                 they are part of a structure, qscr's members can be swapped
                 easily when writing to virtual screens.  See the example
                 under qvscrtoscr.

   qsnow         (Type: macro) Set to 1 for wait-for-retrace (snow) while
                 QWIKC is writing.

   qvideo_page   (Type: char) Video page to which QWIKC is writing which is
                 set by qwritepage.  It is initially 0.

   qvideo_mode   (Type: char) Video mode detected by qinit.

   scroll_attr   (Type: int) The attribute used to clear the blank row when
                 qeosln is used.

   videomode     (Type: macro) Defined to directly access the current video
                 mode in low memory.  This pseudo-variable may be assigned
                 a value, as well as evaluated.

   videopage     (Type: macro) Defined to directly access the currently
                 viewed video page in low memory.  This pseudo-variable may
                 be assigned a value, as well as evaluated.

   vscr_t        The typedef for the structure of essential variables for
                 QWIKC screen writing to virtual screens.  This enables an
                 easy exchange of data between the CRT and virtual screens.


Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson