HISTORY.TXT

************* version 2.0 -- 28 apr 2005 *************************

EMM386 supports automatic pool-sharing between EMS, XMS, and VCPI memory.

/X2MAX32 option for HIMEM.

/? option supported as a no-op.

Fix for INT 15, function 87h in EMM386.

EMS unmap page bugfix.

************* version 1.5 -- 20 feb 2005 *************************

VDS function 2 support

Various uncommonly-used EMS 4.0 function and subfunction additions.

Fix EMS 4.0 function 53h and 58h bugs.

Additional reworking of VCPI code.

Miscellaneous cosmetic changes to source code.

************* version 1.4 -- 7 feb 2005 *************************

EMS 4.0 function 53h support.

INT 15h, function 87h, check out of range off by one byte fix

NOEMS with EMM= option fix.

INVD instruction emulation

Internal reworking for better overall VCPI program compatibility.


************* version 1.13d -- 4 jan 2005 *************************

HIMEM fix for HMAMIN option.

Support for INT 15h function 4309h as prep for future EMS/XMS pool sharing.

EMM386 FRAME=NONE parsing fix.

2005 copyright updates.

************* version 1.13c -- 12 dec 2004 *************************

MEMCHECK option allows use with USB drives.

VDS fix.


************* version 1.13 -- 23 nov 2004  *************************

All moves to and from control and debug registers through standard
registers are supported by EMM386 in V86 mode.

ALTBOOT option was renamed to NOALTBOOT.  ALTBOOT is supported as the
default do-nothing-different option.

Support for EMM386's use of 'M' and 'G' suffixes on options where
the suffixes can be used.

VDS support for functions 8103h, 8104h, 8105h, and 8106h.

Expanded command line option feedback.

************* version 1.12+ -- 25 sep 2004  *************************

Unofficial 1.12+ release due to the pending 'Beta9-final' FreeDOS 
release. Please read Michael Devore's changelogs at
http://www.freedos.org/news/news/   (April04 - September04)

package modified ('created') by Bernd Blaauw, bblnews@hotmail.com


************* version 1.12 -- 27 april 2004 *************************
emm386  1.12
	taken michael devore's changes from 26 apr 2004
	changed version to 1.12, compiled+compressed.
	new options 
	   /I=TEST
	   /X=TEST

************* version 1.11 -- 09 april 2004 *************************

emm386  1.11
himem   3.11
himemsm 2.11

license changed to artistic license

emm386  supports VCPI
himem   supports >64MB memory
himemsm (old himem) supports <64MB memory, 400 byte smaller


****************   HIMEM.EXE 2.09 13 jan 04 *************************
in addition to HIMEM/EMMM386, there exist new HIMEM64/EMM38664 versions,
that support >64 MB XMS/EMS memory.
This change/addition is entirely due to Michael Devore, thanks for 
this effort.
Although the >64M versions have not been tested as extensively as the 
old <= 64M versions, they are probably stable too.


****************   EXPERIMENTAL release 25 nov 03 *************************

added new HIMEM64.exe; this is HIMEM.EXE + support for >64MB memory

current status: should work, but has NOT been seriously tested.
in particular, the extended XMS functions 88..8f are effectively
untested.

as EMM386 isn't able to handle >64M memory, code to 'kill' memory
beyond 64M was added.


****************   HIMEM.EXE 2.08 6 nov 03 *************************

if A20 was not enabled, the (successful) return code was
destroyed

****************   HIMEM.EXE 2.07 13 feb 03 *************************

now ignores, if A20 can't be disabled (outputs a small message in this case)

****************  version 0.6 26 nov 02 *************************
emm386: 
		Bernd Blaauw translated a large part of german comments in
		EMM386.ASM to english
		
		VDS made an experimental feature, no longer enabled on default
	    TIP: if you experience probles with network cards, try

	    	LH /L: NET INITIALIZE
	    	
        this forces the load into low memory of the netcard driver
		

****************  version 0.5 07 nov 02 *************************
emm386: 
		any UMB provider should provide VDS functions as well.
		now at least one function (8103 - Lock DMA region)
		is implemented, and seems to work.
		this functionality is required, if you have
		Bus master (network) cards, and the driver is loaded high.
		
		this suffices at least for my own network card ;-)
		

