	  8xxtarg.exe   Revision 2.3  1/24/97

* This software was written by Symbios Logic Inc. to develop and test new
* products.  Symbios Logic assumes no liability for its use.  This software is
* released to the public domain to illustrate certain programming techniques
* for the 53c8xx chips in target mode.

	Please see the usage.txt file for a brief users guide to the software.

	Revision 2.3 Added support for the 53C895 chip.  I also fixed a major bug
that had to do with use of the SCRIPTS RAM after SCRIPTS had been re-aligned in
memory.  Added support for the clock doubler in newer revisions of the 875.

	Revision 2.22 I added support for use of more than 64 MBytes of system
memory.

	Revision 2.21 I fixed a problem with wide negotiation when the initiator
has previously negotiated wide and now wants to change to narrow.  I also Added
the ability to use a cache size of 512 bytes.  And I fixed a problem with
inquiry commands when the initiator does synchronous and/or wide negotiation
during the message out phase of the inquiry command.

	Revision 2.2 I changed the save and restore RAM drive options to use the
fread and fwrite commands to improve speed.  I also added code to long word
align the data transfer buffer at runtime.  I fixed a major problem in the
disconnect logic during writes.  If we disconnected multiple times during a
write command, the last buffer full of data would never be requested.  I also
changed the synchronous setup method from calculation on the fly to table
lookup.  This allows the code to select the best period match rather than the
first close match it comes to.  I fixed a menu display problem encountered when
synchronous and wide negotiation happened multiple times without a reset.  I
added user notification of each SCSI bus reset, and the ability to alter the
SCSI ID without restarting the program.  I also consolidated some redundant
code into function calls.

	Revision 2.11 added support for differential boards.

	Revision 2.1 added the capability to change the drive cache size without
having to re-start the program.  I also removed some redundant code and cleaned
up some inefficient code.

	Revision 2.0 of the code added quite a bit of functionality and flexibility
for the user.  After the initial setup, the SCRIPT starts running and requires
no user intervention.  If the user wishes, the current contents of the RAM disk
can be saved to a hard drive to be restored later.  The user can also read and
modify any logical block in memory, read any chip register, modify any
read/writable chip register, read any PCI configuration register, and modify
any read/writable PCI configuration register.

	Revision 2.0 also added the use of hardware interrupts instead of polling
ISTAT to determine when the interrupts occur.  This greatly improves DMA
transfers, and thus SCSI performance.

	This software was writen using the Borland C++ ver. 4.5 compilor and editing
environment.  The project file reflects the directory structure present on my
PC and will need to be modified to work on a new system.

	ioport32.asm was compiled with TASM, and pci.c has inline assembly that was
compiled with TASM.  Both of these modules require an assembler that will
recognize and use 32-bit registers.

	If the SCIPTS file, 8xxtarg.ss, is altered it will need to be reassembled
before recompiling the executable.  The command line I use is as follows:

	nasm 8xxtarg.ss -a 810 -l -p -u -v

This will produce both a .out file and a .lis file.  The .out file is included
in the build of the executable, and the .lis file is used by the NVPCI SCRIPTS
debugger.

	Any bugs, problems, or suggestions for improvements should be sent by e-mail
to:  scott.rawlings@symbios.com

