]> 4ch.mooo.com Git - 16.git/blobdiff - makefile
engi stuff moved to tdef and textinit is in startup16
[16.git] / makefile
index 1c1cd5cede9e1039ae11d302d48b81c51cf238c0..2f4b6e4ebe6d8fbdc0f7a816103282f23c0b811d 100755 (executable)
--- a/makefile
+++ b/makefile
@@ -42,8 +42,8 @@ COPYCOMMAND=cp -f
 DIRSEP=/
 OBJ=obj
 DUMP=cat
-DOSLIBMAKE=./make.sh
-DOSLIBMAKEALL=./buildall.sh
+DOSLIBMAKE=./make.sh build all
+DOSLIBMAKEALL=./buildall.sh build all
 !else          #DOS ^^
 to_os_path=/=\
 REMOVECOMMAND=del
@@ -56,6 +56,7 @@ DOSLIBMAKEALL=.\build.bat
 !endif
 
 TARGET_OS = dos
+MEMORYMODE = l
 
 BUILD_ROOT=$+$(%__CWD__)$-
 #EXMMTESTDIR=16$(DIRSEP)exmmtest$(DIRSEP)
@@ -77,6 +78,7 @@ 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
+DOSLIB_MEMMODE=dos86$(MEMORYMODE)
 
 #
 # quiet flags
@@ -91,7 +93,7 @@ UPXQ=-qqq
 S_FLAGS=-sg -st -of+ -zu -zdf -zff -zgf -zq -k32768#54096#60000
 Z_FLAGS=-zk0 -zc -zp8 -zm
 O_FLAGS=-obmilr -oe=24 -out -oh -ei -onac -ol+ -ok##x
-T_FLAGS=-bt=dos -wx -mh -0 -fpi87 -fo=.$(OBJ) -d1###### -e=65536
+T_FLAGS=-bt=dos -wx -m$(MEMORYMODE) -0 -fpi87 -fo=.$(OBJ) -d1###### -e=65536
 
 CPPFLAGS=-DTARGET_MSDOS=16 -DMSDOS=1
 !ifeq DEBUGSERIAL 1
@@ -99,17 +101,17 @@ CPPFLAGS += -DDEBUGSERIAL
 !endif
 AFLAGS=$(WCLQ) $(T_FLAGS)
 CFLAGS=$(WCLQ) $(T_FLAGS) -wo -i"$(DOSLIB)" $(O_FLAGS) $(S_FLAGS) $(Z_FLAGS)
-LFLAGS=$(WCLQ) -l=dos -fm=$^&.mah $(S_FLAGS)
+LFLAGS=$(WCLQ) -l=dos -fd -fm=$^&.mah $(S_FLAGS)
 LIBFLAGS=$(WLIBQ) -b -n
 
 #
 # objects
 #
 VGMSNDOBJ = vgmSnd.$(OBJ) 16_snd.$(OBJ)
-OLDLIBOBJS=bitmap.$(OBJ) mapread.$(OBJ) 16render.$(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)
-#16planar.$(OBJ) planar.$(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) 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
 DOSLIBOBJ += 8250.$(OBJ)
@@ -118,9 +120,9 @@ DOSLIBOBJ += 8250.$(OBJ)
 #
 # libraries
 #
-DOSLIBLIBS = $(DOSLIB_CPU)/dos86h/cpu.lib $(DOSLIB_DOS)/dos86h/dos.lib $(DOSLIB_VGA)/dos86h/vga.lib
+DOSLIBLIBS = $(DOSLIB_CPU)/$(DOSLIB_MEMMODE)/cpu.lib $(DOSLIB_DOS)/$(DOSLIB_MEMMODE)/dos.lib $(DOSLIB_VGA)/$(DOSLIB_MEMMODE)/vga.lib
 !ifeq DEBUGSERIAL 1
-DOSLIBLIBS += $(DOSLIB_8250)/dos86h/8250.lib
+DOSLIBLIBS += $(DOSLIB_8250)/$(DOSLIB_MEMMODE)/8250.lib
 !endif
 16LIB=$(16LIBOBJS)#16.lib bad program lock up
 
@@ -131,7 +133,7 @@ DOSLIBLIBS += $(DOSLIB_8250)/dos86h/8250.lib
 
 .asm : $(MODEXLIB)
 
