
#   ************************************************************************
#   *			    makefile for wdeb386.com			   *
#   ************************************************************************

#   (C) Geoff Chappell.  1995.	All rights reserved.

!INCLUDE	<standard.mak>

TARGETS : wdeb386.com

#   ************************************************************************

#   General arrangement of executeable in .COM format

comstub.obj : comstub.asm segmodel.inc

#   ------------------------------------------------------------------------

#   Loading the WDEB386.EXE debugger

main.obj : main.asm segmodel.inc

#   Detecting when Windows enhanced mode runs

win.obj : win.asm segmodel.inc

#   Observing when WIN386.EXE loads the DEBUG VxD from the WDEB386.EXE file

exeload.obj : exeload.asm segmodel.inc

#   Exmaining and modifying material in DEBUG VxD

vxddata.obj : vxddata.asm debobjs.inc le.inc mz.inc segmodel.inc

#   ------------------------------------------------------------------------

#   Detection and correction of bugs

#	DCODE and DDATA objects in DEBUG VxD redundant (but loaded anyway,
#	to waste approximately 90KB of VxD memory) if debugger facility
#	already activated from WDEB386.EXE run as DOS program or loaded as
#	DOS device driver
#	(applies even to Windows 95)

debobjs.obj : debobjs.asm debobjs.inc le.inc

#	Jump table for int 22h has entries for functions <= 0006h but code
#	allows jump for functions <= 000Dh.
#	(does not result in observable bug, since the functions the DEBUG
#	VxD does not expect will never be called by the debugger unless the
#	VMM has its debug-only objects - in which case, the DEBUG VxD will
#	not install its int 22h handler)

int22h.obj : int22h.asm match32.inc segmodel.inc

#	PageAllocate assumed to return address in eax
#	(affects Windows 3.xx only - and only for DebugVGA=on)

pgalloc.obj : pgalloc.asm match32.inc segmodel.inc

#	Profile services used too early during DEBUG VxD's initialisation
#	(affects Windows 3.xx only)

refdata.obj : refdata.asm match32.inc segmodel.inc

#	WDEB386 as DOS program with /H switch hangs on exit from Windows
#	(applies even to Windows 95)

switch-h.obj : switch-h.asm  match16.inc segmodel.inc

#   ------------------------------------------------------------------------

#   General services

is80386.obj : is80386.asm segmodel.inc

match16.obj : match16.asm match16.inc segmodel.inc

match32.obj : match32.asm match32.inc segmodel.inc

#   ========================================================================

wdeb386.com : comstub.obj \
	      exeload.obj main.obj vxddata.obj win.obj \
	      debobjs.obj int22h.obj pgalloc.obj refdata.obj switch-h.obj \
	      is80386.obj match16.obj match32.obj
  $(LINK) @<<wdeb386.lnk
comstub+
exeload+main+vxddata+win+
debobjs+int22h+pgalloc+refdata+switch-h+
is80386+match16+match32,
wdeb386.exe;
<<KEEP
  $(EXE2BIN) wdeb386.exe wdeb386.com
  del wdeb386.exe

#   ************************************************************************

