dos_compilers/Microsoft C v5/SRC/STARTUP
2024-07-04 11:24:57 -07:00
..
DOS linux build 2024-07-04 11:24:57 -07:00
_FILE.C linux build 2024-07-04 11:24:57 -07:00
BRKCTL.INC linux build 2024-07-04 11:24:57 -07:00
CHKSTK.ASM linux build 2024-07-04 11:24:57 -07:00
CHKSUM.ASM linux build 2024-07-04 11:24:57 -07:00
CMACROS.INC linux build 2024-07-04 11:24:57 -07:00
CRT0FP.ASM linux build 2024-07-04 11:24:57 -07:00
FILE2.H linux build 2024-07-04 11:24:57 -07:00
FMSGHDR.ASM linux build 2024-07-04 11:24:57 -07:00
MAKEFILE linux build 2024-07-04 11:24:57 -07:00
MSDOS.H linux build 2024-07-04 11:24:57 -07:00
MSDOS.INC linux build 2024-07-04 11:24:57 -07:00
NULBODY.C linux build 2024-07-04 11:24:57 -07:00
README.DOC linux build 2024-07-04 11:24:57 -07:00
REGISTER.H linux build 2024-07-04 11:24:57 -07:00
SETARGV.ASM linux build 2024-07-04 11:24:57 -07:00
STARTUP.BAT linux build 2024-07-04 11:24:57 -07:00
VERSION.INC linux build 2024-07-04 11:24:57 -07:00
WILD.C linux build 2024-07-04 11:24:57 -07:00

C Runtime Library Startup Sources
---------------------------------
The directory \startup and its subdirectories contain the files
necessary for building the startup portion of the C runtime library.
The \startup directory contains the startup source files, the include
include files, the batch file and the make file used to build the startup 
object files.  The subdirectories of \startup contain OS specific sources.

The startup object files can be built by invoking startup.bat from within
the \startup directory.  This batch file assumes the following:

	(1) make.exe, link.exec, the C compiler, and the assembler must be
	in the execution path.  MASM 5.0 and C 5.0 or later are required to
	build the startup sources.
	(2) doscalls.lib must be in the directory specified by the LIB 
	environment variable.

Startup will create four memory model specific subdirectories (i.e., S, M, C,
and L) and place the appropriate object files there.  Under each memory model
subdirectory, startup creates two addition subdirectories OS2 and DOS where
OS specific objects reside.

The include files stdio.h and ctype.h are required for building the
startup source file wild.c but are not included on the \startup directory
because they exist on the directory containing the standard include files.
A make variable called CINC controls where the makefile looks for these
include files. STARTUP.BAT sets CINC to the current value of the INCLUDE
environment variable.  This variable should be set to the location of
the C include files.  CINC can also be set in the makefile if you wish
to run the makefile separately.

The message "<cEnd - nogen>" is generated when some of the assembly language 
source files are assembled.  This message is expected and is totally benign.

The startup batch file requires as arguments a list of capital letters
describing the memory models you wish to build.  For example,
"startup S L" will build the small and large model startup objects.
Startup will then link the objects with a sample C program called nulbody.c
(consisting of a null main functions) to produce nulbody.exe.
[Invoking startup.bat with no arguments will give usage information.]

Note:  startup sources written in assembly language have been edited with
tabstops set to 8.  Startup sources written in C have been edited with
tabstops set to 4.  

The following files are contained in the \startup directory:

Startup source files (OS independent):

	chkstk.asm
	chksum.asm
	crt0fp.asm
	setargv.asm
	wild.c

Startup source files (OS specific):
	crt0.asm
	crt0dat.asm
	crt0msg.asm
	execmsg.asm
	nmsghdr.asm
	stdalloc.asm
	stdenvp.asm
	stdargv.asm

Startup include files:
	brkctl.inc
	cmacros.inc
	msdos.inc
	register.h
	msdos.h
	version.inc

File count files:
	_file.c
	file2.h
	
Make and batch files:
	startup.bat:	invokes make file to build objs and link to null program
	makefile:	contains rules for building startup sources
	nulbody.c:	null c program
	nulbody.lnk:	link script for linking null program

Documentation:
	readme.doc:	information about \startup directory structure
			and contents

				--- End ---