/* Copyright 1989, 1991, 1992 Digital Equipment Corporation All rights reserved. This software is furnished under a license and may be used and copied only in accordance with the terms of such license and with the inclusion of the above copyright notice. This software and any copies shall not be provided to any other person. No title to or ownership of the software is hereby transferred. The information in this software is subject to change without notice. DIGITAL assumes no responsibility for the use, functionality or reliability of its software on equipment which is not supplied by DIGITAL. rstsys.h PDP-11 C RSTS/E SYSLIB and System Directive Definitions */ #ifndef __PDP11C$RSTSYS_H #define __PDP11C$RSTSYS_H typedef struct { unsigned char firqb; unsigned char blank; unsigned char fqjob; unsigned char fqfun; unsigned char fqfil; unsigned char fqsizm; unsigned short fqppn; long fqnam1; short fqext; short fqsiz; short fqbufl; short fqmode; short fqflag; unsigned char fqpflg; unsigned char fqprot; short fqdev; short fqdevn; short fqclus; short fqnent; } FIRQB; typedef struct { short xrlen; short xrbc; short xrloc; unsigned char xrci; unsigned char xrblkm; short xrblk; short xrtime; short xrmod; } XRB; #define RSTS$FIRQB ((FIRQB *)(0402)) /* Absolute address of the FIRQB */ #define RSTS$XRB ((XRB *) (0442)) /* Absolute address of the XRB */ #define EXIT C$CEXE #define MVTS C$MVTS /* RSX EMULATION MVTS */ #define SVTK C$SVTK #define RSTS$CLRFQB $CLFQB #define RSTS$CLRXRB $CLXRB #define RSTS$AST C$AST /* Enable/disable AST */ #define RSTS$ASTX C$CAST /* Exit from AST */ #define RSTS$CALFIP C$CFIP /* Call file processor */ #define RSTS$FIP$CLSFQ (00) /* Close an open channel*/ #define RSTS$FIP$OPNFQ (02) /* Open a channel */ #define RSTS$FIP$CREFQ (04) /* Create/extend a file */ #define RSTS$FIP$DLNFQ (06) /* Delete a file by name*/ #define RSTS$FIP$RENFQ (010) /* Rename a file */ #define RSTS$FIP$DIRFQ (012) /* Get directory info */ #define RSTS$FIP$UUOFQ (014) /* Process UUO */ #define RSTS$FIP$ERRFQ (016) /* Get error message */ #define RSTS$FIP$RSTFQ (020) /* Reset a channel */ #define RSTS$FIP$LOKFQ (022) /* Look up a file */ #define RSTS$FIP$ASSFQ (024) /* Allocate a device */ #define RSTS$FIP$DEAFQ (026) /* Deallocate a device */ #define RSTS$FIP$DALFQ (030) /* Deallocate all device*/ #define RSTS$FIP$CRTFQ (032) /* Create/extnd tmp file*/ #define RSTS$FIP$CRBFQ (034) /* Create/extnd img file*/ #define RSTS$CCL C$CCL /* Check for CCL cmd */ #define RSTS$CHAIN C$CHAI /* Execute, same RTS */ #define RSTS$CLEAR C$CLEA /* Clear keyword bits */ #define RSTS$CMDLN C$CMDL /* Read/write cmd line */ #define RSTS$CORE C$CORE /* Change memory size */ #define RSTS$DATE C$DATE /* Get date and time */ #define RSTS$ERLOG C$ERLO /* Log error from RTS */ #define RSTS$EXIT C$CEXI /* Exit to default KBM */ #define RSTS$FSS C$CFSS /* Check filspec string */ #define RSTS$LOGS C$LOGS /* Check logicals */ #define RSTS$MESAG C$MESA /* Message send/receive */ #define RSTS$NAME C$NAME /* Set program name */ #define RSTS$PEEK C$PEEK /* Look at monitor mem */ #define RSTS$PLAS C$PLAS /* Access resident lib */ #define RSTS$POSTN C$POST /* Return horiz pos */ #define RSTS$READ C$CREA /* Read */ #define RSTS$READA C$REAA /* Read (asynchronous) */ #define RSTS$RTS C$RTS /* Pass control to RTS */ #define RSTS$RUN C$RUN /* Run a program */ #define RSTS$SET C$SET /* Set keyword bits */ #define RSTS$SLEEP C$SLEE /* Suspend job */ #define RSTS$SPEC C$SPEC /* Special fns for I/O */ #define RSTS$STAT C$STAT /* Return job stats */ #define RSTS$TIME C$STIM /* Return job timing */ #define RSTS$TTAPE C$TTAP /* Enter tape mode */ #define RSTS$TTDDT C$TTDD /* Dsbl full-ln buffrg */ #define RSTS$TTECH C$TTEC /* Undo .TTAPE | .TTNCH */ #define RSTS$TTNCH C$TTNC /* Stop echo */ #define RSTS$TTRST C$TTRS /* Restart output */ #define RSTS$ULOG C$ULOG /* Manage user logicals */ #define RSTS$UUO C$CUUO /* Execute SYS() call */ #define RSTS$WRITA C$WRTA /* Write (asynchronous) */ #define RSTS$WRITE C$CWRI /* Write */ /* Fortran Linkage Definintions: */ #pragma linkage fortran ASNLUN, ATRG, CRAW, CRRG, DTRG, ELAW, EXST #pragma linkage fortran EXTTSK, GETLUN, GETMCR, GETPAR, GETTIM, GETTSK, MAP #pragma linkage fortran QIO, WTQIO, SUSPND, UNMAP, WFSNE, WAITFR /* C Linkage Definitions: */ #pragma linkage c EXIT, SVTK, MVTS #pragma linkage c RSTS$CLRFQB, RSTS$CLRXRB, RSTS$AST, RSTS$ASTX, RSTS$CALFIP #pragma linkage c RSTS$CCL, RSTS$CHAIN, RSTS$CLEAR, RSTS$CMDLN, RSTS$CORE #pragma linkage c RSTS$DATE, RSTS$ERLOG, RSTS$EXIT, RSTS$FSS, RSTS$LOGS #pragma linkage c RSTS$MESAG, RSTS$NAME, RSTS$PEEK, RSTS$PLAS, RSTS$POSTN #pragma linkage c RSTS$READ, RSTS$READA, RSTS$RTS, RSTS$RUN, RSTS$SET #pragma linkage c RSTS$SLEEP, RSTS$SPEC, RSTS$STAT, RSTS$TIME, RSTS$TTAPE #pragma linkage c RSTS$TTDDT, RSTS$TTECH, RSTS$TTNCH, RSTS$TTRST, RSTS$ULOG #pragma linkage c RSTS$UUO, RSTS$WRITA, RSTS$WRITE void ASNLUN (short *__lun, short *__dev, short *__iunt, short *__ids); void ATRG (short *__irdb, short *__ids); void CRAW (short *__iwdb, short *__ids); void CRRG (short *__irdb, short *__ids); void DTRG (short *__irdb, short *__ids); void ELAW (short *__iwdb, short *__ids); void EXIT (short *__err); void EXST (short *__istat); void EXTTSK (short *__inc, short *__ids); void GETLUN (short *__lun, short *__dat, short *__ids); void GETMCR (short *__buf, short *__ids); void GETPAR (short *__prt, short *__buf, short *__ids); void GETTIM (short *__ibfp, short *__ids); void GETTSK (short *__buf, short *__ids); void MAP (short *__iwdb, short *__ids); void MVTS (short *__action, short *__addr, short *__val_buff); void QIO (short *__fnc, short *__lun, short *__efn, short *__pri, short *__isb, short *__prl, short *__ids); void WTQIO (short *__fnc, short *__lun, short *__efn, short *__pri, short *__isb, short *__prl, short *__ids); void SUSPND (short *__ids); void UNMAP (short *__iwdb, short *__idsw); void WFSNE (void); void WAITFR (short *__efn, short *__idsw); void SVTK (short *__addr, short *__len); void $CLFQB (void); /* Clear the FIRQB */ void $CLXRB (void); /* Clear the XRB */ void C$AST (void); void C$CAST (void); void C$CFIP (void); void C$CCL (void); void C$CHAI (void); void C$CLEA (void); void C$CMDL (void); void C$CORE (void); void C$DATE (void); void C$ERLO (void); void C$CEXI (void); void C$CFSS (void); void C$LOGS (void); void C$MESA (void); void C$NAME (void); void C$PEEK (void); void C$PLAS (void); void C$POSTN (void); void C$CREA (void); void C$REAA (void); void C$RTS (void); void C$RUN (void); void C$SET (void); void C$SLEE (void); void C$SPEC (void); void C$STAT (void); void C$STIM (void); void C$TTAP (void); void C$TTDD (void); void C$TTEC (void); void C$TTNC (void); void C$TTRS (void); void C$ULOG (void); void C$CUUO (void); void C$WRTA (void); void C$CWRI (void); #endif