1: #
2: /*
3: *
4: * UNIX debugger - common definitions
5: *
6: */
7:
8:
9:
10: /* Layout of a.out file (fsym):
11: *
12: * header of 8 words magic number 405, 407, 410, 411
13: * text size )
14: * data size ) in bytes but even
15: * bss size )
16: * symbol table size
17: * entry point
18: * {unused}
19: * flag set if no relocation
20: *
21: *
22: * header: 0
23: * text: 16
24: * data: 16+textsize
25: * relocation: 16+textsize+datasize
26: * symbol table: 16+2*(textsize+datasize) or 16+textsize+datasize
27: *
28: */
29:
30:
31: #include <sys/param.h>
32: #include <sys/dir.h>
33: #include <sys/reg.h>
34: #include <sys/user.h>
35: #include <sgtty.h>
36: #include "mac.h"
37: #include "mode.h"
38:
39:
40: #define VARB 11
41: #define VARD 13
42: #define VARE 14
43: #define VARM 22
44: #define VARS 28
45: #define VART 29
46:
47: #define COREMAGIC 0140000
48:
49: #define RD 0
50: #define WT 1
51: #define NSP 0
52: #define ISP 1
53: #define DSP 2
54: #define STAR 4
55: #define STARCOM 0200
56: #define DSYM 7
57: #define ISYM 2
58: #define ASYM 1
59: #define NSYM 0
60: #define ESYM (-1)
61: #define BKPTSET 1
62: #define BKPTEXEC 2
63: #define SYMSIZ 100
64: #define MAXSIG 20
65:
66: #define USERPS 2*(512-1)
67: #define USERPC 2*(512-2)
68: #define BPT 03
69: #define FD 0200
70: #define SETTRC 0
71: #define RDUSER 2
72: #define RIUSER 1
73: #define WDUSER 5
74: #define WIUSER 4
75: #define RUREGS 3
76: #define WUREGS 6
77: #define CONTIN 7
78: #define SINGLE 9
79: #define EXIT 8
80:
81: #define FROFF (&(0->fpsr))
82: #define FRLEN 25
83: #define FRMAX 6
84:
85: #define ps -1
86: #define pc -2
87: #define sp -6
88: #define r5 -9
89: #define r4 -10
90: #define r3 -11
91: #define r2 -12
92: #define r1 -5
93: #define r0 -3
94:
95: #define MAXOFF 255
96: #define MAXPOS 80
97: #define MAXLIN 128
98: #define EOF 0
99: #define EOR '\n'
100: #define TB '\t'
101: #define QUOTE 0200
102: #define STRIP 0177
103: #define LOBYTE 0377
104: #define EVEN -2
105:
106:
107: /* long to ints and back (puns) */
108: union {
109: INT I[2];
110: L_INT L;
111: } itolws;
112:
113: #define leng(a) ((long)((unsigned)(a)))
114: #define shorten(a) ((int)(a))
115: #define itol(a,b) (itolws.I[0]=(a), itolws.I[1]=(b), itolws.L)
116:
117:
118:
119: /* result type declarations */
120: L_INT inkdot();
121: SYMPTR lookupsym();
122: SYMPTR symget();
123: POS get();
124: POS chkget();
125: STRING exform();
126: L_INT round();
127: BKPTR scanbkpt();
128: VOID fault();
129:
130: typedef struct sgttyb TTY;
131: TTY adbtty, usrtty;
132: #include <setjmp.h>
133: jmp_buf erradb;
Defined variables
Defined typedef's
TTY
defined in line
130; used 1 times
Defined macros
ASYM
defined in line
58; used 1 times
BPT
defined in line
68; used 2 times
DSP
defined in line
53; used 24 times
- in /usr/src/cmd/adb/access.c line
59,
66,
77-80(2),
91-95(2)
- in /usr/src/cmd/adb/command.c line
85,
113
- in /usr/src/cmd/adb/expr.c line
96,
143
- in /usr/src/cmd/adb/findfn.c line
28
- in /usr/src/cmd/adb/opset.c line
261-264(2)
- in /usr/src/cmd/adb/print.c line
190,
197-201(2),
207,
214,
225,
235(3),
252,
260
DSYM
defined in line
56; used 5 times
EOF
defined in line
98;
never used
EOR
defined in line
99; used 24 times
- in /usr/src/cmd/adb/command.c line
60
- in /usr/src/cmd/adb/format.c line
186,
240
- in /usr/src/cmd/adb/input.c line
14,
22,
40,
72
- in /usr/src/cmd/adb/main.c line
123,
134
- in /usr/src/cmd/adb/output.c line
51,
65,
82,
204
- in /usr/src/cmd/adb/pcs.c line
75
- in /usr/src/cmd/adb/print.c line
119-122(2),
261,
300,
326,
351
- in /usr/src/cmd/adb/runpcs.c line
112,
144-146(2),
160
ESYM
defined in line
60; used 2 times
EVEN
defined in line
104; used 4 times
EXIT
defined in line
79; used 1 times
FD
defined in line
69; used 1 times
FRLEN
defined in line
82; used 1 times
FRMAX
defined in line
83; used 1 times
FROFF
defined in line
81; used 2 times
ISP
defined in line
52; used 12 times
ISYM
defined in line
57; used 11 times
NSP
defined in line
51; used 9 times
NSYM
defined in line
59; used 4 times
RD
defined in line
49; used 2 times
SINGLE
defined in line
78; used 16 times
STAR
defined in line
54; used 3 times
TB
defined in line
100;
never used
VARB
defined in line
40; used 1 times
VARD
defined in line
41; used 1 times
VARE
defined in line
42; used 1 times
VARM
defined in line
43; used 1 times
VARS
defined in line
44; used 1 times
VART
defined in line
45; used 1 times
WT
defined in line
50; used 2 times
itol
defined in line
115; used 4 times
leng
defined in line
113; used 18 times
pc
defined in line
86; used 7 times
ps
defined in line
85; used 1 times
r0
defined in line
93; used 1 times
r1
defined in line
92; used 1 times
r2
defined in line
91; used 1 times
r3
defined in line
90; used 1 times
r4
defined in line
89; used 2 times
r5
defined in line
88; used 3 times
sp
defined in line
87; used 1 times
Usage of this include