DATADIR=data$(DIRSEP)
SPRI=$(DATADIR)/spri
SRC=src
-SRCLIB=src/lib
-JSMNLIB=src/lib/jsmn
-NYANLIB=src/lib/nyan
-EXMMLIB=src/lib/exmm
-MODEXLIB16=src/lib/16_vl
-MODEXLIB=src/lib/modex
-VGMSNDLIB=src/lib/vgmsnd
-DOSLIB=src/lib/doslib
-WCPULIB=src/lib/wcpu
-
-DOSLIB_CPU=src/lib/doslib/hw/cpu
-DOSLIB_DOS=src/lib/doslib/hw/dos
-DOSLIB_VGA=src/lib/doslib/hw/vga
-DOSLIB_8250=src/lib/doslib/hw/8250
-DOSLIB_JOYSTICK=src/lib/doslib/hw/joystick
+UTIL=$(SRC)/util
+SRCLIB=$(SRC)/lib
+JSMNLIB=$(SRCLIB)/jsmn
+NYANLIB=$(SRCLIB)/nyan
+EXMMLIB=$(SRCLIB)/exmm
+MODEXLIB16=$(SRCLIB)/16_vl
+MODEXLIB=$(SRCLIB)/modex
+VGMSNDLIB=$(SRCLIB)/vgmsnd
+DOSLIB=$(SRCLIB)/doslib
+WCPULIB=$(SRCLIB)/wcpu
+
+DOSLIB_CPU=$(DOSLIB)/hw/cpu
+DOSLIB_DOS=$(DOSLIB)/hw/dos
+DOSLIB_VGA=$(DOSLIB)/hw/vga
+DOSLIB_8250=$(DOSLIB)/hw/8250
+DOSLIB_JOYSTICK=$(DOSLIB)/hw/joystick
DOSLIB_MEMMODE=dos86$(MEMORYMODE)
#
VGMSNDOBJ = vgmSnd.$(OBJ) 16_snd.$(OBJ)
OLDLIBOBJS=bitmap.$(OBJ) 16render.$(OBJ)
GFXLIBOBJS = 16_vl.$(OBJ) 16text.$(OBJ) bakapee.$(OBJ) scroll16.$(OBJ) 16_vrs.$(OBJ) 16_sprit.$(OBJ) $(OLDLIBOBJS)
-16LIBOBJS = 16_mm.$(OBJ) 16_pm.$(OBJ) 16_ca.$(OBJ) 16_tail.$(OBJ) 16_in.$(OBJ) 16_head.$(OBJ) 16_dbg.$(OBJ) kitten.$(OBJ) 16_hc.$(OBJ) wcpu.$(OBJ) 16_timer.$(OBJ) jsmn.$(OBJ) 16_map.$(OBJ) 16text.$(OBJ)
+16LIBOBJS = 16_mm.$(OBJ) 16_pm.$(OBJ) 16_ca.$(OBJ) 16_tail.$(OBJ) 16_in.$(OBJ) 16_head.$(OBJ) 16_dbg.$(OBJ) kitten.$(OBJ) 16_hc.$(OBJ) 16_wcpu.$(OBJ) 16_timer.$(OBJ) jsmn.$(OBJ) 16_map.$(OBJ) 16text.$(OBJ)
#16planar.$(OBJ) planar.$(OBJ) mapread.$(OBJ)
DOSLIBOBJ = adlib.$(OBJ) 8254.$(OBJ) 8259.$(OBJ) dos.$(OBJ) cpu.$(OBJ)
!ifeq DEBUGSERIAL 1
#
# Files locations
#
-.c : $(SRC);$(SRCLIB);$(MODEXLIB16);$(JSMNLIB);$(NYANLIB);$(VGMSNDLIB);$(WCPULIB)
+.c : $(SRC);$(SRCLIB);$(MODEXLIB16);$(JSMNLIB);$(NYANLIB);$(VGMSNDLIB);$(WCPULIB);$(UTIL)
-.asm : $(MODEXLIB)
+.asm : $(MODEXLIB);$(UTIL)
.lib : .;$(DOSLIB_CPU)/$(DOSLIB_MEMMODE);$(DOSLIB_DOS)/$(DOSLIB_MEMMODE);$(DOSLIB_VGA)/$(DOSLIB_MEMMODE);$(DOSLIB_8250)/$(DOSLIB_MEMMODE)
#
# List of executables to build
#
+EXTERNTESTEXEC = &
+ joytest.exe &
+ wcpu.exe &
+ db.exe
TESTEXEC = &
tesuto.exe &
0.exe &
test.exe &
test0.exe &
pcxtest.exe &
- pcxtest2.exe
+ pcxtest2.exe &
+ $(EXTERNTESTEXEC)
UTILEXEC = &
palettel.exe &
- palettec.exe &
- db.exe
+ palettec.exe
EXEC = &
16.exe &
bakapi.exe &
$(UTILEXEC) &
$(TESTEXEC)
-all: $(EXEC) joytest.exe
-testexec: $(EXEC) joytest.exe $(TESTEXEC2)
+all: $(EXEC) $(EXTERNTESTEXEC)
+testexec: $(EXEC) $(TESTEXEC2)
#
# game and bakapi executables
fontgfx.exe: fontgfx.$(OBJ) gfx.lib $(DOSLIBLIBS)
inputest.exe: inputest.$(OBJ) $(16LIB) $(DOSLIBLIBS)
#sountest.exe: sountest.$(OBJ) $(16LIB)
-pcxtest.exe: pcxtest.$(OBJ) gfx.lib $(DOSLIBLIBS)
+pcxtest.exe: pcxtest.$(OBJ) gfx.lib $(DOSLIBLIBS) $(16LIB)##++++
vrstest.exe: vrstest.$(OBJ) $(16LIB) gfx.lib $(DOSLIBLIBS)
#vgacamm.exe: vgacamm.$(OBJ) $(16LIB) gfx.lib $(DOSLIBLIBS)
palettec.exe: palettec.$(OBJ) gfx.lib $(DOSLIBLIBS)
exmmtest.exe: exmmtest.$(OBJ) $(16LIB) $(DOSLIBLIBS)
vgmtest.exe: vgmtest.$(OBJ) vgmsnd.lib $(16LIB) $(DOSLIBLIBS)
db.exe: db.$(OBJ)
+wcpu.exe: wcpu.$(OBJ) $(16LIB) $(DOSLIBLIBS)
#
# executable's objects
#tsthimem.$(OBJ): $(SRC)/tsthimem.c
exmmtest.$(OBJ):$(SRC)/exmmtest.c
vgmtest.$(OBJ):$(SRC)/vgmtest.c
-db.$(OBJ):$(SRC)/db.c
+db.$(OBJ): $(UTIL)/db.c
#
# non executable objects libraries
jsmn.$(OBJ): $(JSMNLIB)/jsmn.c $(JSMNLIB)/jsmn.h
kitten.$(OBJ): $(NYANLIB)/kitten.c $(NYANLIB)/kitten.h
vgmSnd.$(OBJ): $(VGMSNDLIB)/vgmSnd.c $(VGMSNDLIB)/vgmSnd.h
-wcpu.$(OBJ): $(WCPULIB)/wcpu.c $(WCPULIB)/wcpu.h
+16_wcpu.$(OBJ): $(WCPULIB)/16_wcpu.c $(WCPULIB)/16_wcpu.h
#memory.$(OBJ):$(EXMMLIB)/memory.c $(EXMMLIB)/memory.h
c_utils.$(OBJ):$(MODEXLIB)/c_utils.asm
modex.$(OBJ): $(MODEXLIB)/modex.asm
@*upx -9 $(UPXQ) $(EXEC)
www: .symbolic
- @ssh -p 26 sparky4@4ch.mooo.com 'rm -f /var/www/16/*exe*'
- #@$(REMOVECOMMAND) -f /var/www/$(EXEC)*
- @$(REMOVECOMMAND) -f /var/www/*.exe.zip*
- #@$(COPYCOMMAND) ./$(EXEC) $(DIRSEP)var$(DIRSEP)www$(DIRSEP)
+ @for %f in (/var/www/$(EXEC)) do @if exist /var/www/%f $(REMOVECOMMAND) /var/www/%f
+ @$(REMOVECOMMAND) /var/www/*.exe.zip*
+ @for %f in ($(EXEC)) do @if exist %f @$(COPYCOMMAND) %f /var/www/
@./src/util/z.sh $(EXEC) $(EXEC)
+ ####@wmake -h wwwext
+
+wwwext: .symbolic
+ @ssh -p 26 sparky4@4ch.mooo.com 'rm -f /var/www/16/*exe*'
@scp -r -P 26 *.exe 4ch.mooo.com:/var/www/16/
@scp -r -P 26 x4get.bat 4ch.mooo.com:/var/www/16/
@scp -r -P 26 /var/www/*.exe.zip.* 4ch.mooo.com:/var/www/16/
@$(COPYCOMMAND) git_con.fig .git/config
@$(COPYCOMMAND) git_modu.les .gitmodules
@$(COPYCOMMAND) git_igno.re .gitignore
- @cd $(SRCLIB:$(to_os_path))
- @git clone https://github.com/joncampbell123/doslib.git
- @git clone https://github.com/zserge/jsmn.git
- @cd $(BUILD_ROOT)
+ @wmake -h getlib
@cd 16
@git clone https://github.com/FlatRockSoft/CatacombApocalypse.git
@git clone https://github.com/id-Software/wolf3d.git
@cd $(BUILD_ROOT)
@$(COPYCOMMAND) $(DOSLIB)/make-lowercase .
+getlib: .symbolic
+ @cd $(SRCLIB:$(to_os_path))
+ @git clone https://github.com/joncampbell123/doslib.git
+ @git clone https://github.com/zserge/jsmn.git
+ @cd $(BUILD_ROOT)
+
##
## experimental libs
##