1. Hardware requirements: 8088-compatible CPU, network adapter,
   ability to execute this code during boot in a way standard
   BIOS does it with ROM-s, ROM space enough to put the code
   (about 2.5kB) and packet driver for network adapter, and
   enough real mode RAM - the RAM requirements consist of:
   - 81kB (defineable) area at top of memory below 640kB,
    which is used for code moved there from ROM, and a program
    loaded there from server and remaining resident during boot
   - 32kB (because of standard address of bootsector loading)
   - 16kB area to read first program - by default at segment
    4000h, need move it (e.g. to 800h) if RAM is below 360kB;
   at initial stage of the boot, and later:
   - still the 81kB
   - as much as the system to be booted needs for its purposes
   - some area for RAM drive (when booting DOS, at least shell
    should be copied to it, also few config files are useful),
    fortunately this can be in extended memory if available;
   the 81kB area is released when boot finishes.

   These values: 81kB and 4000h are defineable in boot-rom
   source; the 16kB area for program is from its size.

   Practically, it is hard to find a PC-compatible with less
   than 256, or even 512kB RAM, and if the network adapter has
   a socket for boot-ROM, all requirements are easily met (oh,
   maybe with a need to redefine the segment 4000h for 256kB).
   There is a little possibility that the bootrom fits in 8KB
   (e.g. NE2000 driver has 6kB, +2.5 makes 8.5 - too big, but
    maybe some drivers are smaller); usually need 16kB EPROM.

   Even 64kB of extended memory is great plus - it can be used
   for RAM drive which can hold COMMAND.COM and config files.

2. Software requirements to use the bootrom:
   - packet driver for the network adapter - it must fit in the
    ROM, use PKLITE to compress it if need; raw ROM image made
    by assembler has predefined ROM size, and the packet driver
    must fit in free area of the image; MUST HAVE IT
   - a program which builds ROM (adds packet driver and args to
    the raw ROM image, computes checksum...) - AVAILABLE
   - a program which is loaded from the server - the bootrom
    reads the program into memory, and jumps to it, the program
    must continue boot then - there is AVAILABLE program for
    DOS boot which reads configuration file, finds entry with
    matching network adapter address, and uses it to select
    boot "disk" image and config.sys file for the DOS; if other
    system is to be booted, either the program must be modified
    or replaced by another, or a DOS must be booted first; the
    program must use limited set of DOS calls - it can open and
    read files on the server, write to screen, but cannot use
    DOS to read keyboard - use bioskey() if need
   - a NetWare compatible server - any Novell NetWare server
    from 3.01 should work, every version of MARS_NWE I tried
    worked, and also Windows NT NetWare server worked (after
    a fix in the bootrom code); important factors are:
    - reply to SAP Query "get nearest server"
    - "logout" makes SYS:LOGIN directory accessible
    - the program mentioned above must be there (in SYS:LOGIN)
     and the file must be readable; should have shared attrib
     (unnecessary for MARS if NetWare attribs are not enabled)
    - open/read/close requests are serviced (seems FCB open);
    MARS_NWE is AVAILABLE free for Linux
   - DOS 5.0 to 6.x - earlier DOS-es do not support memory
    adjustment by INT 2Fh function 4A06, newer not tested
   - a DOS program to free the 81kB area (cleanup) - AVAILABLE.
   Few other programs are very useful, but not necessary.

3. Software needed to recompile the bootrom and other code:
   - to assembly any .ASM sources (bootrom is one of them) need
    Borland TASM (I tried versions 1.01 and 3.0 with success),
    maybe MS MASM 5.1 or 5.0 will assembly it, too
   - to compile .C sources: I used Borland TC 1.5 (planned to
    be available free at http://community/borland.com/ after
    registration), I suppose TC 2.1 will work, too
   - to compile .PAS sources: I used Borland TP 5.5
   - to produce executables some linker, and a kind of EXE2BIN
    are necessary - TC has TLINK included, MSDOS has EXE2BIN;