home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 8 Other / 08-Other.zip / setlines.zip / setlines.txt < prev   
Text File  |  2002-01-15  |  7KB  |  109 lines

  1. 0.      Contents of SETLINES.ZIP:
  2. 0.1     SETLINES.TXT    this text
  3. 0.2     SETLINES.C      source code
  4. 0.3     SETLINES.ICO    nice OS/2 icon for SETLINES -1 (display off)
  5. 0.4     SETLINES.COM    DOS / MDOS executable for VGA / VESA displays
  6. 0.5     ATILINES.COM    DOS / MDOS executable for ATI Mach64 chips
  7.  
  8. 1.      Purpose
  9. 1.1     The BIOS support for standard VGA cards doesn't support 60
  10.         lines (text mode) and its variants (30 resp. 34 lines), but
  11.         (almost) all VGA cards, and of course SVGA or VESA cards, can
  12.         use these text modes.  For details see below.
  13. 1.2     Please note that I've never seen an ANSI.SYS clone supporting
  14.         all possible text mode variants (80 x 12 .. 132 x 60), but at
  15.         least some variants should work at the DOS command prompt (in
  16.         full screen AND text window sessions).  Some DOS applications
  17.         are generally less restricted and allow to use (almost) any
  18.         preset text window size.  If an application refuses to work
  19.         try more lines (e.g. SETLINES 21 instead of SETLINES 14).
  20. 1.3     ATI Mach 32 doesn't support all VESA text modes, but SETLINES
  21.         uses a trick to force all text mode variants (see source).
  22.         ATI Mach 64 doesn't support any VESA text mode unfortunately,
  23.         try ATILINES.COM instead of SETLINES.COM:  ATILINES uses ATI
  24.         mode 0x23 resp. 0x33 instead of the corresponding VESA modes.
  25. 1.4     An OS/2 desktop system doesn't support VESA display power off
  26.         and has no decent "all black" screen saver.  Use SETLINES -1
  27.         (or ATILINES -1) in a MDOS full screen session to switch the
  28.         display power off (until any key is pressed).  If you don't
  29.         know how to install a MDOS full screen program in OS/2 ask
  30.         your system administrator.  CAVEAT: very old VGA displays do
  31.         not support VESA display power management (DPMS).
  32. 1.5     Just for fun I have added text mode 1 (SETLINES 1) 40 x 25.
  33.         You can also use SETLINES to execute a DOS program in a text
  34.         mode subshell with a given number of lines.  If this doesn't
  35.         work the SETLINES stack is too small for your environment -
  36.         try to recompile setlines.c (use MS C 6.0 or Watcom C 10.0).
  37. 1.6     Usage
  38.         SETLINES 0      Shows a terse usage message
  39.         SETLINES -1     VESA display power off (any key: power on)
  40.         SETLINES 1      40 x 25: text mode 1
  41.         SETLINES 12     80 x 12: 12 < 200 / 16 (CGA, 8 x 16 font)
  42.         SETLINES 14     80 x 14: 14 < 200 / 14 (CGA, 8 x 14 font)
  43.         SETLINES 21     80 x 21: 21 < 350 / 16 (EGA, 8 x 16 font)
  44.         SETLINES 25     80 x 25: 25 = 400 / 16 (VGA, 8 x 16 font)
  45.         SETLINES 28     80 x 28: 25 = 400 / 14 (VGA, 8 x 14 font)
  46.         SETLINES 30     80 x 30: 30 = 480 / 16 (480, 8 x 16 font)
  47.         SETLINES 34     80 x 34: 34 < 480 / 16 (480, 8 x 14 font)
  48.         SETLINES 43     80 x 43: 43 < 350 /  8 (EGA, 8 x  8 font)
  49.         SETLINES 50     80 x 50: 50 = 400 /  8 (VGA, 8 x  8 font)
  50.         SETLINES 60     80 x 60: 60 = 480 /  8 (480, 8 x  8 font)
  51.                         80 x 60: VESA mode 108 (not used here)
  52.         SETLINES -21    132 x 21: VESA mode 10A, 8 x 16 font
  53.         SETLINES -25    132 x 25: VESA mode 109, 8 x 16 default
  54.         SETLINES -28    132 x 28: VESA mode 109, 8 x 14 font
  55.         SETLINES -30    132 x 30: VESA mode 10C, 8 x 16 font
  56.         SETLINES -34    132 x 34: VESA mode 10C, 8 x 14 font
  57.         SETLINES -43    132 x 43: VESA mode 10A, 8 x  8 default
  58.         SETLINES -50    132 x 50: VESA mode 109, 8 x  8 font
  59.                         132 x 50: VESA mode 10B (not used here)
  60.         SETLINES -60    132 x 60: VESA mode 10C, 8 x  8 default
  61.         SETLINES        SETLINES called without argument tries to
  62.                         toggle 80 / 132 columns
  63.  
  64. 2.      Details (copied from source setlines.c)
  65. 2.1     ROM font 8 x 8, 14, 16
  66.         scanlines ------------
  67.              200 | (25) 14  12
  68.              350 |  43 (25) 21
  69.              400 |  50  28  25
  70.              480 |  60  34  30
  71. 2.2     Restrictions
  72.         - Some old VGA support only 50, 28, 25 lines
  73.         - Some old ATI report mode 5Bh for 30 x  80
  74.         - Some old ATI report mode 23h for 25 x 132
  75.         - Some old ATI don't support VESA 108h, 10Ch
  76.         - Some old VGA don't support VESA text modes
  77.         - ANSI.SYS confused by NNx132, use VANSI.SYS
  78.         - Setlines -1 requires VESA power management
  79.         - Setlines +1 is a 2nd special case: 25 x 40
  80.         - With 60 x 132 there is only ONE video page
  81. 2.3     History
  82.         1.0     Support 12, 14, 21, 25, 28, 43, and 50 lines (EGA: 25, 43).
  83.         1.1     Toggle screen height (25x80 and 28x80) as default,
  84.                 replaced stdio.h fprintf() by smaller conio.h cputs().
  85.         1.2     Replaced int86x() by Watcom's smaller intr().
  86.         1.3     Support 30, 34, 60 lines based on 480 scan lines, uses the
  87.                 standard VGA function INT 10 AX 1C02 "restore video state".
  88.         2.0     Support 132 columns, specified as -21, -25, ..., -50, -60:
  89.                 based on VESA modes 109, 10A, 10C.  Use VESA mode 108 for
  90.                 60x80 if available.  But my ATI Mach32 is a bit stupid :-)
  91.         2.1     Toggle screen width (NNx80 and NNx132) as default.
  92.         2.2     Save current screen contents if width is the same, does not
  93.                 work as expected with PC DOS 7 ANSI.SYS, but VANSI.SYS or
  94.                 no ANSI-driver are okay, and then even DOS accepts 60x132.
  95.         2.3     Patch BIOS data for get video mode result 3 instead of 83h,
  96.                 this prevents NC.EXE from clearing the saved screen because
  97.                 it did not understand the "keep video memory" bit 7 in 83h.
  98.         2.4     Special argument: setlines -1 to switch VESA display power
  99.                 OFF, awaits any key pressed before exit switching power ON.
  100.         2.5     setlines 0 or setlines ? usage() return code == getlines().
  101.                 setlines 1 supports 25x40 text mode 1 as 2nd special case.
  102.         2.6     Switch screen off during setlines() setting and scrolling.
  103.                 Save current screen contents even if screen width changed.
  104.         3.0     Support ATI Rage Pro (missing VESA text modes replaced by
  105.                 proprietary ATI modes 23 and 33 #ifdef ATI).
  106. 2.4     Source
  107.         setlines.c (c) 1998, 2002 by Frank Ellermann, version 3.0
  108.         http://frank.ellermann.bei.t-online.de/dos/setlines.zip
  109.