diff --git a/tools/djgpp/all313.dif b/tools/djgpp/all313.dif deleted file mode 100644 index cdecf7d8..00000000 --- a/tools/djgpp/all313.dif +++ /dev/null @@ -1,812 +0,0 @@ -diff -ruN allegro.312/demo/alld/tmp.txt allegro.313/demo/alld/tmp.txt ---- allegro.312/demo/alld/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/demo/alld/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/demo/alleg/tmp.txt allegro.313/demo/alleg/tmp.txt ---- allegro.312/demo/alleg/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/demo/alleg/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/demo/allp/tmp.txt allegro.313/demo/allp/tmp.txt ---- allegro.312/demo/allp/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/demo/allp/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/examples/alld/tmp.txt allegro.313/examples/alld/tmp.txt ---- allegro.312/examples/alld/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/examples/alld/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/examples/alleg/tmp.txt allegro.313/examples/alleg/tmp.txt ---- allegro.312/examples/alleg/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/examples/alleg/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/examples/allp/tmp.txt allegro.313/examples/allp/tmp.txt ---- allegro.312/examples/allp/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/examples/allp/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/makefile allegro.313/makefile ---- allegro.312/makefile Sun Feb 21 00:31:48 1999 -+++ allegro.313/makefile Mon Jun 20 23:45:18 2005 -@@ -7,8 +7,10 @@ - # # - ################################################# - --# replace this definition if you are using PGCC --# PGCC=1 -+# remline this definition if need Allegro for 486 -+PGCC=1 -+ -+GCC=gcc-2 - - .PHONY: baddjgpp baddjdev badgcc badbnu badmake badtxi badpath badalleg - -@@ -22,23 +24,25 @@ - # check that the djdev package is installed - ifeq ($(wildcard $(DJDIR)/bin/djasm.exe),) - baddjdev: -- @echo Missing djgpp package! You need to install djdev201.zip (or whatever the -+ @echo Missing djgpp package! You need to install djdev203.zip (or whatever the - @echo latest version is). Download this from wherever you got djgpp, and unzip - @echo it into the root of your djgpp directory. - endif - - # check that the gcc package is installed --ifeq ($(wildcard $(DJDIR)/bin/gcc.exe),) -+ifeq ($(wildcard $(DJDIR)/bin/$(GCC).exe),) - badgcc: -- @echo Missing djgpp package! You need to install gcc2721b.zip (or whatever the -- @echo latest version is). Download this from wherever you got djgpp, and unzip -- @echo it into the root of your djgpp directory. -+ @echo Missing djgpp package! You need to install gcc2953b.zip. Download this -+ @echo from wherever you got djgpp, and unzip bin\gcc.exe , rename it as -+ @echo $(GCC).exe into the of your bin directory. - endif - -+GCC := @$(GCC) -+ - # check that the binutils package is installed - ifeq ($(wildcard $(DJDIR)/bin/ld.exe),) - badbnu: -- @echo Missing djgpp package! You need to install bnu27b.zip (or whatever the -+ @echo Missing djgpp package! You need to install bnu216b.zip (or whatever the - @echo latest version is). Download this from wherever you got djgpp, and unzip - @echo it into the root of your djgpp directory. - endif -@@ -46,7 +50,7 @@ - # check that the make package is installed - ifeq ($(wildcard $(DJDIR)/bin/make.exe),) - badmake: -- @echo Missing djgpp package! You need to install mak3761b.zip (or whatever the -+ @echo Missing djgpp package! You need to install mak3791b.zip (or whatever the - @echo latest version is). Download this from wherever you got djgpp, and unzip - @echo it into the root of your djgpp directory. - endif -@@ -54,7 +58,7 @@ - # check that the texinfo package is installed - ifeq ($(wildcard $(DJDIR)/bin/makeinfo.exe),) - badtxi: -- @echo Missing djgpp package! You need to install txi390b.zip (or whatever the -+ @echo Missing djgpp package! You need to install txi48b.zip (or whatever the - @echo latest version is). Download this from wherever you got djgpp, and unzip - @echo it into the root of your djgpp directory. If you do not need the Info - @echo documentation, run make all to ignore this error. -@@ -83,11 +87,32 @@ - endif - endif - -+# -------- check environment to see what type of library to build -------- -+ -+ifdef DEBUGMODE -+ -+# -------- build a debugging library -------- -+VERSION = alld -+ -+else -+ifdef PROFILEMODE -+ -+# -------- build a profiling library -------- -+VERSION = allp -+ -+else -+ -+# -------- build a release library -------- -+VERSION = alleg -+ -+endif -+endif -+ -+ - # set some useful paths --OBJ = obj/djgpp --DOBJ = obj\djgpp --LIB = lib/djgpp/liballeg.a --LIBDEST = $(DJDIR)/lib/liballeg.a -+LIB = lib$(VERSION).a -+OBJ = obj/djgpp/$(VERSION) -+LIBDEST = $(DJDIR)/lib/$(LIB) - INCDEST = $(DJDIR)/include/allegro.h - DOCDEST = $(DJDIR)/info/allegro.inf - INTERNAL_H = src/internal.h src/djgpp/interndj.h -@@ -113,19 +138,22 @@ - else - ifdef PROFILEMODE - # build with profiling information -+OFLAGS = -pg -O3 -ffast-math - ifdef PGCC --OFLAGS = -pg -mpentium -O6 -ffast-math -+OFLAGS := $(OFLAGS) -mcpu=pentium - else --OFLAGS = -pg -m486 -O3 -ffast-math -+OFLAGS := $(OFLAGS) -mcpu=i486 - endif - LFLAGS = -pg - -+ - else - # build a normal optimised version -+OFLAGS = -O3 -ffast-math -fomit-frame-pointer - ifdef PGCC --OFLAGS = -mpentium -O6 -ffast-math -fomit-frame-pointer -+OFLAGS := $(OFLAGS) -mcpu=pentium - else --OFLAGS = -m486 -O3 -ffast-math -fomit-frame-pointer -+OFLAGS := $(OFLAGS) -mcpu=i486 - endif - - ifdef SYMBOLMODE -@@ -179,9 +207,18 @@ - - .PHONY: all msg lib install uninstall docs clean veryclean mmxtest $(PROGRAMS) - --all: msg $(LIB) $(PROGRAMS) docs install -+all: msg lib/djgpp/$(LIB) $(PROGRAMS) docs - @echo All done. -- @echo To use Allegro, #include allegro.h and link with liballeg.a -+ifdef DEBUGMODE -+ @echo To install this version of Allegro, run make install DEBUGMODE=1 -+else -+ifdef PROFILEMODE -+ @echo To install this version of Allegro, run make install PROFILEMODE=1 -+else -+ @echo To install this version of Allegro, run make install -+endif -+endif -+ @echo To use Allegro, #include allegro.h and link with $(LIB) - @echo Example command line: gcc foobar.c -o foobar.exe -lalleg - @echo Run make compress to run DJP or UPX on the executable files - @echo Enjoy! -@@ -189,36 +226,36 @@ - msg: - @echo Compiling Allegro. Please wait... - --lib: $(LIB) -+lib: lib/djgpp/$(LIB) - - install: $(LIBDEST) $(INCDEST) $(DOCDEST) - - docs: $(DOCS) - --$(LIBDEST): $(LIB) -- copy lib\djgpp\liballeg.a $(subst /,\,$(LIBDEST)) -+$(LIBDEST): lib/djgpp/$(LIB) -+ cp lib/djgpp/$(LIB) $(LIBDEST) - - $(INCDEST): allegro.h -- copy allegro.h $(subst /,\,$(INCDEST)) -+ cp allegro.h $(INCDEST) - - $(DOCDEST): docs/allegro.inf - ifneq ($(wildcard $(DJDIR)/bin/makeinfo.exe),) -- copy docs\allegro.inf $(subst /,\,$(DOCDEST)) -+ cp docs\allegro.inf $(DOCDEST) - else - @echo makeinfo not installed: skipping copy of allegro.inf - endif - - $(OBJ)/%.o: %.c allegro.h -- gcc $(CFLAGS) -o $@ -c $< -+ $(GCC) $(CFLAGS) -o $@ -c $< - - $(OBJ)/%.o: %.S asmdefs.inc $(OBJ)/asmdef.inc -- gcc $(SFLAGS) -o $@ -c $< -+ $(GCC) $(SFLAGS) -o $@ -c $< - - $(OBJ)/%.o: %.s asmdefs.inc $(OBJ)/asmdef.inc -- gcc -x assembler-with-cpp $(SFLAGS) -o $@ -c $< -+ $(GCC) -x assembler-with-cpp $(SFLAGS) -o $@ -c $< - --*/%.exe: $(OBJ)/%.o $(LIB) -- gcc $(LFLAGS) -o $@ $< $(LIB) -+*/$(VERSION)/%.exe: $(OBJ)/%.o lib/djgpp/$(LIB) -+ $(GCC) $(LFLAGS) -o $@ $< lib/djgpp/$(LIB) - - docs/%.inf: docs/%.txi - ifneq ($(wildcard $(DJDIR)/bin/makeinfo.exe),) -@@ -252,38 +289,38 @@ - $(OBJ)/makedoc.exe -part -ascii THANKS docs/thanks._tx - - $(OBJ)/makedoc.exe: docs/makedoc.c -- gcc $(CFLAGS) $(LFLAGS) -o $@ docs/makedoc.c -+ $(GCC) $(CFLAGS) $(LFLAGS) -o $@ docs/makedoc.c - - $(OBJ)/asmdef.inc: $(OBJ)/asmdef.exe - $(OBJ)/asmdef.exe $(OBJ)/asmdef.inc - - $(OBJ)/asmdef.exe: src/asmdef.c allegro.h $(INTERNAL_H) -- gcc $(CFLAGS) $(LFLAGS) -o $@ src/asmdef.c -+ $(GCC) $(CFLAGS) $(LFLAGS) -o $@ src/asmdef.c - - mmxtest: -- @echo // no MMX > $(DOBJ)\mmx.h -- @echo .text > $(DOBJ)\mmxtest.s -- @echo emms >> $(DOBJ)\mmxtest.s -- @gcc -c $(OBJ)/mmxtest.s -o $(OBJ)/mmxtest.o -- @echo #define ALLEGRO_MMX > $(DOBJ)\mmx.h -+ @echo // no MMX > $(subst /,\,$(OBJ))\mmx.h -+ @echo .text > $(subst /,\,$(OBJ))\mmxtest.s -+ @echo emms >> $(subst /,\,$(OBJ))\mmxtest.s -+ @$(GCC) -c $(OBJ)/mmxtest.s -o $(OBJ)/mmxtest.o -+ @echo #define ALLEGRO_MMX > $(subst /,\,$(OBJ))\mmx.h - @echo Your assembler supports MMX instructions! - - $(OBJ)/mmx.h: - @echo Testing for MMX assembler support... - -$(MAKE) mmxtest - --$(OBJ)/setupdat.s $(OBJ)/setupdat.h: setup/setup.dat tools/dat2s.exe -- tools/dat2s.exe setup/setup.dat -o $(OBJ)/setupdat.s -h $(OBJ)/setupdat.h -+$(OBJ)/setupdat.s $(OBJ)/setupdat.h: setup/setup.dat tools/$(VERSION)/dat2s.exe -+ tools/$(VERSION)/dat2s.exe setup/setup.dat -o $(OBJ)/setupdat.s -h $(OBJ)/setupdat.h - - $(OBJ)/setupdat.o: $(OBJ)/setupdat.s -- gcc $(SFLAGS) -o $(OBJ)/setupdat.o -c $(OBJ)/setupdat.s -+ $(GCC) $(SFLAGS) -o $(OBJ)/setupdat.o -c $(OBJ)/setupdat.s - --setup/setup.exe: $(OBJ)/setup.o $(OBJ)/setupdat.o $(LIB) -- gcc $(LFLAGS) -o setup/setup.exe $(OBJ)/setup.o $(OBJ)/setupdat.o $(LIB) -+setup/$(VERSION)/setup.exe: $(OBJ)/setup.o $(OBJ)/setupdat.o lib/djgpp/$(LIB) -+ $(GCC) $(LFLAGS) -o setup/$(VERSION)/setup.exe $(OBJ)/setup.o $(OBJ)/setupdat.o lib/djgpp/$(LIB) - ifndef DEBUGMODE - ifndef SYMBOLMODE - ifneq ($(DJP),) -- $(DJP) setup/setup.exe -+ $(DJP) setup/$(VERSION)/setup.exe - endif - endif - endif -@@ -301,79 +338,79 @@ - endif - - $(OBJ)/plugins.h: $(wildcard tools/plugins/*.inc) -- copy tools\plugins\*.inc $(DOBJ)\plugins.h -+ cat tools/plugins/*.inc > $(OBJ)/plugins.h - --tools/dat.exe: $(OBJ)/dat.o $(DATEDIT_DEPS) $(LIB) -- gcc $(LFLAGS) -o tools/dat.exe $(OBJ)/dat.o $(DATEDIT_LINK) $(LIB) -+tools/$(VERSION)/dat.exe: $(OBJ)/dat.o $(DATEDIT_DEPS) lib/djgpp/$(LIB) -+ $(GCC) $(LFLAGS) -o tools/$(VERSION)/dat.exe $(OBJ)/dat.o $(DATEDIT_LINK) lib/djgpp/$(LIB) - --tools/dat2s.exe: $(OBJ)/dat2s.o $(DATEDIT_DEPS) $(LIB) -- gcc $(LFLAGS) -o tools/dat2s.exe $(OBJ)/dat2s.o $(DATEDIT_LINK) $(LIB) -+tools/$(VERSION)/dat2s.exe: $(OBJ)/dat2s.o $(DATEDIT_DEPS) lib/djgpp/$(LIB) -+ $(GCC) $(LFLAGS) -o tools/$(VERSION)/dat2s.exe $(OBJ)/dat2s.o $(DATEDIT_LINK) lib/djgpp/$(LIB) - --tools/grabber.exe: $(OBJ)/grabber.o $(DATEDIT_DEPS) $(LIB) -- gcc $(LFLAGS) -o tools/grabber.exe $(OBJ)/grabber.o $(DATEDIT_LINK) $(LIB) -+tools/$(VERSION)/grabber.exe: $(OBJ)/grabber.o $(DATEDIT_DEPS) lib/djgpp/$(LIB) -+ $(GCC) $(LFLAGS) -o tools/$(VERSION)/grabber.exe $(OBJ)/grabber.o $(DATEDIT_LINK) lib/djgpp/$(LIB) - --tools/pat2dat.exe: $(OBJ)/pat2dat.o $(DATEDIT_DEPS) $(LIB) -- gcc $(LFLAGS) -o tools/pat2dat.exe $(OBJ)/pat2dat.o $(DATEDIT_LINK) $(LIB) -+tools/$(VERSION)/pat2dat.exe: $(OBJ)/pat2dat.o $(DATEDIT_DEPS) lib/djgpp/$(LIB) -+ $(GCC) $(LFLAGS) -o tools/$(VERSION)/pat2dat.exe $(OBJ)/pat2dat.o $(DATEDIT_LINK) lib/djgpp/$(LIB) - --$(LIB): $(LIB_OBJS) -- ar rs $(LIB) $(LIB_OBJS) -+lib/djgpp/$(LIB): $(LIB_OBJS) -+ ar rs lib/djgpp/$(LIB) $(LIB_OBJS) - - compress: $(PROGRAMS) - ifneq ($(DJP),) -- $(DJP) demo/*.exe examples/*.exe tests/*.exe tools/*.exe setup/keyconf.exe obj/djgpp/*.exe -+ $(DJP) demo/$(VERSION)/*.exe examples/$(VERSION)/*.exe tests/$(VERSION)/*.exe tools/$(VERSION)/*.exe setup/$(VERSION)/keyconf.exe $(OBJ)*.exe - else - @echo No executable compressor found! This target requires either the - @echo DJP or UPX utilities to be installed in your djgpp bin directory. - endif - - clean: -- -rm -v obj/djgpp/*.* lib/djgpp/*.* docs/*.$(HTML) docs/*.txi docs/*.inf docs/*.rtf -+ -rm -f -v $(OBJ)/*.* lib/djgpp/*.* docs/*.$(HTML) docs/*.txi docs/*.inf docs/*.rtf - - veryclean: clean -- -rm -v allegro.txt AUTHORS CHANGES faq.txt help.txt NEWS THANKS \ -- demo/*.exe examples/*.exe setup/*.exe tests/*.exe tools/*.exe -+ -rm -f -v allegro.txt AUTHORS CHANGES faq.txt help.txt NEWS THANKS \ -+ demo/$(VERSION)/*.exe examples/$(VERSION)/*.exe setup/$(VERSION)/*.exe tests/$(VERSION)/*.exe tools/$(VERSION)/*.exe - - uninstall: -- -rm $(LIBDEST) -- -rm $(INCDEST) -- -rm $(DOCDEST) -+ -rm -f $(LIBDEST) -+ -rm -f $(INCDEST) -+ -rm -f $(DOCDEST) - @echo All gone! (sulk) - --demo: demo/demo.exe --keyconf: setup/keyconf.exe --setup: setup/setup.exe --afinfo: tests/afinfo.exe --akaitest: tests/akaitest.exe --digitest: tests/digitest.exe --mathtest: tests/mathtest.exe --miditest: tests/miditest.exe --play: tests/play.exe --playfli: tests/playfli.exe --test: tests/test.exe --vesainfo: tests/vesainfo.exe --colormap: tools/colormap.exe --dat: tools/dat.exe --dat2s: tools/dat2s.exe --exedat: tools/exedat.exe --grabber: tools/grabber.exe --pack: tools/pack.exe --pat2dat: tools/pat2dat.exe --rgbmap: tools/rgbmap.exe -- --examples: examples/ex1.exe examples/ex2.exe examples/ex3.exe \ -- examples/ex4.exe examples/ex5.exe examples/ex6.exe \ -- examples/ex7.exe examples/ex8.exe examples/ex9.exe \ -- examples/ex10.exe examples/ex11.exe examples/ex12.exe \ -- examples/ex13.exe examples/ex14.exe examples/ex15.exe \ -- examples/ex16.exe examples/ex17.exe examples/ex18.exe \ -- examples/ex19.exe examples/ex20.exe examples/ex21.exe \ -- examples/ex22.exe examples/ex23.exe examples/ex24.exe \ -- examples/ex25.exe examples/ex26.exe examples/ex27.exe \ -- examples/ex28.exe examples/ex29.exe examples/ex30.exe \ -- examples/ex31.exe examples/ex32.exe examples/ex33.exe \ -- examples/ex34.exe examples/ex35.exe examples/ex36.exe \ -- examples/ex37.exe examples/ex38.exe examples/ex39.exe \ -- examples/ex40.exe -+demo: demo/$(VERSION)/demo.exe -+keyconf: setup/$(VERSION)/keyconf.exe -+setup: setup/$(VERSION)/setup.exe -+afinfo: tests/$(VERSION)/afinfo.exe -+akaitest: tests/$(VERSION)/akaitest.exe -+digitest: tests/$(VERSION)/digitest.exe -+mathtest: tests/$(VERSION)/mathtest.exe -+miditest: tests/$(VERSION)/miditest.exe -+play: tests/$(VERSION)/play.exe -+playfli: tests/$(VERSION)/playfli.exe -+test: tests/$(VERSION)/test.exe -+vesainfo: tests/$(VERSION)/vesainfo.exe -+colormap: tools/$(VERSION)/colormap.exe -+dat: tools/$(VERSION)/dat.exe -+dat2s: tools/$(VERSION)/dat2s.exe -+exedat: tools/$(VERSION)/exedat.exe -+grabber: tools/$(VERSION)/grabber.exe -+pack: tools/$(VERSION)/pack.exe -+pat2dat: tools/$(VERSION)/pat2dat.exe -+rgbmap: tools/$(VERSION)/rgbmap.exe -+ -+examples: examples/$(VERSION)/ex1.exe examples/$(VERSION)/ex2.exe examples/$(VERSION)/ex3.exe \ -+ examples/$(VERSION)/ex4.exe examples/$(VERSION)/ex5.exe examples/$(VERSION)/ex6.exe \ -+ examples/$(VERSION)/ex7.exe examples/$(VERSION)/ex8.exe examples/$(VERSION)/ex9.exe \ -+ examples/$(VERSION)/ex10.exe examples/$(VERSION)/ex11.exe examples/$(VERSION)/ex12.exe \ -+ examples/$(VERSION)/ex13.exe examples/$(VERSION)/ex14.exe examples/$(VERSION)/ex15.exe \ -+ examples/$(VERSION)/ex16.exe examples/$(VERSION)/ex17.exe examples/$(VERSION)/ex18.exe \ -+ examples/$(VERSION)/ex19.exe examples/$(VERSION)/ex20.exe examples/$(VERSION)/ex21.exe \ -+ examples/$(VERSION)/ex22.exe examples/$(VERSION)/ex23.exe examples/$(VERSION)/ex24.exe \ -+ examples/$(VERSION)/ex25.exe examples/$(VERSION)/ex26.exe examples/$(VERSION)/ex27.exe \ -+ examples/$(VERSION)/ex28.exe examples/$(VERSION)/ex29.exe examples/$(VERSION)/ex30.exe \ -+ examples/$(VERSION)/ex31.exe examples/$(VERSION)/ex32.exe examples/$(VERSION)/ex33.exe \ -+ examples/$(VERSION)/ex34.exe examples/$(VERSION)/ex35.exe examples/$(VERSION)/ex36.exe \ -+ examples/$(VERSION)/ex37.exe examples/$(VERSION)/ex38.exe examples/$(VERSION)/ex39.exe \ -+ examples/$(VERSION)/ex40.exe - - $(OBJ)/demo.o: demo.h - $(OBJ)/adlib.o: fm_instr.h -diff -ruN allegro.312/obj/djgpp/alld/tmp.txt allegro.313/obj/djgpp/alld/tmp.txt ---- allegro.312/obj/djgpp/alld/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/obj/djgpp/alld/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/obj/djgpp/alleg/tmp.txt allegro.313/obj/djgpp/alleg/tmp.txt ---- allegro.312/obj/djgpp/alleg/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/obj/djgpp/alleg/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/obj/djgpp/allp/tmp.txt allegro.313/obj/djgpp/allp/tmp.txt ---- allegro.312/obj/djgpp/allp/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/obj/djgpp/allp/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/obj/djgpp/tmp.txt allegro.313/obj/djgpp/tmp.txt ---- allegro.312/obj/djgpp/tmp.txt Sat Feb 27 21:25:34 1999 -+++ allegro.313/obj/djgpp/tmp.txt Thu Jan 1 00:00:00 1970 -@@ -1 +0,0 @@ --This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/setup/alld/tmp.txt allegro.313/setup/alld/tmp.txt ---- allegro.312/setup/alld/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/setup/alld/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/setup/alleg/tmp.txt allegro.313/setup/alleg/tmp.txt ---- allegro.312/setup/alleg/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/setup/alleg/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/setup/allp/tmp.txt allegro.313/setup/allp/tmp.txt ---- allegro.312/setup/allp/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/setup/allp/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/src/asmdefs.inc allegro.313/src/asmdefs.inc ---- allegro.312/src/asmdefs.inc Sat Feb 20 20:51:22 1999 -+++ allegro.313/src/asmdefs.inc Sun Jun 19 04:18:44 2005 -@@ -41,8 +41,8 @@ - * %eax. Registers will be unchanged, except %eax will return a pointer - * to the start of the selected scanline. - */ --#define WRITE_BANK() call BMP_WBANK(%edx) --#define READ_BANK() call BMP_RBANK(%edx) -+#define WRITE_BANK() call *BMP_WBANK(%edx) -+#define READ_BANK() call *BMP_RBANK(%edx) - - - /* Helper macro for looking up a position in the pattern bitmap. Passed -diff -ruN allegro.312/src/djgpp/gpro.c allegro.313/src/djgpp/gpro.c ---- allegro.312/src/djgpp/gpro.c Sat Feb 20 22:01:28 1999 -+++ allegro.313/src/djgpp/gpro.c Mon Jun 20 21:23:42 2005 -@@ -53,135 +53,79 @@ - */ - static int read_gpp(int pad_num) - { -- char samples[60]; -- char clock_mask, data_mask; -- int ret; -- -- asm ( -- " cmpb $0, %0 ; " -- " jne 14f ; " -- " movb $0x10, %b2 ; " -- " movb $0x20, %b3 ; " -- " jmp 15f ; " -- " 14: " -- " movb $0x40, %b2 ; " -- " movb $0x80, %b3 ; " -- -- " 15: " -- " xorl %%ebx, %%ebx ; " -- " xorl %%edi, %%edi ; " -- " movw $0x201, %%dx ; " -- -- " cli ; " -- " inb %%dx, %%al ; " -- " movb %%al, %%ah ; " -- -- " 4: " -- " xorl %%ecx, %%ecx ; " -- " 0: " -- " inb %%dx, %%al ; " -- " cmpb %%ah, %%al ; " -- " jne 1f ; " -- " incl %%ecx ; " -- " cmpl $255, %%ecx ; " -- " jl 0b ; " -- -- " 1: " -- " cmpl $255, %%ecx ; " -- " je 16f ; " -- -- " testb %%ah, %b2 ; " -- " jz 2f ; " -- " testb %%al, %b2 ; " -- " jnz 2f ; " -- -- " addl %4, %%edi ; " -- " testb %%al, %b3 ; " -- " jz 3f ; " -- " movb $1, (%%edi) ; " -- " jmp 12f ; " -- " 3: " -- " movb $0, (%%edi) ; " -- " 12: " -- " subl %4, %%edi ; " -- " incl %%edi ; " -- -- " 2: " -- " movb %%al, %%ah ; " -- " cmpl $200, %%ebx ; " -- " je 13f ; " -- " incl %%ebx ; " -- " cmpl $50, %%edi ; " -- " jl 4b ; " -- -- " 13: " -- " sti ; " -- " xorl %%ecx, %%ecx ; " -- " movl $1, %%esi ; " -- " 7: " -- " addl %4, %%esi ; " -- " movb (%%esi), %%dl ; " -- " subl %4, %%esi ; " -- " cmpb $1, %%dl ; " -- " jg 16f ; " -- " jne 6f ; " -- " incl %%ecx ; " -- " jmp 5f ; " -- " 6: " -- " xorl %%ecx, %%ecx ; " -- -- " 5: " -- " cmpl $5, %%ecx ; " -- " je 8f ; " -- " cmpl %%edi, %%esi ; " -- " je 8f ; " -- " incl %%esi ; " -- " jmp 7b ; " -- -- " 8: " -- " cmpl $5, %%ecx ; " -- " jne 16f ; " -- " addl $2, %%esi ; " -- " xorl %%eax, %%eax ; " -- " xorl %%ebx, %%ebx ; " -- " xorl %%ecx, %%ecx ; " -- " xorl %%edx, %%edx ; " -- -- " 10: " -- " incl %%ecx ; " -- " cmpl $5, %%ecx ; " -- " jne 11f ; " -- " movl $1, %%ecx ; " -- " incl %%esi ; " -- " 11: " -- " addl %4, %%esi ; " -- " movb (%%esi), %%dl ; " -- " subl %4, %%esi ; " -- " orl %%edx, %%eax ; " -- " shll $1, %%eax ; " -- " cmpl $13, %%ebx ; " -- " je 9f ; " -- " incl %%ebx ; " -- " incl %%esi ; " -- " jmp 10b ; " -- -- " 16: " -- " movl $1, %%eax ; " -- -- " 9: " -- " sti ; " -- -- : "=a" (ret) -- -- : "0" (pad_num), -- "m" (clock_mask), -- "m" (data_mask), -- "m" (samples) -+ int samples[50]; -+ int clock_mask, data_mask, data, old_data; -+ int num_samples, timeout1, timeout2, sample_pos, c; -+ -+ if (pad_num == 0) { -+ clock_mask = 0x10; -+ data_mask = 0x20; -+ } -+ else { -+ clock_mask = 0x40; -+ data_mask = 0x80; -+ } -+ -+ num_samples = 0; -+ timeout1 = 0; -+ -+ asm volatile ("cli"); -+ -+ old_data = inportb(0x201); -+ data = 0; -+ -+ while (num_samples<50) { -+ for (timeout2=0; timeout2<255; timeout2++) { -+ data = inportb(0x201); -+ if (data != old_data) -+ break; -+ } -+ -+ if (timeout2 == 255) { -+ asm volatile ("sti"); -+ return 1; -+ } -+ -+ if ((old_data & clock_mask) && (!(data & clock_mask))) { -+ samples[num_samples] = (data & data_mask) ? 1 : 0; -+ num_samples++; -+ } -+ -+ old_data = data; -+ -+ if (timeout1++ == 200) -+ break; -+ } -+ -+ asm volatile ("sti"); -+ -+ c = 0; -+ -+ for (sample_pos=1; sample_posgs), - "=m" (sregs->ss) - -- : /* no inputs */ -- -- : "%eax" /* clobbers %eax */ - ); - } - -diff -ruN allegro.312/src/gfx15.s allegro.313/src/gfx15.s ---- allegro.312/src/gfx15.s Sat Feb 20 20:50:30 1999 -+++ allegro.313/src/gfx15.s Mon Jun 20 22:46:02 2005 -@@ -367,9 +367,9 @@ - movl BMP_CT(%edx), %esi /* clip y1 */ - - vline_y1_ok: -- cmpw BMP_CB(%edx), %ecx /* test y2, bmp->cb */ -+ cmpw BMP_CB(%edx), %cx /* test y2, bmp->cb */ - jl vline_noclip -- cmpw BMP_CB(%edx), %esi /* test y1, bmp->cb */ -+ cmpw BMP_CB(%edx), %si /* test y1, bmp->cb */ - jge vline_done - movl BMP_CB(%edx), %ecx /* clip y2 */ - decl %ecx -diff -ruN allegro.312/src/gfx16.s allegro.313/src/gfx16.s ---- allegro.312/src/gfx16.s Sat Feb 20 20:50:42 1999 -+++ allegro.313/src/gfx16.s Mon Jun 20 22:47:28 2005 -@@ -417,9 +417,9 @@ - movl BMP_CT(%edx), %esi /* clip y1 */ - - vline_y1_ok: -- cmpw BMP_CB(%edx), %ecx /* test y2, bmp->cb */ -+ cmpw BMP_CB(%edx), %cx /* test y2, bmp->cb */ - jl vline_noclip -- cmpw BMP_CB(%edx), %esi /* test y1, bmp->cb */ -+ cmpw BMP_CB(%edx), %si /* test y1, bmp->cb */ - jge vline_done - movl BMP_CB(%edx), %ecx /* clip y2 */ - decl %ecx -diff -ruN allegro.312/src/gfx24.s allegro.313/src/gfx24.s ---- allegro.312/src/gfx24.s Sat Feb 20 20:46:30 1999 -+++ allegro.313/src/gfx24.s Mon Jun 20 22:48:22 2005 -@@ -265,7 +265,7 @@ - movl %eax, ARG2 /* ARG2 == 12(%ebp) */ - movl %eax, 15(%ebp) /* overwrite ARG2, ARG3, ARG4 */ - movl %eax, 18(%ebp) -- movw %eax, 21(%ebp) -+ movw %ax, 21(%ebp) - shrl $16, %eax - movb %al, 23(%ebp) - cmpl $4, %ecx -@@ -503,9 +503,9 @@ - movl BMP_CT(%edx), %esi /* clip y1 */ - - vline_y1_ok: -- cmpw BMP_CB(%edx), %ecx /* test y2, bmp->cb */ -+ cmpw BMP_CB(%edx), %cx /* test y2, bmp->cb */ - jl vline_noclip -- cmpw BMP_CB(%edx), %esi /* test y1, bmp->cb */ -+ cmpw BMP_CB(%edx), %si /* test y1, bmp->cb */ - jge vline_done - movl BMP_CB(%edx), %ecx /* clip y2 */ - decl %ecx -diff -ruN allegro.312/src/gfx32.s allegro.313/src/gfx32.s ---- allegro.312/src/gfx32.s Sat Feb 20 20:50:40 1999 -+++ allegro.313/src/gfx32.s Mon Jun 20 22:48:44 2005 -@@ -398,9 +398,9 @@ - movl BMP_CT(%edx), %esi /* clip y1 */ - - vline_y1_ok: -- cmpw BMP_CB(%edx), %ecx /* test y2, bmp->cb */ -+ cmpw BMP_CB(%edx), %cx /* test y2, bmp->cb */ - jl vline_noclip -- cmpw BMP_CB(%edx), %esi /* test y1, bmp->cb */ -+ cmpw BMP_CB(%edx), %si /* test y1, bmp->cb */ - jge vline_done - movl BMP_CB(%edx), %ecx /* clip y2 */ - decl %ecx -diff -ruN allegro.312/src/gfx8.s allegro.313/src/gfx8.s ---- allegro.312/src/gfx8.s Sat Feb 20 20:50:54 1999 -+++ allegro.313/src/gfx8.s Mon Jun 20 22:49:02 2005 -@@ -455,9 +455,9 @@ - movl BMP_CT(%edx), %esi /* clip y1 */ - - vline_y1_ok: -- cmpw BMP_CB(%edx), %ecx /* test y2, bmp->cb */ -+ cmpw BMP_CB(%edx), %cx /* test y2, bmp->cb */ - jl vline_noclip -- cmpw BMP_CB(%edx), %esi /* test y1, bmp->cb */ -+ cmpw BMP_CB(%edx), %si /* test y1, bmp->cb */ - jge vline_done - movl BMP_CB(%edx), %ecx /* clip y2 */ - decl %ecx -diff -ruN allegro.312/tests/alld/tmp.txt allegro.313/tests/alld/tmp.txt ---- allegro.312/tests/alld/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/tests/alld/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/tests/alleg/tmp.txt allegro.313/tests/alleg/tmp.txt ---- allegro.312/tests/alleg/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/tests/alleg/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/tests/allp/tmp.txt allegro.313/tests/allp/tmp.txt ---- allegro.312/tests/allp/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/tests/allp/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/tools/alld/tmp.txt allegro.313/tools/alld/tmp.txt ---- allegro.312/tools/alld/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/tools/alld/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/tools/alleg/tmp.txt allegro.313/tools/alleg/tmp.txt ---- allegro.312/tools/alleg/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/tools/alleg/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories. -diff -ruN allegro.312/tools/allp/tmp.txt allegro.313/tools/allp/tmp.txt ---- allegro.312/tools/allp/tmp.txt Thu Jan 1 00:00:00 1970 -+++ allegro.313/tools/allp/tmp.txt Sat Feb 27 21:25:34 1999 -@@ -0,0 +1 @@ -+This file is needed because some unzip programs skip empty directories.