indir
end
name "2-2 Interpreter support"
-dir mach/int22
+dir mach/em22
indir
end
name "2-4 Interpreter support"
-dir mach/int24
+dir mach/em24
indir
end
name "4-4 Interpreter support"
-dir mach/int44
+dir mach/em24
indir
end
name "Motorola 68000 2-4 support"
var f=4 # float size 4
var d=8 # double size 8
var M=int # Unused in this example
-var NAME=int22 # for cpp (NAME=int results in #define int 1)
+var NAME=em22 # for cpp (NAME=em22 results in #define em22 1)
var LIB=mach/int/lib/tail_ # part of file name for libraries
var RT=mach/int/lib/head_ # part of file name for run-time startoff
var SIZE_FLAG=\-sm # default internal table size flag
calls (with exec(II)):
.DS X
.ta 4n
-1) /lib/cpp \-I../h \-I/usr/em/include \-Dint22 \-DEM_WSIZE=2 \-DEM_PSIZE=2 \e
+1) /lib/cpp \-I../h \-I/usr/em/include \-Dem22 \-DEM_WSIZE=2 \-DEM_PSIZE=2 \e
\-DEM_SSIZE=2 \-DEM_LSIZE=4 \-DEM_FSIZE=4 \-DEM_DSIZE=8 prog.c
2) /usr/em/lib/em_cem \-Vw2i2p2f4s2l4d8 \-l
3) /usr/em/lib/em_ass \-sm /usr/em/mach/int/lib/head_cc \-o e.out prog.k
Occam
Modula-2
-int22 EM machine 2/2 C * int22 Needs interpreter
+em22 EM machine 2/2 C * em22 Needs interpreter
Pascal
Basic
Occam
Modula-2
-int24 EM machine 2/4 C * int24 Needs interpreter
+em24 EM machine 2/4 C * em24 Needs interpreter
Pascal
Basic
Occam
Modula-2
-int44 EM machine 4/4 C * int44 Needs interpreter
+em44 EM machine 4/4 C * em44 Needs interpreter
Pascal
Basic
Occam
s2650 Signetics 2650 s2650 Assembler only
.TE
.PP
-The commands \fBint22\fP, \fBint24\fP and \fBint44\fP
+The commands \fBem22\fP, \fBem24\fP and \fBem44\fP
produce e.out files with EM machine code which must be interpreted.
The Kit contains two interpreters: one running under PDP 11/V7 UNIX,
and one for the M68000, running under the PMDS system, SUN systems,
.LP
The program \fBem\fP in the bin directory calls the appropriate
interpreter.
-The interpreters are sought in the int22, int24 and int44
+The interpreters are sought in the em22, em24 and em44
subdirectories of lib.
.NH
Compilation on a different machine.
)
( cd ../mach
: machines with word or pointer size not 2
- for i in int24 int44 m68020 m68k2 m68k4 mantra ns sun2 sun3 vax4
+ for i in em24 em44 m68020 m68k2 m68k4 mantra ns sun2 sun3 vax4
do
cp $i/Action $i/Action.orig
ed - $i/Action <<ABC
Wed Apr 27 13:01:47 MET DST 1988
***** ctconv
-int24 -DNOFLOAT conv.c
+em24 -DNOFLOAT conv.c
conv.c
"conv.c", line 38: (warning) overflow in constant expression
running conv.cem
> (short) 0x1f010L = 0xfffff010
*** Error code 1 (ignored)
***** ctdecl
-int24 -DNOFLOAT decl.c
+em24 -DNOFLOAT decl.c
decl.c
running decl.cem
comparing decl
***** ctdivers
-int24 -DNOFLOAT ops.c
+em24 -DNOFLOAT ops.c
ops.c
running ops.cem
comparing ops
> u<<16 32163200000
*** Error code 1 (ignored)
***** cterr
-int24 -DNOFLOAT bugs.c
+em24 -DNOFLOAT bugs.c
bugs.c
"bugs.c", line 88: (warning) overflow in constant expression
running bugs.cem
comparing bugs
***** ctest1
-int24 -DNOFLOAT test.c
+em24 -DNOFLOAT test.c
test.c
running test.cem
comparing test
> End of test program, 11 tests completed, 0 errors detected
*** Error code 1 (ignored)
***** ctest2
-int24 -DNOFLOAT t7.c
+em24 -DNOFLOAT t7.c
t7.c
running t7.cem
comparing t7
***** ctest3
-int24 -DNOFLOAT test2.c
+em24 -DNOFLOAT test2.c
test2.c
"test2.c", line 448: (warning) conversion of pointer to int loses accuracy
"test2.c", line 448: (warning) conversion of pointer to int loses accuracy
running test2.cem
comparing test2
***** ctest5
-int24 -DNOFLOAT test1.c
+em24 -DNOFLOAT test1.c
test1.c
"test1.c", line 375: (warning) incompatible pointers in =
"test1.c", line 376: (warning) incompatible pointers in =
*** Error code 1 (ignored)
***** ctgen
sed -f bf.sed <OPS >bf.c
-int24 -DNOFLOAT bf.c
+em24 -DNOFLOAT bf.c
bf.c
running bf.cem
comparing bf
sed -f cel.sed <OPS >cel.c
-int24 -DNOFLOAT cel.c
+em24 -DNOFLOAT cel.c
cel.c
running cel.cem
comparing cel
sed -f clu.sed <OPS >clu.c
-int24 -DNOFLOAT clu.c
+em24 -DNOFLOAT clu.c
clu.c
"clu.c", line 60: (warning) overflow in unsigned constant expression
"clu.c", line 66: (warning) overflow in unsigned constant expression
> yes if ( x ^= 40000 ) yes() ; else no() 40010
*** Error code 1 (ignored)
sed -f ec.sed <OPS >ec.c
-int24 -DNOFLOAT ec.c
+em24 -DNOFLOAT ec.c
ec.c
"ec.c", line 58: (warning) overflow in constant expression
"ec.c", line 64: (warning) overflow in constant expression
running ec.cem
comparing ec
sed -f ef.sed <OPS >ef.c
-int24 -DNOFLOAT ef.c
+em24 -DNOFLOAT ef.c
ef.c
running ef.cem
comparing ef
> yes if ( ++ x ) yes() ; else no() 4.141500e+00
*** Error code 1 (ignored)
sed -f ei.sed <OPS >ei.c
-int24 -DNOFLOAT ei.c
+em24 -DNOFLOAT ei.c
ei.c
"ei.c", line 22: (warning) overflow in constant expression
"ei.c", line 65: (warning) overflow in constant expression
> yes if ( x <<= 15 ) yes() ; else no() 8355840
*** Error code 1 (ignored)
sed -f el.sed <OPS >el.c
-int24 -DNOFLOAT el.c
+em24 -DNOFLOAT el.c
el.c
running el.cem
comparing el
sed -f eu.sed <OPS >eu.c
-int24 -DNOFLOAT eu.c
+em24 -DNOFLOAT eu.c
eu.c
"eu.c", line 58: (warning) overflow in unsigned constant expression
"eu.c", line 64: (warning) overflow in unsigned constant expression
> yes if ( x ^= 40000 ) yes() ; else no() 40010
*** Error code 1 (ignored)
sed -f id.sed <OPS >id.c
-int24 -DNOFLOAT id.c
+em24 -DNOFLOAT id.c
id.c
running id.cem
comparing id
> yes if ( ++ x ) yes() ; else no() 4.141500e+00
*** Error code 1 (ignored)
sed -f lc.sed <OPS >lc.c
-int24 -DNOFLOAT lc.c
+em24 -DNOFLOAT lc.c
lc.c
"lc.c", line 60: (warning) overflow in constant expression
"lc.c", line 66: (warning) overflow in constant expression
running lc.cem
comparing lc
sed -f ld.sed <OPS >ld.c
-int24 -DNOFLOAT ld.c
+em24 -DNOFLOAT ld.c
ld.c
running ld.cem
comparing ld
> yes if ( ++ x ) yes() ; else no() 4.141500e+00
*** Error code 1 (ignored)
sed -f lf.sed <OPS >lf.c
-int24 -DNOFLOAT lf.c
+em24 -DNOFLOAT lf.c
lf.c
running lf.cem
comparing lf
> yes if ( ++ x ) yes() ; else no() 4.141500e+00
*** Error code 1 (ignored)
sed -f li.sed <OPS >li.c
-int24 -DNOFLOAT li.c
+em24 -DNOFLOAT li.c
li.c
"li.c", line 22: (warning) overflow in constant expression
"li.c", line 67: (warning) overflow in constant expression
> yes if ( x <<= 15 ) yes() ; else no() 8355840
*** Error code 1 (ignored)
sed -f ll.sed <OPS >ll.c
-int24 -DNOFLOAT ll.c
+em24 -DNOFLOAT ll.c
ll.c
running ll.cem
comparing ll
sed -f lu.sed <OPS >lu.c
-int24 -DNOFLOAT lu.c
+em24 -DNOFLOAT lu.c
lu.c
running lu.cem
comparing lu
*** Error code 1 (ignored)
***** ctill
----- All program(s) in this directory should fail to compile.
-int24 -DNOFLOAT noarg.c
+em24 -DNOFLOAT noarg.c
noarg.c
"noarg.c", line 14: name not in parameter list
*** Error code 1
`gen' not remade because of errors
***** ctinit
-int24 -DNOFLOAT init.c
+em24 -DNOFLOAT init.c
init.c
"init.c", line 172: (warning) overflow in constant expression
running init.cem
>
*** Error code 1 (ignored)
***** ctmargt
-int24 -DNOFLOAT margt.c
+em24 -DNOFLOAT margt.c
margt.c
running margt.cem
comparing margt
***** ctprof
test profiling
procentry.c
-int24 -DNOFLOAT tp.c procentry.m
+em24 -DNOFLOAT tp.c procentry.m
tp.c
running tp.cem
comparing tp
***** ctsetjmp
-int24 -DNOFLOAT stjmp.c
+em24 -DNOFLOAT stjmp.c
stjmp.c
running stjmp.cem
comparing stjmp
***** ctstruct
-int24 -DNOFLOAT str.c
+em24 -DNOFLOAT str.c
str.c
running str.cem
comparing str
***** ctsys
-int24 -DNOFLOAT tfork.c
+em24 -DNOFLOAT tfork.c
tfork.c
running tfork.cem
comparing tfork
Thu Apr 28 12:20:53 MET DST 1988
***** ctconv
-int24 conv.c
+em24 conv.c
conv.c
"conv.c", line 38: (warning) overflow in constant expression
running conv.cem
> char -8, int 75000, unsigned short 22370, long 75000
*** Error code 1 (ignored)
***** ctdecl
-int24 decl.c
+em24 decl.c
decl.c
running decl.cem
comparing decl
***** ctdivers
-int24 ops.c
+em24 ops.c
ops.c
running ops.cem
comparing ops
> u<<16 32163200000
*** Error code 1 (ignored)
***** cterr
-int24 bugs.c
+em24 bugs.c
bugs.c
"bugs.c", line 88: (warning) overflow in constant expression
running bugs.cem
comparing bugs
***** ctest1
-int24 test.c
+em24 test.c
test.c
running test.cem
comparing test
***** ctest2
-int24 t7.c
+em24 t7.c
t7.c
running t7.cem
comparing t7
***** ctest3
-int24 test2.c
+em24 test2.c
test2.c
"test2.c", line 448: (warning) conversion of pointer to int loses accuracy
"test2.c", line 448: (warning) conversion of pointer to int loses accuracy
running test2.cem
comparing test2
***** ctest5
-int24 test1.c
+em24 test1.c
test1.c
"test1.c", line 375: (warning) incompatible pointers in =
"test1.c", line 376: (warning) incompatible pointers in =
comparing test1
***** ctgen
sed -f bf.sed <OPS >bf.c
-int24 bf.c
+em24 bf.c
bf.c
running bf.cem
comparing bf
sed -f cel.sed <OPS >cel.c
-int24 cel.c
+em24 cel.c
cel.c
running cel.cem
comparing cel
sed -f clu.sed <OPS >clu.c
-int24 clu.c
+em24 clu.c
clu.c
"clu.c", line 60: (warning) overflow in unsigned constant expression
"clu.c", line 66: (warning) overflow in unsigned constant expression
> yes if ( x ^= 40000 ) yes() ; else no() 40010
*** Error code 1 (ignored)
sed -f ec.sed <OPS >ec.c
-int24 ec.c
+em24 ec.c
ec.c
"ec.c", line 58: (warning) overflow in constant expression
"ec.c", line 64: (warning) overflow in constant expression
running ec.cem
comparing ec
sed -f ef.sed <OPS >ef.c
-int24 ef.c
+em24 ef.c
ef.c
running ef.cem
comparing ef
sed -f ei.sed <OPS >ei.c
-int24 ei.c
+em24 ei.c
ei.c
"ei.c", line 22: (warning) overflow in constant expression
"ei.c", line 65: (warning) overflow in constant expression
> yes if ( x <<= 15 ) yes() ; else no() 8355840
*** Error code 1 (ignored)
sed -f el.sed <OPS >el.c
-int24 el.c
+em24 el.c
el.c
running el.cem
comparing el
sed -f eu.sed <OPS >eu.c
-int24 eu.c
+em24 eu.c
eu.c
"eu.c", line 58: (warning) overflow in unsigned constant expression
"eu.c", line 64: (warning) overflow in unsigned constant expression
> yes if ( x ^= 40000 ) yes() ; else no() 40010
*** Error code 1 (ignored)
sed -f id.sed <OPS >id.c
-int24 id.c
+em24 id.c
id.c
running id.cem
comparing id
sed -f lc.sed <OPS >lc.c
-int24 lc.c
+em24 lc.c
lc.c
"lc.c", line 60: (warning) overflow in constant expression
"lc.c", line 66: (warning) overflow in constant expression
running lc.cem
comparing lc
sed -f ld.sed <OPS >ld.c
-int24 ld.c
+em24 ld.c
ld.c
running ld.cem
comparing ld
sed -f lf.sed <OPS >lf.c
-int24 lf.c
+em24 lf.c
lf.c
running lf.cem
comparing lf
sed -f li.sed <OPS >li.c
-int24 li.c
+em24 li.c
li.c
"li.c", line 22: (warning) overflow in constant expression
"li.c", line 67: (warning) overflow in constant expression
> yes if ( x <<= 15 ) yes() ; else no() 8355840
*** Error code 1 (ignored)
sed -f ll.sed <OPS >ll.c
-int24 ll.c
+em24 ll.c
ll.c
running ll.cem
comparing ll
sed -f lu.sed <OPS >lu.c
-int24 lu.c
+em24 lu.c
lu.c
running lu.cem
comparing lu
*** Error code 1 (ignored)
***** ctill
----- All program(s) in this directory should fail to compile.
-int24 noarg.c
+em24 noarg.c
noarg.c
"noarg.c", line 14: name not in parameter list
*** Error code 1
`gen' not remade because of errors
***** ctinit
-int24 init.c
+em24 init.c
init.c
"init.c", line 172: (warning) overflow in constant expression
running init.cem
>
*** Error code 1 (ignored)
***** ctmargt
-int24 margt.c
+em24 margt.c
margt.c
running margt.cem
comparing margt
***** ctprof
test profiling
procentry.c
-int24 tp.c procentry.m
+em24 tp.c procentry.m
tp.c
running tp.cem
comparing tp
***** ctsetjmp
-int24 stjmp.c
+em24 stjmp.c
stjmp.c
running stjmp.cem
comparing stjmp
***** ctstruct
-int24 str.c
+em24 str.c
str.c
running str.cem
comparing str
***** ctsys
-int24 tfork.c
+em24 tfork.c
tfork.c
running tfork.cem
comparing tfork
*p = 0;
_Traps__Message(q, 0, (int) (p - q), 1);
}
-#ifndef int24
-#ifndef int44
-#ifndef int22
+#ifndef em24
+#ifndef em44
+#ifndef em22
if (trapno == M2_UNIXSIG) {
extern int __signo;
signal(__signo, SIG_DFL);
Version: $Header$
*/
-#ifndef int22
-#ifndef int24
-#ifndef int44
+#ifndef em22
+#ifndef em24
+#ifndef em44
#define EM_trap(n) TRP(n) /* define to whatever is needed to cause the trap */
descr
i80
i86
-int22
-int24
-int44
+em22
+em24
+em44
m68020
m68k2
m68k4
var l=4
var f=4
var d=8
-var M=int
-var NAME=int22
-var LIB=lib/int22/tail_
-var RT=lib/int22/head_
+var M=em22
+var NAME=em22
+var LIB=lib/em22/tail_
+var RT=lib/em22/head_
var SIZE_FLAG=-sm
var CPP_F=-Dunix=unix
var INCLUDES=-I{EM}/include/_tail_cc -I{EM}/include/_tail_mon
var l=4
var f=4
var d=8
-var M=int24
-var NAME=int24
-var LIB=lib/int24/tail_
-var RT=lib/int24/head_
+var M=em24
+var NAME=em24
+var LIB=lib/em24/tail_
+var RT=lib/em24/head_
var SIZE_FLAG=-sm
var CPP_F=-Dunix=unix
var INCLUDES=-I{EM}/include/_tail_cc -I{EM}/include/_tail_mon
var l=4
var f=4
var d=8
-var M=int44
-var NAME=int44
-var LIB=lib/int44/tail_
-var RT=lib/int44/head_
+var M=em44
+var NAME=em44
+var LIB=lib/em44/tail_
+var RT=lib/em44/head_
var SIZE_FLAG=-sm
var CPP_F=-Dunix=unix
var INCLUDES=-I{EM}/include/_tail_cc -I{EM}/include/_tail_mon
compare
i86
install
-int22
-int24
-int44
+em22
+em24
+em44
m68k2
m68k4
m68020
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int22" "SUF=$(SUF)"
+MACHDEF="MACH=em22" "SUF=$(SUF)"
BCDEF="PREF=bc" "SUB=" "SRC=lang/basic/lib"
install:
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int22" "SUF=$(SUF)"
+MACHDEF="MACH=em22" "SUF=$(SUF)"
STDIO="PREF=cc" "SUB=.1s" "SRC=lang/cem/libcc/stdio"
GEN="PREF=cc" "SUB=.2g" "SRC=lang/cem/libcc/gen"
MON="PREF=mon" "SRC=lang/cem/libcc/mon"
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int22" "SUF=$(SUF)"
+MACHDEF="MACH=em22" "SUF=$(SUF)"
M2DEF="PREF=m2" "SUB=" "SRC=lang/m2/libm2"
all:
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int22" "SUF=$(SUF)"
+MACHDEF="MACH=em22" "SUF=$(SUF)"
PCDEF="PREF=ocm" "SUB=" "SRC=lang/occam/lib"
install:
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int22" "SUF=$(SUF)"
+MACHDEF="MACH=em22" "SUF=$(SUF)"
PCDEF="PREF=pc" "SUB=" "SRC=lang/pc/libpc"
install:
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int24" "SUF=$(SUF)"
+MACHDEF="MACH=em24" "SUF=$(SUF)"
BCDEF="PREF=bc" "SUB=" "SRC=lang/basic/lib"
install:
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int24" "SUF=$(SUF)"
+MACHDEF="MACH=em24" "SUF=$(SUF)"
STDIO="PREF=cc" "SUB=.1s" "SRC=lang/cem/libcc/stdio"
GEN="PREF=cc" "SUB=.2g" "SRC=lang/cem/libcc/gen"
MON="PREF=mon" "SRC=lang/cem/libcc/mon"
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int24" "SUF=$(SUF)"
+MACHDEF="MACH=em24" "SUF=$(SUF)"
M2DEF="PREF=m2" "SUB=" "SRC=lang/m2/libm2"
all:
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int24" "SUF=$(SUF)"
+MACHDEF="MACH=em24" "SUF=$(SUF)"
PCDEF="PREF=ocm" "SUB=" "SRC=lang/occam/lib"
install:
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int24" "SUF=$(SUF)"
+MACHDEF="MACH=em24" "SUF=$(SUF)"
PCDEF="PREF=pc" "SUB=" "SRC=lang/pc/libpc"
install:
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int44" "SUF=$(SUF)"
+MACHDEF="MACH=em44" "SUF=$(SUF)"
BCDEF="PREF=bc" "SUB=" "SRC=lang/basic/lib"
install:
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int44" "SUF=$(SUF)"
+MACHDEF="MACH=em44" "SUF=$(SUF)"
STDIO="PREF=cc" "SUB=.1s" "SRC=lang/cem/libcc/stdio"
GEN="PREF=cc" "SUB=.2g" "SRC=lang/cem/libcc/gen"
MON="PREF=mon" "SRC=lang/cem/libcc/mon"
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int44" "SUF=$(SUF)"
+MACHDEF="MACH=em44" "SUF=$(SUF)"
M2DEF="PREF=m2" "SUB=" "SRC=lang/m2/libm2"
all:
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int44" "SUF=$(SUF)"
+MACHDEF="MACH=em44" "SUF=$(SUF)"
PCDEF="PREF=ocm" "SUB=" "SRC=lang/occam/lib"
install:
SUF=m
MAKEFILE=../../proto/libg/Makefile
-MACHDEF="MACH=int44" "SUF=$(SUF)"
+MACHDEF="MACH=em44" "SUF=$(SUF)"
PCDEF="PREF=pc" "SUB=" "SRC=lang/pc/libpc"
install:
P = mloop
FILES=deffile $P0 $P1 $P2 $P3 $P4 $P5 $P6 $P7 $P8 $P9 $Pa $Pb $Pc
CPP=../../../lib/cpp
-b=../../../lib/int
+b=../../../lib/em
FLTRAP=
all: $(INTS) em
The information in the header of the e.out file is used by em to select the
right interpreter for the word size of used in the e.out file.
.PP
-This interpreter is searched for in ~em/lib/int[24]4.
+This interpreter is searched for in ~em/lib/em[24]4.
.PP
The flags control the following options that can be turned off
or on by prepending them with - or + respectively:
.PP
These flags
give rise to 5 different interpreters which are in the
-directory ~em/lib/int24 or in ~em/lib/int44
+directory ~em/lib/em24 or in ~em/lib/em44
for the two byte word or the four byte word options, respectively.
.PP
.SH "FILES"
-.IP ~em/lib/int[24]4/em_???? 35
+.IP ~em/lib/em[24]4/em_???? 35
interpreters proper
.IP em_profile
profile data
eb.s
em.s
fpp.s
-int22
+em22
mli4.s
because the UNIX and CP/M conventions
about end of file and end of line differ.
Also, the size of "double" must be 4 bytes.
-To accomplish this, use the "int22" ack-description file from this
+To accomplish this, use the "em22" ack-description file from this
directory, by putting it in the directory where you perform the compilation.
Then the following sequence can be used to transmit it to CP/M.
cv <e.out >file.cv
--- /dev/null
+# $Revision$
+var w=2
+var p=2
+var s=2
+var l=4
+var f=4
+var d=4
+var M=em22
+var NAME=em22
+var LIB=lib/em22/tail_
+var RT=lib/em22/head_
+var SIZE_FLAG=-sm
+var CPP_F=-DCPM=CPM
+var INCLUDES=-I{EM}/include/_tail_cc -I{EM}/include/_tail_mon
+name asld
+ from .k.m.a.g
+ to .out
+ outfile e.out
+ program {EM}/lib/em_ass
+ mapflag -l* LNAME={EM}/{LIB}*
+ mapflag -+* ASS_F={ASS_F?} -+*
+ mapflag --* ASS_F={ASS_F?} --*
+ mapflag -s* SIZE_FLAG=-s*
+ args {SIZE_FLAG} \
+ ({RTS}:.b.c={EM}/{RT}cc) ({RTS}:.p={EM}/{RT}pc) -o > < \
+ (.p:{TAIL}={EM}/{LIB}pc) \
+ (.b:{TAIL}={EM}/{LIB}bc) \
+ (.b.c:{TAIL}={EM}/{LIB}cc.1s {EM}/{LIB}cc.2g) \
+ (.b.c.p:{TAIL}={EM}/{LIB}mon)
+ linker
+end
FE=fe
INTABLES=pdp
LNTABLES=acc apc abc ocm m2 vax4 i86 m68k2 m68k4 pmds pmds4 mantra \
- m68020 z8000 int22 int24 int44 6500 6800 6805 6809 i80 ns s2650 z80 \
+ m68020 z8000 em22 em24 em44 6500 6800 6805 6809 i80 ns s2650 z80 \
sun3 sun2 xenix3 minix minixST
INCLUDES=-I$(EMHOME)/h
CFLAGS=-O $(INCLUDES)
\fIa.out\fP files containing machine code and \fIe.out\fP
files containing virtual EM machine code.
The last type is designed for interpretation; it is obtained by calling
-the compiler as \fIint22\fP, \fIint24\fP, or \fIint44\fP.
+the compiler as \fIem22\fP, \fIem24\fP, or \fIem44\fP.
Compilation time for interpretation is fast and gives many
runtime checks,
but execution is about seven times slower.