! *** PREDECLARED TYPES %IF %DECLARED ( %BASIC$QUADWORD_DECLARED ) = 0 %THEN RECORD BASIC$QUADWORD LONG FILL ( 2 ) END RECORD %LET %BASIC$QUADWORD_DECLARED = 1 %END %IF %IF %DECLARED ( %BASIC$OCTAWORD_DECLARED ) = 0 %THEN RECORD BASIC$OCTAWORD LONG FILL ( 4 ) END RECORD %LET %BASIC$OCTAWORD_DECLARED = 1 %END %IF %IF %DECLARED ( %BASIC$HFLOAT_AXP_DECLARED ) = 0 %THEN RECORD BASIC$HFLOAT_AXP LONG FILL ( 4 ) END RECORD %LET %BASIC$HFLOAT_AXP_DECLARED = 1 %END %IF %IF %DECLARED ( %BASIC$F_FLOATING_COMPLEX_DECL ) = 0 %THEN RECORD BASIC$F_FLOATING_COMPLEX SINGLE REAL_PART SINGLE IMAGINARY_PART END RECORD %LET %BASIC$F_FLOATING_COMPLEX_DECL = 1 %END %IF %IF %DECLARED ( %BASIC$D_FLOATING_COMPLEX_DECL ) = 0 %THEN RECORD BASIC$D_FLOATING_COMPLEX DOUBLE REAL_PART DOUBLE IMAGINARY_PART END RECORD %LET %BASIC$D_FLOATING_COMPLEX_DECL = 1 %END %IF %IF %DECLARED ( %BASIC$G_FLOATING_COMPLEX_DECL ) = 0 %THEN RECORD BASIC$G_FLOATING_COMPLEX GFLOAT REAL_PART GFLOAT IMAGINARY_PART END RECORD %LET %BASIC$G_FLOATING_COMPLEX_DECL = 1 %END %IF %IF %DECLARED ( %BASIC$H_FLOAT_AXP_CMPLX_DCL ) = 0 %THEN RECORD BASIC$H_FLOATING_COMPLEX_AXP BASIC$HFLOAT_AXP REAL_PART BASIC$HFLOAT_AXP IMAGINARY_PART END RECORD %LET %BASIC$H_FLOAT_AXP_CMPLX_DCL = 1 %END %IF ! + ! I/O FUNCTION CODE DEFINITIONS ! - ! ! *** START PHYSICAL I/O FUNCTION CODES *** ! DECLARE LONG CONSTANT IO$_NOP = 0 ! NO OPERATION DECLARE LONG CONSTANT IO$_UNLOAD = 1 ! UNLOAD DRIVE DECLARE LONG CONSTANT IO$_LOADMCODE = 1 ! LOAD MICROCODE DECLARE LONG CONSTANT IO$_START_BUS = 1 ! START LAVC BUS DECLARE LONG CONSTANT IO$_SEEK = 2 ! SEEK CYLINDER DECLARE LONG CONSTANT IO$_SPACEFILE = 2 ! SPACE FILES DECLARE LONG CONSTANT IO$_STARTMPROC = 2 ! START MICROPROCESSOR DECLARE LONG CONSTANT IO$_STOP_BUS = 2 ! STOP LAVC BUS DECLARE LONG CONSTANT IO$_RECAL = 3 ! RECALIBRATE DRIVE DECLARE LONG CONSTANT IO$_DUPLEX = 3 ! ENTER DUPLEX MODE DECLARE LONG CONSTANT IO$_STOP = 3 ! STOP DECLARE LONG CONSTANT IO$_DEF_COMP = 3 ! DEFINE NETWORK COMPONENT DECLARE LONG CONSTANT IO$_DRVCLR = 4 ! DRIVE CLEAR DECLARE LONG CONSTANT IO$_INITIALIZE = 4 ! INITIALIZE DECLARE LONG CONSTANT IO$_MIMIC = 4 ! ENTER MIMIC MODE DECLARE LONG CONSTANT IO$_DEF_COMP_LIST = 4 ! DEFINE NETWORK COMPONENT LIST DECLARE LONG CONSTANT IO$_FLUSH_ERROR = 4 ! FLUSH SCSI ERRORS DECLARE LONG CONSTANT IO$_RELEASE = 5 ! RELEASE PORT DECLARE LONG CONSTANT IO$_SETCLOCKP = 5 ! SET CLOCK (PHYSICAL) DECLARE LONG CONSTANT IO$_START_ANALYSIS = 5 ! START LAVC FAILURE ANALYSIS DECLARE LONG CONSTANT IO$_BIND = 5 ! BIND UNITS INTO A STORAGE POOL DECLARE LONG CONSTANT IO$_PATH_VERIFY = 5 ! VERIFY PATH TO DEVICE DECLARE LONG CONSTANT IO$_OFFSET = 6 ! OFFSET READ HEADS DECLARE LONG CONSTANT IO$_ERASETAPE = 6 ! ERASE TAPE DECLARE LONG CONSTANT IO$_STARTDATAP = 6 ! START DATA TRANSFER (PHYSICAL) DECLARE LONG CONSTANT IO$_STOP_ANALYSIS = 6 ! STOP LAVC FAILURE ANALYSIS DECLARE LONG CONSTANT IO$_UNBIND = 6 ! REMOVE UNITS FROM A STORAGE POOL DECLARE LONG CONSTANT IO$_RETCENTER = 7 ! RETURN TO CENTERLINE DECLARE LONG CONSTANT IO$_QSTOP = 7 ! QUEUE STOP REQUEST DECLARE LONG CONSTANT IO$_START_MONITOR = 7 ! START LAVC CHANNEL MONITOR. DECLARE LONG CONSTANT IO$_CREDISK = 7 ! CREATE A DISK IN A STORAGE POOL DECLARE LONG CONSTANT IO$_LOCAL_DRAIN = 7 ! DRAIN LOCAL IO DECLARE LONG CONSTANT IO$_PACKACK = 8 ! PACK ACKNOWLEDGE DECLARE LONG CONSTANT IO$_STOP_MONITOR = 8 ! STOP LAVC CHANNEL MONITOR. DECLARE LONG CONSTANT IO$_SEARCH = 9 ! SEARCH FOR SECTOR DECLARE LONG CONSTANT IO$_SPACERECORD = 9 ! SPACE RECORDS DECLARE LONG CONSTANT IO$_READRCT = 9 ! READ REPLACEMENT ? CACHING TABLE DECLARE LONG CONSTANT IO$_REMDISK = 9 ! REMOVE A DISK FROM A STORAGE POOL DECLARE LONG CONSTANT IO$_WRITECHECK = 10 ! WRITE CHECK DATA DECLARE LONG CONSTANT IO$_EXPORT = 10 ! EXPORT A DISK FROM A STORAGE POOL DECLARE LONG CONSTANT IO$_WRITEPBLK = 11 ! WRITE PHYSICAL BLOCK DECLARE LONG CONSTANT IO$_READPBLK = 12 ! READ PHYSICAL BLOCK DECLARE LONG CONSTANT IO$_WRITEHEAD = 13 ! WRITE HEADER AND DATA DECLARE LONG CONSTANT IO$_RDSTATS = 13 ! READ STATISTICS DECLARE LONG CONSTANT IO$_CRESHAD = 13 ! CREATE A SHADOW SET DECLARE LONG CONSTANT IO$_READHEAD = 14 ! READ HEADER AND DATA DECLARE LONG CONSTANT IO$_ADDSHAD = 14 ! ADD MEMBER TO SHADOW SET DECLARE LONG CONSTANT IO$_WRITETRACKD = 15 ! WRITE TRACK DATA DECLARE LONG CONSTANT IO$_COPYSHAD = 15 ! PERFORM SHADOW SET COPY OPERATIONS DECLARE LONG CONSTANT IO$_READTRACKD = 16 ! READ TRACK DATA DECLARE LONG CONSTANT IO$_REMSHAD = 16 ! REMOVE MEMBER FROM SHADOW SET DECLARE LONG CONSTANT IO$_AVAILABLE = 17 ! AVAILABLE (DISK AND TAPE CLASS) DECLARE LONG CONSTANT IO$_SETPRFPATH = 18 ! SET PREFERRED PATH DECLARE LONG CONSTANT IO$_DISPLAY = 19 ! DISPLAY VOLUME LABEL DECLARE LONG CONSTANT IO$_REMSHADMBR = 20 ! REMOVE MEMBER FROM SHADOW SET DECLARE LONG CONSTANT IO$_DSE = 21 ! DATA SECURITY ERASE (AND REWIND) DECLARE LONG CONSTANT IO$_REREADN = 22 ! REREAD NEXT DECLARE LONG CONSTANT IO$_DISK_COPY_DATA = 22 ! DISK_COPY_DATA DECLARE LONG CONSTANT IO$_MOUNTSHAD = 23 ! CREATE A SHADOW SET DECLARE LONG CONSTANT IO$_REREADP = 23 ! REREAD PREVIOUS DECLARE LONG CONSTANT IO$_WHM = 23 ! WRITE HISTORY MANAGEMENT DECLARE LONG CONSTANT IO$_AS_SETCHAR = 23 ! ASIAN SET CHARACTERISTICS DECLARE LONG CONSTANT IO$_WRITERET = 24 ! WRITE RETRY DECLARE LONG CONSTANT IO$_WRITECHECKH = 24 ! WRITE CHECK HEADER AND DATA DECLARE LONG CONSTANT IO$_AS_SENSECHAR = 24 ! ASIAN SENSE CHARACTERISTICS DECLARE LONG CONSTANT IO$_ADDSHADMBR = 25 ! ADD MEMBER TO SHADOW SET DECLARE LONG CONSTANT IO$_READPRESET = 25 ! READIN PRESET DECLARE LONG CONSTANT IO$_STARTSPNDL = 25 ! START SPINDLE DECLARE LONG CONSTANT IO$_SETCHAR = 26 ! SET CHARACTERISTICS DECLARE LONG CONSTANT IO$_SENSECHAR = 27 ! SENSE TAPE CHARACTERISTICS DECLARE LONG CONSTANT IO$_WRITEMARK = 28 ! WRITE TAPE MARK DECLARE LONG CONSTANT IO$_COPYMEM = 28 ! COPY MEMORY DECLARE LONG CONSTANT IO$_PSXSETCHAR = 28 ! POSIX SET CHARACTERISTICS DECLARE LONG CONSTANT IO$_WRTTMKR = 29 ! WRITE TAPE MARK RETRY DECLARE LONG CONSTANT IO$_DIAGNOSE = 29 ! DIAGNOSE DECLARE LONG CONSTANT IO$_SHADMV = 29 ! PREFORM MOUNT VER. ON SHADOW SET DECLARE LONG CONSTANT IO$_PSXSENSECHAR = 29 ! POSIX SENSE CHARACTERISTICS DECLARE LONG CONSTANT IO$_FORMAT = 30 ! FORMAT DECLARE LONG CONSTANT IO$_CLEAN = 30 ! CLEAN TAPE DECLARE LONG CONSTANT IO$_UPSHAD = 30 ! UPDATE SHADOW SYSDEVICE DECLARE LONG CONSTANT IO$_PHYSICAL = 31 ! HIGHEST PHYSICAL I/O FUNCTION CODE ! ! *** START LOGICAL I/O FUNCTION CODES *** ! DECLARE LONG CONSTANT IO$_WRITELBLK = 32 ! WRITE LOGICAL BLOCK DECLARE LONG CONSTANT IO$_READLBLK = 33 ! READ LOGICAL BLOCK DECLARE LONG CONSTANT IO$_REWINDOFF = 34 ! REWIND AND SET OFFLINE DECLARE LONG CONSTANT IO$_READRCTL = 34 ! READ RCT SECTOR ZERO DECLARE LONG CONSTANT IO$_SETMODE = 35 ! SET MODE DECLARE LONG CONSTANT IO$_REWIND = 36 ! REWIND TAPE DECLARE LONG CONSTANT IO$_SKIPFILE = 37 ! SKIP FILES DECLARE LONG CONSTANT IO$_PSXSETMODE = 37 ! POSIX SET MODE DECLARE LONG CONSTANT IO$_SKIPRECORD = 38 ! SKIP RECORDS DECLARE LONG CONSTANT IO$_PSXSENSEMODE = 38 ! POSIX SENSE MODE DECLARE LONG CONSTANT IO$_SENSEMODE = 39 ! SENSE TAPE MODE DECLARE LONG CONSTANT IO$_WRITEOF = 40 ! WRITE END OF FILE DECLARE LONG CONSTANT IO$_TTY_PORT_BUFIO = 40 ! BUFFERED I/O TERMINAL PORT FDT ROUTINE DECLARE LONG CONSTANT IO$_TTY_PORT = 41 ! TERMINAL PORT FDT ROUTINE DECLARE LONG CONSTANT IO$_FREECAP = 41 ! RETURN FREE CAPACITY DECLARE LONG CONSTANT IO$_FLUSH = 42 ! FLUSH CONTROLLER CACHE DECLARE LONG CONSTANT IO$_AS_SETMODE = 42 ! ASIAN SET MODE DECLARE LONG CONSTANT IO$_READLCHUNK = 43 ! READ LARGE LOGICAL BLOCK DECLARE LONG CONSTANT IO$_AS_SENSEMODE = 43 ! ASIAN SENSE MODE DECLARE LONG CONSTANT IO$_WRITELCHUNK = 44 ! WRITE LARGE LOGICAL BLOCK DECLARE LONG CONSTANT IO$_LOGICAL = 47 ! HIGHEST LOGICAL I/O FUNCTION CODE ! ! *** START VIRTUAL I/O FUNCTION CODES ! ! NOTE: ! Virtual IO operations to a non-file oriented device require that the process ! has READ access priviledges for that device. Specificly, EXE$QIO calls ! EXE$CHECK_DEVICE_ACCESS for the following virtual IO function codes to ! verify that the the process has read access rights: ! READPBLK,READLBLK,READVBLK, READHEAD,READTRACKD,REREADN,REREADP, ! READPROMPT,TTYREADALL,TTYREADPALL DECLARE LONG CONSTANT IO$_WRITEVBLK = 48 ! WRITE VIRTUAL BLOCK DECLARE LONG CONSTANT IO$_READVBLK = 49 ! READ VIRTUAL BLOCK DECLARE LONG CONSTANT IO$_ACCESS = 50 ! ACCESS FILE DECLARE LONG CONSTANT IO$_PSXWRITEVBLK = 50 ! POSIX WRITE VIRTUAL DECLARE LONG CONSTANT IO$_CREATE = 51 ! CREATE FILE DECLARE LONG CONSTANT IO$_DEACCESS = 52 ! DEACCESS FILE DECLARE LONG CONSTANT IO$_PSXREADVBLK = 52 ! POSIX READ VIRTUAL DECLARE LONG CONSTANT IO$_DELETE = 53 ! DELETE FILE DECLARE LONG CONSTANT IO$_MODIFY = 54 ! MODIFY FILE DECLARE LONG CONSTANT IO$_NETCONTROL = 54 ! X25 NETWORK CONTROL FUNCTION DECLARE LONG CONSTANT IO$_READPROMPT = 55 ! READ TERMINAL WITH PROMPT DECLARE LONG CONSTANT IO$_SETCLOCK = 55 ! SET CLOCK DECLARE LONG CONSTANT IO$_AUDIO = 55 ! CD-ROM AUDIO DECLARE LONG CONSTANT IO$_ACPCONTROL = 56 ! MISCELLANEOUS ACP CONTROL DECLARE LONG CONSTANT IO$_STARTDATA = 56 ! START DATA DECLARE LONG CONSTANT IO$_IOCTLV = 56 ! GENERIC UNIX IOCTL FUNCTIONS DECLARE LONG CONSTANT IO$_MANAGE = 56 ! MANAGE DEVICE DECLARE LONG CONSTANT IO$_MOUNT = 57 ! MOUNT VOLUME DECLARE LONG CONSTANT IO$_TTYREADALL = 58 ! TERMINAL READ PASSALL DECLARE LONG CONSTANT IO$_DISMOUNT = 58 ! F64 dismount DECLARE LONG CONSTANT IO$_TTYREADPALL = 59 ! TERM READ W/PROMPT PASSALL DECLARE LONG CONSTANT IO$_USBATTR = 59 ! USB device attributes DECLARE LONG CONSTANT IO$_CONINTREAD = 60 ! Connect to interrupt readonly DECLARE LONG CONSTANT IO$_CONINTWRITE = 61 ! Connect to interrupt with write DECLARE LONG CONSTANT IO$_READDIR = 62 ! READ DIRECTORY CONTENTS DECLARE LONG CONSTANT IO$_VIRTUAL = 63 ! HIGHEST VIRTUAL I/O FUNCTION ! ! FUNCTION MODIFIER BIT DEFINITIONS ! DECLARE LONG CONSTANT IO$M_FCODE = x'0000003F' DECLARE LONG CONSTANT IO$M_FMODIFIERS = x'0000FFC0' DECLARE LONG CONSTANT IO$M_INHERLOG = x'00000800' DECLARE LONG CONSTANT IO$M_ERASE = x'00000400' DECLARE LONG CONSTANT IO$M_EXFUNC = x'00002000' DECLARE LONG CONSTANT IO$M_DATACHECK = x'00004000' DECLARE LONG CONSTANT IO$M_INHRETRY = x'00008000' DECLARE LONG CONSTANT IO$M_SYNCSTS = x'00010000' DECLARE LONG CONSTANT IO$M_NOVCACHE = x'00020000' DECLARE LONG CONSTANT IO$M_BUFOBJ = x'00040000' DECLARE LONG CONSTANT IO$M_TRUSTED = x'00080000' DECLARE LONG CONSTANT IO$M_FILE_FLUSH = x'00100000' DECLARE LONG CONSTANT IO$M_BARRIER = x'00200000' DECLARE LONG CONSTANT IO$M_RAH_HINT = x'00400000' DECLARE LONG CONSTANT IO$M_INHSEEK = x'00001000' DECLARE LONG CONSTANT IO$M_READ_TO_EOF = x'00200000' DECLARE LONG CONSTANT IO$M_REVERSE = x'00000040' DECLARE LONG CONSTANT IO$M_NOWAIT = x'00000080' DECLARE LONG CONSTANT IO$M_INHEXTGAP = x'00001000' DECLARE LONG CONSTANT IO$M_RETENSION = x'00002000' DECLARE LONG CONSTANT IO$M_ALLOWFAST = x'00004000' DECLARE LONG CONSTANT IO$M_MT3_DENSITY = x'00008000' DECLARE LONG CONSTANT IO$M_MSCPMODIFS = x'00000100' DECLARE LONG CONSTANT IO$M_SHADOW = x'00000040' DECLARE LONG CONSTANT IO$M_LOCATE = x'00000080' DECLARE LONG CONSTANT IO$M_MSCP_FORMAT = x'00000040' DECLARE LONG CONSTANT IO$M_ALLHOSTS = x'00000040' DECLARE LONG CONSTANT IO$M_DISSOLVE = x'00000080' DECLARE LONG CONSTANT IO$M_NOCLEANUP = x'00000100' DECLARE LONG CONSTANT IO$M_SPINDOWN = x'00000040' DECLARE LONG CONSTANT IO$M_EST_COM_PATH = x'00000040' DECLARE LONG CONSTANT IO$M_LCL_SRC_UNIT = x'00000080' DECLARE LONG CONSTANT IO$M_RTN_COM_PATH = x'00000100' DECLARE LONG CONSTANT IO$M_DEALC_ALL = x'00000040' DECLARE LONG CONSTANT IO$M_DEALC_HRN = x'00000080' DECLARE LONG CONSTANT IO$M_DEALC_ENTLOC = x'00000100' DECLARE LONG CONSTANT IO$M_DECR_AFC = x'00000200' DECLARE LONG CONSTANT IO$M_READ_ALL = x'00000400' DECLARE LONG CONSTANT IO$M_READ_HRN = x'00000800' DECLARE LONG CONSTANT IO$M_BREAK_CONN = x'00001000' DECLARE LONG CONSTANT IO$M_STEPOVER = x'00000040' DECLARE LONG CONSTANT IO$M_COPYOP = x'00000100' DECLARE LONG CONSTANT IO$M_EXISTS = x'00000040' DECLARE LONG CONSTANT IO$M_CBS = x'00000080' DECLARE LONG CONSTANT IO$M_BOOTING = x'00000100' DECLARE LONG CONSTANT IO$M_REQ_MINICOPY = x'00000200' DECLARE LONG CONSTANT IO$M_OPT_MINICOPY = x'00000400' DECLARE LONG CONSTANT IO$M_NOMINICOPY = x'00000800' DECLARE LONG CONSTANT IO$M_EXPECT_MOUNT_DONE = x'00002000' DECLARE LONG CONSTANT IO$M_VUEX_FC = x'00000200' DECLARE LONG CONSTANT IO$M_WRITE_SCB = x'00000200' DECLARE LONG CONSTANT IO$M_UPD_SCBLBN = x'00002000' DECLARE LONG CONSTANT IO$M_FORCEPATH = x'00000040' DECLARE LONG CONSTANT IO$M_PREFERRED_CPU = x'00000080' DECLARE LONG CONSTANT IO$M_SYS_ASSIGNABLE = x'00000100' DECLARE LONG CONSTANT IO$M_COMMOD = x'00000040' DECLARE LONG CONSTANT IO$M_MOVETRACKD = x'00000080' DECLARE LONG CONSTANT IO$M_DIAGNOSTIC = x'00000100' DECLARE LONG CONSTANT IO$M_SKPSECINH = x'00000200' DECLARE LONG CONSTANT IO$M_DELDATA = x'00000040' DECLARE LONG CONSTANT IO$M_NOMRSP = x'00000040' DECLARE LONG CONSTANT IO$M_SWAP = x'00000100' DECLARE LONG CONSTANT IO$M_OPPOSITE = x'00000200' DECLARE LONG CONSTANT IO$M_CLSEREXCP = x'00000200' DECLARE LONG CONSTANT IO$M_CHUNKDIAG = x'00000040' DECLARE LONG CONSTANT IO$M_TBC = x'00000400' DECLARE LONG CONSTANT IO$M_ENAREP = x'00000040' DECLARE LONG CONSTANT IO$M_ACCESS = x'00000040' DECLARE LONG CONSTANT IO$M_CREATE = x'00000080' DECLARE LONG CONSTANT IO$M_DELETE = x'00000100' DECLARE LONG CONSTANT IO$M_MOUNT = x'00000200' DECLARE LONG CONSTANT IO$M_DMOUNT = x'00000400' DECLARE LONG CONSTANT IO$M_REMOUNT = x'00000800' DECLARE LONG CONSTANT IO$M_MOVEFILE = x'00001000' DECLARE LONG CONSTANT IO$M_RWSHELVED = x'00004000' DECLARE LONG CONSTANT IO$M_SETDIR = x'00008000' DECLARE LONG CONSTANT IO$M_BINARY = x'00000040' DECLARE LONG CONSTANT IO$M_PACKED = x'00000080' DECLARE LONG CONSTANT IO$M_NOW = x'00000040' DECLARE LONG CONSTANT IO$M_STREAM = x'00000080' DECLARE LONG CONSTANT IO$M_READERCHECK = x'00000100' DECLARE LONG CONSTANT IO$M_WRITERCHECK = x'00000200' DECLARE LONG CONSTANT IO$M_NORSWAIT = x'00000400' DECLARE LONG CONSTANT IO$M_MB_ROOM_NOTIFY = x'00000040' DECLARE LONG CONSTANT IO$M_READATTN = x'00000080' DECLARE LONG CONSTANT IO$M_WRTATTN = x'00000100' DECLARE LONG CONSTANT IO$M_SETPROT = x'00000200' DECLARE LONG CONSTANT IO$M_READERWAIT = x'00000400' DECLARE LONG CONSTANT IO$M_WRITERWAIT = x'00000800' DECLARE LONG CONSTANT IO$M_NOECHO = x'00000040' DECLARE LONG CONSTANT IO$M_TIMED = x'00000080' DECLARE LONG CONSTANT IO$M_CVTLOW = x'00000100' DECLARE LONG CONSTANT IO$M_NOFILTR = x'00000200' DECLARE LONG CONSTANT IO$M_DSABLMBX = x'00000400' DECLARE LONG CONSTANT IO$M_PURGE = x'00000800' DECLARE LONG CONSTANT IO$M_TRMNOECHO = x'00001000' DECLARE LONG CONSTANT IO$M_REFRESH = x'00002000' DECLARE LONG CONSTANT IO$M_ESCAPE = x'00004000' DECLARE LONG CONSTANT IO$M_EXTEND = x'00008000' DECLARE LONG CONSTANT IO$M_CANCTRLO = x'00000040' DECLARE LONG CONSTANT IO$M_ENABLMBX = x'00000080' DECLARE LONG CONSTANT IO$M_NOFORMAT = x'00000100' DECLARE LONG CONSTANT IO$M_BREAKTHRU = x'00000200' DECLARE LONG CONSTANT IO$M_NEWLINE = x'00000400' DECLARE LONG CONSTANT IO$M_TYPEAHDCNT = x'00000040' DECLARE LONG CONSTANT IO$M_MAINT = x'00000040' DECLARE LONG CONSTANT IO$M_CTRLYAST = x'00000080' DECLARE LONG CONSTANT IO$M_CTRLCAST = x'00000100' DECLARE LONG CONSTANT IO$M_HANGUP = x'00000200' DECLARE LONG CONSTANT IO$M_OUTBAND = x'00000400' DECLARE LONG CONSTANT IO$M_TT_CONNECT = x'00000800' DECLARE LONG CONSTANT IO$M_TT_DISCON = x'00001000' DECLARE LONG CONSTANT IO$M_TT_PROCESS = x'00002000' DECLARE LONG CONSTANT IO$M_BRDCST = x'00004000' DECLARE LONG CONSTANT IO$M_LOOP = x'00000080' DECLARE LONG CONSTANT IO$M_UNLOOP = x'00000100' DECLARE LONG CONSTANT IO$M_LINE_OFF = x'00000200' DECLARE LONG CONSTANT IO$M_SET_MODEM = x'00000400' DECLARE LONG CONSTANT IO$M_LINE_ON = x'00000800' DECLARE LONG CONSTANT IO$M_LOOP_EXT = x'00001000' DECLARE LONG CONSTANT IO$M_AUTXOF_ENA = x'00002000' DECLARE LONG CONSTANT IO$M_AUTXOF_DIS = x'00004000' DECLARE LONG CONSTANT IO$M_INCLUDE = x'00000800' DECLARE LONG CONSTANT IO$M_TT_ABORT = x'00001000' DECLARE LONG CONSTANT IO$M_POSIXINIT = x'00000040' DECLARE LONG CONSTANT IO$M_POSIXFLOW = x'00000080' DECLARE LONG CONSTANT IO$M_SET_POSIX = x'00000080' DECLARE LONG CONSTANT IO$M_CLEAR_POSIX = x'00000100' DECLARE LONG CONSTANT IO$M_SET_TERMIOS = x'00000200' DECLARE LONG CONSTANT IO$M_SET_PTC = x'00000400' DECLARE LONG CONSTANT IO$M_CLEAR_PTC = x'00000800' DECLARE LONG CONSTANT IO$M_FLUSH_TAB = x'00001000' DECLARE LONG CONSTANT IO$M_FLUSH_OUTPUT = x'00002000' DECLARE LONG CONSTANT IO$M_UPDATE_PTC = x'00004000' DECLARE LONG CONSTANT IO$M_OUT_XOFF = x'00000100' DECLARE LONG CONSTANT IO$M_OUT_XON = x'00000200' DECLARE LONG CONSTANT IO$M_IN_XOFF = x'00000400' DECLARE LONG CONSTANT IO$M_IN_XON = x'00000800' DECLARE LONG CONSTANT IO$M_O_NONBLOCK = x'00000040' DECLARE LONG CONSTANT IO$M_INTERRUPT = x'00000040' DECLARE LONG CONSTANT IO$M_MULTIPLE = x'00000080' DECLARE LONG CONSTANT IO$M_LOCKBUF = x'00000100' DECLARE LONG CONSTANT IO$M_NOBLOCK = x'00000200' DECLARE LONG CONSTANT IO$M_ABORT = x'00000100' DECLARE LONG CONSTANT IO$M_SYNCH = x'00000200' DECLARE LONG CONSTANT IO$M_RESPONSE = x'00000040' DECLARE LONG CONSTANT IO$M_STARTUP = x'00000040' DECLARE LONG CONSTANT IO$M_SHUTDOWN = x'00000080' DECLARE LONG CONSTANT IO$M_ATTNAST = x'00000100' DECLARE LONG CONSTANT IO$M_CTRL = x'00000200' DECLARE LONG CONSTANT IO$M_SET_MAC = x'00000800' DECLARE LONG CONSTANT IO$M_UPDATE_MAP = x'00001000' DECLARE LONG CONSTANT IO$M_ROUTE = x'00002000' DECLARE LONG CONSTANT IO$M_RD_MEM = x'00000040' DECLARE LONG CONSTANT IO$M_RD_MODEM = x'00000080' DECLARE LONG CONSTANT IO$M_RD_COUNT = x'00000100' DECLARE LONG CONSTANT IO$M_CLR_COUNT = x'00000400' DECLARE LONG CONSTANT IO$M_SENSE_MAC = x'00000800' DECLARE LONG CONSTANT IO$M_SHOW_MAP = x'00001000' DECLARE LONG CONSTANT IO$M_SHOW_ROUTE = x'00002000' DECLARE LONG CONSTANT IO$K_SRRUNOUT = 0 ! Send or rcv until cnt runout DECLARE LONG CONSTANT IO$K_PTPBSC = 8192 ! Point to point BSC control DECLARE LONG CONSTANT IO$K_LOOPTEST = 57344 ! Loop test ! X25 driver WRITEBLK function modifier bits. DECLARE LONG CONSTANT IO$M_MORE = x'00000040' DECLARE LONG CONSTANT IO$M_QUALIFIED = x'00000080' DECLARE LONG CONSTANT IO$M_REDIRECT = x'00000040' DECLARE LONG CONSTANT IO$M_ACCEPT = x'00000080' DECLARE LONG CONSTANT IO$M_SETEVF = x'00000040' DECLARE LONG CONSTANT IO$M_WORD = x'00000040' DECLARE LONG CONSTANT IO$M_SETFNCT = x'00000200' DECLARE LONG CONSTANT IO$M_DATAPATH = x'00000400' DECLARE LONG CONSTANT IO$M_CYCLE = x'00001000' DECLARE LONG CONSTANT IO$M_RESET = x'00002000' DECLARE LONG CONSTANT IO$M_SETCUADR = x'00000100' DECLARE LONG CONSTANT IO$M_SETBSIZE = x'00000200' DECLARE LONG CONSTANT IO$M_SETPOOLSZ = x'00000400' DECLARE LONG CONSTANT IO$M_SETENQCNT = x'00000800' DECLARE LONG CONSTANT IO$M_CLEAR = x'00001000' DECLARE LONG CONSTANT IO$M_LPBEXT = x'00002000' DECLARE LONG CONSTANT IO$M_LPBINT = x'00004000' DECLARE LONG CONSTANT IO$M_READCSR = x'00008000' DECLARE LONG CONSTANT IO$M_NOCTSWAIT = x'00000040' DECLARE LONG CONSTANT IO$M_SLAVLOOP = x'00000080' DECLARE LONG CONSTANT IO$M_NODSRWAIT = x'00000100' DECLARE LONG CONSTANT IO$M_MAINTLOOP = x'00000200' DECLARE LONG CONSTANT IO$M_LASTBLOCK = x'00000400' DECLARE LONG CONSTANT IO$M_INTCLOCK = x'00001000' DECLARE LONG CONSTANT IO$M_LT_CONNECT = x'00000040' DECLARE LONG CONSTANT IO$M_LT_DISCON = x'00000080' DECLARE LONG CONSTANT IO$M_LT_READPORT = x'00000100' DECLARE LONG CONSTANT IO$M_LT_MAP_PORT = x'00000200' DECLARE LONG CONSTANT IO$M_LT_RATING = x'00000400' DECLARE LONG CONSTANT IO$M_LT_SOL_INFO = x'00000800' DECLARE LONG CONSTANT IO$M_LT_RCV_INFO = x'00001000' DECLARE LONG CONSTANT IO$M_LT_SETMODE = x'00002000' DECLARE LONG CONSTANT IO$M_LT_SENSEMODE = x'00004000' DECLARE LONG CONSTANT IO$M_LT_QUE_CHG_NOTIF = x'00008000' DECLARE LONG CONSTANT IO$M_LT_MAP_FILLER = x'00000001' DECLARE LONG CONSTANT IO$M_LT_MAP_NODNAM = x'00000002' DECLARE LONG CONSTANT IO$M_LT_MAP_PORNAM = x'00000004' DECLARE LONG CONSTANT IO$M_LT_MAP_SRVNAM = x'00000008' DECLARE LONG CONSTANT IO$M_LT_MAP_LNKNAM = x'00000010' DECLARE LONG CONSTANT IO$M_LT_MAP_NETADR = x'00000020' DECLARE LONG CONSTANT IO$M_FLUSH = x'00000040' DECLARE LONG CONSTANT IO$M_WRITE_BARRIER = x'00000080' DECLARE LONG CONSTANT IO$M_MKFILL1 = x'00000040' DECLARE LONG CONSTANT IO$M_ALLOWFAST_NEVER = x'00000080' DECLARE LONG CONSTANT IO$M_ALLOWFAST_PER_IO = x'00000100' DECLARE LONG CONSTANT IO$M_ALLOWFAST_ALWAYS = x'00000200' DECLARE LONG CONSTANT IO$M_ADD = x'00000040' DECLARE LONG CONSTANT IO$M_IDSTRING = x'00000040' DECLARE LONG CONSTANT IO$M_SERIALNUM = x'00000080' DECLARE LONG CONSTANT IO$M_BYPASS_VALID_CHK = x'00000080' DECLARE LONG CONSTANT IO$S_IODEF = 3 record IODEF variant ! Basic I/O function code/modifiers structure case group IO$R_FCODE_STRUCTURE ! Function Code Field ! Function Modifiers Field WORD FCODE_bits ! COMMENT ADDED BY SDL - FCODE_bits contains bits FCODE through FMODIFIERS end group IO$R_FCODE_STRUCTURE ! Function modifiers common to all drivers which do error logging case group IO$R_ERRLOG_MODIFIERS ! Inhibit error logging WORD fcode_fill_1_bits ! COMMENT ADDED BY SDL - fcode_fill_1_bits contains bits fcode_fill_1 through FILL_20_ end group IO$R_ERRLOG_MODIFIERS ! General disk and tape function code modifiers case group IO$R_DISK_TAPE_MODIFIERS ! Erase data ! IO$M_INHERLOG ! func<31:16> are valid ! Write check data after transfer ! Inhibit error retry ! the following are only valid if EXFUNC is set ! allow synchronous completion ! do not use VBN cache ! Buffer object I/O ! I/O from trusted component ! Flush file to disk ! Insert a barrier after the write ! Readahead hint (used by XFC) LONG fcode_fill_2_bits ! COMMENT ADDED BY SDL - fcode_fill_2_bits contains bits fcode_fill_2 through FILL_21_ end group IO$R_DISK_TAPE_MODIFIERS ! General disk function code modifiers case group IO$R_DISK_MODIFIERS ! Inhibit implied seek on physical functions WORD fcode_fill_3_bits ! COMMENT ADDED BY SDL - fcode_fill_3_bits contains bits fcode_fill_3 through FILL_22_ end group IO$R_DISK_MODIFIERS ! General disk READ function code modifiers case group IO$R_DISK_READ_MODIFIERS ! Fill to overlay READ_TO_EOF with BARRIER ! the following are only valid if EXFUNC is set ! Reserved for Internal Use only. LONG filler_2a_bits ! COMMENT ADDED BY SDL - filler_2a_bits contains bits filler_2a through FILL_23_ end group IO$R_DISK_READ_MODIFIERS ! General tape function code modifiers case group IO$R_TAPE_MODIFIERS ! Reverse operation ! No wait for rewind to complete ! Inhibit extended inter-record gap ! Traverse the entire tape to uniformly set the tape's tension. ! Applies only to IO$_REWIND/REWINDOFF functions ! Allow fast skip by filemarks when enabled ! Applies only to IO$_SKIPFILE/SPACEFILE functions ! Density Setmode and Sensemode for MTD enhanced tape drivers. WORD fcode_fill_4_bits ! COMMENT ADDED BY SDL - fcode_fill_4_bits contains bits fcode_fill_4 through & ! MT3_DENSITY end group IO$R_TAPE_MODIFIERS ! DU ? TU, disk ? tape class driver transfer function modifier bits case group IO$R_DUTU_XFER_MODIFIERS ! Use MSCP modifiers in P5 WORD fcode_fill_5_bits ! COMMENT ADDED BY SDL - fcode_fill_5_bits contains bits fcode_fill_5 through FILL_24_ end group IO$R_DUTU_XFER_MODIFIERS case group IO$R_DU_SENSE_MODIFIERS ! Shadowing SENSECHAR ! Shadowing Locate function BYTE fcode_fill_6_bits ! COMMENT ADDED BY SDL - fcode_fill_6_bits contains bits fcode_fill_6 through LOCATE end group IO$R_DU_SENSE_MODIFIERS case group IO$R_DU_PACKACK_MODIFIERS ! PACKACK media for formatting BYTE fcode_fill_7_bits ! COMMENT ADDED BY SDL - fcode_fill_7_bits contains bits fcode_fill_7 through FILL_25_ end group IO$R_DU_PACKACK_MODIFIERS case group IO$R_DU_AVAIL_MODIFIERS ! Do available as for all class drivers ! Dissolve shadow set ! Normal shadow set cleanup not necessary WORD fcode_fill_8_bits ! COMMENT ADDED BY SDL - fcode_fill_8_bits contains bits fcode_fill_8 through FILL_26_ end group IO$R_DU_AVAIL_MODIFIERS case group IO$R_DU_REMSHAD_MODIFIERS ! Spin down removed member BYTE fcode_fill_9_bits ! COMMENT ADDED BY SDL - fcode_fill_9_bits contains bits fcode_fill_9 through FILL_27_ end group IO$R_DU_REMSHAD_MODIFIERS case group IO$R_DU_DCD_MODIFIERS ! Establish Communication Path ! Local Source Unit ! Retain Communication Path WORD fcode_fill_11_bits ! COMMENT ADDED BY SDL - fcode_fill_11_bits contains bits fcode_fill_11 through & ! FILL_28_ end group IO$R_DU_DCD_MODIFIERS case group IO$R_DU_WHM_MODIFIERS ! Deallocate All ! Deallocate by Host Reference Number ! Deallocate by Entry Locator ! Decrement Allocation Failure Count ! Read All ! Read by Host Reference Number ! Break Connection WORD fcode_fill_12_bits ! COMMENT ADDED BY SDL - fcode_fill_12_bits contains bits fcode_fill_12 through & ! FILL_29_ end group IO$R_DU_WHM_MODIFIERS ! HBS driver transfer function modifier bits ! Make sure that IO$V_SHADOW .ne. IO$V_LOCATE .ne. IO$V_COPYOP case group IO$R_HBS_COPYSHAD_MODIFIERS ! Stepover SCBLBN. ! Shad Server Cpy Operation WORD fcode_fill_13_bits ! COMMENT ADDED BY SDL - fcode_fill_13_bits contains bits fcode_fill_13 through & ! FILL_30_ end group IO$R_HBS_COPYSHAD_MODIFIERS case group IO$R_HBS_CRESHAD_MODIFIERS ! VU already exists. ! Controller based shadowing. ! Creshad for system disk. ! MINICOPY required ! MINICOPY optional ! NOMINICOPY ! All SSMs on command line sent to HBVS WORD fcode_fill_14_bits ! COMMENT ADDED BY SDL - fcode_fill_14_bits contains bits fcode_fill_14 through & ! FILL_31_ end group IO$R_HBS_CRESHAD_MODIFIERS case group IO$R_HBS_XFER_MODIFIERS ! Exclude Full copy members WORD fcode_fill_15_bits ! COMMENT ADDED BY SDL - fcode_fill_15_bits contains bits fcode_fill_15 through & ! FILL_32_ end group IO$R_HBS_XFER_MODIFIERS case group IO$R_HBS_SCB_MODIFIERS ! Write the SCB ! Update HVBS on new location of the SCB WORD fcode_fill_54_bits ! COMMENT ADDED BY SDL - fcode_fill_54_bits contains bits fcode_fill_54 through & ! FILL_33_ end group IO$R_HBS_SCB_MODIFIERS ! Function modifier bits for Set Preferred Path. case group IO$R_PRFPATH_MODIFIERS ! No modifiers set, passes in a preferred path (DUDRIVER) ! Make path change happen (DUDRIVER) ! Set Fast Path CPU affinity of port (port driver) ! system assignable port WORD fcode_fill_10_bits ! COMMENT ADDED BY SDL - fcode_fill_10_bits contains bits fcode_fill_10 through & ! FILL_34_ end group IO$R_PRFPATH_MODIFIERS ! DR driver function modifier bits. case group IO$R_DR_MODIFIERS ! Diagnostic command ! Move track descriptor ! Diagnostic function ! Skip sector inhibit WORD fcode_fill_16_bits ! COMMENT ADDED BY SDL - fcode_fill_16_bits contains bits fcode_fill_16 through & ! FILL_35_ end group IO$R_DR_MODIFIERS ! DY driver function modifier bits. case group IO$R_DY_MODIFIERS ! Write deleted data mark BYTE fcode_fill_17_bits ! COMMENT ADDED BY SDL - fcode_fill_17_bits contains bits fcode_fill_17 through & ! FILL_36_ end group IO$R_DY_MODIFIERS ! DD driver (TU58) function modifier bits. case group IO$R_DD_MODIFIERS ! Do not use MRSP for this operation BYTE fcode_fill_18_bits ! COMMENT ADDED BY SDL - fcode_fill_18_bits contains bits fcode_fill_18 through & ! FILL_37_ end group IO$R_DD_MODIFIERS ! Magnetic tape I/O function modifier bits for the TS11. case group IO$R_TS11_MODIFIERS ! Swap byte (TS11) ! Opposite bit for rereads (TS11) WORD fcode_fill_19_bits ! COMMENT ADDED BY SDL - fcode_fill_19_bits contains bits fcode_fill_19 through & ! FILL_38_ end group IO$R_TS11_MODIFIERS ! TU driver function modifier bits case group IO$R_TU_MODIFIERS ! Clear serious exception condition WORD fcode_fill_20_bits ! COMMENT ADDED BY SDL - fcode_fill_20_bits contains bits fcode_fill_20 through & ! FILL_39_ end group IO$R_TU_MODIFIERS ! Tape class driver segmented and large transfer modifier bits case group IO$R_TU_LG_TRANSFER_MODIFIERS ! Allow diagnostic buffers ! To be continued modifier WORD fcode_fill_21_bits ! COMMENT ADDED BY SDL - fcode_fill_21_bits contains bits fcode_fill_21 through & ! FILL_40_ end group IO$R_TU_LG_TRANSFER_MODIFIERS ! TUDRIVER SETMODE function modifier bits. case group IO$R_TU_SETMODE_MODIFIERS ! Enable media quality BYTE fcode_fill_22_bits ! COMMENT ADDED BY SDL - fcode_fill_22_bits contains bits fcode_fill_22 through & ! FILL_41_ end group IO$R_TU_SETMODE_MODIFIERS ! reporting. ! ACP function modifier bits. case group IO$R_ACP_MODIFIERS ! Access file ! Create file ! Delete file ! Mount volume ! Dismount volume ! Remount volume ! Move a file ! Used for EXFUNC ! Access shelved files ! Set file as a directory ! Bit 19 used for TRUSTED WORD fcode_fill_23_bits ! COMMENT ADDED BY SDL - fcode_fill_23_bits contains bits fcode_fill_23 through SETDIR end group IO$R_ACP_MODIFIERS ! CR (card reader) driver function modifier bits. case group IO$R_CR_MODIFIERS ! Binary read ! Packed read BYTE fcode_fill_24_bits ! COMMENT ADDED BY SDL - fcode_fill_24_bits contains bits fcode_fill_24 through PACKED end group IO$R_CR_MODIFIERS ! MB (mailbox) driver function modifier bits. ! The following modifers are for the QIO READ, WRITE and SENSEMODE ! functions. case group IO$R_MB_MODIFIERS ! Do not wait for operation complete ! Perform stream mode operation (vs. record mode) ! Perform operation if no read channel is assigned to the mailbox. ! Perform operation if no write channel is assigned to the mailbox. ! Do not allow resource waits ! Bit 13 used for EXFUNC ! Bit 19 used for TRUSTED WORD fcode_fill_25_bits ! COMMENT ADDED BY SDL - fcode_fill_25_bits contains bits fcode_fill_25 through & ! FILL_42_ end group IO$R_MB_MODIFIERS ! More MB (mailbox) driver function modifier bits. ! Mailbox QIO SETMODE function modifiers. case group IO$R_MB_SETMODE_MODIFIERS ! Notify when some (any) space in the mailbox is available. ! Request ast on waiting reader ! Request ast on waiting writer ! Set volume protection ! Wait for a read channel to be assigned to the mailbox. ! Wait for a write channel to be assigned to the mailbox. WORD fcode_fill_26_bits ! COMMENT ADDED BY SDL - fcode_fill_26_bits contains bits fcode_fill_26 through & ! FILL_43_ end group IO$R_MB_SETMODE_MODIFIERS ! TT driver READ function modifier bits. case group IO$R_TT_READ_MODIFIERS ! Noecho ! Timed ! Convert lower case ! No filter ! Disable mailbox ! Purge typeahead ! Terminators are not echoed ! Control-R interrupted read ! Terminate read on escape sequence ! Used by alternate class drivers WORD fcode_fill_27_bits ! COMMENT ADDED BY SDL - fcode_fill_27_bits contains bits fcode_fill_27 through EXTEND end group IO$R_TT_READ_MODIFIERS ! TT driver WRITE function modifier bits. case group IO$R_TT_WRITE_MODIFIERS ! Cancel control O ! Enable mailbox ! Do not format output ! Broadcast I/O ! Output a newline WORD fcode_fill_28_bits ! COMMENT ADDED BY SDL - fcode_fill_28_bits contains bits fcode_fill_28 through & ! FILL_44_ end group IO$R_TT_WRITE_MODIFIERS ! TT driver SENSEMODE function modifier bits. case group IO$R_TT_SENSEMODE_MODIFIERS ! Sense typeahead information BYTE fcode_fill_29_bits ! COMMENT ADDED BY SDL - fcode_fill_29_bits contains bits fcode_fill_29 through & ! reserve_rd_modem end group IO$R_TT_SENSEMODE_MODIFIERS ! TT driver SETMODE subfunction modifier bits. case group IO$R_TT_SETMODE_MODIFIERS ! Enable maint sub modifiers ! Set control Y AST ! Set Control C ! Set mode and hang up line ! Set out of band AST ! Connect to detached terminal ! Disconnect detached terminal ! Define controlling process ! Define broadcast mask WORD fcode_fill_30_bits ! COMMENT ADDED BY SDL - fcode_fill_30_bits contains bits fcode_fill_30 through & ! FILL_45_ end group IO$R_TT_SETMODE_MODIFIERS ! TT driver MAINTIANCE subfunction submodifier bits. case group IO$R_TT_MAINT_MODIFIERS ! Diagnostic loopback ! Diagnostic reset loopback ! Disable line ! Diagnostic modem control ! Enable line ! Diagnostic external loopback ! Enable auto XOFF ! Disable auto XOFF WORD fcode_fill_31_bits ! COMMENT ADDED BY SDL - fcode_fill_31_bits contains bits fcode_fill_31 through & ! reserve_int_disable end group IO$R_TT_MAINT_MODIFIERS ! TT driver out-of-band modifier bits. case group IO$R_TT_OUTOFBAND_MODIFIERS ! Include character in stream ! Abort current I/O WORD fcode_fill_32_bits ! COMMENT ADDED BY SDL - fcode_fill_32_bits contains bits fcode_fill_32 through & ! FILL_46_ end group IO$R_TT_OUTOFBAND_MODIFIERS ! Posix terminal driver SETMODE subfunction modifier bits. case group IO$R_TT_PSXSETMODE_MODIFIERS ! Enable initialization subfunctions ! Enable flow control subfunctions BYTE fcode_fill_33_bits ! COMMENT ADDED BY SDL - fcode_fill_33_bits contains bits fcode_fill_33 through & ! POSIXFLOW end group IO$R_TT_PSXSETMODE_MODIFIERS ! Posix terminal driver INIT subfunction submodifier bits. case group IO$R_TT_POSIXINIT_MODIFIERS ! Set TT3$M_POSIX and set up PTC ! Clear TT3$M_POSIX (opt. delete PTC) ! Set up termios ! Set up all of PTC ! clear PTC ! flush typeahead buffer ! flush outstanding writes ! update PTC WORD fcode_fill_34_bits ! COMMENT ADDED BY SDL - fcode_fill_34_bits contains bits fcode_fill_34 through & ! FILL_47_ end group IO$R_TT_POSIXINIT_MODIFIERS ! Posix terminal driver FLOW subfunction submodifier bits. case group IO$R_TT_POSIXFLOW_MODIFIERS ! Simulate output XOFF ! Simulate output XON ! Simulate input XOFF ! Simulate input XON WORD fcode_fill_35_bits ! COMMENT ADDED BY SDL - fcode_fill_35_bits contains bits fcode_fill_35 through & ! FILL_48_ end group IO$R_TT_POSIXFLOW_MODIFIERS ! Posix terminal driver READ function modifier bits. case group IO$R_TT_PSXREAD_MODIFIERS ! Nonblock BYTE fcode_fill_36_bits ! COMMENT ADDED BY SDL - fcode_fill_36_bits contains bits fcode_fill_36 through & ! FILL_49_ end group IO$R_TT_PSXREAD_MODIFIERS ! Network WRITE and READ VIRTUAL function modifier bits. case group IO$R_NET_WRITE_READ_MODIFIERS ! Interrupt message ! Multiple write/read request ! Direct I/O request ! Segment message w/o blocking ! Bit 13 used for EXFUNC ! Bit 19 used for TRUSTED WORD fcode_fill_37_bits ! COMMENT ADDED BY SDL - fcode_fill_37_bits contains bits fcode_fill_37 through & ! FILL_50_ end group IO$R_NET_WRITE_READ_MODIFIERS ! Network ACCESS/DEACCESS function modifier bits. case group IO$R_NET_ACCDEA_MODIFIERS ! Disconnect abort/connect reject ! Synchronous disconnect WORD fcode_fill_38_bits ! COMMENT ADDED BY SDL - fcode_fill_38_bits contains bits fcode_fill_38 through & ! FILL_51_ end group IO$R_NET_ACCDEA_MODIFIERS ! DATALINK driver WRITE subfunction modifier bits. case group IO$R_DLINK_WRITE_MODIFIERS ! Transmit this packet as a response BYTE fcode_fill_39_bits ! COMMENT ADDED BY SDL - fcode_fill_39_bits contains bits fcode_fill_39 through & ! FILL_52_ end group IO$R_DLINK_WRITE_MODIFIERS ! DATALINK driver SETMODE subfunction modifier bits. case group IO$R_DLINK_SETMODE_MODIFIERS ! Start protocol ! Stop protocol ! Attention AST ! Controller (ie. not station) function ! Set MAC parameters ! Functional Addr Map ! Source Routing Ops WORD fcode_fill_40_bits ! COMMENT ADDED BY SDL - fcode_fill_40_bits contains bits fcode_fill_40 through & ! FILL_53_ end group IO$R_DLINK_SETMODE_MODIFIERS ! DATALINK driver SENSEMODE subfunction modifier bits. case group IO$R_DLINK_SENSEMODE_MODIFIERS ! Read device memory ! Read modem status ! Read counters ! Clear counters ! Sense MAC parameters ! Functional Addr Map ! Source Routing Ops WORD fcode_fill_41_bits ! COMMENT ADDED BY SDL - fcode_fill_41_bits contains bits fcode_fill_41 through & ! FILL_54_ end group IO$R_DLINK_SENSEMODE_MODIFIERS case group IO$R_X25_WRITE_MODIFIERS ! More data follows (M-bit) ! Use qualified sub-channel (Q-bit) BYTE fcode_fill_42_bits ! COMMENT ADDED BY SDL - fcode_fill_42_bits contains bits fcode_fill_42 through & ! QUALIFIED end group IO$R_X25_WRITE_MODIFIERS ! X25 driver ACCESS function modifier bits. case group IO$R_X25_ACCESS_MODIFIERS ! Redirect virtual call ! Accept virtual call BYTE fcode_fill_43_bits ! COMMENT ADDED BY SDL - fcode_fill_43_bits contains bits fcode_fill_43 through ACCEPT end group IO$R_X25_ACCESS_MODIFIERS ! LPA-11 driver STARTDATA modifier bits. case group IO$R_LPA_START_MODIFIERS ! Set event flag BYTE fcode_fill_44_bits ! COMMENT ADDED BY SDL - fcode_fill_44_bits contains bits fcode_fill_44 through & ! FILL_55_ end group IO$R_LPA_START_MODIFIERS ! XA (DR11-W) driver function modifier bits. case group IO$R_XA_MODIFIERS ! Word (interrupt)/block (DMA) mode specifier ! IO$M_TIMED ! IO$M_ATTNAST, IO$M_DIAGNOSTIC ! Set "FNCT" bits in device CSR ! Change UBA datapath (direct/buffered) ! IO$M_INHERLOG (former def'n for RESET) ! Set "cycle" bit in device CSR ! Device reset specifier WORD fcode_fill_45_bits ! COMMENT ADDED BY SDL - fcode_fill_45_bits contains bits fcode_fill_45 through & ! FILL_56_ end group IO$R_XA_MODIFIERS ! 3271 driver function modifier bits. case group IO$R_IBM3271_MODIFIERS ! Set a new CU address ! Set a new maximum buffer size ! Set a new pool size ! Set a new ENQ threshold ! Zero status counters ! Loopback is external loopback ! Loopback is internal loopback (DUP11) ! Read CSRs on DUP11 WORD fcode_fill_46_bits ! COMMENT ADDED BY SDL - fcode_fill_46_bits contains bits fcode_fill_46 through & ! READCSR end group IO$R_IBM3271_MODIFIERS ! XW driver function modifier bits. case group IO$R_XW_MODIFIERS ! Diagnostic function ! Diagnostic function ! Do not wait for DSR (diag) ! Internal maint loop ! Last block of message ! Internal clock WORD fcode_fill_47_bits ! COMMENT ADDED BY SDL - fcode_fill_47_bits contains bits fcode_fill_47 through & ! FILL_57_ end group IO$R_XW_MODIFIERS ! LAT driver function modifier bits. case group IO$R_LT_MODIFIERS ! Solicit connection to remote LAT device ! Disconnect LAT session ! Read LAT device info ! Map application port ! Set service rating ! Request solicit info ! Setup to recive reply ! SETMODE on LTA device ! SENSEMODE on LTA device ! Queue change AST WORD fcode_fill_48_bits ! COMMENT ADDED BY SDL - fcode_fill_48_bits contains bits fcode_fill_48 through & ! LT_QUE_CHG_NOTIF end group IO$R_LT_MODIFIERS ! LAT item list definitions for MAP_PORT case group IO$R_LT_MAPITEM ! Item 0 not used ! Server node name ! Server port name ! Server service name ! Link name ! Server Ethernet Add. BYTE LT_MAP_FILLER_bits ! COMMENT ADDED BY SDL - LT_MAP_FILLER_bits contains bits LT_MAP_FILLER through & ! FILL_58_ end group IO$R_LT_MAPITEM ! FSDRIVER function modifiers for Dollar. case group IO$R_FS_MODIFIERS ! Flush writes ! Barrier writes to this point BYTE fcode_fill_49_bits ! COMMENT ADDED BY SDL - fcode_fill_49_bits contains bits fcode_fill_49 through & ! WRITE_BARRIER end group IO$R_FS_MODIFIERS ! MKDRIVER function modifiers for SETMODE case group IO$R_MK_SETMODE_MODIFIERS ! Filler to not coincide with TU modifier (for safety) ! Disable all skip by filemarks ! Enable skip by filemarks with i/o fcn modifier ! Default all IO$_SKIPFILE to use skip by filemarks WORD fcode_fill_50_bits ! COMMENT ADDED BY SDL - fcode_fill_50_bits contains bits fcode_fill_50 through & ! FILL_59_ end group IO$R_MK_SETMODE_MODIFIERS ! Snapshot-capable disk (SD) driver function modifier bits. case group IO$R_SD_MODIFIERS ! Add UNIT to an existing pool BYTE fcode_fill_51_bits ! COMMENT ADDED BY SDL - fcode_fill_51_bits contains bits fcode_fill_51 through & ! FILL_60_ end group IO$R_SD_MODIFIERS ! USB usbattr modifiers case group IO$R_USB_USBATTR_MODIFIERS ! Request for printer's 1284 device ID string ! Request for printer's serial number (if supported) BYTE fcode_fill_52_bits ! COMMENT ADDED BY SDL - fcode_fill_52_bits contains bits fcode_fill_52 through & ! SERIALNUM end group IO$R_USB_USBATTR_MODIFIERS ! Disk-specific PACKACK modifiers case group IO$R_DISK_PACKACK_MODIFIERS ! Filler to coincide with MSCP_FORMAT modifier for DU PACKACK ! Send PACKACK to driver even if UCB$M_VALID is set (LCLDSKVALID) BYTE disk_packack_fcode_fill_bits ! COMMENT ADDED BY SDL - disk_packack_fcode_fill_bits contains bits & ! disk_packack_fcode_fill through BYPASS_VALID_CHK end group IO$R_DISK_PACKACK_MODIFIERS end variant end record IODEF