V9/jerq/include/mux.h

Compare this file to the similar file:
Show the results in this format:

#ifndef	MUX_H
#define	MUX_H	MUX_H
#ifndef	LAYER_H
#include <layer.h>
#endif
#ifndef	PROC_H
#include <jerqproc.h>
#endif


#define	WAIT	0
#define	NOWAIT	1

extern Bitmap *Jdisplayp;
#define	display	(*Jdisplayp)
typedef	int (*ptr_fint)();
#define	Sys	((ptr_fint *)0x0071e700)
#define	P	(*((struct Proc	**)0x0071e700))

/*
 * Cast	macros
 */
#define	Cast(t,	x)	((t (*)())Sys[x])
#define	TPoint(x)	Cast(Point, x)
#define	TRectangle(x)	Cast(Rectangle,	x)
#define	Tint(x)		Cast(int, x)
#define	TpBitmap(x)	Cast(Bitmap *, x)
#define	TpFrame(x)	Cast(Frame *, x)
#define	TpLayer(x)	Cast(Layer *, x)
#define	TpWord(x)	Cast(Word *, x)
#define	Tpchar(x)	Cast(char *, x)
#define	Tvoid(x)	Cast(void, x)
#define	TpProc(x)	Cast(struct Proc *, x)
#define	IPoint(x)	(*Cast(Point, x))
#define	IRectangle(x)	(*Cast(Rectangle, x))
#define	Iint(x)		(*Cast(int, x))
#define	Ilong(x)	(*Cast(long, x))
#define	IpBitmap(x)	(*Cast(Bitmap *, x))
#define	IpFrame(x)	(*Cast(Frame *, x))
#define	IpTexture(x)	(*Cast(Texture *, x))
#define	IpLayer(x)	(*Cast(Layer *,	x))
#define	IpWord(x)	(*Cast(Word *, x))
#define	Ipchar(x)	(*Cast(char *, x))
#define	Ivoid(x)	(*Cast(void, x))
#define	IpProc(x)	(*Cast(struct Proc *, x))
#define	IpNqueue(x)	(*Cast(struct Nqueue *, x))

/*
 * System calls
 */