-.lib : .;$(DOSLIB_CPU)/dos86h;$(DOSLIB_DOS)/dos86h;$(DOSLIB_VGA)/dos86h;$(DOSLIB_8250)/dos86h
+.lib : .;$(DOSLIB_CPU)/$(DOSLIB_MEMMODE);$(DOSLIB_DOS)/$(DOSLIB_MEMMODE);$(DOSLIB_VGA)/$(DOSLIB_MEMMODE);$(DOSLIB_8250)/$(DOSLIB_MEMMODE)
 
 .obj : .
 
@@ -161,9 +163,9 @@ TESTEXEC = &
        vgmtest.exe &
        scroll.exe &
        zcroll.exe &
+       inputest.exe &
        vrstest.exe
 TESTEXEC2 = &
-       inputest.exe &
        maptest.exe &
        fmemtest.exe &
        fonttest.exe &
@@ -268,20 +270,20 @@ gfx.lib: $(GFXLIBOBJS)
 #      doslib
 #
 # library deps 16-bit huge
-$(DOSLIB_CPU)/dos86h/cpu.lib:
-       cd $(DOSLIB_CPU:$(to_os_path)) && $(DOSLIBMAKE) && cd $(BUILD_ROOT)
-$(DOSLIB_DOS)/dos86h/dos.lib:
-       cd $(DOSLIB_DOS:$(to_os_path)) && $(DOSLIBMAKE) && cd $(BUILD_ROOT)
-$(DOSLIB_VGA)/dos86h/vgatty.lib:
-       cd $(DOSLIB_VGA:$(to_os_path)) && $(DOSLIBMAKE) && cd $(BUILD_ROOT)
-$(DOSLIB_VGA)/dos86h/vga.lib:
-       cd $(DOSLIB_VGA:$(to_os_path)) && $(DOSLIBMAKE) && cd $(BUILD_ROOT)
-$(DOSLIB_8250)/dos86h/8250.lib:
-       cd $(DOSLIB_8250:$(to_os_path)) && $(DOSLIBMAKE) && cd $(BUILD_ROOT)
+$(DOSLIB_CPU)/$(DOSLIB_MEMMODE)/cpu.lib:
+       cd $(DOSLIB_CPU:$(to_os_path)) && $(DOSLIBMAKE) $(DOSLIB_MEMMODE) && cd $(BUILD_ROOT)
+$(DOSLIB_DOS)/$(DOSLIB_MEMMODE)/dos.lib:
+       cd $(DOSLIB_DOS:$(to_os_path)) && $(DOSLIBMAKE) $(DOSLIB_MEMMODE) && cd $(BUILD_ROOT)
+$(DOSLIB_VGA)/$(DOSLIB_MEMMODE)/vgatty.lib:
+       cd $(DOSLIB_VGA:$(to_os_path)) && $(DOSLIBMAKE) $(DOSLIB_MEMMODE) && cd $(BUILD_ROOT)
+$(DOSLIB_VGA)/$(DOSLIB_MEMMODE)/vga.lib:
+       cd $(DOSLIB_VGA:$(to_os_path)) && $(DOSLIBMAKE) $(DOSLIB_MEMMODE) && cd $(BUILD_ROOT)
+$(DOSLIB_8250)/$(DOSLIB_MEMMODE)/8250.lib:
+       cd $(DOSLIB_8250:$(to_os_path)) && $(DOSLIBMAKE) $(DOSLIB_MEMMODE) && cd $(BUILD_ROOT)
 
 joytest.exe:
-       cd $(DOSLIB_JOYSTICK:$(to_os_path)) && $(DOSLIBMAKE) && cd $(BUILD_ROOT)
-       $(COPYCOMMAND) $(DOSLIB_JOYSTICK:$(to_os_path))$(DIRSEP)dos86h$(DIRSEP)test.exe joytest.exe
+       cd $(DOSLIB_JOYSTICK:$(to_os_path)) && $(DOSLIBMAKE) $(DOSLIB_MEMMODE) && cd $(BUILD_ROOT)
+       $(COPYCOMMAND) $(DOSLIB_JOYSTICK:$(to_os_path))$(DIRSEP)$(DOSLIB_MEMMODE)$(DIRSEP)test.exe joytest.exe
 
 16_vl.$(OBJ):$(SRCLIB)/16_vl.c $(SRCLIB)/16_vl.h
 bakapee.$(OBJ):$(SRCLIB)/bakapee.c $(SRCLIB)/bakapee.h
