X-Git-Url: http://4ch.mooo.com/gitweb/?p=16.git;a=blobdiff_plain;f=makefile;h=defcd3fddbab487a593c3b91f6ce4b59d8eaf4ca;hp=cc491802f4666d34729be447ec9b8114345db4e7;hb=af2715fef8681d909afe82f7baaf5e13baabb76f;hpb=949d58933ba3959e564d3a3920b10a97204ac76c diff --git a/makefile b/makefile index cc491802..defcd3fd 100755 --- a/makefile +++ b/makefile @@ -9,7 +9,6 @@ # -oe - expand user functions inline (-oe=20 is default, adds lots of code) # -oh Enable repeated optimizations # -oi generate certain lib funcs inline -# -oi +Set max inline depth (C++ only, use -oi for C) # -ok Flowing of register save into function flow graph # -ol loop optimizations # -ol+ loop optimizations plus unrolling @@ -25,12 +24,19 @@ # -zk0u translate kanji to unicode... wwww # -zk0 kanji support~ # -zkl current codepage +# -zd{f,p} DS floats vs DS pegged to DGROUP +# -zu SS != DGROUP +# -zp{1,2,4,8,16} struct packing align. +# -ei force enums to be type int +# -wo diagnose problems in overlaid code # this enables debug output to the serial port. # comment this out on game release. # serial output goes to COM1 at 9600 baud 1 stop bit odd parity. # serial output is plain text ASCII. -DEBUGSERIAL=1 +DEBUGSERIAL=0 + +DELLOGFILE=1 #192x144 #wwww will add these @@ -39,6 +45,7 @@ DEBUGSERIAL=1 to_os_path=\=/ REMOVECOMMAND=rm -f COPYCOMMAND=cp -f +MOVECOMMAND=mv DIRSEP=/ OBJ=obj DUMP=cat @@ -48,6 +55,7 @@ DOSLIBMAKEALL=./buildall.sh build all to_os_path=/=\ REMOVECOMMAND=del COPYCOMMAND=copy /y +MOVECOMMAND=move DIRSEP=\ OBJ=obj DUMP=type @@ -64,6 +72,8 @@ DATADIR=data$(DIRSEP) SPRI=$(DATADIR)/spri SRC=src UTIL=$(SRC)/util +GITCONFIGDIR=$(UTIL)/git +SCRIPTBATDIR=$(UTIL)/shbat SRCLIB=$(SRC)/lib JSMNLIB=$(SRCLIB)/jsmn NYANLIB=$(SRCLIB)/nyan @@ -104,12 +114,12 @@ UPXQ=-qqq # # compile flags # -S_FLAGS=-sg -st -of+ -zu -zdf -zff -zgf -k32768 -Z_FLAGS=-zk0 -zc -zp8 -zm -O_FLAGS=-opmilr -oe=24 -outback -ei -ohnl+ -zp4 -T_FLAGS=-bt=dos -wx -m$(MEMORYMODE) -0 -fpi87 -d1 -fo=.$(OBJ) ##-e=65536 +S_FLAGS=-sg -st -of+ -zu -zdf -zff -zgf -k24576#32768 +Z_FLAGS=-zk0 -zc -zm#### -zp4 -ei +O_FLAGS=-opnr -oe=24 -oil+ -outback -ohm +T_FLAGS=-bt=dos -wx -m$(MEMORYMODE) -0 -fpi87 -d1 -fo=.$(OBJ)##-e=65536 -DBUGFLAGS=-fm=$^&.mah -fd=$^& +DBUGFLAGS=-fm=$^&.meh -fd=$^& CPPFLAGS=-DTARGET_MSDOS=16 -DMSDOS=1 !ifeq DEBUGSERIAL 1 CPPFLAGS += -DDEBUGSERIAL @@ -125,7 +135,8 @@ LIBFLAGS=$(WLIBQ) -b -n VGMSNDOBJ = vgmSnd.$(OBJ) 16_snd.$(OBJ) #OLDLIBOBJS=bitmap.$(OBJ) 16render.$(OBJ) GFXLIBOBJS = 16_vl.$(OBJ) 16_vlpal.$(OBJ) 16text.$(OBJ) bakapee.$(OBJ) scroll16.$(OBJ) 16_vrs.$(OBJ) 16_spri.$(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) 16_wcpu.$(OBJ) 16_timer.$(OBJ) jsmn.$(OBJ) 16_map.$(OBJ) 16text.$(OBJ) 16_enti.$(OBJ) +16LIBNOINOBJS = 16_mm.$(OBJ) 16_pm.$(OBJ) 16_ca.$(OBJ) 16_tail.$(OBJ) 16_head.$(OBJ) 16_enti.$(OBJ) 16_dbg.$(OBJ) kitten.$(OBJ) 16_hc.$(OBJ) 16_wcpu.$(OBJ) 16_timer.$(OBJ) jsmn.$(OBJ) 16_map.$(OBJ) 16text.$(OBJ) +16LIBOBJS = $(16LIBNOINOBJS) 16_in.$(OBJ) DOSLIBOBJ = adlib.$(OBJ) 8254.$(OBJ) 8259.$(OBJ) dos.$(OBJ) cpu.$(OBJ) !ifeq DEBUGSERIAL 1 DOSLIBOBJ += 8250.$(OBJ) @@ -156,10 +167,10 @@ DOSLIB=doslib.lib # Default make rules # .c.$(OBJ): - *wcl $(CFLAGS) $(extra_$^&_obj_opts) $(CPPFLAGS) -c $[@ + *wcl $(CFLAGS) $(extra_$^&_obj_opts) $(CPPFLAGS) -c $[@ .asm.$(OBJ): - *wcl $(AFLAGS) $(extra_$^&_obj_opts) -c $[@ + *wcl $(AFLAGS) $(extra_$^&_obj_opts) -c $[@ #CFLAGS is neccessary here .$(OBJ).exe : @@ -212,10 +223,19 @@ SPRIUTILEXEC = & EXEC = & 16.exe & bakapi.exe & - $(UTILEXEC) & $(TESTEXEC) -all: $(EXEC) $(EXTERNTESTEXEC) +#!ifdef __LINUX__ +#EXEC += $(SPRIUTILEXEC) +#!endif + +ALLEXEC = & + $(EXEC) & + $(UTILEXEC) & + $(TESTEXEC2) & + $(TESTEXEC3) + +all: $(EXEC) testexec: $(EXEC) $(TESTEXEC2) # @@ -242,6 +262,7 @@ fonttest.exe: fonttest.$(OBJ) gfx.lib #fonttes0.exe: fonttes0.$(OBJ) $(16LIB) fontgfx.exe: fontgfx.$(OBJ) gfx.lib $(DOSLIB) inputest.exe: inputest.$(OBJ) $(16LIB) $(DOSLIB) gfx.lib +inntest.exe: inntest.$(OBJ) $(16LIBNOINOBJS) 16_in_1.$(OBJ) $(DOSLIB) gfx.lib #sountest.exe: sountest.$(OBJ) $(16LIB) pcxtest.exe: pcxtest.$(OBJ) gfx.lib $(DOSLIB) $(16LIB) vrstest.exe: vrstest.$(OBJ) $(16LIB) gfx.lib $(DOSLIB) @@ -282,6 +303,7 @@ fonttest.$(OBJ):$(SRC)/fonttest.c #fonttes0.$(OBJ): $(SRC)/fonttes0.c fontgfx.$(OBJ):$(SRC)/fontgfx.c inputest.$(OBJ):$(SRC)/inputest.c +inntest.$(OBJ):$(SRC)/inntest.c #sountest.$(OBJ): $(SRC)/sountest.c #miditest.$(OBJ): $(SRC)/miditest.c #testemm.$(OBJ):$(SRC)/testemm.c @@ -336,10 +358,12 @@ mapread.$(OBJ):$(SRCLIB)/mapread.c $(SRCLIB)/mapread.h 16_map.$(OBJ):$(SRCLIB)/16_map.c $(SRCLIB)/16_map.h 16_timer.$(OBJ):$(SRCLIB)/16_timer.c $(SRCLIB)/16_timer.h 16_in.$(OBJ): $(SRCLIB)/16_in.c $(SRCLIB)/16_in.h +16_in_1.$(OBJ): $(SRCLIB)/16_in_1.c $(SRCLIB)/16_in_1.h 16_rf.$(OBJ): $(SRCLIB)/16_rf.c $(SRCLIB)/16_rf.h 16_mm.$(OBJ): $(SRCLIB)/16_mm.c $(SRCLIB)/16_mm.h 16_pm.$(OBJ): $(SRCLIB)/16_pm.c $(SRCLIB)/16_pm.h 16_ca.$(OBJ): $(SRCLIB)/16_ca.c $(SRCLIB)/16_ca.h +16_us.$(OBJ): $(SRCLIB)/16_us.c 16_dbg.$(OBJ): $(SRCLIB)/16_dbg.c $(SRCLIB)/16_dbg.h midi.$(OBJ): $(SRCLIB)/midi.c $(SRCLIB)/midi.h 16_head.$(OBJ):$(SRCLIB)/16_head.c $(SRCLIB)/16_head.h @@ -360,12 +384,15 @@ ll.$(OBJ): $(SRCLIB)/ll.c $(SRCLIB)/ll.h # clean: .symbolic @if not exist $(DOSLIBDIR)/buildall.sh wmake -h initlibs - @for %f in ($(EXEC)) do @if exist %f $(REMOVECOMMAND) %f + @wmake -h initscript + @for %f in ($(ALLEXEC)) do @if exist %f $(REMOVECOMMAND) %f !ifdef __LINUX__ @if exist *.LIB $(REMOVECOMMAND) *.LIB @. src/util/bcexmm.sh @if exist *.EXE $(REMOVECOMMAND) *.EXE @if exist *.OBJ $(REMOVECOMMAND) *.OBJ + #@for %f in ($(SPRIUTILEXEC)) do @if exist %f $(REMOVECOMMAND) %f + @if not exist vrl2vrs wmake -h vrs !else @if exist *.o $(REMOVECOMMAND) *.o !endif @@ -378,13 +405,15 @@ clean: .symbolic @if exist *.smp $(REMOVECOMMAND) *.smp @if exist *.SMP $(REMOVECOMMAND) *.SMP @if exist *.hed $(REMOVECOMMAND) *.hed - @if exist *.mah $(REMOVECOMMAND) *.mah - @if exist *.MAH $(REMOVECOMMAND) *.MAH + @if exist *.meh $(REMOVECOMMAND) *.meh + @if exist *.MEH $(REMOVECOMMAND) *.MEH @if exist *.err $(REMOVECOMMAND) *.err @if exist TC*.SWP $(REMOVECOMMAND) TC*.SWP -# @if exist *.16W $(REMOVECOMMAND) *.16W -# @if exist *.16B $(REMOVECOMMAND) *.16B - +!ifeq DELLOGFILE 1 + @if exist *.16W $(REMOVECOMMAND) *.16W + @if exist *.16B $(REMOVECOMMAND) *.16B + @if exist *.L16 $(REMOVECOMMAND) *.L16 +!endif # @$(COPYCOMMAND) $(SRC)exmmtest.c $(EXMMTESTDIR)$(SRC) # @$(COPYCOMMAND) $(SRCLIB)16_mm.* $(EXMMTESTDIR)$(SRCLIB) # @$(COPYCOMMAND) $(SRCLIB)16_head.* $(EXMMTESTDIR)$(SRCLIB) @@ -395,14 +424,39 @@ clean: .symbolic nuke: .symbolic @wmake clean + @wmake backupscript @wmake cldl @wmake all @wmake comp backupconfig: .symbolic - @$(COPYCOMMAND) .git$(DIRSEP)config git_con.fig - @$(COPYCOMMAND) .gitmodules git_modu.les - @$(COPYCOMMAND) .gitignore git_igno.re + @$(COPYCOMMAND) .git$(DIRSEP)config $(GITCONFIGDIR)/git_con.fig + @$(COPYCOMMAND) .gitmodules $(GITCONFIGDIR)/git_modu.les + @$(COPYCOMMAND) .gitignore $(GITCONFIGDIR)/git_igno.re + +initconfig: .symbolic + @$(COPYCOMMAND) $(GITCONFIGDIR)/git_con.fig .git/config + @$(COPYCOMMAND) $(GITCONFIGDIR)/git_modu.les .gitmodules + @$(COPYCOMMAND) $(GITCONFIGDIR)/git_igno.re .gitignore + + +backupscript: .symbolic + @if exist *.bat $(MOVECOMMAND) *.bat $(SCRIPTBATDIR)/ + @if exist *.sh $(MOVECOMMAND) *.sh $(SCRIPTBATDIR)/ +!ifdef __LINUX__ + @if exist *.BAT $(MOVECOMMAND) *.BAT $(SCRIPTBATDIR)/ + @if not exist ud.sh $(COPYCOMMAND) $(SCRIPTBATDIR)/ud.sh ./ +!endif + @if not exist wbuild.sh $(COPYCOMMAND) $(SCRIPTBATDIR)/wbuild.sh ./ + @if not exist WBUILD.BAT $(COPYCOMMAND) $(SCRIPTBATDIR)/WBUILD.BAT ./ + +initscript: .symbolic + @$(COPYCOMMAND) $(SCRIPTBATDIR)/*.bat ./ + @$(COPYCOMMAND) $(SCRIPTBATDIR)/*.sh ./ +!ifdef __LINUX__ + @$(COPYCOMMAND) $(SCRIPTBATDIR)/*.BAT ./ +!endif + comp: .symbolic @*upx -9 $(EXEC) @@ -412,9 +466,11 @@ comq: .symbolic www: .symbolic @for %f in (/var/www/$(EXEC)) do @if exist /var/www/%f $(REMOVECOMMAND) /var/www/%f - @$(REMOVECOMMAND) /var/www/*.exe.zip* + @$(REMOVECOMMAND) /var/www/*.exe.zi* + @$(REMOVECOMMAND) /var/www/*.zip.zi* @for %f in ($(EXEC)) do @if exist %f @$(COPYCOMMAND) %f /var/www/ @./src/util/z.sh $(EXEC) $(EXEC) + @./src/util/z2.sh data.zip data @wmake -h wwwext wwwext: .symbolic @@ -427,14 +483,17 @@ wwwext1: .symbolic @scp -r -P $(HOSTPORT) *.exe $(HOSTUSER)@$(HOSTADDR):$(HOSTDIR)/16/ @scp -r -P $(HOSTPORT) *get.bat $(HOSTUSER)@$(HOSTADDR):$(HOSTDIR)/16/ @scp -r -P $(HOSTPORT) /var/www/*.exe.zip.* $(HOSTUSER)@$(HOSTADDR):$(HOSTDIR)/16/ - @scp -r -P $(HOSTPORT) $(DATADIR)spri.zip $(HOSTUSER)@$(HOSTADDR):$(HOSTDIR)/16/ + #@scp -r -P $(HOSTPORT) $(DATADIR)spri.zip $(HOSTUSER)@$(HOSTADDR):$(HOSTDIR)/16/ + @scp -r -P $(HOSTPORT) /var/www/data.zip.* $(HOSTUSER)@$(HOSTADDR):$(HOSTDIR)/16/ + wwwext2: .symbolic #beta.latech.edu @scp -r -P $(HOST2PORT) *.exe $(HOST2USER)@$(HOST2ADDR):$(HOST2DIR)/16/ @scp -r -P $(HOST2PORT) *get.bat $(HOST2USER)@$(HOST2ADDR):$(HOST2DIR)/16/ @scp -r -P $(HOST2PORT) /var/www/*.exe.zip.* $(HOST2USER)@$(HOST2ADDR):$(HOST2DIR)/16/ - @scp -r -P $(HOST2PORT) $(DATADIR)spri.zip $(HOST2USER)@$(HOST2ADDR):$(HOST2DIR)/16/ + #@scp -r -P $(HOST2PORT) $(DATADIR)spri.zip $(HOST2USER)@$(HOST2ADDR):$(HOST2DIR)/16/ + @scp -r -P $(HOST2PORT) /var/www/data.zip.* $(HOST2USER)@$(HOST2ADDR):$(HOST2DIR)/16/ getwww: .symbolic *x4get.bat $(EXEC) @@ -474,9 +533,7 @@ reinitlibs: .symbolic @wmake -h initlibs initlibs: .symbolic - @$(COPYCOMMAND) git_con.fig .git/config - @$(COPYCOMMAND) git_modu.les .gitmodules - @$(COPYCOMMAND) git_igno.re .gitignore + @wmake -h initconfig @wmake -h getlib @cd 16 @git clone https://github.com/FlatRockSoft/CatacombApocalypse.git