perm filename PREDEC[TNX,AIL] blob sn#128061 filedate 1974-11-02 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00009 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002		$$INIT
C00017 00003	COMMENT  NWORLD RUNTIMES 
C00021 00004	COMMENT  TRIG AND NUMERICAL ROUTINES 
C00024 00005	CMU <
C00026 00006	TENEX <
C00035 00007	IMSSS <
C00036 00008	NOEXPO <
C00040 00009		$$BLTT			TYPE TABLE
C00041 ENDMK
C⊗;
	$$INIT

	MAIN	M,UNTYPE,OWN,<>

	FUNC	OUT,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	STRING,VALUE	;VALSTR	(STRING)	>

	FUNC	BREAKSET,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(TABLE)
	PAR	STRING,VALUE	;VALSTR	(STRING)
	PAR	INTEGR,VALUE	;VALINT	(CONDITIONS)	>

	FUNC	INPUT,STRING,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	INTEGR,VALUE	;VALINT	(TABLE)	>

	FUNC	LOOKUP,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	STRING,VALUE	;VALSTR	(FILENAME)
	PAR	INTEGR,REFRNC	;REFINT	(FLAG)	>

	FUNC	WR_INI,UNTYPE,OWN,<
	PAR	STRING,VALUE	;VALSTR	(DEVICE)
	PAR	STRING,VALUE	;VALSTR	(FILENAME)
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	INTEGR,VALUE	;VALINT	(MAXLENGTH)	>

	FUNC	OPEN,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	STRING,VALUE	;VALSTR	(DEVICE)
	PAR	INTEGR,VALUE	;VALINT	(MODE)
	PAR	INTEGR,VALUE	;VALINT	(INBUFS)
	PAR	INTEGR,VALUE	;VALINT	(OUTBUFS)
	PAR	INTEGR,REFRNC	;REFINT	(COUNT)
	PAR	INTEGR,REFRNC	;REFINT	(BRCHAR)
	PAR	INTEGR,REFRNC	;REFINT	(EOF)	>

	FUNC	SETPL,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	INTEGR,REFRNC	;REFINT	(LINNUM)
	PAR	INTEGR,REFRNC	;REFINT	(PAGNUM)
	PAR	INTEGR,REFRNC	;REFINT	(SOSNUM)	>

	FUNC	POINT,INTEGR,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	INTEGR,VALUE	;VALINT	(BYTESIZE)
	PAR	INTEGR,REFRNC	;REFINT	(ADDRESS)
	PAR	INTEGR,VALUE	;VALINT	(BYTEPOS)	>

	SLABL	.BBPP.
	FUNC	BBPP.,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(BYTESIZE)
	PAR	INTEGR,REFRNC	;REFINT	(ADDRESS)
	PAR	INTEGR,VALUE	;VALINT	(BYTEPOS)	>

	FUNC	EQU,INTEGR,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	STRING,VALUE	;VALSTR	(ARG1)
	PAR	STRING,VALUE	;VALSTR	(ARG2)	>

	FUNC	CVS,STRING,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	INTEGR,VALUE	;VALINT	(NUMBER)	>

	FUNC	CVD,INTEGR,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	STRING,VALUE	;VALSTR	(STRING)	>

	FUNC	SCAN,STRING,OWN+CONOK+EXTRNL,<
	PAR	STRING,REFRNC	;REFSTR	(STRING)
	PAR	INTEGR,VALUE	;VALINT	(TABLE)
	PAR	INTEGR,REFRNC	;REFINT	(BRCHAR)	>

	FUNC	RELEASE,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	INTEGR,VALUE,$	;VALINT	(INHIBITS)	>

	FUNC	LINOUT,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	INTEGR,VALUE	;VALINT	(LINENO)	>

	FUNC	CLOSE,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	INTEGR,VALUE,$	;VALINT	(INHIBIT)	>

	FUNC	CLOSO,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)	>

	FUNC	CLOSIN,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)	>

	FUNC	CVOS,STRING,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	INTEGR+FLOTNG,VALUE	;VALARI	(NUMBER)	>

	FUNC	ENTER,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	STRING,VALUE	;VALSTR	(NAME)
	PAR	INTEGR,REFRNC	;REFINT	(FAIL-FLG)	>

	FUNC	MTAPE,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	INTEGR,VALUE	;VALINT	(OPER)	>

	FUNC	WORDIN,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)	>

	FUNC	WORDOUT,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	INTEGR+FLOTNG,VALUE	;VALARI	(ARG)	>

	FUNC	CVO,INTEGR,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	STRING,VALUE	;VALSTR	(STRING)	>

	FUNC	USETI,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANN)
	PAR	INTEGR,VALUE	;VALINT	(BLOCK)	>

	FUNC	USETO,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	INTEGR,VALUE	;VALINT	(BLOCK)	>

	FUNC	CVSIX,INTEGR,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	STRING,VALUE	;VALSTR	(STRING)	>

	FUNC	CVFIL,INTEGR,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	STRING,VALUE	;VALSTR	(INPUT)
	PAR	INTEGR,REFRNC	;REFINT	(EXTEN)
	PAR	INTEGR,REFRNC	;REFINT	(PPN)	>

	FUNC	CALL,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(INPUT-VAL)
	PAR	STRING,VALUE	;VALSTR	(STRING-DESCR)	>

	FUNC	RENAME,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	STRING,VALUE	;VALSTR	(FILE-NAME)
	PAR	INTEGR,VALUE	;VALINT	(PROTECTION)
	PAR	INTEGR,REFRNC	;REFINT	(FLAG)	>

	FUNC	CVASC,INTEGR,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	STRING,VALUE	;VALSTR	(STRING-IN)	>

	FUNC	CVSTR,STRING,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	INTEGR,VALUE	;VALINT	(INTEGR-IN)	>

	FUNC	CVXSTR,STRING,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	INTEGR,VALUE	;VALINT	(INTEGR-IN)	>

	SLABL	.SUBSR
	FUNC	SUBSR,STRING,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	STRING,VALUE	;VALSTR	(THESTRING)
	PAR	INTEGR,VALUE	;VALINT	(FOR)
	PAR	INTEGR,VALUE	;VALINT	(START)	>

	SLABL	.SUBST
	FUNC	SUBST,STRING,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	STRING,VALUE	;VALSTR	(THESTRING)
	PAR	INTEGR,VALUE	;VALINT	(TO)
	PAR	INTEGR,VALUE	;VALINT	(START)	>

	FUNC	SETBREAK,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(TABLE)
	PAR	STRING,VALUE	;VALSTR	(BRCHARS)
	PAR	STRING,VALUE	;VALSTR	(OMITS)
	PAR	STRING,VALUE	;VALSTR	(MODES)	>

	FUNC	GETBREAK,INTEGR,OWN+BILTIN,<>

	FUNC	RELBREAK,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(TABLE)	>

	FUNC	STDBRK,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)	>

	FUNC	ARRYIN,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	INTEGR+FLOTNG+ITMVAR,REFRNC	;REFANY	(WHERE)
	PAR	INTEGR,VALUE	;VALINT	(COUNT)	>

	FUNC	ARRYOUT,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)
	PAR	INTEGR+FLOTNG+ITMVAR,REFRNC	;REFANY	(WHERE)
	PAR	INTEGR,VALUE	;VALINT	(COUNT)	>

	FUNC	SETFORMAT,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(WIDTH)
	PAR	INTEGR,VALUE	;VALINT	(DIGS)	>

	FUNC	CVG,STRING,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	FLOTNG,VALUE	;VALREL	(NUMBER)	>

	FUNC	CVF,STRING,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	FLOTNG,VALUE	;VALREL	(NUMBER)	>

	FUNC	CVE,STRING,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	FLOTNG,VALUE	;VALREL	(NUMBER)	>

	FUNC	REALIN,FLOTNG,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)	>

	FUNC	INTIN,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHANNEL)	>

	FUNC	REALSCAN,FLOTNG,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	STRING,REFRNC	;REFSTR	(ST-NUM)
	PAR	INTEGR,REFRNC	;REFINT	(FLAG-BREAK)	>

	FUNC	INTSCAN,INTEGR,OWN+BILTIN+CONOK+EXTRNL,<
	PAR	STRING,REFRNC	;REFSTR	(ST-NUM)
	PAR	INTEGR,REFRNC	;REFINT	(FLAG-BREAK)	>

	FUNC	ARRINFO,INTEGR,OWN+BILTIN,<
	PAR	INTEGR+FLOTNG+SET+LSTBIT+ITMVAR+STRING,REFRNC+SBSCRP	;ARRALL	(ARRAY)
	PAR	INTEGR,VALUE	;VALINT	(CODE)	>

	FUNC	ARRBLT,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR+FLOTNG+ITMVAR+SET,REFRNC	;REFALL	(DEST)
	PAR	INTEGR+FLOTNG+ITMVAR+SET,REFRNC	;REFALL	(SOURCE)
	PAR	INTEGR,VALUE	;VALINT	(HOWMANY)	>

	FUNC	ARRTRAN,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR+FLOTNG+ITMVAR+SET+LSTBIT+STRING,REFRNC+SBSCRP	;ARRMST	(ARRDST)
	PAR	INTEGR+FLOTNG+ITMVAR+SET+LSTBIT+STRING,REFRNC+SBSCRP	;ARRMST	(ARRSRC)	>

	FUNC	ARRCLR,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR+FLOTNG+ITMVAR+STRING,REFRNC+SBSCRP	;ARRMST	(ARRAY)
	PAR	INTEGR+FLOTNG,VALUE,$	;VALARI	(VAL)	>

	FUNC	CODE,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(INST)
	PAR	INTEGR,REFRNC	;REFINT	(ADDR)	>

	FUNC	USERERR,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(VALUE)
	PAR	INTEGR,VALUE	;VALINT	(CODE)
	PAR	STRING,VALUE	;VALSTR	(MSG)
	PAR	STRING,VALUE,$	;VALSTR	(RESPONSE)	>

	FUNC	ERMSBF,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHARS)	>

	FUNC	CVSI,ITMVAR,OWN,<
	PAR	STRING,VALUE	;VALSTR	(PNAME)
	PAR	INTEGR,REFRNC	;REFINT	(FLAG)	>

	FUNC	CVIS,STRING,OWN,<
	PAR	ITMVAR,VALUE	;VALITM	(ITEMNO)
	PAR	INTEGR,REFRNC	;REFINT	(FLAG)	>

	FUNC	NEW_PNAME,UNTYPE,OWN,<
	PAR	ITMVAR,VALUE	;VALITM	(ITEM)
	PAR	STRING,VALUE	;VALSTR	(STRING)	>

	FUNC	DEL_PNAME,UNTYPE,OWN,<
	PAR	ITMVAR,VALUE	;VALTIM	(ITEM)	>

	FUNC	TYPEIT,INTEGR,OWN+BILTIN,<
	PAR	ITMVAR,VALUE	;VALITM	(ITEM)	>

	FUNC	LISTX,INTEGR,OWN+BILTIN,<
	PAR	LSTBIT+SET,VALUE	;VALLST	(LIST)
	PAR	ITMVAR,VALUE	;VALITM	(ITEM)
	PAR	INTEGR,VALUE	;VALINT	(OCCURENCE)	>

	FUNC	INCHRW,INTEGR,OWN+BILTIN,<>

	FUNC	INCHRS,INTEGR,OWN+BILTIN,<>

	FUNC	INCHWL,STRING,OWN+BILTIN,<>

	FUNC	INCHSL,STRING,OWN+BILTIN,<
	PAR	INTEGR,REFRNC	;REFINT	(FLAG)	>

	FUNC	INSTR,STRING,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(BRCHAR)	>

	FUNC	INSTRL,STRING,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(BRCHAR)	>

	FUNC	INSTRS,STRING,OWN+BILTIN,<
	PAR	INTEGR,REFRNC	;REFINT	(FLAG)
	PAR	INTEGR,VALUE	;VALINT	(BRCHAR)	>

	FUNC	TTYIN,STRING,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(TABLE)
	PAR	INTEGR,REFRNC	;REFINT	(BRCHAR)	>

	FUNC	TTYINL,STRING,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(TABLE)
	PAR	INTEGR,REFRNC	;REFINT	(BRCHAR)	>

	FUNC	TTYINS,STRING,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(TABLE)
	PAR	INTEGR,REFRNC	;REFINT	(BRCHAR)	>

	FUNC	OUTCHR,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAR)	>

	FUNC	OUTSTR,UNTYPE,OWN+BILTIN,<
	PAR	STRING,VALUE	;VALSTR	(STR)	>

	FUNC	$PRINT,STRING,OWN,<
	PAR	STRING,VALUE	;VALSTR	(STR)
	PAR	INTEGR,VALUE,$	;VALINT	(CTL)	>

	FUNC	GETFORMAT,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,REFRNC	;REFINT	(WDTH)
	PAR	INTEGR,REFRNC	;REFINT	(DIGS)	>

	FUNC	GETCHAN,INTEGR,OWN+BILTIN,<>

	FUNC	FILEINFO,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,REFRNC+SBSCRP	;ARRINT	(ARRAY)	>

	FUNC	USERCON,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,REFRNC	;REFINT	(INDEX)
	PAR	INTEGR,REFRNC	;REFINT	(VALUE)
	PAR	INTEGR,VALUE	;VALINT	(FLAG)	>

	FUNC	CHNCDB,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

