mirror of
https://github.com/Interlisp/maiko.git
synced 2026-03-16 06:47:22 +00:00
Compare commits
42 Commits
Fix-Unicod
...
testing123
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
439d92adbd | ||
|
|
c6a74b2516 | ||
|
|
d8e063bf02 | ||
|
|
0129b50127 | ||
|
|
a64a06466c | ||
|
|
12ef73a794 | ||
|
|
ddb1c9f717 | ||
|
|
923f472a8f | ||
|
|
aa32c8347b | ||
|
|
966a0bd7e0 | ||
|
|
e317c37f03 | ||
|
|
31927cd255 | ||
|
|
747b8e468e | ||
|
|
ef7149e8e4 | ||
|
|
64c04b5e2d | ||
|
|
1043a80d1f | ||
|
|
c60b522012 | ||
|
|
f019d3ddc2 | ||
|
|
64957b508d | ||
|
|
1116ee7b60 | ||
|
|
3a55f1d132 | ||
|
|
f2ac050e8e | ||
|
|
6fe94fd655 | ||
|
|
0d7dcc24bd | ||
|
|
2a71f330b5 | ||
|
|
694d9b08c6 | ||
|
|
d1e0e006da | ||
|
|
1fc0d28167 | ||
|
|
7274e16b24 | ||
|
|
c9a0d441c4 | ||
|
|
3ae9d558b1 | ||
|
|
015972c05c | ||
|
|
b21aeecf4c | ||
|
|
78943073c3 | ||
|
|
c19b184820 | ||
|
|
ec95bb7a51 | ||
|
|
2aacca596b | ||
|
|
d482cc461c | ||
|
|
9957f5c305 | ||
|
|
f0a53302ce | ||
|
|
275c5b9c13 | ||
|
|
261069f131 |
2
.gitignore
vendored
2
.gitignore
vendored
@@ -7,6 +7,8 @@
|
||||
# build directories
|
||||
*.386-x/**
|
||||
*.386/**
|
||||
*.ppc-x/**
|
||||
*.ppc/**
|
||||
*.sparc-x/**
|
||||
*.sparc/**
|
||||
*.x86_64-x/**
|
||||
|
||||
@@ -26,12 +26,6 @@ SET(MAIKO_DEFINITIONS
|
||||
"-DRELEASE=351"
|
||||
)
|
||||
|
||||
IF(UNIX)
|
||||
LIST(APPEND MAIKO_DEFINITIONS
|
||||
"-DLOGINT"
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
OPTION(MAIKO_DISPLAY_X11 "Use X11 for display." ON)
|
||||
IF(MAIKO_DISPLAY_X11)
|
||||
FIND_PACKAGE(X11 REQUIRED)
|
||||
@@ -65,19 +59,6 @@ IF(MAIKO_DISPLAY_X11)
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
IF(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" OR
|
||||
CMAKE_SYSTEM_PROCESSOR STREQUAL "amd64" OR
|
||||
CMAKE_SYSTEM_PROCESSOR STREQUAL "AMD64" OR
|
||||
CMAKE_SYSTEM_PROCESSOR STREQUAL "x86" OR
|
||||
CMAKE_SYSTEM_PROCESSOR STREQUAL "i386" OR
|
||||
CMAKE_SYSTEM_PROCESSOR STREQUAL "i686" OR
|
||||
CMAKE_SYSTEM_PROCESSOR MATCHES "arm.*" OR
|
||||
CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")
|
||||
LIST(APPEND MAIKO_DEFINITIONS
|
||||
"-DBYTESWAP"
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
IF(CMAKE_SYSTEM_NAME STREQUAL "SunOS")
|
||||
LIST(APPEND MAIKO_DEFINITIONS
|
||||
"-DOS5"
|
||||
@@ -95,10 +76,7 @@ ENDIF()
|
||||
# These don't build on Linux. Some are for SunOS and DOS. Others ... ?
|
||||
SET(BAD_SRCS
|
||||
src/atom.c
|
||||
src/cdaudio.c
|
||||
src/cdrom.c
|
||||
src/chatter.c
|
||||
src/Cldeetr.c
|
||||
src/codeconv.c
|
||||
src/codetbl.c
|
||||
src/doscomm.c
|
||||
@@ -252,7 +230,6 @@ SET(MAIKO_HDRS
|
||||
inc/bltdefs.h
|
||||
inc/byteswapdefs.h
|
||||
inc/car-cdrdefs.h
|
||||
inc/cdrom.h
|
||||
inc/cell.h
|
||||
inc/chardevdefs.h
|
||||
inc/commondefs.h
|
||||
|
||||
@@ -18,8 +18,6 @@ NOPIXRECT Used to suppress pixrect/pixwin options when they're not
|
||||
|
||||
AIX True if compiling for AIX
|
||||
sparc True if we're compiling on a SPARC machine.
|
||||
mc68020 True if we're compiling on a Motorola 680x0 machine.
|
||||
sun3 We're compiling for a Sun-3.
|
||||
|
||||
NOASM If true, suppress any attempt to include assembler
|
||||
versions of things in the emulator. In 'lispemul.c',
|
||||
@@ -54,8 +52,6 @@ PROFILE If true, the profiling control code is enabled. You must
|
||||
CHECK
|
||||
FSBCHECK If true, you see a trace of large free stack blocks when
|
||||
the stack is manipulated; was used for debugging stack code.
|
||||
FSMESSAGE If true, prints a message telling you about the hard links
|
||||
it makes (in support of version numbering), as it makes them.
|
||||
|
||||
WINDOW
|
||||
INIT Used when compiling an emulator to build a loadup. Use it
|
||||
@@ -119,13 +115,7 @@ FLTINT If true, use the floating-point exception interrupts to detect
|
||||
the condition code from each operation. For SPARCs, it's not
|
||||
clear that the interrupt trick works, because of code re-
|
||||
arrangement by the C compiler.
|
||||
BUFFER Used (apparently) only in testdisplay.c to decide if it should
|
||||
read the sysout directly, or buffer each page.
|
||||
|
||||
IFPAGE_DEFINED Used in .h files to prevent redefinition of Interface page.
|
||||
IOPAGE_DEFINED " for IO page definition.
|
||||
NOWAY Used to dike out C definitions of RPLACA and RPLACD in the
|
||||
file car-cdrmacro.h
|
||||
XWINDOW True if compiling for an X-windows emulator.
|
||||
|
||||
BIGATOMS True if this emulator will support 3-byte symbols, instead of
|
||||
|
||||
@@ -5,7 +5,7 @@ OEXT = .o
|
||||
#For debugging
|
||||
OPTFLAGS = -g
|
||||
FPFLAGS =
|
||||
DFLAGS = -DKBINT -DFLTINT -DNOASM -DOS4 -DI386 -DBYTESWAP -DCHECK -DLOGINT -DSUNDISPLAY
|
||||
DFLAGS = -DKBINT -DFLTINT -DNOASM -DOS4 -DI386 -DCHECK -DLOGINT -DSUNDISPLAY
|
||||
LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm
|
||||
INLINE = $(SRCDIR)disp386i.il
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ OEXT = .o
|
||||
OPTFLAGS = -O
|
||||
DISPOPTFLAGS = -O
|
||||
FPFLAGS =
|
||||
DFLAGS = -DKBINT -DOS4 -DI386 -DBYTESWAP -DCHECK -DLOGINT -DDISPLAYBUFFER -DSUNDISPLAY -DNEWBITBLT -DOPDISP
|
||||
DFLAGS = -DKBINT -DOS4 -DI386 -DCHECK -DLOGINT -DDISPLAYBUFFER -DSUNDISPLAY -DNEWBITBLT -DOPDISP
|
||||
LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm
|
||||
INLINE = $(SRCDIR)disp386i.il
|
||||
BITBLTFILE=$(OBJECTDIR)bitblt386i.o
|
||||
|
||||
@@ -5,7 +5,7 @@ OEXT = .o
|
||||
#For debugging
|
||||
OPTFLAGS = -g
|
||||
FPFLAGS =
|
||||
DFLAGS = -DKBINT -DFLTINT -DNOASM -DOS4 -DI386 -DBYTESWAP -DCHECK -DLOGINT -DSUNDISPLAY
|
||||
DFLAGS = -DKBINT -DFLTINT -DNOASM -DOS4 -DI386 -DCHECK -DLOGINT -DSUNDISPLAY
|
||||
LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm
|
||||
INLINE = $(SRCDIR)disp386i.il
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ OEXT = .o
|
||||
OPTFLAGS = -O -traditional
|
||||
DISPOPTFLAGS = -O -traditional
|
||||
FPFLAGS =
|
||||
DFLAGS = -DKBINT -DOS4 -DI386 -DBYTESWAP -DCHECK -DLOGINT -DDISPLAYBUFFER -DSUNDISPLAY -DNEWBITBLT -DOPDISP
|
||||
DFLAGS = -DKBINT -DOS4 -DI386 -DCHECK -DLOGINT -DDISPLAYBUFFER -DSUNDISPLAY -DNEWBITBLT -DOPDISP
|
||||
LDFLAGS = -lsuntool -lsunwindow -lpixrect -lc -lm
|
||||
INLINE = $(SRCDIR)disp386i.il
|
||||
BITBLTFILE=$(OBJECTDIR)bitblt386i.o
|
||||
|
||||
@@ -16,15 +16,13 @@ XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
|
||||
XFLAGS = -DXWINDOW
|
||||
|
||||
# This is to make the %$#@! Apollo cc happy
|
||||
OEXT = .o
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O2 -g3
|
||||
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
|
||||
DFLAGS = $(XFLAGS) -DRELEASE=351
|
||||
|
||||
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
||||
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
default : ../$(OSARCHNAME)/lde
|
||||
default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
# Options for MacOS, x86 processor, X windows
|
||||
|
||||
CC = clang -m32 $(CLANG_CFLAGS)
|
||||
OEXT=.o
|
||||
|
||||
XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
$(OBJECTDIR)xbbt.o \
|
||||
@@ -19,8 +18,7 @@ XFLAGS = -I/opt/X11/include -DXWINDOW
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O2 -g
|
||||
DEBUGFLAGS = # -DDEBUG -DOPTRACE
|
||||
DFLAGS = $(DEBUGFLAGS) \
|
||||
-DBYTESWAP -DLOGINT $(XFLAGS) \
|
||||
DFLAGS = $(DEBUGFLAGS) $(XFLAGS) \
|
||||
-DRELEASE=351 -DSTACKCHECK -DFSBCHECK -DPCTRACE
|
||||
|
||||
LDFLAGS = -L/opt/X11/lib -lX11 -lm
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
# Options for MacOS, x86 processor, X windows
|
||||
|
||||
CC = clang $(CLANG_CFLAGS)
|
||||
OEXT=.o
|
||||
|
||||
XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
$(OBJECTDIR)xbbt.o \
|
||||
@@ -14,17 +13,15 @@ XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
$(OBJECTDIR)xwinman.o
|
||||
|
||||
|
||||
XFLAGS = -I/opt/local/include -DXWINDOW
|
||||
XFLAGS = -I/opt/X11/include -DXWINDOW
|
||||
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O1 -g
|
||||
OPTFLAGS = -O2
|
||||
DEBUGFLAGS = # -DDEBUG -DOPTRACE
|
||||
DFLAGS = $(DEBUGFLAGS) \
|
||||
-DBYTESWAP -DLOGINT $(XFLAGS) \
|
||||
-DRELEASE=351
|
||||
DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=351
|
||||
|
||||
LDFLAGS = -L/opt/local/lib -lX11 -lm
|
||||
LDELDFLAGS = -L/opt/local/lib -lX11 -lm
|
||||
LDFLAGS = -L/opt/X11/lib -lX11 -lm
|
||||
LDELDFLAGS = -L/opt/X11/lib -lX11 -lm
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
|
||||
29
bin/makefile-darwin.ppc-x
Normal file
29
bin/makefile-darwin.ppc-x
Normal file
@@ -0,0 +1,29 @@
|
||||
# Options for MacOS, x86 processor, X windows
|
||||
|
||||
CC = cc $(GCC_CFLAGS)
|
||||
|
||||
XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
$(OBJECTDIR)xbbt.o \
|
||||
$(OBJECTDIR)dspif.o \
|
||||
$(OBJECTDIR)xinit.o \
|
||||
$(OBJECTDIR)xscroll.o \
|
||||
$(OBJECTDIR)xcursor.o \
|
||||
$(OBJECTDIR)xlspwin.o \
|
||||
$(OBJECTDIR)xrdopt.o \
|
||||
$(OBJECTDIR)xwinman.o
|
||||
|
||||
|
||||
XFLAGS = -I/usr/X11/include -DXWINDOW
|
||||
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O2 -g
|
||||
DEBUGFLAGS = # -DDEBUG -DOPTRACE
|
||||
DFLAGS = $(DEBUGFLAGS) $(XFLAGS) \
|
||||
-DRELEASE=351
|
||||
|
||||
LDFLAGS = -L/usr/X11/lib -lX11 -lm
|
||||
LDELDFLAGS = -L/usr/X11/lib -lX11 -lm
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex
|
||||
@@ -1,7 +1,6 @@
|
||||
# Options for MacOS, x86 processor, X windows
|
||||
|
||||
CC = clang -m64 $(CLANG_CFLAGS)
|
||||
OEXT=.o
|
||||
|
||||
XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
$(OBJECTDIR)xbbt.o \
|
||||
@@ -19,9 +18,7 @@ XFLAGS = -I/opt/X11/include -DXWINDOW
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O1 -g
|
||||
DEBUGFLAGS = # -DDEBUG -DOPTRACE
|
||||
DFLAGS = $(DEBUGFLAGS) \
|
||||
-DBYTESWAP -DLOGINT $(XFLAGS) \
|
||||
-DRELEASE=351
|
||||
DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=351
|
||||
|
||||
LDFLAGS = -L/opt/X11/lib -lX11 -lm
|
||||
LDELDFLAGS = -L/opt/X11/lib -lX11 -lm
|
||||
|
||||
@@ -6,7 +6,7 @@ ADMINFILES = makefile mkvdate.c
|
||||
|
||||
LPFILES = lpmain.obj lpread.obj lpsolve.obj lpwrite.obj lpdual.obj lptran.obj
|
||||
|
||||
CFLAGS = -DDOS -DBYTESWAP -DKBINT -DNOPIXRECT \
|
||||
CFLAGS = -DDOS -DKBINT -DNOPIXRECT \
|
||||
-DNOVERSION -DLPSOLVE -g
|
||||
|
||||
LDFLAGS = -g graphics.lib binmode.lib mouse.lib
|
||||
|
||||
@@ -15,16 +15,13 @@ XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
|
||||
XFLAGS = -I/usr/local/include -DXWINDOW
|
||||
|
||||
# This is to make the %$#@! Apollo cc happy
|
||||
OEXT = .o
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O1 -gdwarf-2
|
||||
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) \
|
||||
-DRELEASE=351
|
||||
DFLAGS = $(XFLAGS) -DRELEASE=351
|
||||
|
||||
LDFLAGS = -L/usr/local/lib -lX11 -lc -lm
|
||||
LDELDFLAGS = -L/usr/local/lib -lX11 -lc -lm
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
default : ../$(OSARCHNAME)/lde
|
||||
default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex
|
||||
|
||||
@@ -32,3 +32,5 @@ LDFLAGS =
|
||||
LDELDFLAGS =
|
||||
LDEETHERLDFLAGS =
|
||||
|
||||
# OSARCHDIR is the os/architecture dir, where executables all go.
|
||||
OSARCHDIR = ../$(OSARCHNAME)/
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
# Options for MacOS, x86 processor, X windows, for INIT processing
|
||||
|
||||
CC = clang -m32 $(CLANG_CFLAGS)
|
||||
OEXT=.o
|
||||
|
||||
XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
$(OBJECTDIR)xbbt.o \
|
||||
@@ -18,12 +17,12 @@ XFLAGS = -I/opt/X11/include -DXWINDOW
|
||||
|
||||
# OPTFLAGS is normally -O2, for INIT we want unoptimized in case we need to debug it
|
||||
OPTFLAGS = -O0 -g
|
||||
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) \
|
||||
-DRELEASE=351 -DNOVERSION -DINIT -DTRACE -DOPTRACE
|
||||
DEBUGFLAGS =
|
||||
DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=351 -DNOVERSION -DINIT
|
||||
|
||||
LDFLAGS = -L/usr/X11/lib -lX11 -lm
|
||||
LDELDFLAGS = -L/usr/X11/lib -lX11 -lm
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
default : ../$(OSARCHNAME)/lde
|
||||
default : ../$(OSARCHNAME)/ldeinit
|
||||
28
bin/makefile-init-darwin.aarch64
Normal file
28
bin/makefile-init-darwin.aarch64
Normal file
@@ -0,0 +1,28 @@
|
||||
# Options for MacOS, aarch64 processor, X windows, for INIT processing
|
||||
|
||||
CC = clang $(CLANG_CFLAGS)
|
||||
|
||||
XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
$(OBJECTDIR)xbbt.o \
|
||||
$(OBJECTDIR)dspif.o \
|
||||
$(OBJECTDIR)xinit.o \
|
||||
$(OBJECTDIR)xscroll.o \
|
||||
$(OBJECTDIR)xcursor.o \
|
||||
$(OBJECTDIR)xlspwin.o \
|
||||
$(OBJECTDIR)xrdopt.o \
|
||||
$(OBJECTDIR)xwinman.o
|
||||
|
||||
|
||||
XFLAGS = -I/opt/X11/include -DXWINDOW
|
||||
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O0 -g3
|
||||
DEBUGFLAGS = # -DDEBUG -DOPTRACE
|
||||
DFLAGS = $(DEBUGFLAGS) $(XFLAGS) -DRELEASE=351 -DNOVERSION -DINIT
|
||||
|
||||
LDFLAGS = -L/opt/X11/lib -lX11 -lm
|
||||
LDELDFLAGS = -L/opt/X11/lib -lX11 -lm
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
default : ../$(OSARCHNAME)/ldeinit
|
||||
@@ -18,26 +18,22 @@
|
||||
|
||||
# Options for SPARC under Solaris-2 operating system, X windows.
|
||||
|
||||
CC = gcc
|
||||
CC = cc -m32 $(DEVSTUDIO_CFLAGS)
|
||||
|
||||
XFILES = $(OBJECTDIR)xlspwin.o \
|
||||
$(OBJECTDIR)xbbt.o \
|
||||
$(OBJECTDIR)xmkicon.o \
|
||||
$(OBJECTDIR)xrdopt.o \
|
||||
XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
$(OBJECTDIR)xbbt.o \
|
||||
$(OBJECTDIR)dspif.o \
|
||||
$(OBJECTDIR)xinit.o \
|
||||
$(OBJECTDIR)xscroll.o \
|
||||
$(OBJECTDIR)xcursor.o \
|
||||
$(OBJECTDIR)xwinman.o \
|
||||
$(OBJECTDIR)dspif.o \
|
||||
$(OBJECTDIR)kbdif.o \
|
||||
$(OBJECTDIR)xinit.o
|
||||
$(OBJECTDIR)xlspwin.o \
|
||||
$(OBJECTDIR)xrdopt.o \
|
||||
$(OBJECTDIR)xwinman.o
|
||||
|
||||
XFLAGS = -DXWINDOW
|
||||
|
||||
XFLAGS = -DXWINDOW -I/usr/openwin/include
|
||||
|
||||
# This is to make the %$#@! Apollo cc happy
|
||||
OEXT = .o
|
||||
# OPTFLAGS is normally -g for MAKEINIT, as it needs debugging often.
|
||||
OPTFLAGS = -g3 -O
|
||||
OPTFLAGS = -g3 -O0
|
||||
|
||||
# Set any debugging options in DEBUGFLAGS. E.g., to enable stack
|
||||
# checking, use -DSTACKCHECK; to enable the fn-call-time stack
|
||||
@@ -45,9 +41,7 @@ OPTFLAGS = -g3 -O
|
||||
|
||||
DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK
|
||||
|
||||
MACHINEFLAGS = -DOS5 -DUSE_DLPI \
|
||||
-I$(OPENWINHOME)/include \
|
||||
-DLOGINT -DLOCK_X_UPDATES
|
||||
MACHINEFLAGS = -DOS5 -DUSE_DLPI -DLOCK_X_UPDATES
|
||||
|
||||
# The LDEINIT wants to have NOVERSION set, so we don't hang up on
|
||||
# any change-over in versions.
|
||||
@@ -59,12 +53,12 @@ DFLAGS = -DINIT \
|
||||
-DNOVERSION -DRELEASE=351
|
||||
|
||||
|
||||
LDFLAGS = -R$(OPENWINHOME)/lib -L$(OPENWINHOME)/lib -lX11 -lc -lm -lsocket -lnsl
|
||||
LDELDFLAGS = -R$(OPENWINHOME)/lib -L$(OPENWINHOME)/lib -lX11 -lc -lm -lsocket -lnsl
|
||||
LDFLAGS = -lX11 -lc -lm -lsocket -lnsl
|
||||
LDELDFLAGS = -lX11 -lc -lm -lsocket -lnsl
|
||||
LDEETHERLDFLAGS = -lc -lm -lsocket -lnsl
|
||||
|
||||
DLPIFILES = $(OBJECTDIR)dlpi.o
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether
|
||||
default : ../$(OSARCHNAME)/ldeinit
|
||||
@@ -15,15 +15,13 @@ XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
|
||||
XFLAGS = -DXWINDOW
|
||||
|
||||
# This is to make the %$#@! Apollo cc happy
|
||||
OEXT = .o
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O2 -g3
|
||||
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
|
||||
DFLAGS = $(XFLAGS) -DRELEASE=351
|
||||
|
||||
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
||||
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
default : ../$(OSARCHNAME)/lde
|
||||
default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex
|
||||
|
||||
@@ -15,15 +15,13 @@ XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
|
||||
XFLAGS = -DXWINDOW
|
||||
|
||||
# This is to make the %$#@! Apollo cc happy
|
||||
OEXT = .o
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O2 -g3
|
||||
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
|
||||
DFLAGS = $(XFLAGS) -DRELEASE=351
|
||||
|
||||
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
||||
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
default : ../$(OSARCHNAME)/lde
|
||||
default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex
|
||||
|
||||
@@ -16,15 +16,13 @@ XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
|
||||
XFLAGS = -DXWINDOW
|
||||
|
||||
# This is to make the %$#@! Apollo cc happy
|
||||
OEXT = .o
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O2 -g3
|
||||
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
|
||||
DFLAGS = $(XFLAGS) -DRELEASE=351
|
||||
|
||||
LDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
||||
LDELDFLAGS = -L/usr/X11/lib -lX11 -lc -lm
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
default : ../$(OSARCHNAME)/lde
|
||||
default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex
|
||||
|
||||
@@ -15,15 +15,13 @@ XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
|
||||
XFLAGS = -I/usr/X11R6/include -DXWINDOW
|
||||
|
||||
# This is to make the %$#@! Apollo cc happy
|
||||
OEXT = .o
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O2 -g3
|
||||
DFLAGS = -DBYTESWAP -DLOGINT $(XFLAGS) -DRELEASE=351
|
||||
DFLAGS = $(XFLAGS) -DRELEASE=351
|
||||
|
||||
LDFLAGS = -L/usr/X11R6/lib -lX11 -lc -lm
|
||||
LDELDFLAGS = -L/usr/X11R6/lib -lX11 -lc -lm
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
default : ../$(OSARCHNAME)/lde
|
||||
default : ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldex
|
||||
|
||||
@@ -24,8 +24,6 @@ XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
|
||||
XFLAGS = -DXWINDOW
|
||||
|
||||
# This is to make the %$#@! Apollo cc happy
|
||||
OEXT = .o
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O2 -g
|
||||
|
||||
@@ -37,7 +35,7 @@ DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK
|
||||
|
||||
DFLAGS = $(XFLAGS) \
|
||||
$(DEBUGFLAGS) \
|
||||
-DOS5 -DBYTESWAP -DLOGINT \
|
||||
-DOS5 \
|
||||
-DLOCK_X_UPDATES \
|
||||
-DRELEASE=351
|
||||
|
||||
@@ -49,4 +47,4 @@ DLPIFILES = # $(OBJECTDIR)dlpi.o
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
default: ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether
|
||||
default: ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether ../$(OSARCHNAME)/ldex
|
||||
|
||||
@@ -24,8 +24,6 @@ XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
|
||||
XFLAGS = -DXWINDOW
|
||||
|
||||
# This is to make the %$#@! Apollo cc happy
|
||||
OEXT = .o
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O2 -g3
|
||||
|
||||
@@ -38,7 +36,6 @@ DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK
|
||||
DFLAGS = $(XFLAGS) \
|
||||
$(DEBUGFLAGS) \
|
||||
-DOS5 -DUSE_DLPI \
|
||||
-DBYTESWAP -DLOGINT \
|
||||
-DLOCK_X_UPDATES \
|
||||
-I$(OPENWINHOME)/include \
|
||||
-DRELEASE=210
|
||||
@@ -51,4 +48,4 @@ DLPIFILES = $(OBJECTDIR)dlpi.o
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
default: ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether
|
||||
default: ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether ../$(OSARCHNAME)/ldex
|
||||
|
||||
@@ -31,8 +31,6 @@ XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
|
||||
XFLAGS = -DXWINDOW
|
||||
|
||||
# This is to make the %$#@! Apollo cc happy
|
||||
OEXT = .o
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O2 -g3
|
||||
|
||||
@@ -42,7 +40,7 @@ OPTFLAGS = -O2 -g3
|
||||
|
||||
DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK
|
||||
|
||||
MACHINEFLAGS = -DOS5 -DUSE_DLPI -DLOGINT -DLOCK_X_UPDATES
|
||||
MACHINEFLAGS = -DOS5 -DUSE_DLPI -DLOCK_X_UPDATES
|
||||
|
||||
DFLAGS = $(XFLAGS) \
|
||||
$(DEBUGFLAGS) \
|
||||
@@ -57,4 +55,4 @@ DLPIFILES = $(OBJECTDIR)dlpi.o
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
default: ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether
|
||||
default: ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether ../$(OSARCHNAME)/ldex
|
||||
|
||||
@@ -24,8 +24,6 @@ XFILES = $(OBJECTDIR)xmkicon.o \
|
||||
|
||||
XFLAGS = -DXWINDOW
|
||||
|
||||
# This is to make the %$#@! Apollo cc happy
|
||||
OEXT = .o
|
||||
# OPTFLAGS is normally -O2.
|
||||
OPTFLAGS = -O2 -g
|
||||
|
||||
@@ -37,7 +35,7 @@ DEBUGFLAGS = # -DSTACKCHECK -DFNSTKCHECK
|
||||
|
||||
DFLAGS = $(XFLAGS) \
|
||||
$(DEBUGFLAGS) \
|
||||
-DOS5 -DBYTESWAP -DLOGINT \
|
||||
-DOS5 \
|
||||
-DLOCK_X_UPDATES \
|
||||
-DUSE_DLPI \
|
||||
-DRELEASE=351
|
||||
@@ -50,4 +48,4 @@ DLPIFILES = $(OBJECTDIR)dlpi.o
|
||||
|
||||
OBJECTDIR = ../$(RELEASENAME)/
|
||||
|
||||
default: ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether
|
||||
default: ../$(OSARCHNAME)/lde ../$(OSARCHNAME)/ldeether ../$(OSARCHNAME)/ldex
|
||||
|
||||
1543
bin/makefile-tail
1543
bin/makefile-tail
File diff suppressed because it is too large
Load Diff
@@ -59,7 +59,7 @@ osversion=`osversion`
|
||||
echo "making so far for ${osversion} on ${architecture}."
|
||||
case "$display" in
|
||||
init) display=single
|
||||
releasename=init.${architecture}
|
||||
releasename=init-${osversion}.${architecture}
|
||||
ldename=ldeinit
|
||||
;;
|
||||
single) releasename=${osversion}.${architecture}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#ifndef XKEYMAP_H
|
||||
#define XKEYMAP_H 1
|
||||
|
||||
/* $Id: XKeymap.h,v 1.2 1999/01/03 02:05:48 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved
|
||||
*/
|
||||
|
||||
@@ -252,3 +255,5 @@ int generic_X_keymap[] = {
|
||||
-1, -1, -1};
|
||||
|
||||
#endif /* XWINDOW */
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef ALLOCMDSDEFS_H
|
||||
#define ALLOCMDSDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
LispPTR initmdspage(register LispPTR *base, register DLword size, register LispPTR prev);
|
||||
LispPTR *alloc_mdspage(register short int type);
|
||||
#endif
|
||||
|
||||
303
inc/arith.h
303
inc/arith.h
@@ -1,10 +1,6 @@
|
||||
#ifndef ARITH_H
|
||||
#define ARITH_H 1
|
||||
/* $Id: arith.h,v 1.2 1999/01/03 02:05:52 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
|
||||
|
||||
/* $Id: arith.h,v 1.2 1999/01/03 02:05:52 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
@@ -13,188 +9,155 @@
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
#define MAX_SMALL 65535 /* == 0x0000FFFF */
|
||||
#define MIN_SMALL -65536 /* == 0xFFFF0000 */
|
||||
|
||||
#define MAX_SMALL 65535 /* == 0x0000FFFF */
|
||||
#define MIN_SMALL -65536 /* == 0xFFFF0000 */
|
||||
|
||||
#define MAX_FIXP 2147483647 /* == 0x7FFFFFFF */
|
||||
#define MIN_FIXP -2147483648 /* == 0x80000000 */
|
||||
|
||||
#define GetSmalldata(x) (((SEGMASK & x)==S_POSITIVE) ? (0xFFFF & x) : (((SEGMASK & x)==S_NEGATIVE) ? (0xFFFF0000 | x) : error("Not smallp address")))
|
||||
|
||||
#define GetSmallp(x) ((0xFFFF0000 & x) ? (((0xFFFF0000 & x)==0xFFFF0000) ? (S_NEGATIVE | (0xFFFF & x)) : error("Not Smallp data") ) : (S_POSITIVE | (0xFFFF & x)))
|
||||
|
||||
|
||||
/* arg sour is Lisp address, arg dest is a box to store the number */
|
||||
#define GetNumber(sour, dest){ \
|
||||
switch(SEGMASK & sour){\
|
||||
case S_POSITIVE: \
|
||||
dest = 0xFFFF & sour; \
|
||||
break; \
|
||||
case S_NEGATIVE: \
|
||||
dest = 0xFFFF0000 | sour; \
|
||||
break; \
|
||||
default: \
|
||||
if(GetTypeNumber( sour ) != TYPE_FIXP){ \
|
||||
ufn(0xFF & (*PC)); \
|
||||
return; \
|
||||
} \
|
||||
dest = *((int *)Addr68k_from_LADDR(sour)); \
|
||||
} \
|
||||
}
|
||||
#define MAX_FIXP 2147483647 /* == 0x7FFFFFFF */
|
||||
#define MIN_FIXP -2147483648 /* == 0x80000000 */
|
||||
|
||||
#define GetSmalldata(x) \
|
||||
(((SEGMASK & x) == S_POSITIVE) \
|
||||
? (0xFFFF & x) \
|
||||
: (((SEGMASK & x) == S_NEGATIVE) ? (0xFFFF0000 | x) : error("Not smallp address")))
|
||||
|
||||
#define GetSmallp(x) \
|
||||
((0xFFFF0000 & x) ? (((0xFFFF0000 & x) == 0xFFFF0000) ? (S_NEGATIVE | (0xFFFF & x)) \
|
||||
: error("Not Smallp data")) \
|
||||
: (S_POSITIVE | (0xFFFF & x)))
|
||||
|
||||
#define FIXP_VALUE(dest) *((int *)Addr68k_from_LADDR(dest))
|
||||
|
||||
#define FLOATP_VALUE(dest) *((float *)Addr68k_from_LADDR(dest))
|
||||
|
||||
#define N_GETNUMBER(sour, dest, label) \
|
||||
{ dest = sour; /* access memory once */ \
|
||||
switch(SEGMASK & dest){ \
|
||||
case S_POSITIVE: \
|
||||
dest = 0xFFFF & (dest); \
|
||||
break; \
|
||||
case S_NEGATIVE: \
|
||||
dest = 0xFFFF0000 | (dest); \
|
||||
break; \
|
||||
default: \
|
||||
if (GetTypeNumber( dest ) != TYPE_FIXP) \
|
||||
{ goto label; } \
|
||||
dest = FIXP_VALUE(dest); \
|
||||
} \
|
||||
}
|
||||
#define N_GETNUMBER(sour, dest, label) \
|
||||
do { \
|
||||
dest = sour; /* access memory once */ \
|
||||
switch (SEGMASK & dest) { \
|
||||
case S_POSITIVE: dest = 0xFFFF & (dest); break; \
|
||||
case S_NEGATIVE: dest = 0xFFFF0000 | (dest); break; \
|
||||
default: \
|
||||
if (GetTypeNumber(dest) != TYPE_FIXP) goto label; \
|
||||
dest = FIXP_VALUE(dest); \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#define N_IGETNUMBER(sour, dest, label) \
|
||||
{ dest = sour; /* access memory once */ \
|
||||
switch(SEGMASK & dest){ \
|
||||
case S_POSITIVE: \
|
||||
dest = 0xFFFF & dest; \
|
||||
break; \
|
||||
case S_NEGATIVE: \
|
||||
dest = 0xFFFF0000 | dest; \
|
||||
break; \
|
||||
default: \
|
||||
switch (GetTypeNumber( dest )) { \
|
||||
case TYPE_FIXP: \
|
||||
dest = FIXP_VALUE(dest); \
|
||||
break; \
|
||||
case TYPE_FLOATP: \
|
||||
{register float temp; \
|
||||
temp = FLOATP_VALUE(dest) ; \
|
||||
if ( (temp > ((float) 0x7fffffff)) || \
|
||||
(temp < ((float) 0x80000000)) ) \
|
||||
goto label; \
|
||||
dest = (int) temp; \
|
||||
} \
|
||||
break; \
|
||||
default: goto label; \
|
||||
} \
|
||||
break; \
|
||||
} \
|
||||
}
|
||||
|
||||
|
||||
#define ARITH_SWITCH(arg, result) \
|
||||
switch((int) arg & 0xFFFF0000){ \
|
||||
case 0: \
|
||||
result = (S_POSITIVE | (int) arg); \
|
||||
break; \
|
||||
case 0xFFFF0000: \
|
||||
result = (S_NEGATIVE | (0xFFFF & (int) arg)); \
|
||||
break; \
|
||||
default:{register LispPTR *wordp; \
|
||||
/* arg is FIXP, call createcell */ \
|
||||
wordp = (LispPTR *) createcell68k(TYPE_FIXP); \
|
||||
*((int *)wordp) = (int) arg; \
|
||||
result = (LADDR_from_68k(wordp)); \
|
||||
break; \
|
||||
} \
|
||||
}
|
||||
#define N_IGETNUMBER(sour, dest, label) \
|
||||
do { \
|
||||
dest = sour; /* access memory once */ \
|
||||
switch (SEGMASK & dest) { \
|
||||
case S_POSITIVE: dest = 0xFFFF & dest; break; \
|
||||
case S_NEGATIVE: dest = 0xFFFF0000 | dest; break; \
|
||||
default: \
|
||||
switch (GetTypeNumber(dest)) { \
|
||||
case TYPE_FIXP: dest = FIXP_VALUE(dest); break; \
|
||||
case TYPE_FLOATP: { \
|
||||
register float temp; \
|
||||
temp = FLOATP_VALUE(dest); \
|
||||
if ((temp > ((float)0x7fffffff)) || (temp < ((float)0x80000000))) goto label; \
|
||||
dest = (int)temp; \
|
||||
} break; \
|
||||
default: goto label; \
|
||||
} \
|
||||
break; \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#define ARITH_SWITCH(arg, result) \
|
||||
do { \
|
||||
switch ((int)arg & 0xFFFF0000) { \
|
||||
case 0: result = (S_POSITIVE | (int)arg); break; \
|
||||
case 0xFFFF0000: result = (S_NEGATIVE | (0xFFFF & (int)arg)); break; \
|
||||
default: { \
|
||||
register LispPTR *wordp; \
|
||||
/* arg is FIXP, call createcell */ \
|
||||
wordp = (LispPTR *)createcell68k(TYPE_FIXP); \
|
||||
*((int *)wordp) = (int)arg; \
|
||||
result = (LADDR_from_68k(wordp)); \
|
||||
break; \
|
||||
} \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
/* *******
|
||||
NEED to See if this is faster than the N_ARITH_SWITCH macro
|
||||
NEED to See if this is faster than the N_ARITH_SWITCH macro
|
||||
|
||||
if( (MIN_FIXP <= result) && (result <= MAX_FIXP) ){
|
||||
if(0 <= result){
|
||||
if(result <= MAX_SMALL)
|
||||
return(S_POSITIVE | result);
|
||||
else{
|
||||
wordp = createcell68k(TYPE_FIXP);
|
||||
*((unsigned int *)wordp) = result;
|
||||
return(LADDR_from_68k(wordp));
|
||||
}
|
||||
}else{
|
||||
if(MIN_SMALL <= result)
|
||||
return(S_NEGATIVE | (0xFFFF & result));
|
||||
else{
|
||||
wordp = createcell68k(TYPE_FIXP);
|
||||
*((unsigned int *)wordp) = result;
|
||||
return(LADDR_from_68k(wordp));
|
||||
}
|
||||
}/
|
||||
}
|
||||
if( (MIN_FIXP <= result) && (result <= MAX_FIXP) ){
|
||||
if(0 <= result){
|
||||
if(result <= MAX_SMALL)
|
||||
return(S_POSITIVE | result);
|
||||
else{
|
||||
wordp = createcell68k(TYPE_FIXP);
|
||||
*((unsigned int *)wordp) = result;
|
||||
return(LADDR_from_68k(wordp));
|
||||
}
|
||||
}else{
|
||||
if(MIN_SMALL <= result)
|
||||
return(S_NEGATIVE | (0xFFFF & result));
|
||||
else{
|
||||
wordp = createcell68k(TYPE_FIXP);
|
||||
*((unsigned int *)wordp) = result;
|
||||
return(LADDR_from_68k(wordp));
|
||||
}
|
||||
}/
|
||||
}
|
||||
****** */
|
||||
|
||||
#define N_ARITH_SWITCH(arg) \
|
||||
do { \
|
||||
switch (arg & 0xFFFF0000) { \
|
||||
case 0: return (S_POSITIVE | arg); \
|
||||
case 0xFFFF0000: return (S_NEGATIVE | (0xFFFF & arg)); \
|
||||
default: { \
|
||||
register LispPTR *fixpp; \
|
||||
/* arg is FIXP, call createcell */ \
|
||||
fixpp = (LispPTR *)createcell68k(TYPE_FIXP); \
|
||||
*((int *)fixpp) = arg; \
|
||||
return (LADDR_from_68k(fixpp)); \
|
||||
} \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#define N_IARITH_BODY_2(a, tos, op) \
|
||||
do { \
|
||||
register int arg1, arg2; \
|
||||
\
|
||||
N_IGETNUMBER(a, arg1, do_ufn); \
|
||||
N_IGETNUMBER(tos, arg2, do_ufn); \
|
||||
\
|
||||
arg1 = arg1 op arg2; \
|
||||
\
|
||||
N_ARITH_SWITCH(arg1); \
|
||||
\
|
||||
do_ufn: \
|
||||
ERROR_EXIT(tos); \
|
||||
} while (0)
|
||||
|
||||
#define N_ARITH_SWITCH(arg) \
|
||||
switch(arg & 0xFFFF0000){ \
|
||||
case 0: \
|
||||
return(S_POSITIVE | arg); \
|
||||
case 0xFFFF0000: \
|
||||
return(S_NEGATIVE | (0xFFFF & arg)); \
|
||||
default:{register LispPTR *fixpp; \
|
||||
/* arg is FIXP, call createcell */ \
|
||||
fixpp = (LispPTR *) createcell68k(TYPE_FIXP); \
|
||||
*((int *)fixpp) = arg; \
|
||||
return(LADDR_from_68k(fixpp)); \
|
||||
} \
|
||||
}
|
||||
|
||||
|
||||
#define N_IARITH_BODY_2(a, tos, op) \
|
||||
{ \
|
||||
register int arg1,arg2; \
|
||||
\
|
||||
N_IGETNUMBER( a, arg1, do_ufn); \
|
||||
N_IGETNUMBER( tos, arg2, do_ufn); \
|
||||
\
|
||||
arg1 = arg1 op arg2; \
|
||||
\
|
||||
N_ARITH_SWITCH(arg1); \
|
||||
\
|
||||
do_ufn: ERROR_EXIT(tos); \
|
||||
}
|
||||
|
||||
|
||||
#define N_ARITH_BODY_1(a, n, op) \
|
||||
{ \
|
||||
register int arg1; \
|
||||
\
|
||||
N_GETNUMBER( a, arg1, do_ufn); \
|
||||
\
|
||||
arg1 = arg1 op n; \
|
||||
\
|
||||
N_ARITH_SWITCH(arg1); \
|
||||
\
|
||||
do_ufn: ERROR_EXIT(a); \
|
||||
}
|
||||
|
||||
|
||||
#define N_ARITH_BODY_1_UNSIGNED(a, n, op) \
|
||||
{ \
|
||||
register unsigned int arg1; \
|
||||
\
|
||||
N_GETNUMBER( a, arg1, do_ufn); \
|
||||
\
|
||||
arg1 = arg1 op n; \
|
||||
\
|
||||
N_ARITH_SWITCH(arg1); \
|
||||
\
|
||||
do_ufn: ERROR_EXIT(a); \
|
||||
}
|
||||
#define N_ARITH_BODY_1(a, n, op) \
|
||||
do { \
|
||||
register int arg1; \
|
||||
\
|
||||
N_GETNUMBER(a, arg1, do_ufn); \
|
||||
\
|
||||
arg1 = arg1 op n; \
|
||||
\
|
||||
N_ARITH_SWITCH(arg1); \
|
||||
\
|
||||
do_ufn: \
|
||||
ERROR_EXIT(a); \
|
||||
} while (0)
|
||||
|
||||
#define N_ARITH_BODY_1_UNSIGNED(a, n, op) \
|
||||
do { \
|
||||
register unsigned int arg1; \
|
||||
\
|
||||
N_GETNUMBER(a, arg1, do_ufn); \
|
||||
\
|
||||
arg1 = arg1 op n; \
|
||||
\
|
||||
N_ARITH_SWITCH(arg1); \
|
||||
\
|
||||
do_ufn: \
|
||||
ERROR_EXIT(a); \
|
||||
} while (0)
|
||||
|
||||
#endif /* ARITH_H */
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef ARITH2DEFS_H
|
||||
#define ARITH2DEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR N_OP_plus2(int tosm1, int tos);
|
||||
LispPTR N_OP_iplus2(int tosm1, int tos);
|
||||
LispPTR N_OP_difference(int tosm1, int tos);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef ARITH3DEFS_H
|
||||
#define ARITH3DEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR N_OP_makenumber(int tosm1, int tos);
|
||||
LispPTR N_OP_boxiplus(register int a, int tos);
|
||||
LispPTR N_OP_boxidiff(register int a, int tos);
|
||||
|
||||
@@ -2,9 +2,6 @@
|
||||
#define ARRAY_H 1
|
||||
/* $Id: array.h,v 1.2 1999/01/03 02:05:53 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* (C) Copyright 1989-92 Venue. All Rights Reserved. */
|
||||
@@ -12,6 +9,9 @@
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
#include "version.h" /* for BIGVM */
|
||||
|
||||
#ifndef BYTESWAP
|
||||
/********************************/
|
||||
/* Normal byte-order version */
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef ARRAY2DEFS_H
|
||||
#define ARRAY2DEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR N_OP_misc4(register LispPTR data, register LispPTR base, register LispPTR typenumber,
|
||||
register LispPTR inx, int alpha);
|
||||
#endif
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#ifndef ARRAY3DEFS_H
|
||||
#define ARRAY3DEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR N_OP_aref1(register LispPTR arrayarg, register LispPTR inx);
|
||||
#endif
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#ifndef ARRAY4DEFS_H
|
||||
#define ARRAY4DEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR N_OP_aset1(register LispPTR data, LispPTR arrayarg, register int inx);
|
||||
#endif
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#ifndef ARRAY5DEFS_H
|
||||
#define ARRAY5DEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR N_OP_aref2(LispPTR arrayarg, LispPTR inx0, LispPTR inx1);
|
||||
#endif
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#ifndef ARRAY6DEFS_H
|
||||
#define ARRAY6DEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR N_OP_aset2(register LispPTR data, LispPTR arrayarg, LispPTR inx0, LispPTR inx1);
|
||||
#endif
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#ifndef ARRAYDEFS_H
|
||||
#define ARRAYDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR N_OP_misc3(LispPTR baseL, LispPTR typenumber, LispPTR inx, int alpha);
|
||||
#endif
|
||||
|
||||
@@ -12,6 +12,8 @@
|
||||
/* Don Charnley's bitblt code to do them. */
|
||||
/* */
|
||||
/********************************************************/
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
|
||||
#if defined(SUNDISPLAY) && \
|
||||
!defined(NOPIXRECT) && \
|
||||
!defined(NEWBITBLT)
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#ifndef BINDEFS_H
|
||||
#define BINDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR N_OP_bin(register int tos);
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef BINDSDEFS_H
|
||||
#define BINDSDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR *N_OP_bind(register LispPTR *stack_pointer, register LispPTR tos, int byte1, int byte2);
|
||||
LispPTR *N_OP_unbind(register LispPTR *stack_pointer);
|
||||
LispPTR *N_OP_dunbind(register LispPTR *stack_pointer, register LispPTR tos);
|
||||
|
||||
@@ -10,8 +10,6 @@
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* Copyright 1989, 1990 Venue, Fuji Xerox Co., Ltd, Xerox Corp. */
|
||||
@@ -20,8 +18,7 @@
|
||||
/* Agreement dated 18-August-1989 for support of Medley. */
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
|
||||
#include "lispemul.h" /* for DLword */
|
||||
|
||||
#define REPLACE 0
|
||||
#define PAINT 2
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef BITBLTDEFS_H
|
||||
#define BITBLTDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
LispPTR N_OP_pilotbitblt(LispPTR pilot_bt_tbl,int tos);
|
||||
int cursorin(DLword addrhi, DLword addrlo, int w, int h, int backward);
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef BLTDEFS_H
|
||||
#define BLTDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR N_OP_blt(LispPTR destptr, LispPTR sourceptr, register LispPTR wordcount);
|
||||
#endif
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#ifndef CAR_CDRDEFS_H
|
||||
#define CAR_CDRDEFS_H 1
|
||||
#include "cell.h"
|
||||
#include "cell.h" /* for ConsCell */
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR car(register LispPTR datum);
|
||||
LispPTR cdr(register LispPTR datum);
|
||||
LispPTR rplaca(register LispPTR x, register LispPTR y);
|
||||
|
||||
144
inc/cdrom.h
144
inc/cdrom.h
@@ -1,144 +0,0 @@
|
||||
/* $Id: cdrom.h,v 1.2 1999/01/03 02:05:54 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
/***********************************
|
||||
|
||||
file: cdrom_audio.h
|
||||
|
||||
***********************************/
|
||||
|
||||
/* function number for CD audio functions */
|
||||
#define CD_OPEN 1
|
||||
#define CD_CLOSE 2
|
||||
#define CD_READ 3
|
||||
#define CD_DISK_INFO 4
|
||||
#define CD_TRACK_INFO 5
|
||||
#define CD_START 6
|
||||
#define CD_STOP 7
|
||||
#define CD_PLAY 8
|
||||
#define CD_Q_READ 9
|
||||
#define CD_PAUSE 10
|
||||
#define CD_RESUME 11
|
||||
#define CD_VOLUME 12
|
||||
#define CD_EJECT 13
|
||||
|
||||
/* function numbers for CD-ROM */
|
||||
#define CDROM_INIT_DRV 1
|
||||
#define CDROM_KEN_INT 2
|
||||
#define CDROM_CHOSAKU 3
|
||||
#define CDROM_MIKANA 4
|
||||
#define CDROM_MIKANAT 5
|
||||
#define CDROM_HYOKI 6
|
||||
#define CDROM_HYOKIT 7
|
||||
#define CDROM_EIJI 8
|
||||
#define CDROM_EIJIT 9
|
||||
#define CDROM_SUJI 10
|
||||
#define CDROM_SUJIT 11
|
||||
#define CDROM_ZENKANA 12
|
||||
#define CDROM_ZENKANAT 13
|
||||
#define CDROM_ZENKANJ 14
|
||||
#define CDROM_ZENKANJT 15
|
||||
#define CDROM_ZENEIJI 16
|
||||
#define CDROM_ZENEIJIIT 17
|
||||
#define CDROM_KOHKANA 18
|
||||
#define CDROM_KOHKANAT 19
|
||||
#define CDROM_KOHKANJ 20
|
||||
#define CDROM_KOHKANJT 21
|
||||
#define CDROM_KOHEIJI 22
|
||||
#define CDROM_KOHEIJIT 23
|
||||
#define CDROM_ZUHAN 24
|
||||
#define CDROM_JYOKEN 25
|
||||
#define CDROM_JYOKENT 26
|
||||
#define CDROM_MENU 27
|
||||
#define CDROM_AUDIOST 28
|
||||
#define CDROM_AUDIOED 29
|
||||
#define CDROM_AUDIOQ_GET 30
|
||||
#define CDROM_GAIJI 31
|
||||
#define CDROM_ZENGO 32
|
||||
#define CDROM_KEIZOKU 33
|
||||
#define CDROM_SYURYO 34
|
||||
|
||||
|
||||
|
||||
typedef unsigned char BYTE;
|
||||
typedef unsigned long DWORD;
|
||||
|
||||
/*
|
||||
extern DWORD CDred_lbn();
|
||||
extern void CDlbn_red();
|
||||
extern int CDopen();
|
||||
extern int CDclose();
|
||||
extern int CDread();
|
||||
extern int CDdisk_info();
|
||||
extern int CDtrack_info();
|
||||
extern int CDstart();
|
||||
extern int CDstop();
|
||||
extern int CDplay();
|
||||
extern int CDqread();
|
||||
extern int CDpause();
|
||||
extern int CDresume();
|
||||
extern int CDvolume();
|
||||
extern int CDeject();
|
||||
*/
|
||||
|
||||
#define LispStringToCString(Lisp, C, MaxLen) \
|
||||
{ \
|
||||
OneDArray *arrayp; \
|
||||
char *base, *dp; \
|
||||
short *sbase; \
|
||||
int i, length; \
|
||||
arrayp = (OneDArray *)(Addr68k_from_LADDR(Lisp)); \
|
||||
length = min(MaxLen, arrayp->totalsize); \
|
||||
switch(arrayp->typenumber) \
|
||||
{ \
|
||||
case THIN_CHAR_TYPENUMBER: \
|
||||
base = ((char *)(Addr68k_from_LADDR(arrayp->base))) \
|
||||
+ ((int)(arrayp->offset)); \
|
||||
strncpy(C, base, length); \
|
||||
C[length] = '\0'; \
|
||||
break; \
|
||||
\
|
||||
case FAT_CHAR_TYPENUMBER: \
|
||||
sbase = ((short *)(Addr68k_from_LADDR(arrayp->base))) \
|
||||
+ ((int)(arrayp->offset)); \
|
||||
for(i=0,dp=C;i<(length);i++) \
|
||||
*dp++ = (char)(*sbase++); \
|
||||
*dp = '\0'; \
|
||||
break; \
|
||||
default: \
|
||||
error("LispStringToCString can not handle\n"); \
|
||||
} \
|
||||
}
|
||||
|
||||
#define LispStringToCString2(Lisp, C, MaxLen) \
|
||||
{ \
|
||||
OneDArray *arrayp; \
|
||||
char *base, *dp; \
|
||||
short *sbase; \
|
||||
int i, length; \
|
||||
arrayp = (OneDArray *)(Addr68k_from_LADDR(Lisp)); \
|
||||
length = min(MaxLen, arrayp->totalsize); \
|
||||
switch(arrayp->typenumber) \
|
||||
{ \
|
||||
case THIN_CHAR_TYPENUMBER: \
|
||||
base = ((char *)(Addr68k_from_LADDR(arrayp->base))) \
|
||||
+ ((int)(arrayp->offset)); \
|
||||
strncpy(C, base, length); \
|
||||
C[length] = '\0'; \
|
||||
break; \
|
||||
\
|
||||
case FAT_CHAR_TYPENUMBER: \
|
||||
sbase = ((short *)(Addr68k_from_LADDR(arrayp->base))) \
|
||||
+ ((int)(arrayp->offset)); \
|
||||
for(i=0,dp=C;i<(length);i++) { \
|
||||
*dp++ = (char)(*sbase / 256 ); \
|
||||
*dp++ = (char)(*sbase % 256 ); \
|
||||
sbase++; \
|
||||
} \
|
||||
*dp = '\0'; \
|
||||
break; \
|
||||
default: \
|
||||
error("LispStringToCString can not handle\n"); \
|
||||
} \
|
||||
}
|
||||
|
||||
#define min(a, b) ((a <= b)?a:b)
|
||||
@@ -20,6 +20,8 @@
|
||||
|
||||
*/
|
||||
/**********************************************************************/
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
#include "version.h" /* for BIGVM, NEWCDRCODING, BIGATOMS */
|
||||
|
||||
/* CONS CELL (LISTP) definitions moved to lispemulater.h */
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef CHARDEVDEFS_H
|
||||
#define CHARDEVDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR CHAR_openfile(LispPTR *args);
|
||||
LispPTR CHAR_closefile(LispPTR *args);
|
||||
LispPTR CHAR_ioctl(LispPTR *args);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#ifndef CONSPAGEDEFS_H
|
||||
#define CONSPAGEDEFS_H 1
|
||||
#include "cell.h"
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
struct conspage *next_conspage(void);
|
||||
LispPTR N_OP_cons(register int cons_car, register int cons_cdr);
|
||||
LispPTR cons(LispPTR cons_car, LispPTR cons_cdr);
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#ifndef DBGTOOLDEFS_H
|
||||
#define DBGTOOLDEFS_H 1
|
||||
#include "stack.h"
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
#include "stack.h" /* frameex1, fnhead, FX */
|
||||
LispPTR get_ivar_name(struct frameex1 *fx_addr68k, DLword offset, int *localivar);
|
||||
LispPTR get_pvar_name(struct frameex1 *fx_addr68k, DLword offset);
|
||||
LispPTR get_fn_fvar_name(struct fnhead *fnobj, DLword offset);
|
||||
|
||||
@@ -2,16 +2,13 @@
|
||||
#define DEBUG_H 1
|
||||
/* $Id: debug.h,v 1.2 1999/01/03 02:05:56 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* (C) Copyright 1989-92 Venue. All Rights Reserved. */
|
||||
/* Manufactured in the United States of America. */
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
|
||||
#ifndef BYTESWAP
|
||||
/************************************************/
|
||||
|
||||
20
inc/devif.h
20
inc/devif.h
@@ -1,7 +1,7 @@
|
||||
#ifndef DEVIF_H
|
||||
#define DEVIF_H 1
|
||||
/* $Id: devif.h,v 1.2 1999/01/03 02:05:57 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* (C) Copyright 1989, 1990, 1990, 1991, 1992, 1993, 1994, 1995 Venue. */
|
||||
@@ -9,10 +9,7 @@
|
||||
/* Manufactured in the United States of America. */
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
#ifndef __DEVIF__
|
||||
#define __DEVIF__ 1
|
||||
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
|
||||
typedef void (*PFV)(); /* Pointer to Function returning Void */
|
||||
typedef int (*PFI)(); /* Pointer to Function returning Int */
|
||||
@@ -25,7 +22,6 @@ typedef unsigned long (*PFUL)(); /* Pointer to Function returning an unsigned lo
|
||||
#include <X11/Xlib.h>
|
||||
#endif /* XWINDOW */
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
short type; /* Type of event */
|
||||
@@ -289,16 +285,8 @@ typedef struct
|
||||
#define mid(a, b, c) max( min( b, max( a, c ), min( a, max( b, c ))))
|
||||
#endif /* mid */
|
||||
|
||||
#ifndef FALSE
|
||||
#define FALSE 0
|
||||
#endif /* FALSE */
|
||||
|
||||
#ifndef TRUE
|
||||
#define TRUE !FALSE
|
||||
#endif /* TRUE */
|
||||
|
||||
#define MINKEYEVENT 2 /* leave 2 words for read,write offsets */
|
||||
#define NUMBEROFKEYEVENTS 383
|
||||
|
||||
#endif /* __DEVIF__ */
|
||||
#endif
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef DIRDEFS_H
|
||||
#define DIRDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
#ifdef DOS
|
||||
int make_old_version(char *old, char *file);
|
||||
#endif
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
#ifndef DISPLAY_H
|
||||
#define DISPLAY_H 1
|
||||
|
||||
/* $Id: display.h,v 1.2 1999/01/03 02:05:57 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* (C) Copyright 1989-94 Venue. All Rights Reserved. */
|
||||
/* Manufactured in the United States of America. */
|
||||
/* */
|
||||
/************************************************************************/
|
||||
#include "lispemul.h" /* for DLword */
|
||||
#include "version.h" /* for UNSIGNED */
|
||||
|
||||
#define BCPLDISPLAY stdout
|
||||
|
||||
|
||||
#define CURSORWIDTH 16
|
||||
#define CURSORHEIGHT 16
|
||||
|
||||
@@ -82,3 +82,5 @@ void flush_display_ptrregion(DLword *ybase, UNSIGNED bitoffset, UNSIGNED w, UNSI
|
||||
#ifdef BYTESWAP
|
||||
void byte_swapped_displayregion(int x, int y, int w, int h);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef DLPIDEFS_H
|
||||
#define DLPIDEFS_H 1
|
||||
#include <sys/types.h> /* for u_char, u_long */
|
||||
int setup_dlpi_dev(char *device);
|
||||
void flush_dlpi(int fd);
|
||||
int dlpi_devtype(int fd);
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#ifndef DRAWDEFS_H
|
||||
#define DRAWDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
int N_OP_drawline(LispPTR ptr, int curbit, int xsize, int width, int ysize, int op, int delta, int numx, int numy);
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef DSKDEFS_H
|
||||
#define DSKDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
#ifdef DOS
|
||||
void separate_host(char *lfname, char *host, char *drive);
|
||||
#else
|
||||
|
||||
@@ -2,19 +2,14 @@
|
||||
#define DSPDATA_H 1
|
||||
/* $Id: dspdata.h,v 1.2 1999/01/03 02:05:58 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* (C) Copyright 1989-92 Venue. All Rights Reserved. */
|
||||
/* Manufactured in the United States of America. */
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
#include "version.h" /* for BIGVM */
|
||||
|
||||
#ifndef BYTESWAP
|
||||
/******************************************************/
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef DSPSUBRSDEFS_H
|
||||
#define DSPSUBRSDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
void DSP_dspbout(LispPTR *args);
|
||||
void DSP_showdisplay(LispPTR *args);
|
||||
LispPTR DSP_VideoColor(LispPTR *args);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef EQFDEFS_H
|
||||
#define EQFDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR N_OP_clequal(register int arg1, register int arg2);
|
||||
LispPTR N_OP_eqlop(register int arg1, register int arg2);
|
||||
LispPTR N_OP_equal(register int arg1, register int arg2);
|
||||
|
||||
@@ -2,17 +2,13 @@
|
||||
#define ETHER_H 1
|
||||
/* $Id: ether.h,v 1.2 1999/01/03 02:05:59 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* (C) Copyright 1989-92 Venue. All Rights Reserved. */
|
||||
/* Manufactured in the United States of America. */
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
|
||||
#ifndef BYTESWAP
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef ETHERDEFS_H
|
||||
#define ETHERDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR ether_suspend(LispPTR args[]);
|
||||
LispPTR ether_resume(LispPTR args[]);
|
||||
LispPTR ether_ctrlr(LispPTR args[]);
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#ifndef FINDKEYDEFS_H
|
||||
#define FINDKEYDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR N_OP_findkey(register LispPTR tos, register int byte);
|
||||
#endif
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#ifndef FOREIGNDEFS_H
|
||||
#define FOREIGNDEFS_H 1
|
||||
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR call_c_fn(LispPTR *args);
|
||||
LispPTR smashing_c_fn(LispPTR *args);
|
||||
int Mdld_link(LispPTR *args);
|
||||
@@ -14,5 +14,4 @@ int c_malloc(LispPTR *args);
|
||||
int c_free(LispPTR *args);
|
||||
int put_c_basebyte(LispPTR *args);
|
||||
int get_c_basebyte(LispPTR *args);
|
||||
|
||||
#endif /* FOREIGNDEFS_H */
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef FPDEFS_H
|
||||
#define FPDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR N_OP_fplus2(LispPTR parg1, LispPTR parg2);
|
||||
LispPTR N_OP_fdifference(LispPTR parg1, LispPTR parg2);
|
||||
LispPTR N_OP_ftimes2(LispPTR parg1, LispPTR parg2);
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
#ifndef FVARDEFS_H
|
||||
#define FVARDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
#include "stack.h" /* for fnhead, frameex1 */
|
||||
LispPTR N_OP_fvarn(register int n);
|
||||
LispPTR N_OP_stkscan(LispPTR tos);
|
||||
LispPTR N_OP_fvar_(register LispPTR tos, register int n);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef GCARRAYDEFS_H
|
||||
#define GCARRAYDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
LispPTR aref1(LispPTR array, int index);
|
||||
LispPTR find_symbol(const char *char_base, DLword offset, DLword length, LispPTR hashtbl, DLword fatp, DLword lispp);
|
||||
LispPTR get_package_atom(const char *char_base, DLword charlen, const char *packname, DLword packlen, int externalp);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef GCCODEDEFS_H
|
||||
#define GCCODEDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR map_code_pointers(LispPTR codeblock, short int casep);
|
||||
LispPTR remimplicitkeyhash(LispPTR item, LispPTR ik_hash_table);
|
||||
LispPTR reclaimcodeblock(LispPTR codebase);
|
||||
|
||||
@@ -2,8 +2,6 @@
|
||||
#define GCDATA_H 1
|
||||
/* $Id: gc.h,v 1.3 2001/12/24 01:08:57 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* (C) Copyright 1989-94 Venue. All Rights Reserved. */
|
||||
@@ -19,6 +17,9 @@
|
||||
|
||||
*/
|
||||
/**********************************************************************/
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
#include "version.h" /* for USHORT */
|
||||
|
||||
#define ADDREF 0 /* for gclookup routine. */
|
||||
#define DELREF 1 /* for gclookup routine. */
|
||||
#define STKREF 2 /* for gclookup routine. */
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef GCFINALDEFS_H
|
||||
#define GCFINALDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
void printarrayblock(LispPTR base);
|
||||
int integerlength(unsigned int n);
|
||||
LispPTR findptrsbuffer(LispPTR ptr);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef GCHTFINDDEFS_H
|
||||
#define GCHTFINDDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
void enter_big_reference_count(LispPTR ptr);
|
||||
void modify_big_reference_count(LispPTR *entry, DLword casep, LispPTR ptr);
|
||||
LispPTR htfind(LispPTR ptr, int casep);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef GCMAIN3DEFS_H
|
||||
#define GCMAIN3DEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR gcmapscan(void);
|
||||
LispPTR gcmapscan(void);
|
||||
LispPTR gcmapunscan(void);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef GCOFLOWDEFS_H
|
||||
#define GCOFLOWDEFS_H 1
|
||||
#include "lispemul.h" /* for DLword */
|
||||
DLword gc_handleoverflow(DLword arg);
|
||||
DLword gcmaptable(DLword arg);
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef GCRCELLDEFS_H
|
||||
#define GCRCELLDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
void freelistcell(LispPTR cell);
|
||||
LispPTR gcreccell(LispPTR cell);
|
||||
void freelistcell(LispPTR cell);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef GCSCANDEFS_H
|
||||
#define GCSCANDEFS_H 1
|
||||
#include "lispemul.h" /* for DLword */
|
||||
DLword gcscan1(register int probe);
|
||||
DLword gcscan2(register int probe);
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef GVAR2DEFS_H
|
||||
#define GVAR2DEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR N_OP_gvar_(register LispPTR tos, unsigned int atom_index);
|
||||
LispPTR N_OP_rplptr(register LispPTR tos_m_1, register LispPTR tos, unsigned int alpha);
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef HARDRTNDEFS_H
|
||||
#define HARDRTNDEFS_H 1
|
||||
#include "stack.h" /* for FX */
|
||||
int slowreturn(void);
|
||||
void incusecount68k(FX *fx68k);
|
||||
#endif
|
||||
|
||||
11
inc/ifpage.h
11
inc/ifpage.h
@@ -1,19 +1,16 @@
|
||||
#ifndef IFPAGE_H
|
||||
#define IFPAGE_H 1
|
||||
/* $Id: ifpage.h,v 1.2 1999/01/03 02:06:01 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* (C) Copyright 1989-92 Venue. All Rights Reserved. */
|
||||
/* Manufactured in the United States of America. */
|
||||
/* */
|
||||
/************************************************************************/
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
#include "version.h" /* for BIGVM */
|
||||
|
||||
#ifndef IFPAGE_DEFINED
|
||||
#define IFPAGE_DEFINED (1)
|
||||
#define IFPAGE_KEYVAL 0x15e3
|
||||
#ifndef BYTESWAP
|
||||
#ifdef BIGVM
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#ifndef INETDEFS_H
|
||||
#define INETDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR subr_TCP_ops(int op, LispPTR nameConn, LispPTR proto, LispPTR length, LispPTR bufaddr, LispPTR maxlen);
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
#ifndef INITDSPDEFS_H
|
||||
#define INITDSPDEFS_H 1
|
||||
#include "lispemul.h" /* for DLword */
|
||||
#include "version.h" /* for UNSIGNED */
|
||||
void init_cursor(void);
|
||||
void set_cursor(void);
|
||||
void clear_display(void);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef INITSOUTDEFS_H
|
||||
#define INITSOUTDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR *fixp_value(LispPTR *ptr);
|
||||
void init_ifpage(int sysout_size);
|
||||
void init_iopage(void);
|
||||
|
||||
1942
inc/inlineC.h
Executable file → Normal file
1942
inc/inlineC.h
Executable file → Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,16 +1,15 @@
|
||||
#ifndef IOPAGE_H
|
||||
#define IOPAGE_H 1
|
||||
/* $Id: iopage.h,v 1.2 1999/01/03 02:06:06 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* (C) Copyright 1989-92 Venue. All Rights Reserved. */
|
||||
/* Manufactured in the United States of America. */
|
||||
/* */
|
||||
/************************************************************************/
|
||||
#ifndef IOPAGE_DEFINED
|
||||
#define IOPAGE_DEFINED (1)
|
||||
#include "lispemul.h" /* for DLword */
|
||||
|
||||
#ifndef BYTESWAP
|
||||
/* Normal definition, for big-endian machines */
|
||||
typedef struct iopage {
|
||||
|
||||
12
inc/kbdif.h
12
inc/kbdif.h
@@ -2,10 +2,6 @@
|
||||
#define KBDIF_H 1
|
||||
/* $Id: kbdif.h,v 1.2 1999/01/03 02:06:06 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* (C) Copyright 1990, 1990, 1991, 1992, 1993, 1994, 1995 Venue. */
|
||||
@@ -13,7 +9,7 @@
|
||||
/* Manufactured in the United States of America. */
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
#include <sys/types.h> /* for u_char */
|
||||
|
||||
/* The Keyboard structure. */
|
||||
|
||||
@@ -35,10 +31,4 @@ typedef struct {
|
||||
int device_locked;
|
||||
#endif /* DOS */
|
||||
} KbdInterfaceRec, *KbdInterface;
|
||||
|
||||
|
||||
#ifndef TRUE
|
||||
#define FALSE 0
|
||||
#define TRUE !FALSE
|
||||
#endif /* TRUE */
|
||||
#endif /* KBDIF_H */
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef KBDSUBRSDEFS_H
|
||||
#define KBDSUBRSDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
void KB_enable(LispPTR *args);
|
||||
void KB_beep(LispPTR *args);
|
||||
void KB_setmp(LispPTR *args);
|
||||
|
||||
@@ -2,18 +2,15 @@
|
||||
#define KEYBOARD_H 1
|
||||
/* $Id: keyboard.h,v 1.2 1999/01/03 02:06:06 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
/** Header File for K/B MOUSE */
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* (C) Copyright 1989-92 Venue. All Rights Reserved. */
|
||||
/* Manufactured in the United States of America. */
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
#include "lispemul.h" /* for DLword */
|
||||
|
||||
#define MOUSE_LEFT 13
|
||||
#define MOUSE_MIDDLE 15
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef KEYEVENTDEFS_H
|
||||
#define KEYEVENTDEFS_H 1
|
||||
#include <sys/types.h>
|
||||
void getsignaldata(int sig);
|
||||
void kb_trans(u_short keycode, u_short upflg);
|
||||
void taking_mouse_down(void);
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#ifndef KEYSYM_H
|
||||
#define KEYSYM_H 1
|
||||
|
||||
/* $Id: keysym.h,v 1.2 1999/01/03 02:06:07 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
@@ -126,3 +129,5 @@
|
||||
#define KEY_PROPS 109
|
||||
#define KEY_PRSC 110
|
||||
#define KEY_OPEN 111
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef KPRINTDEFS_H
|
||||
#define KPRINTDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
void prindatum(LispPTR x);
|
||||
LispPTR print(LispPTR x);
|
||||
void print_NEWstring(LispPTR x);
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
#ifndef LDEXDEFS_H
|
||||
#define LDEXDEFS_H 1
|
||||
|
||||
/* $Id: ldeXdefs.h,v 1.2 1999/01/03 02:06:07 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
/* * * * * X defs for all files in Medley * * * * */
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* (C) Copyright 1989-92 Venue. All Rights Reserved. */
|
||||
@@ -11,11 +12,6 @@
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
|
||||
#ifndef __LDEXDEF__
|
||||
|
||||
#define __LDEXDEF__ 1
|
||||
#include <signal.h>
|
||||
#ifdef LOCK_X_UPDATES
|
||||
#define XLOCK { XLocked++; /* printf("L"); fflush(stdout);*/}
|
||||
#define XUNLOCK \
|
||||
@@ -34,5 +30,6 @@
|
||||
extern int XLocked;
|
||||
extern int XNeedSignal;
|
||||
/* this is !0 if we're locked; it should be 0 or larger always */
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
#ifndef LINEBLT8DEFS_H
|
||||
#define LINEBLT8DEFS_H 1
|
||||
#include <sys/types.h> /* for u_char */
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
void lineBlt8(DLword *srcbase, register int offset, register u_char *destl, register int width,
|
||||
u_char color0, u_char color1, LispPTR sourcetype, LispPTR operation);
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef LISP2CDEFS_H
|
||||
#define LISP2CDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
int LispStringP(LispPTR object);
|
||||
int LispStringLength(LispPTR lispstring);
|
||||
void LispStringToCStr(LispPTR lispstring, char *cstring);
|
||||
|
||||
735
inc/lispemul.h
735
inc/lispemul.h
@@ -1,8 +1,7 @@
|
||||
#ifndef LISPEMUL_H
|
||||
#define LISPEMUL_H 1
|
||||
/* $Id: lispemul.h,v 1.4 2001/12/24 01:08:57 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
/* $Id: lispemul.h,v 1.4 2001/12/24 01:08:57 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved
|
||||
*/
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
@@ -10,116 +9,104 @@
|
||||
/* Manufactured in the United States of America. */
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
|
||||
|
||||
#include "version.h" /* for BIGVM, BIGATOMS, UNSIGNED, UNALIGNED_FETCH_OK */
|
||||
|
||||
#ifndef BYTESWAP
|
||||
/*** Normal byte-order type decls */
|
||||
typedef struct {unsigned char code;} BYTECODE;
|
||||
/*** Normal byte-order type decls */
|
||||
typedef struct {
|
||||
unsigned char code;
|
||||
} BYTECODE;
|
||||
typedef char ByteCode;
|
||||
typedef unsigned short DLword;
|
||||
typedef char DLbyte;
|
||||
typedef unsigned int LispPTR;
|
||||
typedef unsigned short DLword;
|
||||
typedef char DLbyte;
|
||||
typedef unsigned int LispPTR;
|
||||
/* 32 bit Cell Chang. 14 Jan 87 take */
|
||||
typedef DLword mds_page; /* Top word of the MDS */
|
||||
typedef DLword mds_page; /* Top word of the MDS */
|
||||
|
||||
#ifdef BIGVM
|
||||
typedef struct consstr
|
||||
{
|
||||
unsigned cdr_code : 4;
|
||||
unsigned car_field : 28;
|
||||
} ConsCell;
|
||||
typedef struct consstr {
|
||||
unsigned cdr_code : 4;
|
||||
unsigned car_field : 28;
|
||||
} ConsCell;
|
||||
|
||||
typedef struct ufn_entry
|
||||
{
|
||||
DLword atom_name; /* UFN's atomindex */
|
||||
unsigned byte_num : 8; /* num of byte code */
|
||||
unsigned arg_num : 8; /* num of arguments */
|
||||
} UFN;
|
||||
typedef struct ufn_entry {
|
||||
DLword atom_name; /* UFN's atomindex */
|
||||
unsigned byte_num : 8; /* num of byte code */
|
||||
unsigned arg_num : 8; /* num of arguments */
|
||||
} UFN;
|
||||
|
||||
typedef struct closure_type
|
||||
{
|
||||
unsigned nil1 : 4;
|
||||
unsigned def_ptr : 28; /* LispPTR to definition cell */
|
||||
unsigned nil2 : 4;
|
||||
unsigned env_ptr : 28; /* LispPTR to environment */
|
||||
} Closure;
|
||||
typedef struct closure_type {
|
||||
unsigned nil1 : 4;
|
||||
unsigned def_ptr : 28; /* LispPTR to definition cell */
|
||||
unsigned nil2 : 4;
|
||||
unsigned env_ptr : 28; /* LispPTR to environment */
|
||||
} Closure;
|
||||
|
||||
#else /* not BIGVM */
|
||||
typedef struct consstr
|
||||
{
|
||||
unsigned cdr_code : 8;
|
||||
unsigned car_field : 24;
|
||||
} ConsCell;
|
||||
#else /* not BIGVM */
|
||||
typedef struct consstr {
|
||||
unsigned cdr_code : 8;
|
||||
unsigned car_field : 24;
|
||||
} ConsCell;
|
||||
|
||||
typedef struct ufn_entry
|
||||
{
|
||||
DLword atom_name; /* UFN's atomindex */
|
||||
unsigned byte_num : 8; /* num of byte code */
|
||||
unsigned arg_num : 8; /* num of arguments */
|
||||
} UFN;
|
||||
typedef struct ufn_entry {
|
||||
DLword atom_name; /* UFN's atomindex */
|
||||
unsigned byte_num : 8; /* num of byte code */
|
||||
unsigned arg_num : 8; /* num of arguments */
|
||||
} UFN;
|
||||
|
||||
typedef struct closure_type
|
||||
{
|
||||
unsigned nil1 : 8;
|
||||
unsigned def_ptr : 24; /* LispPTR to definition cell */
|
||||
unsigned nil2 : 8;
|
||||
unsigned env_ptr : 24; /* LispPTR to environment */
|
||||
} Closure;
|
||||
typedef struct closure_type {
|
||||
unsigned nil1 : 8;
|
||||
unsigned def_ptr : 24; /* LispPTR to definition cell */
|
||||
unsigned nil2 : 8;
|
||||
unsigned env_ptr : 24; /* LispPTR to environment */
|
||||
} Closure;
|
||||
#endif /* BIGVM */
|
||||
|
||||
typedef struct interrupt_state
|
||||
{ /* Interrupt-request mask to communicate with INTERRUPTED */
|
||||
unsigned LogFileIO :1; /* console msg arrived to print */
|
||||
unsigned ETHERInterrupt :1; /* 10MB activity happened */
|
||||
unsigned IOInterrupt :1; /* I/O happened (not used yet) */
|
||||
unsigned gcdisabled :1;
|
||||
unsigned vmemfull :1;
|
||||
unsigned stackoverflow :1;
|
||||
unsigned storagefull :1;
|
||||
unsigned waitinginterrupt :1;
|
||||
unsigned nil :8; /* mask of ints being processed */
|
||||
DLword intcharcode;
|
||||
} INTSTAT;
|
||||
typedef struct interrupt_state { /* Interrupt-request mask to communicate with INTERRUPTED */
|
||||
unsigned LogFileIO : 1; /* console msg arrived to print */
|
||||
unsigned ETHERInterrupt : 1; /* 10MB activity happened */
|
||||
unsigned IOInterrupt : 1; /* I/O happened (not used yet) */
|
||||
unsigned gcdisabled : 1;
|
||||
unsigned vmemfull : 1;
|
||||
unsigned stackoverflow : 1;
|
||||
unsigned storagefull : 1;
|
||||
unsigned waitinginterrupt : 1;
|
||||
unsigned nil : 8; /* mask of ints being processed */
|
||||
DLword intcharcode;
|
||||
} INTSTAT;
|
||||
|
||||
typedef struct interrupt_state_2
|
||||
{ /* alternate view of the interrupt state */
|
||||
unsigned pendingmask :8;
|
||||
unsigned handledmask :8;
|
||||
DLword nil;
|
||||
} INTSTAT2;
|
||||
typedef struct interrupt_state_2 { /* alternate view of the interrupt state */
|
||||
unsigned pendingmask : 8;
|
||||
unsigned handledmask : 8;
|
||||
DLword nil;
|
||||
} INTSTAT2;
|
||||
|
||||
struct state
|
||||
{
|
||||
DLword *ivar; /* + 0 */
|
||||
DLword *pvar; /* + 4 */
|
||||
DLword *csp; /* + 8 */
|
||||
LispPTR tosvalue; /* + 12 */
|
||||
ByteCode *currentpc; /* + 16 */
|
||||
struct fnhead *currentfunc; /* + 20*/
|
||||
DLword *endofstack; /* + 24*/
|
||||
UNSIGNED irqcheck; /* + 28 */
|
||||
UNSIGNED irqend; /* + 32 */
|
||||
LispPTR scratch_cstk; /* + 34 */
|
||||
int errorexit; /* + 38 */
|
||||
};
|
||||
struct state {
|
||||
DLword *ivar; /* + 0 */
|
||||
DLword *pvar; /* + 4 */
|
||||
DLword *csp; /* + 8 */
|
||||
LispPTR tosvalue; /* + 12 */
|
||||
ByteCode *currentpc; /* + 16 */
|
||||
struct fnhead *currentfunc; /* + 20*/
|
||||
DLword *endofstack; /* + 24*/
|
||||
UNSIGNED irqcheck; /* + 28 */
|
||||
UNSIGNED irqend; /* + 32 */
|
||||
LispPTR scratch_cstk; /* + 34 */
|
||||
int errorexit; /* + 38 */
|
||||
};
|
||||
|
||||
/***** Get_DLword(ptr) ptr is char* ***/
|
||||
#ifndef UNALIGNED_FETCH_OK
|
||||
#define Get_DLword(ptr) ((Get_BYTE(ptr) <<8) | Get_BYTE(ptr+1))
|
||||
#define Get_DLword(ptr) ((Get_BYTE(ptr) << 8) | Get_BYTE(ptr + 1))
|
||||
#else
|
||||
#define Get_DLword(ptr) *(((DLword *)WORDPTR(ptr)))
|
||||
#define Get_DLword(ptr) *(((DLword *)WORDPTR(ptr)))
|
||||
#endif
|
||||
|
||||
#ifdef BIGVM
|
||||
#define Get_Pointer(ptr) ((Get_BYTE(ptr) << 24) | \
|
||||
(Get_BYTE(ptr+1) << 16) | \
|
||||
(Get_BYTE(ptr+2) << 8) | Get_BYTE(ptr+3))
|
||||
#define Get_Pointer(ptr) \
|
||||
((Get_BYTE(ptr) << 24) | (Get_BYTE(ptr + 1) << 16) | (Get_BYTE(ptr + 2) << 8) | Get_BYTE(ptr + 3))
|
||||
#else
|
||||
#define Get_Pointer(ptr) ((Get_BYTE(ptr) << 16) | \
|
||||
(Get_BYTE(ptr+1) << 8) | \
|
||||
Get_BYTE(ptr+2))
|
||||
#define Get_Pointer(ptr) ((Get_BYTE(ptr) << 16) | (Get_BYTE(ptr + 1) << 8) | Get_BYTE(ptr + 2))
|
||||
#endif /* BIGVM */
|
||||
|
||||
#define Get_code_BYTE Get_BYTE
|
||||
@@ -128,152 +115,139 @@ struct state
|
||||
#define Get_code_Pointer Get_Pointer
|
||||
|
||||
#ifdef BIGATOMS
|
||||
#define Get_AtomNo(ptr) Get_Pointer(ptr)
|
||||
#define Get_AtomNo(ptr) Get_Pointer(ptr)
|
||||
#else
|
||||
#define Get_AtomNo(ptr) Get_DLword(ptr)
|
||||
#endif /* BIGATOMS */
|
||||
|
||||
|
||||
/* For bit test */
|
||||
typedef struct wbits
|
||||
{
|
||||
unsigned xMSB :1;
|
||||
unsigned B1 :1;
|
||||
unsigned B2 :1;
|
||||
unsigned B3 :1;
|
||||
unsigned B4 :1;
|
||||
unsigned B5 :1;
|
||||
unsigned B6 :1;
|
||||
unsigned B7 :1;
|
||||
unsigned B8 :1;
|
||||
unsigned B9 :1;
|
||||
unsigned B10 :1;
|
||||
unsigned B11 :1;
|
||||
unsigned B12 :1;
|
||||
unsigned B13 :1;
|
||||
unsigned B14 :1;
|
||||
unsigned LSB :1;
|
||||
}WBITS;
|
||||
typedef struct wbits {
|
||||
unsigned xMSB : 1;
|
||||
unsigned B1 : 1;
|
||||
unsigned B2 : 1;
|
||||
unsigned B3 : 1;
|
||||
unsigned B4 : 1;
|
||||
unsigned B5 : 1;
|
||||
unsigned B6 : 1;
|
||||
unsigned B7 : 1;
|
||||
unsigned B8 : 1;
|
||||
unsigned B9 : 1;
|
||||
unsigned B10 : 1;
|
||||
unsigned B11 : 1;
|
||||
unsigned B12 : 1;
|
||||
unsigned B13 : 1;
|
||||
unsigned B14 : 1;
|
||||
unsigned LSB : 1;
|
||||
} WBITS;
|
||||
|
||||
typedef struct lbits
|
||||
{
|
||||
unsigned xMSB :1;
|
||||
unsigned MIDDLE :30;
|
||||
unsigned LSB :1;
|
||||
}LBITS;
|
||||
typedef struct lbits {
|
||||
unsigned xMSB : 1;
|
||||
unsigned MIDDLE : 30;
|
||||
unsigned LSB : 1;
|
||||
} LBITS;
|
||||
|
||||
#define PUTBASEBIT68K(base68k, offset, bitvalue ) { \
|
||||
if( bitvalue) \
|
||||
*((DLword*)(base68k) + (((u_short)(offset))>>4 )) \
|
||||
|= 1 << (15 - ((u_short)(offset))%BITSPER_DLWORD); \
|
||||
else \
|
||||
*((DLword*)(base68k) + (((u_short)(offset))>>4 )) \
|
||||
&= ~( 1 << (15 - ((u_short)(offset)) %BITSPER_DLWORD)); \
|
||||
}
|
||||
#define PUTBASEBIT68K(base68k, offset, bitvalue) \
|
||||
do { \
|
||||
if (bitvalue) \
|
||||
*((DLword *)(base68k) + (((u_short)(offset)) >> 4)) |= \
|
||||
1 << (15 - ((u_short)(offset)) % BITSPER_DLWORD); \
|
||||
else \
|
||||
*((DLword *)(base68k) + (((u_short)(offset)) >> 4)) &= \
|
||||
~(1 << (15 - ((u_short)(offset)) % BITSPER_DLWORD)); \
|
||||
} while (0)
|
||||
|
||||
#else
|
||||
/*** Byte-swapped structure declarations, for 80386 ***/
|
||||
typedef struct {unsigned char code;} BYTECODE;
|
||||
/*** Byte-swapped structure declarations, for 80386 ***/
|
||||
typedef struct {
|
||||
unsigned char code;
|
||||
} BYTECODE;
|
||||
typedef char ByteCode;
|
||||
typedef unsigned short DLword;
|
||||
typedef char DLbyte;
|
||||
typedef unsigned int LispPTR;
|
||||
typedef unsigned short DLword;
|
||||
typedef char DLbyte;
|
||||
typedef unsigned int LispPTR;
|
||||
/* 32 bit Cell Chang. 14 Jan 87 take */
|
||||
typedef DLword mds_page; /* Top word of the MDS */
|
||||
typedef DLword mds_page; /* Top word of the MDS */
|
||||
|
||||
#ifdef BIGVM
|
||||
typedef struct consstr
|
||||
{
|
||||
unsigned car_field : 28;
|
||||
unsigned cdr_code : 4;
|
||||
} ConsCell;
|
||||
typedef struct consstr {
|
||||
unsigned car_field : 28;
|
||||
unsigned cdr_code : 4;
|
||||
} ConsCell;
|
||||
|
||||
typedef struct ufn_entry
|
||||
{
|
||||
unsigned arg_num : 8; /* num of arguments */
|
||||
unsigned byte_num : 8; /* num of byte code */
|
||||
DLword atom_name; /* UFN's atomindex */
|
||||
} UFN;
|
||||
typedef struct ufn_entry {
|
||||
unsigned arg_num : 8; /* num of arguments */
|
||||
unsigned byte_num : 8; /* num of byte code */
|
||||
DLword atom_name; /* UFN's atomindex */
|
||||
} UFN;
|
||||
|
||||
typedef struct closure_type
|
||||
{
|
||||
unsigned def_ptr : 28; /* LispPTR to definition cell */
|
||||
unsigned nil1 : 4;
|
||||
unsigned env_ptr : 28; /* LispPTR to environment */
|
||||
unsigned nil2 : 4;
|
||||
} Closure;
|
||||
#else /* BIGVM */
|
||||
typedef struct consstr
|
||||
{
|
||||
unsigned car_field : 24;
|
||||
unsigned cdr_code : 8;
|
||||
} ConsCell;
|
||||
typedef struct closure_type {
|
||||
unsigned def_ptr : 28; /* LispPTR to definition cell */
|
||||
unsigned nil1 : 4;
|
||||
unsigned env_ptr : 28; /* LispPTR to environment */
|
||||
unsigned nil2 : 4;
|
||||
} Closure;
|
||||
#else /* BIGVM */
|
||||
typedef struct consstr {
|
||||
unsigned car_field : 24;
|
||||
unsigned cdr_code : 8;
|
||||
} ConsCell;
|
||||
|
||||
typedef struct ufn_entry
|
||||
{
|
||||
unsigned arg_num : 8; /* num of arguments */
|
||||
unsigned byte_num : 8; /* num of byte code */
|
||||
DLword atom_name; /* UFN's atomindex */
|
||||
} UFN;
|
||||
typedef struct ufn_entry {
|
||||
unsigned arg_num : 8; /* num of arguments */
|
||||
unsigned byte_num : 8; /* num of byte code */
|
||||
DLword atom_name; /* UFN's atomindex */
|
||||
} UFN;
|
||||
|
||||
typedef struct closure_type
|
||||
{
|
||||
unsigned def_ptr : 24; /* LispPTR to definition cell */
|
||||
unsigned nil1 : 8;
|
||||
unsigned env_ptr : 24; /* LispPTR to environment */
|
||||
unsigned nil2 : 8;
|
||||
} Closure;
|
||||
typedef struct closure_type {
|
||||
unsigned def_ptr : 24; /* LispPTR to definition cell */
|
||||
unsigned nil1 : 8;
|
||||
unsigned env_ptr : 24; /* LispPTR to environment */
|
||||
unsigned nil2 : 8;
|
||||
} Closure;
|
||||
#endif /* BIGVM */
|
||||
|
||||
typedef struct interrupt_state
|
||||
{ /* Interrupt-request mask to communicate with INTERRUPTED */
|
||||
DLword intcharcode;
|
||||
unsigned nil :8;
|
||||
unsigned waitinginterrupt :1;
|
||||
unsigned storagefull :1;
|
||||
unsigned stackoverflow :1;
|
||||
unsigned vmemfull :1;
|
||||
unsigned gcdisabled :1;
|
||||
unsigned IOInterrupt :1; /* I/O happened (not used yet) */
|
||||
unsigned ETHERInterrupt :1; /* 10MB activity happened */
|
||||
unsigned LogFileIO :1; /* console msg arrived to print */
|
||||
} INTSTAT;
|
||||
typedef struct interrupt_state { /* Interrupt-request mask to communicate with INTERRUPTED */
|
||||
DLword intcharcode;
|
||||
unsigned nil : 8;
|
||||
unsigned waitinginterrupt : 1;
|
||||
unsigned storagefull : 1;
|
||||
unsigned stackoverflow : 1;
|
||||
unsigned vmemfull : 1;
|
||||
unsigned gcdisabled : 1;
|
||||
unsigned IOInterrupt : 1; /* I/O happened (not used yet) */
|
||||
unsigned ETHERInterrupt : 1; /* 10MB activity happened */
|
||||
unsigned LogFileIO : 1; /* console msg arrived to print */
|
||||
} INTSTAT;
|
||||
|
||||
typedef struct interrupt_state_2
|
||||
{ /* alternate view of the interrupt state */
|
||||
DLword nil;
|
||||
unsigned handledmask :8;
|
||||
unsigned pendingmask :8;
|
||||
} INTSTAT2;
|
||||
typedef struct interrupt_state_2 { /* alternate view of the interrupt state */
|
||||
DLword nil;
|
||||
unsigned handledmask : 8;
|
||||
unsigned pendingmask : 8;
|
||||
} INTSTAT2;
|
||||
|
||||
|
||||
struct state
|
||||
{
|
||||
DLword *ivar; /* + 0 */
|
||||
DLword *pvar; /* + 4 */
|
||||
DLword *csp; /* + 8 */
|
||||
LispPTR tosvalue; /* + 12 */
|
||||
ByteCode *currentpc; /* + 16 */
|
||||
struct fnhead *currentfunc; /* + 20*/
|
||||
DLword *endofstack; /* + 24*/
|
||||
UNSIGNED irqcheck; /* + 28 */
|
||||
UNSIGNED irqend; /* + 32 */
|
||||
LispPTR scratch_cstk; /* + 34 */
|
||||
int errorexit; /* + 38 */
|
||||
};
|
||||
struct state {
|
||||
DLword *ivar; /* + 0 */
|
||||
DLword *pvar; /* + 4 */
|
||||
DLword *csp; /* + 8 */
|
||||
LispPTR tosvalue; /* + 12 */
|
||||
ByteCode *currentpc; /* + 16 */
|
||||
struct fnhead *currentfunc; /* + 20*/
|
||||
DLword *endofstack; /* + 24*/
|
||||
UNSIGNED irqcheck; /* + 28 */
|
||||
UNSIGNED irqend; /* + 32 */
|
||||
LispPTR scratch_cstk; /* + 34 */
|
||||
int errorexit; /* + 38 */
|
||||
};
|
||||
|
||||
/* Fetching 2 bytes to make a word -- always do it the hard way */
|
||||
/* if we're byte-swapped: You can't rely on byte ordering!! */
|
||||
#define Get_DLword(ptr) ((Get_BYTE(ptr) <<8) | Get_BYTE(ptr+1))
|
||||
#define Get_DLword(ptr) ((Get_BYTE(ptr) << 8) | Get_BYTE(ptr + 1))
|
||||
|
||||
#ifdef BIGVM
|
||||
#define Get_Pointer(ptr) ((Get_BYTE(ptr) << 24) | \
|
||||
(Get_BYTE(ptr+1) << 16) | \
|
||||
(Get_BYTE(ptr+2) << 8) | Get_BYTE(ptr+3))
|
||||
#define Get_Pointer(ptr) \
|
||||
((Get_BYTE(ptr) << 24) | (Get_BYTE(ptr + 1) << 16) | (Get_BYTE(ptr + 2) << 8) | Get_BYTE(ptr + 3))
|
||||
#else
|
||||
#define Get_Pointer(ptr) ((Get_BYTE(ptr) << 16) | \
|
||||
(Get_BYTE(ptr+1) << 8) | \
|
||||
Get_BYTE(ptr+2))
|
||||
#define Get_Pointer(ptr) ((Get_BYTE(ptr) << 16) | (Get_BYTE(ptr + 1) << 8) | Get_BYTE(ptr + 2))
|
||||
#endif /* BIGVM */
|
||||
|
||||
#ifndef RESWAPPEDCODESTREAM
|
||||
@@ -283,152 +257,149 @@ struct state
|
||||
#else
|
||||
#define Get_code_BYTE(ptr) (((BYTECODE *)(ptr))->code)
|
||||
|
||||
#define Get_code_Pointer(ptr) ((Get_code_BYTE(ptr) << 16) | \
|
||||
(Get_code_BYTE(ptr+1) << 8) | \
|
||||
Get_code_BYTE(ptr+2))
|
||||
#define Get_code_DLword(ptr) ((Get_code_BYTE(ptr) << 8) | Get_code_BYTE(ptr+1))
|
||||
#define Get_code_Pointer(ptr) \
|
||||
((Get_code_BYTE(ptr) << 16) | (Get_code_BYTE(ptr + 1) << 8) | Get_code_BYTE(ptr + 2))
|
||||
#define Get_code_DLword(ptr) ((Get_code_BYTE(ptr) << 8) | Get_code_BYTE(ptr + 1))
|
||||
#define Get_code_AtomNo Get_code_Pointer
|
||||
#endif /* RESWAPPEDCODESTREAM */
|
||||
|
||||
|
||||
#ifdef BIGATOMS
|
||||
#define Get_AtomNo(ptr) Get_Pointer(ptr)
|
||||
#define Get_AtomNo(ptr) Get_Pointer(ptr)
|
||||
#else
|
||||
#define Get_AtomNo(ptr) Get_DLword(ptr)
|
||||
#endif /* BIGATOMS */
|
||||
|
||||
|
||||
/* For bit test */
|
||||
typedef struct wbits
|
||||
{
|
||||
USHORT LSB :1;
|
||||
USHORT B14 :1;
|
||||
USHORT B13 :1;
|
||||
USHORT B12 :1;
|
||||
USHORT B11 :1;
|
||||
USHORT B10 :1;
|
||||
USHORT B9 :1;
|
||||
USHORT B8 :1;
|
||||
USHORT B7 :1;
|
||||
USHORT B6 :1;
|
||||
USHORT B5 :1;
|
||||
USHORT B4 :1;
|
||||
USHORT B3 :1;
|
||||
USHORT B2 :1;
|
||||
USHORT B1 :1;
|
||||
USHORT xMSB :1;
|
||||
} WBITS;
|
||||
typedef struct wbits {
|
||||
USHORT LSB : 1;
|
||||
USHORT B14 : 1;
|
||||
USHORT B13 : 1;
|
||||
USHORT B12 : 1;
|
||||
USHORT B11 : 1;
|
||||
USHORT B10 : 1;
|
||||
USHORT B9 : 1;
|
||||
USHORT B8 : 1;
|
||||
USHORT B7 : 1;
|
||||
USHORT B6 : 1;
|
||||
USHORT B5 : 1;
|
||||
USHORT B4 : 1;
|
||||
USHORT B3 : 1;
|
||||
USHORT B2 : 1;
|
||||
USHORT B1 : 1;
|
||||
USHORT xMSB : 1;
|
||||
} WBITS;
|
||||
|
||||
typedef struct lbits
|
||||
{
|
||||
unsigned LSB :1;
|
||||
unsigned MIDDLE :30;
|
||||
unsigned xMSB :1; /* xMSB b/c HPUX defined MSB in a header */
|
||||
} LBITS;
|
||||
typedef struct lbits {
|
||||
unsigned LSB : 1;
|
||||
unsigned MIDDLE : 30;
|
||||
unsigned xMSB : 1; /* xMSB b/c HPUX defined MSB in a header */
|
||||
} LBITS;
|
||||
|
||||
#define PUTBASEBIT68K(base68k, offset, bitvalue ) { \
|
||||
UNSIGNED real68kbase; \
|
||||
real68kbase = 2 ^ ((UNSIGNED)(base68k)); \
|
||||
if( bitvalue) \
|
||||
(* (DLword *) (2^(UNSIGNED)((DLword*)(real68kbase) + (((u_short)(offset))>>4 )))) \
|
||||
|= 1 << (15 - ((u_short)(offset))%BITSPER_DLWORD); \
|
||||
else \
|
||||
(* (DLword *) (2^(UNSIGNED)((DLword*)(real68kbase) + (((u_short)(offset))>>4 )))) \
|
||||
&= ~( 1 << (15 - ((u_short)(offset)) %BITSPER_DLWORD)); \
|
||||
}
|
||||
#define PUTBASEBIT68K(base68k, offset, bitvalue) \
|
||||
do { \
|
||||
UNSIGNED real68kbase; \
|
||||
real68kbase = 2 ^ ((UNSIGNED)(base68k)); \
|
||||
if (bitvalue) \
|
||||
(*(DLword *)(2 ^ (UNSIGNED)((DLword *)(real68kbase) + (((u_short)(offset)) >> 4)))) |= \
|
||||
1 << (15 - ((u_short)(offset)) % BITSPER_DLWORD); \
|
||||
else \
|
||||
(*(DLword *)(2 ^ (UNSIGNED)((DLword *)(real68kbase) + (((u_short)(offset)) >> 4)))) &= \
|
||||
~(1 << (15 - ((u_short)(offset)) % BITSPER_DLWORD)); \
|
||||
} while (0)
|
||||
|
||||
#endif /* BYTESWAP */
|
||||
|
||||
/* Because a WBITS is only 1 word long, need byte-swapped */
|
||||
/* access to it. Use WBITSPTR(x) instead of ((WBITS *) x) */
|
||||
|
||||
|
||||
/* Because a WBITS is only 1 word long, need byte-swapped */
|
||||
/* access to it. Use WBITSPTR(x) instead of ((WBITS *) x) */
|
||||
|
||||
#define WBITSPTR(ptr) ((WBITS *) WORDPTR(ptr))
|
||||
|
||||
#define WBITSPTR(ptr) ((WBITS *)WORDPTR(ptr))
|
||||
|
||||
extern struct state MachineState;
|
||||
|
||||
#define MState (&MachineState)
|
||||
#define CURRENTFX ((struct frameex1 *)(((DLword *) PVar) - FRAMESIZE))
|
||||
#define IVar (MState->ivar)
|
||||
#define PVar (MState->pvar)
|
||||
#define CURRENTFX ((struct frameex1 *)(((DLword *)PVar) - FRAMESIZE))
|
||||
#define IVar (MState->ivar)
|
||||
#define PVar (MState->pvar)
|
||||
#define CurrentStackPTR (MState->csp)
|
||||
#define TopOfStack (MState->tosvalue)
|
||||
#define PC (MState->currentpc)
|
||||
#define FuncObj (MState->currentfunc)
|
||||
#define EndSTKP (MState->endofstack)
|
||||
#define Irq_Stk_Check (MState->irqcheck)
|
||||
#define Irq_Stk_End (MState->irqend)
|
||||
#define Scratch_CSTK (MState->scratch_cstk)
|
||||
#define Error_Exit (MState->errorexit)
|
||||
|
||||
/* Typedef for IFPAGE */
|
||||
#include "ifpage.h"
|
||||
|
||||
/* Typedef for IOPAGE */
|
||||
#include "iopage.h"
|
||||
|
||||
|
||||
/* Typedef for MISCSTAT */
|
||||
#include "miscstat.h"
|
||||
#define TopOfStack (MState->tosvalue)
|
||||
#define PC (MState->currentpc)
|
||||
#define FuncObj (MState->currentfunc)
|
||||
#define EndSTKP (MState->endofstack)
|
||||
#define Irq_Stk_Check (MState->irqcheck)
|
||||
#define Irq_Stk_End (MState->irqend)
|
||||
#define Scratch_CSTK (MState->scratch_cstk)
|
||||
#define Error_Exit (MState->errorexit)
|
||||
|
||||
/****************************************************
|
||||
MakeAddr:
|
||||
base: DLword*
|
||||
offset: word offset from base
|
||||
return: DLword*
|
||||
base: DLword*
|
||||
offset: word offset from base
|
||||
return: DLword*
|
||||
****************************************************/
|
||||
#define MakeAddr(base, offset) ((DLword *)(base + (int)offset))
|
||||
|
||||
#define MakeAddr(base, offset) ((DLword *)(base + (int)offset))
|
||||
|
||||
/****************************************************
|
||||
GetHiWord:
|
||||
*****************************************************/
|
||||
#define GetHiWord(x) ((DLword)((x)>>16))
|
||||
#define GetHiWord(x) ((DLword)((x) >> 16))
|
||||
|
||||
/****************************************************
|
||||
GetLoWord:
|
||||
*****************************************************/
|
||||
#define GetLoWord(x) ((DLword)(x))
|
||||
#define GetLoWord(x) ((DLword)(x))
|
||||
|
||||
/****************************************************
|
||||
GetLongWord:
|
||||
address: DLword*
|
||||
return: int
|
||||
address: DLword*
|
||||
return: int
|
||||
*****************************************************/
|
||||
#define GetLongWord(address) (*((LispPTR *) (address)))
|
||||
|
||||
#define GetLongWord(address) (*((LispPTR *)(address)))
|
||||
|
||||
/****************************************************
|
||||
PopCStack:
|
||||
#define PopCStack {TopOfStack = *((LispPTR *)(--CurrentStackPTR)); --CurrentStackPTR;}
|
||||
*****************************************************/
|
||||
#define PopCStack {TopOfStack = *((LispPTR *)(CurrentStackPTR)); CurrentStackPTR -= 2;}
|
||||
#define PopCStack \
|
||||
do { \
|
||||
TopOfStack = *((LispPTR *)(CurrentStackPTR)); \
|
||||
CurrentStackPTR -= 2; \
|
||||
} while (0)
|
||||
|
||||
/****************************************************
|
||||
PopStackTo: CSTK -> Place
|
||||
#define PopStackTo(Place) {Place= *((LispPTR *)(--CurrentStackPTR)); CurrentStackPTR--; }
|
||||
*****************************************************/
|
||||
#define PopStackTo(Place) {Place= *((LispPTR *)(CurrentStackPTR)); CurrentStackPTR -= 2; }
|
||||
#define PopStackTo(Place) \
|
||||
do { \
|
||||
Place = *((LispPTR *)(CurrentStackPTR)); \
|
||||
CurrentStackPTR -= 2; \
|
||||
} while (0)
|
||||
|
||||
/****************************************************
|
||||
PushCStack:
|
||||
#define PushCStack {*((int *)(++CurrentStackPTR)) = TopOfStack; ++CurrentStackPTR;}
|
||||
*****************************************************/
|
||||
#define PushCStack {CurrentStackPTR += 2;*((LispPTR *)(CurrentStackPTR)) = TopOfStack; }
|
||||
#define PushCStack \
|
||||
do { \
|
||||
CurrentStackPTR += 2; \
|
||||
*((LispPTR *)(CurrentStackPTR)) = TopOfStack; \
|
||||
} while (0)
|
||||
|
||||
/****************************************************
|
||||
PushStack:
|
||||
#define PushStack(x) {*((LispPTR *)(++CurrentStackPTR))=x;CurrentStackPTR++;}
|
||||
*****************************************************/
|
||||
#define PushStack(x) {CurrentStackPTR += 2;*((LispPTR *)(CurrentStackPTR))=x;}
|
||||
#define PushStack(x) \
|
||||
do { \
|
||||
CurrentStackPTR += 2; \
|
||||
*((LispPTR *)(CurrentStackPTR)) = x; \
|
||||
} while (0)
|
||||
|
||||
/****************************************************
|
||||
SmashStack:
|
||||
#define SmashStack(x) (*((LispPTR *)(CurrentStackPTR-1))=x)
|
||||
*****************************************************/
|
||||
#define SmashStack(x) (*((LispPTR *)(CurrentStackPTR))=x)
|
||||
#define SmashStack(x) (*((LispPTR *)(CurrentStackPTR)) = x)
|
||||
|
||||
/*********************************************************
|
||||
Get_BYTE(byteptr) byteptr: pointer to 8 bit data
|
||||
@@ -436,22 +407,20 @@ Get_BYTE(byteptr) byteptr: pointer to 8 bit data
|
||||
/***** OLD definition ************* 13 Nov 1987 takeshi ***
|
||||
#define Get_BYTE(byteptr) (((unsigned)(*(byteptr))) & 0xff)
|
||||
**********************************************/
|
||||
#define Get_BYTE(byteptr) (((BYTECODE *)BYTEPTR(byteptr))->code)
|
||||
#define Get_BYTE(byteptr) (((BYTECODE *)BYTEPTR(byteptr))->code)
|
||||
|
||||
/**********************************************************
|
||||
DOSTACKOVERFLOW(argnum,bytenum) if it needs hardreturn-cleanup
|
||||
then upnt to contextsw and immediately return
|
||||
then upnt to contextsw and immediately return
|
||||
**********************************************************/
|
||||
#define DOSTACKOVERFLOW(argnum,bytenum) { \
|
||||
if(do_stackoverflow(T)) \
|
||||
{ PushStack(S_POSITIVE | argnum); \
|
||||
contextsw(SubovFXP,bytenum,1); \
|
||||
return;\
|
||||
} \
|
||||
}
|
||||
|
||||
|
||||
|
||||
#define DOSTACKOVERFLOW(argnum, bytenum) \
|
||||
do { \
|
||||
if (do_stackoverflow(T)) { \
|
||||
PushStack(S_POSITIVE | argnum); \
|
||||
contextsw(SubovFXP, bytenum, 1); \
|
||||
return; \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
@@ -465,8 +434,6 @@ DOSTACKOVERFLOW(argnum,bytenum) if it needs hardreturn-cleanup
|
||||
/************************************************************************/
|
||||
/* All external functions defined in xxx.c now declared in xxxdefs.h */
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* E R R O R & T I M E R P U N T C A S E S */
|
||||
@@ -480,61 +447,75 @@ DOSTACKOVERFLOW(argnum,bytenum) if it needs hardreturn-cleanup
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
#define ERROR_EXIT(tos) do {TopOfStack=tos; Error_Exit = 1; return(-1);} while (0)
|
||||
#define TIMER_EXIT(tos) do {TopOfStack=tos; Error_Exit = 1; return(-2);} while (0)
|
||||
#define ERROR_EXIT(tos) \
|
||||
do { \
|
||||
TopOfStack = tos; \
|
||||
Error_Exit = 1; \
|
||||
return (-1); \
|
||||
} while (0)
|
||||
#define TIMER_EXIT(tos) \
|
||||
do { \
|
||||
TopOfStack = tos; \
|
||||
Error_Exit = 1; \
|
||||
return (-2); \
|
||||
} while (0)
|
||||
|
||||
#define WARN(message, operation) \
|
||||
do { \
|
||||
warn(message); \
|
||||
operation; \
|
||||
} while (0)
|
||||
#define NO_WOP \
|
||||
{}
|
||||
|
||||
#define WARN(message,operation) do {warn(message);operation;} while (0)
|
||||
#define NO_WOP {}
|
||||
#define NIL 0 /* added 29-jan */
|
||||
#define T 1
|
||||
#define ATOM_T 0114 /* T's AtomIndex Number 114Q */
|
||||
|
||||
#define NIL 0 /* added 29-jan */
|
||||
#define T 1
|
||||
#define ATOM_T 0114 /* T's AtomIndex Number 114Q */
|
||||
#define NIL_PTR 0 /* from cell.h 24-mar-87 take */
|
||||
#define NOBIND_PTR 1
|
||||
|
||||
#define NIL_PTR 0 /* from cell.h 24-mar-87 take */
|
||||
#define NOBIND_PTR 1
|
||||
|
||||
#define STKLIM 0x1FFFF
|
||||
#define FRAMESIZE 10 /* size of frameex1: 10 words */
|
||||
#define FNHEADSIZE 8 /* size of fnhead: 8 words */
|
||||
#define BFSIZE 2 /* size of basic frame pointer: 2 words */
|
||||
#define STKLIM 0x1FFFF
|
||||
#define FRAMESIZE 10 /* size of frameex1: 10 words */
|
||||
#define FNHEADSIZE 8 /* size of fnhead: 8 words */
|
||||
#define BFSIZE 2 /* size of basic frame pointer: 2 words */
|
||||
|
||||
#define BITSPER_DLWORD 16
|
||||
#define BITSPER_CELL 32
|
||||
#define BYTESPER_DLWORD 2
|
||||
#define BYTESPER_CELL 4
|
||||
#define BYTESPER_QUAD 8
|
||||
#define BYTESPER_PAGE 512
|
||||
#define CELLSPER_QUAD 2
|
||||
#define CELLSPER_PAGE 128
|
||||
#define CELLSPER_SEGMENT 32768
|
||||
#define DLWORDSPER_CELL 2
|
||||
#define DLWORDSPER_QUAD 4
|
||||
#define DLWORDSPER_PAGE 256
|
||||
#define DLWORDSPER_SEGMENT 65536
|
||||
#define PAGESPER_SEGMENT 256
|
||||
#define PAGESPER_MDSUNIT 2
|
||||
#define MDSINCREMENT 512
|
||||
#define BITSPER_DLWORD 16
|
||||
#define BITSPER_CELL 32
|
||||
#define BYTESPER_DLWORD 2
|
||||
#define BYTESPER_CELL 4
|
||||
#define BYTESPER_QUAD 8
|
||||
#define BYTESPER_PAGE 512
|
||||
#define CELLSPER_QUAD 2
|
||||
#define CELLSPER_PAGE 128
|
||||
#define CELLSPER_SEGMENT 32768
|
||||
#define DLWORDSPER_CELL 2
|
||||
#define DLWORDSPER_QUAD 4
|
||||
#define DLWORDSPER_PAGE 256
|
||||
#define DLWORDSPER_SEGMENT 65536
|
||||
#define PAGESPER_SEGMENT 256
|
||||
#define PAGESPER_MDSUNIT 2
|
||||
#define MDSINCREMENT 512
|
||||
|
||||
#define GUARDSTORAGEFULL 128
|
||||
#define GUARD1STORAGEFULL 64
|
||||
#define GUARDSTORAGEFULL 128
|
||||
#define GUARD1STORAGEFULL 64
|
||||
|
||||
#define SFS_NOTSWITCHABLE 1
|
||||
#define SFS_SWITCHABLE 2
|
||||
#define SFS_ARRAYSWITCHED 3
|
||||
#define SFS_FULLYSWITCHED 4
|
||||
#define SFS_NOTSWITCHABLE 1
|
||||
#define SFS_SWITCHABLE 2
|
||||
#define SFS_ARRAYSWITCHED 3
|
||||
#define SFS_FULLYSWITCHED 4
|
||||
|
||||
#define AtomHTSIZE 256 * DLWORDSPER_PAGE
|
||||
|
||||
#define AtomHTSIZE 256 * DLWORDSPER_PAGE
|
||||
|
||||
#define MAXPNCHARS 255 /* Maximum length of PnChars */
|
||||
#define MAXPNCHARS 255 /* Maximum length of PnChars */
|
||||
|
||||
#ifndef FALSE
|
||||
#define FALSE 0
|
||||
#define TRUE !FALSE
|
||||
#define TRUE !FALSE
|
||||
#endif
|
||||
|
||||
typedef unsigned int boolean;
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* Define sizes of FN and FNX opcodes; depends on atom size */
|
||||
/************************************************************************/
|
||||
@@ -550,8 +531,6 @@ typedef unsigned int boolean;
|
||||
#define FNX_OPCODE_SIZE 4
|
||||
#endif /* BIGATOMS */
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* Definitions for "NEW" Symbols */
|
||||
@@ -561,31 +540,27 @@ typedef unsigned int boolean;
|
||||
/************************************************************************/
|
||||
#ifdef BIGATOMS
|
||||
|
||||
typedef struct newatom
|
||||
{
|
||||
LispPTR na_pname; /* Pointer to the print name */
|
||||
LispPTR na_value; /* The value cell */
|
||||
LispPTR na_defn; /* The definition cell */
|
||||
LispPTR na_plist; /* The property list */
|
||||
LispPTR na_flags; /* flags from other cells, to make BIGVM work ok */
|
||||
} NEWATOM;
|
||||
typedef struct newatom {
|
||||
LispPTR na_pname; /* Pointer to the print name */
|
||||
LispPTR na_value; /* The value cell */
|
||||
LispPTR na_defn; /* The definition cell */
|
||||
LispPTR na_plist; /* The property list */
|
||||
LispPTR na_flags; /* flags from other cells, to make BIGVM work ok */
|
||||
} NEWATOM;
|
||||
|
||||
/* Offsets, in WORDS, from the start of the NEWATOM structure */
|
||||
#define NEWATOM_PNAME_OFFSET 0
|
||||
#define NEWATOM_VALUE_OFFSET 2
|
||||
#define NEWATOM_DEFN_OFFSET 4
|
||||
#define NEWATOM_PLIST_OFFSET 6
|
||||
/* Offsets, in WORDS, from the start of the NEWATOM structure */
|
||||
#define NEWATOM_PNAME_OFFSET 0
|
||||
#define NEWATOM_VALUE_OFFSET 2
|
||||
#define NEWATOM_DEFN_OFFSET 4
|
||||
#define NEWATOM_PLIST_OFFSET 6
|
||||
|
||||
|
||||
/* Offsets, in cells from start of the NEWATOM structure */
|
||||
#define NEWATOM_PNAME_PTROFF 0
|
||||
#define NEWATOM_VALUE_PTROFF 1
|
||||
#define NEWATOM_DEFN_PTROFF 2
|
||||
#define NEWATOM_PLIST_PTROFF 3
|
||||
/* Offsets, in cells from start of the NEWATOM structure */
|
||||
#define NEWATOM_PNAME_PTROFF 0
|
||||
#define NEWATOM_VALUE_PTROFF 1
|
||||
#define NEWATOM_DEFN_PTROFF 2
|
||||
#define NEWATOM_PLIST_PTROFF 3
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* Mask to mask off relevant bits in a pointer. */
|
||||
@@ -593,17 +568,14 @@ typedef struct newatom
|
||||
/************************************************************************/
|
||||
#ifdef BIGVM
|
||||
#define POINTERMASK 0xfffffff
|
||||
#define SEGMASK 0xfff0000
|
||||
#define mPAGEMASK 0xfffff00
|
||||
#define SEGMASK 0xfff0000
|
||||
#define mPAGEMASK 0xfffff00
|
||||
#else
|
||||
#define POINTERMASK 0xffffff
|
||||
#define SEGMASK 0xff0000
|
||||
#define mPAGEMASK 0xffff00
|
||||
#define SEGMASK 0xff0000
|
||||
#define mPAGEMASK 0xffff00
|
||||
#endif /* BIGVM */
|
||||
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* F P t o V P M a n i p u l a t i o n */
|
||||
@@ -612,10 +584,9 @@ typedef struct newatom
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
|
||||
#ifdef BIGVM
|
||||
#define GETFPTOVP(b,o) b[o]
|
||||
#define GETPAGEOK(b,o) (b[o]>>16)
|
||||
#define GETFPTOVP(b, o) b[o]
|
||||
#define GETPAGEOK(b, o) (b[o] >> 16)
|
||||
#else
|
||||
#define GETFPTOVP GETWORDBASEWORD
|
||||
#define GETPAGEOK GETWORDBASEWORD
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#ifndef LISPMAP_H
|
||||
#define LISPMAP_H 1
|
||||
|
||||
/* $Id: lispmap.h,v 1.3 1999/01/03 02:06:08 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
@@ -381,3 +384,5 @@
|
||||
#define D_PNHI 010
|
||||
#define D_DEFSHI 012
|
||||
#define D_VALSHI 014
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#ifndef LLCOLORDEFS_H
|
||||
#define LLCOLORDEFS_H 1
|
||||
#include "lispemul.h" /* for LispPTR */
|
||||
LispPTR cgfour_init_color_display(LispPTR color_bitmapbase);
|
||||
LispPTR cgfour_change_screen_mode(LispPTR which_screen);
|
||||
LispPTR cgfour_set_colormap(LispPTR args[]);
|
||||
|
||||
@@ -2,8 +2,6 @@
|
||||
#define LLDSP_H 1
|
||||
/* $Id: lldsp.h,v 1.2 1999/01/03 02:06:09 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* (C) Copyright 1989-92 Venue. All Rights Reserved. */
|
||||
@@ -11,7 +9,6 @@
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
|
||||
/***************************************************************/
|
||||
/*
|
||||
lldsp.h
|
||||
@@ -22,6 +19,9 @@
|
||||
|
||||
*/
|
||||
/***************************************************************/
|
||||
#include "lispemul.h" /* for LispPTR, DLword */
|
||||
#include "version.h" /* for BIGVM */
|
||||
|
||||
#ifndef BYTESWAP
|
||||
#ifdef BIGVM
|
||||
typedef struct {
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#ifndef LLSTKDEFS_H
|
||||
#define LLSTKDEFS_H 1
|
||||
#include "stack.h"
|
||||
#include "lispemul.h" /* for DLword */
|
||||
#include "stack.h" /* for FX, StackWord, Bframe */
|
||||
int do_stackoverflow(int incallp);
|
||||
DLword *freestackblock(DLword n, StackWord *start68k, int align);
|
||||
void decusecount68k(register FX *frame68k);
|
||||
|
||||
@@ -2,16 +2,13 @@
|
||||
#define LOCFILE_H 1
|
||||
/* $Id: locfile.h,v 1.2 1999/01/03 02:06:13 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */
|
||||
|
||||
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/* */
|
||||
/* (C) Copyright 1989-94 Venue. All Rights Reserved. */
|
||||
/* Manufactured in the United States of America. */
|
||||
/* */
|
||||
/************************************************************************/
|
||||
|
||||
#include "lispemul.h" /* for DLword */
|
||||
|
||||
#define FDEV_PAGE_SIZE 512 /* 1 page == 512 byte */
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user