119 lines · 2.1 KB · C
RawDownload
/*  * This file is part of the UCB release of Plan 9. It is subject to the license * terms in the LICENSE file found in the top-level directory of this * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No * part of the UCB release of Plan 9, including this file, may be copied, * modified, propagated, or distributed except according to the terms contained * in the LICENSE file. */ /* * adb - common definitions * something of a grab-bag */ #include <u.h>#include <libc.h>#include <bio.h>#include <ctype.h> #include <mach.h> typedef ulong WORD;typedef uvlong ADDR; #define	HUGEINT	0x7fffffff	/* enormous WORD */ #define	MAXOFF	0x1000000#define	INCDIR	"/usr/lib/adb"#define	DBNAME	"db\n"#define CMD_VERBS	"?/=>!$: \t" typedef	int	BOOL; #define MAXPOS	80#define MAXLIN	128#define	ARB	512#define MAXCOM	64#define MAXARG	32#define LINSIZ	4096#define	MAXSYM	255 #define EOR	'\n'#define SPC	' '#define TB	'\t' #define	STDIN	0#define	STDOUT	1 #define	TRUE	(-1)#define	FALSE	0  /* * run modes */ #define	SINGLE	1#define	CONTIN	2 /* * breakpoints */ #define	BKPTCLR	0	/* not a real breakpoint */#define BKPTSET	1	/* real, ready to trap */#define BKPTSKIP 2	/* real, skip over it next time */#define	BKPTTMP	3	/* temporary; clear when it happens */ typedef struct bkpt	BKPT;struct bkpt {	ADDR	loc;	uchar	save[4];	int	count;	int	initcnt;	int	flag;	char	comm[MAXCOM];	BKPT	*nxtbkpt;}; #define	BADREG	(-1) /* * common globals */ extern	WORD	adrval;extern	uvlong	expv;extern	int	adrflg;extern	WORD	cntval;extern	int	cntflg;extern	WORD	loopcnt;extern	ADDR	maxoff;extern	ADDR	localval;extern	ADDR	maxfile;extern	ADDR	maxstor; extern	ADDR	dot;extern	int	dotinc; extern	int	xargc; extern	BOOL	wtflag;extern	char	*corfil, *symfil;extern	int	fcor, fsym;extern	BOOL	mkfault;extern	BOOL	regdirty; extern	int	pid;extern	int	pcsactive;#define	NNOTE 10extern	int	nnote;extern	char	note[NNOTE][ERRMAX]; extern	int	ending;extern	Map	*cormap, *symmap, *dotmap; extern	BKPT	*bkpthead;extern	int	kflag;extern	int	lastc, peekc;