COMMENT ⊗ NWORLD RUNTIMES ⊗

	FUNC	MAINPR,UNTYPE,OWN,<>

	FUNC	RESUME,ITMVAR,OWN,<
	PAR	ITMVAR,VALUE	;VALITM	(PROCESS)
	PAR	ITMVAR,VALUE,$	;VALITM	(RETVAL)
	PAR	INTEGR,VALUE,$	;VALINT	(OPTS)	>

	FUNC	ASKNTC,ITMVAR,OWN,<
	PAR	ITMVAR,VALUE	;VALITM	(ETYP)
	PAR	INTEGR,VALUE,$	;VALINT	(OPTS)	>

	FUNC	CAUSE1,ITMVAR,OWN,<
	PAR	ITMVAR,VALUE	;VALITM	(ETYP)
	PAR	ITMVAR,VALUE,$	;VALITM	(ENOT)
	PAR	INTEGR,VALUE,$	;VALINT	(OPTS)	>

	FUNC	MKEVTT,UNTYPE,OWN,<
	PAR	ITMVAR,VALUE	;VALITM	(ETYP)	>

	FUNC	JOIN,UNTYPE,OWN,<
	PAR	SET,VALUE	;VALSET	(JSET)	>

	FUNC	SUSPEND,ITMVAR,OWN,<
	PAR	ITMVAR,VALUE	;VALITM	(PROCESS)	>

	FUNC	TERMINATE,UNTYPE,OWN,<
	PAR	ITMVAR,VALUE	;VALITM	(PROCESS)	>

	FUNC	MYPROC,ITMVAR,OWN+BILTIN,<>

	FUNC	CALLER,ITMVAR,OWN,<
	PAR	ITMVAR,VALUE	;VALITM	(PROCESS)	>

	FUNC	INTSET,UNTYPE,OWN,<
	PAR	ITMVAR,VALUE	;VALITM	(IPROCSS)
	PAR	INTEGR,VALUE	;VALINT	(OPTS)	>

	FUNC	INTTBL,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(SIZE)	>

	FUNC	INTMOD,UNTYPE,OWN,<>

	FUNC	CLKMOD,UNTYPE,OWN,<>

	FUNC	DFRINT,UNTYPE,OWN,<>

	FUNC	DDFINT,UNTYPE,OWN,<>

	FUNC	DFR1IN,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(AOBJNP)	>

	FUNC	ENABLE,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(INDEX)	>

	FUNC	DISABLE,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(INDEX)	>

	FUNC	INTMAP,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(INDEX)
	PAR	PROCED,REFRNC	;REFPRC	(PROC)
	PAR	INTEGR,VALUE	;VALINT	(PARAM)	>

	FUNC	DFCPKT,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(ADDR)
	PAR	ITMVAR,VALUE	;VALITM	(TYP)
	PAR	ITMVAR,VALUE	;VALITM	(NOTC)
	PAR	INTEGR,VALUE	;VALINT	(OPTS)	>

	FUNC	URSCHD,INTEGR,OWN,<>

	FUNC	PRISET,UNTYPE,OWN,<
	PAR	ITMVAR,VALUE	;VALITM	(PROCESS)
	PAR	INTEGR,VALUE	;VALINT	(PRIORITY)	>

	FUNC	PSTATUS,INTEGR,OWN,<
	PAR	ITMVAR,VALUE	;VALITM	(PROCESS)	>

	FUNC	INTPRO,UNTYPE,OWN,<>

	FUNC	ANSWER,INTEGR,OWN,<
	PAR	ITMVAR,VALUE	;VALITM	(ETYP)
	PAR	ITMVAR,VALUE	;VALITM	(ENOT)
	PAR	ITMVAR,VALUE	;VALITM	(PROCESS)	>

