.AUTODEPEND
#               *Local definitions
MONITOR = /DMONITOR

#		*Translator Definitions*
CC = bcc +midis.cfg
TASM = TASM /zi /i$(INCLUDEPATH)
TLIB = tlib
TLINK = tlink
LIBPATH = C:\BC45\LIB;..\monitor
INCLUDEPATH = ..\include


#		*Implicit Rules*
.asm.obj:
  $(TASM) {$< }

.c.obj:
  $(CC) -c {$< }

.cpp.obj:
  $(CC) -c {$< }

#		*List Macros*
!if $d(MONITOR)
DEBUG = dis.obj opcodes.obj operands.obj ddisk.obj breaks.obj exec.obj entry.obj dump.obj input.obj mtrap.obj regs.obj
!endif
    
EXE_dependencies =  \
a20.obj \
mouse.obj \
vga.obj \
nf.obj \
vgaini.obj \
xstack.obj \
files.obj \
dirs.obj \
fs.obj \
buffers.obj \
cmos.obj \
traps.obj \
sems.obj  \
floppy.obj \
serial.obj \
memory.obj  \
remaps.obj   \
beep.obj   \
loader.obj  \
prints.obj   \
descript.obj  \
tss.obj   \
pageall.obj \
misc.obj    \
kb.obj \
dispatch.obj \
dosfiles.obj \
video.obj     \
timer.obj      \
boot.obj \
pic.obj   \
ints.obj   \
glbltss.obj \
page.obj $(DEBUG)
#		*Explicit Rules*
os.exe: $(EXE_dependencies)
  $(TLINK) /3/s/L$(LIBPATH) @&&|
a20.obj+
mouse.obj+
vga.obj+
nf.obj+
vgaini.obj+
xstack.obj+
files.obj+
dirs.obj+
fs.obj+
buffers.obj+
cmos.obj+
traps.obj+
sems.obj+
floppy.obj+
serial.obj+
memory.obj+
remaps.obj+
beep.obj+
loader.obj+
prints.obj+
descript.obj+
tss.obj+
pageall.obj+
misc.obj+
kb.obj+
dispatch.obj+
dosfiles.obj+
video.obj+
timer.obj+
boot.obj+
pic.obj+
ints.obj+
glbltss.obj+
!if $d(MONITOR)
page.obj+ 
!else
page.obj
!endif
$(DEBUG)
os.exe
os.map
	# NO Lib file
|
test.exe: test.obj
	link test


#		*Individual File Dependencies*
a20.obj: ..\core\a20.asm
	$(TASM) ..\core\a20.asm

mouse.obj: ..\core\mouse.asm
	$(TASM) ..\core\mouse.asm

vga.obj: ..\core\vga.asm
	$(TASM) ..\core\vga.asm

nf.obj: ..\core\nf.asm
	$(TASM) ..\core\nf.asm
vgaini.obj: ..\core\vgaini.asm
	$(TASM) /DNOTEBOOK ..\core\vgaini.asm
xstack.obj: ..\core\xstack.asm
	$(TASM) $(MONITOR) ..\core\xstack.asm
files.obj: ..\core\files.asm
	$(TASM) ..\core\files.asm
dirs.obj: ..\core\dirs.asm
	$(TASM) ..\core\dirs.asm
fs.obj: ..\core\fs.asm
	$(TASM) ..\core\fs.asm
buffers.obj: ..\core\buffers.asm
	$(TASM) ..\core\buffers.asm
cmos.obj: ..\core\cmos.asm
	$(TASM) ..\core\cmos.asm
traps.obj: ..\core\traps.asm
	$(TASM) ..\core\traps.asm
sems.obj: ..\core\sems.asm
	$(TASM) ..\core\sems.asm
floppy.obj: ..\core\floppy.asm
	$(TASM) ..\core\floppy.asm
serial.obj: ..\core\serial.asm
	$(TASM) ..\core\serial.asm
memory.obj: ..\core\memory.asm
	$(TASM) ..\core\memory.asm
remaps.obj: ..\core\remaps.asm
	$(TASM) ..\core\remaps.asm
beep.obj: ..\core\beep.asm
	$(TASM) ..\core\beep.asm
loader.obj: ..\core\loader.asm
	$(TASM) ..\core\loader.asm
prints.obj: ..\core\prints.asm
	$(TASM) ..\core\prints.asm
descript.obj: ..\core\descript.asm
	$(TASM) ..\core\descript.asm
tss.obj: ..\core\tss.asm
	$(TASM) ..\core\tss.asm
glbltss.obj: ..\core\glbltss.asm
	$(TASM) ..\core\glbltss.asm
pageall.obj: ..\core\pageall.asm
	$(TASM) ..\core\pageall.asm
misc.obj: ..\core\misc.asm
	$(TASM) ..\core\misc.asm
kb.obj: ..\core\kb.asm
	$(TASM) ..\core\kb.asm /DCTRLALTDEL
dispatch.obj: ..\core\dispatch.asm
	$(TASM) ..\core\dispatch.asm
dosfiles.obj: ..\core\dosfiles.asm
	$(TASM) ..\core\dosfiles.asm
video.obj: ..\core\video.asm
	$(TASM) ..\core\video.asm
timer.obj: ..\core\timer.asm
	$(TASM) ..\core\timer.asm
boot.obj: ..\core\boot.asm
	$(TASM) $(MONITOR) ..\core\boot.asm
pic.obj: ..\core\pic.asm
	$(TASM) ..\core\pic.asm
ints.obj: ..\core\ints.asm
	$(TASM) ..\core\ints.asm
page.obj: ..\core\page.asm
	$(TASM) ..\core\page.asm
dis.obj: ..\monitor\dis.asm
	$(TASM) ..\monitor\dis.asm
opcodes.obj: ..\monitor\opcodes.asm
	$(TASM) ..\monitor\opcodes.asm
operands.obj: ..\monitor\operands.asm
	$(TASM) ..\monitor\operands.asm
ddisk.obj: ..\monitor\ddisk.asm
	$(TASM) ..\monitor\ddisk.asm
breaks.obj: ..\monitor\breaks.asm
	$(TASM)  ..\monitor\breaks.asm
exec.obj: ..\monitor\exec.asm
	$(TASM) ..\monitor\exec.asm
entry.obj: ..\monitor\entry.asm
	$(TASM) ..\monitor\entry.asm
dump.obj: ..\monitor\dump.asm
	$(TASM) ..\monitor\dump.asm
input.obj: ..\monitor\input.asm
	$(TASM) ..\monitor\input.asm
mtrap.obj: ..\monitor\mtrap.asm
	$(TASM) ..\monitor\mtrap.asm
regs.obj: ..\monitor\regs.asm
	$(TASM) ..\monitor\regs.asm
test.obj: test.asm
	$(TASM) test.asm