READ_ME 1.7 KB

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