COMMENT ⊗ TRIG AND NUMERICAL ROUTINES ⊗

	FUNC	LOG,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	FLOTNG,VALUE	;VALREL	(ARG)	>

	FUNC	EXP,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	FLOTNG,VALUE	;VALREL	(ARG)	>

	FUNC	SIN,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	FLOTNG,VALUE	;VALREL	(ARG)	>

	FUNC	SIND,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	FLOTNG,VALUE	;VALREL	(ARG)	>

	FUNC	COS,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	FLOTNG,VALUE	;VALREL	(ARG)	>

	FUNC	COSD,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	FLOTNG,VALUE	;VALREL	(ARG)	>

	FUNC	SQRT,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	FLOTNG,VALUE	;VALREL	(ARG)	>

	FUNC	ATAN2,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	FLOTNG,VALUE	;VALREL	(ARG)
	PAR	FLOTNG,VALUE	;VALREL	(ARG)	>

	FUNC	ATAN,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	FLOTNG,VALUE	;VALREL	(ARG)	>

	FUNC	ACOS,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	FLOTNG,VALUE	;VALREL	(ARG)	>

	FUNC	ASIN,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	FLOTNG,VALUE	;VALREL	(ARG)	>

	FUNC	TANH,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	FLOTNG,VALUE	;VALREL	(ARG)	>

	FUNC	COSH,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	FLOTNG,VALUE	;VALREL	(ARG)	>

	FUNC	SINH,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	FLOTNG,VALUE	;VALREL	(ARG)	>

	FUNC	RAN,FLOTNG,OWN+BILTIN+FNYNAM,<
	PAR	INTEGR,VALUE	;VALINT	(ARG)	>

	FUNC	TRIGINI,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALLOC	(LOC)	>

	FUNC	GETSTS,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHNL)	>

	FUNC	SETSTS,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHNL)
	PAR	INTEGR,VALUE	;VALINT	(BITS)	>

	FUNC	INOUT,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(INCHN)
	PAR	INTEGR,VALUE	;VALINT	(OUTCH)
	PAR	INTEGR,VALUE	;VALINT	(EXT)	>

	FUNC	TTYUP,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(ARG)	>

	FUNC	CLRBUF,UNTYPE,OWN+BILTIN,<>

