1988-06-22 16:57:09 +00:00
|
|
|
# $Header$
|
|
|
|
|
|
|
|
This directory contains the sources of the EM interpreter. A parallel
|
|
|
|
directory contains the manual page and the documentation. Two types of
|
|
|
|
interpreters can be generated.
|
|
|
|
|
|
|
|
- Normal Version
|
|
|
|
A call to make will result in the generation of an interpreter, int. This
|
|
|
|
interpreter will do full checking and can do logging on request. It is the
|
|
|
|
normal interpreter to be used for software checking and grooming.
|
|
|
|
|
|
|
|
- Fast Version
|
|
|
|
If the interpreter is used for the purpose of running programs rather than for
|
|
|
|
testing them, a considerably faster version can be generated by undefining the
|
|
|
|
macro LOGGING in the include file logging.h . This interpreter will
|
|
|
|
still give some warnings: about bad trap numbers, unimplemented system calls
|
|
|
|
and the occurrence of traps.
|
|
|
|
|
|
|
|
There are a small number of compile-time flags, each in a separate file:
|
|
|
|
loggin.h - distinguishes between normal and fast version
|
|
|
|
debug.h - ignore
|
|
|
|
segcheck.h - ignore
|
|
|
|
sysidf.h - define the approrpiate system name
|
|
|
|
v7ioctl.h - define if ioctl requests should conform to UNIX V7
|
|
|
|
nofloat.h - define if the C compiler used has no floating point
|
|
|
|
|
|
|
|
|
1988-06-24 15:59:07 +00:00
|
|
|
There are two subdirectories:
|
|
|
|
switch - generates opcode-analysing switches
|
|
|
|
test - contains testprograms
|
|
|
|
|
|
|
|
|
1988-06-22 16:57:09 +00:00
|
|
|
Installation note:
|
|
|
|
The file do_fpar.c (do floating point arithmetic) contains a macro MAXDOUBLE
|
|
|
|
which defines the largest possible double on the present machine. It is set to
|
|
|
|
99.e999, which may not be acceptable to your compiler. Adjust as necessary.
|
|
|
|
|
|
|
|
Note:
|
|
|
|
This interpreter assumes that the char in the C compiler used to translate
|
|
|
|
the interpreter, is a signed char. It is not impossible to adapt the
|
|
|
|
interpreter to unsigned chars, but it is not trivial.
|
|
|
|
|