home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1995 November / PCWK1195.iso / inne / dos / programo / pmw120.exe / UPDATES.DOC < prev    next >
Text File  |  1995-07-28  |  6KB  |  178 lines

  1. ------------------------------------------------------------------------------
  2. ---------------------------- Updates to PMODE/W ------------------------------
  3. ------------------------------------------------------------------------------
  4.  
  5. PMODE/W v1.0:
  6. -------------
  7.  
  8. ) First release of PMODE/W.
  9.  
  10. PMODE/W v1.01:
  11. --------------
  12.  
  13. ) Now even smaller in size (less than 8k).
  14.  
  15. ) The DOS critical error handler is now included in the clean up process.
  16.  
  17. ) 32bit far pointer fixups are now supported (though we doubt they are used).
  18.  
  19. ) PMWSETUP updated to reflect the fact that the number of real mode callbacks
  20.   allocated cannot exceed 0FFh.
  21.  
  22. ) PMODEW.EXE will no longer crash the system if run by itself (though you
  23.   should not be doing that anyway because its pointless).
  24.  
  25. ) After that, we found a small bug in our INT 31h DOS memory block functions.
  26.   Needless to say, it is fixed now.
  27.  
  28. ) INT 21h function 49h zeroes the ES selector when that block is successfully
  29.   freed.
  30.  
  31. ) INT 21h function 48h now returns error codes correctly.
  32.  
  33. ) After all this, we were bored, so we hunted down and compensated for a
  34.   DOS/4GW and EMM386 bug. EMM386 trashed the high bits of ESP which DOS/4GW
  35.   was assuming to be cleared. This only means that now you can run DOS/4GW
  36.   successfully after a PMODE/W program.
  37.  
  38. PMODE/W v1.02:
  39. --------------
  40.  
  41. ) Maintenance release (documentation changes, added FAQ).
  42.  
  43. ) Changed the method of restoring real mode IRQ vectors upon program
  44.   termination.
  45.  
  46. PMODE/W v1.10:
  47. --------------
  48.  
  49. ) Changed the way 16bit objects are handled during loading/relocation.
  50.  
  51. ) Added support for 16/32 bit self-relative fixups.
  52.  
  53. ) INT 21h services 1Bh, 1Ch, 1Fh, 32h, and 34h are now extended.
  54.  
  55. ) MS Mouse INT 33h functions 0009h, 000Ch, 0016h, and 0017h are now extended.
  56.   Please see PMODEW.DOC for more information on mouse-related functions.
  57.  
  58. ) Under VCPI/XMS/raw, INT 31h functions 0600h and 0601h will now always return
  59.   with the carry flag clear. Since PMODE/W will never page out memory, locking
  60.   is unnecessary. Under DPMI however, the DPMI host will handle this function.
  61.   These two functions can now be checked for error while still returning
  62.   successfully even when a DPMI host is not present.
  63.  
  64. ) Changed method of resizing the program DOS memory block at startup to be
  65.   compatible with OS/2 Warp. This fixes a problem with not being able to
  66.   spawn other programs.
  67.  
  68. ) Fixed a very peculiar memory allocation bug. If you tried to allocate a
  69.   memory block of about 2 gigs, the system would be corrupted and lock up.
  70.  
  71. ) Fixed a minor inconsistency in the way memory was allocated for objects.
  72.  
  73. PMODE/W v1.11:
  74. --------------
  75.  
  76. ) Added support for DPMI functions 0800h and 0801h.
  77.  
  78. PMODE/W v1.12:
  79. --------------
  80.  
  81. ) Fixed a very obscure bug associated with 32bit near call/jmp fixups.
  82.  
  83. PMODE/W v1.13:
  84. --------------
  85.  
  86. ) Fixed problems with DOS INT 21h read/write functions for disk full and end
  87.   of file conditions.
  88.  
  89. ) Segments will now be aligned on 256 byte boundaries instead of dword or
  90.   paragraph boundaries.
  91.  
  92. ) Fixed INT 31h function 0503h always failing.
  93.  
  94. PMODE/W v1.14:
  95. --------------
  96.  
  97. ) Fixed a bug where INT 21h function 4Fh did not copy the DTA buffer properly.
  98.  
  99. ) Changed initial system memory allocation behavior. Under VCPI memory
  100.   managers, both VCPI and XMS memory will be allocated. This compensates for
  101.   memory managers that do not allow VCPI access to their XMS memory pool.
  102.   Specifically, this fixes a problem with not getting any extended memory
  103.   under EMM386 with EMS turned off.
  104.  
  105. ) INT 31h function 0100h was incorrectly documented in stating the DX register
  106.   was the number of paragraphs to allocate from DOS, the correct register was
  107.   BX. Other minor document errors were also fixed.
  108.  
  109. ) Fixed DPMI function 0503h again, and this time it really works.
  110.  
  111. ) Fixed DPMI function 0500h sometimes returning the wrong size.
  112.  
  113. ) The temporary real mode DTA will now be set in the protected mode INT 21h
  114.   function 1Ah, not just at extender initialization.
  115.  
  116. PMODE/W v1.15:
  117. --------------
  118.  
  119. ) Fixed a bug with fixup buffer allocation at startup. In rare conditions,
  120.   when not enough low memory was left to relocate the protected mode program
  121.   after it was loaded into low memory, PMODE/W would exit with an out of
  122.   memory error message.
  123.  
  124. ) A 386 instruction had slipped into our code before our 386 detection. This
  125.   caused PMODE/W to lock up under 80286 processors and below instead of
  126.   exiting with the appropriate error message. Needless to say it has been
  127.   fixed.
  128.  
  129. ) Fixed IRQ handling to be compatible with possible hardware remapping of IRQ
  130.   vectors.
  131.  
  132. ) PMODE/W now backs up and restores the entire real mode interrupt vector
  133.   table and the PIC masks upon exit instead of just the IRQ vectors.
  134.  
  135. ) We have changed our licensing policy and added a student discount.
  136.  
  137. ) Addition of ASM example files.
  138.  
  139. ) New custom bind utility! PLEASE READ the "Utilities" section of PMODEW.DOC
  140.   before using it.
  141.  
  142. PMODE/W v1.16:
  143. --------------
  144.  
  145. ) Fixed system crash on exit under a DPMI host like Windows or OS/2.
  146.  
  147. ) INT 33h function 000Ch will work correctly when called with 0000:00000000
  148.   for the function address.
  149.  
  150. ) Fixed DPMI INT 31h functions 0900h, 0901h, and 0902h.
  151.  
  152. PMODE/W v1.20:
  153. --------------
  154.  
  155. ) Added compression of protected mode executables.
  156.  
  157. ) INT 33h function 0Ch will now compensate for OS/2 Warp's obscene habit of
  158.   passing the real mode mouse callback a 16bit stack selector. This behavior
  159.   was sometimes causing slowdowns and lockups with user mouse handlers in
  160.   OS/2 DOS boxes.
  161.  
  162. ) Fixed a problem where the exit code was being destroyed during cleanup.
  163.  
  164. ) Under VCPI/XMS/raw, INT 31h functions 0702h and 0703h will now always return
  165.   with the carry flag clear. Since PMODE/W will never page out memory, these
  166.   functions are unnecessary. Under DPMI however, the DPMI host will handle
  167.   this function. These two functions can now be checked for error while still
  168.   returning successfully even when a DPMI host is not present.
  169.  
  170. ) Fixed minor internal problem with an error not being returned correctly at
  171.   startup if the A20 gate could not be enabled.
  172.  
  173. ) Changed DPMI function 0400h to return DPMI host version number of 0.9
  174.   instead of 1.0.
  175.  
  176. ) Documentation for PMWSETUP, PMWBIND, and PMWLITE can now be found in
  177.   the file UTILS.DOC
  178.