  CONTENTS
  --------

  This README file includes the following information:

  1.0   Terms and conditions
  2.0   Installation notes
  3.0   Multiple VDM Environment
  4.0   Project Odin
  5.0   Hibernation and dedicated sessions
    5.1   TVFS
    5.2   System Commander
    5.3   Miscellaneous issues
  6.0   XDFCOPY
  7.0   Optional components
    7.1   OS/2** Segmented Executable Linker v 2.00
    7.2   IBM** IEEE-1284 Enhanced Parallel Port Driver
    7.3   IBM** Micro Channel** IDE DASD driver
  8.0   Optional untested components
    8.1   Bi-directional input method
    8.2   Universal Serial Bus (USB) support
    8.3   Pen Device Driver
  9.0   Large IDE media
 10.0   Using the IBM1S506.ADD /!SHUTDOWN switch
 11.0   ST-506/412 MFM drives
 12.0   SVGA support
 13.0   Netmos** Nm-9835 PCI I/O board
 14.0   ISA Plug'n'Play support
 15.0   Trademarks


  1.0   Terms and conditions
        --------------------

        Downloading this product indicates your acceptance of the following
        terms and conditions:

        1. You may not use the product for any business, government or
           institutional activities.
        2. You may not charge any additional costs for this product except
           media costs.
        3. You have the royalty-free right to distribute this product provided
           that this license information is left unmodified in the copies you
           distribute.
        4. In no event shall the authors be liable for any damage, either
           direct or consequential, resulting from use or misuse of this
           product. The authors hereby disclaim all warranties with regard to
           this product, including, but not limited to, warranties of
           merchantability and fitness for a particular purpose.

        All occurences of term "OS/2" in this product designate the mode of
        operation compatible with IBM** OS/2 Warp 4**, unless otherwise
        indicated with reference to a specific software product.


  2.0   Installation notes
        ------------------

        This product is not intended for end-user installation, therefore the
        current version does not include an installation facility. The topics
        in this section deal with particular cases, given that the user has
        acceptable background in installation and maintenance of IBM** OS/2**
        systems.

        To facilitate the installation, this distribution duplicates VDISK.SYS
        and FORMAT.COM at disk 2. This arrangement may be changed in future
        releases of the product.

        The installation options available to the user are as follows:

        (a) Drop-in replacement for existing IBM** OS/2 Warp 4** system with
            prerequisite build level 9.023. In this case, copy the following
            files to the OS/2** startup partition:

              o  Disk 0:
                 OS2KRNLI -> \OS2KRNL
                 SYSINSTX.COM -> \OS2\INSTALL\BOOTDISK\
                 OS2LDR -> \
                 OS2LDR.MSG -> \
                 OS2DUMP -> \
                 README -> \
              o  Disk 1:
                 OS2LOGO -> \
                 *.FLT -> \OS2\BOOT\
                 *.ADD -> \OS2\BOOT\
                 *.SYS [excluding CONFIG.SYS] -> \OS2\BOOT\
              o  Disk 2:
                 KEYBOARD.DCP -> \OS2\
                 VIOTBL.DCP -> \OS2\BOOT\
                 HPFS.IFS -> \OS2\
                 CDFS.IFS -> \OS2\BOOT\
                 OS2CDROM.DMD -> \OS2\BOOT\
                 COUNTRY.SYS -> \OS2\SYSTEM\
                 *.DLL -> \OS2\DLL\
                 *.COM -> \OS2\
                 HARDERR.EXE -> \OS2\SYSTEM\
                 SYSLEVEL.OS2 -> \OS2\INSTALL\
                 CMD.EXE -> \OS2\
                 TESTCFG.SYS -> \OS2\BOOT\
                 MOUSE.SYS -> \OS2\BOOT\
                 VDISK.SYS -> \OS2\BOOT\
              o  Disk 3:
                 UHPFS.DLL -> \OS2\DLL\
                 UNPACK.EXE -> \OS2\
                 *.COM -> \OS2\

            Install the bundle files using the UNPACK command. Run it
            with your OS/2** boot partition as current drive, e.g.

            [D:\]A:\unpack A:\bundle
            [D:\]A:\unpack A:\vga

            To install the hibernation and dedicated sessions support on a
            HPFS partition (where it was not made available by OS/2 Warp 4**
            installer), first unpack the TRUEMODE bundle from OS/2 Warp 4**
            CDROM (\OS2IMAGE\DISK_37 directory), then unpack TRUEMODE from
            osFree disk 3. Be sure to install HYBERSET.EXE in CONFIG.SYS.

        (b) Stand-alone installation after booting from floppy disks. In
            this scenario, the CONFIG.SYS on disk 1 has to be modified to
            install the VDISK.SYS driver as follows:

            DEVICE=VDISK.SYS 1024 512 112

            First, run FDISK after booting to create the partitions.
            Reboot if necessary.

            Then, after the osFree prompt is available, the library files
            need to be copied to the virtual disk. For example, if VDISK
            acquires drive letter H:, and the target installation partition
            is named G:, the following actions might be done:

            SET BEGINLIBPATH=H:\
            COPY *.DLL H:
            [insert disk 3]
            COPY *.DLL H:
            FORMAT G: /FS:HPFS
            [insert disk 0]
            SYSINSTX H:

            Then the system files have to be copied to appropriate locations
            as described in method (a) above, and the CONFIG.SYS file has to
            be created. The structure of CONFIG.SYS is not discussed in the
            present document, please refer to the sample below for a typical
            hard disk boot configuration.

        (c) Installation to a FAT16 partition using DOS or other compatible
            operating system. In this case, osFree boot is only required to
            create and format the target partition. From the floppy disk 2 run
            the following command:

            FORMAT x:

            where x: is the drive letter of target partition. Then refer to
            method (a) for information on copying the system files. Copy the
            following file from disk 0 to establish the boot loader:

            OS2BOOT -> \

        A sample CONFIG.SYS file follows:

        buffers=32
        iopl=yes
        memman=swap
        swappath=d:\os2\system 3072 512
        protshell=d:\os2\cmd.exe
        diskcache=D2,LW
        protectonly=yes
        libpath=.;d:\os2\dll;
        ifs=d:\os2\hpfs.ifs /c:64
        pauseonerror=no
        country=1,d:\os2\system\country.sys
        codepage=437
        devinfo=kbd,us,d:\os2\keyboard.dcp
        devinfo=scr,vga,d:\os2\boot\viotbl.dcp
        device=d:\os2\boot\mouse.sys
        set path=d:\os2;d:\os2\system
        set dpath=d:\os2;d:\os2\system;\os2\install
        set keys=on
        basedev=ibmkbd.sys
        basedev=ibm1flpy.add
        basedev=ibm1s506.add /!SHUTDOWN
        basedev=ibm2flpy.add
        basedev=ibm2adsk.add
        basedev=ibm2scsi.add
        basedev=os2dasd.dmd
        device=d:\os2\boot\testcfg.sys
        basedev=ibmatapi.flt
        basedev=ibmidecd.flt
        device=d:\os2\boot\os2cdrom.dmd /q
        ifs=d:\os2\boot\cdfs.ifs /q
        set video_devices=vio_vga
        set vio_vga=device(bvhvga)


  3.0   Multiple VDM Environment
        ------------------------

        The implementation of OS/2**-compatible MVDM environment is pending
        to be included in a future release. The osFree package may be
        integrated into an existing OS/2** installation with MVDM, however.

        The kernel may impose problems with DOS applications that utilize the
        INT 2Fh calls to release timeslices. A workaround is to set
        IDLE_SENSITIVITY=1 for the suffering applications.


  4.0   Project Odin
        ------------

        Project Odin is an effort of implementing the Microsoft proprietary
        Win32 programming interface on OS/2** platforms. The kernel in this
        release includes an update to support the Project Odin, provided
        that you have IBM** Presentation Manager and IBM** Multimedia
        Presentation Manager/2** installed.

        To use the WIN32K.SYS kernel loader for Win32 executables, be sure to
        extract the OS2KRNL.SYM file from the kernel debugger files in this
        package and place it into the root directory along with OS2KRNL.

        If the Win32 executable files fail to start under Project Odin,
        causing a "SYS2070: WGSS50->PMMERGE.5473" error, it indicates that
        the version of Presentation Manager is not capable of supporting the
        APIs required by the current version of Project Odin. In this case it
        is advised either to upgrade PMMERGE.DLL, or to install a version of
        Project Odin dated before July 19th, 2001. This problem may be
        corrected in future versions of WGSS50.DLL.


  5.0   Hibernation and dedicated sessions
        ----------------------------------

        Hibernation and trapdoor support is available both on FAT and HPFS
        partitions.

        HYBERNAT.EXE has the following new options besides the function
        provided for compatibility with IBM** HYBERNAT.EXE:

             /i = Relax the OS2LDR version check (hibernation requires some
                  specific functions of OS2LDR). Also, bypasses the
                  verification for absence of write-mode files with /s
                  ("sticky boot") option. This parameter is DANGEROUS.

            /u1 = specify a pre-hibernation user hook. The hook can be used to
                  check the conditions for hibernation and/or perform some
                  custom cleanup.

                  The hook must not start any background processes for which
                  it is not aware of. The hook must not be a batch file (to
                  run a batch file, set /u1"cmd /c mybatch.cmd"). The hook may
                  be a DOS or OS/2 program, but not a Windows** or PM
                  program.

                  If the hook returns a non-zero errorlevel, then the
                  hibernation is aborted.

                  When it is launched, the hook may observe and/or modify the
                  startup files created for dedicated session.

            /u2 = specify a post-restore user hook. This is to revert the
                  action of /u1 hook. The same rules as with /u1 apply here,
                  but there are some specific points:

                    o  If /u1 never ran (or returned a non-zero errorlevel),
                       then the /u2 hook is not launched.
                    o  The errorlevel for this hook is not verified.
                    o  Background processes may be started if you're sure that
                       you won't attempt hibernation again until they finish.

        With the trapdoor/dedicated session setup, HYBERNAT also accepts the
        following special parameters:

             /c = Prevent from removing the system \CONFIG.SYS and \AUTOEXEC.BAT
                  and replacing them with DOS ones. /c is particularly useful
                  together with /t<xxx> and is recommended if you run
                  multiple systems from the FAT partition.

             /m = Disable the Boot Manager switching into unattended mode.

        /b<xxx> = Specify the trapdoor invocation point:

                    o  A drive specification (e.g. C:) tells to invoke the
                       boot sector of this drive, possibly launching the
                       associated OS.

                    o  A filename specification (e.g. E:\MISC\DOSBOOT.DAT)
                       means that the boot sector (or an MBR snapshot) will be
                       taken from this file. Such files can be created with
                       Norton Utilities** or similar tools, but it is out of
                       scope of this document. Only 512 bytes are read.

                    o  A directory specification (e.g. C:\WARPDOS) is for
                       pointing an alternative location for the IBM** DOS
                       files supplied in TRUEMODE bundle of OS/2 Warp 4**. The
                       default is C:\OS2\SYSTEM (note the C:, as the
                       dedicated session still requires a C: FAT16 primary
                       partition).

        Any parameters to HYBERNAT.EXE can be preset in the SET HIBEROPT=...
        option in CONFIG.SYS.

  5.1   TVFS
        ----

        The IBM** Toronto Virtual File System (TVFS) needs to be disabled with
        a user hook prior to entering the hibernation. An example follows:

        SET HIBEROPT=/u1"c:\os2\tvfs\tvkill" /u2"cmd /c tvfsinit"

        TVFSINIT.CMD must contain:

        @echo off
        c:
        cd\os2\tvfs
        set TVFS_RESTORE_CMD=C:\OS2\TVFS\TVFS_RST.CMD
        tvctl.exe -p -w -r
        tvrestor

        All applications accessing files on a TVFS volume will go into
        undetermined state for the time between TVKILL is issued and the
        system is finally suspended by HYBERNAT (though the effort was made
        to reduce this time to a minimum by freezing the system as soon as
        possible after the /u1 hook finishes).

        The second critical point is when the system is released but the /u2
        hook is not yet launched. That is imperative that daemon processes
        running with open files on TVFS must be tolerant to this temporary
        lock-out.

  5.2   System Commander
        ----------------

        The "MultiFAT" setup of System Commander requires /c to be present in
        HIBEROPT. This will preserve the system CONFIG.SYS and AUTOEXEC.BAT from
        overwriting with dedicated session ones in the SC MultiFAT repository.

  5.3   Miscellaneous issues
        --------------------

        - Disk space: the free space on startup volume: has to be capable to
          keep the hibernation file (\SWAPPER2.DAT), which is equal to the
          amount of physical RAM.

        - Fragmentation of the boot partition should be avoided. A warning
          message will appear if the level of fragmentation is too high.

        - Conflicting drivers: in very unlikely cases, hibernation may fail
          consistently, until a reboot is performed. The reason is unknown,
          since this situation is rather infrequent and has not been
          investigated yet.

        - Network connections. There is a variety of network configurations,
          the operability of hibernation depends on the exact case. The
          Ethernet LAN as well as PPP connections are not known to compromise
          the hibernation, though the data sent over these connections will
          be discarded.

        - EXT2FLT.FLT, a driver commonly used for foreign filesystem support,
          if installed with the /A switch, results in a broken hibernation
          file.

        - The keyboard is not intercepted while HYBERNAT.EXE runs. Switching
          the tasks will result in inability to restore the system state.


  6.0   XDFCOPY
        -------

        XDFCOPY supports the low-density (720 KB 3.5") floppy media.

        Please be aware that the version of XDFCOPY supplied in this package
        is protected mode only and will not run in DOS.


  7.0   Optional components
        -------------------

        The following components are not required to provide compatibility
        with IBM** OS/2** system but are provided as optional:

  7.1   OS/2** Segmented Executable Linker v 2.00
        -----------------------------------------

        The updated linker in this release contains a superset of functions
        provided in Microsoft** Segmented-Executable Linker Version 5.10. New
        function includes the NONAME clause of EXPORT statement in definition
        files. It tells the linker to not include symbolic names for export
        ordinals.

  7.2   IBM** IEEE-1284 Enhanced Parallel Port Driver
        ---------------------------------------------

        The driver for ECP/EPP parallel ports is available as PAR1284.SYS.

  7.3   IBM** Micro Channel** IDE DASD driver
        -------------------------------------

        The driver for Micro Channel** IDE controllers is available
        as IBM2IDE.ADD.


  8.0   Optional untested components
        ----------------------------

        The following packages are included in the current release for
        evaluation purposes and are not meant to be tested for compatibility
        or completeness.

  8.1   Bi-directional input method
        ---------------------------

        The optional components of osFree include the base support for BIDI
        (Arabic and Hebrew) input method. This function is provided as
        untested in the current release. Additional NLS components may be
        required.

  8.2   Universal Serial Bus (USB) support
        ----------------------------------

        The Universal Serial Bus drivers are provided as untested in the
        current release.

  8.3   Pen Device Driver
        -----------------

        The light pen (serial digitizer) driver is provided as untested
        in the current release.


  9.0   Large IDE media
        ---------------

        In contrast to IBM** OS/2 Warp 4**, the level of IBM1S506.ADD bundled
        with osFree supports IDE drives larger than 8.4 GB, with the limit of
        128 GB.


 10.0   Using the IBM1S506.ADD /!SHUTDOWN switch
        ----------------------------------------

        IBM1S506.ADD may be installed with the /!SHUTDOWN switch to prevent
        hard drive power-down at the time of system shutdown or reboot. This
        option should be avoided on laptop computers, such as Toshiba**
        Satellite Pro**, with IBM** TravelStar** hard drives, where the manual
        power-down may result in emergency unload of drive heads. Refer to
        IBM** TravelStar** specifications for more details.


 11.0   ST-506/412 MFM drives
        ---------------------

        The current version of IBM1S506.ADD does not support ST-506/412
        controllers.


 12.0   SVGA support
        ------------

        The base display drivers in this product are compatible with IBM**
        OS/2 Warp 4**. A problem has been prevented that might lead to TRAP
        or IPE when switching between video pages in applications that run
        in 132-column text mode.


 13.0   Netmos** Nm-9835 PCI I/O board
        ------------------------------

        To use the Netmos** PCI I/O cards with osFree, the I/O ports need to
        be preconfigured to match the "legacy" addressing. This has to be
        done before the OS boots. An example configuration follows:

          o  Register 10h = COM3 = 03E9h
          o  Register 14h = COM4 = 02E9h
          o  Register 16h = LPT2 = 0279h
          o  Register 17h = ECP/EPP for LPT2 = 0679h

        Future versions may include the appropriate modifications to
        PRINT01.SYS and COM.SYS.


 14.0   ISA Plug'n'Play support
        -----------------------

        The "snooper" code required to detect ISA Plug'n'Play devices is not
        included in this version. The Resource Manager still can be used to
        install "snoopers" by means of SNOOP.LST file.


 15.0   Trademarks
        ----------

        The trademarks denoted with (**) belong to their respective owners.
