StrongForth is a 16-bit DOS application that runs on DOS versions 3.3 
or higher. In order to build the StrongForth executable, five source 
files and two tools are required.

defs.8      Global definitions
main.8      Startup and initialization
forth1.8    low-level code definitions
forth2.8    high-level colon and code definitions
shadow.8    various subroutines

Note that the source files contain tabs and look best if the tab 
distance of the editor is set to 4 characters.

The sources are to be assembled by the A86 assembler. A86 is a 
commercial assembler written by Eric Isaacson. It can be downloaded 
and acquired at http://www.eji.com/a86/.

a86 +O+P2+X defs.8 main.8 forth1.8 forth1
a86 +O+P2+X defs.8 shadow.8 forth2.8 forth2

Executing these command lines, the A86 assembler generates two object 
files. Any 16-bit DOS linker that is compatible to the Microsoft(R) 
linker version 3.x can be used to generate a .EXE executable from the 
two object files. The command line switch /cparmaxalloc:1 ensures 
that StrongForth can allocate additional memory segments at startup.

link /cparmaxalloc:1 forth1+forth2,forth,forth;

This command creates forth.exe. To start StrongForth, just run 
forth.exe in a 16-bit DOS environment and make sure the block file 
forth.blk is located in the same directory.

WarpLink is a compatible public domain linker that does the job just 
like the Microsoft(R) linker. It can be downloaded from 
http://www.devoresoftware.com/freesource/wlsrc.htm. With this linker, 
the command line is slightly different:

warplink /as:4 forth1.obj forth2.obj,forth.exe

File defs.8 contains the definitions of two switches that can be set to 
either 0 or 1. If BLOCKS is zero, the StrongForth executable will not 
support blocks. However, this means that the kernel library and all 
other libraries won't be loaded automatically. The definitions provided 
in the corresponding blocks have to be entered manually. LOG_FILE 
controls the creation of forth.log, which is a log of all input and 
output during the execution of forth.exe. If LOG_FILE is zero, 
StrongForth does not create a log file.
