home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #1 / monster.zip / monster / PROG_PAS / TPPCX256.ZIP / ADDENDUM.DOC next >
Text File  |  1993-12-21  |  4KB  |  69 lines

  1. 03.01.93
  2.  
  3.     The following information contains up-to-date changes or improvements
  4. since the initial release of TPPCX-VGA256.
  5. ==============================================================================
  6.  
  7.     1.  All the enclosed code has been re-compiled with Borland's BP7.0
  8. compiler. It is always a problem when a new version has been issued and to
  9. eliminate confusion I have updated the compiled code to v7.0
  10.  
  11.     2.  As a result, the code can be run in protected mode, with the
  12. following exceptions...
  13.  
  14.         a.  Currently, the only 256 color driver that will run in pmode is
  15.         BGI256.BGI (that I am aware of). I have enclosed a graphics init
  16.         source for use with the BGI256 driver. Please note the EQUATE_VesaMode
  17.         routine needed for this driver. The driver contains one non-Vesa mode
  18.         in the number one slot and it sets things out of sync with the
  19.         Vesa_Modes array. This routine synchronizes my Vesa calls with the
  20.         BGI driver mode. I did not include the BGI256 code as I believe it is
  21.         not my right to distribute someone else's code without their
  22.         permission. It can be retrieved from CompuServ, BPASCAL, Lib5,
  23.         BGI256.ZIP and compiled. Please note the public name in the
  24.         UBGI256.PAS source for any linked object code.
  25.  
  26.         b.  An instance of the Vesa object, PVESAPM, is required where ever
  27.         the manual calls for a Vesa object when targeting for pmode. This
  28.         pointer is for a descendant object of MVESA called MVESAPM. MVESAPM
  29.         adds two fields, DS_SVGAInfo and DS_SVGAModeInfo. These two fields
  30.         are type, LongType, as defined in unit DPMI. These two fields define
  31.         the real data segment when calling unsupported interrupt calls to
  32.         the Vesa BIOS Extension requesting SVGA info. The Init constructor
  33.         and Done destructor override the ancestor calls and essentially do
  34.         the same initialization and cleanup but in a fashion compatible to
  35.         protected mode. The object also redefines the polymorphic,
  36.         GetSVGAModeInfo and GetSVGAInfo methods, which call DPMI funciton
  37.         300h to simulate a real mode interrupt requesting SVGA information.
  38.         Define LongType as follows in unit DPMI (note, this unit is from
  39.         Borland's Open Architecture package. I cannot distribute it as it's
  40.         a licensed product)
  41.  
  42.         type
  43.                 LongType = record
  44.                 case Word of
  45.                 0: (P: pointer);
  46.                 1: (Long: Longint);
  47.                 2: (Selector: word; Segment: word);
  48.                 end;      {lo}            {hi}
  49.  
  50.         This was put in DPMI.PAS to maintain unit continuity under pmode.
  51.  
  52. I have also included a file called UDEFINES.DOC
  53.         which outlines some conditional defines recognized by the units.
  54.         (This is from my library, fyi)
  55.         The enclosed code has the same calls as the
  56. TP6.0 code, as documented in the manual with the following exceptions: The
  57. graphics initialization routines, InitBGI_Vesa and InitBIOS_Vesa
  58. have been moved to the new unit, UBGIVESA.TPU. The InitBGI_Vesa routine will not work with the
  59. VESA256.BGI driver until that code has been upgraded. I felt the routines were out of place in the UVESA
  60. unit, which deals with VESA routines and not graphics initializations. 
  61.  
  62.  
  63.      I have taken a few sample runs and everything seems ok, but I'm not rock solid on it's durability.
  64. I'm fairly new at this protected mode stuff and the code is making a few pointer based interrupt calls
  65. outside of Borland's support. According to the manuals and some friendly advice I've done what needs to
  66. be done.
  67.  
  68.  
  69.