mirror of
https://github.com/PDP-10/its.git
synced 2026-04-14 16:05:00 +00:00
171 lines
4.0 KiB
C
171 lines
4.0 KiB
C
#
|
|
#include <stdio.h>
|
|
#include <lex.h>
|
|
|
|
extern int _lmovb();
|
|
|
|
#line 4 "BTOB.LXI"
|
|
|
|
struct maptab {
|
|
char *old;
|
|
char *new;
|
|
} maptab[] {
|
|
"=+", "+=",
|
|
"=-", "-=",
|
|
"=*", "*=",
|
|
"=%", "%=",
|
|
"=&", "&=",
|
|
"=|", "|=",
|
|
"=<<", "<<=",
|
|
"=>>", ">>=",
|
|
"=/", "/=",
|
|
"=^", "^=",
|
|
0,
|
|
};
|
|
struct maptab *mp;
|
|
char tbuf[10];
|
|
char *token();
|
|
|
|
main()
|
|
{
|
|
while (yylex())
|
|
;
|
|
}
|
|
_Alextab(__na__) {
|
|
switch (__na__) {
|
|
case 0:
|
|
|
|
#line 33 "BTOB.LXI"
|
|
|
|
gettoken(tbuf, sizeof tbuf);
|
|
for (mp = maptab; mp->old; mp++)
|
|
if (equal(tbuf, mp->old)) {
|
|
printf("%s", mp->new);
|
|
break;
|
|
}
|
|
if (mp->old==0)
|
|
fprintf(stderr, "error\n");
|
|
return(1);
|
|
|
|
break;
|
|
case 1:
|
|
|
|
#line 44 "BTOB.LXI"
|
|
|
|
relat:
|
|
gettoken(tbuf, sizeof tbuf);
|
|
printf(tbuf);
|
|
|
|
break;
|
|
case 2:
|
|
|
|
#line 49 "BTOB.LXI"
|
|
goto relat;
|
|
break;
|
|
case 3:
|
|
|
|
#line 50 "BTOB.LXI"
|
|
printf("="); return(1);
|
|
break;
|
|
case 4:
|
|
|
|
#line 51 "BTOB.LXI"
|
|
putchar(*token(NULL)); return(1);
|
|
break;
|
|
}
|
|
return(LEXSKIP);
|
|
}
|
|
|
|
#line 52 "BTOB.LXI"
|
|
|
|
int _Flextab[] {
|
|
-1, 4, 4, 1, 4, 0, 0, 0, 0, 0, 0, 2051, 0, 2051, 0, 2,
|
|
0, 2, 0, -1,
|
|
};
|
|
|
|
#line 52 "BTOB.LXI"
|
|
|
|
#define LLTYPE1 char
|
|
|
|
LLTYPE1 _Nlextab[] {
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 4, 2, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
3, 8, 7, 11, 13, 16, 14, 12, 18, 10, 19, 9, 19, 19, 19, 19,
|
|
19, 19, 19, 19, 19, 19, 19, 19, 17, 3, 15, 19, 19, 19, 19, 19,
|
|
19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
|
|
19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 5, 19, 19, 19, 19, 19,
|
|
19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
|
|
19, 19, 19, 19, 19, 19, 19, 19, 6,
|
|
};
|
|
|
|
LLTYPE1 _Clextab[] {
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
2, 4, 4, 10, 12, 15, 4, 4, 17, 4, -1, 4, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, 4, 4, 4, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, 4,
|
|
};
|
|
|
|
LLTYPE1 _Dlextab[] {
|
|
19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
|
|
19, 19, 19,
|
|
};
|
|
|
|
int _Blextab[] {
|
|
0, 0, 195, 0, 220, 0, 0, 0, 0, 0, 214, 0, 217, 0, 0, 199,
|
|
0, 204, 0, 0,
|
|
};
|
|
char *llsave[1];
|
|
|
|
int _Llextab[] {
|
|
00, 00, 00, 00, 01, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00,
|
|
00, 00, 00, 0,
|
|
};
|
|
|
|
struct lextab lextab {
|
|
19, /* last state */
|
|
_Dlextab, /* defaults */
|
|
_Nlextab, /* next */
|
|
_Clextab, /* check */
|
|
_Blextab, /* base */
|
|
344, /* last in base */
|
|
_lmovb, /* byte-int move routines */
|
|
_Flextab, /* final state descriptions */
|
|
_Alextab, /* action routine */
|
|
_Llextab, /* look-ahead vector */
|
|
0, /* no ignore class */
|
|
0, /* no break class */
|
|
0, /* no illegal class */
|
|
};
|