/* Copyright 1989, 1990, 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. fcs.h FCS - File Control Services Definitions */ #ifndef __PDP11C$FCS_H #define __PDP11C$FCS_H #ifndef TRUE #define TRUE 1 #endif #ifndef FALSE #define FALSE 0 #endif /* FCS Bits and offsets: */ #define FCS$CH$AND (000001) #define FCS$F$ACTL (000076) #define FCS$F$ALOC (000040) #define FCS$F$BBFS (000062) #define FCS$F$BDB (000070) #define FCS$F$BGBC (000057) #define FCS$F$BKDN (000026) #define FCS$F$BKDS (000020) #define FCS$F$BKEF (000050) #define FCS$F$BKP1 (000051) #define FCS$F$BKST (000024) #define FCS$F$BKVB (000064) #define FCS$F$CHR (000075) #define FCS$F$CNTG (000034) #define FCS$F$DFNB (000046) #define FCS$F$DSPT (000044) #define FCS$F$DVNM (000134) #define FCS$F$EFBK (000010) #define FCS$F$EFN (000050) #define FCS$F$EOBB (000032) #define FCS$F$ERR (000052) #define FCS$F$EXT (000072) #define FCS$F$FACC (000043) #define FCS$F$FFBY (000014) #define FCS$F$FLG (000074) #define FCS$F$FNAM (000110) #define FCS$F$FNB (000102) #define FCS$F$FTYP (000116) #define FCS$F$FVER (000120) #define FCS$F$HIBK (000004) #define FCS$F$LUN (000042) #define FCS$F$MBC1 (000055) #define FCS$F$MBCT (000054) #define FCS$F$MBFG (000056) #define FCS$F$NRBD (000024) #define FCS$F$NREC (000030) #define FCS$F$OVBS (000030) #define FCS$F$RACC (000016) #define FCS$F$RATT (000001) #define FCS$F$RCNM (000034) #define FCS$F$RCTL (000017) #define FCS$F$RSIZ (000002) #define FCS$F$RTYP (000000) #define FCS$F$SEQN (000100) #define FCS$F$SPDV (000072) #define FCS$F$SPUN (000074) #define FCS$F$STBK (000036) #define FCS$F$UNIT (000136) #define FCS$F$URBD (000020) #define FCS$F$VBN (000064) #define FCS$F$VBSZ (000060) #define FCS$FA$APD (000100) #define FCS$FA$CRE (000010) #define FCS$FA$DLK (001000) #define FCS$FA$ENB (0100000) #define FCS$FA$EXC (002000) #define FCS$FA$EXL (004000) #define FCS$FA$EXT (000004) #define FCS$FA$LKL (002000) #define FCS$FA$NSP (000100) #define FCS$FA$POS (010000) #define FCS$FA$RD (000001) #define FCS$FA$RWD (004000) #define FCS$FA$SEQ (040000) #define FCS$FA$SHR (000040) #define FCS$FA$TMP (000020) #define FCS$FA$WCK (020000) #define FCS$FA$WRT (000002) #define FCS$FD$BLK (000010) #define FCS$FD$CCL (000002) #define FCS$FD$COM (020000) #define FCS$FD$CR (000002) #define FCS$FD$DIR (000010) #define FCS$FD$F11 (040000) #define FCS$FD$FTN (000001) #define FCS$FD$INS (000010) #define FCS$FD$ISP (002000) #define FCS$FD$MNT (0100000) #define FCS$FD$OSP (004000) #define FCS$FD$PLC (000004) #define FCS$FD$PRN (000004) #define FCS$FD$PSE (010000) #define FCS$FD$RAH (000001) #define FCS$FD$RAN (000002) #define FCS$FD$REC (000001) #define FCS$FD$RWM (000001) #define FCS$FD$SDI (000020) #define FCS$FD$SQD (000040) #define FCS$FD$TTY (000004) #define FCS$FD$WBH (000002) #define FCS$FF$CHR (000005) #define FCS$FF$NV (000003) #define FCS$FF$POE (000002) #define FCS$FF$RWD (000001) #define FCS$FF$RWF (000006) #define FCS$FF$SPC (000004) #define FCS$FL$AEX (000001) #define FCS$FO$APD (000106) #define FCS$FO$MFY (000002) #define FCS$FO$RD (000001) #define FCS$FO$UPD (000006) #define FCS$FO$WRT (000016) #define FCS$FT$ANI (000001) #define FCS$FT$BBF (000002) #define FCS$FT$MBF (000004) #define FCS$FX$DIR (000004) #define FCS$FX$DLN (000003) #define FCS$FX$DMX (000002) #define FCS$FX$LEN (000000) #define FCS$N$ANM1 (000002) #define FCS$N$ANM2 (000024) #define FCS$N$DID (000024) #define FCS$N$DVNM (000032) #define FCS$N$FID (000000) #define FCS$N$FNAM (000006) #define FCS$N$FTYP (000014) #define FCS$N$FVER (000016) #define FCS$N$NEXT (000022) #define FCS$N$STAT (000020) #define FCS$N$UNIT (000034) #define FCS$NB$ANS (002000) #define FCS$NB$DEV (000200) #define FCS$NB$DIR (000100) #define FCS$NB$NAM (000004) #define FCS$NB$SD1 (000400) #define FCS$NB$SD2 (001000) #define FCS$NB$SNM (000040) #define FCS$NB$STP (000020) #define FCS$NB$SVR (000010) #define FCS$NB$TYP (000002) #define FCS$NB$VER (000001) #define FCS$NB$WCH (004000) #define FCS$R$FIX (000001) #define FCS$R$SEQ (000003) #define FCS$R$STM (000004) #define FCS$R$VAR (000002) #define FCS$S$ANM1 (000014) #define FCS$S$ANM2 (000005) #define FCS$S$BFHD (000020) #define FCS$S$FATT (000016) #define FCS$S$FDB (000140) #define FCS$S$FNAM (000006) #define FCS$S$FNB (000036) #define FCS$S$FNBW (000017) #define FCS$S$FNTY (000004) #define FCS$S$FTYP (000002) #define FCS$S$NFEN (000020) #define FCS$IE$BAD (-1) /* Bad parameters */ #define FCS$IE$IFC (-2) /* Invalid function code */ #define FCS$IE$DNR (-3) /* Device not ready */ #define FCS$IE$VER (-4) /* Parity error on device */ #define FCS$IE$ONP (-5) /* Hardware option not present */ #define FCS$IE$SPC (-6) /* Illegal user buffer */ #define FCS$IE$DNA (-7) /* Device not attached */ #define FCS$IE$DAA (-8) /* Device already attached */ #define FCS$IE$DUN (-9) /* Device not attachable */ #define FCS$IE$EOF (-10) /* End of file detected */ #define FCS$IE$EOV (-11) /* End of volume detected */ #define FCS$IE$WLK (-12) /* Write attempted to locked unit */ #define FCS$IE$DAO (-13) /* Data overrun */ #define FCS$IE$SRE (-14) /* Send/receive failure */ #define FCS$IE$ABO (-15) /* Request terminated */ #define FCS$IE$PRI (-16) /* Privilege violation */ #define FCS$IE$RSU (-17) /* Sharable resource in use */ #define FCS$IE$OVR (-18) /* Illegal overlay request */ #define FCS$IE$BYT (-19) /* Odd byte count (or virtual address) */ #define FCS$IE$BLK (-20) /* Logical block number too large */ #define FCS$IE$MOD (-21) /* Invalid UDC module # */ #define FCS$IE$CON (-22) /* UDC connect error */ #define FCS$IE$BBE (-56) /* Bad block on device */ #define FCS$IE$STK (-58) /* Not enough stack space (FCS or FCP) */ #define FCS$IE$FHE (-59) /* Fatal hardware error on device */ #define FCS$IE$EOT (-62) /* End of tape detected */ #define FCS$IE$OFL (-65) /* Device off line */ #define FCS$IE$BCC (-66) /* Block check, CRC, or framing error */ #define FCS$IE$NFW (-69) /* Path lost to partner */ #define FCS$IE$DIS (-69) /* Path lost to partner */ #define FCS$IE$PNT (-71) /* Partition/Region not in system */ #define FCS$IE$NDR (-72) /* No dynamic space available SEE ALSO IE.UPN */ #define FCS$IE$TMO (-95) /* Timeout on request see also IS.TMO */ #define FCS$IE$CNR (-96) /* Connection rejected */ #define FCS$IE$MII (-99) /* Media inserted incorrectly */ #define FCS$IE$SPI (-100) /* Spindown ignored */ #define FCS$IE$FER (-101) /* Forced error mark encountered */ #define FCS$IE$CBE (-105) /* Compare buffer error */ #define FCS$IE$NOD (-23) /* Caller's nodes exhausted */ #define FCS$IE$DFU (-24) /* Device full */ #define FCS$IE$IFU (-25) /* Index file full */ #define FCS$IE$NSF (-26) /* No such file */ #define FCS$IE$LCK (-27) /* Locked from read/write access */ #define FCS$IE$HFU (-28) /* File header full */ #define FCS$IE$WAC (-29) /* Accessed for write */ #define FCS$IE$CKS (-30) /* File header checksum failure */ #define FCS$IE$WAT (-31) /* Attribute control list format error */ #define FCS$IE$RER (-32) /* File processor device read error */ #define FCS$IE$WER (-33) /* File processor device write error */ #define FCS$IE$ALN (-34) /* File already accessed on LUN */ #define FCS$IE$SNC (-35) /* File ID, file number check */ #define FCS$IE$SQC (-36) /* File ID, sequence number check */ #define FCS$IE$NLN (-37) /* No file accessed on LUN */ #define FCS$IE$CLO (-38) /* File was not properly closed */ #define FCS$IE$DUP (-57) /* ENTER - duplicate entry in directory */ #define FCS$IE$BVR (-63) /* Bad version number */ #define FCS$IE$BHD (-64) /* Bad file header */ #define FCS$IE$EXP (-75) /* File expiration date not reached */ #define FCS$IE$BTF (-76) /* Bad tape format */ #define FCS$IE$ALC (-84) /* Allocation failure */ #define FCS$IE$ULK (-85) /* Unlock error */ #define FCS$IE$WCK (-86) /* Write check failure */ #define FCS$IE$DSQ (-90) /* Disk quota exceeded */ #define FCS$IE$PIO (-104) /* Deaccess failed due to pending I/O */ #define FCS$IE$NBF (-39) /* OPEN - no buffer space available for file */ #define FCS$IE$RBG (-40) /* Illegal record size */ #define FCS$IE$NBK (-41) /* File exceeds space allocated, no blocks */ #define FCS$IE$ILL (-42) /* Illegal operation on file descriptor block */ #define FCS$IE$BTP (-43) /* Bad record type */ #define FCS$IE$RAC (-44) /* Illegal record access bits set */ #define FCS$IE$RAT (-45) /* Illegal record attributes bits set */ #define FCS$IE$RCN (-46) /* Illegal record number - too large */ #define FCS$IE$2DV (-48) /* Rename - 2 different devices */ #define FCS$IE$FEX (-49) /* Rename - new file name already in use*/ #define FCS$IE$BDR (-50) /* Bad directory file */ #define FCS$IE$RNM (-51) /* Can't rename old file system */ #define FCS$IE$BDI (-52) /* Bad directory syntax */ #define FCS$IE$FOP (-53) /* File already open */ #define FCS$IE$BNM (-54) /* Bad file name */ #define FCS$IE$BDV (-55) /* Bad device name */ #define FCS$IE$NFI (-60) /* File ID was not specified */ #define FCS$IE$ISQ (-61) /* Illegal sequential operation */ #define FCS$IE$NNC (-77) /* Not ANSI 'D' format byte count */ #define FCS$IE$NNN (-68) /* No such node */ #define FCS$IE$BLB (-70) /* Bad logical buffer */ #define FCS$IE$URJ (-73) /* Connection rejected by user */ #define FCS$IE$NRJ (-74) /* Connection rejected by network */ #define FCS$IE$NDA (-78) /* No data available */ #define FCS$IE$IQU (-91) /* Inconsistent qualifier usage */ #define FCS$IE$RES (-92) /* Circuit reset during operation */ #define FCS$IE$TML (-93) /* Too many links to task */ #define FCS$IE$NNT (-94) /* Not a network task */ #define FCS$IE$UKN (-97) /* Unknown name */ #define FCS$IE$IRR (-102) /* Insufficient resources at remote node*/ #define FCS$IE$SIU (-103) /* Service in use */ #define FCS$IE$NLK (-79) /* Task not linked to specified ICS/ICR interrupts */ #define FCS$IE$NST (-80) /* Specified task not installed */ #define FCS$IE$FLN (-81) /* Device offline when offline request was issued */ #define FCS$IE$IES (-82) /* Invalid escape sequence */ #define FCS$IE$PES (-83) /* Partial escape sequence */ #define FCS$IE$ICE (-47) /* Internal consistancy error */ #define FCS$IE$ONL (-67) /* Device online */ #define FCS$IE$SZE (-98) /* Unable to size device */ #define FCS$IE$NTR (-87) /* Task not triggered */ #define FCS$IE$REJ (-88) /* Transfer rejected by receiving CPU */ #define FCS$IE$FLG (-89) /* Event flag already specified */ #define FCS$IS$PND (00) /* OPERATION PENDING */ #define FCS$IS$SUC (01) /* OPERATION COMPLETE, SUCCESS */ #define FCS$IS$RDD (02) /* FLOPPY DISK SUCCESSFUL COMPLETION */ /* OF A READ PHYSICAL, AND DELETED */ /* DATA MARK WAS SEEN IN SECTOR HEADER */ #define FCS$IS$TNC (02) /* (PCL) SUCCESSFUL TRANSFER BUT MESSAGE*/ /* TRUNCATED (RECEIVE BUFFER TOO SMALL).*/ #define FCS$IS$CHW (04) /* IBM COMM) DATA READ WAS RESULT OF */ /* IBM HOST CHAINED WRITE OPERATION */ #define FCS$IS$BV (05) /* (A/D READ) AT LEAST ONE BAD VALUE */ /* WAS READ (REMAINDER MAY BE GOOD). */ /* BAD CHANNEL IS INDICATED BY A */ /* NEGATIVE VALUE IN THE BUFFER. */ #define FCS$IS$DAO (02) /* SUCCESSFUL BUT WITH DATA OVERRUN */ /* (NOT TO BE CONFUSED WITH IE.DAO) */ #define FCS$IS$CR ( 015*0400+01) /* CARRIAGE RETURN WAS TERMINATOR */ #define FCS$IS$ESC ( 033*0400+01) /* ESCAPE (ALTMODE) WAS TERMINATOR */ #define FCS$IS$CC ( 03*0400+01) /* CONTROL-C WAS TERMINATOR */ #define FCS$IS$ESQ (0233*0400+01) /* ESCAPE SEQUENCE WAS TERMINATOR */ #define FCS$IS$PES (0200*0400+01) /* PARTIAL ESCAPE SEQUENCE TERMINATOR */ #define FCS$IS$EOT ( 04*0400+01) /* EOT WAS TERMINATOR (BLOCK MODE INPUT) */ #define FCS$IS$TAB ( 011*0400+01) /* TAB WAS TERMINATOR (FORMS MODE INPUT) */ #define FCS$IS$TMO (2) /* REQUEST TIMED OUT */ #define FCS$IS$OOB (3) /* OUT OF BAND TERMINATOR (TERM IN HIGH BYTE) */ #define FCS$IS$TMM (4) /*READ COMPLETED, MANAGEMENT MODE SEQ RCVD */ #define FCS$IS$RVI (2) /* DATA SUCC. XMITTED; HOST ACKED W/RVI */ #define FCS$IS$CNV (3) /* DATA SUCC. XMITTED; HOST ACKED W/CONVERSATION */ #define FCS$IS$XPT (5) /* DATA SUCC. RECVD IN TRANSPARENT MODE */ #define FCS$IE$UPN (-1) /* Insufficient dynamic storage SEE ALSO IE.NDR */ #define FCS$IE$INS (-2) /* Specified task not installed */ #define FCS$IE$PTS (-3) /* Partition too small for task */ #define FCS$IE$UNS (-4) /* Insufficient dynamic storage for send*/ #define FCS$IE$ULN (-5) /* Un-assigned LUN */ #define FCS$IE$HWR (-6) /* Device handler not resident */ #define FCS$IE$ACT (-7) /* Task not active */ #define FCS$IE$ITS (-8) /* Directive inconsistent with task state*/ #define FCS$IE$FIX (-9) /* Task already fixed/unfixed */ #define FCS$IE$CKP (-10) /* Issuing task not checkpointable */ #define FCS$IE$TCH (-11) /* Task is checkpointable */ #define FCS$IE$RBS (-15) /* Receive buffer is too small */ #define FCS$IE$NSW (-18) /* No swap space available */ #define FCS$IE$ILV (-19) /* Illegal vector specified */ #define FCS$IE$ITN (-20) /* Invalid table number */ #define FCS$IE$LNF (-21) /* Logical name not found */ #define FCS$IE$AST (-80) /* Directive issued/not issued from AST */ #define FCS$IE$MAP (-81) /* Illegal mapping specified */ #define FCS$IE$IOP (-83) /* Window has I/O in progress */ #define FCS$IE$ALG (-84) /* Alignment error */ #define FCS$IE$WOV (-85) /* Address window allocation overflow */ #define FCS$IE$NVR (-86) /* Invalid region ID */ #define FCS$IE$NVW (-87) /* Invalid address window ID */ #define FCS$IE$ITP (-88) /* Invalid TI parameter */ #define FCS$IE$IBS (-89) /* Invalid send buffer size ( .GT. 255) */ #define FCS$IE$LNL (-90) /* LUN locked in use */ #define FCS$IE$IUI (-91) /* Invalid UIC */ #define FCS$IE$IDU (-92) /* Invalid device or unit */ #define FCS$IE$ITI (-93) /* Invalid time parameters */ #define FCS$IE$PNS (-94) /* Partition/region not in system */ #define FCS$IE$IPR (-95) /* Invalid priority ( .GT. 250) */ #define FCS$IE$ILU (-96) /* Invalid LUN */ #define FCS$IE$IEF (-97) /* Invalid event flag ( .GT. 64) */ #define FCS$IE$ADP (-98) /* Part of DPB out of user's space */ #define FCS$IE$SDP (-99) /* DIC or DPB size invalid */ #define FCS$IS$CLR (0) /* EVENT FLAG WAS CLEAR */ /* FROM CLEAR EVENT FLAG DIRECTIVE */ #define FCS$IS$SET (2) /* EVENT FLAG WAS SET */ /* FROM SET EVENT FLAG DIRECTIVE */ #define FCS$IS$SPD (2) /* TASK WAS SUSPENDED */ #define FCS$IS$SUP (3) /* LOGICAL NAME SUPERSEDED */ #define FCS$IS$WAT (4) /* OPERATION INITIATED, WAIT FOR COMPLETION */ /* FROM "VAX-11 RSX" RMS-21 ELEP$ DIRECTIVE */ /* Define filename block data structure */ typedef struct { short fcs$n$fid[3]; short fcs$n$fnam[3]; short fcs$n$ftyp; short fcs$n$fver; short fcs$n$stat; short fcs$n$next; short fcs$n$did[3]; char fcs$n$dvnm[2]; short fcs$n$unit; } fcs$fnb; /* Define ANSI Filename block data structure */ typedef struct { short fcs$n$fid; char fcs$n$anm1[12]; short fcs$n$fver; short fcs$n$stat; short fcs$n$next; char fcs$n$anm2[6]; char fcs$n$dvnm[2]; short fcs$n$unit; } fcs$afnb; /* Define FDB data structure */ typedef struct { unsigned char fcs$f$rtyp; unsigned char fcs$f$ratt; short fcs$f$rsiz; short fcs$f$hibk; short fcs$f$hibk2; short fcs$f$efbk; short fcs$f$efbk2; short fcs$f$ffby; unsigned char fcs$f$racc; unsigned char fcs$f$rctl; short fcs$f$bkds; short fcs$f$bkds2; short fcs$f$bkst; short fcs$f$bkdn; short fcs$f$nrec; short fcs$f$eobb; short fcs$f$cntg; short fcs$f$stbk; short fcs$f$aloc; unsigned char fcs$f$lun; unsigned char fcs$f$facc; short fcs$f$dspt; short fcs$f$dfnb; unsigned char fcs$f$efn; unsigned char fcs$f$bkp1; signed char fcs$f$err; signed char fcs$f$err1; unsigned char fcs$f$mbct; unsigned char fcs$f$mbc1; unsigned char fcs$f$mbfg; unsigned char fcs$f$bgbc; short fcs$f$vbsz; short fcs$f$bbs; short fcs$f$bkvb; short fcs$f$bkvb2; short fcs$f$bdb; short fcs$f$ext; unsigned char fcs$f$flg; unsigned char fcs$f$chr; short fcs$f$actl; short fcs$f$seqn; fcs$fnb fcs$f$fnb; } fcs$fdb; #define fcs$f$urbd fcs$f$bkds #define fcs$f$urbd2 fcs$f$bkds2 #define fcs$f$nrbd fcs$f$bkst #define fcs$f$nrbd2 fcs$f$bkdn #define fcs$f$rcnm fcs$f$cntg #define fcs$f$rcnm2 fcs$f$stbk #define FCS$FDBDF$(class,name) class fcs$fdb name; /* Allocate File Descriptor Block */ #pragma linkage c C$FOPN, C$FOPT, C$FOPI, C$FOPF, C$FOPE, C$FCLO #pragma linkage c C$FGET, C$FPUT, C$FGTR, C$FPTR, C$FGTS, C$FFLU #pragma linkage c C$FPTS, C$FREA, C$FWRI, C$FWAI, C$FDEL, C$FPRI #pragma linkage c C$FRFR, C$FWFR, C$FRUI, C$FWUI, C$FRFP, C$FWFP #pragma linkage c C$FROW, C$FWOW, C$FASC, C$FPPA, C$FPAR, C$FEXP #pragma linkage c C$FPRV, C$FPRD, C$FPRN, C$FLUN, C$FFIN, C$FENT #pragma linkage c C$FREM, C$FGTD, C$FDID, C$FPOI, C$FPOS, C$FMAR #pragma linkage c C$FPOT, C$FQIO, C$FREN, C$FEXT, C$FTRN, C$FMRK #pragma linkage c C$FDLF, C$FCTR #pragma psect static_rw $$FSR1,rw,d,gbl,rel,ovr,nosav #pragma psect static_rw #define FCS$FSRSZ$(fbufs,bufsiz) extern char *_FSRCB;\ static char **FCS$DUMMY = &_FSRCB;\ globaldef {"$$FSR1"} char $CCFSR[fbufs*FCS$S$BFHD+bufsiz]; void _finit(); /* Routine to excersize FSR */ #define FCS$FINIT$ _finit(); /* Declare operation routines, and macros to interface to them */ short C$FOPN (fcs$fdb *, short, short, short *, short, char *, short, void (*)()); #define FCS$OPEN$R(fdb,lun,dspt,racc,urba,urbs,err) C$FOPN (fdb,FCS$FO$RD ,lun,dspt,racc,urba,urbs,err) #define FCS$OPEN$W(fdb,lun,dspt,racc,urba,urbs,err) C$FOPN (fdb,FCS$FO$WRT,lun,dspt,racc,urba,urbs,err) #define FCS$OPEN$M(fdb,lun,dspt,racc,urba,urbs,err) C$FOPN (fdb,FCS$FO$MFY,lun,dspt,racc,urba,urbs,err) #define FCS$OPEN$U(fdb,lun,dspt,racc,urba,urbs,err) C$FOPN (fdb,FCS$FO$UPD,lun,dspt,racc,urba,urbs,err) #define FCS$OPEN$A(fdb,lun,dspt,racc,urba,urbs,err) C$FOPN (fdb,FCS$FO$APD,lun,dspt,racc,urba,urbs,err) #define FCS$OPNS$R(fdb,lun,dspt,racc,urba,urbs,err) C$FOPN (fdb,(FCS$FO$RD | FCS$FA$SHR) ,lun,dspt,racc,urba,urbs,err) #define FCS$OPNS$W(fdb,lun,dspt,racc,urba,urbs,err) C$FOPN (fdb,(FCS$FO$WRT | FCS$FA$SHR),lun,dspt,racc,urba,urbs,err) #define FCS$OPNS$M(fdb,lun,dspt,racc,urba,urbs,err) C$FOPN (fdb,(FCS$FO$MFY | FCS$FA$SHR),lun,dspt,racc,urba,urbs,err) #define FCS$OPNS$U(fdb,lun,dspt,racc,urba,urbs,err) C$FOPN (fdb,(FCS$FO$UPD | FCS$FA$SHR),lun,dspt,racc,urba,urbs,err) #define FCS$OPNS$A(fdb,lun,dspt,racc,urba,urbs,err) C$FOPN (fdb,(FCS$FO$APD | FCS$FA$SHR),lun,dspt,racc,urba,urbs,err) #define FCS$OPNT$W(fdb,lun,dspt,racc,urba,urbs,err) C$FOPN (fdb,(FCS$FO$WRT | FCS$FA$TMP),lun,dspt,racc,urba,urbs,err) short C$FOPT (fcs$fdb *, short, short *, short, char *, short, void (*)()); #define FCS$OPNT$D(fdb,lun,dspt,racc,urba,urbs,err) C$FOPT (fdb,lun,dspt,racc,urba,urbs,err) short C$FOPI (fcs$fdb *, short, short, short *, short, char *, short, void (*)()); #define FCS$OFID$R(fdb,lun,dspt,racc,urba,urbs,err) C$FOPI (fdb,FCS$FO$RD ,lun,dspt,racc,urba,urbs,err) #define FCS$OFID$W(fdb,lun,dspt,racc,urba,urbs,err) C$FOPI (fdb,FCS$FO$WRT,lun,dspt,racc,urba,urbs,err) #define FCS$OFID$M(fdb,lun,dspt,racc,urba,urbs,err) C$FOPI (fdb,FCS$FO$MFY,lun,dspt,racc,urba,urbs,err) #define FCS$OFID$U(fdb,lun,dspt,racc,urba,urbs,err) C$FOPI (fdb,FCS$FO$UPD,lun,dspt,racc,urba,urbs,err) #define FCS$OFID$A(fdb,lun,dspt,racc,urba,urbs,err) C$FOPI (fdb,FCS$FO$APD,lun,dspt,racc,urba,urbs,err) short C$FOPF (fcs$fdb *, short, short, short *, short, char *, short, void (*)()); #define FCS$OFNB$R(fdb,lun,dspt,racc,urba,urbs,err) C$FOPF (fdb,FCS$FO$RD ,lun,dspt,racc,urba,urbs,err) #define FCS$OFNB$W(fdb,lun,dspt,racc,urba,urbs,err) C$FOPF (fdb,FCS$FO$WRT,lun,dspt,racc,urba,urbs,err) #define FCS$OFNB$M(fdb,lun,dspt,racc,urba,urbs,err) C$FOPF (fdb,FCS$FO$MFY,lun,dspt,racc,urba,urbs,err) #define FCS$OFNB$U(fdb,lun,dspt,racc,urba,urbs,err) C$FOPF (fdb,FCS$FO$UPD,lun,dspt,racc,urba,urbs,err) #define FCS$OFNB$A(fdb,lun,dspt,racc,urba,urbs,err) C$FOPF (fdb,FCS$FO$APD,lun,dspt,racc,urba,urbs,err) short C$FOPE (fcs$fdb *, short, short, short *, fcs$fnb *, short, char *, short, void (*)()); #define FCS$OPEN$(fdb,facc,lun,dspt,dfnb,racc,urba,urbs,err) C$FOPE (fdb,facc,lun,dspt,dfnb,racc,urba,urbs,err) short C$FCLO (fcs$fdb *, void (*)()); #define FCS$CLOSE$(fdb,err) C$FCLO (fdb,err) short C$FGET (fcs$fdb *, char *, short, void (*)()); #define FCS$GET$(fdb,urba,urbs,err) C$FGET (fdb,urba,urbs,err) short C$FPUT (fcs$fdb *, char *, short, void (*)()); #define FCS$PUT$(fdb,urba,urbs,err) C$FPUT (fdb,urba,urbs,err) short C$FGTR (fcs$fdb *, char *, short, short, short, void (*)()); #define FCS$GET$R(fdb,urba,urbs,lrcnm,hrcnm,err) C$FGTR (fdb,urba,urbs,lrcnm,hrcnm,err) short C$FPTR (fcs$fdb *, char *, short, short, short, void (*)()); #define FCS$PUT$R(fdb,urba,urbs,lrcnm,hrcnm,err) C$FPTR (fdb,urba,urbs,lrcnm,hrcnm,err) short C$FGTS (fcs$fdb *, char *, short, void (*)()); #define FCS$GET$S(fdb,urba,urbs,err) C$FGTS (fdb,urba,urbs,err) short C$FPTS (fcs$fdb *, char *, short, void (*)()); #define FCS$PUT$S(fdb,urba,urbs,err) C$FPTS (fdb,urba,urbs,err) short C$FREA (fcs$fdb *, char *, short, long *, short, short *, void (*)(), void (*)()); #define FCS$READ$(fdb,bkda,bkds,bkvb,bkef,bkst,bkdn,err) C$FREA (fdb,bkda,bkds,bkvb,bkef,bkst,bkdn,err) short C$FWRI (fcs$fdb *, char *, short, long *, short, short *, void (*)(), void (*)()); #define FCS$WRITE$(fdb,bkda,bkds,bkvb,bkef,bkst,bkdn,err) C$FWRI (fdb,bkda,bkds,bkvb,bkef,bkst,bkdn,err) short C$FWAI (fcs$fdb *, short, short *, void (*)()); #define FCS$WAIT$(fdb,bkef,bkst,err) C$FWAI (fdb,bkef,bkst,err) short C$FDEL (fcs$fdb *, void (*)()); #define FCS$DELET$(fdb,err) C$FDEL (fdb,err) short C$FPRI (fcs$fdb *, void (*)()); #define FCS$PRINT$(fdb,err) C$FPRI (fdb,err) void C$FRFR (short *, char **); #define FCS$RDFDR(r1,r2) C$FRFR (r1,r2) void C$FWFR (short, char *); #define FCS$WDFDR(r1,r2) C$FWFR (r1,r2) void C$FRUI (short *); #define FCS$RDFUI(r1) C$FRUI (r1) void C$FWUI (short); #define FCS$WDFUI(r1) C$FWUI (r1) void C$FRFP (short *); #define FCS$RDFFP(r1) C$FRFP (r1) void C$FWFP (short); #define FCS$WDFFP(r1) C$FWFP (r1) void C$FROW (short *); #define FCS$RFOWN(r1) C$FROW (r1) void C$FWOW (short); #define FCS$WFOWN(r1) C$FWOW (r1) short C$FASC (char *, short *); #define FCS$ASCPP(r1,r2) C$FASC (r1,r2) void C$FPPA (char **, short, short); #define FCS$PPASC(r2,r3,r4) C$FPPA (r2,r3,r4) short C$FPAR (fcs$fdb *, fcs$fnb *, short *, fcs$fnb *); #define FCS$PARSE(r0,r1,r2,r3) C$FPAR (r0,r1,r2,r3) short C$FEXP (int **); #define FCS$EXPLG(r2) C$FEXP (r2) short C$FPRV (fcs$fdb *, fcs$fnb *, short *, fcs$fnb *); #define FCS$PRSDV(r0,r1,r2,r3) C$FPRV (r0,r1,r2,r3) short C$FPRD (fcs$fdb *, fcs$fnb *, short *, fcs$fnb *); #define FCS$PRSDI(r0,r1,r2,r3) C$FPRD (r0,r1,r2,r3) short C$FPRN (fcs$fdb *, fcs$fnb *, short *, fcs$fnb *); #define FCS$PRSFN(r0,r1,r2,r3) C$FPRN (r0,r1,r2,r3) short C$FLUN (fcs$fdb *, fcs$fnb *); #define FCS$ASLUN(r0,r1) C$FLUN (r0,r1) short C$FFIN (fcs$fdb *, fcs$fnb *); #define FCS$FIND(r0,r1) C$FFIN (r0,r1) short C$FENT (fcs$fdb *, fcs$fnb *); #define FCS$ENTER(r0,r1) C$FENT (r0,r1) short C$FREM (fcs$fdb *, fcs$fnb *); #define FCS$REMOV(r0,r1) C$FREM (r0,r1) short C$FGTD (fcs$fdb *, fcs$fnb *, int *); #define FCS$GTDIR(r0,r1,r2) C$FGTD (r0,r1,r2) short C$FDID (fcs$fdb *, fcs$fnb *); #define FCS$GTDID(r0,r1) C$FDID (r0,r1) short C$FPOI (fcs$fdb *, short, short, short); #define FCS$POINT(r0,r1,r2,r3) C$FPOI (r0,r1,r2,r3) short C$FPOS (fcs$fdb *); #define FCS$POSRC(r0) C$FPOS (r0) void C$FMAR (fcs$fdb *, short *, short *, short *); #define FCS$MARK(r0,r1,r2,r3) C$FMAR (r0,r1,r2,r3) short C$FPOT (fcs$fdb *, short *, short *, short *); #define FCS$POSIT(r0,r1,r2,r3) C$FPOT (r0,r1,r2,r3) short C$FQIO (fcs$fdb *, short, short, short *); #define FCS$XQIO(r0,r1,r2,r3) C$FQIO (r0,r1,r2,r3) short C$FREN (fcs$fdb *, fcs$fdb *); #define FCS$RENAM(r0,r1) C$FREN (r0,r1) short C$FEXT (fcs$fdb *, short, short); #define FCS$EXTND(r0,r1,r2) C$FEXT (r0,r1,r2) short C$FTRN (fcs$fdb *); #define FCS$TRNCL(r0) C$FTRN (r0) short C$FMRK (fcs$fdb *); #define FCS$MRKDL(r0) C$FMRK (r0) short C$FDLF (fcs$fdb *); #define FCS$DLFNB(r0) C$FDLF (r0) short C$FCTR (fcs$fdb *, short, short,short); #define FCS$CTRL(r0,r1,r2,r3) C$FCTR (r0,r1,r2,r3) short C$FFLU (fcs$fdb *); #define FCS$FLUSH(r0) C$FFLU (r0) #endif