📄 makefile
字号:
#
# This makefile can be used to make all 4 programs but note that
# it is designed to make changing the integer version bp fast
# by keeping its object files around. The other 3 programs erase
# their object files.
#
# 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 covnersions 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 or sbp to produce code that uses the exact derivative
# when computing weight changes use: -DEXACTDERIV. There is really no
# reason to do this unless you some kind of purist.
#
# Below are the settings I've been using for Zortech 3.1. The -f flag
# in the ZORTECH CFLAGS forces hardware floating point instructions to
# be generated. In Zortech 3.1 this also generates checks on
# comparisons involving NaNs. To skip these checks you an use -ff with
# version 3.1. The -o is for optimize, -m is used to give the memory
# model. Note that in the following makefile I don't use the Zortech
# optimization flag -o in the CFLAGS, instead it is used in the
# definitions for the creation of io.obj, misc.obj and int.obj because
# only these routines are worth optimizing and optimizing bp.c takes a
# minute or two on a 486/33. In Zortech 3.0 the optimizer bombs when it
# optimizes io.obj, so if you have that version, remove the -o. As its
# set up in this makefile, sbp, srbp and bp will not be optimized. Of
# course, optimizing bp is worthwhile but for that use the makereal
# makefile.
#
# 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
ibp: bp.obj io.obj misc.obj int.obj makefile ibp.h
ztc $(CFLAGS) bp.obj io.obj misc.obj int.obj -oibp.exe
sibp:
ztc -DINTEGER -DSYMMETRIC int.c bp.c io.c misc.c $(CFLAGS) -osibp.exe
erase *.obj
bp:
ztc real.c bp.c io.c misc.c $(CFLAGS) -obp.exe
erase *.obj
sbp:
ztc -DSYMMETRIC real.c bp.c io.c misc.c $(CFLAGS) -osbp.exe
erase *.obj
bp.obj: bp.c ibp.h makefile
ztc -DINTEGER $(CFLAGS) bp.c -c
io.obj: io.c ibp.h makefile
ztc -DINTEGER $(CFLAGS) io.c -c
misc.obj: misc.c ibp.h makefile
ztc -DINTEGER $(CFLAGS) misc.c -c -o
int.obj: int.c ibp.h makefile
ztc -DINTEGER $(CFLAGS) int.c -c -o
predict: predict.c
ztc $(CFLAGS) predict.c -opredict.exe
scale: scale.c
ztc $(CFLAGS) scale.c -oscale.exe
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -