		readme.txt for EMM386/HIMEM

    ***********************************************************
	*THIS IS FREE SOFTWARE WITH ABSOLUTELY NO GARANTY         *
	*WHATSOEVER, WHICH YOU MAY USE COMPLETELY AT YOUR OWN RISK*
	*                                                         *
	*IF IT WORKS FOR YOU - FINE.                              *
	*                                                         *
	*IF IT DOESN'T - STOP USING, BUT DON'T COMPLAIN.          *
	*                                                         *
	*DON'T SEND BUG REPORT'S, SEND ONLY FIXES                 *
    ***********************************************************

	EMM386/HIMEM is released under the GNU GENERAL PUBLIC LICENSE, 
	see the file DOCS\LICENSE.TXT for the full text. 
    
    In addition, the original authors copyrights must remain intact;


What it does:

	HIMEM.EXE  replaces MSDOS HIMEM.SYS,
	EMM386.EXE replaces MSDOS EMM386.EXE


How to use it:

change CONFIG.SYS like

	files=20
	buffers=30
	lastdrive=z
	break=off
	
>>>	dos=high,umb
>>>	device=HIMEM.EXE		
>>>	device=EMM386.exe NOEMS 
	shellHIGH=c:\command.com


both HIMEM and EMM386 require PC's >= 80386 to run.

			
 ****************  Why use EMM386   ****************

if you want enhanced (EMS) memory

if you need Upper memory and your PC is not recognized by 
	UMBPCI

 **************** Why NOT use EMM386 ***************
 
if you want to run protected mode (VCPI/DPMI) programs,
you can't run EMM386. to be done - much later.



COMMANDLINE switches implemented

	use EMM386.EXE from commandline - it will tell you:
	
		 NOEMS      - disable EMS completely (default=enable)
		 FRAME=D000 - select wanted pageframe(default=highest possible)
		 EMM=20000  - 20000 KB EMS memory wanted(default=8MB)
		 X=D000-D800 - no make memory mapped devices work

		 I=A000-AFFF - IF YOU REALLY KNOW WHAT YOU DO (VGA graphics)
		 I=B000-B7FF - IF YOU REALLY KNOW WHAT YOU DO (Hercules)
		 I=BC00-BFFF - IF YOU REALLY KNOW WHAT YOU DO (VGA upper text)
							see WARNING below


	EMM386 allocates fixed amount of whatsneeded (from HIMEM.EXE)
		needed internally ca. 96 KB for pagetables, high code,...
		64K for DMA handling ( no idea if that works though)
		additionally enough memory to map UMB's (16..160KB)
	
	    + tries to allocate the wanted EMS memory (8MB) 
	    more to be used as EMS memory


	EMM386 throws a lot of debug output currently - this will vanish soon


	WARNING:
		in theory, its possible to use upper memory at 
		A000..AFFF (VGA graphics) and
		B000..B7FF (hercules adapter)
        
        
		however some programs (or the BIOS INT 10 functions)
		seem to write _sometimes_ into this area,
		so operating with this memory area 
		
			IS HIGHLY DISRECOMMENDED to use A000-B7FF
			
		use it at your own risk only			



*********************   known incompatibilities ***************

FDXMS08
	uses priviledged instructions and is not supported

***********************************************************
no VCPI/DPMS functionality

	none at all - not even thought about that



tom ehlert 2001-12-04

