File:  [Research Unix] / researchv10no / cmd / ccom / vax / tests / l.i
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 17:21:35 2018 UTC (8 years, 1 month ago) by root
Branches: belllabs, MAIN
CVS tags: researchv10, HEAD
researchv10 Norman

typedef int	(*SIG_TYP)();
SIG_TYP signal();
typedef	unsigned char	u_char;
typedef	unsigned short	u_short;
typedef	unsigned int	u_int;
typedef	unsigned long	u_long;
typedef	struct	_physadr { int r[1]; } *physadr;
typedef	int	daddr_t;
typedef	char *	caddr_t;
typedef	u_short ino_t;
typedef	int	swblk_t;
typedef	int	size_t;
typedef	int	time_t;
typedef	int	label_t[14];
typedef	short	dev_t;
typedef	int	off_t;
typedef long	portid_t;
typedef struct	fd_set { int fds_bits[1]; } fd_set;
int	hz;			
int	timezone;		
int	dstflag;		
char	canonb[256		];	
extern char	version[];		
int	lbolt;			
time_t	time;			
time_t	bootime;		
long	trannum;		
int	hand;			
int	nblkdev;
int	nchrdev;
int	nstream;		
int	nswdev;			
int	mpid;			
char	runin;			
char	runout;			
int	runrun;			
char	kmapwnt;		
char	curpri;			
int	maxmem;			
int	physmem;		
int	nswap;			
int	updlock;		
daddr_t	rablock;		
extern	int intstack[];		
dev_t	rootdev;		
dev_t	dumpdev;		
long	dumplo;			
dev_t	swapdev;		
dev_t	argdev;			
dev_t	pipedev;		
extern	int icode[];		
extern	int szicode;		
dev_t	getmdev();
daddr_t	bmap();
caddr_t	calloc();
unsigned max();
unsigned min();
int	memall();
int	uchar(), schar();
int	vmemall();
char	*wmemall();
swblk_t	vtod();
extern struct sysent
{
	int	sy_narg;		
	int	(*sy_call)();		
} sysent[];
extern char	vmmap[];		
int	umbabeg,umbaend;	
int	noproc;			
extern	int catcher[256];
char	*panicstr;
int	wantin;
int	boothowto;		
struct map {
	struct	mapent *m_limit;	
	char	*m_name;		
};
struct mapent
{
	int	m_size;		
	int	m_addr;		
};
struct	nexus {
	union nexcsr {
		long	nex_csr;
		u_char	nex_type;
	} nexcsr;
	long	nex_pad[0x2000 / sizeof (long) - 1];
};
struct pte
{
unsigned int	pg_pfnum:21,		
		:2,
		pg_vreadm:1,		
		pg_swapm:1,		
		pg_fod:1,		
		pg_m:1,			
		pg_prot:4,		
		pg_v:1;			
};
struct hpte
{
unsigned int	pg_pfnum:21,
		:2,
		pg_high:9;		
};
struct fpte
{
unsigned int	pg_blkno:20,		
		pg_fileno:5,		
		pg_fod:1,		
		:1,
		pg_prot:4,
		pg_v:1;
};
struct bufhd
{
	long	b_flags;		
	struct	buf *b_forw, *b_back;	
};
struct buf
{
	long	b_flags;		
	struct	buf *b_forw, *b_back;	
	struct	buf *av_forw, *av_back;	
	long	b_bcount;		
	short	b_error;		
	dev_t	b_dev;			
	union {
	    caddr_t b_addr;		
	    int	*b_words;		
	    struct filsys *b_filsys;	
	    struct dinode *b_dino;	
	    daddr_t *b_daddr;		
	} b_un;
	daddr_t	b_blkno;		
	long	b_resid;		
	struct  proc *b_proc;		
};
struct mba_regs
{
	int	mba_csr;		
	int	mba_cr;			
	int	mba_sr;			
	int	mba_var;		
	int	mba_bcr;		
	int	mba_dr;
	int	mba_pad1[250];
	struct mba_drv {		
		int	mbd_cs1;		
		int	mbd_ds;			
		int	mbd_er1;		
		int	mbd_mr1;		
		int	mbd_as;			
		int	mbd_da;			
		int	mbd_dt;			
		int	mbd_la;			
		int	mbd_sn;			
		int	mbd_of;			
		int	mbd_fill[22];
	} mba_drv[8];
	struct	pte mba_map[256];	
	int	mba_pad2[256*5];	
};
struct	mba_hd {
	short	mh_active;		
	short	mh_ndrive;		
	struct	mba_regs *mh_mba;	
	struct	mba_regs *mh_physmba;	
	struct	mba_device *mh_mbip[8];	
	struct	mba_device *mh_actf;	
	struct	mba_device *mh_actl;	
};
struct	mba_device {
	struct	mba_driver *mi_driver;
	short	mi_unit;	
	short	mi_mbanum;	
	short	mi_drive;	
	short	mi_dk;		
	short	mi_alive;	
	short	mi_type;	
	struct	buf mi_tab;	
	struct	mba_device *mi_forw;
	struct	mba_regs *mi_mba;
	struct	mba_drv *mi_drv;
	struct	mba_hd *mi_hd;
};
struct	mba_slave {
	struct	mba_driver *ms_driver;
	short	ms_ctlr;		
	short	ms_unit;		
	short	ms_slave;		
	short	ms_alive;
};
struct mba_driver {
	int	(*md_attach)();		
	int	(*md_slave)();		
	int	(*md_ustart)();		
	int	(*md_start)();		
	int	(*md_dtint)();		
	int	(*md_ndint)();		
	short	*md_type;		
	char	*md_dname, *md_sname;	
	struct	mba_device **md_info;	
};
					
					
struct vmmeter
{
	unsigned v_swtch;	
	unsigned v_trap;	
	unsigned v_syscall;	
	unsigned v_intr;	
	unsigned v_pdma;	
	unsigned v_pswpin;	
	unsigned v_pswpout;	
	unsigned v_pgin;	
	unsigned v_pgout;	
	unsigned v_pgpgin;	
	unsigned v_pgpgout;	
	unsigned v_intrans;	
	unsigned v_pgrec;	
	unsigned v_xsfrec;	
	unsigned v_xifrec;	
	unsigned v_exfod;	
	unsigned v_zfod;	
	unsigned v_vrfod;	
	unsigned v_nexfod;	
	unsigned v_nzfod;	
	unsigned v_nvrfod;	
	unsigned v_pgfrec;	
	unsigned v_faults;	
	unsigned v_scan;	
	unsigned v_rev;		
	unsigned v_seqfree;	
	unsigned v_dfree;	
	unsigned v_swpin;	
	unsigned v_swpout;	
};
struct vmtotal
{
	short	t_rq;		
	short	t_dw;		
	short	t_pw;		
	short	t_sl;		
	short	t_sw;		
	int	t_vm;		
	int	t_avm;		
	short	t_rm;		
	short	t_arm;		
	int	t_vmtxt;	
	int	t_avmtxt;	
	short	t_rmtxt;	
	short	t_armtxt;	
	short	t_free;		
};
struct	forkstat
{
	int	cntfork;
	int	cntvfork;
	int	sizfork;
	int	sizvfork;
};
struct	swptstat
{
	int	pteasy;		
	int	ptexpand;	
	int	ptshrink;	
	int	ptpack;		
};
struct uba_regs
{
	int	uba_cnfgr;		
	int	uba_cr;			
	int	uba_sr;			
	int	uba_dcr;		
	int	uba_fmer;		
	int	uba_fubar;		
	int	pad1[2];
	int	uba_brsvr[4];
	int	uba_brrvr[4];		
	int	uba_dpr[16];		
	int	pad2[480];
	struct	pte uba_map[496];	
	int	pad3[16];		
};
 
 
struct	uba_hd {
	struct	uba_regs *uh_uba;	
	struct	uba_regs *uh_physuba;	
	int	(**uh_vec)();		
	struct	uba_device *uh_actf;	
	struct	uba_device *uh_actl;	
	short	uh_mrwant;		
	short	uh_bdpwant;		
	int	uh_bdpfree;		
	int	uh_hangcnt;		
	int	uh_zvcnt;		
	int	uh_errcnt;		
	int	uh_lastiv;		
	short	uh_users;		
	short	uh_xclu;		
	struct	map *uh_map;		
};
struct uba_ctlr {
	struct	uba_driver *um_driver;
	short	um_ctlr;	
	short	um_ubanum;	
	short	um_alive;	
	int	(**um_intr)();	
	caddr_t	um_addr;	
	struct	uba_hd *um_hd;
	int	um_cmd;		
	int	um_ubinfo;	
	struct	buf um_tab;	
};
struct uba_device {
	struct	uba_driver *ui_driver;
	short	ui_unit;	
	short	ui_ctlr;	
	short	ui_ubanum;	
	short	ui_slave;	
	int	(**ui_intr)();	
	caddr_t	ui_addr;	
	short	ui_dk;		
	int	ui_flags;	
	short	ui_alive;	
	short	ui_type;	
	caddr_t	ui_physaddr;	
	struct	uba_device *ui_forw;
	struct	uba_ctlr *ui_mi;
	struct	uba_hd *ui_hd;
};
struct uba_driver {
	int	(*ud_probe)();		
	int	(*ud_slave)();		
	int	(*ud_attach)();		
	int	(*ud_dgo)();		
	u_short	*ud_addr;		
	char	*ud_dname;		
	struct	uba_device **ud_dinfo;	
	char	*ud_mname;		
	struct	uba_ctlr **ud_minfo;	
	short	ud_xclu;		
};
union cpusid {
	int	cpusid;
	struct cpuany {
		u_int	:24,
			cp_type:8;
	} cpuany;
	struct cpu780 {
		u_int	cp_sno:12,		
			cp_plant:3,		
			cp_eco:9,		
			cp_type:8;		
	} cpu780;
	struct cpu750 {
		u_int	cp_hrev:8,		
			cp_urev:8,		
			:8,
			cp_type:8;		
	} cpu750;
	
};
struct	percpu {
	short	pc_cputype;		
	short	pc_nnexus;		
	struct	nexus *pc_nexbase;	
	caddr_t	*pc_umaddr;		
	short	pc_nubabdp;		
	short	pc_haveubasr;		
	short	*pc_nextype;		
};
struct scb {
	int	(*scb_stray)();		
	int	(*scb_machchk)();	
	int	(*scb_kspinval)();	
	int	(*scb_powfail)();	
	int	(*scb_resinstr)();	
	int	(*scb_custinst)();	
	int	(*scb_resopnd)();	
	int	(*scb_resaddr)();	
	int	(*scb_acv)();		
	int	(*scb_tnv)();		
	int	(*scb_tracep)();	
	int	(*scb_bpt)();		
	int	(*scb_compat)();	
	int	(*scb_arith)();		
	int	(*scb_stray2)();
	int	(*scb_stray3)();
	int	(*scb_chmk)();		
	int	(*scb_chme)();		
	int	(*scb_chms)();		
	int	(*scb_chmu)();		
	int	(*scb_sbisilo)();	
	int	(*scb_cmrd)();		
	int	(*scb_sbialert)();	
	int	(*scb_sbiflt)();	
	int	(*scb_wtime)();		
	int	(*scb_stray4[8])();
	int	(*scb_soft[15])();	
	int	(*scb_timer)();		
	int	(*scb_stray5[7])();
	int	(*scb_stray6[4])();
	int	(*scb_csdr)();		
	int	(*scb_csdx)();		
	int	(*scb_ctr)();		
	int	(*scb_ctx)();		
	int	(*scb_ipl14[16])();	
	int	(*scb_ipl15[16])();	
	int	(*scb_ipl16[16])();	
	int	(*scb_ipl17[16])();	
	int	(*scb_ubaint[128])();	
};
struct	mcr {
	int	mc_reg[3];
};
unifind(vubp, pubp, vumem, pumem, memmap)
	struct uba_regs *vubp, *pubp;
	caddr_t vumem, pumem;
	struct pte *memmap;
{
		



	struct uba_hd *uhp;

	int i, haveubasr = 0;
	for (i = 0; i < 128; i++)
		uhp->uh_vec[i] =
		    		((int (*)())(((int)&catcher[i*2])+ 1));
}

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.