@@ -292,7 +294,7 @@ bakapee.$(OBJ):$(SRCLIB)/bakapee.c $(SRCLIB)/bakapee.h
 bitmap.$(OBJ): $(SRCLIB)/bitmap.c $(SRCLIB)/bitmap.h
 planar.$(OBJ): $(SRCLIB)/planar.c $(SRCLIB)/planar.h
 scroll16.$(OBJ):$(SRCLIB)/scroll16.c $(SRCLIB)/scroll16.h
-16text.$(OBJ): $(SRCLIB)/16text.c
+16text.$(OBJ): $(SRCLIB)/16text.c $(SRCLIB)/16text.h
 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
@@ -318,6 +320,7 @@ modex.$(OBJ):        $(MODEXLIB)/modex.asm
 #other~
 #
 clean: .symbolic
+       @if not exist $(DOSLIB)/buildall.sh wmake -h initlibs
        @for %f in ($(EXEC)) do @if exist %f $(REMOVECOMMAND) %f
 !ifdef __LINUX__
        @rm *.LIB
@@ -367,9 +370,9 @@ comq: .symbolic
 
 www: .symbolic
        @ssh -p 26 sparky4@4ch.mooo.com 'rm -f /var/www/16/*exe*'
-       #@rm -f /var/www/$(EXEC)*
-       @rm -f /var/www/*.exe.zip*
-       #@cp ./$(EXEC) $(DIRSEP)var$(DIRSEP)www$(DIRSEP)
+       #@$(REMOVECOMMAND) -f /var/www/$(EXEC)*
+       @$(REMOVECOMMAND) -f /var/www/*.exe.zip*
+       #@$(COPYCOMMAND) ./$(EXEC) $(DIRSEP)var$(DIRSEP)www$(DIRSEP)
        @./src/util/z.sh $(EXEC) $(EXEC)
        @scp -r -P 26 *.exe 4ch.mooo.com:/var/www/16/
        @scp -r -P 26 x4get.bat 4ch.mooo.com:/var/www/16/
@@ -387,12 +390,12 @@ vomitchan: .symbolic
 #git submodule add <repo>
 mkdl: .symbolic
        @cd $(DOSLIB:$(to_os_path))
-       @$(DOSLIBMAKEALL)
+       @$(DOSLIBMAKEALL) $(DOSLIB_MEMMODE)
        @cd $(BUILD_ROOT)
 
 cldl: .symbolic
        @cd $(DOSLIB:$(to_os_path))
-       @$(DOSLIBMAKEALL) clean
+       @$(DOSLIBMAKEALL) $(DOSLIB_MEMMODE) clean
        @cd $(BUILD_ROOT)
 
 uplibs: .symbolic
@@ -404,18 +407,18 @@ uplibs: .symbolic
        @cd $(BUILD_ROOT)
 
 reinitlibs: .symbolic
-       @rm -rf $(DOSLIB)
-       @rm -rf $(JSMNLIB)
-       @rm -rf 16/CatacombApocalypse
-       @rm -rf 16/wolf3d
-       @rm -rf 16/keen
-       @rm -rf 16/Catacomb3D
+       @$(REMOVECOMMAND) -rf $(DOSLIB)
+       @$(REMOVECOMMAND) -rf $(JSMNLIB)
+       @$(REMOVECOMMAND) -rf 16/CatacombApocalypse
+       @$(REMOVECOMMAND) -rf 16/wolf3d
+       @$(REMOVECOMMAND) -rf 16/keen
+       @$(REMOVECOMMAND) -rf 16/Catacomb3D
        @wmake -h initlibs
 
 initlibs: .symbolic
-       @cp git_con.fig .git/config
-       @cp git_modu.les .gitmodules
-       @cp git_igno.re .gitignore
+       @$(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
@@ -426,7 +429,7 @@ initlibs: .symbolic
        @git clone https://github.com/keendreams/keen.git
        @git clone https://github.com/FlatRockSoft/Catacomb3D.git
        @cd $(BUILD_ROOT)
-       @cp $(DOSLIB)/make-lowercase .
+       @$(COPYCOMMAND) $(DOSLIB)/make-lowercase .
 
 ##
 ##     experimental libs