home *** CD-ROM | disk | FTP | other *** search
- MS-DOS Source Support Package for Zoo 2.01
-
- This support package, in conjunction with the portable UNIX/VMS source for
- zoo 2.01, will allow you to recompile zoo 2.01 on your MS-DOS system,
- provided you have the necessary C compiler and assembler as described
- below. To use this package, combine all files in this package with all
- files in the UNIX/VMS source package. There should be no files with
- duplicate names in the two packages. (You may wish to do newline
- conversions at this point, since the UNIX/VMS source package contains text
- files with lines terminated with the linefeed character, while many MS-DOS
- programs require lines terminated by carriage return and linefeed.)
-
- This package contains the following files:
-
- addbfcrc.asm 1,066 8-25-88 10:31a makefile.msc 1,143 8-24-88 3:31p
- asmconst.ai 423 8-25-88 10:32a msc.c 1,528 8-24-88 3:31p
- dta.h 404 6-21-87 11:49a msdos.c 2,205 12-27-87 6:09p
- fiz.prj 44 8-24-88 12:53p readme.1st 7,048 8-26-88 12:08a
- fiz.tc 1,380 8-24-88 12:51p signal.c 2,455 8-09-87 1:24p
- intdos.h 495 6-21-87 9:09p signal.man 3,054 8-09-87 1:38p
- lzc.asm 12,849 8-24-88 11:23p tcconfig.tc 1,380 8-24-88 12:14p
- lzd.asm 9,496 8-24-88 11:23p turboc.c 1,627 8-25-88 12:04a
- macros.ai 284 8-27-86 12:40p zoo.prj 433 8-24-88 12:15p
-
- With the availability of the C and assembly source, there now exists the
- possibility of modified copies of zoo becoming available for MS-DOS
- systems. To help users distinguish independently-compiled copies and the
- one that I distribute, I distribute a compiled version of zoo for MS-DOS
- that is slightly smaller in size than the executable program that you will
- get from this source code. It will also have a different CRC value. The
- executable version of zoo 2.01 for MS-DOS that I distribute, when stored
- compressed in a zoo archive whose contents are listed with the "lC" command,
- has the following attributes:
-
- original size = 40078 bytes (will be same in an ARC archive)
- CRC value = 27db (will be same in an ARC archive)
- compressed size = 31814 (may be different in an ARC archive)
-
- To recompile the provided source code for MS-DOS you will need a C compiler
- and the Microsoft Macro Assembler (I use version 4.0). To use any C
- compiler other than Turbo C 1.0 or Microsoft C 3.0 you may need to modify
- the code, as some compiler-specific features crop up here and there. In
- particular the C-assembly linkage (how the stack is manipulated and how the
- 8086 registers are used etc.) is designed for Turbo C or Microsoft C.
-
- Please note that there are certain copyright requirements. The following is
- an explanation of some highlights; consult the actual copyright policy
- supplied elsewhere for precise details. In particular note that if you
- distribute an executable program that you create from the zoo source code,
- you must also distribute the source code from which you created the
- executable program. Exceptions to this policy are permissible only if you
- have negotiated them with me privately. Also note that you are forbidden
- from creating, either deliberately or through negligence, any derivative
- work that creates archives that are incompatible with those created by the
- authorized versions of zoo that I distribute in source and binary form.
-
- Notes for Turbo C 1.0
-
- Project files "zoo.prj" and "fiz.prj" are supplied for use with the
- integrated environment of Turbo C 1.0. Also provided are configuration
- files "tcconfig.tc" and "fiz.tc". The supplied configuration files assume
- that all sources are in the current directory which is C:/ZOO and that the
- Turbo C include files are in C:/TURBOC/INCLUDE.
-
- For best results you should edit the include file signal.h that came with
- Turbo C 1.0 to contain the following function prototype for the signal()
- function at the end:
-
- int (*_Cdecl signal (int sig, int (*action)())) (); /* R.D */
-
- This is not strictly necessary, but not doing so may cause Turbo C to give
- you a warning message when zoo is compiled.
-
- The Microsoft Macro Assembler 4.0 is referred to as "masm" in the following
- instructions.
-
- To compile zoo:
-
- (a) If you have compiled fiz previously, delete any copy of "portable.obj"
- that still exists from that compilation.
- (b) Use the command line "tcc -c *.asm" to assemble all the assembly
- source files. If you don't have "tcc" (the command line version of
- Turbo C) available, assemble each assembly language file separately,
- supplying the "/mx" switch to masm to make it preserve case. For
- example, to assemble the file "addbfcrc.asm", the command is
- "masm /mx addbfcrc;". The trailing semicolon in the command line
- suppresses superfluous prompts from masm.
- (c) Invoke the integrated environment version of Turbo C 1.0. Load
- the configuration file "tcconfig.tc" and begin compiling. There
- should be no warnings and no errors reported by Turbo C.
-
- To compile fiz:
-
- (a) If you have compiled zoo previously, delete any copy of "portable.obj"
- that still exists from that compilation.
- (b) If addbfcrc.obj does not already exist from compiling zoo, create it by
- assembling "addbfcrc.asm" with the command line "tcc -c addbfcrc.asm"
- or with the command line "masm /mx addbfcrc;". The "/mx" switch is
- used to make masm preserve case in symbols.
- (c) Invoke the integrated environment version of Turbo C 1.0. Load the
- configuration file "fiz.tc". Begin compiling. There should be no
- warnings and no errors reported by Turbo C.
-
- I have not tried using any other versions of Turbo C.
-
- This source will produce an executable program that will be slightly larger
- in size than the executable version of zoo that I compile and distribute.
- This difference in size does not affect performance in any way; your
- compiled copy of zoo 2.01 should behave identically to the authorized
- executable, except that it may need slightly more memory.
-
- Notes for Microsoft C 3.0
-
- Zoo 2.01 can be compiled with Microsoft C 3.0. There will be an increase in
- size.
-
- The environment variables INCLUDE, LIB, and TMP should be set as needed by
- Microsoft C 3.0 (consult your compiler's documentation). Rename the file
- "makefile.msc" to "makefile" and use the shareware make utility called
- "ndmake" written by D G. Kneller. Version 4.31 of this make utility is
- known to work correctly with this makefile.
-
- The supplied source code uses unbuffered I/O is used when compiling with
- Microsoft C 3.0. Casual testing of the executable program shows that this
- works. I have not exhaustively tested the executable program obtained with
- Microsoft C 3.0.
-
- I have not tried using any other versions of Microsoft C.
-
- -- Rahul Dhesi 1988/08/25
-