|
|
1.1 root 1: /* @(#)kas.h 1.2 */
2: #define NINST 100
3: #define NSYM 500
4: #define NHASH (NSYM+NINST)
5: #define NCPS 8
6: #define NKMCI 4096
7: #define NKMCD 4096
8:
9: /*
10: * Symbol types
11: */
12: #define XUNDEF 0x0
13: #define XABS 0x1000
14: #define XTEXT 0x2000
15: #define XDATA 0x3000
16: #define XREG 0x4000
17: #define XTAG 0x8000
18: #define XTYPE 0x7000
19:
20: #define DSTEP 1
21: #define DSTOP 4
22: #define DRESET 5
23: #define DRUN 6
24: #define DWCSR 8
25: #define DCLEAR 9
26: #define DREGS 10
27: #define DLOAD 11
28: #define DDUMP 12
29:
30: #define TBRG 01
31: #define TMAR 06
32:
33: #define RLCMV 0
34: #define RLCPOP 020000
35: #define RLCPG 040000
36: #define RLCBR 060000
37: #define RLCMASK 070000
38: #define RLUSE 0100000
39: #define RLBUP 077777
40: #define RLNEXT 07777
41:
42: #define ERR (-1)
43:
44: #define SRCREGL (1<<13)
45: #define SRCMEM (2<<13)
46: #define SRCBRG (3<<13)
47: #define SRCREGH (5<<13)
48: #define SRCPCL (10)
49: #define SRCPCH (11)
50: #define SRCMARL (12)
51: #define SRCMARH (13)
52:
53: #define SELA (8<<4)
54: #define SELB (9<<4)
55:
56: #define DSTBRG (1<<8)
57: #define DSTREGH (2<<8)
58: #define DSTBGRS (3<<8)
59: #define DSTREGL (4<<8)
60: #define DSTMEM (5<<8)
61: #define DSTREG (6<<8)
62: #define DSTBREG (7<<8)
63: #define DSTMARP (1<<11)
64: #define DSTMAR (2<<11)
65: #define DSTMARI (3<<11)
66: #define DSTPCH (11)
67:
68: struct symtab {
69: char name[NCPS];
70: int type;
71: int value;
72: };
73:
74: struct exp {
75: int xtype;
76: int xvalue;
77: };
78:
79: extern struct symtab symtab[NSYM];
80: extern struct symtab *hshtab[NHASH];
81: extern struct symtab loclab[10];
82: extern struct symtab *dot;
83: extern lineno;
84: extern tsize;
85: extern dsize;
86: extern anyerrs;
87: extern textsv, datasv;
88: extern char dbmode;
89: extern char *outfile, *dbfile, *infile;
90: extern dbfd;
91: extern dbtab[3];
92: extern char dbstr[50], instr[50];
93: extern struct symtab instab[];
94: extern short ispace[NKMCI], reloc[NKMCI];
95: extern char dspace[NKMCD];
96: struct symtab **lookup();
97:
98: struct ir {
99: char csr[8];
100: char lur[8];
101: char reg[16];
102: char io[8];
103: char npr[2];
104: char brg;
105: char mem;
106: char fill[4];
107: };
108: extern struct ir ir;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.