xref: /plan9/sys/src/cmd/unix/drawterm/kern/fns.h (revision 58da3067adcdccaaa043d0bfde28ba83b7ced07d)
18ccd4a63SDavid du Colombier #define	ROUND(s, sz)	(((s)+((sz)-1))&~((sz)-1))
28ccd4a63SDavid du Colombier 
38ccd4a63SDavid du Colombier void		accounttime(void);
48ccd4a63SDavid du Colombier void		addclock0link(void (*)(void), int);
58ccd4a63SDavid du Colombier int		addphysseg(Physseg*);
68ccd4a63SDavid du Colombier void		addbootfile(char*, uchar*, ulong);
78ccd4a63SDavid du Colombier Block*		adjustblock(Block*, int);
88ccd4a63SDavid du Colombier void		alarmkproc(void*);
98ccd4a63SDavid du Colombier Block*		allocb(int);
108ccd4a63SDavid du Colombier int		anyhigher(void);
118ccd4a63SDavid du Colombier int		anyready(void);
128ccd4a63SDavid du Colombier Page*		auxpage(void);
138ccd4a63SDavid du Colombier Block*		bl2mem(uchar*, Block*, int);
148ccd4a63SDavid du Colombier int		blocklen(Block*);
158ccd4a63SDavid du Colombier void		callwithureg(void(*)(Ureg*));
168ccd4a63SDavid du Colombier char*		c2name(Chan*);
178ccd4a63SDavid du Colombier int		cangetc(void*);
188ccd4a63SDavid du Colombier int		canlock(Lock*);
198ccd4a63SDavid du Colombier int		canpage(Proc*);
208ccd4a63SDavid du Colombier int		canputc(void*);
218ccd4a63SDavid du Colombier int		canqlock(QLock*);
228ccd4a63SDavid du Colombier int		canrlock(RWlock*);
238ccd4a63SDavid du Colombier void		chandevinit(void);
248ccd4a63SDavid du Colombier void		chandevreset(void);
258ccd4a63SDavid du Colombier void		chandevshutdown(void);
268ccd4a63SDavid du Colombier void		chanfree(Chan*);
278ccd4a63SDavid du Colombier void		chanrec(Mnt*);
288ccd4a63SDavid du Colombier void		checkalarms(void);
298ccd4a63SDavid du Colombier void		checkb(Block*, char*);
308ccd4a63SDavid du Colombier void		cinit(void);
318ccd4a63SDavid du Colombier Chan*		cclone(Chan*);
328ccd4a63SDavid du Colombier void		cclose(Chan*);
338ccd4a63SDavid du Colombier char*	clipread(void);
348ccd4a63SDavid du Colombier int		clipwrite(char*);
358ccd4a63SDavid du Colombier void		closeegrp(Egrp*);
368ccd4a63SDavid du Colombier void		closefgrp(Fgrp*);
378ccd4a63SDavid du Colombier void		closemount(Mount*);
388ccd4a63SDavid du Colombier void		closepgrp(Pgrp*);
398ccd4a63SDavid du Colombier void		closergrp(Rgrp*);
408ccd4a63SDavid du Colombier long		clrfpintr(void);
418ccd4a63SDavid du Colombier void		cmderror(Cmdbuf*, char*);
428ccd4a63SDavid du Colombier int		cmount(Chan**, Chan*, int, char*);
438ccd4a63SDavid du Colombier void		cnameclose(Cname*);
448ccd4a63SDavid du Colombier void		confinit(void);
458ccd4a63SDavid du Colombier void		confinit1(int);
468ccd4a63SDavid du Colombier int		consactive(void);
478ccd4a63SDavid du Colombier extern void		(*consdebug)(void);
488ccd4a63SDavid du Colombier void		copen(Chan*);
498ccd4a63SDavid du Colombier Block*		concatblock(Block*);
508ccd4a63SDavid du Colombier Block*		copyblock(Block*, int);
518ccd4a63SDavid du Colombier void		copypage(Page*, Page*);
528ccd4a63SDavid du Colombier int		cread(Chan*, uchar*, int, vlong);
538ccd4a63SDavid du Colombier void		cunmount(Chan*, Chan*);
548ccd4a63SDavid du Colombier void		cupdate(Chan*, uchar*, int, vlong);
558ccd4a63SDavid du Colombier void		cwrite(Chan*, uchar*, int, vlong);
568ccd4a63SDavid du Colombier ulong		dbgpc(Proc*);
578ccd4a63SDavid du Colombier int		decref(Ref*);
588ccd4a63SDavid du Colombier int		decrypt(void*, void*, int);
598ccd4a63SDavid du Colombier void		delay(int);
608ccd4a63SDavid du Colombier Chan*		devattach(int, char*);
618ccd4a63SDavid du Colombier Block*		devbread(Chan*, long, ulong);
628ccd4a63SDavid du Colombier long		devbwrite(Chan*, Block*, ulong);
638ccd4a63SDavid du Colombier Chan*		devclone(Chan*);
648ccd4a63SDavid du Colombier int		devconfig(int, char *, DevConf *);
658ccd4a63SDavid du Colombier void		devcreate(Chan*, char*, int, ulong);
668ccd4a63SDavid du Colombier void		devdir(Chan*, Qid, char*, vlong, char*, long, Dir*);
678ccd4a63SDavid du Colombier long		devdirread(Chan*, char*, long, Dirtab*, int, Devgen*);
688ccd4a63SDavid du Colombier Devgen		devgen;
698ccd4a63SDavid du Colombier void		devinit(void);
708ccd4a63SDavid du Colombier int		devno(int, int);
718ccd4a63SDavid du Colombier Chan*		devopen(Chan*, int, Dirtab*, int, Devgen*);
728ccd4a63SDavid du Colombier void		devpermcheck(char*, ulong, int);
738ccd4a63SDavid du Colombier void		devpower(int);
748ccd4a63SDavid du Colombier void		devremove(Chan*);
758ccd4a63SDavid du Colombier void		devreset(void);
768ccd4a63SDavid du Colombier void		devshutdown(void);
778ccd4a63SDavid du Colombier int		devstat(Chan*, uchar*, int, Dirtab*, int, Devgen*);
788ccd4a63SDavid du Colombier Walkqid*	devwalk(Chan*, Chan*, char**, int, Dirtab*, int, Devgen*);
798ccd4a63SDavid du Colombier int		devwstat(Chan*, uchar*, int);
808ccd4a63SDavid du Colombier void		drawactive(int);
818ccd4a63SDavid du Colombier void		drawcmap(void);
828ccd4a63SDavid du Colombier int		drawcanqlock(void);
838ccd4a63SDavid du Colombier void		drawqlock(void);
848ccd4a63SDavid du Colombier void		drawqunlock(void);
858ccd4a63SDavid du Colombier void		dumpaproc(Proc*);
868ccd4a63SDavid du Colombier void		dumpqueues(void);
878ccd4a63SDavid du Colombier void		dumpregs(Ureg*);
888ccd4a63SDavid du Colombier void		dumpstack(void);
898ccd4a63SDavid du Colombier Fgrp*		dupfgrp(Fgrp*);
908ccd4a63SDavid du Colombier void		duppage(Page*);
918ccd4a63SDavid du Colombier void		dupswap(Page*);
928ccd4a63SDavid du Colombier int		emptystr(char*);
938ccd4a63SDavid du Colombier int		encrypt(void*, void*, int);
948ccd4a63SDavid du Colombier void		envcpy(Egrp*, Egrp*);
958ccd4a63SDavid du Colombier int		eqchan(Chan*, Chan*, int);
968ccd4a63SDavid du Colombier int		eqqid(Qid, Qid);
978ccd4a63SDavid du Colombier void		error(char*);
988ccd4a63SDavid du Colombier long		execregs(ulong, ulong, ulong);
998ccd4a63SDavid du Colombier void		exhausted(char*);
1008ccd4a63SDavid du Colombier void		exit(int);
1018ccd4a63SDavid du Colombier uvlong		fastticks(uvlong*);
1028ccd4a63SDavid du Colombier int		fault(ulong, int);
1038ccd4a63SDavid du Colombier void		fdclose(int, int);
1048ccd4a63SDavid du Colombier Chan*		fdtochan(int, int, int, int);
1058ccd4a63SDavid du Colombier int		fixfault(Segment*, ulong, int, int);
1068ccd4a63SDavid du Colombier void		flushmmu(void);
1078ccd4a63SDavid du Colombier void		forkchild(Proc*, Ureg*);
1088ccd4a63SDavid du Colombier void		forkret(void);
1098ccd4a63SDavid du Colombier void		free(void*);
1108ccd4a63SDavid du Colombier void		freeb(Block*);
1118ccd4a63SDavid du Colombier void		freeblist(Block*);
1128ccd4a63SDavid du Colombier int		freebroken(void);
1138ccd4a63SDavid du Colombier void		freepte(Segment*, Pte*);
1148ccd4a63SDavid du Colombier void		freesegs(int);
1158ccd4a63SDavid du Colombier void		freesession(Session*);
1168ccd4a63SDavid du Colombier ulong		getmalloctag(void*);
1178ccd4a63SDavid du Colombier ulong		getrealloctag(void*);
1188ccd4a63SDavid du Colombier void		gotolabel(Label*);
1198ccd4a63SDavid du Colombier char*		getconfenv(void);
1208ccd4a63SDavid du Colombier int		haswaitq(void*);
1218ccd4a63SDavid du Colombier long		hostdomainwrite(char*, int);
1228ccd4a63SDavid du Colombier long		hostownerwrite(char*, int);
1238ccd4a63SDavid du Colombier void		hzsched(void);
1248ccd4a63SDavid du Colombier void		iallocinit(void);
1258ccd4a63SDavid du Colombier Block*		iallocb(int);
1268ccd4a63SDavid du Colombier void		iallocsummary(void);
1278ccd4a63SDavid du Colombier long		ibrk(ulong, int);
1288ccd4a63SDavid du Colombier void		ilock(Lock*);
1298ccd4a63SDavid du Colombier void		iunlock(Lock*);
1308ccd4a63SDavid du Colombier int		incref(Ref*);
1318ccd4a63SDavid du Colombier void		initseg(void);
1328ccd4a63SDavid du Colombier int		iprint(char*, ...);
1338ccd4a63SDavid du Colombier void		isdir(Chan*);
1348ccd4a63SDavid du Colombier int		iseve(void);
1358ccd4a63SDavid du Colombier #define	islo()	(0)
1368ccd4a63SDavid du Colombier Segment*	isoverlap(Proc*, ulong, int);
1378ccd4a63SDavid du Colombier int		ispages(void*);
1388ccd4a63SDavid du Colombier int		isphysseg(char*);
1398ccd4a63SDavid du Colombier void		ixsummary(void);
1408ccd4a63SDavid du Colombier void		kbdclock(void);
1418ccd4a63SDavid du Colombier int		kbdcr2nl(Queue*, int);
1428ccd4a63SDavid du Colombier int		kbdputc(Queue*, int);
1438ccd4a63SDavid du Colombier void		kbdrepeat(int);
1448ccd4a63SDavid du Colombier long		keyread(char*, int, long);
1458ccd4a63SDavid du Colombier void		kickpager(void);
1468ccd4a63SDavid du Colombier void		killbig(void);
1478ccd4a63SDavid du Colombier int		kproc(char*, void(*)(void*), void*);
1488ccd4a63SDavid du Colombier void		kprocchild(Proc*, void (*)(void*), void*);
1498ccd4a63SDavid du Colombier extern void		(*kproftimer)(ulong);
1508ccd4a63SDavid du Colombier void		ksetenv(char*, char*, int);
1518ccd4a63SDavid du Colombier void		kstrcpy(char*, char*, int);
1528ccd4a63SDavid du Colombier void		kstrdup(char**, char*);
1538ccd4a63SDavid du Colombier long		latin1(Rune*, int);
1548ccd4a63SDavid du Colombier void		lock(Lock*);
1558ccd4a63SDavid du Colombier void		lockinit(void);
1568ccd4a63SDavid du Colombier void		logopen(Log*);
1578ccd4a63SDavid du Colombier void		logclose(Log*);
1588ccd4a63SDavid du Colombier char*		logctl(Log*, int, char**, Logflag*);
1598ccd4a63SDavid du Colombier void		logn(Log*, int, void*, int);
1608ccd4a63SDavid du Colombier long		logread(Log*, void*, ulong, long);
1618ccd4a63SDavid du Colombier void		log(Log*, int, char*, ...);
1628ccd4a63SDavid du Colombier Cmdtab*		lookupcmd(Cmdbuf*, Cmdtab*, int);
1638ccd4a63SDavid du Colombier void		machinit(void);
1648ccd4a63SDavid du Colombier void*		mallocz(ulong, int);
1658ccd4a63SDavid du Colombier #define		malloc kmalloc
1668ccd4a63SDavid du Colombier void*		malloc(ulong);
1678ccd4a63SDavid du Colombier void		mallocsummary(void);
1688ccd4a63SDavid du Colombier Block*		mem2bl(uchar*, int);
1698ccd4a63SDavid du Colombier void		mfreeseg(Segment*, ulong, int);
1708ccd4a63SDavid du Colombier void		microdelay(int);
1718ccd4a63SDavid du Colombier void		mkqid(Qid*, vlong, ulong, int);
1728ccd4a63SDavid du Colombier void		mmurelease(Proc*);
1738ccd4a63SDavid du Colombier void		mmuswitch(Proc*);
1748ccd4a63SDavid du Colombier Chan*		mntauth(Chan*, char*);
1758ccd4a63SDavid du Colombier void		mntdump(void);
1768ccd4a63SDavid du Colombier long		mntversion(Chan*, char*, int, int);
1778ccd4a63SDavid du Colombier void		mountfree(Mount*);
1788ccd4a63SDavid du Colombier ulong		ms2tk(ulong);
1798ccd4a63SDavid du Colombier ulong		msize(void*);
1808ccd4a63SDavid du Colombier ulong		ms2tk(ulong);
1818ccd4a63SDavid du Colombier uvlong		ms2fastticks(ulong);
1828ccd4a63SDavid du Colombier void		muxclose(Mnt*);
1838ccd4a63SDavid du Colombier Chan*		namec(char*, int, int, ulong);
1848ccd4a63SDavid du Colombier Chan*		newchan(void);
1858ccd4a63SDavid du Colombier int		newfd(Chan*);
1868ccd4a63SDavid du Colombier Mhead*		newmhead(Chan*);
1878ccd4a63SDavid du Colombier Mount*		newmount(Mhead*, Chan*, int, char*);
1888ccd4a63SDavid du Colombier Page*		newpage(int, Segment **, ulong);
1898ccd4a63SDavid du Colombier Pgrp*		newpgrp(void);
1908ccd4a63SDavid du Colombier Rgrp*		newrgrp(void);
1918ccd4a63SDavid du Colombier Proc*		newproc(void);
1928ccd4a63SDavid du Colombier char*		nextelem(char*, char*);
1938ccd4a63SDavid du Colombier void		nexterror(void);
1948ccd4a63SDavid du Colombier Cname*		newcname(char*);
1958ccd4a63SDavid du Colombier int		notify(Ureg*);
1968ccd4a63SDavid du Colombier int		nrand(int);
1978ccd4a63SDavid du Colombier int		okaddr(ulong, ulong, int);
1988ccd4a63SDavid du Colombier int		openmode(ulong);
1998ccd4a63SDavid du Colombier void		oserrstr(void);
2008ccd4a63SDavid du Colombier void		oserror(void);
2018ccd4a63SDavid du Colombier Block*		packblock(Block*);
2028ccd4a63SDavid du Colombier Block*		padblock(Block*, int);
2038ccd4a63SDavid du Colombier void		pagechainhead(Page*);
2048ccd4a63SDavid du Colombier void		pageinit(void);
2058ccd4a63SDavid du Colombier void		pagersummary(void);
2068ccd4a63SDavid du Colombier void		panic(char*, ...);
2078ccd4a63SDavid du Colombier Cmdbuf*		parsecmd(char *a, int n);
2088ccd4a63SDavid du Colombier ulong		perfticks(void);
2098ccd4a63SDavid du Colombier void		pexit(char*, int);
2108ccd4a63SDavid du Colombier int		preempted(void);
2118ccd4a63SDavid du Colombier void		printinit(void);
2128ccd4a63SDavid du Colombier int		procindex(ulong);
2138ccd4a63SDavid du Colombier void		pgrpcpy(Pgrp*, Pgrp*);
2148ccd4a63SDavid du Colombier void		pgrpnote(ulong, char*, long, int);
2158ccd4a63SDavid du Colombier Pgrp*		pgrptab(int);
2168ccd4a63SDavid du Colombier void		pio(Segment *, ulong, ulong, Page **);
2178ccd4a63SDavid du Colombier #define		poperror()		up->nerrlab--
2188ccd4a63SDavid du Colombier void		portclock(Ureg*);
2198ccd4a63SDavid du Colombier int		postnote(Proc*, int, char*, int);
2208ccd4a63SDavid du Colombier int		pprint(char*, ...);
2218ccd4a63SDavid du Colombier void		prflush(void);
2228ccd4a63SDavid du Colombier ulong		procalarm(ulong);
2238ccd4a63SDavid du Colombier int		proccounter(char *name);
2248ccd4a63SDavid du Colombier void		procctl(Proc*);
2258ccd4a63SDavid du Colombier void		procdump(void);
2268ccd4a63SDavid du Colombier int		procfdprint(Chan*, int, int, char*, int);
2278ccd4a63SDavid du Colombier void		procinit0(void);
2288ccd4a63SDavid du Colombier void		procflushseg(Segment*);
2298ccd4a63SDavid du Colombier void		procpriority(Proc*, int, int);
2308ccd4a63SDavid du Colombier Proc*		proctab(int);
2318ccd4a63SDavid du Colombier void		procwired(Proc*, int);
2328ccd4a63SDavid du Colombier Pte*		ptealloc(void);
2338ccd4a63SDavid du Colombier Pte*		ptecpy(Pte*);
2348ccd4a63SDavid du Colombier int		pullblock(Block**, int);
2358ccd4a63SDavid du Colombier Block*		pullupblock(Block*, int);
2368ccd4a63SDavid du Colombier Block*		pullupqueue(Queue*, int);
2378ccd4a63SDavid du Colombier void		putmhead(Mhead*);
2388ccd4a63SDavid du Colombier void		putmmu(ulong, ulong, Page*);
2398ccd4a63SDavid du Colombier void		putpage(Page*);
2408ccd4a63SDavid du Colombier void		putseg(Segment*);
2418ccd4a63SDavid du Colombier void		putstr(char*);
2428ccd4a63SDavid du Colombier void		putstrn(char*, int);
2438ccd4a63SDavid du Colombier void		putswap(Page*);
2448ccd4a63SDavid du Colombier ulong		pwait(Waitmsg*);
2458ccd4a63SDavid du Colombier Label*	pwaserror(void);
2468ccd4a63SDavid du Colombier void		qaddlist(Queue*, Block*);
2478ccd4a63SDavid du Colombier Block*		qbread(Queue*, int);
2488ccd4a63SDavid du Colombier long		qbwrite(Queue*, Block*);
2498ccd4a63SDavid du Colombier Queue*		qbypass(void (*)(void*, Block*), void*);
2508ccd4a63SDavid du Colombier int		qcanread(Queue*);
2518ccd4a63SDavid du Colombier void		qclose(Queue*);
2528ccd4a63SDavid du Colombier int		qconsume(Queue*, void*, int);
2538ccd4a63SDavid du Colombier Block*		qcopy(Queue*, int, ulong);
2548ccd4a63SDavid du Colombier int		qdiscard(Queue*, int);
2558ccd4a63SDavid du Colombier void		qflush(Queue*);
2568ccd4a63SDavid du Colombier void		qfree(Queue*);
2578ccd4a63SDavid du Colombier int		qfull(Queue*);
2588ccd4a63SDavid du Colombier Block*		qget(Queue*);
2598ccd4a63SDavid du Colombier void		qhangup(Queue*, char*);
2608ccd4a63SDavid du Colombier int		qisclosed(Queue*);
2618ccd4a63SDavid du Colombier void		qinit(void);
2628ccd4a63SDavid du Colombier int		qiwrite(Queue*, void*, int);
2638ccd4a63SDavid du Colombier int		qlen(Queue*);
2648ccd4a63SDavid du Colombier void		qlock(QLock*);
2658ccd4a63SDavid du Colombier Queue*		qopen(int, int, void (*)(void*), void*);
2668ccd4a63SDavid du Colombier int		qpass(Queue*, Block*);
2678ccd4a63SDavid du Colombier int		qpassnolim(Queue*, Block*);
2688ccd4a63SDavid du Colombier int		qproduce(Queue*, void*, int);
2698ccd4a63SDavid du Colombier void		qputback(Queue*, Block*);
2708ccd4a63SDavid du Colombier long		qread(Queue*, void*, int);
2718ccd4a63SDavid du Colombier Block*		qremove(Queue*);
2728ccd4a63SDavid du Colombier void		qreopen(Queue*);
2738ccd4a63SDavid du Colombier void		qsetlimit(Queue*, int);
2748ccd4a63SDavid du Colombier void		qunlock(QLock*);
2758ccd4a63SDavid du Colombier int		qwindow(Queue*);
2768ccd4a63SDavid du Colombier int		qwrite(Queue*, void*, int);
2778ccd4a63SDavid du Colombier void		qnoblock(Queue*, int);
2788ccd4a63SDavid du Colombier int		rand(void);
2798ccd4a63SDavid du Colombier void		randominit(void);
2808ccd4a63SDavid du Colombier ulong		randomread(void*, ulong);
2818ccd4a63SDavid du Colombier void		rdb(void);
2828ccd4a63SDavid du Colombier int		readnum(ulong, char*, ulong, ulong, int);
2838ccd4a63SDavid du Colombier int		readstr(ulong, char*, ulong, char*);
2848ccd4a63SDavid du Colombier void		ready(Proc*);
2858ccd4a63SDavid du Colombier void		rebootcmd(int, char**);
2868ccd4a63SDavid du Colombier void		reboot(void*, void*, ulong);
2878ccd4a63SDavid du Colombier void		relocateseg(Segment*, ulong);
2888ccd4a63SDavid du Colombier void		renameuser(char*, char*);
2898ccd4a63SDavid du Colombier void		resched(char*);
2908ccd4a63SDavid du Colombier void		resrcwait(char*);
2918ccd4a63SDavid du Colombier int		return0(void*);
2928ccd4a63SDavid du Colombier void		rlock(RWlock*);
2938ccd4a63SDavid du Colombier long		rtctime(void);
2948ccd4a63SDavid du Colombier void		runlock(RWlock*);
2958ccd4a63SDavid du Colombier Proc*		runproc(void);
2968ccd4a63SDavid du Colombier void		savefpregs(FPsave*);
2978ccd4a63SDavid du Colombier extern void		(*saveintrts)(void);
2988ccd4a63SDavid du Colombier void		sched(void);
2998ccd4a63SDavid du Colombier void		scheddump(void);
3008ccd4a63SDavid du Colombier void		schedinit(void);
3018ccd4a63SDavid du Colombier extern void		(*screenputs)(char*, int);
3028ccd4a63SDavid du Colombier long		seconds(void);
3038ccd4a63SDavid du Colombier ulong		segattach(Proc*, ulong, char *, ulong, ulong);
3048ccd4a63SDavid du Colombier void		segclock(ulong);
3058ccd4a63SDavid du Colombier void		segpage(Segment*, Page*);
3068ccd4a63SDavid du Colombier void		setkernur(Ureg*, Proc*);
3078ccd4a63SDavid du Colombier int		setlabel(Label*);
308*ec59a3ddSDavid du Colombier void		setmalloctag(void*, uintptr);
3098ccd4a63SDavid du Colombier void		setrealloctag(void*, ulong);
3108ccd4a63SDavid du Colombier void		setregisters(Ureg*, char*, char*, int);
3118ccd4a63SDavid du Colombier void		setswapchan(Chan*);
312*ec59a3ddSDavid du Colombier long		showfilewrite(char*, int);
3138ccd4a63SDavid du Colombier char*		skipslash(char*);
3148ccd4a63SDavid du Colombier void		sleep(Rendez*, int(*)(void*), void*);
3158ccd4a63SDavid du Colombier void*		smalloc(ulong);
3168ccd4a63SDavid du Colombier int		splhi(void);
3178ccd4a63SDavid du Colombier int		spllo(void);
3188ccd4a63SDavid du Colombier void		splx(int);
3198ccd4a63SDavid du Colombier void		splxpc(int);
3208ccd4a63SDavid du Colombier char*		srvname(Chan*);
3218ccd4a63SDavid du Colombier int		swapcount(ulong);
3228ccd4a63SDavid du Colombier int		swapfull(void);
3238ccd4a63SDavid du Colombier void		swapinit(void);
3248ccd4a63SDavid du Colombier void		timeradd(Timer*);
3258ccd4a63SDavid du Colombier void		timerdel(Timer*);
3268ccd4a63SDavid du Colombier void		timersinit(void);
3278ccd4a63SDavid du Colombier void		timerintr(Ureg*, uvlong);
3288ccd4a63SDavid du Colombier void		timerset(uvlong);
3298ccd4a63SDavid du Colombier ulong		tk2ms(ulong);
3308ccd4a63SDavid du Colombier #define		TK2MS(x) ((x)*(1000/HZ))
3318ccd4a63SDavid du Colombier vlong		todget(vlong*);
3328ccd4a63SDavid du Colombier void		todfix(void);
3338ccd4a63SDavid du Colombier void		todsetfreq(vlong);
3348ccd4a63SDavid du Colombier void		todinit(void);
3358ccd4a63SDavid du Colombier void		todset(vlong, vlong, int);
3368ccd4a63SDavid du Colombier Block*		trimblock(Block*, int, int);
3378ccd4a63SDavid du Colombier void		tsleep(Rendez*, int (*)(void*), void*, int);
3388ccd4a63SDavid du Colombier int		uartctl(Uart*, char*);
3398ccd4a63SDavid du Colombier int		uartgetc(void);
3408ccd4a63SDavid du Colombier void		uartkick(void*);
3418ccd4a63SDavid du Colombier void		uartmouse(Uart*, int (*)(Queue*, int), int);
3428ccd4a63SDavid du Colombier void		uartputc(int);
3438ccd4a63SDavid du Colombier void		uartputs(char*, int);
3448ccd4a63SDavid du Colombier void		uartrecv(Uart*, char);
3458ccd4a63SDavid du Colombier Uart*		uartsetup(Uart*);
3468ccd4a63SDavid du Colombier int		uartstageoutput(Uart*);
3478ccd4a63SDavid du Colombier void		unbreak(Proc*);
3488ccd4a63SDavid du Colombier void		uncachepage(Page*);
3498ccd4a63SDavid du Colombier long		unionread(Chan*, void*, long);
3508ccd4a63SDavid du Colombier void		unlock(Lock*);
3518ccd4a63SDavid du Colombier Proc**	uploc(void);
3528ccd4a63SDavid du Colombier void		userinit(void);
3538ccd4a63SDavid du Colombier ulong		userpc(void);
3548ccd4a63SDavid du Colombier long		userwrite(char*, int);
3558ccd4a63SDavid du Colombier #define	validaddr(a, b, c)
3568ccd4a63SDavid du Colombier void		validname(char*, int);
3578ccd4a63SDavid du Colombier void		validstat(uchar*, int);
3588ccd4a63SDavid du Colombier void		vcacheinval(Page*, ulong);
3598ccd4a63SDavid du Colombier void*		vmemchr(void*, int, int);
3608ccd4a63SDavid du Colombier Proc*		wakeup(Rendez*);
3618ccd4a63SDavid du Colombier int		walk(Chan**, char**, int, int, int*);
3628ccd4a63SDavid du Colombier #define	waserror()	(setjmp(pwaserror()->buf))
3638ccd4a63SDavid du Colombier void		wlock(RWlock*);
3648ccd4a63SDavid du Colombier void		wunlock(RWlock*);
3658ccd4a63SDavid du Colombier void*		xalloc(ulong);
3668ccd4a63SDavid du Colombier void*		xallocz(ulong, int);
3678ccd4a63SDavid du Colombier void		xfree(void*);
3688ccd4a63SDavid du Colombier void		xhole(ulong, ulong);
3698ccd4a63SDavid du Colombier void		xinit(void);
3708ccd4a63SDavid du Colombier int		xmerge(void*, void*);
3718ccd4a63SDavid du Colombier void*		xspanalloc(ulong, int, ulong);
3728ccd4a63SDavid du Colombier void		xsummary(void);
3738ccd4a63SDavid du Colombier void		yield(void);
3748ccd4a63SDavid du Colombier Segment*	data2txt(Segment*);
3758ccd4a63SDavid du Colombier Segment*	dupseg(Segment**, int, int);
3768ccd4a63SDavid du Colombier Segment*	newseg(int, ulong, ulong);
3778ccd4a63SDavid du Colombier Segment*	seg(Proc*, ulong, int);
3788ccd4a63SDavid du Colombier ulong	ticks(void);
3798ccd4a63SDavid du Colombier void	osproc(Proc*);
3808ccd4a63SDavid du Colombier void	osnewproc(Proc*);
3818ccd4a63SDavid du Colombier void	procsleep(void);
3828ccd4a63SDavid du Colombier void	procwakeup(Proc*);
3838ccd4a63SDavid du Colombier void	osinit(void);
3848ccd4a63SDavid du Colombier void	screeninit(void);
3858ccd4a63SDavid du Colombier extern	void	terminit(void);
3868ccd4a63SDavid du Colombier 
387