#undef BonW
#undef WonB
/* Thank Ken for Regular Expressions */
#define	add(p, q)	IPoint(2)(p, q)	/*'add'*/
#define	addr(b,	p)	IpWord(3)(b, p)	/*'Uaddr'*/
#define	alarm(n)	Ivoid(4)(n)	/*'alarm'*/
#define	alloc(u)	Ipchar(5)(u)	/*'Ualloc'*/
#define	balloc(r)	IpBitmap(6)(r)	/*'Uballoc'*/
#define	bfree(p)	Ivoid(7)(p)	/*'bfree'*/
#define	bitblt(sb, r, db, p, f)	Ivoid(8)(sb, r,	db, p, f)	/*'Ubitblt'*/
#define	cursallow()	Ivoid(9)()	/*'Ucursallow'*/
#define	cursinhibit()	Ivoid(10)()	/*'Ucursinhibit'*/
#define	cursset(p)	Ivoid(11)(p)	/*'Ucursset'*/
#define	cursswitch(c)	IpTexture(12)(c)	/*'Ucursswitch'*/
#define	debug()		Ivoid(13)()	/*'debug'*/
#define	dellayer(l)	Iint(14)(l)	/*'dellayer'*/
#define	div(p, n)	IPoint(15)(p, n)	/*'div'*/
#define	eqrect(r, s)	Iint(16)(r, s)	/*'eqrect'*/
#define	exit()		Ivoid(17)()	/*'Uexit'*/
#define	free(p)		Ivoid(18)(p)	/*'free'*/
#define	gcalloc(n, w)	Ipchar(19)(n, w, P)	/*'realgcalloc'*/
#define	gcfree(s)	Ivoid(20)(s)		/*'gcfree'*/
#define	VOLDgetrect()	IRectangle(21)()	/*'Uogetrect'*/
#define	inset(r, n)	IRectangle(22)(r, n)	/*'inset'*/
#define	Jcursallow()	Ivoid(23)()	/*'cursallow'*/
#define	Jcursinhibit()	Ivoid(24)()	/*'cursinhibit'*/
#define	kbdchar()		Iint(25)()		/*'Ukbdchar'*/
#define	lpoint(b, p, f)	Ivoid(26)(b, p,	f)		/*'lpoint'*/
#define	lrectf(b, r, f)	Ivoid(27)(b, r,	f)		/*'lrectf'*/
#define	lsegment(b, p, q, f)	Ivoid(28)(b, p,	q, f)		/*'lsegment'*/
#define	ltexture(b, r, t, f)	Ivoid(29)(b, r,	t, f)		/*'ltexture'*/
#define	menuhit(m, n)	Iint(30)(m, n)	/*'menuhit'*/
#define	mul(p, n)	IPoint(31)(p, n)	/*'mul'*/
#define	muxnewwind(p,c)	Ivoid(32)(p,c)	/*'muxnewwind'*/
#define	nap(s)		Ivoid(33)(s)		/*'nap'*/
#define	newlayer(r)	IpLayer(34)(r)	/*'newlayer'*/
#define	newproc(f)	IpProc(35)(f)	/*'Unewproc'*/
#define	newwindow(f)	Ivoid(36)(f)	/*'Unewwindow'*/
#define	own()		Iint(37)()	/*'Uown'*/
#define	point(l, p, f)	Ivoid(38)(l, p,	f)	/*'Upoint'*/
#define	ptinrect(p, r)	Iint(39)(p, r)	/*'ptinrect'*/
#define	raddp(r, p)	IRectangle(40)(r, p)	/*'raddp'*/
#define	rcvchar()	Iint(41)()	/*'Urcvchar'*/
#define	realtime()	Ilong(42)()	/*'realtime'*/
#define	rectXrect(r, s)	Iint(43)(r, s)	/*'rectXrect'*/
#define	rectclip(pr, r)	Iint(44)(pr, r)	/*'rectclip'*/
#define	rectf(l, r, f)	Ivoid(45)(l, r,	f)	/*'Urectf'*/
#define	request(r)	Iint(46)(r)	/*'Urequest'*/
#define	rsubp(r, p)	IRectangle(47)(r, p)	/*'rsubp'*/
#define	screenswap(b, r, s)	Ivoid(48)(b, r,	s)	/*'Uscreenswap'*/
#define	segment(l, p, q, f)	Ivoid(49)(l, p,	q, f)	/*'Usegment'*/
#define	sendchar(c)	Ivoid(50)(c)	/*'Usendchar'*/
#define	sendnchars(n, p)	Ivoid(51)(n,p)	/*'sendwithdelim'*/
#define	sleep(s)	Ivoid(52)(s)		/*'sleep'*/
#define	XXXXXXXX(r)	Ivoid(53)(r, 1)	/*'0'*/
#define	string(F, s, b,	p, f)	IPoint(54)(F, s, b, p, f)	/*'string'*/
#define	strwidth(F, s)	Iint(55)(F,s)	/*'strwidth'*/
#define	sub(p, q)	IPoint(56)(p, q)	/*'sub'*/
#define	texture(l, r, m, f)	Ivoid(57)(l, r,	m, f)	/*'Utexture'*/
#define	tolayer(l)	Ivoid(58)(l)	/*'tolayer'*/
#define	upfront(l)	Iint(59)(l)	/*'upfront'*/
#define	wait(n)		Iint(60)(n)	/*'Uwait'*/
#define	kill(i)		Iint(61)(i, P)	/*'muxkill'*/
#define	setmuxbuf(s)	Ivoid(62)(s)	/*'setmuxbuf'*/
#define	getmuxbuf(s)	Ivoid(63)(s)	/*'getmuxbuf'*/
#define	strinsure(s, n)	Ivoid(64)(s, n, P)	/*'insure'*/
#define	GCalloc(n, p)	Ivoid(65)(n, p, P)	/*'GCalloc'*/
#define	movstring(i, s, d)	Ivoid(66)(i, s, d)	/*'movstring'*/
#define	strinsert(p, i, q)	Ivoid(67)(p, i, q)	/*'insstring'*/
#define	strdelete(p, i, j)	Ivoid(68)(p, i, j)	/*'delstring'*/
#define	frselect(f, pt)	Ivoid(69)(f, pt)	/*'frselect'*/
#define	fralloc(r, m)	IpFrame(70)(r, m)	/*'fralloc'*/
#define	frsetrects(f, r)	Ivoid(71)(f, r)	/*'frsetrects'*/
#define	frinit(f)	Ivoid(72)(f)	/*'frinit'*/
#define	frfree(f)	Ivoid(73)(f)	/*'frfree'*/
#define	ptofchar(f, n)	IPoint(74)(f, n)	/*'ptofchar'*/
#define	charofpt(f, p)	Iint(75)(f, p)	/*'charofpt'*/
#define	border(p, r, i, c)	Iint(76)(p, r, i, c)	/*'border'*/
#define	getproctab()	IpProc(77)()	/*'getproctab'*/
#define	lbitblt(sb, r, db, p, f)	Ivoid(78)(sb, r,	db, p, f)	/*'lbitblt'*/
#define	getrect(n)	IRectangle(79)(n)	/*'getrect'*/
#define	getrectb(n)	IRectangle(80)(n)	/*'getrectb'*/
#define	qputc(q, w)	Iint(81)(q, w)		/*'qputc'*/
#define	qgetc(q)	Iint(82)(q)		/*'qgetc'*/
#define	qputstr(q, s)	Iint(83)(q, s)		/*'qputstr'*/
#define	qclear(q)	Ivoid(84)(q)		/*'qclear'*/
#define	jstrwidth(s)	Iint(85)(s)		/*'jstrwidth'*/
#define	getproc()	IpProc(86)()	/*'getproc'*/
#define layerop		Ivoid(87)		/*'layerop'*/
#define	putname(s,w)	Iint(88)(s,w)	/*'putname'*/
#define	getname(s)	IpNqueue(89)(s)	/*'getname'*/
#define	qpeekc(q)	Iint(90)(q)	/*'qpeekc'*/
#endif	MUX_H