CMU <

	FUNC	INITSEA,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(SEAPAR)	>

	FUNC	SEAINIT,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(SEAPAR)	>

	FUNC	SEAREL,UNTYPE,OWN,<>

	FUNC	ARDINIT,UNTYPE,OWN,<>

	FUNC	CHARSZ,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(SIZE)	>

	FUNC	ARDSTR,UNTYPE,OWN,<
	PAR	STRING,VALUE	;VALSTR	(STR)	>

	FUNC	CHRMOD,UNTYPE,OWN,<>

	FUNC	CLEAR,UNTYPE,OWN,<>

	FUNC	SETPNT,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(X)
	PAR	INTEGR,VALUE	;VALINT	(Y)	>

	FUNC	INVVEC,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DX)
	PAR	INTEGR,VALUE	;VALINT	(DY)	>

	FUNC	VISVEC,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DX)
	PAR	INTEGR,VALUE	;VALINT	(DY)	>

	FUNC	DOTVEC,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DX)
	PAR	INTEGR,VALUE	;VALINT	(DY)	>

	FUNC	SVEC,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DX)
	PAR	INTEGR,VALUE	;VALINT	(DY)	>

	FUNC	MOUSEW,UNTYPE,OWN,<
	PAR	INTEGR,REFRNC	;REFINT	(X)
	PAR	INTEGR,REFRNC	;REFINT	(Y)
	PAR	INTEGR,REFRNC	;REFINT	(TYPE)	>

	FUNC	MOUSES,UNTYPE,OWN,<
	PAR	INTEGR,REFRNC	;REFINT	(X)
	PAR	INTEGR,REFRNC	;REFINT	(Y)
	PAR	INTEGR,REFRNC	;REFINT	(TYPE)	>

	FUNC	CHRMOD,UNTYPE,OWN,<>

