1
0
mirror of https://github.com/Interlisp/maiko.git synced 2026-02-24 16:07:37 +00:00

Begin to modernize optimized dispatch. (#271)

This feature was controlled by the compilation flag `OPDISP`
which would enable some bits of assembler on the x86 (ISC or DOS)
or some other specialized code on SPARC. On SPARC hardware, there
was a special compilation process that would preprocess the code
and generate dispatch tables.

We do this now when this feature is enabled using gcc's computed
gotos feature. This is available in clang and some other compilers.
Notably, it isn't present in Visual Studio.

This doesn't decrease our portability at all as this feature is
optional and it replaces specialized assembler code with C using
compiler extensions (making it cross-platform).

In doing this, we've removed a bunch of related code, however,
it is likely that other pieces yet remain and will be removed
in subsequent commits as we clean things up and refine them.

This feature remains disabled by default for now.
This commit is contained in:
Bruce Mitchener
2021-01-23 03:28:16 +07:00
committed by GitHub
parent 61a0c02681
commit b7e9529322
18 changed files with 514 additions and 1607 deletions

View File

@@ -40,7 +40,6 @@ SUN3_OS3_OR_OS4_IL Try asm optimizations for 68K & either sunOS. This is
turned on whenever either of SUN3_OS3_IL or SUN3_OS4_IL is on.
OPDISP Use "fast-opcode-dispatch" macros
SPARCDISP Use fast-opcode-dispatch macros on SPARC
@@ -74,7 +73,7 @@ INIT Used when compiling an emulator to build a loadup. Use it
to dike out code that deals with network initialization, e.g.
MYOPTRACE Used to check the stack's validity on each opcode execution.
Requires NOASM, and the absence of SUN..._IL and SPARCDISP &c.
Requires NOASM, and the absence of SUN..._IL &c.
PCTRACE When true, compiles in a 100-long ring buffer that holds the
last 100 PCs, Function-blocks, and Opcodes executed. "pccounter"

View File

@@ -13,7 +13,7 @@ LDFLAGS = -g graphics.lib binmode.lib mouse.lib
RM = del
SRCFILES = conspage.c gcoflow.c shift.c dbgtool.c gcr.c gcrcell.c llstk.c gcscan.c loopsops.c storage.c allocmds.c dir.c gvar2.c lowlev1.c subr.c arith2.c lowlev2.c subr0374.c arith3.c doscomm.c hardrtn.c lsthandl.c sxhash.c arith4.c draw.c main.c testtool.c array.c dsk.c inet.c misc7.c timer.c array2.c dspif.c initdsp.c miscn.c typeof.c array3.c initkbd.c ubf1.c array4.c dspsubrs.c initsout.c mkatom.c ubf2.c array5.c eqf.c intcall.c mkcell.c ubf3.c array6.c ether.c mkvdate.c ufn.c atom.c findkey.c kbdsubrs.c mouseif.c ufs.c bbtsub.c foreign.c keyevent.c unixcomm.c bin.c fp.c binds.c asmbbt.c fvar.c mvs.c unwind.c bitblt.c gc.c uraid.c blt.c gc2.c kprint.c osmsg.c usrsubr.c byteswap.c gcarray.c perrno.c ldeboot.c ldeether.c uutils.c carcdr.c gccode.c rawcolor.c vars3.c gcfinal.c ldsout.c return.c vmemsave.c chardev.c gchtfind.c lineblt8.c rpc.c xc.c common.c gcmain3.c lisp2c.c rplcons.c z2.c find-dsp.l dsphack.l xmkicon.c xbbt.c xinit.c xscroll.c xcursor.c xlspwin.c xrdopt.c xwinman.c dosmouse.c vesafns.asm vesainit.c vgainit.c kbdif.c dspsparc.il copyright launch.asm lpread.c lpsolve.c lpmain.c lpwrite.c lpdual.c lptran.c
SRCFILES = conspage.c gcoflow.c shift.c dbgtool.c gcr.c gcrcell.c llstk.c gcscan.c loopsops.c storage.c allocmds.c dir.c gvar2.c lowlev1.c subr.c arith2.c lowlev2.c subr0374.c arith3.c doscomm.c hardrtn.c lsthandl.c sxhash.c arith4.c draw.c main.c testtool.c array.c dsk.c inet.c misc7.c timer.c array2.c dspif.c initdsp.c miscn.c typeof.c array3.c initkbd.c ubf1.c array4.c dspsubrs.c initsout.c mkatom.c ubf2.c array5.c eqf.c intcall.c mkcell.c ubf3.c array6.c ether.c mkvdate.c ufn.c atom.c findkey.c kbdsubrs.c mouseif.c ufs.c bbtsub.c foreign.c keyevent.c unixcomm.c bin.c fp.c binds.c asmbbt.c fvar.c mvs.c unwind.c bitblt.c gc.c uraid.c blt.c gc2.c kprint.c osmsg.c usrsubr.c byteswap.c gcarray.c perrno.c ldeboot.c ldeether.c uutils.c carcdr.c gccode.c rawcolor.c vars3.c gcfinal.c ldsout.c return.c vmemsave.c chardev.c gchtfind.c lineblt8.c rpc.c xc.c common.c gcmain3.c lisp2c.c rplcons.c z2.c xmkicon.c xbbt.c xinit.c xscroll.c xcursor.c xlspwin.c xrdopt.c xwinman.c dosmouse.c vesafns.asm vesainit.c vgainit.c kbdif.c dspsparc.il copyright launch.asm lpread.c lpsolve.c lpmain.c lpwrite.c lpdual.c lptran.c
OFILES = conspage.obj gcoflow.obj shift.obj dbgtool.obj gcr.obj gcrcell.obj llstk.obj gcscan.obj loopsops.obj storage.obj allocmds.obj dir.obj gvar2.obj lowlev1.obj subr.obj arith2.obj lowlev2.obj subr0374.obj arith3.obj doscomm.obj hardrtn.obj lsthandl.obj sxhash.obj arith4.obj draw.obj main.obj testtool.obj array.obj dsk.obj inet.obj misc7.obj timer.obj array2.obj dspif.obj initdsp.obj miscn.obj typeof.obj array3.obj initkbd.obj ubf1.obj array4.obj dspsubrs.obj initsout.obj mkatom.obj ubf2.obj array5.obj eqf.obj intcall.obj mkcell.obj ubf3.obj array6.obj ether.obj ufn.obj atom.obj findkey.obj kbdsubrs.obj mouseif.obj ufs.obj bbtsub.obj foreign.obj keyevent.obj unixcomm.obj bin.obj fp.obj binds.obj fvar.obj mvs.obj unwind.obj bitblt.obj gc.obj uraid.obj blt.obj gc2.obj kprint.obj osmsg.obj usrsubr.obj byteswap.obj gcarray.obj perrno.obj uutils.obj carcdr.obj asmbbt.obj gccode.obj vars3.obj gcfinal.obj ldsout.obj return.obj vmemsave.obj chardev.obj gchtfind.obj lineblt8.obj rpc.obj xc.obj common.obj gcmain3.obj lisp2c.obj rplcons.obj z2.obj vdate.obj $(COLORFILES) $(ARCHFILES) $(LPFILES)

View File

@@ -13,7 +13,7 @@ LDFLAGS = -g graphics.lib binmode.lib mouse.lib
RM = del
SRCFILES = conspage.c gcoflow.c shift.c dbgtool.c gcr.c gcrcell.c llstk.c gcscan.c loopsops.c storage.c allocmds.c dir.c gvar2.c lowlev1.c subr.c arith2.c lowlev2.c subr0374.c arith3.c doscomm.c hardrtn.c lsthandl.c sxhash.c arith4.c draw.c main.c testtool.c array.c dsk.c inet.c misc7.c timer.c array2.c dspif.c initdsp.c miscn.c typeof.c array3.c initkbd.c ubf1.c array4.c dspsubrs.c initsout.c mkatom.c ubf2.c array5.c eqf.c intcall.c mkcell.c ubf3.c array6.c ether.c mkvdate.c ufn.c atom.c findkey.c kbdsubrs.c mouseif.c ufs.c bbtsub.c foreign.c keyevent.c unixcomm.c bin.c fp.c binds.c asmbbt.c fvar.c mvs.c unwind.c bitblt.c gc.c uraid.c blt.c gc2.c kprint.c osmsg.c usrsubr.c byteswap.c gcarray.c perrno.c ldeboot.c ldeether.c uutils.c carcdr.c gccode.c rawcolor.c vars3.c gcfinal.c ldsout.c return.c vmemsave.c chardev.c gchtfind.c lineblt8.c rpc.c xc.c common.c gcmain3.c lisp2c.c rplcons.c z2.c find-dsp.l dsphack.l xmkicon.c xbbt.c xinit.c xscroll.c xcursor.c xlspwin.c xrdopt.c xwinman.c dosmouse.c vesafns.asm vesainit.c vgainit.c kbdif.c dspsparc.il copyright launch.asm lpread.c lpsolve.c lpmain.c lpwrite.c lpdual.c lptran.c
SRCFILES = conspage.c gcoflow.c shift.c dbgtool.c gcr.c gcrcell.c llstk.c gcscan.c loopsops.c storage.c allocmds.c dir.c gvar2.c lowlev1.c subr.c arith2.c lowlev2.c subr0374.c arith3.c doscomm.c hardrtn.c lsthandl.c sxhash.c arith4.c draw.c main.c testtool.c array.c dsk.c inet.c misc7.c timer.c array2.c dspif.c initdsp.c miscn.c typeof.c array3.c initkbd.c ubf1.c array4.c dspsubrs.c initsout.c mkatom.c ubf2.c array5.c eqf.c intcall.c mkcell.c ubf3.c array6.c ether.c mkvdate.c ufn.c atom.c findkey.c kbdsubrs.c mouseif.c ufs.c bbtsub.c foreign.c keyevent.c unixcomm.c bin.c fp.c binds.c asmbbt.c fvar.c mvs.c unwind.c bitblt.c gc.c uraid.c blt.c gc2.c kprint.c osmsg.c usrsubr.c byteswap.c gcarray.c perrno.c ldeboot.c ldeether.c uutils.c carcdr.c gccode.c rawcolor.c vars3.c gcfinal.c ldsout.c return.c vmemsave.c chardev.c gchtfind.c lineblt8.c rpc.c xc.c common.c gcmain3.c lisp2c.c rplcons.c z2.c xmkicon.c xbbt.c xinit.c xscroll.c xcursor.c xlspwin.c xrdopt.c xwinman.c dosmouse.c vesafns.asm vesainit.c vgainit.c kbdif.c dspsparc.il copyright launch.asm lpread.c lpsolve.c lpmain.c lpwrite.c lpdual.c lptran.c
OFILES = conspage.obj gcoflow.obj shift.obj dbgtool.obj gcr.obj gcrcell.obj llstk.obj gcscan.obj loopsops.obj storage.obj allocmds.obj dir.obj gvar2.obj lowlev1.obj subr.obj arith2.obj lowlev2.obj subr0374.obj arith3.obj doscomm.obj hardrtn.obj lsthandl.obj sxhash.obj arith4.obj draw.obj main.obj testtool.obj array.obj dsk.obj inet.obj misc7.obj timer.obj array2.obj dspif.obj initdsp.obj miscn.obj typeof.obj array3.obj initkbd.obj ubf1.obj array4.obj dspsubrs.obj initsout.obj mkatom.obj ubf2.obj array5.obj eqf.obj intcall.obj mkcell.obj ubf3.obj array6.obj ether.obj ufn.obj atom.obj findkey.obj kbdsubrs.obj mouseif.obj ufs.obj bbtsub.obj foreign.obj keyevent.obj unixcomm.obj bin.obj fp.obj binds.obj fvar.obj mvs.obj unwind.obj bitblt.obj gc.obj uraid.obj blt.obj gc2.obj kprint.obj osmsg.obj usrsubr.obj byteswap.obj gcarray.obj perrno.obj uutils.obj carcdr.obj asmbbt.obj gccode.obj vars3.obj gcfinal.obj ldsout.obj return.obj vmemsave.obj chardev.obj gchtfind.obj lineblt8.obj rpc.obj xc.obj common.obj gcmain3.obj lisp2c.obj rplcons.obj z2.obj vdate.obj $(COLORFILES) $(ARCHFILES) $(LPFILES)

View File

@@ -67,60 +67,6 @@ BYTESWAPFILES = $(OBJECTDIR)byteswap.o
default: ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether
# Special rules to create xc.c on Sun4
#run cpp to expand macros
$(OBJECTDIR)xc.i: $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emlglob.h $(INCDIR)address.h \
$(INCDIR)adr68k.h $(INCDIR)stack.h $(INCDIR)lspglob.h \
$(INCDIR)lsptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \
$(INCDIR)initatms.h $(INCDIR)gcdata.h \
$(INCDIR)arith.h $(INCDIR)stream.h \
$(INCDIR)tos1defs.h $(INCDIR)tosret.h \
$(INCDIR)tosfns.h $(INCDIR)inlineC.h \
$(INCDIR)inln68k.h
$(CC) -Qproduce .i $(DFLAGS) -I$(INCDIR) $(SRCDIR)xc.c -o $(OBJECTDIR)xc.i
#run c compiler to produce first pass assembly
$(OBJECTDIR)xc.s1: $(OBJECTDIR)xc.i
rm -f $(OBJECTDIR)xc.s1
/lib/ccom - $(FPFLAGS) <$(OBJECTDIR)xc.i >$(OBJECTDIR)xc.s1
#generate C program to remove dispatch loop, optimize
$(OBJECTDIR)dsphack.c: $(SRCDIR)dsphack.lex
rm -f $(OBJECTDIR)dsphack.c
lex -t $(SRCDIR)dsphack.lex > $(OBJECTDIR)dsphack.c
#uses this program to find dispatch
$(OBJECTDIR)find-dsp.c: $(SRCDIR)find-dsp.lex
rm -f $(OBJECTDIR)find-dsp.c
lex -t $(SRCDIR)find-dsp.lex > $(OBJECTDIR)find-dsp.c
$(OBJECTDIR)find-dsp: $(OBJECTDIR)find-dsp.c
$(CC) -o $(OBJECTDIR)find-dsp $(OBJECTDIR)find-dsp.c -ll
$(OBJECTDIR)dispatch-label.c: $(OBJECTDIR)find-dsp $(OBJECTDIR)xc.s1
rm -f $(OBJECTDIR)dispatch-label.c
$(OBJECTDIR)find-dsp < $(OBJECTDIR)xc.s1 >$(OBJECTDIR)dispatch-label.c
$(OBJECTDIR)dsphack: $(OBJECTDIR)dsphack.c $(OBJECTDIR)dispatch-label.c
$(CC) -o $(OBJECTDIR)dsphack $(OBJECTDIR)dispatch-label.c $(OBJECTDIR)dsphack.c -ll
rm -f $(OBJECTDIR)dispatch-label.o $(OBJECTDIR)dsphack.o
$(OBJECTDIR)xc.s2: $(OBJECTDIR)xc.s1 $(OBJECTDIR)dsphack
rm -f $(OBJECTDIR)xc.s2
$(OBJECTDIR)dsphack < $(OBJECTDIR)xc.s1 >$(OBJECTDIR)xc.s2
$(OBJECTDIR)xc.s3: $(OBJECTDIR)xc.s2 $(INLINE)
rm -f $(OBJECTDIR)xc.s3
/usr/lib/inline -i $(INLINE) < $(OBJECTDIR)xc.s2 > $(OBJECTDIR)xc.s3
#$(OBJECTDIR)xc.o: $(OBJECTDIR)xc.s3
# /bin/as -o $(OBJECTDIR)xc.o -O1 $(OBJECTDIR)xc.s3
########### debugging version of xc maker
$(OBJECTDIR)xc.o: $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emlglob.h $(INCDIR)address.h \
$(INCDIR)adr68k.h $(INCDIR)stack.h $(INCDIR)lspglob.h \
$(INCDIR)lsptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \
@@ -128,4 +74,4 @@ $(OBJECTDIR)xc.o: $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emlglob.h $(INCDI
$(INCDIR)arith.h $(INCDIR)stream.h \
$(INCDIR)tos1defs.h $(INCDIR)tosret.h \
$(INCDIR)tosfns.h $(INCDIR)inlineC.h
$(CC) $(DISPRFLAGS) -USPARCDISP -UOPDISP -DNOASM $(INLINE) -I$(INCDIR) $(SRCDIR)xc.c -o $(OBJECTDIR)xc.o
$(CC) $(DISPRFLAGS) $(INLINE) -I$(INCDIR) $(SRCDIR)xc.c -o $(OBJECTDIR)xc.o

View File

@@ -75,60 +75,6 @@ BYTESWAPFILES = $(OBJECTDIR)byteswap.o
default: ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether
# Special rules to create xc.c on Sun4
#run cpp to expand macros
$(OBJECTDIR)xc.i: $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emlglob.h $(INCDIR)address.h \
$(INCDIR)adr68k.h $(INCDIR)stack.h $(INCDIR)lspglob.h \
$(INCDIR)lsptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \
$(INCDIR)initatms.h $(INCDIR)gcdata.h \
$(INCDIR)arith.h $(INCDIR)stream.h \
$(INCDIR)tos1defs.h $(INCDIR)tosret.h \
$(INCDIR)tosfns.h $(INCDIR)inlineC.h \
$(INCDIR)inln68k.h
$(CC) -Qproduce .i $(DFLAGS) -I$(INCDIR) $(SRCDIR)xc.c -o $(OBJECTDIR)xc.i
#run c compiler to produce first pass assembly
$(OBJECTDIR)xc.s1: $(OBJECTDIR)xc.i
rm -f $(OBJECTDIR)xc.s1
/lib/ccom - $(FPFLAGS) <$(OBJECTDIR)xc.i >$(OBJECTDIR)xc.s1
#generate C program to remove dispatch loop, optimize
$(OBJECTDIR)dsphack.c: $(SRCDIR)dsphack.lex
rm -f $(OBJECTDIR)dsphack.c
lex -t $(SRCDIR)dsphack.lex > $(OBJECTDIR)dsphack.c
#uses this program to find dispatch
$(OBJECTDIR)find-dsp.c: $(SRCDIR)find-dsp.lex
rm -f $(OBJECTDIR)find-dsp.c
lex -t $(SRCDIR)find-dsp.lex > $(OBJECTDIR)find-dsp.c
$(OBJECTDIR)find-dsp: $(OBJECTDIR)find-dsp.c
$(CC) -o $(OBJECTDIR)find-dsp $(OBJECTDIR)find-dsp.c -ll
$(OBJECTDIR)dispatch-label.c: $(OBJECTDIR)find-dsp $(OBJECTDIR)xc.s1
rm -f $(OBJECTDIR)dispatch-label.c
$(OBJECTDIR)find-dsp < $(OBJECTDIR)xc.s1 >$(OBJECTDIR)dispatch-label.c
$(OBJECTDIR)dsphack: $(OBJECTDIR)dsphack.c $(OBJECTDIR)dispatch-label.c
$(CC) -o $(OBJECTDIR)dsphack $(OBJECTDIR)dispatch-label.c $(OBJECTDIR)dsphack.c -ll
rm -f $(OBJECTDIR)dispatch-label.o $(OBJECTDIR)dsphack.o
$(OBJECTDIR)xc.s2: $(OBJECTDIR)xc.s1 $(OBJECTDIR)dsphack
rm -f $(OBJECTDIR)xc.s2
$(OBJECTDIR)dsphack < $(OBJECTDIR)xc.s1 >$(OBJECTDIR)xc.s2
$(OBJECTDIR)xc.s3: $(OBJECTDIR)xc.s2 $(INLINE)
rm -f $(OBJECTDIR)xc.s3
/usr/lib/inline -i $(INLINE) < $(OBJECTDIR)xc.s2 > $(OBJECTDIR)xc.s3
#$(OBJECTDIR)xc.o: $(OBJECTDIR)xc.s3
# /bin/as -o $(OBJECTDIR)xc.o -O1 $(OBJECTDIR)xc.s3
########### debugging version of xc maker
$(OBJECTDIR)xc.o: $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emlglob.h $(INCDIR)address.h \
$(INCDIR)adr68k.h $(INCDIR)stack.h $(INCDIR)lspglob.h \
$(INCDIR)lsptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \
@@ -136,4 +82,4 @@ $(OBJECTDIR)xc.o: $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emlglob.h $(INCDI
$(INCDIR)arith.h $(INCDIR)stream.h \
$(INCDIR)tos1defs.h $(INCDIR)tosret.h \
$(INCDIR)tosfns.h $(INCDIR)inlineC.h
$(CC) $(DISPRFLAGS) -USPARCDISP -UOPDISP -DNOASM $(INLINE) -I$(INCDIR) $(SRCDIR)xc.c -o $(OBJECTDIR)xc.o
$(CC) $(DISPRFLAGS) $(INLINE) -I$(INCDIR) $(SRCDIR)xc.c -o $(OBJECTDIR)xc.o

View File

@@ -12,7 +12,7 @@ LDFLAGS = -g graphics.lib binmode.lib mouse.lib
RM = del
SRCFILES = conspage.c gcoflow.c shift.c dbgtool.c gcr.c gcrcell.c llstk.c gcscan.c loopsops.c storage.c allocmds.c dir.c gvar2.c lowlev1.c subr.c arith2.c lowlev2.c subr0374.c arith3.c doscomm.c hardrtn.c lsthandl.c sxhash.c arith4.c draw.c main.c testtool.c array.c dsk.c inet.c misc7.c timer.c array2.c dspif.c initdsp.c miscn.c typeof.c array3.c initkbd.c ubf1.c array4.c dspsubrs.c initsout.c mkatom.c ubf2.c array5.c eqf.c intcall.c mkcell.c ubf3.c array6.c ether.c mkvdate.c ufn.c atom.c findkey.c kbdsubrs.c mouseif.c ufs.c bbtsub.c foreign.c keyevent.c unixcomm.c bin.c fp.c binds.c asmbbt.c fvar.c mvs.c unwind.c bitblt.c gc.c uraid.c blt.c gc2.c kprint.c osmsg.c usrsubr.c byteswap.c gcarray.c perrno.c ldeboot.c ldeether.c uutils.c carcdr.c gccode.c rawcolor.c vars3.c gcfinal.c ldsout.c return.c vmemsave.c chardev.c gchtfind.c lineblt8.c rpc.c xc.c common.c gcmain3.c lisp2c.c rplcons.c z2.c find-dsp.l dsphack.l xmkicon.c xbbt.c xinit.c xscroll.c xcursor.c xlspwin.c xrdopt.c xwinman.c dosmouse.c vesafns.asm vesainit.c vgainit.c kbdif.c dspsparc.il copyright launch.asm lpread.c lpsolve.c lpmain.c lpwrite.c lpdual.c lptran.c
SRCFILES = conspage.c gcoflow.c shift.c dbgtool.c gcr.c gcrcell.c llstk.c gcscan.c loopsops.c storage.c allocmds.c dir.c gvar2.c lowlev1.c subr.c arith2.c lowlev2.c subr0374.c arith3.c doscomm.c hardrtn.c lsthandl.c sxhash.c arith4.c draw.c main.c testtool.c array.c dsk.c inet.c misc7.c timer.c array2.c dspif.c initdsp.c miscn.c typeof.c array3.c initkbd.c ubf1.c array4.c dspsubrs.c initsout.c mkatom.c ubf2.c array5.c eqf.c intcall.c mkcell.c ubf3.c array6.c ether.c mkvdate.c ufn.c atom.c findkey.c kbdsubrs.c mouseif.c ufs.c bbtsub.c foreign.c keyevent.c unixcomm.c bin.c fp.c binds.c asmbbt.c fvar.c mvs.c unwind.c bitblt.c gc.c uraid.c blt.c gc2.c kprint.c osmsg.c usrsubr.c byteswap.c gcarray.c perrno.c ldeboot.c ldeether.c uutils.c carcdr.c gccode.c rawcolor.c vars3.c gcfinal.c ldsout.c return.c vmemsave.c chardev.c gchtfind.c lineblt8.c rpc.c xc.c common.c gcmain3.c lisp2c.c rplcons.c z2.c xmkicon.c xbbt.c xinit.c xscroll.c xcursor.c xlspwin.c xrdopt.c xwinman.c dosmouse.c vesafns.asm vesainit.c vgainit.c kbdif.c dspsparc.il copyright launch.asm lpread.c lpsolve.c lpmain.c lpwrite.c lpdual.c lptran.c
OFILES = conspage.obj gcoflow.obj shift.obj dbgtool.obj gcr.obj gcrcell.obj llstk.obj gcscan.obj loopsops.obj storage.obj allocmds.obj dir.obj gvar2.obj lowlev1.obj subr.obj arith2.obj lowlev2.obj subr0374.obj arith3.obj doscomm.obj hardrtn.obj lsthandl.obj sxhash.obj arith4.obj draw.obj main.obj testtool.obj array.obj dsk.obj inet.obj misc7.obj timer.obj array2.obj dspif.obj initdsp.obj miscn.obj typeof.obj array3.obj initkbd.obj ubf1.obj array4.obj dspsubrs.obj initsout.obj mkatom.obj ubf2.obj array5.obj eqf.obj intcall.obj mkcell.obj ubf3.obj array6.obj ether.obj ufn.obj atom.obj findkey.obj kbdsubrs.obj mouseif.obj ufs.obj bbtsub.obj foreign.obj keyevent.obj unixcomm.obj bin.obj fp.obj binds.obj fvar.obj mvs.obj unwind.obj bitblt.obj gc.obj uraid.obj blt.obj gc2.obj kprint.obj osmsg.obj usrsubr.obj byteswap.obj gcarray.obj perrno.obj uutils.obj carcdr.obj asmbbt.obj gccode.obj vars3.obj gcfinal.obj ldsout.obj return.obj vmemsave.obj chardev.obj gchtfind.obj lineblt8.obj rpc.obj xc.obj common.obj gcmain3.obj lisp2c.obj rplcons.obj z2.obj vdate.obj $(COLORFILES) $(ARCHFILES) $(LPFILES)

View File

@@ -68,7 +68,6 @@ SRCFILES = $(SRCDIR)conspage.c $(SRCDIR)gcoflow.c $(SRCDIR)shift.c $(SRCDIR)dbgt
$(SRCDIR)rawcolor.c $(SRCDIR)vars3.c $(SRCDIR)gcfinal.c $(SRCDIR)ldsout.c $(SRCDIR)return.c \
$(SRCDIR)vmemsave.c $(SRCDIR)chardev.c $(SRCDIR)gchtfind.c $(SRCDIR)lineblt8.c $(SRCDIR)rpc.c \
$(SRCDIR)xc.c $(SRCDIR)common.c $(SRCDIR)gcmain3.c $(SRCDIR)lisp2c.c $(SRCDIR)rplcons.c $(SRCDIR)z2.c \
$(SRCDIR)find-dsp.l $(SRCDIR)dsphack.l \
$(SRCDIR)xmkicon.c $(SRCDIR)xbbt.c $(SRCDIR)xinit.c $(SRCDIR)xscroll.c $(SRCDIR)xcursor.c $(SRCDIR)xlspwin.c \
$(SRCDIR)xrdopt.c $(SRCDIR)xwinman.c \
$(SRCDIR)dosmouse.c $(SRCDIR)vesafns.asm $(SRCDIR)vesainit.c $(SRCDIR)vgainit.c $(SRCDIR)kbdif.c \

View File

@@ -73,7 +73,6 @@ SRCFILES = SRCDIR/conspage.c SRCDIR/gcoflow.c SRCDIR/shift.c SRCDIR/dbgtool.c SR
SRCDIR/rawcolor.c SRCDIR/vars3.c SRCDIR/gcfinal.c SRCDIR/ldsout.c SRCDIR/return.c \
SRCDIR/vmemsave.c SRCDIR/chardev.c SRCDIR/gchtfind.c SRCDIR/lineblt8.c SRCDIR/rpc.c \
SRCDIR/xc.c SRCDIR/common.c SRCDIR/gcmain3.c SRCDIR/lisp2c.c SRCDIR/rplcons.c SRCDIR/z2.c \
SRCDIR/find-dsp.l SRCDIR/dsphack.l \
SRCDIR/xmkicon.c SRCDIR/xbbt.c SRCDIR/xinit.c SRCDIR/xscroll.c SRCDIR/xcursor.c SRCDIR/xlspwin.c \
SRCDIR/xrdopt.c SRCDIR/xwinman.c \
SRCDIR/dosmouse.c SRCDIR/vesafns.asm SRCDIR/vesainit.c SRCDIR/vgainit.c SRCDIR/kbdif.c \

View File

@@ -73,7 +73,6 @@ SRCFILES = SRCDIR/conspage.c SRCDIR/gcoflow.c SRCDIR/shift.c SRCDIR/dbgtool.c SR
SRCDIR/rawcolor.c SRCDIR/vars3.c SRCDIR/gcfinal.c SRCDIR/ldsout.c SRCDIR/return.c \
SRCDIR/vmemsave.c SRCDIR/chardev.c SRCDIR/gchtfind.c SRCDIR/lineblt8.c SRCDIR/rpc.c \
SRCDIR/xc.c SRCDIR/common.c SRCDIR/gcmain3.c SRCDIR/lisp2c.c SRCDIR/rplcons.c SRCDIR/z2.c \
SRCDIR/find-dsp.l SRCDIR/dsphack.l \
SRCDIR/xmkicon.c SRCDIR/xbbt.c SRCDIR/xinit.c SRCDIR/xscroll.c SRCDIR/xcursor.c SRCDIR/xlspwin.c \
SRCDIR/xrdopt.c SRCDIR/xwinman.c \
SRCDIR/dosmouse.c SRCDIR/vesafns.asm SRCDIR/vesainit.c SRCDIR/vgainit.c SRCDIR/kbdif.c \

View File

@@ -26,7 +26,7 @@ CFLAGS = -I. -DDOS -DBYTESWAP -DKBINT -DNOPIXRECT -O2
LDFLAGS = -O2 graphics.lib binmode.lib mouse.lib
SRCFILES = ./conspage.c ./gcoflow.c ./shift.c ./dbgtool.c ./gcr.c ./llcolor.c ./gcrcell.c ./llstk.c ./gcscan.c ./loopsops.c ./storage.c ./allocmds.c ./dir.c ./gvar2.c ./lowlev1.c ./subr.c ./arith2.c ./lowlev2.c ./subr0374.c ./arith3.c ./doscomm.c ./hardrtn.c ./lsthandl.c ./sxhash.c ./arith4.c ./draw.c ./main.c ./testtool.c ./array.c ./dsk.c ./inet.c ./misc7.c ./timer.c ./array2.c ./dspif.c ./initdsp.c ./miscn.c ./typeof.c ./array3.c ./initkbd.c ./ubf1.c ./array4.c ./dspsubrs.c ./initsout.c ./mkatom.c ./ubf2.c ./array5.c ./eqf.c ./intcall.c ./mkcell.c ./ubf3.c ./array6.c ./ether.c ./mkvdate.c ./ufn.c ./atom.c ./findkey.c ./kbdsubrs.c ./mouseif.c ./ufs.c ./bbtsub.c ./foreign.c ./keyevent.c ./unixcomm.c ./bin.c ./fp.c ./binds.c ./asmbbt.c ./fvar.c ./mvs.c ./unwind.c ./bitblt.c ./gc.c ./uraid.c ./blt.c ./gc2.c ./kprint.c ./osmsg.c usrsubr.c ./byteswap.c ./gcarray.c ./perrno.c ./ldeboot.c ./ldeether.c ./uutils.c ./carcdr.c ./gccode.c ./rawcolor.c ./vars3.c ./gcfinal.c ./ldsout.c ./return.c ./vmemsave.c ./chardev.c ./gchtfind.c ./lineblt8.c ./rpc.c ./xc.c ./common.c ./gcmain3.c ./lisp2c.c ./rplcons.c ./z2.c ./find-dsp.l ./dsphack.l ./xmkicon.c ./xbbt.c ./xinit.c ./xscroll.c ./xcursor.c ./xlspwin.c ./xrdopt.c ./xwinman.c ./dosmouse.c ./vesafns.asm ./vesainit.c ./vgainit.c ./kbdif.c ./dspsparc.il ./copyright ./launch.asm
SRCFILES = ./conspage.c ./gcoflow.c ./shift.c ./dbgtool.c ./gcr.c ./llcolor.c ./gcrcell.c ./llstk.c ./gcscan.c ./loopsops.c ./storage.c ./allocmds.c ./dir.c ./gvar2.c ./lowlev1.c ./subr.c ./arith2.c ./lowlev2.c ./subr0374.c ./arith3.c ./doscomm.c ./hardrtn.c ./lsthandl.c ./sxhash.c ./arith4.c ./draw.c ./main.c ./testtool.c ./array.c ./dsk.c ./inet.c ./misc7.c ./timer.c ./array2.c ./dspif.c ./initdsp.c ./miscn.c ./typeof.c ./array3.c ./initkbd.c ./ubf1.c ./array4.c ./dspsubrs.c ./initsout.c ./mkatom.c ./ubf2.c ./array5.c ./eqf.c ./intcall.c ./mkcell.c ./ubf3.c ./array6.c ./ether.c ./mkvdate.c ./ufn.c ./atom.c ./findkey.c ./kbdsubrs.c ./mouseif.c ./ufs.c ./bbtsub.c ./foreign.c ./keyevent.c ./unixcomm.c ./bin.c ./fp.c ./binds.c ./asmbbt.c ./fvar.c ./mvs.c ./unwind.c ./bitblt.c ./gc.c ./uraid.c ./blt.c ./gc2.c ./kprint.c ./osmsg.c usrsubr.c ./byteswap.c ./gcarray.c ./perrno.c ./ldeboot.c ./ldeether.c ./uutils.c ./carcdr.c ./gccode.c ./rawcolor.c ./vars3.c ./gcfinal.c ./ldsout.c ./return.c ./vmemsave.c ./chardev.c ./gchtfind.c ./lineblt8.c ./rpc.c ./xc.c ./common.c ./gcmain3.c ./lisp2c.c ./rplcons.c ./z2.c ./xmkicon.c ./xbbt.c ./xinit.c ./xscroll.c ./xcursor.c ./xlspwin.c ./xrdopt.c ./xwinman.c ./dosmouse.c ./vesafns.asm ./vesainit.c ./vgainit.c ./kbdif.c ./dspsparc.il ./copyright ./launch.asm
OFILES = conspage.obj gcoflow.obj shift.obj dbgtool.obj gcr.obj llcolor.obj gcrcell.obj llstk.obj gcscan.obj loopsops.obj storage.obj allocmds.obj dir.obj gvar2.obj lowlev1.obj subr.obj arith2.obj lowlev2.obj subr0374.obj arith3.obj doscomm.obj hardrtn.obj lsthandl.obj sxhash.obj arith4.obj draw.obj main.obj testtool.obj array.obj dsk.obj inet.obj misc7.obj timer.obj array2.obj dspif.obj initdsp.obj miscn.obj typeof.obj array3.obj initkbd.obj ubf1.obj array4.obj dspsubrs.obj initsout.obj mkatom.obj ubf2.obj array5.obj eqf.obj intcall.obj mkcell.obj ubf3.obj array6.obj ether.obj ufn.obj atom.obj findkey.obj kbdsubrs.obj mouseif.obj ufs.obj bbtsub.obj foreign.obj keyevent.obj unixcomm.obj bin.obj fp.obj binds.obj fvar.obj mvs.obj unwind.obj bitblt.obj gc.obj uraid.obj blt.obj gc2.obj kprint.obj osmsg.obj usrsubr.obj byteswap.obj gcarray.obj perrno.obj uutils.obj carcdr.obj asmbbt.obj gccode.obj vars3.obj gcfinal.obj ldsout.obj return.obj vmemsave.obj chardev.obj gchtfind.obj lineblt8.obj rpc.obj xc.obj common.obj gcmain3.obj lisp2c.obj rplcons.obj z2.obj vdate.obj $(COLORFILES) $(ARCHFILES)