/* Copyright (c) 1979 Regents of the University of California */
* Pi - Pascal interpreter code translator
* Bill Joy UCB February 6, 1978
int pin
[259]; /* Unit 0 */
extern char printed
, hadsome
, *lastname
, *obj
;
#define getaw() getw(pin)
#define getac() getc(pin)
#define sgetaw() sreloc(getaw())
#define tgetaw() treloc(getaw())
#define TREENMAX 6 /* From tree.c */
int loctree
[TREENMAX
* 2], locstring
[514];
dprintf("%s\t", rnames
[i
]);
lastname
= sreloc(getaw());
errfile
= sreloc(getaw());
dprintf("lastname \"%s\"\n\t", lastname
);
dprintf("ackd %d\n\t", ackd
);
dprintf("b%d ", opts
[1]);
dprintf("\n\tefil %d\n", efil
);
dprintf("\terrfile \"%s\"\n", errfile
);
dprintf("\tofil %d\n", ofil
);
dprintf("%d ", toffset(spacep
));
if (i
< 0 || i
> T_LAST
) {
dprintf("\tBAD: %d\n", i
);
dprintf("\t%s:", trnames
[i
]);
while ((ch
= getac()) && ch
!= -1) {
dprintf(" \"%s\"", ip
[-1]);
if (i
!= toffset(spacep
))
dprintf("trchk %d, have %d\n", i
, toffset(spacep
));
dprintf("\t%d\n", toffset(spacep
));
while ((ch
= getac()) && ch
!= -1) {
loctree
[0] = treloc(getaw());
loctree
[1] = sreloc(getaw());
loctree
[2] = treloc(getaw());
dprintf(" %d", loctree
[0]);
dprintf(" \"%s\"", loctree
[1]);
const(loctree
[0], loctree
[1], loctree
[2]);
loctree
[1] = sreloc(getaw());
loctree
[2] = treloc(getaw());
dprintf(" %d", loctree
[0]);
dprintf(" \"%s\"", loctree
[1]);
type(loctree
[0], loctree
[1], loctree
[2]);
loctree
[1] = treloc(getaw());
loctree
[2] = treloc(getaw());
dprintf(" %d", loctree
[0]);
var(loctree
[0], loctree
[1], loctree
[2]);
loctree
[0] = treloc(getaw());
fp2
[cbn
] = funchdr(loctree
[0]);
loctree
[0] = treloc(getaw());
lastname
= sreloc(getaw());
filename
= sreloc(getaw());
dprintf(" %d", loctree
[1]);
dprintf(" %d", loctree
[2]);
dprintf(" lastname=%s", lastname
);
dprintf(" filename=%s", filename
);
dprintf(" printed=%d", printed
);
dprintf(" hadsome=%d", hadsome
);
funcend(fp2
[cbn
-1], loctree
[0], loctree
[1], loctree
[2]);
dprintf("I should be dead!\n");
i
[2] = (hadsome
<< 8) | printed
;
dprintf(a1
, a2
, a3
, a4
, a5
)
printf(a1
, a2
, a3
, a4
, a5
);