>;CMU
TENEX <

	FUNC	CVJFN,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	ODTIM,STRING,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DT)
	PAR	INTEGR,VALUE	;VALINT	(FORMAT)	>

	FUNC	IDTIM,INTEGR,OWN,<
	PAR	STRING,VALUE	;VALSTR	(DT)	>

	FUNC	RUNTM,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(FORK)
	PAR	INTEGR,REFRNC	;REFINT	(CONSOLE)	>

	FUNC	GTAD,INTEGR,OWN+BILTIN,<>

	FUNC	GJINF,INTEGR,OWN,<
	PAR	INTEGR,REFRNC	;REFINT	(LOGDIR)
	PAR	INTEGR,REFRNC	;REFINT	(CONDIR)
	PAR	INTEGR,REFRNC	;REFINT	(TTYNO)	>

	FUNC	STDIR,INTEGR,OWN,<
	PAR	STRING,VALUE	;VALSTR	(DIRECTORY)
	PAR	INTEGR,VALUE	;VALINT	(DOREC)	>

	FUNC	DIRST,STRING,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DIRNO)	>

	FUNC	RUNPRG,INTEGR,OWN,<
	PAR	STRING,VALUE	;VALSTR	(PROGRAM)
	PAR	INTEGR,VALUE	;VALINT	(INCREM)
	PAR	INTEGR,VALUE	;VALINT	(NEWFRK)	>

	FUNC	OPENFILE,INTEGR,OWN,<
	PAR	STRING,VALUE	;VALSTR	(FILE)
	PAR	STRING,VALUE	;VALSTR	(MODES)	>

	FUNC	SETINPUT,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,REFRNC	;REFINT	(COUNT)
	PAR	INTEGR,REFRNC	;REFINT	(BRK)
	PAR	INTEGR,REFRNC	;REFINT	(EOF)	>

	FUNC	INDEXFILE,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	GTJFN,INTEGR,OWN,<
	PAR	STRING,VALUE	;VALSTR	(FILE)
	PAR	INTEGR,VALUE	;VALINT	(FLAGS)	>

	FUNC	GTJFNL,INTEGR,OWN,<
	PAR	STRING,VALUE	;VALSTR	(ORIG)
	PAR	INTEGR,VALUE	;VALINT	(FLAGS)
	PAR	INTEGR,VALUE	;VALINT	(IOJFS)
	PAR	STRING,VALUE	;VALSTR	(DEV)
	PAR	STRING,VALUE	;VALSTR	(DIR)
	PAR	STRING,VALUE	;VALSTR	(NAM)
	PAR	STRING,VALUE	;VALSTR	(EXT)
	PAR	STRING,VALUE	;VALSTR	(PROT)
	PAR	STRING,VALUE	;VALSTR	(ACC)
	PAR	INTEGR,VALUE	;VALINT	(DJFN)	>

	FUNC	GNJFN,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	DELF,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	UNDELETE,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	SIZEF,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	JFNS,STRING,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,VALUE	;VALINT	(FLAGS)	>

	FUNC	OPENF,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,VALUE	;VALINT	(FLAGS)	>

	FUNC	CFILE,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	CLOSF,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	RLJFN,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	GTSTS,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	STSTS,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,VALUE	;VALINT	(STAT)	>

	FUNC	RNAMF,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN1)
	PAR	INTEGR,VALUE	;VALINT	(CHAN2)	>

	FUNC	CNDIR,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DIR)
	PAR	STRING,VALUE	;VALSTR	(PW)	>

	FUNC	ASND,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DEV)	>

	FUNC	RELD,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DEV)	>

	FUNC	GDSTS,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,REFRNC	;REFINT	(WDCNT)	>

	FUNC	SDSTS,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,VALUE	;VALINT	(STAT)	>

	FUNC	STDEV,INTEGR,OWN,<
	PAR	STRING,VALUE	;VALSTR	(DEV)	>

	FUNC	DEVST,STRING,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DEV)	>

	FUNC	CHAROUT,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,VALUE	;VALINT	(CHAR)	>

	FUNC	GTFDB,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,REFRNC+SBSCRP	;ARRINT	(ARR)	>

	FUNC	MTOPR,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,VALUE	;VALINT	(FUNCTION)
	PAR	INTEGR,VALUE	;VALINT	(VAL)	>

	FUNC	SFPTR,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,VALUE	;VALINT	(POINTER)	>

	FUNC	RFPTR,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	BKJFN,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	RFBSZ,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	DEVTYPE,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	DVCHR,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,REFRNC	;REFINT	(AC1)
	PAR	INTEGR,REFRNC	;REFINT	(AC3)	>

	FUNC	ERSTR,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(ERRNO)
	PAR	INTEGR,VALUE	;VALINT	(FORK)	>

	FUNC	RFMOD,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	SFMOD,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,VALUE	;VALINT	(MODE)	>

	FUNC	RFCOC,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,REFRNC	;REFINT	(AC2)
	PAR	INTEGR,REFRNC	;REFINT	(AC3)	>

	FUNC	SFCOC,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,VALUE	;VALINT	(AC2)
	PAR	INTEGR,VALUE	;VALINT	(AC3)	>

	FUNC	STPAR,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,VALUE	;VALINT	(BITS)	>

	FUNC	STI,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,VALUE	;VALINT	(BITS)	>

	FUNC	GTTYP,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,REFRNC	;REFINT	(BUFS)	>

	FUNC	STTYP,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,VALUE	;VALINT	(BITS)	>

	FUNC	PMAP,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(AC1)
	PAR	INTEGR,VALUE	;VALINT	(AC2)
	PAR	INTEGR,VALUE	;VALINT	(AC3)	>

	FUNC	INTTY,STRING,OWN+BILTIN,<>

	FUNC	PBIN,INTEGR,OWN+BILTIN,<>

	FUNC	PBOUT,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAR)	>

	FUNC	PSOUT,UNTYPE,OWN+BILTIN,<
	PAR	STRING,VALUE	;VALSTR	(STR)	>

	FUNC	CHARIN,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)	>

	FUNC	SINI,STRING,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(CHAN)
	PAR	INTEGR,VALUE	;VALINT	(MAXL)
	PAR	INTEGR,VALUE	;VALINT	(BRK)	>

	FUNC	ATI,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CODE)
	PAR	INTEGR,VALUE	;VALINT	(CHNL)	>

	FUNC	DTI,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(CHNL)	>

