www.pudn.com > BPËã·¨Ô´Âë.zip > makereal


# 
# This makefile is designed to make only the bp program AND TO KEEP 
# all the .obj files, so you can apply changes to one file without 
# recompiling all the others. 
# 
# Below, where I say 32-bit floating point or 64-bit floating point, 
# note that all the programs use some floating point instructions even 
# the integer versions, bp and sbp.  In standard UNIX C all floating 
# point arithmetic is done as double so using double values actually is 
# faster than using float values (because all the conversions take 
# time).  To use float rather than double define FLOAT like so:  -DFLOAT 
# 
# To get the compiler to use 32-bit DOS settings include: -DDOS32 
# To get the compiler to use 16-bit DOS settings include: -DDOS16 
# 
# If you want bp to use the exact derivative when D != 1 when computing 
# weight changes use: -DEXACTDERIV.  There is really no reason to do 
# this unless you are a purist.  The originators of the method used a 
# value for eta that is divided by D and this cancels the D you get by 
# doing the exact derivative so you are in good company if you also skip 
# it.  Plus you also save the time required for a floating pointing 
# multiply. 
# 
# Below are the settings I've been using for Zortech C 3.1.  The -f flag 
# in the Zortech CFLAGS forces hardware floating point instructions to 
# be generated. This flag also has the compiler generate code compatible 
# with the IEEE standard 754 where checks are make that comparisons 
# involving NaNs are handled correctly.  To avoid these checks you can 
# use -ff and the code will be around 1.6% faster on a 486/33.  Zortech 
# 3.0 does not have the -ff option.  The -o is for optimize, -m is used 
# to give the memory model, -4 for a 486, -3 for a 386, -2 for a 286. 
# 
# use the following line for DOS/ZORTECH (486) 
CFLAGS= -mx -4 -f -DFLOAT -DDOS32 
# use the following line for DOS/ZORTECH (386) 
#CFLAGS= -mx -3 -f -DFLOAT -DDOS32 
# use the following line for DOS/ZORTECH (286) 
#CFLAGS= -mz -2 -f -DFLOAT -DDOS16 
# use the following line for DOS/ZORTECH (8088) large memory model 
#CFLAGS= -ml -f -DFLOAT -DDOS16 
 
bp: bp.obj io.obj misc.obj real.obj makereal rbp.h 
	ztc $(CFLAGS) bp.obj io.obj misc.obj real.obj -obp.exe 
 
bp.obj: bp.c rbp.h makereal 
	ztc $(CFLAGS) bp.c -c 
 
io.obj: io.c rbp.h makereal 
	ztc $(CFLAGS) io.c -c -o 
 
misc.obj: misc.c rbp.h makereal 
	ztc $(CFLAGS) misc.c -c -o 
 
real.obj: real.c rbp.h makereal 
	ztc $(CFLAGS) real.c -c -o 
 
dummy: forward.obj dummy.obj forward.h makereal 
	ztc $(CFLAGS) forward.obj dummy.obj -odummy.exe 
 
forward.obj: forward.c forward.h makereal 
	ztc $(CFLAGS) forward.c -c -o 
 
dummy.obj: forward.h dummy.c makereal 
	ztc $(CFLAGS) dummy.c -c -o 
 
rdummy: forward.obj rdummy.obj forward.h makereal 
	ztc $(CFLAGS) forward.obj rdummy.obj -ordummy.exe 
 
rdummy.obj: forward.h rdummy.c makereal 
	ztc $(CFLAGS) rdummy.c -c -o 
 
predict: predict.c 
	ztc $(CFLAGS) predict.c -opredict.exe 
 
scale: scale.c 
	ztc $(CFLAGS) scale.c -oscale.exe