|
|
DataMuseum.dkPresents historical artifacts from the history of: RC9000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RC9000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: @ T d
Length: 2032 (0x7f0)
Types: TextFile
Notes: @(#)debug.h 13.1 (RC Computer) 91/02/02 */
Names: »debug.h«
└─⟦50656ff4a⟧ Bits:30010538 TX 3.1 Coldstart
└─⟦bbf173f5c⟧ »0004«
└─⟦this⟧ »./usr/include/rc/debug.h«
/* @(#)debug.h 13.1 (RC Computer) 91/02/02 */
/*
* Debug macros.
*/
#ifdef LANGUAGE_C
struct xprbuf {
char *xp_msg;
unsigned xp_arg1, xp_arg2, xp_arg3, xp_arg4;
unsigned xp_timestamp;
unsigned xp_pid, xp_tlbpid;
};
#endif LANGUAGE_C
/*
* flags
*/
#define XPR_CLOCK 0x00000001 /* Clock interrupt handler */
#define XPR_TLB 0x00000002 /* TLB miss handler */
#define XPR_INIT 0x00000004 /* routines called during init */
#define XPR_SCHED 0x00000008 /* Scheduler */
#define XPR_PROCESS 0x00000010 /* newproc/fork */
#define XPR_EXEC 0x00000020 /* Exec */
#define XPR_SYSCALL 0x00000040 /* System calls */
#define XPR_TRAP 0x00000080 /* Trap handler */
#define XPR_NOFAULT 0x00000100 /* Nofault bus error */
#define XPR_VM 0x00000200 /* VM */
#define XPR_SWAP 0x00000400 /* swapin/swapout */
#define XPR_SWTCH 0x00000800 /* swtch, setrq, remrq */
#define XPR_DISK 0x00001000 /* disk i/o */
#define XPR_TTY 0x00002000 /* mux i/o */
#define XPR_TAPE 0x00004000 /* tape i/o */
#define XPR_BIO 0x00008000 /* blk i/o */
#define XPR_INTR 0x00010000 /* interrupt handling */
#define XPR_RMAP 0x00020000 /* resource map handling */
#define XPR_TEXT 0x00040000 /* shared text stuff */
#define XPR_CACHE 0x00080000 /* cache handling */
#define XPR_NFS 0x00100000 /* nfs */
#define XPR_RPC 0x00200000 /* rpc */
#define XPR_SIGNAL 0x00400000 /* signal handling */
#define XPR_FPINTR 0x00800000 /* fp interrupt handling */
#ifdef LANGUAGE_C
/*
* register values
* map between numeric values and symbolic values
*/
struct reg_values {
unsigned rv_value;
char *rv_name;
};
/*
* register descriptors are used for formatted prints of register values
* rd_mask and rd_shift must be defined, other entries may be null
*/
struct reg_desc {
unsigned rd_mask; /* mask to extract field */
int rd_shift; /* shift for extracted value, - >>, + << */
char *rd_name; /* field name */
char *rd_format; /* format to print field */
struct reg_values *rd_values; /* symbolic names of values */
};
#endif LANGUAGE_C