>;TENEX
IMSSS <

	FUNC	DSKIN,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(MODULE)
	PAR	INTEGR,VALUE	;VALINT	(RECNO)
	PAR	INTEGR,VALUE	;VALINT	(COUNT)
	PAR	INTEGR+FLOTNG+ITMVAR,REFRNC	;REFANY	(LOC)	>

	FUNC	DSKOUT,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(MODULE)
	PAR	INTEGR,VALUE	;VALINT	(RECNO)
	PAR	INTEGR,VALUE	;VALINT	(COUNT)
	PAR	INTEGR+FLOTNG+ITMVAR,REFRNC	;REFANY	(LOC)	>

	FUNC	PBTIN,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(SECONDS)	>

>;IMSSS
NOEXPO <

	FUNC	PTYGET,INTEGR,OWN+BILTIN,<>

	FUNC	PTYREL,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(LINE)	>

	FUNC	PTYGTL,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(LINE)	>

	FUNC	PTYSTL,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(LINE)
	PAR	INTEGR,VALUE	;VALINT	(CHAR)	>

	FUNC	PTIFRE,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(LINE)	>

	FUNC	PTOCNT,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(LINE)	>

	FUNC	PTCHRW,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(LINE)	>

	FUNC	PTCHRS,INTEGR,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(LINE)	>

	FUNC	PTOCHS,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(LINE)
	PAR	INTEGR,VALUE	;VALINT	(CHAR)	>

	FUNC	PTOCHW,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(LINE)
	PAR	INTEGR,VALUE	;VALINT	(CHAR)	>

	FUNC	PTOSTR,UNTYPE,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(LINE)
	PAR	STRING,VALUE	;VALSTR	(INFO)	>

	FUNC	BACKUP,UNTYPE,OWN+BILTIN,<>

	FUNC	LODED,UNTYPE,OWN+BILTIN,<
	PAR	STRING,VALUE	;VALSTR	(RELINE)	>

	FUNC	PTYALL,STRING,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(LINE)	>

	FUNC	PTYSTR,STRING,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(LINE)
	PAR	INTEGR,VALUE	;VALINT	(BRCHAR)	>

	FUNC	PTYIN,STRING,OWN+BILTIN,<
	PAR	INTEGR,VALUE	;VALINT	(LINE)
	PAR	INTEGR,VALUE	;VALINT	(BKTBL)
	PAR	INTEGR,REFRNC	;REFINT	(BRCHAR)	>

	FUNC	IFGLOBAL,INTEGR,OWN+BILTIN,<
	PAR	ITMVAR,VALUE	;VALITM	(ITM)	>

	FUNC	ISSUE,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DIRECT)
	PAR	STRING,VALUE	;VALSTR	(SRC)
	PAR	STRING,VALUE	;VALSTR	(DES)
	PAR	STRING,VALUE	;VALSTR	(NAME)	>

	FUNC	QUEUE,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DIR)
	PAR	INTEGR,VALUE	;VALINT	(UNQ)	>

	FUNC	GET_DATA,STRING,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DIR)
	PAR	INTEGR,VALUE	;VALINT	(UNQ)	>

	FUNC	PUT_DATA,UNTYPE,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DIR)
	PAR	INTEGR,VALUE	;VALINT	(UNQ)
	PAR	STRING,VALUE	;VALSTR	(STR)	>

	FUNC	GET_BIT,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(UNQ)	>

	FUNC	GET_ENTRY,INTEGR,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DIR)
	PAR	STRING,VALUE	;VALSTR	(SRC)
	PAR	STRING,VALUE	;VALSTR	(DES)
	PAR	STRING,VALUE	;VALSTR	(NAM)	>

	FUNC	GET_SET,SET,OWN,<
	PAR	INTEGR,VALUE	;VALINT	(DIR)
	PAR	STRING,VALUE	;VALSTR	(SRC)
	PAR	STRING,VALUE	;VALSTR	(DES)
	PAR	STRING,VALUE	;VALSTR	(NAM)	>
>;NOEXPO
	$$BLTT			;TYPE TABLE
	$$FINI