****************  version 0.4 7 jul 02 *************************
emm386: TOSHIBA notebooks had problems to reboot with
        Ctrl-Alt-GREY Delete. now the grey del is handled
        like the white del; seems to fix that.

****************  version 0.4 3 apr 02 *************************
himem: trying to autodetect PS/2 (even if BIOS 
	gives wrong answers)

emm386: SERIOUS bug found, that caused memory overwrite 
    problems. wonder why it ever worked at all.
    should now run much better


both EMM386+HIMEM come now compressed with a 
proprietary EXE/SYS-compressor and require ke2026 or better
(ke2025x had a minor bug when loading device drivers)
this saves 1.9K for HIMEM and 14K for EMM386 (on disk)


****************   EMM386  *************************

 12/07/01 minor bug in @@UMBfound  

EMM38603 12/04/01 published on freedos mail

EMM38602 11/28/01 
    
    some corrections to the device driver part
	enhanced memory now detected by MFT
	
EMM38601 alpha release 11/22/01 

	first public release

****************   HIMEM.EXE  *************************

 12/13/01 changed version number 0.6 -->2.06
          some software (EMU86) expects version >= 2.00

 12/06/01 bug in XMS_REALLOC_XMS found and corrected

*** version 0.6 11/23/01 ****
- renamed from FDXMS.SYS to HIMEM.EXE and made an exefile
- made it compatible with EMM386
- integrated XMSTEST (HIMEM /TEST)
- added (from FDXMS08/martin stroemberg) checking for conventional 
  memory end at FFFF:FFFF

- removed the useless *late* init code (hook_init, hook_patch,...)
  moving this code to init

- resident footprint now 464 bytes smaller then fdxms08 :-))
 


Version 0.5 - 2001.05.25 - tom ehlert <tom.ehlert@ginko.de>
- major rework:
- reported XMS version  reflects current implementation - 2.0
- reported XMS internal version reflects driver version - 0.5

- works with 64MB 
- martin stroemberg found how to do xms_move_bios for > 16MB
- xms_free_handle now actually works
- added support for protected mode operation
- many more checks for valid requests (like valid handles,valid offsets)
- major code cleaning
- has chances to work in multitasking environments (not tested)
- Change XMS_NO_UMB_AVAILABLE to XMS_NOT_IMPLEMTED in xms_request_umb.

- bugs are now by tom.ehlert (tom.ehlert@ginko.de)


- still missing:
    support for 80286 (mostly due to long arith)
    support for >64 MB memory
  



Version 0.3 - 2001.04.24 - tom ehlert <tom.ehlert@ginko.de>
- renamed to 0.3, as there where several 0.2's out :-)

Version 0.2 - 2001.04.24 - tom ehlert <tom.ehlert@ginko.de>
- seems to be stable at 31 MB (not at 63 MB!!)
  changed max XMS to 31 for real mode,
  assert for protected mode (where copy through BIOS is done)
  max XMS size = 15MB

- note: this version is most certainly buggy - its only less buggy 
  then the original - hopefully :-)


Version 0.1 - 2001.04.19 - tom ehlert <tom.ehlert@ginko.de>

- added some more validity checks
- added code, so the xms_copy_block works in protected mode,too
  this is necessary for any protected mode host - like EMM386, S-Ice,...
- as the FDXMS is definitively not stable at 60MB, artificially reduced
  max XMS size to 15 MB.
  
- added code to xms_free_block, so it frees no better 

- note: this version is most certainly buggy - its only less buggy 
  then the original - hopefully :-)


Version 0.1 - 2001.04.17 - tom ehlert <tom.ehlert@ginko.de>

- added check for valid handle in GetHandleInfo() and FreeXmsHandle()
  SHOULD BE ADDED to LockHandle(), UnlockHandle(),... NOT YET DONE
- added handle.locks = 0 in init() - clearloop

Version 0.1 - 2001.03.08 - Louis P. Santillan <lsantil@calstatela.edu>

- Updated version that includes my corrected A20 setting/resetting code
- MartinS's <ams@ludd.luth.se> fixes for incorrect reporting of the
  correct Handle Info (function 0x0E)

Version 0.1 - 10/11.95

- initial version, uploaded for testing
- still about 400 bytes bigger than HIMEM :(
- poor feedback until now...
- works with a lot of software, but Watcom Help doesn't work when run with
  Norton Cache of Norton Utilities 8.0



tom.ehlert@ginko.de
		
