Document 1202
HILOADING  SUPERSTOR

Description:
The device driver which loads SuperStor, SSTORDRV.SYS, is
designed to load portions of its code into upper memory when
that memory has been made available via an XMS (eXtended Memory
Specification) compatible UMB (Upper Memory Block) provider,
like EMM386.SYS.

When using EMM386.SYS, loading SSTORDRV.SYS is made simple, that
is, DEVICE=C:\SSTORDRV.SYS or HIDEVICE=C:\SSTORDRV.SYS will load
the driver properly.  This is because SSTORDRV.SYS has been
altered to load the same with either command.  It knows when
HIDEVICE is used, but loads like it does with DEVICE anyway.

Because a portion of SSTORDRV.SYS must remain in conventional
memory there will be approximately 22K less conventional memory.
If the driver cannot be loaded into upper memory users will see
about a 48K loss of conventional memory.

When using Third Party XMS UMB providers with SSTORDR.SYS
however, loading SSTORDRV.SYS may not be so straight forward. 
We have seen that users have had problems with 386MAX's
386MAX.SYS driver and QEMM's QEMM386.SYS driver.  The problem
seems to arise when users (or the Memory Manager's "optimize"
program) tries to load ALL of SSTORDRV.SYS into upper memory
with their own "HIDEVICE" equivalent.  The SuperStor driver is
unable to tell when it has been loaded with "HIDEVICE"
equivalent commands.  Users of QEMM and 386MAX (and other Third
Party XMS UMB providers) should only load SSTORDRV.SYS with the
DEVICE=C:\SSTORDRV.SYS syntax.

Example:
Loading SSTORDRV.SYS with the following commands may cause
problems:

	DEVICE=C:\QEMM\LOADHI.SYS C:\SSTORDRV.SYS
	DEVICE=C:\386MAX\386LOAD.SYS PROG=C:\SSTORDRV.SYS

Use :
	DEVICE=C:\SSTORDRV.SYS instead.
