# Cross-compilation in vDOS.
# vDOS setting:
#   XMEM=+8 EMS
# in config.txt
#   USE D: D:\vDOS_DDrive
#   USE E: D:\Development\trunk\FMTOWNS\Development

TARGET=DEMO-YS.EXP

OBJDIR=obj

CC=HCD386.EXE
LD=TLINK.EXE

#OBJ files are case sensitive (for gmake)
OBJ1=$(OBJDIR)\DEMO-YS.obj $(OBJDIR)\PAGECTRL.obj $(OBJDIR)\FASTMODE.obj
OBJ2=$(OBJDIR)\EGBCTRL.obj $(OBJDIR)\UTIL.obj $(OBJDIR)\MAIN.obj
OBJ3=$(OBJDIR)\ACRODEMO.obj $(OBJDIR)\BALLDEMO.obj $(OBJDIR)\SPRGDEMO.obj
OBJ4=$(OBJDIR)\MAZEDEMO.obj $(OBJDIR)\BGM.obj
OBJ5=$(OBJDIR)\ROT2BRDG.obj $(OBJDIR)\YS11MARK.obj

OBJS=$(OBJ1) $(OBJ2) $(OBJ3) $(OBJ4) $(OBJ5)

HEADERS=DEF.h ACRODEMO.h BALLDEMO.h BGM.h EGBCTRL.h FASTMODE.h MAIN.h MAZEDEMO.h PAGECTRL.h ROT2BRDG.h SPRGDEMO.h UTIL.h

$(TARGET) : $(OBJS)
	ECHO $(OBJ1) > $(OBJDIR)\OBJ.LN
	ECHO $(OBJ2) >> $(OBJDIR)\OBJ.LN
	ECHO $(OBJ3) >> $(OBJDIR)\OBJ.LN
	ECHO $(OBJ4) >> $(OBJDIR)\OBJ.LN
	ECHO $(OBJ5) >> $(OBJDIR)\OBJ.LN
	$(LD) @$(OBJDIR)\OBJ.LN @LIBS.LN -EXE $(TARGET)

# vDOS default command interpreter doesn't do mkdir.
# I cannot find a way to mkdir from gmake in vDOS.
# Just make sure to create a sub-directory OBJ in the host os.
# Solution: Use 4DOS

$(OBJDIR) : $(OBJBASEDIR)
	mkdir $(OBJDIR)



$(OBJDIR)\DEMO-YS.obj : DEMO-YS.c $(OBJDIR) $(HEADERS)
	$(CC) DEMO-YS.c -obj $(OBJDIR)\DEMO-YS.obj

$(OBJDIR)\EGBCTRL.obj : EGBCTRL.c $(OBJDIR) $(HEADERS)
	$(CC) EGBCTRL.c -obj $(OBJDIR)\EGBCTRL.obj

$(OBJDIR)\BGM.obj : BGM.c $(OBJDIR) $(HEADERS)
	$(CC) BGM.c -obj $(OBJDIR)\BGM.obj

$(OBJDIR)\PAGECTRL.obj : PAGECTRL.c $(OBJDIR) $(HEADERS)
	$(CC) PAGECTRL.c -obj $(OBJDIR)\PAGECTRL.obj

$(OBJDIR)\FASTMODE.obj : FASTMODE.c $(OBJDIR) $(HEADERS)
	$(CC) FASTMODE.c -obj $(OBJDIR)\FASTMODE.obj

$(OBJDIR)\UTIL.obj : UTIL.c $(OBJDIR) $(HEADERS)
	$(CC) UTIL.c -obj $(OBJDIR)\UTIL.obj

$(OBJDIR)\ROT2BRDG.obj : ROT2BRDG.c $(OBJDIR) $(HEADERS)
	$(CC) ROT2BRDG.c -obj $(OBJDIR)\ROT2BRDG.obj

$(OBJDIR)\MAIN.obj : MAIN.c $(OBJDIR) $(HEADERS)
	$(CC) MAIN.c -obj $(OBJDIR)\MAIN.obj

$(OBJDIR)\ACRODEMO.obj : ACRODEMO.c $(OBJDIR) $(HEADERS)
	$(CC) ACRODEMO.c -obj $(OBJDIR)\ACRODEMO.obj

$(OBJDIR)\BALLDEMO.obj : BALLDEMO.c $(OBJDIR) $(HEADERS)
	$(CC) BALLDEMO.c -obj $(OBJDIR)\BALLDEMO.obj

$(OBJDIR)\MAZEDEMO.obj : MAZEDEMO.c $(OBJDIR) $(HEADERS)
	$(CC) MAZEDEMO.c -obj $(OBJDIR)\MAZEDEMO.obj

$(OBJDIR)\SPRGDEMO.obj : SPRGDEMO.c $(OBJDIR) $(HEADERS)
	$(CC) SPRGDEMO.c -obj $(OBJDIR)\SPRGDEMO.obj

$(OBJDIR)\YS11MARK.obj : YS11MARK.c $(OBJDIR) $(HEADERS)
	$(CC) YS11MARK.c -obj $(OBJDIR)\YS11MARK.obj
