#
# Makefile for diskcopy (works for borland make, not for GNU make). 
#

## change to reflect the real path where you installed tcc.
includepath  = c:\tc201\include
libdir       = c:\tc201\lib

compiler = tcc -c -I$(includepath)
options  = -w -O -d -Z 

sources = diskcopy.c drive.c ems.asm memtypes.c misc.c xms.asm waitfinp.c tdrvcpy.c\
	  diskcopy.h drive.h ems.h memtypes.h misc.h xms.h waitfinp.h tdrvcpy.h \
	  mouse.asm mouse.h switchch.asm critical.asm hicritcl.asm drvtypes.asm

objects = diskcopy.obj drive.obj ems.obj memtypes.obj misc.obj xms.obj \
	  waitfinp.obj tdrvcpy.obj mouse.obj switchch.obj critical.obj \
	  hicritcl.obj drvtypes.obj

diskcopy.exe:  $(objects)
	@delete diskcopy.lib
	@tlib diskcopy + diskcopy.obj
	@tlib diskcopy + drive.obj
	@tlib diskcopy + ems.obj
	@tlib diskcopy + memtypes.obj
	@tlib diskcopy + misc.obj
	@tlib diskcopy + xms.obj
	@tlib diskcopy + waitfinp.obj
	@tlib diskcopy + tdrvcpy.obj
	@tlib diskcopy + mouse.obj
	@tlib diskcopy + switchch.obj
	@tlib diskcopy + critical.obj
	@tlib diskcopy + hicritcl.obj
	@tlib diskcopy + drvtypes.obj
	@tlink $(libdir)\c0s, diskcopy, nul, $(libdir)\cs diskcopy.lib
	@copy diskcopy.exe \diskcopy\bin
	@del  diskcopy.lib
	@del  diskcopy.bak

diskcopy.obj: diskcopy.c drive.h diskcopy.h memtypes.h misc.h waitfinp.h\
	      tdrvcpy.h critical.h
	@$(compiler) $(options) diskcopy.c

drive.obj: drive.c drive.h misc.h drvtypes.h
	@$(compiler) $(options) drive.c

ems.obj: ems.asm
	@nasm ems.asm -f obj -o ems.obj

memtypes.obj: memtypes.c memtypes.h xms.h ems.h
	@$(compiler) $(options) memtypes.c

misc.obj: misc.c
	@$(compiler) $(options) misc.c

xms.obj: xms.asm
	@nasm xms.asm -f obj -o xms.obj

waitfinp.obj: waitfinp.c waitfinp.h mouse.h
	@$(compiler) $(options) waitfinp.c

tdrvcpy.obj: tdrvcpy.c diskcopy.h tdrvcpy.h memtypes.h waitfinp.h drive.h
	@$(compiler) $(options) tdrvcpy.c

mouse.obj: mouse.asm
	@nasm mouse.asm -f obj -o mouse.obj

switchch.obj: switchch.asm
	@nasm switchch.asm -f obj -o switchch.obj

critical.obj: critical.asm
	@nasm critical.asm -f obj -o critical.obj

hicritcl.obj: hicritcl.asm
	@nasm hicritcl.asm -f obj -o hicritcl.obj

drvtypes.obj: drvtypes.asm
	@nasm drvtypes.asm -f obj -o drvtypes.obj        

clean:
	@delete diskcopy.exe
	@delete diskcopy.obj
	@delete drive.obj
	@delete ems.obj
	@delete memtypes.obj
	@delete misc.obj
	@delete xms.obj
	@delete *.bak
	@delete waitfinp.obj
	@delete tdrvcpy.obj
	@delete mouse.obj
	@delete switchch.obj
	@delete critical.obj
	@delete hicritcl.obj
	@delete drvtypes.obj

