Trailing-Edge
-
PDP-10 Archives
-
mit_emacs_170_teco_1220
-
info/jsys4gm.info
There are no other files named jsys4gm.info in the archive.
File: JSYS4GM Node: Top Up: (DIR)
This file contains chapter 3 of the Monitor Calls Reference Manual
(version 4-Prelimnary), JSYS'S A* to F*, in INFO format.
* Menu:
* ACCES: (JSYS4AF)ACCES, (552) Specifies access to a directory 3-1
* ADBRK: (JSYS4AF)ADBRK, (570) Controls address breaks 3-3
* AIC: (JSYS4AF)AIC, (131) Activates software interrupt channels 3-5
* ALLOC: (JSYS4AF)ALLOC, (520) Allocates a device 3-5
* ARCF: (JSYS4AF)ARCF, (247) Archive/virtual disk operations x-xx
* ASND: (JSYS4AF)ASND, (70) Assigns a device 3-6
* ASNSQ: (JSYS4AF)ASNSQ, (752) Assigns ARPANET special message queue x-xx
* ATNVT: (JSYS4AF)ATNVT, (274) Creates ARPANET Network Virtual Terminal Connection x-xx
* ATACH: (JSYS4AF)ATACH, (116) Attachs a terminal to a job 3-7
* ATI: (JSYS4AF)ATI, (137) Assigns a terminal code to an interrupt channel 3-8
* BIN: (JSYS4AF)BIN, (50) Performs byte input 3-9
* BKJFN: (JSYS4AF)BKJFN, (42) Backs up pointer by one byte 3-10
* BOOT: (JSYS4AF)BOOT, (562) Performs functions required for loading front-end software 3-10
* BOUT: (JSYS4AF)BOUT, (51) Performs byte output 3-14
* CACCT: (JSYS4AF)CACCT, (4) Changes account designator 3-15
* CFIBF: (JSYS4AF)CFIBF, (100) Clears the input buffer 3-15
* CFOBF: (JSYS4AF)CFOBF, (101) Clears the output buffer 3-16
* CFORK: (JSYS4AF)CFORK, (152) Creates an inferior process 3-16
* CHFDB: (JSYS4AF)CHFDB, (64) Changes a File Descriptor Block 3-17
* CHKAC: (JSYS4AF)CHKAC, (521) Checks access to a file 3-18
* CIS: (JSYS4AF)CIS, (141) Clears the interrupt system 3-19
* CLOSF: (JSYS4AF)CLOSF, (22) Closes a file 3-20
* CLZFF: (JSYS4AF)CLZFF, (34) Closes the process' files 3-21
* COMND: (JSYS4AF)COMND, (544) Parses a command 3-22
* CRDIR: (JSYS4AF)CRDIR, (240) Creates, changes, or deletes a directory 3-38
* CRJOB: (JSYS4AF)CRJOB, (2) Creates a job 3-42
* CRLNM: (JSYS4AF)CRLNM, (502) Defines or deletes a logical name 3-47
* CVHST: (JSYS4AF)CVHST, (276) Converts ARPANET host number to primary name x-xx
* CVSKT: (JSYS4AF)CVSKT, (275) Converts ARPANET local socket to absolute form x-xx
* DEBRK: (JSYS4AF)DEBRK, (136) Dismisses current software interrupt 3-48
* DELDF: (JSYS4AF)DELDF, (67) Expunges deleted files 3-48
* DELF: (JSYS4AF)DELF, (26) Deletes files 3-49
* DELNF: (JSYS4AF)DELNF, (317) Retains specified number of generations of a file 3-50
* DEQ: (JSYS4AF)DEQ, (514) Removes request from resource queue 3-51
* DEVST: (JSYS4AF)DEVST, (121) Translates a device designator to a string 3-53
* DFIN: (JSYS4AF)DFIN, (234) Inputs double-precision floating point number 3-53
* DFOUT: (JSYS4AF)DFOUT, (235) Outputs double-precision floating point number 3-54
* DIAG: (JSYS4AF)DIAG, (530) Reserves or releases hardware channels 3-55
* DIBE: (JSYS4AF)DIBE, (212) Dismisses until input buffer is empty 3-56
* DIC: (JSYS4AF)DIC, (133) Deactivates software interrupt channels 3-57
* DIR: (JSYS4AF)DIR, (130) Disables software interrupt system 3-57
* DIRST: (JSYS4AF)DIRST, (41) Translates a directory number to a string 3-58
* DISMS: (JSYS4AF)DISMS, (167) Dismisses the process 3-59
* DOBE: (JSYS4AF)DOBE, (104) Dismisses until output buffer is empty 3-59
* DSKAS: (JSYS4AF)DSKAS, (244) Assigns disk addresses 3-60
* DSKOP: (JSYS4AF)DSKOP, (242) Specifies disk transfers in hardware terms 3-61
* DTACH: (JSYS4AF)DTACH, (115) Detaches a terminal from a job 3-62
* DTI: (JSYS4AF)DTI, (140) Deassigns a terminal code 3-62
* DUMPI: (JSYS4AF)DUMPI, (65) Reads data in unbuffered data mode 3-63
* DUMPO: (JSYS4AF)DUMPO, (66) Writes data in unbuffered data mode 3-64
* DVCHR: (JSYS4AF)DVCHR, (117) Retrieves device characteristics 3-65
* EFACT: (JSYS4AF)EFACT, (5) Makes an entry in the FACT file 3-66
* EIR: (JSYS4AF)EIR, (126) Enables software interrupt system 3-67
* ENQ: (JSYS4AF)ENQ, (513) Places request in resource queue 3-67
* ENQC: (JSYS4AF)ENQC, (515) Obtains status of resource queue 3-73
* EPCAP: (JSYS4AF)EPCAP, (151) Enables process capabilities 3-76
* ERSTR: (JSYS4AF)ERSTR, (11) Converts error number to string 3-77
* ESOUT: (JSYS4AF)ESOUT, (313) Outputs an error string 3-78
* FFFFP: (JSYS4AF)FFFFP, (31) Finds first free page in file 3-78
* FFORK: (JSYS4AF)FFORK, (154) Freezes processes 3-79
* FFUFP: (JSYS4AF)FFUFP, (211) Finds first used page in file 3-79
* FLHST: (JSYS4AF)FLHST, (277) Flushes an ARPANET host x-xx
* FLIN: (JSYS4AF)FLIN, (232) Inputs floating-point number 3-80
* FLOUT: (JSYS4AF)FLOUT, (233) Outputs floating-point number 3-80
* GACCT: (JSYS4GM)GACCT, (546) Gets current account designator 3-81
* GACTF: (JSYS4GM)GACTF, (37) Gets account designator of file 3-81
* GCVEC: (JSYS4GM)GCVEC, (300) Gets entry vector of compatibility package 3-82
* GDSKC: (JSYS4GM)GDSKC, (214) Gets disk count 3-83
* GDSTS: (JSYS4GM)GDSTS, (145) Gets device's status 3-83
* GDVEC: (JSYS4GM)GDVEC, (542) Gets entry vector of RMS 3-84
* GET: (JSYS4GM)GET, (200) Gets a save file 3-84
* GETAB: (JSYS4GM)GETAB, (10) Gets a word from a monitor table 3-85
* GETER: (JSYS4GM)GETER, (12) Returns the last error in a process 3-86
* GETJI: (JSYS4GM)GETJI, (507) Gets specified job information 3-86
* GETNM: (JSYS4GM)GETNM, (177) Returns the program name currently being used 3-87
* GETOK%: (JSYS4GM)GETOK%, (574) Requests access to a protected resource x-xx
* GEVEC: (JSYS4GM)GEVEC, (205) Gets entry vector 3-88
* GFRKH: (JSYS4GM)GFRKH, (164) Gets process handle 3-88
* GFRKS: (JSYS4GM)GFRKS, (166) Gets process structure 3-89
* GFUST: (JSYS4GM)GFUST, (550) Returns author and last writer name strings 3-90
* GIVOK%: (JSYS4GM)GIVOK%, (576) Grants access to a protected resource x-xx
* GJINF: (JSYS4GM)GJINF, (13) Gets current job information 3-91
* GNJFN: (JSYS4GM)GNJFN, (17) Gets the next JFN 3-91
* GPJFN: (JSYS4GM)GPJFN, (206) Gets the primary JFNs 3-92
* GTAD: (JSYS4GM)GTAD, (227) Gets current date and time 3-93
* GTDAL: (JSYS4GM)GTDAL, (305) Gets disk allocation of a directory 3-93
* GTDIR: (JSYS4GM)GTDIR, (241) Gets information of directory entry 3-94
* GTFDB: (JSYS4GM)GTFDB, (63) Gets a File Descriptor Block 3-95
* GTJFN Long Form: (JSYS4GM)GTJFN-long, (20) Gets a JFN Short Form 3-96 Long Form 3-103
* GTJFN Short Form: (JSYS4GM)GTJFN-short, (20) Gets a JFN Short Form 3-96 Long Form 3-103
* GTRPI: (JSYS4GM)GTRPI, (172) Get trap information 3-107
* GTRPW: (JSYS4GM)GTRPW, (171) Gets trap words 3-108
* GTSTS: (JSYS4GM)GTSTS, (24) Gets a file's status 3-109
* GTTYP: (JSYS4GM)GTTYP, (303) Gets the terminal type number 3-109
* HALTF: (JSYS4GM)HALTF, (170) Halts the current process 3-110
* HFORK: (JSYS4GM)HFORK, (162) Halts a process 3-110
* HPTIM: (JSYS4GM)HPTIM, (501) Returns values of high precision clocks 3-111
* HSYS: (JSYS4GM)HSYS, (307) Halts the system 3-111
* IDCNV: (JSYS4GM)IDCNV, (223) Inputs date and time conversion 3-112
* IDTIM: (JSYS4GM)IDTIM, (221) Inputs date and time 3-113
* IDTNC: (JSYS4GM)IDTNC, (231) Inputs date/time without converting 3-115
* IIC: (JSYS4GM)IIC, (132) Initiates software interrupts on specified channels 3-116
* INLNM: (JSYS4GM)INLNM, (503) Lists job's logical names 3-117
* JFNS: (JSYS4GM)JFNS, (30) Translates a JFN to a string 3-117
* KFORK: (JSYS4GM)KFORK, (153) Kills a process 3-119
* LGOUT: (JSYS4GM)LGOUT, (3) Kills a job 3-120
* LNMST: (JSYS4GM)LNMST, (504) Converts a logical name to a string 3-121
* LOGIN: (JSYS4GM)LOGIN, (1) Logs in a job 3-121
* LPINI: (JSYS4GM)LPINI, (547) Loads VFU or translation RAM 3-122
* MRECV: (JSYS4GM)MRECV, (511) Receives an IPCF message 3-123
* MSEND: (JSYS4GM)MSEND, (510) Sends an IPCF message 3-125
* MSFRK: (JSYS4GM)MSFRK, (312) Starts a process in monitor mode 3-129
* MSTR: (JSYS4GM)MSTR, (555) Performs structure-dependent functions 3-129
* MTALN: (JSYS4GM)MTALN, (774) Associates magnetic tape drive with logical unit number 3-142
* MTOPR: (JSYS4GM)MTOPR, (77) Performs device-dependent functions 3-142
* MTU%: (JSYS4GM)MTU%, (600) Performs various functions for MT: devices x-xx
* MUTIL: (JSYS4GM)MUTIL, (512) Performs IPCF control functions 3-153
* NIN: (JSYS4NR)NIN, (225) Inputs an integer number 3-158
* NODE: (JSYS4NR)NODE, (567) Performs network utility functions 3-158
* NOUT: (JSYS4NR)NOUT, (224) Outputs an integer number 3-158
* ODCNV: (JSYS4NR)ODCNV, (222) Outputs date and time conversion 3-159
* ODTIM: (JSYS4NR)ODTIM, (220) Outputs date and time 3-160
* ODTNC: (JSYS4NR)ODTNC, (230) Outputs date/time without converting 3-162
* OPENF: (JSYS4NR)OPENF, (21) Opens a file 3-163
* PBIN: (JSYS4NR)PBIN, (73) Inputs the next byte 3-166
* PBOUT: (JSYS4NR)PBOUT, (74) Outputs the next byte 3-167
* PEEK: (JSYS4NR)PEEK, (311) Obtains monitor data 3-167
* PLOCK: (JSYS4NR)PLOCK, (561) Locks physical pages 3-168
* PMAP: (JSYS4NR)PMAP, (56) Maps pages 3-168.1
* PMCTL: (JSYS4NR)PMCTL, (560) Controls physical memory 3-171
* PPNST: (JSYS4NR)PPNST, (557) Translates project-programmer number to string 3-173
* PRARG: (JSYS4NR)PRARG, (545) Reads/sets process argument block 3-174
* PSOUT: (JSYS4NR)PSOUT, (76) Outputs a string 3-174
* RCDIR: (JSYS4NR)RCDIR, (553) Translates string to directory number 3-175
* RCM: (JSYS4NR)RCM, (134) Reads the channel word mask 3-178
* RCVIM: (JSYS4NR)RCVIM, (751) Retrieves message from ARPANET special message queue x-xx
* RCVOK%: (JSYS4NR)RCVOK%, (575) Retrieves access request from GETOK queue x-xx
* RCUSR: (JSYS4NR)RCUSR, (554) Translates string to user number 3-179
* RDTTY: (JSYS4NR)RDTTY, (523) Reads data from primary input designator 3-180
* RELD: (JSYS4NR)RELD, (71) Releases a device 3-182
* RELSQ: (JSYS4NR)RELSQ, (753) Deassigns ARPANET special message queue x-xx
* RESET: (JSYS4NR)RESET, (147) Resets/initializes the current process 3-183
* RFACS: (JSYS4NR)RFACS, (161) Reads process' ACs 3-183
* RFBSZ: (JSYS4NR)RFBSZ, (45) Reads files's byte size 3-184
* RFCOC: (JSYS4NR)RFCOC, (112) Reads file's control character output 3-184
* RFMOD: (JSYS4NR)RFMOD, (107) Reads a file's mode 3-185
* RFORK: (JSYS4NR)RFORK, (155) Resumes a process 3-185
* RFPOS: (JSYS4NR)RFPOS, (111) Reads terminal's position 3-186
* RFPTR: (JSYS4NR)RFPTR, (43) Reads file's pointer position 3-187
* RFRKH: (JSYS4NR)RFRKH, (165) Releases a process handle 3-187
* RFSTS: (JSYS4NR)RFSTS, (156) Reads a process' status 3-188
* RFTAD: (JSYS4NR)RFTAD, (533) Reads file's time and dates 3-189
* RIN: (JSYS4NR)RIN, (54) Performs random input 3-190
* RIR: (JSYS4NR)RIR, (144) Reads software interrupt table addresses 3-191
* RIRCM: (JSYS4NR)RIRCM, (143) Reads inferior reserved channel mask 3-191
* RLJFN: (JSYS4NR)RLJFN, (23) Releases JFNs 3-192
* RMAP: (JSYS4NR)RMAP, (61) Obtains a handle on a page 3-192
* RNAMF: (JSYS4NR)RNAMF, (35) Renames a file 3-193
* ROUT: (JSYS4NR)ROUT, (55) Performs random output 3-194
* RPACS: (JSYS4NR)RPACS, (57) Reads a page's accessibility 3-195
* RPCAP: (JSYS4NR)RPCAP, (150) Reads process capabilities 3-196
* RSCAN: (JSYS4NR)RSCAN, (500) Accepts a new string or uses the last string as input 3-196
* RTFRK: (JSYS4NR)RTFRK, (322) Returns the handle of a process suspended because of a monitor call intercept 3-198
* RTIW: (JSYS4NR)RTIW, (173) Reads terminal interrupt word 3-198
* RUNTM: (JSYS4NR)RUNTM, (15) Returns runtime of process or job 3-199
* RWM: (JSYS4NR)RWM, (135) Reads waiting channel interrupt word mask 3-199
* RWSET: (JSYS4NR)RWSET, (176) Releases the working set 3-200
* SACTF: (JSYS4SZ)SACTF, (62) Sets account designator of file 3-200
* SAVE: (JSYS4SZ)SAVE, (202) Saves a file as nonsharable 3-201
* SCTTY: (JSYS4SZ)SCTTY, (324) Changes controlling terminal 3-202
* SCVEC: (JSYS4SZ)SCVEC, (301) Sets entry vector of compatibility package 3-203
* SDSTS: (JSYS4SZ)SDSTS, (146) Sets device's status 3-204
* SDVEC: (JSYS4SZ)SDVEC, (543) Sets entry vector of RMS 3-205
* SETER: (JSYS4SZ)SETER, (336) Sets the last error in a process 3-206
* SETJB: (JSYS4SZ)SETJB, (541) Sets job parameters 3-206
* SETNM: (JSYS4SZ)SETNM, (210) Sets program name 3-208
* SETSN: (JSYS4SZ)SETSN, (506) Sets system name for a process 3-208
* SEVEC: (JSYS4SZ)SEVEC, (204) Sets entry vector 3-208
* SFACS: (JSYS4SZ)SFACS, (160) Sets process' ACs 3-209
* SFBSZ: (JSYS4SZ)SFBSZ, (46) Sets file's byte size 3-209
* SFCOC: (JSYS4SZ)SFCOC, (113) Sets file's control character output 3-210
* SFMOD: (JSYS4SZ)SFMOD, (110) Sets a file's mode 3-211
* SFORK: (JSYS4SZ)SFORK, (157) Starts a process 3-211
* SFPOS: (JSYS4SZ)SFPOS, (526) Sets terminal's position 3-212
* SFPTR: (JSYS4SZ)SFPTR, (27) Sets file's pointer position 3-212
* SFRKV: (JSYS4SZ)SFRKV, (201) Starts process using its entry vector 3-213
* SFTAD: (JSYS4SZ)SFTAD, (534) Sets file's time and dates 3-214
* SFUST: (JSYS4SZ)SFUST, (551) Sets author and last writer name strings 3-215
* SIBE: (JSYS4SZ)SIBE, (102) Skips if input buffer is empty 3-216
* SIN: (JSYS4SZ)SIN, (52) Performs string input 3-216
* SINM: (JSYS4SZ)SINM, (571) Reads data from block-mode terminals x-xx
* SINR: (JSYS4SZ)SINR, (531) Performs record input 3-218
* SIR: (JSYS4SZ)SIR, (125) Sets software interrupt table addresses 3-219
* SIRCM: (JSYS4SZ)SIRCM, (142) Sets inferior reserved channel mask 3-220
* SIZEF: (JSYS4SZ)SIZEF, (36) Gets the size of a file 3-221
* SJPRI: (JSYS4SZ)SJPRI, (245) Sets job's priority 3-221
* SKED%: (JSYS4SZ)SKED%, (577) Performs services relating to the class scheduler x-xx
* SKPIR: (JSYS4SZ)SKPIR, (127) Tests the state of the software interrupt system 3-222
* SNDIM: (JSYS4SZ)SNDIM, (750) Sends a message to ARPANET special message queue x-xx
* SMON: (JSYS4SZ)SMON, (6) Sets monitor flags 3-222
* SNOOP: (JSYS4SZ)SNOOP, (516) Performs system analysis 3-223
* SOBE: (JSYS4SZ)SOBE, (103) Skips if output buffer is empty 3-227
* SOBF: (JSYS4SZ)SOBF, (175) Skips if output buffer is full 3-227
* SOUT: (JSYS4SZ)SOUT, (53) Performs string output 3-228
* SOUTM: (JSYS4SZ)SOUTM, (572) Writes data to block mode terminals x-xx
* SOUTR: (JSYS4SZ)SOUTR, (532) Performs record output 3-229
* SPACS: (JSYS4SZ)SPACS, (60) Sets a page's accessibility 3-230
* SPJFN: (JSYS4SZ)SPJFN, (207) Sets the primary JFNs 3-231
* SPLFK: (JSYS4SZ)SPLFK, (314) Splices a process structure 3-232
* SPOOL: (JSYS4SZ)SPOOL, (517) Defines and initializes input spooling 3-232
* SPRIW: (JSYS4SZ)SPRIW, (243) Sets the priority word 3-234
* SSAVE: (JSYS4SZ)SSAVE, (203) Saves a file as sharable 3-235
* STAD: (JSYS4SZ)STAD, (226) Sets system date and time 3-236
* STCMP: (JSYS4SZ)STCMP, (540) Compares two strings 3-237
* STDEV: (JSYS4SZ)STDEV, (120) Translates string to device designator 3-237
* STI: (JSYS4SZ)STI, (114) Simulates terminal input 3-238
* STIW: (JSYS4SZ)STIW, (174) Sets terminal interrupt word 3-239
* STO: (JSYS4SZ)STO, (246) Simulates terminal output 3-240
* STPAR: (JSYS4SZ)STPAR, (217) Sets terminal parameters 3-241
* STPPN: (JSYS4SZ)STPPN, (556) Translates string to project-programmer number 3-242
* STSTS: (JSYS4SZ)STSTS, (25) Sets a file's status 3-242
* STTYP: (JSYS4SZ)STTYP, (302) Sets the terminal type number 3-243
* SWJFN: (JSYS4SZ)SWJFN, (47) Swaps two JFNs 3-244
* SWTRP%: (JSYS4SZ)SWTRP%, (573) Traps for arithmetic underflow or overflow conditions x-xx
* SYERR: (JSYS4SZ)SYERR, (527) Writes data to the system error file 3-244
* SYSGT: (JSYS4SZ)SYSGT, (16) Returns information for a system table 3-245
* TBADD: (JSYS4SZ)TBADD, (536) Adds entry to command table 3-245
* TBDEL: (JSYS4SZ)TBDEL, (535) Deletes entry from command table 3-246
* TBLUK: (JSYS4SZ)TBLUK, (537) Looks up entry in command table 3-246
* TEXTI: (JSYS4SZ)TEXTI, (524) Reads input from a terminal or a file 3-248
* TFORK: (JSYS4SZ)TFORK, (321) Sets and removes monitor call intercepts 3-252
* THIBR: (JSYS4SZ)THIBR, (770) Blocks the current job 3-254
* TIME: (JSYS4SZ)TIME, (14) Returns time system has been up 3-254
* TIMER: (JSYS4SZ)TIMER, (522) Sets time limit for a job 3-255
* TLINK: (JSYS4SZ)TLINK, (216) Controls terminal linking 3-256
* TMON: (JSYS4SZ)TMON, (7) Tests monitor flags 3-258
* TTMSG: (JSYS4SZ)TTMSG, (775) Sends a message to a terminal 3-259
* TWAKE: (JSYS4SZ)TWAKE, (771) Wakes a specified job 3-259
* UFPGS: (JSYS4SZ)UFPGS, (525) Updates file's pages 3-260
* USAGE: (JSYS4SZ)USAGE, (564) Writes entries into the accounting data file 3-260
* USRIO: (JSYS4SZ)USRIO, (310) Places program in user I/O mode 3-262
* UTEST: (JSYS4SZ)UTEST, (563) Test monitor routines 3-263
* UTFRK: (JSYS4SZ)UTFRK, (323) Resumes a process suspended because of a monitor call intercept 3-264
* VACCT: (JSYS4SZ)VACCT, (566) Validates an account 3-265
* WAIT: (JSYS4SZ)WAIT, (306) Dismisses process until interrupt occurs 3-266
* WFORK: (JSYS4SZ)WFORK, (163) Waits for processes to terminate 3-266
* WILD%: (JSYS4SZ)WILD%, (565) Compares wild and non-wild strings x-xx
Node: GACCT Previous: (JSYS4AF)FLOUT Next: GACTF Up: Top
GACCT JSYS 546
Returns the current account for the specified job.
RESTRICTIONS: some functions require Confidential Information
Access, WHEEL, or OPERATOR capabilities enabled.
ACCEPTS IN AC1: job number, or -1 for current job
AC2: byte pointer to string where alphanumeric account
designator (if any) is to be stored
RETURNS +1: always, with updated pointer to account string in AC2
The GACCT monitor call requires the process to have Confidential
Information Access, WHEEL, or OPERATOR capability enabled if the
specified job number is not for the current job.
The CACCT monitor call can be used to change the account for the
current job.
Generates an illegal instruction interrupt on error conditions below.
GACCT ERROR MNEMONICS:
GACCX1: invalid job number
GACCX2: no such job
GACCX3: Confidential Information Access capability required
(GACTF)
Node: GACTF Previous: GACCT Next: GCVEC Up: Top
GACTF JSYS 37
Returns the account designator to which the specified file is being
charged.
ACCEPTS IN AC1: JFN
AC2: byte pointer to string in caller's address space
where account string (if any) is to be stored
RETURNS +1: failure, error code in AC1
+2: success, account string returned, updated string
pointer in AC2
+3: success, 5B2+account number returned in AC2
The SACTF monitor call can be used to set the account designator to
which the file is to be charged.
GACTF ERROR MNEMONICS:
DESX1: invalid source/destination designator
DESX2: terminal is not available to this job
DESX3: JFN is not assigned
DESX4: invalid use of terminal designator or string pointer
DESX7: JFN cannot refer to output wildcard designators
GACTX1: file is not on multiple-directory device
GACTX2: file expunged
GACTX3: internal format of directory is incorrect
Node: GCVEC Previous: GACTF Next: GDSKC Up: Top
GCVEC JSYS 300
Returns the entry vector and the UUO locations for the compatibility
package.
ACCEPTS IN AC1: process handle
RETURNS +1: always, entry vector length in the left half and
entry vector address in the right half of AC2, and
UUO location in the left half and PC location in the
right half of AC3.
(GCVEC)
If use of the compatibility package has been disabled, AC2 contains -1
on return. If the compatibility package is not available, AC2 and AC3
contain 0 on return.
The SCVEC monitor call can be used to set the entry vector for the
compatibility package.
GCVEC ERROR MNEMONICS:
FRKHX1: invalid process handle
FRKHX2: illegal to manipulate a superior process
FRKHX3: invalid use of multiple process handle
Node: GDSKC Previous: GCVEC Next: GDSTS Up: Top
GDSKC JSYS 214
Returns information on the given structure's disk usage and
availability. This call is useful in determining storage usage.
ACCEPTS IN AC1: device designator, must be a designator for a
structure. If the generic designator DSK: is given,
the connected structure is assumed.
RETURNS +1: always, number of pages in use in AC1, and number of
pages not in use in AC2.
GDSKC ERROR MNEMONICS:
DEVX1: invalid device designator
Node: GDSTS Previous: GDSKC Next: GDVEC Up: Top
GDSTS JSYS 145
Returns the status of a device for user I/O. (Refer to Section 2.4
for the descriptions of the status bits.) This call requires that the
device be opened.
Also, this call will not return the status of a device for monitor
I/O. For example, if GDSTS is executed after a tape mark is written
(a monitor I/O operation) the GDSTS call will return the status of the
last user record written.
ACCEPTS IN AC1: JFN
RETURNS +1: always, device-dependent status bits in AC2, and
(GDSTS)
device-dependent information in AC3. For magnetic
tape, AC3 contains the positive count of number of
hardware bytes actually transferred in the left half
and zero in the right half. For the line printer,
AC3 contains the last value of the page counter
register, or -1 if there is no page counter register.
For ARPANET, the call/return sequence is:
ACCEPTS IN AC1: JFN
RETURNS +1: always, for network connection-files, the values
returned are:
AC2: connection state (octal values 01 thru 16) in bits 0
thru 3
AC3: foreign host number (octal)
AC4: foreign socket number (octal)
The GDSTS call is a no-op for devices without device-dependent status
bits.
The SDSTS monitor call can be used to set the status bits for a
particular device.
Generates an illegal instruction interrupt on error conditions below.
GDSTS ERROR MNEMONICS:
DESX1: invalid source/destination designator
DESX2: terminal is not available to this job
DESX3: JFN is not assigned
DESX4: invalid use of terminal designator or string pointer
DESX5: file is not open
Node: GDVEC Previous: GDSTS Next: GET Up: Top
GDVEC JSYS 542
Returns the entry vector for the Record Management System (RMS).
ACCEPTS IN AC1: process handle
RETURNS +1: always, entry vector length in the left half and the
entry vector address in the right half of AC2.
(GDVEC)
The SDVEC monitor call can be used to set the entry vector for RMS.
Generates an illegal instruction interrupt on error conditions below.
GDVEC ERROR MNEMONICS:
ILINS5: RMS facility is not available
Node: GET Previous: GDVEC Next: GETAB Up: Top
GET JSYS 200
Gets a save file, copying or mapping it into the process as
appropriate, and updates the process' entry vector from the file.
This call can be executed for either sharable or nonsharable save
files that were created with the SSAVE or SAVE monitor call,
respectively. The file must not be open.
ACCEPTS IN AC1: process handle in left half, and flag bits and a JFN
in right half.
AC2: lowest process page number in left half, and highest
process page number in right half. This controls the
parts of memory that are loaded when GT%ADR is on.
RETURNS +1: always
The defined flag bits in AC1 are as follows:
Bit Symbol Meaning
19 GT%ADR Use the memory address limits given in AC2.
If this bit is off, all existing pages of the
file (according to its directory) are mapped.
20 GT%PRL Preload the pages being mapped (i.e., move
the pages immediately.) If this bit is off,
the pages are read in from the disk when they
are referenced.
21 GT%NOV Do not overlay existing pages and do return
an error. If this bit is off, existing pages
will be overlaid.
22 GT%FL2 Read additional flag bits specified in AC3
(reserved for future development).
The JFN is given in bits 24 through 35 of AC1.
The following table demonstrates how mapping occurs when different
page numbers are supplied in AC2. A dash indicates that a particlar
(GET)
save file page was not mapped into the process. Also, note that page
0 of the save file (the directory page) is never mapped.
AC2 File Process
Contents Page Page
0,,4 0 -
1 0
2 1
3 2
4 3
5 4
2,,4 0 -
1 -
2 -
3 2
4 3
5 4
When the GET call is executed for a sharable save file, pages from the
file are mapped into pages in the process, and the previous contents
of the process' page are overwritten. If the file contains data for
only a portion of the process' page, the remainder of the page is
zeroed. Pages of the process not used by the file are unchanged.
When the GET call is executed for a nonsharable save file, individual
words of the file are written into the process. Since these files
usually do not have words containing all zeros, a GET call executed
for a nonsharable file never clears memory.
The GET call never loads the accumulators.
Can cause several software interrupts or process terminations on
certain file conditions.
A GET call performed on an execute-only process is illegal unless the
process is .FHSLF. If the JFN specified in the GET call refers to a
file for which the user only has execute-only access, then the process
specified must be a virgin process.
(GET)
Generates an illegal instruction interrupt on error conditions below.
GET ERROR MNEMONICS:
FRKHX1: invalid process handle
FRKHX2: illegal to manipulate a superior process
FRKHX3: invalid use of multiple process handle
FRKHX8: illegal to manipulate an execute-only process
GETX1: invalid save file format
GETX2: system Special Pages Table full
GETX3: illegal to overlay existing pages
SSAVX1: illegal to save files on this device
OPNX2: file does not exist
All file errors can occur.
Node: GETAB Previous: GET Next: GETER Up: Top
GETAB JSYS 10
Returns a word from the specified system table. (Refer to Section
2.3.2.)
ACCEPTS IN AC1: index into table in the left half, and table number
in the right half
RETURNS +1: failure, error code in AC1
+2: success, 36-bit word from the specified table in AC1
If -1 is given as the index, this call returns the negative of the
length of the specified table.
The table number can be obtained with the SYSGT call. However, the
recommended procedure is to use the symbol definition from the MONSYM
file for the table number. (Refer to Appendix A for the system table
definitions.)
The GETAB monitor call requires the process to have GETAB capability
available, but not enabled (SC%GTB in the process capability word).
Note: The following tables are not a complete list of all GETAB
tables. These are ones used for the Ethernet and are not otherwise
readily available
.PUPPA==:62 ; PUP PARAMETER TABLE
.PUPRO==:63 ; HOST NUMBER AND ROUTING TABLE
.PUPLS==:64 ; LOCAL SOCKET NUMBERS,
.PUPLN==:65 ; LOCAL NET/HOST NUMBERS, BSP LINKAGE
.PUPFP==:66 ; FOREIGN PORTS
.PUPSW==:67 ; PUP STATUS WORD
.PUPBU==:70 ; STORAGE REGION FOR PUP DATA
.PUSTA==:71 ; STATISTCS
.PUPBG==:72 ; PUP BUG COUNT HASH TABLE
.NVTPU==:73 ; PUP NVT INFO (TTYPUP WORD IN DYNAMIC DATA)
GETAB ERROR MNEMONICS:
GTABX1: invalid table number
GTABX2: invalid table index
GTABX3: GETAB privileges required
Node: GETER Previous: GETAB Next: GETJI Up: Top
GETER JSYS 12
(GETER)
Returns the most recent error condition encountered in a process. The
most recent error is always saved in the Process Storage Block.
ACCEPTS IN AC1: process handle
RETURNS +1: always, process handle in left half of AC2 and most
recent error condition in right half of AC2.
The SETER monitor call can be used to set the last error condition
encountered in a process.
GETER ERROR MNEMONICS:
LSTRX1: process has not encountered any errors
Node: GETJI Previous: GETER Next: GETNM Up: Top
GETJI JSYS 507
Returns information for the specified job.
ACCEPTS IN AC1: job number, or -1 for current job, or 400000+TTY
number
AC2: negative of the length of the block in which to store
the information in the left half, and the beginning
address of the block in the right half
AC3: word number (offset) of first entry desired from job
information table
RETURNS +1: failure, error code in AC1
+2: success, with updated pointer in AC2 and requested
entries stored in specified block
When a terminal designator is given in AC1, the information returned
is for the job running on that terminal.
The system begins copying the entries from the job information table,
starting with the offset given in AC3, into the address specified in
the right half of AC2. The number of entries copied is minus the
number given in the left half of AC2 or is the number remaining in the
table, whichever is smaller. Because AC2 is updated on a successful
return, it cannot be used for the returned data.
The format of the job information table is as follows:
Word Symbol Meaning
0 .JIJNO Job number
1 .JITNO Job's terminal number (-1 means the job is
(GETJI)
detached)
2 .JIUNO Job's user number
3 .JIDNO Job's connected directory number
4 .JISNM Subsystem name (SIXBIT)
5 .JIPNM Program name (SIXBIT)
6 .JIRT Run time
7 .JICPJ Controlling PTY job number (-1 means the job
is not controlled by a PTY)
10 .JIRTL Run time limit (as set by the TIMER call)
A zero means no time limit is in effect.
11 .JIBAT Job is controlled by Batch, if -1 (as set by
the MTOPR call)
12 .JIDEN Default for magnetic tape density (as set by
the SETJB call)
13 .JIPAR Default for magnetic tape parity (as set by
the SETJB call)
14 .JIDM Default for magnetic tape data mode (as set
by the SETJB call)
15 .JIRS Default number for magnetic tape record size
in bytes (as set by the SETJB call)
16 .JIDFS Deferred spooling in effect, if 1 (as set by
the SETJB call)
17 .JILNO Job's logged-in directory number
20 .JISRM Byte pointer to area to receive job's session
remark. This pointer is supplied by the user
before issuing the GETJI call.
21 .JILLN Job's last login date and time
22 .JISRT Job CPU time at start of last session. To
compute CPU time for this session, subtract
.JISRT value from current job CPU time
(.JIRT).
23 .JISCT Console time at start of last session. To
compute the console time for this session,
subtract .JISCT value from current console
time (obtainable with RUNTM monitor call).
24 .JIT20 Indicates if job is at EXEC level or program
level. (-1 = EXEC, 0 = program)
25 .JISTM Returns time when job was created (when
CTRL/C was performed). -1 is returned if the
system time and date were not set when the
job started.
GETJI ERROR MNEMONICS:
GTJIX1: invalid index
GTJIX2: invalid terminal line number
GTJIX3: invalid job number
GTJIX4: no such job
(GETNM)
Node: GETNM Previous: GETJI Next: GETOK% Up: Top
GETNM JSYS 177
Returns the name of the program currently being used by the job. This
name will have been declared previously with the SETNM or SETSN
monitor call.
RETURNS +1: always, SIXBIT name of program in AC1
Node: GETOK% Previous: GETNM Next: GEVEC Up: Top
GETOK% JSYS 574
Requests approval for the specified system resource from the
installation's access-control program.
ACCEPTS IN AC1: function code
AC2: address of argument block (if required)
AC3: length of the argument block (the maximum permissable
length is specified by symbol .GOKMC)
AC4: requested for job
RETURNS +1: always, 0 or 1B18 set to zero in first word of status
block if access granted
1B18 set to one + error number in first word of
status block if request denied
Function Codes:
Code Symbol Meaning
(GETOK%)
1 .GOASD Assign a device
Argument block (user specified):
Word Symbol Contents
0 .GEERB Error block address
1 .GEADD Device designator (returned
by STDEV JSYS)
2 .GOCAP Enable capabilities (right half privileges
only)
Argument block (user specified):
Word Symbol Contents
0 .GEERB Status block address
1 .GENCP New capability word
3 .GOCJB Allow CRJOB JSYS to be executed
Argument block (user specified):
Word Symbol Contents
0 .GEERB Status block address
4 .GOLOG Allow LOGIN
Argument block (user specified):
Word Symbol Contents
0 .GEERB Status block address
1 .GELUN User number
5 .GOCFK Allow CFORK (only done after Nth fork)
Argument block (user specified):
Word Symbol Contents
0 .GEERB Status block address
1 .GEFCT Number of forks already in
use by job
6 .GOTBR Set terminal baud rate
Argument block (user specified):
Word Symbol Contents
0 .GEERB Status block address
1 .GELIN Line number
(GETOK%)
2 .GESPD Line speed
7 .GOLGO Allow logout when the directory is over quota
Argument block (user specified):
Word Symbol Contents
0 .GEERB Status block address
1 .GEUSD Number of pages used
2 .GEQUO Quota
3 .GERLG Job requesting logout or -1
for this job
10 .GOENQ Allow setting of ENQ quota
Argument block (user specified):
Word Symbol Contents
0 .GEERB Status block address
1 .GEEQU Desired quota
2 .GEEUN Job number request is for or
-1 for this job
11 .GOCRD Allow directory creation
Argument block (user specified):
Word Symbol Contents
0 .GEERB Status block address
12 .GOSMT Allow MOUNT of structure
Must be given once to increment the mount
count and once to decrement the mount count.
Argument block (user specified):
Word Symbol Contents
0 .GEERB Status block address
1 .GESDE Device designator (returned
by STDEV JSYS)
13 .GOMDD Allow entry to MDDT
Argument block (user specified):
Word Symbol Contents
0 .GEERB Status block address
14 .GOCLS Verify scheduler class assignment for a job
(GETOK%)
Argument block (user specified):
Word Symbol Contents
0 .GEERB Status block address
1 .GEJOB Job number
2 .GECLS Class desired
15 .GLCL0 Set scheduler class at login
Argument block (user specified):
Word Symbol Contents
0 .GEERB Status block address
1 .GEJOB Job
2 .GECLS Class desired
16 .GOMTA MT: access request
Argument block (user specified):
Word Symbol Contents
0 .GEERB Status block address
1 .GEACC Access code from HDR1 label
2 .GEUSN User number
3 .GEUNT MT: unit number
4 .GEACD Desired access bits
5 .GELTP Label type
400000+n Customer reserved functions
Status block format (returned):
Word 0: 1B18 + Error number if access denied
or zero if access granted
Note that some access-control programs may
return a value in word 0 even if access is
granted. In that case, 1B18 set to zero
indicates access was granted.
Word 1: Byte pointer (optional, depending on the
particular access-control program)
Word 2: Byte count (optional, depending on the
particular access-control program)
The format of the status block for user-defined functions will depend
on the design of the particular access-control program.
Generates an illegal instruction interrupt on error conditions below.
(GETOK%)
GETOK% ERROR MNEMONICS:
ARGX04: Argument block too small
ARGX05: Argument block too long
MONX01: Insufficient system resources
GOKER1: Illegal function
GOKER2: Request denied by Access Control Facility
GOKER3: Access control job already running
Node: GEVEC Previous: GETOK% Next: GFRKH Up: Top
GEVEC JSYS 205
Returns the entry vector of the specified process. (Refer to Section
2.7.3.)
ACCEPTS IN AC1: process handle
RETURNS +1: always, specified process' entry vector word in AC2
The SEVEC monitor call can be used to set the process' entry vector.
Generates an illegal instruction interrupt on error conditions below.
GEVEC ERROR MNEMONICS:
FRKHX1: invalid process handle
FRKHX2: illegal to manipulate a superior process
FRKHX3: invalid use of multiple process handle
Node: GFRKH Previous: GEVEC Next: GFRKS Up: Top
GFRKH JSYS 164
Gets a handle on a process that currently is not known to the caller
but is known to another process. The handle returned can then be used
by the caller to refer to the desired process.
ACCEPTS IN AC1: process handle of the process that knows about the
desired process and that currently has a handle on
it.
AC2: process handle used by the process in AC1 to refer to
the desired process. This handle must be a relative
handle (i.e., in the range 400000 to 400777) and must
refer to an existing process.
(GFRKH)
RETURNS +1: failure, with error code in AC1.
+2: success, with a handle in AC1 that is usable by the
caller to refer to the desired process. This handle
is not the same as the one given in AC2 (i.e., is
different from the one used by the process in AC1 to
refer to the desired process).
Generates an illegal instruction interrupt on error conditions below.
GFRKH ERROR MNEMONICS:
FRKHX1: invalid process handle
FRKHX2: illegal to manipulate a superior process
FRKHX3: invalid use of multiple process handle
FRKHX6: all relative process handles in use
GFRKX1: invalid process handle
Node: GFRKS Previous: GFRKH Next: GFUST Up: Top
GFRKS JSYS 166
Returns the process structure of the current job from a given process
downward.
ACCEPTS IN AC1: process handle of the starting point
AC2: B0(GF%GFH) return relative process handles for each
process
B1(GF%GFS) return status for each process
AC3: negative of the word count of the block in which to
store the structure in the left half, and the address
of the first word of the block in the right half
RETURNS +1: failure, error code in AC1
+2: success, all process handles are returned
The handle of the current process is always returned as .FHSLF
regardless of the setting of GF%GFH. Any user can specify a process
handle of .FHTOP (i.e., start with the top level process). However,
the user must have WHEEL or OPERATOR capability enabled to specify
.FHTOP and set GF%GFH; otherwise, the setting of GF%GFH is ignored.
Table format
(GFRKS)
**********************************************
* * *
3 words * parallel * inferior *
per entry * pointer * pointer *
* * *
**********************************************
* * *
* superior * process handle *
* pointer * or 0 if GF%GFH *
* * was off, or when no *
* * more process handles *
* * are left for the *
* * process *
* * *
**********************************************
* *
This word is * status word *
-1 if GF%GFS * *
is off. * *
**********************************************
NOTE
Pointers in table are memory addresses
of other table entries, or 0 if no such
structure.
The execution of the GFRKS call will be terminated before the entire
structure has been returned if either all handles are in use or the
block in which to store the structure is too small. If this happens,
as much of the structure as possible is returned before an error code
is generated.
Generates an illegal instruction interrupt on error conditions below.
GFRKS ERROR MNEMONICS:
FRKHX1: invalid process handle
FRKHX2: illegal to manipulate a superior process
FRKHX3: invalid use of multiple process handle
FRKHX6: all relative process handles in use
GFKSX1: area too small to hold process structure
Node: GFUST Previous: GFRKS Next: GIVOK% Up: Top
GFUST JSYS 550
(GFUST)
Returns the name of either the author of the file or the user who last
wrote to the file.
ACCEPTS IN AC1: function code in the left half, and JFN of the file
in the right half
AC2: pointer to the string in which to store the name
RETURNS +1: always, with an updated string pointer in AC2
The defined functions are as follows:
Code Symbol Meaning
0 .GFAUT Return the name of the author of the file.
1 .GFLWR Return the name of the user who last wrote to the
file.
The SFUST monitor call can be used to set the name of either the
author of the file or the user who last wrote to the file.
Generates an illegal instruction interrupt on error conditions below.
GFUST ERROR MNEMONICS:
GFUSX1: invalid function
GFUSX2: insufficient system resources
GFUSX3: file expunged
GFUSX4: internal format of directory is incorrect
DESX1: invalid source/destination designator
DESX2: terminal is not available to this job
DESX3: JFN is not assigned
DESX4: invalid use of terminal designator or string pointer
DESX5: file is not open
DESX7: JFN cannot refer to output wildcard designators
DESX8: file is not on disk
DESX10: structure is dismounted
DELFX6: internal format of directory is incorrect
DIRX2: insufficient system resources
DIRX3: internal format of directory is incorrect
(GIVOK%)
Node: GIVOK% Previous: GFUST Next: GJINF Up: Top
GIVOK% JSYS 576
Allows a privileged access-control program (written by the
installation) to allow or disallow a user program's access to a
specified system resource.
RESTRICTIONS: Requires enabled WHEEL or OPERATOR capability.
ACCEPTS IN AC1: Request number (from RCVOK% message)
AC2: 0 or 1B18 set to zero = request allowed
1B18 + error number = request denied
AC3: pointer to ASCIZ string (maximum of 80 characters) or
0. This string is an error message or information
message to be returned to the user.
RETURNS +1: always
Returns an illegal instruction interrupt on error conditions below.
GIVOK% ERROR MNEMONICS:
CAPX1: wheel or operator capability required
GOKER3: Access control job already running
Node: GJINF Previous: GIVOK% Next: GNJFN Up: Top
GJINF JSYS 13
Returns information pertaining to the current job.
RETURNS +1: always, with
AC1 containing the user number under which the job is
running.
AC2 containing the directory number to which the job
is connected.
AC3 containing the job number.
AC4 containing the terminal number attached to the
job, or -1 if no terminal is attached to job.
Node: GNJFN Previous: GJINF Next: GPJFN Up: Top
GNJFN JSYS 17
(GNJFN)
Assigns the JFN to the next file in a group of files that have been
specified with wildcard characters. The next file in the group is
determined by searching the directory in the order described in
Section 2.2.3 (i.e., in the internal directory order). The flags
returned from the GTJFN call are given to the GNJFN call as an
argument to indicate the fields of the file specification that contain
wildcard characters.
ACCEPTS IN AC1: indexable file handle returned by GTJFN (i.e., flags
returned by GTJFN in the left half and the JFN in the
right half)
RETURNS +1: failure, including no more files in the group. JFN
is released if there are no more files in the group.
This return occurs on the first call to GNJFN if no
flags indicating wildcard fields are on in the left
half of AC1.
+2: success, same JFN is assigned to the next file in the
group. The following flags are set (if appropriate)
in the left half of AC1:
B13 GN%STR structure changed
B14 GN%DIR directory changed
B15 GN%NAM name changed
B16 GN%EXT file type changed
The GNJFN call uses the flags returned in the left half of AC1 on a
GTJFN call to determine the fields containing wildcards and the
default generation number. Note that the GNJFN call returns a
different set of flags in the left half of AC1 than the GTJFN call
returns. Because all calls to GNJFN should use the flags originally
returned by GTJFN, programs must save the returned GTJFN flags for use
in the GNJFN call.
The file currently associated with the JFN must be closed when the
GNJFN call is executed.
A JFN will not be returned for a file on a regulated structure unless
the MSTR JSYS has been first used to increment the mount count. All
structures are regulated by default except the primary structure (PS:
on most systems) or any structure that has been made non-regulated
with the MSTR JSYS. A job must release all its JFNs for a regulated
structure before it can decrement the mount count.
GNJFN ERROR MNEMONICS:
DESX1: invalid source/destination designator
DESX2: terminal is not available to this job
DESX3: JFN is not assigned
(GNJFN)
DESX4: invalid use of terminal designator or string pointer
GNJFX1: no more files in this specification
OPNX1: file is already open
STRX09: prior structure mount required
Node: GPJFN Previous: GNJFN Next: GTAD Up: Top
GPJFN JSYS 206
Returns the primary JFNs of the specified process.
ACCEPTS IN AC1: process handle
RETURNS +1: always, primary input JFN in the left half of AC2,
and the primary output JFN in the right half of AC2.
The SPJFN monitor call can be used to set the primary JFNs. If this
call has not been given, the GPJFN call returns -1 in AC2.
Generates an illegal instruction interrupt on error conditions below.
GPJFN ERROR MNEMONICS:
FRKHX1: invalid process handle
FRKHX2: illegal to manipulate a superior process
FRKHX3: invalid use of multiple process handle
Node: GTAD Previous: GPJFN Next: GTDAL Up: Top
GTAD JSYS 227
Returns the current date in the internal system format. (Refer to
Section 2.8.2.)
RETURNS +1: always, day in the left half of AC1, and fraction of
day in right half of AC1
If the system does not have the current date set, AC1 contains -1.
The STAD monitor call can be used to set the system's date.
(GTDAL)
Node: GTDAL Previous: GTAD Next: GTDIR Up: Top
GTDAL JSYS 305
Returns the disk allocation for the specified directory.
ACCEPTS IN AC1: directory number (-1 indicates the connected
directory)
RETURNS +1: always, with
AC1 containing the working disk storage limit
(logged-in quota) for the directory.
AC2 containing the number of pages being used.
AC3 containing the permanent disk storage limit
(logged-out quota) for the directory.
Generates an illegal instruction interrupt on error conditions below.
GTDAL ERROR MNEMONICS:
DIRX1: invalid directory number
DELFX6: internal format of directory is incorrect
Node: GTDIR Previous: GTDAL Next: GTFDB Up: Top
GTDIR JSYS 241
Returns information about the given directory.
RESTRICTIONS: some functions require WHEEL or OPERATOR capabilities
enabled.
ACCEPTS IN AC1: directory number
AC2: address of argument block in caller's address space
in which to store the directory information
AC3: byte pointer to string in which to store the password
RETURNS +1: always, updated byte pointer in AC3
The argument block returned to the caller is compatible with the one
given on the CRDIR call. Word 0(.CDLEN) contains the length of the
argument block in which to store the directory information being
returned. If this word is zero, the length of the argument block is
assumed to be 15 octal words long. The password of the directory is
placed in the string indicated by AC3, and word 1(.CDPSW) of the
returned argument block points to this string. Because the group list
format includes a count word, the number of groups returned is one
less than the count. The group list is terminated by a zero word.
(GTDIR)
If the given directory number is zero, the GTDIR monitor call returns
the system default settings for the following directory parameters:
working disk storage quota (.CDLIQ)
permanent disk storage quota (.CDLOQ)
default file protection (.CDFPT)
default directory protection (.CDDPT)
default file retention count (.CDRET)
maximum number of subdirectories allowed (.CDSDQ)
online expiration period (.CDDNE)
offline expiration period (.CDDFE)
Either one of the following conditions must be satisfied for the
caller to obtain all information (including the password) about the
given directory.
1. The caller has WHEEL or OPERATOR capability enabled.
2. The caller is connected to the directory that is immediately
superior to the given directory.
To obtain all information other than the password of the given
directory, the caller must have at least owner access to the
directory. (Refer to Section 2.2.6 for a description of owner
access.)
Generates an illegal instruction interrupt on error conditions below.
GTDIR ERROR MNEMONICS:
GTDIX1: WHEEL or OPERATOR capability required
GTDIX2: invalid directory number
Node: GTFDB Previous: GTDIR Next: GTHST Up: Top
GTFDB JSYS 63
Returns some or all of the file descriptor block for the specified
file. (Refer to Section 2.2.8 for the format of this block.)
The GFUST monitor call must be used to obtain the name strings of the
author of the file (.FBAUT) and of the user who last wrote the file
(.FBLWR). The GACTF monitor call is used to obtain the account
designator of the file (.FBACT).
ACCEPTS IN AC1: JFN
AC2: number of words to be read in the left half and the
word number (offset) of the first entry desired from
the file descriptor block in the right half. The
following instruction will set up AC2 for reading the
(GTFDB)
entire FDB:
HRLZI AC2,.FBLEN
AC3: address in caller's address space for storing the
data returned
RETURNS +1: always
The program receives an error (GFDBX2) if it requests more words than
there are words remaining in the FDB.
The CHFDB monitor call can be used to change most words in the file
descriptor block for a specified file. Section 2.2.8 lists the words
that can be changed with CHFDB. The SFUST monitor call is used to
change the name strings of the author (.FBAUT) and the last writer
(.FBLWR). The SACTF call is used to change the account designator of
the file (.FBACT).
Generates an illegal instruction interrupt on error conditions below.
GTFDB ERROR MNEMONICS:
GFDBX1: invalid displacement
GFDBX2: invalid number of words
GFDBX3: list access required
DESX1: invalid source/destination designator
DESX3: JFN is not assigned
DESX4: invalid use of terminal designator or string pointer
DESX7: JFN cannot refer to output wildcard designators
Node: GTHST Previous: GTFDB Next: GTJFN-LONG Up: Top
GTHST JSYS 273
Obtains information about ARPANET hosts.
RESTRICTIONS: for ARPANET systems only
ACCEPTS IN AC1: function code
AC2: function-specific argument
AC3: function-specific argument
(GTHST%)
AC4: function-specific argument
RETURNS +1: failure, error code in AC1
+2: success, function-specific data returned in AC's
Code Symbol Function
0 .GTHSZ returns negative number of host names and negative
length of HSTSTS table.
User supplied arguments:
None
Returned data:
AC2: -number host names,,0
AC3: -length of HSTSTS table,,0
AC4: local host number (in 32-bit Internet
format)
1 .GTHIX Returns the name string associated with the host.
If the name returned is a nickname, HS%NCK is on in
the status word.
User supplied arguments:
AC2: destination byte pointer
AC3: index into name table (returned by GETAB)
Returned data:
AC2: updated byte pointer
AC3: host number
AC4: host status
2 .GTHNS Returns the primary name for the given host number
User supplied arguments:
AC2: destination byte pointer
AC3: host number
Returned data:
AC2: updated byte pointer
AC3: host number
AC4: host status
3 .GTHSN Translates the specified host name string to its
host number. If the name specified is a nickname,
then HS%NCK will be on in the status word.
User supplied arguments:
(GTHST%)
AC2: source byte pointer
Returned data:
AC2: updated byte pointer
AC3: host number
AC4: host status
4 .GTHHN Return the current status of the given host
User supplied arguments:
AC3: host number
Returned data:
AC3: host number
AC4: host status
5 .GTHHI Return the host number and status of the host
having the specified index into the host status
table.
User supplied arguments:
AC3: index into HSTSTS (returned by GETAB)
Returned data:
AC3: host number
AC4: host status
Flags in host status word:
Bits Symbol Meaning
1B0 HS%UP Host is up
1B1 HS%VAL Valid status
7B4 HS%DAY Day when up if currently down
37B9 HS%HR Hour
17B13 HS%MIN 5 minute interval
17B17 HS%RSN Reason
1B18 HS%SRV Host is server
1B19 HS%USR Host is user
1B20 HS%NCK Nickname
77B26 HS%STY System tape mask
1B27 HS%NEW RAS, RAR, RAP, etc
1B26 .HS10X TENEX
2B26 .HSITS ITS
3B26 .HSDEC TOPS-10
4B26 .HSTIP TIP
5B26 .HSMTP MTIP
6B26 .HSELF ELF
7B26 .HSANT ANTS
10B26 .HSMLT MULTICS
(GTHST%)
11B26 .HST20 TOPS-20
12B26 .HSUNX UNIX
GTHST% ERROR MNEMONICS:
ARGX02: Invalid function
GTHSX1: Unknown host number
GTHSX2: No number for that host name
GTHSX3: No string for that host number
GTJIX1: Invalid index
Node: GTJFN-LONG Previous: GTHST Next: GTJFN-SHORT Up: Top
GTJFN JSYS 20
LONG FORM
Returns a JFN for the specified file. Accepts the specification for
the file from both a string in memory and from a file. If both are
given as arguments, the string is used first, and then the file is
(GTJFN)
used if more fields are needed to complete the specification. This
form also allows the program to specify nonstandard values to be used
for omitted fields and to request the assignment of a specific JFN.
A JFN will not be returned for a file on a regulated structure unless
the MSTR JSYS has been first used to increment the mount count. All
structures are regulated by default except the primary structure (PS:
on most systems) or any structure that has been made non-regulated
with the MSTR JSYS. A job must release all its JFNs for a regulated
structure before it can decrement the mount count.
ACCEPTS IN AC1: 0 in the left half, and address of the beginning of
the argument table in the caller's address space in
the right half
AC2: byte pointer to ASCIZ file specification string in
the caller's address space, or 0 if none
RETURNS +1: failure, error code in AC1
+2: success, flags in the left half of AC1, and the JFN
assigned in the right half of AC1. (This word is
called an indexable file handle and is given to the
GNJFN call as an argument.) Updated string pointer in
AC2, if pertinent.
All I/O errors can occur. These errors cause software interrupts or
process terminations, and only a single return (+1) is given.
The format of the argument table specified by the right half of AC1 is
described below. Words 0 through 10 (.GJGEN-.GJJFN) must be supplied
in the long form of the GTJFN call. The remaining words are optional,
and if they are supplied, B15(GJ%XTN) of word .GJGEN must be on.
Word Symbol Meaning
0 .GJGEN Flag bits in the left half and generation number
in the right half. (See below.)
1 .GJSRC Input JFN in the left half and output JFN in the
right half. To omit either JFN, specify .NULIO
(377777).
2 .GJDEV Byte pointer to ASCIZ string that specifies the
default device to be used when none is given. If
this word is 0, the user's connected structure
will be used.
3 .GJDIR Byte pointer to ASCIZ string that specifies the
default directory to be used when none is given.
If this word is 0, the user's connected directory
will be used.
(GTJFN)
4 .GJNAM Byte pointer to ASCIZ string that specifies the
default filename to be used when none is given.
If this word is 0, either the string or the input
JFN must supply the filename.
5 .GJEXT Byte pointer to ASCIZ string that specifies the
default file type to be used when none is given.
If this word is 0, the null file type will be
used.
6 .GJPRO Byte pointer to ASCIZ string that specifies the
default protection to be used when none is given.
If this word is 0, the default protection as
specified in the directory or the protection of
the next lower generation will be used.
7 .GJACT Byte pointer to ASCIZ string that specifies the
default account to be used when none is given. If
this word is 0, the user's LOGIN account (unless
changed) will be used.
10 .GJJFN The JFN to associate with the file specification
if flag GJ%JFN is set in word 0 (.GJGEN) of the
argument block.
11 .GJF2 Extended argument block if B15(GJ%XTN) is on in
the left half of .GJGEN. This word contains a
second group of flags in the left half and the
count of the number of words following this word
in the argument block in the right half. The
flags in the left half specify additional control
over the GTJFN process. The following flags are
defined:
B0(G1%RND) Return to the caller if the filename
buffer becomes empty, and the user
attempts to delete a character. This
can occur if the user, when giving the
filename, types a CTRL/U or types a
DELETE or CTRL/W and there are no more
characters in the buffer.
B2(G1%NLN) Filenames cannot be longer than 6
characters and file types cannot be
longer than 3 characters. In addition,
the generation number, temporary
status, protection, and account fields
cannot be specified in the string or
the input data.
B3(G1%RCM) Return the confirmation message to the
caller by placing it in the destination
buffer.
B4(G1%RIE) Return to the caller if the input
(GTJFN)
buffer becomes empty, and the user
attempts to delete a character.
B5(G1%IIN) Ignore the invisible status of the
file. If G1%IIN is not set, the GTJFN
will ignore files that have the
invisible bit set (FB%INV in the FDB)
for subsequent JFN's.
12 .GJCPP Byte pointer to string where GTJFN is to store the
exact copy of the user's typescript (destination
string pointer). This string will contain logical
names, if they were typed by the user, and will
not contain the default fields unless they were
generated through recognition. This string allows
the caller to obtain a true copy of the user's
typescript.
13 .GJCPC Number of bytes available in the destination
string pointed to by .GTCPP (word 12). If a
pointer has been specified but this word is 0, the
monitor assumes the string contains 130 bytes.
14 .GJRTY Byte pointer to the text to be output when the
user types a CTRL/R (i.e., pointer to the CTRL/R
buffer). This pointer cannot be equal to the
pointer given in AC2. (Refer to the TEXTI call
for the definition of CTRL/R text.)
15 .GJBFP Byte pointer to the beginning of the destination
buffer. (obsolete)
16 .GJATR Pointer to the file specification attribute block.
The attribute block has the following format:
Word Contents
0 Count of words in attribute block
(including this word).
1 Byte pointer to argument string.
1+n Byte pointer to argument string.
The ASCIZ argument strings are specified as:
keyword:attribute
The possible keywords and attribute values are as
follows:
Keyword Attribute Value
A: Installation-defined account
string
BDATA: DECnet binary password
(GTJFN)
BLOCK-LENGTH: Magnetic-tape block length
CHARGE: DECnet account string
DATA: DECnet optional data
EXPIRATION-DATE: Magnetic-tape expiration date
FORMAT: Magnetic-tape record format.
The argument may be one of the
following:
Argument Meaning
F Fixed-length records
D Variable-length
records
S Spanned
U Binary files with
36-bits per word
OFF-LINE NONE - display-only keyword.
The attribute is set by setting
bit FB%OFF in word .FBCTL of
the FDB block.
P: Octal file protection value
PASSWORD: DECnet password string
POSITION: File sequence number to
position magnetic-tape to.
RECORD-LENGTH: Magnetic-tape record length
T NONE - display-only keyword.
The attribute is set by setting
bit GJ%TMP in word .GJGEN of
the GTJFN block.
USERID: DECnet user ID string
The flag bits accepted in the left half of .GJGEN (word 0) of the
argument block are basically the same as those accepted in the short
form of the GTJFN call. The entire set of bits is listed below.
(Refer to GTJFN - SHORT FORM for more detailed explanations of these
bits.) The flags that are different in the two forms are GJ%JFN,
GJ%XTN, GJ%FNS, and GJ%SHT.
Bit Symbol Meaning
0 GJ%FOU Create a new version of the file.
1 GJ%NEW The file must not exist.
2 GJ%OLD The file must exist.
3 GJ%MSG Type a message if the user presses ESC to
terminate input.
4 GJ%CFM Confirmation from the user is required.
5 GJ%TMP The file is temporary.
6 GJ%NS Search only the first specification in a multiple
(GTJFN)
logical name definition.
7 GJ%ACC The JFN cannot be accessed by inferior processes.
8 GJ%DEL Ignore the file deleted bit in the FDB.
9-10 GJ%JFN Associate the JFN supplied in .GJJFN (word 10) of
the argument block with the file specification.
The value of this field is interpreted as follows:
Value Meaning
0(.GJDNU) Ignore the JFN supplied.
2(.GJERR) Attempt to assign the JFN supplied and
return an error if it is not available.
3(.GJALT) Attempt to assign the JFN supplied and,
if it is not available, assign an
alternate.
11 GJ%IFG The file specification can contain wildcard
characters.
12 GJ%OFG Associate the JFN with the file specification
string and not the file itself.
13 GJ%FLG Return flags in AC1 on successful completion of
the call.
14 GJ%PHY The physical device is to be used.
15 GJ%XTN The argument block contains more than 10 (octal)
words.
16 GJ%FNS This bit is ignored for the long form of the GTJFN
call.
17 GJ%SHT This bit must be off for the long form of the
GTJFN call.
The generation number given in the right half of .GJGEN (word 0) of
the argument block can be one of the following:
0(.GJDEF) to indicate that the next higher generation number is to
be used if GJ%FOU is on, or to indicate that the highest
existing generation number is to be used if GJ%FOU is
off.
-1(.GJNHG) to indicate that the next higher generation number is to
be used if no generation number is supplied.
-2(.GJLEG) to indicate that the lowest existing generation number
is to be used if no generation number is supplied.
-3(.GJALL) to indicate that all generation numbers are to be used
and that the JFN is to be assigned to the first file in
(GTJFN)
the group, if no generation number is supplied. (Bit
GJ%IFG must be on.)
1-377777 to indicate that the specified number is to be used as
the generation if no generation number is supplied.
On a successful return, flags are returned in the left half of AC1 if
flag bit GJ%IFG, GJ%OFG, or GJ%FLG was on in the call. The flags
returned are the same as those returned in the short form call of
GTJFN.
Refer to the short form of the GTJFN call for the possible error
mnemonics.
Node: GTJFN-SHORT Previous: GTJFN-LONG Next: GTRPI Up: Top
GTJFN JSYS 20
SHORT FORM
Returns a JFN for the specified file. Accepts the specification for
the file from a string in memory or from a file, but not from both.
The string can represent the complete specification for the file:
dev:<directory>name.typ.gen;attributes
One or more fields of the specification can be defined by a logical
name. (Refer to Section 2.2.2.) If any fields are omitted from the
specification, the system will provide the values shown below.
device connected structure
See note below.
directory connected directory
NOTE
If neither device nor directory is
specified, the default is DSK:, not the
user's connected directory. If either
device or directory is specified, the other
is taken from the user's connected
directory.
name no default; this field must be specified
type null
generation highest existing number if the file is an input
file. Next higher number if the file is an output
(GTJFN)
file.
protection protection of the next lower generation or for new
files, protection as specified in the directory.
account account specified when user logged in, unless
changed by the CACCT or SACTF call.
A JFN will not be returned for a file on a regulated structure unless
the MSTR JSYS has been first used to increment the mount count. All
structures are regulated by default except the primary structure (PS:
on most systems) or any structure that has been made non-regulated
with the MSTR JSYS. A job must release all its JFNs for a regulated
structure before it can decrement the mount count.
The JFNS monitor call can be used to obtain the file specification
string associated with a given JFN.
ACCEPTS IN AC1: flag bits in the left half, and default generation
number in the right half
AC2: source designator from which to obtain the file
specification. (Refer to flag bit GJ%FNS for
specific values.)
RETURNS +1: failure, error code in AC1
+2: success, flags in the left half of AC1, and the JFN
assigned in the right half of AC1. (This word is
called an indexable file handle and is given to the
GNJFN call as an argument.) Updated string pointer in
AC2, if pertinent.
All I/O errors can occur. These errors cause software interrupts or
process terminations, and only a single return (+1) is given.
The flag bits that can be specified in AC1 are described as follows.
GTJFN Flag Bits
Bit Symbol Meaning
0 GJ%FOU The file given is to be assigned the
next higher generation number. This
bit indicates that a new version of a
file is to be created and is normally
set if the file is for output use.
1 GJ%NEW The file specification given must not
refer to an existing file (i.e., the
file must be a new file).
(GTJFN)
2 GJ%OLD The file specification given must
refer to an existing file (i.e., the
file must be an old file).
3 GJ%MSG One of the appropriate messages is to
be printed after the file
specification is obtained, if the
system is performing recognition on
the file specification and the user
ends his input by typing an ESC.
!NEW FILE!
!NEW GENERATION!
!OLD GENERATION!
!OK! if GJ%CFM (bit 4) is off
!CONFIRM! if GJ%CFM (bit 4) is on
4 GJ%CFM Confirmation from the user will be
required (if GJ%FNS is on) to verify
that the file specification obtained
is correct. (See below for the valid
confirmation characters.)
5 GJ%TMP The file specified is to be a
temporary file.
6 GJ%NS Only the first specification in a
multiple logical name assignment is to
be searched for the file (i.e., do not
search beyond the first name in a
multiple logical name assignment).
7 GJ%ACC The JFN specified is not to be
accessed by inferior processes in this
job. However, another process can
access the file by acquiring a
different JFN. To prevent the file
from being accessed by other
processes, the user's program should
set OF%RTD(B29) in the OPENF call.
8 GJ%DEL Files marked as deleted are to be
considered by the system when it is
searching for a file to assign to the
JFN.
9-10 GJ%JFN These bits are off in the short form
of the GTJFN call.
11 GJ%IFG The file specification given is
allowed to have one or more of its
fields specified with a wildcard
character (* or %). This bit is used
to process a group of files and is
generally used for input files. The
(GTJFN)
monitor verifies that at least one
value exists for each field that
contains a wildcard and assigns the
JFN to the first file in the group.
The monitor also verifies that fields
not containing wildcards represent a
new or old file according to the
setting of GJ%NEW and GJ%OLD. The
GNJFN call can then be used to obtain
the next file in the group. (Refer to
Section 2.2.3 for more information on
wildcard characters in file
specifications.)
12 GJ%OFG The JFN is to be associated with the
given file specification string only
and not to the actual file. The
string may contain wildcard characters
(* or %) in one or more of its fields.
It is checked for correct punctuation
between fields, but is not checked for
the validity of any field. This bit
allows a JFN to be associated with a
file specification even if the file
specification does not refer to an
actual file. The JFN returned cannot
be used to refer to an actual file
(e.g., cannot be used in an OPENF
call) but can be used to obtain the
original input string (via JFNS). The
fields in this string can then be used
in a GTJFN-long form call as program
defaults. However, if the original
string contains the temporary file
attribute (;T), this attribute is not
"remembered" and thus is not returned
on the JFNS call even though the bit
indicating temporary status (JS%TMP)
is set. All other fields (including
the protection and account fields) can
be returned by JFNS.
12 GJ%OFG When both B11(GJ%IFG) and B12(GJ%OFG)
(Cont.) are on, the GTJFN call parses the
specification given, verifying the
existence of each field. When a
wildcard character appears in a field,
the GTJFN call checks the remaining
fields for correct punctuation and
returns a JFN for the file
specification string only. That is,
once a wildcard character is seen, the
action taken is identical to that
taken when only B12(GJ%OFG) is set.
If no wildcard character appears in
(GTJFN)
the string, the action is the same as
if both bits were off.
13 GJ%FLG Flags are to be returned in the left
half of AC1 on a successful return.
14 GJ%PHY Job-wide logical names (those defined
by the user) are to be ignored by the
monitor for this call.
15 GJ%XTN This bit is off in the short form of
the GTJFN call.
16 GJ%FNS The contents of AC2 are to be
interpreted as follows:
1. If this bit is on, AC2 contains an
input JFN in the left half and an
output JFN in the right half. The
input JFN is used to obtain the
file specification to be
associated with the JFN. The
output JFN is used to indicate the
destination for printing the names
of any fields being recognized.
To omit either JFN, specify .NULIO
(377777).
2. If this bit is off, AC2 contains a
byte pointer to an ASCIZ string in
memory that specifies the file to
be associated with the JFN.
0(.GJDEF) to indicate that the next
higher generation number
of the file is to be used
if GJ%FOU (bit 0) is on,
or to indicate that the
highest existing
generation number of the
file is to be used if
GJ%FOU is off.
18-35 -1(.GJNHG) to indicate that the next
(Cont.) higher generation number
of the file is to be used
if no generation number
is supplied.
-2(.GJLEG) to indicate that the
lowest existing
generation number of the
file is to be used if no
generation number is
supplied.
(GTJFN)
-3(.GJALL) to indicate that all
generation numbers (*) of
the file are to be used
and that the JFN is to be
assigned to the first
file in the group, if no
generation number is
supplied. (Bit GJ%IFG
must be set.)
1-377777 to indicate that the
specified generation
number of the file is to
be used if no generation
number is supplied.
The GTJFN monitor call always reads the terminating character after
the file specification string. (This character can be obtained by
executing the BKJFN call followed by a BIN call.) The valid
terminating characters are:
line feed left parenthesis
CTRL/L right parenthesis
CTRL/Z plus sign
carriage return comma
exclamation point slash
double quotation marks equals sign
number sign at sign (@)
ampersand space
single quotation mark ESC
All of these characters except for ESC are also confirmation
characters (refer to bit GJ%CFM above) and are called confirming
terminators. If a confirming terminator is typed after the string, a
confirmation message will not be typed to the user nor will the user
be required to confirm the string obtained, regardless of the setting
of GJ%MSG and GJ%CFM.
On a successful return, the following flags are returned in the left
half of AC1 if flag bit GJ%IFG, GJ%OFG, or GJ%FLG was on in the call.
Bits Returned on Successful GTJFN Call
Bit Symbol Meaning
0 GJ%DEV The device field of the file
specification contained wildcard
characters.
1 GJ%UNT The unit field of the file
specification contained wildcard
characters. This bit will never be
(GTJFN)
set because wildcard characters are
not allowed in unit fields.
2 GJ%DIR The directory field of the file
specification contained wildcard
characters.
3 GJ%NAM The filename field of the file
specification contained wildcard
characters.
4 GJ%EXT The file type field of the file
specification contained wildcard
characters.
5 GJ%VER The generation number field of the
file specification contained wildcard
characters.
6 GJ%UHV The file used has the highest
generation number because a generation
number of 0 was given in the call.
7 GJ%NHV The file used has the next higher
generation number because a generation
number of 0 or -1 was given in the
call.
8 GJ%ULV The file used has the lowest
generation number because a generation
number of -2 was given in the call.
9 GJ%PRO The protection field of the file
specification was given.
10 GJ%ACT The account field of the file
specification was given.
11 GJ%TFS The file specification is for a
temporary file.
12 GJ%GND Files marked for deletion will not be
considered when assigning JFNs in
subsequent calls. This bit is set if
GJ%DEL was not set in the call.
17 GJ%INV Invisible files will not be considerd
when assigning JFNs in subsequent
calls. This bit is set if G1%IIN is
not set (see long form GTJFN).
GTJFN ERROR MNEMONICS:
GJFX1: desired JFN invalid
(GTJFN)
GJFX2: desired JFN not available
GJFX3: no JFNs available
GJFX4: invalid character in filename
GJFX5: field cannot be longer than 39 characters
GJFX6: device field not in a valid position
GJFX7: directory field not in a valid position
GJFX8: directory terminating delimiter is not preceded by
a valid beginning delimiter
GJFX9: more than one name field is not allowed
GJFX10: generation number is not numeric
GJFX11: more than one generation number field is not allowed
GJFX12: more than one account field is not allowed
GJFX13: more than one protection field is not allowed
GJFX14: invalid protection
GJFX15: invalid confirmation character
GJFX16: no such device
GJFX17: no such directory name
GJFX18: no such filename
GJFX19: no such file type
GJFX20: no such generation number
GJFX21: file was expunged
GJFX22: insufficient system resources (Job Storage Block full)
GJFX23: exceeded maximum number of files per directory
GJFX24: file not found
GJFX27: file already exists (new file required)
GJFX28: device is not on-line
GJFX30: account is not numeric
GJFX31: invalid wildcard designator
(GTJFN)
GJFX32: no files match this specification
GJFX33: filename was not specified
GJFX34: invalid character "?" in file specification
GJFX35: directory access privileges required
GJFX36: internal format of directory is incorrect
GJFX37: input deleted
GJFX38: file not found because output-only device was specified
GJFX39: logical name loop detected
GJFX40: undefined attribute in file specification
GJFX41: file name must not exceed 6 characters
GJFX42: file type must not exceed 3 characters
GJFX43: more than one ;T specification is not allowed
GJFX44: account string does not match
GJFX45: illegal to request multiple specifications for the same
attribute
GJFX46: attribute value is required
GJFX47: attribute does not take a value
GJFX48: GTJFN input buffer is empty
GJFX49: invalid attribute for this device
GJFX51: byte count too small
IOX11: quota exceeded or disk full
DESX9: invalid operation for this device
STRX09: prior structure mount required
Node: GTRPI Previous: GTJFN Next: GTNCP Up: Top
GTRPI JSYS 172
Returns the paging trap information for the specified process.
ACCEPTS IN AC1: process handle
RETURNS +1: always, with
AC1 containing number of pager traps (i.e., the
number of times a trap has occurred to the pager)
for designated process since the process was
started
AC2 containing number of page faults (i.e., the
number of times a trap has resulted in a page
being swapped in) for designated process since
the process was started
AC3 containing time spent (in milliseconds) in page
routines by designated process since the process
was started
The number of pager traps will be greater than or equal to the number
of page faults.
Generates an illegal instruction interrupt on error conditions below.
GTRPI ERROR MNEMONICS:
FRKHX1: invalid process handle
FRKHX2: illegal to manipulate a superior process
FRKHX3: invalid use of multiple process handle
(GTNCP)
Node: GTNCP% Previous: GTRPI Next: GTRPW Up: Top
GTNCP% JSYS 272
Obtains information about the NCP.
RESTRICTIONS: for ARPANET systems only
ACCEPTS IN AC1: function code
AC2: function-specific argument
AC3: function-specific argument
AC4: function-specific argument
RETURNS +1: failure, error code in AC1
+2: success, function-specific data returned in AC's
Code Symbol Function
0 .GTNSZ returns negative number of NCP connections
User supplied arguments:
None
Returned data:
AC2: -number NCP connections,,0
AC3: -number NVTs ,, line number of first NVT
1 .GTNIX Return connection number status
User supplied arguments:
AC2: connection number
AC3: 30 bit address of storage block
AC4: -length of block ,, first data item to
return
Returned data:
(See format of block below)
2 .GTNNI Return status of NVT line number (input connection)
User supplied arguments:
AC2: NVT line number (input)
AC3: 30 bit address of storage block
AC4: -length of block ,, first data item to
return
Returned data:
(GTNCP)
(See format of block below)
3 .GTNNO Return status of NVT connection (output connection)
User supplied arguments:
AC2: NVT line number (output)
AC3: 30 bit address of storage block
AC4: -length of block ,, first data item to
return
Returned data:
(See format of block below)
4 .GTNJF Return status of JFN
User supplied arguments:
AC2: JFN
AC3: 30 bit address of storage block
AC4: -length of block ,, first data item to
return
Returned data:
(See format of block below)
Format of returned data block:
Word Symbol Contents
0 .NCIDX NCP connection index
1 .NCFHS Foreign host
2 .NCLSK Local socket
3 .NCFSK Foreign socket
4 .NCFSM State of connection
5 .NCLNK Link
6 .NCNVT NVT, -1 if none
7 .NCSIZ Byte size of connection
10 .NCMSG MSG allocation
11 .NCBAL Bit allocation
12 .NCDAL Desired allocation
13 .NCBTC Bits transferred
14 .NCBPB Bytes per buffer
15 .NCCLK Time-out countdown
16 .NCSTS Connection status
GTNCP ERROR MNEMONICS:
ARGX02: Invalid function
GTJIX1: Invalid index
(GTNCP)
GTNCX1: Invalid network JFN
GTNCX2: Invalid or inactive NVT
Node: GTRPW Previous: GTNCP% Next: GTSTS Up: Top
GTRPW JSYS 171
Returns the trap words. This monitor call allows a program to
retrieve information about a previous read, write, or execute trap.
ACCEPTS IN AC1: process handle
RETURNS +1: always, trap status word from last memory trap in
AC1, and last monitor call that had an error in AC2.
The following bits are defined in the status word:
B0(PF%USR) page failure-user mode reference
B5(PF%WRT) page failure-write reference
B14(TSW%RD) trap status-read (always on)
B15(TSW%WT) trap status-write (same setting as B5)
B16(TSW%EX) trap status-execute (always on)
B17(TSW%MN) trap status-monitor mode reference (complement of B0)
B18-B35 address of reference that caused the trap
This information allows a program to determine the exact cause of a
memory trap and/or the effective virtual address that caused the trap.
This information is sufficient to enable the program to continue, if
desired, when the cause of the trap has been removed.
The contents of AC1 is 0 if there have been no memory traps.
Generates an illegal instruction interrupt on error conditions below.
GTRPW ERROR MNEMONICS:
FRKHX1: invalid process handle
FRKHX2: illegal to manipulate a superior process
FRKHX3: invalid use of multiple process handle
Node: GTSTS Previous: GTRPW Next: GTTYP Up: Top
GTSTS JSYS 24
Returns the status of a file associated with a JFN.
(GTSTS)
ACCEPTS IN AC1: JFN in the right half
RETURNS +1: always, status in AC2. If JFN is illegal in any way,
B10 of AC2 will be 0.
JFN STATUS WORD
B0(GS%OPN) file is open
B1(GS%RDF) if file is open (i.e., bit 0 is on), it is open for
read access
B2(GS%WRF) if file is open, it is open for write access
B3(GS%XCF) if file is open, it is open for execute access
B4(GS%RND) if file is open, it is open for non-append access
B7(GS%LNG) file is longer than 512 pages
B8(GS%EOF) last read was past end of file
B9(GS%ERR) file may be in error (i.e., a device or data error
occurred)
B10(GS%NAM) file specification is associated with this JFN
B11(GS%AST) one or more fields of the file specification contain
wildcard characters
B12(GS%ASG) JFN is currently being assigned
B13(GS%HLT) I/O errors are considered terminating conditions
B17(GS%FRK) if file is open, it is open for restricted access
B32-B35 data mode of the file. Refer to the OPENF monitor
(GS%MOD) call description.
.GSNRM normal data mode
.GSIMG image mode
.GSDMP dump mode
If B0(GS%OPN) is not set on return, the file is not opened, and the
settings of bits 1 through 4 are indeterminate.
The STSTS call can be used to set the status of a particular file.
Node: GTTYP Previous: GTSTS Next: GTWAA% Up: Top
GTTYP JSYS 303
Returns the terminal type number for the specified terminal line.
(Refer to Section 2.4.3.4 for the terminal type numbers.)
ACCEPTS IN AC1: file designator (only terminal designators are legal)
RETURNS +1: always, terminal type number in AC2 and buffer
allocation numbers (# of input buffers to be
allocated in left half, and # of output buffers to be
allocated in right half) in AC3. AC1 is unchanged.
The STTYP monitor call can be used to set the terminal type number for
(GTTYP)
a specified line.
Generates an illegal instruction interrupt on error conditions below.
GTTYP ERROR MNEMONICS:
DESX1: invalid source/destination designator
TTYX01: line is not active
Node: GTWAA% Previous: GTTYP Next: HALTF Up: Top
GTWAA% JSYS 702
Get weekly account allocation information. NOTE: this is a temporary
jsys, and may not be defined in future releases.
ACCEPTS IN AC1: directory or user number.
AC2: function bits in left half,length of argument block
in the right.
B0 (wa%rd) Get allocation information and store in
data block. Note: if both wa%rd and wa%in
are set, the new information is returned in
the argument block.
B1 (wa%wr) Update allocation information from data block.
B2 (wa%in) Increment allocation information from data
block. Note: if both wa%wr and wa%in are
set, wa%in is ignored.
AC3: address of argument block
RETURNS: +1: Always, with B17 (wa%ft) of AC2 set if current time is in the
"free time" block.
This is a temporary jsys, and may not be defined in future releases.
The argument block may be up to eighteen words in length. Its format
is given below.
.WALW==:0 weekly console (login) allocation
.WACW==:1 weekly cpu allocation
.WAPW==:2 weekly pages-printed allocation
.WALA==:3 this week's console (login) allocation
.WACA==:4 this week's cpu allocation
.WAPA==:5 this week's pages-printed allocation
.WALC==:6 console time charged this week
.WACC==:7 cpu time charged
.WAPC==:10 pages charged
.WALU==:11 console time used (cumulative this week)
.WACU==:12 cpu time used (cumulative this week)
.WAPU==:13 pages used (cumulative this week)
.WALQ==:14 console time chargeable (cumul. this quarter)
.WACQ==:15 cpu time chargeable (cumulative this quarter)
.WAPQ==:16 pages chargeable (cumulative this quarter)
.WALT==:17 console time used (cum. this quarter)
.WACT==:20 cpu time used (cum. this quarter)
.WAPT==:21 pages printed (cum. this quarter)
GTWAA% ERROR MNEMONICS:
ILINS2: Undefined JSYS
CAPX1: WHEEL or OPERATOR capability required
GTWAX1: Invalid function code
GTWAX2: Invalid argument block length
STRX02: Insufficient system resources
DELFX6: Internal format of directory is incorrect
DATEX6: System date and time are not set
Node: HALTF Previous: GTWAA% Next: HANDS% Up: Top
HALTF JSYS 170
Halts the current process and any inferior processes of the current
process. Sets the process' PC to the next instruction after the call
and saves it in the Process Storage Block (PSB) in case the process is
continued. The user can continue the process by typing the CONTINUE
command, which causes the process to start at the next instruction.
Sets bits 1-17(RF%STS) in the status word for this process to
2(.RFVPT). Refer to the RFSTS monitor call for the format of the
status word.
If the top level process executes a HALTF call and does not have WHEEL
or OPERATOR capability enabled, the job is logged out. If the top
level process executes a HALTF call and does have WHEEL or OPERATOR
capability enabled, control passes to mini-exec (MEXEC) level.
Node: HANDS% Previous: HALTF Next: HFORK Up: Top
HANDS% JSYS 700
Used to access system tables efficiently. Accepts a list of monitor
tables to be returned in their entirety to the user.
ACCEPTS IN AC1: Negative length of table in left half, address of table
in right half
RETURNS: +1: Always, with the entirety of the specified system tables
transferred to the user's area.
The table entries are of the form <table number>,,<destination address>.
HANDS% ERROR MNEMONICS:
ARGX17: Invalid argument block length
GTABX1: Invalid table number
GTABX3: GETAB capability required
Node: HFORK Previous: HANDS% Next: HPTIM Up: Top
HFORK JSYS 162
Halts one or more inferior processes. (Refer to the HALTF monitor
call description to halt the current process.)
ACCEPTS IN AC1: process handle (inferior processes only)
RETURNS +1: always
Sets bits 1-17(RF%STS) in the status word(s) for addressed process(s)
to 2(.RFVPT). Refer to the RFSTS monitor call for the format of the
status word.
Generates an illegal instruction interrupt on error conditions below.
HFORK ERROR MNEMONICS:
FRKHX1: invalid process handle
(HFORK)
FRKHX2: illegal to manipulate a superior process
HFRHX1: illegal to halt self with HFORK
Node: HPTIM Previous: HFORK Next: HSYS Up: Top
HPTIM JSYS 501
Returns the value of one of the high precision system clocks.
Although the main time base from interrupts generated by the internal
system clock is in units of 1 millisecond, the clock provides a time
base in units of 10 microseconds. The HPTIM monitor call provides
access to the variables kept in these high precision units.
ACCEPTS IN AC1: number of the clock to read (see below)
RETURNS +1: failure, error code in AC1
+2: success, with AC1 containing the value of the
specified clock
The numbers for currently-defined clocks are:
0 .HPELP Elapsed time since system startup. (Refer to the
TIME call for obtaining the time in milliseconds.)
1 .HPRNT CPU runtime for this process. (Refer to the RUNTM
call for obtaining the time in milliseconds.)
HPTIM ERROR MNEMONICS:
HPTX1: undefined clock number
Node: HSYS Previous: HPTIM Next: IDCNV Up: Top
HSYS JSYS 307
Initiates an orderly shutdown of the timesharing operation of the
system. This call causes periodic notices of the impending shutdown
to be issued to all terminals. It also causes any jobs still logged
in at the designated shutdown to be logged out.
RESTRICTIONS: requires WHEEL, OPERATOR, or MAINTENANCE capabilities
enabled
ACCEPTS IN AC1: shutdown time with the date and time in the internal
format. (Refer to Section 2.8.2.)
AC2: date and time in internal format when system
operation will resume (or 0 if unknown). Used for
(HSYS)
advisory messages only.
RETURNS +1: failure, error code in AC1
+2: success, shutdown procedure initiated
The shutdown notice is issued immediately to all terminals if the
shutdown time is within two hours. The notice is also sent two hours,
one hour, 30 minutes, 10 minutes, 5 minutes, and one minute before the
shutdown.
The time when the system is expected to be placed back into operation
is not used directly by the monitor. It is entered into a GTTAB table
where it may be examined with the GETAB monitor call.
HSYS ERROR MNEMONICS:
CAPX2: WHEEL, OPERATOR, or MAINTENANCE capability required
TIMEX1: time cannot be greater than 24 hours
TIMEX2: downtime cannot be more than 7 days in the future
Node: IDCNV Previous: HSYS Next: IDLE% Up: Top
IDCNV JSYS 223
Converts separate numbers for the local year, month, day, and time
into the internal date and time format. (Refer to Section 2.8.2 for
more information on the internal format.)
ACCEPTS IN AC2: year in the left half, and numerical month
(0=January) in the right half
AC3: day of the month (0=first day) in the left half, and
0 in the right half
AC4: B0(IC%DSA) apply daylight savings according to the
setting of B1(IC%ADS). If B0 is off,
daylight savings is applied only if
appropriate for the date.
B1(IC%ADS) apply daylight savings if B0(IC%DSA) is
on.
B2(IC%UTZ) use time zone in B12-B17. If this bit is
off, the local time zone is used.
B3(IC%JUD) interpret the number in the right half of
AC2 as being in Julian day format (Jan 1
is day 1).
(IDCNV)
B12-B17 time zone to use if B2(IC%UTZ) is on.
(IC%TMZ) (Refer to Section 2.8.2 for the time
zones.)
B18-B35 local time in seconds since midnight.
(IC%TIM)
RETURNS +1: failure, error code in AC1
+2: success, AC2 contains the internal date and time, and
AC3 contains
B0 and B2 on for compatibility with the ODCNV call
B1(IC%ADS) on if daylight savings was applied
B12-B17 time zone used
(IC%TMZ)
IDCNV ERROR MNEMONICS:
DATEX1: year out of range
DATEX2: month is not less than 12
DATEX3: day of month too large
DATEX5: date out of range
TIMEX1: time cannot be greater than 24 hours
ZONEX1: time zone out of range
Node: IDLE% Previous: IDCNV Next: IDTIM Up: Top
IDLE% JSYS 701
Determines the idle time of a job.
ACCEPTS IN AC1: job number
RETURNS: +1: always, with the number of milliseconds since any fork
of the job was last in the run queue in AC1.
IDLE% ERROR MNEMONICS:
ARGX08: No such job
Node: IDTIM Previous: IDLE% Next: IDTNC Up: Top
IDTIM JSYS 221
Inputs the date and time and converts them to the internal date and
time format. (Refer to Section 2.8.2.) The IDTIM monitor call does
not permit either the date or the time to be entered separately and
does not perform conversions for time zones other than the local one
(unless the time zone is specified in the input string). Refer to the
IDTNC and IDCNV monitor calls descriptions for these functions.
ACCEPTS IN AC1: source designator
AC2: format option flags (see below), 0 is the normal case
RETURNS +1: failure, error code in AC2, updated string pointer in
AC1, if pertinent
+2: success, updated string pointer, if pertinent, in
(IDTIM)
AC1, and the internal format date and time in AC2
The format option flags in AC2 specify the interpretation to be used
when a date or time specification is ambiguous.
IDTIM Option Flags
B1(IT%NNM) do not allow the month to be numeric and ignore B2-B3.
B2(IT%SNM) interpret the second number in the date as the month
(e.g., 6/2/76 is interpreted as Feb. 6, 1976). If
this bit is off, the first number is interpreted as the
month (e.g., 2/6/76 is interpreted as Feb. 6, 1976).
B3(IT%ERR) return an error if the order of the day and month does
not agree with the setting of B2(IT%SNM) even though
the date can be successfully interpreted. If this bit
is off, a date which can be interpreted by assuming the
day and month are in the opposite order than that
specified by the setting of B2(IT%SNM) will be
considered valid. For example, if B2-B3 are off,
30/5/76 will be considered as a valid date.
B7(IT%NIS) seconds cannot be included in a time specification.
B8(IT%AIS) seconds must be included in a time specification and
must be preceded by a colon.
If B7-B8 are both off, seconds are optional in a time
specification. If specified, seconds must be preceded
by a colon.
B9(IT%NAC) colon cannot be used to separate hours and minutes.
B10(IT%AAC) colon must be used to separate hours and minutes.
If B9-B10 are both off, a colon is optional between
hours and minutes.
B11(IT%AMS) when B7-B10 are off, always interpret a time
specification containing one colon as hhmm:ss.
B12(IT%AHM) when B7-B10 are off, always interpret a time
specification containing one colon as hh:mm and return
an error if the first field is too large. This differs
from B7(IT%NIS) in that seconds can be included if
preceded by a second colon.
If B7-B12 are all off, a time specification containing
one colon is interpreted as hh:mm if the first field is
small enough. Otherwise it is interpreted as hhmm:ss.
B14(IT%N24) do not allow the time to be specified in 24-hour format
(e.g., 1520 for 3:20 in the afternoon) and make AM or
(IDTIM)
PM specification mandatory.
B15(IT%NTM) do not allow the time specification to include
AM,PM,NOON, or MIDNIGHT.
B16(IT%NTZ) do not allow a time zone to be specified.
If AC2 is 0, the IDTIM call accepts any reasonable date and time
formats.
IDTIM ERROR MNEMONICS:
DILFX1: invalid date format
TILFX1: invalid time format
DATEX1: year out of range
DATEX3: day of month too large
DATEX5: date out of range
All I/O errors are also possible. These errors cause software
interrupts or process terminations as described under the BIN call.
Node: IDTNC Previous: IDTIM Next: IIC Up: Top
IDTNC JSYS 231
Inputs the date and/or the time and converts it into separate numbers
for the local year, month, day, or time. The IDTNC call allows the
date or time to be entered separately, which is not possible with the
IDTIM JSYS because neither one can be converted to the internal format
without converting the other. (Refer to Section 2.8.2.)
ACCEPTS IN AC1: source designator
AC2: format option flags
In addition to the flags described in the IDTIM call,
the flags below can also be specified:
B0(IT%NDA) do not input the date and ignore B1-B3.
If IT%NDA is off, the date must be input.
B6(IT%NTI) do not input the time and ignore B7-B16.
If IT%NTI is off, the time must be input.
RETURNS +1: failure, error code in AC2, updated string pointer,
if pertinent, in AC1
+2: success, updated string pointer, if pertinent, in AC1
(IDTNC)
If the date was input,
AC2 contains the year in the left half, and the month
(0=January) in the right half.
AC3 contains the day of the month (0=first day) in
the left half, and the day of the week (0=Monday)
in the right half.
If the time was input,
AC4 contains
B0(IC%DAS) on if a time zone was input (for
compatibility with the ODCNV call).
B1(IC%ADS) on if a daylight savings time zone
was input.
B2(IC%UTZ) on if a time zone was input.
B3(IC%JUD) on if a number in Julian day format
was input.
B12-B17 the time zone if one was input, or
(IC%TMZ) the local time zone if none was
input. (Refer to Section 2.8.2 for
the time zones.)
B18-B35 time as seconds since midnight.
(IC%TIM)
IDTNC ERROR MNEMONICS:
DILFX1: invalid date format
TILFX1: invalid time format
All I/O errors are also possible. These errors cause software
interrupts or process terminations as described under the BIN call
description.
The IDTNC call does not detect certain errors in date input, such as
day 31 of a 30-day month. These errors are detected by the IDCNV
call.
Node: IIC Previous: IDTNC Next: INLNM Up: Top
IIC JSYS 132
Initiates software interrupts on the specified channels in a process.
(Refer to Section 2.5.)
ACCEPTS IN AC1: process handle
AC2: 36-bit word
Bit n on means initiate a software interrupt on
channel n.
RETURNS +1: always
(IIC)
Generates an illegal instruction interrupt on error conditions below.
IIC ERROR MNEMONICS:
FRKHX1: invalid process handle
FRKHX2: illegal to manipulate a superior process
FRKHX3: invalid use of multiple process handle
FRKHX8: Illegal to manipulate an execute-only process
Node: INLNM Previous: IIC Next: JFNS Up: Top
INLNM JSYS 503
Returns a logical name that is defined either for this job or for the
system. (Refer to Section 2.2.2 and CRLNM and LNMST monitor calls.)
ACCEPTS IN AC1: function code in the left half, and index into the
table of defined logical names in the right half
AC2: byte pointer to the string for storing the logical
name
RETURNS +1: failure, error code in AC1
+2: success, updated string pointer in AC2
The available functions are:
Code Symbol Meaning
0 .INLJB List the logical names defined for this job
1 .INLSY List the logical names defined for the system
INLNM ERROR MNEMONICS:
INLNX1: index is beyond end of logical name table
INLNX2: invalid function
Node: JFNS Previous: INLNM Next: KFORK Up: Top
JFNS JSYS 30
Returns the file specification currently associated with the JFN.
(JFNS)
ACCEPTS IN AC1: destination designator where the ASCIZ string is to
be written
AC2: indexable file handle (refer to GTJFN), or pointer to
string
AC3: format control bits to be used when returning the
string, or 0
AC4: byte pointer to string containing prefix of file
specification attribute
RETURNS +1: always, updated string pointer, if pertinent, in AC1
AC2 can have one of two formats, depending on B26(JS%PTR) in AC3. The
first format is a word with either 0 or the flag bits returned from
GTJFN in the left half and the JFN in the right half. When the left
half is 0, the string returned is the exact specification associated
with the JFN. If the given JFN is associated only with a file
specification (i.e., it was obtained with B12(GJ%OFG) on in the GTJFN
call), the string returned contains null fields for nonexistent fields
or fields containing wildcards, and actual values for existent fields.
When the left half is nonzero, the string returned contains wildcard
characters for appropriate fields and 0, -1, or -2 as a generation
number if the corresponding bit is on in the call.
The second format (allowed only if B26(JS%PTR) of AC3 is on) is a
pointer to the string to be returned. This string is one field of a
file specification. The field is determined by the first nonzero
3-bit field in AC3 or by the setting of B27(JS%ATR) or B28(JS%AT1) in
AC3. For example, if bits 6-8 (JS%NAM) of AC3 are nonzero, then the
string is interpreted as a filename field. If B27(JS%ATR) is on, the
string is interpreted as a file specification attribute. If
B28(JS%AT1) is on, the string is concatenated to the string pointed to
by AC4, and a colon is inserted between the two strings. In all
cases, the string is output to the destination designator, and the
appropriate punctuation is added.
AC3 contains control bits for formatting the string being returned.
B0-B20 are divided into 3-bit bytes, each byte representing a field in
the file specification. The value of the byte indicates the output
for that field. The values are:
0 (.JSNOF) do not output this field
1 (.JSAOF) always output this field
2 (.JSSSD) suppress this field if it is the system default
The bits that can be set in AC3 are as follows:
B0-B2(JS%DEV) output for device field
B3-B5(JS%DIR) output for directory field
B6-B8(JS%NAM) output for filename field (2 is illegal)
B9-B11(JS%TYP) output for file type field (2 is illegal)
B12-B14(JS%GEN) output for generation number field
B15-B17(JS%PRO) output for protection field
B18-B20(JS%ACT) output for account field
(JFNS)
B21(JS%TMP) return ;T if appropriate
B22(JS%SIZ) return size of file in pages
B23(JS%CDR) return creation date
B24(JS%LWR) return date of last write
B25(JS%LRD) return date of last read
B26(JS%PTR) AC2 contains pointer to the string being returned
B27(JS%ATR) return file specification attributes if
appropriate
B28(JS%AT1) return the specific specification attribute whose
prefix is indicated by the string pointed to in
AC4. This bit is used when a program is
processing attributes one at a time. If JS%ATR
is also set, all attributes will be returned.
B29(JS%OFL) return the "OFFLINE" attribute
B32(JS%PSD) punctuate the size and date fields
B33(JS%TBR) tab before all fields returned, except for first
field
B34(JS%TBP) tab before all fields that may be returned (i.e.,
fields whose value is given as 1 or 2), except
for first field
B35(JS%PAF) punctuate all fields from device through ;T
If B32-B35 are 0, punctuation between fields is not used.
If AC3 is 0, the string is output in the format
dev:<directory>name.typ.gen;T
with fields the same as system defaults not returned and the
protection (;P) and account (;A) attributes returned if B9(GJ%PRO) and
B10(GJ%ACT) in AC2 are on. The temporary attribute (;T) is not
returned if the JFN is not associated with a file (refer to GJ%OFG in
the GTJFN description) or the file is not temporary.
The punctuation used on each field is shown below.
dev:<directory>name.typ.gen;attribute
,size,creation date,write date,read date
The GTJFN or GNJFN monitor call is used to associate a JFN with a
given file specification string.
Generates an illegal instruction interrupt on error conditions below.
JFNS ERROR MNEMONICS:
DESX1: invalid source/destination designator
DESX2: terminal is not available to this job
DESX3: JFN is not assigned
DESX4: invalid use of terminal designator or string pointer
IOX11: quota exceeded or disk full
(KFORK)
Node: KFORK Previous: JFNS Next: LGOUT Up: Top
KFORK JSYS 153
Kills one or more processes. When a process is killed, all private
memory acquired by the process and its Process Storage Block are
released. Also, any JFNs the process has created are released, and
any terminal interrupt assignments that were acquired from another
process are passed back. (Note that because the process is deleted
asynchronously, a page of a file mapped into a lower process may not
be unmapped before the KFORK call returns.)
ACCEPTS IN AC1: process handle
RETURNS +1: always, unless the current process attempts to kill
itself
The KFORK call will not release a process handle that identifies a
process already killed by another process. In this case, the RFRKH
call must be used to release the handle.
The CFORK monitor call can be used to create an inferior process.
Generates an illegal instruction interrupt on error conditions below.
KFORK ERROR MNEMONICS:
FRKHX1: invalid process handle
FRKHX2: illegal to manipulate a superior process
FRKHX3: invalid use of multiple process handle
KFRKX1: illegal to kill top level process
KFRKX2: illegal to kill self
Node: LGOUT Previous: KFORK Next: LNMST Up: Top
LGOUT JSYS 3
Kills the specified job and appends an accounting entry to the
accounting data file. However, no entry is appended if the job was
never logged in (i.e., a CTRL/C was typed, but no login occurred).
RESTRICTIONS: some functions require WHEEL or OPERATOR capabilities
enabled
ACCEPTS IN AC1: number of the job to be logged out, or -1 for the
current job
RETURNS +1: failure, error code in AC1
(LGOUT)
+2: success
When a specific job number is given in AC1, it must refer to either a
PTY job controlled by the current job or a job logged in under the
same user name as the current job. Otherwise, to give a specific job
number, the process must have WHEEL or OPERATOR capability enabled.
An argument of -1 must be given if the current job wishes to kill
itself (i.e., the job number given cannot be the same as the current
job). Note that this monitor call does not return if the argument in
AC1 is -1.
The LGOUT monitor call outputs the time used (both CPU and console),
the job number, and the current date and time. This information is
output on the terminal to which the job being logged out is attached.
LGOUT ERROR MNEMONICS:
LOUTX1: illegal to specify job number when logging out own job
LOUTX2: invalid job number
LOUTX3: WHEEL or OPERATOR capability required
LOUTX4: LOG capability required
LOUTX5: illegal to log out job 0
Node: LNMST Previous: LGOUT Next: LOGIN Up: Top
LNMST JSYS 504
Translates a logical name to its original definition string. (Refer
to Section 2.2.2 and the CRLNM and INLNM monitor calls descriptions.)
ACCEPTS IN AC1: function code
AC2: pointer to the logical name
AC3: pointer to the string where the original logical name
definition is to be written
RETURNS +1: failure, error code in AC1
+2: success, updated string pointer in AC3
The codes for the functions are as follows:
0 .LNSJB Obtain the job-wide definition of the logical name.
1 .LNSSY Obtain the system definition of the logical name.
LNMST ERROR MNEMONICS:
(LNMST)
GJFX22: insufficient system resources (Job Storage Block full)
LNSTX1: no such logical name
LNSTX2: invalid function
Node: LOGIN Previous: LNMST Next: LPINI Up: Top
LOGIN JSYS 1
Logs a job into the system. Useful for logging in from an idle
terminal on which a CTRL/C has been typed.
ACCEPTS IN AC1: 36-bit user number under which user will log in
AC2: pointer to beginning of password string
AC3: account number in bits 3-35 if bits 0-2 are 5.
Otherwise contains a pointer to an account string.
If a null byte is not seen, the string is terminated
after 39 characters are processed.
RETURNS +1: failure, error code in AC1
+2: success, date and time of last login (in internal
system format; refer to Section 2.8.2) in AC1, and
updated string pointers, if pertinent, in AC2 and
AC3.
The LOGIN monitor call does not require a password if the controlling
terminal is a pseudo-terminal and the controlling job either has the
WHEEL or OPERATOR capability enabled or is logged in as the same user
being logged in for this job.
If the call is successful, an accounting entry is appended to the
accounting data file. If the account validation facility is enabled,
the LOGIN call verifies either the account given or the default
account of the user being logged in.
LOGIN ERROR MNEMONICS:
LGINX1: invalid account identifier
LGINX2: directory is "files-only" and cannot be logged in to
LGINX3: internal format of directory is incorrect
LGINX4: invalid password
LGINX5: job is already logged in
LGINX6: no more job slots available for logging in
(LPINI)
Node: LPINI Previous: LOGIN Next: MDDT% Up: Top
LPINI JSYS 547
Loads the direct access Vertical Formatting Unit (VFU) or translation
Random Access Memory (RAM) for the line printer. This call is
executed at system startup by the program that configures the system.
RESTRICTIONS: requires WHEEL or OPERATOR capabilities enabled
ACCEPTS IN AC1: JFN of file containing VFU or RAM
AC2: status bits in the left half, and function code in
the right half
AC3: unit number of line printer
RETURNS +1: always
The following status bit is currently defined.
B0(MO%LCP) Line printer is a lowercase printer.
The available functions are as follows:
Code Symbol Meaning
32 .MOLVF Load the VFU from the file indicated by the given
JFN.
34 .MOLTR Load the translation RAM from the file indicated
by the given JFN.
The line printer must not be opened by any process when this call is
executed. If a condition occurs that prevents the VFU or RAM from
being loaded (e.g., the line printer is off line), the name of the
file will be stored. The VFU or RAM will then be loaded automatically
the next time a process performs output to the line printer.
Generates an illegal instruction interrupt on error conditions below.
LPINI ERROR MNEMONICS:
LPINX1: invalid unit number
LPINX2: WHEEL or OPERATOR capability required
LPINX3: illegal to load RAM or VFU while device is OPEN
Node: MDDT% Previous: LPINI Next: METER% Up: Top
MDDT% JSYS 777
(MDDT%)
Transfers control to the MDDT program while preserving the context of
the process that issued the MDDT% JSYS. The terminal keyboard is
activated and the user may enter commands to the MDDT program or may
return to TOPS-20 command level by typing CTRL/C or CTRL/Z.
RESTRICTIONS: requires WHEEL or OPERATOR capabilities enabled
The MDDT% JSYS accepts no arguments and does not return control to the
issuing process (unless the user types MRETN$G).
MDDT ERROR MNEMONICS:
WHELX1: WHEEL or OPERATOR capability required
Node: METER% Previous: MDDT% Next: MONRD% Up: Top
METER% JSYS 766
Returns the value of the execution accounting meter or the memory
reference accounting meter. These values do not represent time as in
"clock time"; rather, they represent the amount of time that the EBOX
was busy and how many times the MBOX was referenced by the EBOX.
RESTRICTIONS: available only on KL10 hardware
ACCEPTS IN AC1: function code
RETURNS +1: always, with 59-bit value in AC2 and AC3
Function Codes:
Code Symbol Meaning
1 .MEREA Read process execution accounting meter
doubleword. Value returned is EBOX busy time
(number of EBOX ticks).
2 .MERMA Read process memory-reference accounting meter
doubleword. Value returned is count of MBOX
references (number of MBOX ticks).
The accounting meters have bits which allow executive PI overhead and
executive non-PI overhead to be included in the doubleword count.
These are turned off by default (the monitor must be rebuilt to set
them), so (by default) the EBOX count does not include the monitor
overhead of paging, scheduling, or swapping. The count primarily
includes only the EBOX time spent executing the instructions and
JSYS's in the user's program. However, interrupts caused by IO,
paging, swapping, etc can cause instruction restarts or require pager
refills and these are included in the count. Because these interrupts
are dependent on a variety of system variables (such as load average),
(METER%)
subsequent timings of the same event will return varying count values.
These fluctuations can be "smoothed" by timing the event repeatedly
and taking the average of the values returned.
The MBOX reference count has the same specifications as the EBOX
count, and is subject to the same kind of fluctuations. Cache hit/no
hit introduces an additional source of fluctuations. Again, timing
the event repeatedly and taking the average of the values returned
will "smooth" the counts.
An event can be timed by an initial execution of METER%, a DMOVEM
instruction to save the start value, and (after the event) a second
execution of METER% followed by a DSUB instruction to find the elapsed
number of ticks. For added accuracy, the average overhead for the
timing sequence can be determined and subtracted from the average
count value for the timed interval.
The following diagram illustrates the format of the value returned:
! AC2 ! AC3 !
!=============================================================!
! High Order Part !0! Low Order Part ! Reserved !
!=============================================================!
!0 35!0!1 23!24 35!
To form a right-justified doubleword value in AC2 and AC3, the
following instruction may be executed:
ASHC AC2,-D12
METER% ERROR MNEMONICS:
ARGX02: Invalid function code
METRX1: METER not implemented for this processor.
Node: MONRD% Previous: METER% Next: MRECV Up: Top
MONRD% JSYS 717
The MONRD% is used by non-privileged program to obtain information from
the JSB, PSB, a monitor symbol (restricted set of), and fork status.
ACCEPTS IN AC1: function code
AC2 through AC4: dependent on the function (see description below)
RETURNS +1: always
Code Symbol Meaning
0 .RDTST The test function is used in order to see if the MONRD%
JSYS is implemented. If implemented, the JSYS will
return a value of .TSTNM (123456 octal). (AC2 must be
zero.)
1 .RDSYM The read symbol function will get the definition (the
address in the monitor) of the SIXBIT symbol in AC1.
If successful AC2 will contain the definition of the
symbol.
2 .RDJSB The read JSB function allows you to read the contents a
word in the JSB (Job Storage Block). The word is
referenced by an offset (contained in AC3) from a
symbol (the SIXBIT value of which is in AC2). AC4
contains the job number. (Symbols implemented are
listed below.) On successful return AC2 will contain
the contents of that word.
3 .RDPSB The read PSB function is the same as the .RDJSB
function except that it allows you to read from the PSB
(Proccess Storage Block) and not the JSB. AC4 contains
the system fork number.
4 .RDSTS The read fork status function returns the same fork
information as the RFSTS JSYS in AC2 (if successful).
AC2 (on entry) contains the absolute fork number (not
relative fork handle) of the fork in question.
Function: Test Read symbol Read JSB Read PSB Read fork status
AC1: .RDTST .RDSYM .RDJSB .RDPSB .RDSTS
AC2: 0 sym-name sym-name sym-name sys-fork-#
AC3: -- -- offset offset --
AC4: -- -- job-# sys-fork-# --
Where: sym-name is the SIXBIT value of the symbol to look for;
sys-fork-# is an absolute fork number; offset is the offset
(from the symbol name); job-# is the job number of the whose
JSB or PSB to look at
Table of Symbols for MONRD%
CAPENB CAPMSK DSKDTB FILBYN FILBYT FILDDN FILDNM FILNEN
FILSTS FILVER FILOFN FILDEV FKCNT FKPTRS FKRT INTDF
JOBNO JSVAR JSVARZ KIMUU1 LSTERR MAXJFN MLJFN NUFKS
PPC PSVAR PSVARZ RESQTL RSCNBP SYSFK TRAPPC TTFLG1
TTFLGS TTICT TTLINK TTOCT UPDL UTRPCT
Generates illegal instruction interrupt if not implemented.
Node: MRECV Previous: MONRD% Next: MSEND Up: Top
MRECV JSYS 511
Retrieves an IPCF (Inter-Process Communication Facility) message from
the process' input queue. Refer to the TOPS-20 Monitor Calls User's
Guide for an overview and description of the Inter-Process
Communication Facility.
RESTRICTIONS: Requires WHEEL or IPCF capability enabled
ACCEPTS IN AC1: length of packet descriptor block
(MRECV)
AC2: address of packet descriptor block
RETURNS +1: failure, error code in AC1
+2: success. The packet is retrieved and placed into the
block indicated by word .IPCFP of the packet
descriptor block. AC1 contains the length of the
next entry in the queue in the left half and the
flags from the next packet in the right half. This
returned word is called the associated variable of
the next entry in the queue. If the queue is empty,
AC1 contains 0.
The format of the packet descriptor block is as follows:
Word Symbol Meaning
0 .IPCFL Flags. (Refer to the MSEND call
description.)
1 .IPCFS PID of sender. The caller does not supply
this PID; the system fills it in when the
packet is retrieved.
2 .IPCFR PID of receiver. This PID can be one of
three values: a specific PID, -1 to retrieve
messages for any PID belonging to this
process, or -2 to retrieve messages for any
PID belonging to this job. When -1 or -2 is
supplied, messages are not retrieved in any
particular order except that messages from a
specific PID are returned in the order in
which they were received.
3 .IPCFP Pointer to block where message is to be
placed (length of message in the left half
and address where message is to be placed in
the right half).
4 .IPCFD User number of sender.
5 .IPCFC Enabled capabilities of sender.
6 .IPCSD Directory number of sender's connected
directory.
7 .IPCAS Account string of sender. The caller
supplies a pointer to the block where the
account is to be placed.
The caller (i.e., receiver) does not supply the information in words 4
through 7; the system fills in the words when the packet is
retrieved. These words describe the sender at the time the message
was sent and permit the receiver to validate messages.
(MRECV)
Refer to the MSEND call description for the flags that can be set in
word .IPCFL of the packet descriptor block.
MRECV ERROR MNEMONICS:
IPCFX1: length of packet descriptor block cannot be less than 4
IPCFX2: no message for this PID
IPCFX3: data too long for user's buffer
IPCFX4: receiver's PID invalid
IPCFX5: receiver's PID disabled
IPCF11: WHEEL or IPCF capability required
IPCF14: no PID's available to this job
IPCF15: no PID's available to this process
IPCF16: receive and message data modes do not match
IPCF24: invalid message size
IPCF25: PID does not belong to this job
IPCF26: PID does not belong to this process
IPCF27: PID is not defined
IPCF28: PID not accessible by this process
IPCF29: PID already being used by another process
IPCF31: invalid page number
IPCF32: page is not private
IPCF34: cannot receive into an existing page
Node: MSEND Previous: MRECV Next: MSFRK Up: Top
MSEND JSYS 510
Sends an IPCF (Inter-Process Communication Facility) message. The
message is in the form of a packet and can be sent to either the
specified PID or the system process <SYSTEM>INFO. Refer to the
TOPS-20 Monitor Calls User's Guide for an overview and description of
the Inter-Process Communication Facility.
RESTRICTIONS: requires IPCF capability enabled. Some functions
(MSEND)
require WHEEL capability enabled.
ACCEPTS IN AC1: length of packet descriptor block
AC2: address of packet descriptor block
RETURNS +1: failure, error code in AC1
+2: success. The packet is sent to the receiver's input
queue. Word .IPCFS of the packet descriptor block is
updated with the sender's PID. This updating is done
in case the PID was being defaulted or created by
this call.
The format of the packet descriptor block is as follows:
Word Symbol Meaning
0 .IPCFL Flags. (See below.)
1 .IPCFS PID of sender, or 0 if no PID exists for
sender. This word will be filled in by the
monitor if the caller is creating a PID
(i.e., flag bit IP%CPD is on).
2 .IPCFR PID of receiver, or 0 if receiver is
<SYSTEM>INFO.
3 .IPCFP Pointer to message block (length of message
in the left half and starting address of
message in the right half). When a packet is
sent to <SYSTEM>INFO, the message block
contains the request being made. (See
below.)
The following flags are defined in word .IPCFL of the packet
descriptor block. These flags can be set on both the MSEND and MRECV
calls.
Flags Set By Caller
B0(IP%CFB) Do not block process if there are no messages in the
queue. If this bit is set, an error is given if there
are no messages.
B1(IP%CFS) Use, as the sender's PID, the PID obtained from the
address specified in word .IPCFS. Setting bit IP%CFS
notifies the monitor that word .IPCFS contains an
address, and the sender's PID is located in that
address.
B2(IP%CFR) Use, as the receiver's PID, the PID obtained from the
address specified in word .IPCFR. Setting bit IP%CFR
notifies the monitor that word .IPCFR contains an
address, and the receiver's PID is located in that
(MSEND)
address.
B3(IP%CFO) Allow one send request above the quota. (The default
send quota is 2.)
B4(IP%TTL) Truncate the message, if it is larger than the space
reserved. If this bit is not set, an error is given if
the message is too large.
B5(IP%CPD) Create a PID to use as the sender's PID and return it
in word .IPCFS of the packet descriptor block.
B6(IP%JWP) Make the created PID be job wide (i.e., permanent until
the job logs out). If this bit is not set, the PID is
temporary until the process executes the RESET monitor
call. If B5(IP%CPD) is not set, B6 is ignored.
B7(IP%NOA) Do not allow other processes to use the created PID.
If B5(IP%CPD) is not set, B7 is ignored.
B18(IP%CFP) The packet is privileged. (This bit can be set only by
a process with WHEEL capability enabled.) When a
privileged sender sets this bit, the MRECV and MUTIL
calls return it set for any reply. An error is given
if this bit is set by the sender and the receiver is
not privileged.
B19(IP%CFV) The packet is a page of data. Word .IPCFP of the
packet descriptor block contains 1000 in the left half
and the page number in the right half. The page the
packet is being sent to, or is being received into,
must be private.
NOTE
When a process sends a page of data with MSEND,
that page is removed from the process' map.
Flags Returned After Call
B20(IP%CFZ) A zero-length message was sent, and the packet consists
of only the packet descriptor block.
B24-B29 Error code field for errors encountered by <SYSTEM>INFO
(IP%CFE) during a send or receive request.
Code Symbol Meaning
15 .IPCPI insufficient privileges
16 .IPCUF invalid function
67 .IPCSN <SYSTEM>INFO needs name
72 .IPCFF <SYSTEM>INFO free space exhausted
(MSEND)
74 .IPCBP PID has no name or is invalid
75 .IPCDN duplicate name has been specified
76 .IPCNN unknown name has been specified
77 .IPCEN invalid name has been specified
B30-B32 System and sender code. This code can be set only by a
(IP%CFC) process with WHEEL capability enabled. The system
returns the code so that a nonprivileged user can
examine it.
Code Symbol Meaning
1 .IPCCC sent by <SYSTEM>IPCF
2 .IPCCF sent by system-wide <SYSTEM>INFO
3 .IPCCP sent by receiver's <SYSTEM>INFO
B33-B35 Field for return of special messages. This field can
(IP%CFM) be set only by a process with WHEEL capability enabled.
The system returns the information so that a
nonprivileged user can examine it.
Code Symbol Meaning
1 .IPCFN Process' input queue contains a packet
that could not be delivered to intended
PID.
When the MSEND call is used to send a packet to <SYSTEM>INFO, the
message portion of the packet (i.e., the first three words) contains
the request. This request has the following format:
Word Symbol Meaning
0 .IPCI0 user-defined code in the left half and the
function (see below) <SYSTEM>INFO is to
perform in the right half. The user-defined
code is used to associate the response from
<SYSTEM>INFO with the appropriate request.
1 .IPCI1 PID that is to receive a duplicate of the
response from <SYSTEM>INFO. If this word is
0, the response is sent only to the
originator of the request.
2 .IPCI2 argument for the requested function. (See
below.)
The functions that can be requested of <SYSTEM>INFO, along with their
arguments, are as follows:
Function Argument Meaning
.IPCIW name Return the PID associated with the
specified name. The PID is returned in
word .IPCI1.
(MSEND)
.IPCIG PID Return the name associated with the
specified PID. The name is returned in
word .IPCI1.
.IPCII name in Assign the specified name to the PID
ASCIZ belonging to the process making the
request. The temporary or permanent
status of the PID is specified by flag
bit IP%JWP(B6) when the PID was
originally created.
.IPCIJ name in Identical to the .IPCII function.
ASCIZ
.IPCIS Disassociates all PIDs with names. Used
by the monitor on a RESET or LGOUT
monitor call. This function is not
available to user programs.
MSEND ERROR MNEMONICS:
IPCFX1: length of packet descriptor block cannot be less than 4
IPCFX4: receiver's PID invalid
IPCFX5: receiver's PID disabled
IPCFX6: send quota exceeded
IPCFX7: receiver quota exceeded
IPCFX8: IPCF free space exhausted
IPCFX9: sender's PID invalid
IPCF11: WHEEL or IPCF capability required
IPCF12: no free PID's available
IPCF13: PID quota exceeded
IPCF14: no PID's available to this job
IPCF15: no PID's available to this process
IPCF19: no PID for [SYSTEM]INFO
IPCF24: invalid message size
IPCF25: PID does not belong to this job
IPCF26: PID does not belong to this process
IPCF27: PID is not defined
(MSEND)
IPCF28: PID not accessible by this process
IPCF29: PID already being used by another process
IPCF31: invalid page number
IPCF32: page is not private
Node: MSFRK Previous: MSEND Next: MSTR Up: Top
MSFRK JSYS 312
Starts a process in monitor mode. The MSFRK call is legal only if it
is called from monitor mode or if the process has WHEEL or OPERATOR
capability enabled. This call allows job 0 to create multiple
processes for handling various asynchronous monitor tasks.
RESTRICTIONS: requires WHEEL or OPERATOR capability enabled
ACCEPTS IN AC1: process handle
AC2: 36-bit PC word, with user mode and other flags in the
left half and the virtual address in the right half
RETURNS +1: always
Because the starting context of the process is undefined, the process
being started should execute the following sequence of instructions at
its starting address:
FBGN: MOVSI 1,UMODF ;fake user PC
MOVEM 1,FPC ;simulate the JSYS call
MCENTR ;establish usual top-level JSYS context
Generates an illegal instruction interrupt on error conditions below.
MSFRK ERROR MNEMONICS:
FRKHX1: invalid process handle
FRKHX2: illegal to manipulate a superior process
FRKHX3: invalid use of multiple process handle
CAPX1: WHEEL or OPERATOR capability required
Node: MSTR Previous: MSFRK Next: MTALN Up: Top
MSTR JSYS 555
(MSTR)
Performs various structure-dependent functions. These functions
include mounting and dismounting structures, incrementing and
decrementing mount counts for structures, and setting and obtaining
the status of structures.
For regulated structures, the mount count must be incremented before
access rights or JFNs can be given. All structures are regulated by
default except the primary structure (PS: on most systems) or any
structure declared non-regulated with the .MSSSS function of MSTR.
RESTRICTIONS: some functions require WHEEL or OPERATOR capability
enabled. A process with MAINTENANCE capability
enabled can obtain the status of a disk unit
(functions .MSRNU and .MSRUS).
ACCEPTS IN AC1: length of the argument block in the left half and
function code in the right half
AC2: address of the argument block
RETURNS +1: always, with some functions returning data in the
argument block. (Refer to individual function
descriptions below.)
Generates an illegal instruction interrupt on all error conditions.
The available functions are summarized below.
Function Symbol Privileged Meaning
Code
0 .MSRNU Yes Return the status of the next
disk unit.
1 .MSRUS Yes Return the status of the given
disk unit.
2 .MSMNT Yes Mount the given structure.
3 .MSDIS Yes Dismount the given structure.
4 .MSGSS No Return the status of the given
structure.
5 .MSSSS Yes Change the status of the given
structure.
6 .MSINI Yes Initialize the given
structure.
7 .MSIMC No Increment the mount count for
the given structure for the
(MSTR)
job.
10 .MSDMC No Decrement the mount count for
the given structure for the
job.
11 .MSGSU No Return the job numbers of the
users of the given structure.
13 .MSICF No Increment the mount count for
the given structure for the
given fork.
14 .MSDCF No Decrement the mount count for
the given structure for the
given fork.
15 .MSOFL Yes Receive interrupt when disk
comes on-line.
16 .MSIIC Yes Ignore increment check for
structure use
Obtaining the Status of the Next Disk Unit - .MSRNU
This function returns the status of the next disk unit on the system.
The next disk unit is determined by searching the current channel and
looking for the next physical unit on that channel.
The .MSRNU function accepts the channel, controller, and unit numbers
in the first three words of the argument block. The first time this
function is executed, the value for each of these numbers is -1.
After successful completion of this function, the channel, controller,
and unit numbers are updated, and the software information about the
disk drive is returned in the argument block. To locate all drives
available for mounting structures, the channel, controller, and unit
numbers returned from one .MSRNU function call are supplied on the
next one until all units on all channels have been searched. When all
units have been searched, the MSTR monitor call returns error MSTX18.
The format of the argument block, whose length is .MSRLN, is as
follows:
Word Symbol Meaning
0 .MSRCH Channel number (0-7)
1 .MSRCT Controller number (reserved for future use,
must be -1)
2 .MSRUN Unit number (0-7)
3 .MSRST Returned software status of unit. The
following status bits are defined:
(MSTR)
B0(MS%MNT) Unit is part of a mounted
structure
B2(MS%DIA) Unit is being used by an on-line
diagnostic program
B3(MS%OFL) Unit is off line
B4(MS%ERR) Unit has an error that was
detected during reading
B5(MS%BBB) Unit has a bad BAT block. If
this bit is on, the data returned
in word .MSRSN (word 4) and in
words .MSRNS through .MSRFI
(words 6 through 20) is
indeterminate.
B6(MS%HBB) Unit has a bad HOME block
B7(MS%WLK) Unit is write locked
B9-B17 Type of disk unit
(MS%TYP)
1 .MSRP4 RP04
5 .MSRP5 RP05
6 .MSRP6 RP06
7 .MSRP7 RPO7
11 .MSRM3 RMO3
4 .MSRSN Byte pointer to ASCIZ string in which to
store the structure name. This pointer is
updated on return.
5 .MSRSA Byte pointer to ASCIZ string in which to
store the structure alias. The alias is
usually the same as the structure name. The
alias is returned, and the pointer updated,
only if the structure is on line.
6 .MSRNS Logical unit number within the structure of
this unit in the left half, and number of
units in the structure in the right half.
7 .MSRSW Number of pages for swapping on this
structure.
10-12 .MSRUI Unit ID (3 words of ASCII)
13-15 .MSROI Owner ID (3 words of ASCII)
16-20 .MSRFI File system ID (3 words of ASCII)
21 .MSRSP Number of sectors per page
22 .MSRSC Number of sectors per cylinder
23 .MSRPC Number of pages per cylinder
24 .MSRCU Number of cylinders per unit
(MSTR)
25 .MSRSU Number of sectors per unit
26 .MSRBT Number of bit words in bit table per cylinder
The length of the argument block in words is given by symbol .MSRLN
(27).
The following errors are possible on the failure of this function.
MSTRX2: WHEEL or OPERATOR capability required
MSTRX3: argument block too small
MSTX14: invalid channel number
MSTX15: invalid unit number
MSTX16: invalid controller number
MSTX18: no more units in system
MSTX27: specified unit is not a disk
CAPX2: WHEEL, OPERATOR, or MAINTENANCE capability required
Obtaining the Status of a Given Disk Unit - .MSRUS
This function returns the status of the given disk unit. It accepts
the channel, controller, and unit numbers in the first three words of
the argument block. After successful completion of this function, the
channel, controller, and unit numbers are unchanged, and the software
information about the given disk unit is returned in the argument
block.
The difference between this function and the .MSRNU function is that
.MSRUS does not search for the next disk unit but rather returns the
status for the given unit. The .MSRNU function searches for the next
disk unit and returns the status for that unit.
The format of the argument block and the errors possible on the
failure of this function are the same as described for the .MSRNU
function.
Mounting a Given Structure - .MSMNT
This function brings the given structure on line and normally makes it
available for general use. Any structure other than the public
structure PS: must be brought on line with this function. (The
public structure PS: is brought on line during the system startup
procedure.)
It is recommended that the .MSRNU (Read Next Unit) function be given
first to locate all units in the structure. Then the .MSMNT (Mount
(MSTR)
Structure) function can be given to read and verify the HOME blocks of
each unit and to mount the structure. If one or more units of the
structure are write-locked, the structure cannot be mounted and an
error is given.
The format of the argument block is as follows:
Word Symbol Meaning
0 .MSTNM Pointer to the ASCIZ string containing the
name of the structure.
1 .MSTAL Pointer to the ASCIZ string containing the
alias of the structure.
2 .MSTFL Flag bits in the left half, and the number of
units in the structure (.MSTNU) in the right
half. The bits that can be set in the left
half are:
B0(MS%NFH) If one of the HOME blocks is
incorrect, do not fix it and do
return an error. If this bit is
off and one of the HOME blocks is
incorrect, the correct block is
copied into the bad HOME block
and the mounting procedure
continues.
B1(MS%NFB) If one of the BAT (Bad Allocation
Table) blocks is incorrect, do
not fix it and do return an
error. If this bit is off and
one of the BAT blocks is
incorrect, the correct block is
copied into the bad BAT block and
the mounting procedure continues.
B2(MS%XCL) Mount the structure for exclusive
use by this job. This bit is set
by a system program when it
initializes or reconstructs a
structure. If this bit if off,
the structure is mounted for
general use.
B3(MS%IGN) Ignore correctable errors in the
bit table and in the root
directory on this structure.
This bit is set by a system
program when it reconstructs the
root directory on a structure or
rebuilds the bit table. If this
bit is off and an error is
detected, this function returns
(MSTR)
an error.
3 .MSTUI Beginning of unit information for each unit
in the structure. The information is 3 words
long per unit, and the symbol for this length
is .MSTNO. The first 3-word block is for
logical unit 0, and the last 3-word block is
for the last logical unit (.MSTNU-1). The
offsets into the 3-word block are:
0 .MSTCH Channel number of unit
1 .MSTCT Controller number of unit
(currently must be -1)
2 .MSTUN Unit number of unit
The number of argument words per unit is
given by symbol .MSTNO (3).
After successful completion of this function, the given structure is
mounted and available for general use (unless bit MS%XCL was on in
word .MSTFL of the argument block).
The following errors are possible on the failure of this function.
MSTRX2: WHEEL or OPERATOR capability required
MSTRX3: argument block too small
MSTRX4: insufficient system resources
MSTRX5: drive is not on line
MSTRX6: home blocks are bad
MSTRX7: invalid structure name
MSTRX8: could not get OFN for ROOT-DIRECTORY
MSTRX9: could not MAP ROOT-DIRECTORY
MSTX10: ROOT-DIRECTORY bad
MSTX11: could not initialize Index Table
MSTX12: could not OPEN Bit Table File
MSTX13: backup copy of ROOT-DIRECTORY is bad
MSTX14: invalid channel number
MSTX15: invalid unit number
MSTX16: invalid controller number
(MSTR)
MSTX17: all units in a structure must be of the same type
MSTX19: unit is already part of a mounted structure
MSTX20: data error reading HOME blocks
MSTX23: could not write HOME blocks
MSTX25: invalid number of swapping pages
MSTX27: specified unit is not a disk
MSTX30: incorrect Bit Table counts on structure
MSTX34: unit is write-locked
MSTX35: too many units in structure
MONX01: insufficient system resources
Dismounting a Given Structure - .MSDIS
This function indicates that the given structure can be removed from
the system. Any mounted structure other than the public structure PS:
can be dismounted with this function. (The public structure PS: is
dismounted at system shutdown.)
Files that are open at the time this function is executed become
inaccessible, and the jobs that had the files open receive an error if
they reference them. Jobs that have mounted the structure or have
connected to or accessed a directory on the structure receive an
informational message on the terminal. This message is
[STRUCTURE name: HAS BEEN DISMOUNTED]
The format of the argument block is as follows:
Word Symbol Meaning
0 .MSDNM Pointer to ASCIZ string containing the alias
of the structure, or device designator of the
structure.
After successful completion of this function, the given structure is
dismounted and can be physically removed from the system.
The following errors are possible on the failure of this function.
MSTRX2: WHEEL or OPERATOR capability required
MSTRX3: argument block too small
MSTX21: structure is not mounted
(MSTR)
MSTX24: illegal to dismount the Public Structure
Obtaining the Status of a Given Structure - .MSGSS
This function returns the status of a mounted structure. The caller
supplies the designators for the structure and for the storage of the
structure's physical ID. After successful completion of the call,
data is returned in the appropriate words in the argument block.
The format of the argument block, whose length is .MSGLN, is as
follows:
Word Symbol Meaning
0 .MSGSN Byte pointer to ASCIZ string containing the
alias of the structure, or device designator
of the structure.
1 .MSGST Returned status word. The status bits are:
B0(MS%PS) This structure is a public
structure.
B1(MS%DIS) This structure is being
dismounted and no further mount
count increments are allowed.
B2(MS%DOM) This structure is a domestic
structure.
B3(MS%PPS) This structure is the public
structure.
B4(MS%INI) This structure is being
initialized.
B6(MS%NRS) Structure is non-regulated
2 .MSGNU Number of units in structure.
3 .MSGMC Mount count for this structure. This value
is determined by the number of .MSIMC
(Increment Mount Count) functions given for
this structure by all users since the
structure was mounted.
4 .MSGFC Open file count (i.e., number of open files)
for this structure.
5 .MSGSI Pointer to ASCIZ string in which to store the
structure's physical ID.
The length of the argument block is given by symbol .MSGLN (6).
(MSTR)
After successful completion of this function, the status of the given
structure is returned in the appropriate words of the argument block,
and the pointer to the physical ID is updated to reflect the returned
string.
The following errors are possible on the failure of this function.
MSTRX3: argument block too small
MSTX21: structure is not mounted
Changing the Status of a Given Structure - .MSSSS
This function changes the status of a mounted structure. The caller
can change only two of the status bits in the structure's status word:
status of being dismounted and status of being domestic.
The format of the argument block, whose length is .MSSLN is:
Word Symbol Meaning
0 .MSSSN Byte pointer to ASCIZ string containing the
alias of the structure, or device designator
of the structure.
1 .MSSST Word containing the new values for the bits
being changed.
2 .MSSMW Mask containing the bits being changed. The
bits that can be changed are
B1(MS%DIS) Structure is being dismounted.
B2(MS%DOM) Structure is domestic.
B6(MS%NRS) Structure is non-regulated
After successful completion of this function, the status of the given
structure is changed according to the data supplied in the argument
block.
The following errors are possible on the failure of this function.
MSTRX2: WHEEL or OPERATOR capability required
MSTRX3: argument block too small
MSTX21: structure is not mounted
MSTX22: illegal to change specified bits
Initializing a Given Structure - .MSINI
(MSTR)
This function creates a new structure or repairs an existing structure
during normal system operation. The caller has the option of creating
a new file system, reconstructing the root directory, writing a new
set of HOME blocks on the structure, or rebuilding the index block.
The format of the argument block is as follows:
Word Symbol Meaning
0 .MSINM Byte pointer to ASCIZ string containing the
name of the structure.
1 .MSIAL Byte pointer to ASCIZ string containing the
alias of the structure.
2 .MSIFL Flag bits in B0-B11, function value (MS%FCN)
in B12-B17, and number of units in structure
(.MSINU) in B18-B35. The flag bits are:
B0(MS%NFH) Do not fix HOME block if one is
incorrect and do return an error.
This bit can be on only with
function .MSRRD. (See below.)
B1(MS%NFB) Do not fix BAT block if one is
incorrect and do return an error.
B2(MS%XCL) Mount this structure for
exclusive use by this job. If
this bit is off, the structure is
mounted for general use.
B3(MS%IGN) Ignore errors in the bit table
and in the root directory on this
structure. If this bit is on,
B2(MS%XCL) must also be on.
The function values that can be given are:
1 .MSCRE Create a new file system
2 .MSRRD Reconstruct the root directory
3 .MSWHB Write a new set of HOME blocks
4 .MSRIX Rebuild the index table
3-5 .MSISU Beginning of unit information for each unit
in the structure. The information is 3 words
long per unit, and the symbol for this length
is .MSINO. The first 3-word block is for
logical unit 0, and the last 3-word block is
for the last logical unit (.MSINU-1). The
offsets into the 3-word block are:
(MSTR)
0 .MSICH Channel number of unit
1 .MSICT Controller number of unit
(currently must be -1)
2 .MSIUN Unit number of unit
The number of arguments per unit is given by
symbol .MSINO (3).
6 .MSIST Status word (reserved for future use).
7 .MSISW Number of pages for swapping on this
structure.
10 .MSIFE Number of pages for the front-end file
system.
11-13 .MSIUI Unit ID (3 words of ASCII)
14-16 .MSIOI Owner ID (3 words of ASCII)
17-21 .MSIFI File system ID (3 words of ASCII) (reserved
for future use)
22 .MSIFB Number of pages for the file BOOTSTRAP.BIN.
Words 6 through 16 (.MSIST through .MSIOI) of the argument block must
be supplied when the MSTR call is being executed to create a new file
system or to write a new set of HOME blocks. After successful
completion of the .MSCRE function, the structure is initialized and
the following directories are created:
<ROOT-DIRECTORY>
<SYSTEM>
<SUBSYS>
<ACCOUNTS>
<SPOOL>
<OPERATOR>
The following errors are possible on the failure of this function.
MSTRX2: WHEEL or OPERATOR capability required
MSTRX3: argument block too small
MSTRX4: insufficient system resources
MSTRX5: drive is not on line
MSTRX6: home blocks are bad
MSTRX7: invalid structure name
MSTRX8: could not get OFN for ROOT-DIRECTORY
(MSTR)
MSTRX9: could not MAP ROOT-DIRECTORY
MSTX10: ROOT-DIRECTORY bad
MSTX11: could not initialize Index Table
MSTX12: could not OPEN Bit Table File
MSTX13: backup copy of ROOT-DIRECTORY is bad
MSTX14: invalid channel number
MSTX15: invalid unit number
MSTX16: invalid controller number
MSTX17: all units in a structure must be of the same type
MSTX19: unit is already part of a mounted structure
MSTX20: data error reading HOME blocks
MSTX23: could not write HOME blocks
MSTX25: invalid number of swapping pages
MSTX26: invalid number of Front-End-Filesystem pages
MSTX27: specified unit is not a disk
MSTX28: could not initialize Bit Table for structure
MSTX29: could not reconstruct ROOT-DIRECTORY
MSTX30: incorrect Bit Table counts on structure
MONX01: insufficient system resources
Incrementing the Mount Count - .MSIMC
Users indicate that they are actively using a structure by
incrementing the structure's mount count. A nonzero mount count
informs the operator that the structure should not be dismounted.
Also, an IPCF message is sent to the Mountable Device Allocator to
indicate that a user is using the structure. The .MSIMC function is
used to increment a structure's mount count.
Note that incrementing the mount count is a requirement for accessing
files and directories on regulated structures.
The job receives an error if the given structure is in the process of
being dismounted (i.e., a job has given the .MSSSS function with the
MS%DIS bit on).
(MSTR)
The format of the argument block is as follows:
Word Symbol Meaning
0 .MSDEV Byte pointer to ASCIZ string containing the
alias of the structure, or device designator
of the structure.
1 .MSJOB Number of job whose mount count is to be
incremented. This requires WHEEL or OPERATOR
capability to be enabled.
After successful completion of this function, the mount count of the
given structure has been incremented.
The following errors are possible on the failure of this function.
MSTRX3: argument block too small
MSTX21: structure is not mounted
MSTX33: structure is unavailable for mounting
ARGX18: invalid structure name
MONX01: insufficient system resources
STDVX1: no such device
STRX01: structure is not mounted
STRX02: insufficient system resources
Decrementing the Mount Count - .MSDMC
This function indicates that the given structure is no longer being
used by the job executing the call. If the job executing the call has
previously incremented the mount count for this structure via the
.MSIMC (Increment Mount Count) function, the mount count is
decremented. If the job has not incremented the mount count, the job
receives an error. If the structure is regulated, and the user has
any assigned JFNs on the structure, is accessing the structure or is
connected to the structure, an error is returned.
The format of the argument block is as follows:
Word Symbol Meaning
0 .MSDEV Byte pointer to ASCIZ string containing the
alias of the structure, or device designator
of the structure.
1 .MSJOB Number of job whose mount count is to be
deccremented. This requires WHEEL or
OPERATOR capability to be enabled.
(MSTR)
The resource allocator receives an IPCF packet when the mount count
for a structure is decremented. The flag word (.IPCFL) of the packet
descriptor block has a code of 1(.IPCCC) in the IP%CFC field (bits
30-32). This code indicates the message was sent by the monitor. The
first word of the packet data block contains the structure dismount
code .IPCDS. The second word contains the number of header words and
the number of the job decrementing the mount count. The third word
contains the device designator of the structure. Thus,
.IPCFL/<.IPCCC>B32
DATA/.IPCDS
DATA+1/number of header words (2),, job number
DATA+2/device designator of structure
After successful completion of this function, the mount count of the
structure has been decremented and the IPCF message has been sent.
The following errors are possible on the failure of this function.
MSTRX3: argument block too small
MSTX21: structure is not mounted
MSTX32: structure was not mounted
MSTX36: illegal while JFNs assigned
MSTX37: illegal while accessing or connected to a directory
ARGX18: invalid structure name
MONX01: insufficient system resources
STDVX1: no such device
STRX01: structure is not mounted
STRX02: insufficient system resources
Obtaining the Users on a Given Structure - .MSGSU
This function returns the job numbers of the users of the given
structure. Users of a structure are divided into three classes:
users who have incremented the mount count (SMOUNT command), users who
are connected to the structure (CONNECT command), and users who have
accessed the structure (ACCESS command). The caller specifies the
classes of users for which information is to be returned by setting
the appropriate bits in the argument block.
The format of the argument block is as follows:
Word Symbol Meaning
(MSTR)
0 .MSUAL Byte pointer to ASCIZ string containing the
alias of the structure, or device designator
of the structure.
1 .MSUFL Flag bits in the left half and 0 in the right
half. The bits that can be set are:
B0(MS%GTA) Return users who have accessed
the structure.
B1(MS%GTM) Return users who have incremented
the mount count.
B2(MS%GTC) Return users who are connected to
the structure.
After successful execution of this function, word 1 through word n+1
(where n is the number of items returned) are updated with the
following information.
Word Symbol Meaning
1 .MSUFL Right half contains the number of items (n)
being returned. Left half is unchanged.
2 .MSUJ1 Flag bits for the job in the left half, and
number of job in the right half.
. .
. .
. .
n + 1 Flag bits for the job in the left half, and
number of job in the right half.
The bits returned for each job are defined
as:
B0(MS%GTA) Job has accessed structure.
B1(MS%GTM) Job has incremented the mount
count for structure.
B2(MS%GTC) Job has connected to structure.
The following errors are possible on the failure of this function.
MSTRX1: invalid function
MSTRX3: argument block too small
STRX01: structure is not mounted
STDVX1: no such device
(MSTR)
ARGX18: invalid structure name
MONX01: insufficient system resources
Specifying word and bits to be modified - .MSHOM
This function allows enabled WHEEL or OPERATOR program to specify word
of homeblock of mounted structure to be modified, which bits should be
modified, and what the new values should be.
The format of the argument block is as follows:
Word Symbol Meaning
0 .MSHNM Handle on alias such as pointer to string, or
device designator.
1 .MSHOF Offset specifying which word should be
changed.
2 .MSHVL Value for new bits.
3 .MSHMK Mask showing which bits should be changed.
The following errors are possible on the failure of this function:
MSTRX2: insufficient privileges
MSTRX3: argument block too small
MSTX21: structure not mounted
any errors "MODHOM" routine returns
Incrementing the Mount Count for the Fork - .MSICF
This function and the next one (.MSDCF) allow job forks to
independently mount and dismount structures without contending with
one another for control of the structure. Note that when either a job
mount or fork mount is possible, the job mount is preferred as it
incurs less overhead.
This function indicates that a fork is actively using a structure. If
the structure is being dismounted, the job receives an error. The
format of the argument block is:
Word Symbol Meaning
0 .MSDEV Pointer to ASCIZ string containing the alias
of the structure, or device designator of the
structure.
The following errors are possible on the failure of this function.
MSTRX3: argument block too small
(MSTR)
MSTX21: structure is not mounted
MSTX33: structure is unavailable for mounting
ARGX18: invalid structure name
MONX01: insufficient system resources
STDVX1: no such device
STRX01: structure is not mounted
STRX02: insufficient system resources
Decrementing the Mount Count for the Fork - .MSDCF
This function and the previous one (.MSICF) allow job forks to
independently mount and dismount structures without contending with
one another for control of the structure. Note that when either a job
mount or fork mount is possible, the job mount is preferred as it
incurs less overhead.
This function indicates that a fork is no longer using a structure.
Note that if a job-wide increment has been done, the fork may still
access the structure. The format of the argument block is:
Word Symbol Meaning
0 .MSDEV Pointer to ASCIZ string containing the alias
of the structure, or device designator of the
structure.
The following errors are possible on the failure of this function.
MSTRX3: argument block too small
MSTX21: structure is not mounted
MSTX32: structure was not mounted
MSTX36: illegal while JFNs assigned
MSTX37: illegal while accessing or connected to a directory
ARGX18: invalid structure name
MONX01: insufficient system resources
STDVX1: no such device
STRX01: structure is not mounted
STRX02: insufficient system resources
(MSTR)
Receive Interrupt when Disk Comes On-line - .MSOFL
This function specifies who is to receive an interrupt when
a disk comes on-line. It is provided for the Mountable
Device Allocator in order to control the disks and inform the operator
of structure status. Only one process on the system will receive
the interrupts. The process using this JSYS must have WHEEL or
OPERATOR
capability enabled. The argument block has the following format:
Word Symbol Meaning
0 .MSCHN Place this process on a software interrupt
channel.
An interrupt is then generated when a disk
comes on-line. If the channel
number is given as -1, a previously assigned
interrupt channel will be
deassigned.
Ignore Increment Check for Structure Use - .MSIIC
Allows a process to use a regulated structure without previously
incrementing the mount count. Entries are made to the accounting file
only on structure decrements, so this function will enable bypassing
of accounting.
There is no argument block.
The following errors are possible:
MSTRX2: WHEEL or OPERATOR capability required
Node: MTALN Previous: MSTR Next: MTOPR Up: Top
MTALN JSYS 774
Associates a given serial-numbered magnetic tape drive with the
specified logical unit number. The MTALN call is a temporary call and
may not be defined in future releases.
RESTRICTIONS: requires WHEEL or OPERATOR capability enabled
ACCEPTS IN AC1: slave type in left half; logical unit number of
magtape in right half
AC2: decimal serial number of magnetic tape drive
(MTALN)
RETURNS +1: always
All units are searched for the specified serial number and slave type.
When they are found, the drive is associated with the given logical
unit number. The original unit is now associated with the logical
unit number that the specified serial-numbered drive had before it was
reassigned.
The slaves recognized are
.MTT45 TU45 (The system default)
.MTT70 TU70
.MTT71 TU71
.MTT72 TU72
Generates an illegal instruction interrupt on error conditions below.
MTALN ERROR MNEMONICS:
WHELX1: WHEEL or OPERATOR capability required
DEVX1: invalid device designator
OPNX7: device already assigned to another job
Node: MTOPR Previous: MTALN Next: MTU% Up: Top
MTOPR JSYS 77
Performs various device-dependent control functions. This monitor
call requires that the device either be opened or be assigned to the
caller if the device is an assignable device.
Because of the device dependencies of the MTOPR call, programs written
with device-independent code should not use this call unless they
first check for the type of device.
RESTRICTIONS: some functions require WHEEL or OPERATOR capability
enabled
ACCEPTS IN AC1: JFN of the device
AC2: function code (see below)
AC3: function arguments or address of argument block (see
descriptions of individual devices)
RETURNS +1: always
The functions listed for each device apply only to that device. If a
function applies to more than one device, its description is repeated
for each applicable device.
(MTOPR)
ARPANET Functions
ARPANET MTOPR functions are described below. For a complete
description of their application, refer to the TOPS-20AN Monitor Calls
User's Guide.
Code Symbol Meaning
20 .MOACP If a connection is in the RFCR state, use of this
function will cause an RFC to be sent to accept
the connection.
21 .MOSND If a connection is operating in buffered send
mode, use of this function causes all currently
buffered bytes to be sent.
22 .MOSIN Causes the INS/INR command to be sent.
24 .MOAIN Assigns interrupt channels through which the
program is interrupted on either a change of state
(of the connection F.S.M) or receipt of an INS or
INR message. The INS/INR PSI channel is stored in
field MOS%NIN (B0-5) of AC3 and the state change
PSI channel is stored in field MO%FSM (B12-17) of
AC3. A value of 77 (octal) in either of these
fields prevents assignment of a PSI channel.
ETHERNET Functions
ETHERNET MTOPR functions are described below. For a complete
description of their application, refer to documentation in the monitor
sources for the Ethernet. If updating is necessary, please do so.
Code Symbol Meaning
20 .MOPEF Send Mark, or write end of file. Takes Mark byte in
AC3.
21 .MOPFC Force transmission of partial pup.
22 .MOPIS Send interrupt. AC3 contains the interrupt code and,
if non-zero, AC4 contains a string pointer to an
interrupt text.
23 .MOPRM Return most recent Mark byte in AC3.
24 .MOPIN Assign interrupt channels according to AC3.
B0-B5 "Interrupt" PSI channel
B6-B11 "Received pup" PSI channel
B12-B17 "State change" PSI channel
25 .MOPAB Abort connection. AC3 contains the Abort code and if
AC4 is non-zero it contains a pointer to the Abort text
26 .MOPRA Return Abort data. Takes an optional string pointer in
AC4 to return the Abort text. Returns Abort code in
AC3 and an appropriately updated string pointer in AC4.
27 .MOPSM Set hardware data mode of the connection from the
contents of AC3. This allows the programmer to specify
how the data (physically a stream of 8-bit frames) is
to be laid out in 36-bit words. The default mode is
.PM32, 32 bits (4 8-bit frames) left justified in a
36-bit word. It is advised that special care be taken
to open the connection in a byte size compatible with
the hardware data mode. The data modes are:
0 .PM16 16-bit bytes right justified in half
words. Suggested byte sizes: 18, 36.
1 .PM32 A 32-bit byte left justified in a full
word. This is the default mode.
Byte sizes: 8,16,32.
2 .PM36 A full 36 bit word.
3 .PMASC Five 7-bit bytes left justified in a
full word. On input, the high-order
bits of the frames are discarded; on
output, they are set to zero. Byte
size: 7.
4 .PM16S 16-bit bytes right justified in half
words with the high and low order bytes
swapped. Byte size: 18, 36.
30 .MOPRM Read hardware data mode of connection into AC3.
DECnet Functions
DECnet-20 MTOPR functions are described below. For a complete
description of their application, refer to the TOPS-20 DECnet-20
Programmer's Guide and Operations Manual.
Code Symbol Meaning
24 .MOACN Allow a network task to enable software interrupt
channels for any combination of the following work
types:
o connect event pending
o interrupt message available
o data available
This function requires that AC3 contain three
9-bit fields specifying the changes in the
interrupt assignments for this link. These fields
are
Field Symbol Used to Signal
B0-B8 MO%CDN Connect event pending
B9-B17 MO%INA Interrupt message available
B18-B26 MO%DAV Data available
The contents of the fields are
(MTOPR)
Value Meaning
nnn The number of the channel to be enabled;
0-5 and 23-35 decimal
.MOCIA Clear the interrupt
.MONCI No change
25 .MORLS Read the link status and return a 36-bit word of
information regarding the status of the logical
link. AC3 contains flag bits in the left half and
a disconnect code in the right half. The flag
bits are
Symbol Bit Meaning
MO%CON B0 Link is connected
MO%SRV B1 Link is a server
MO%WFC B2 Link is waiting for a connect
MO%WCC B3 Link is waiting for a connect
confirm
MO%EOM B4 Link has an entire message to
be read
MO%ABT B5 Link has been aborted
MO%SYN B6 Link has been closed normally
MO%INT B7 Link has an interrupt message
available
MO%LWC B8 Link has been previously
connected
The disconnect/reject codes are as follows:
Symbol Value Meaning
.DCX0 0 No special error
.DCX1 1 Resource allocation failure
.DCX2 2 Destination node does not
exist
.DCX3 3 Node shutting down
.DCX4 4 Destination process does not
exist
.DCX5 5 Invalid name field
.DCX11 11 User abort (asynchronous
disconnect)
.DCX32 32 Too many connections to node
.DCX33 33 Too many connections to
destination process
.DCX34 34 Access not permitted
.DCX35 35 Logical link services mismatch
.DCX36 36 Invalid account
.DCX37 37 Segment size too small
.DCX38 38 Process aborted
.DCX39 39 No path to destination node
.DCX40 40 Link aborted due to data loss
.DCX41 41 Destination process does not
exist
(MTOPR)
.DCX42 42 Confirmation of DISCONNECT
INITIATE
.DCX43 43 Image data field too long
If a disconnect code does not apply to the current
status of the link, the right half of AC3 will be
zeros.
26 .MORHN Return the ASCII name of the host node at the
other end of the logical link. This function
requires that AC3 contain a string pointer to the
location where the host name is to be stored. (If
the byte size exceeds eight bits, bytes are
truncated to eight bits.)
The monitor call returns with an updated pointer
in AC3, and the host name stored as specified.
27 .MORTN Return the unique task name that is associated
with your end of the logical link. If you had
defaulted the task name in the network file
specification, the call returns the
monitor-supplied task name. In DECnet-20, the
default task name is actually a unique number.
This function requires that AC3 contain a string
pointer to the location where the task name is to
be stored. (If the byte size exceeds eight bits,
bytes are truncated to eight bits.)
The monitor call returns with an updated pointer
is AC3 and the task name stored as specified.
30 .MORUS Return the source task user identification
supplied in the connect initiate message. This
function requires that AC3 contain a string
pointer to the location where the user
identification is to be stored. (If the byte size
exceeds eight bits, bytes are truncated to eight
bits.
The monitor call returns with an updated pointer
in AC3 and the user identification stored as
specified. If no user identification was supplied
by the source task, AC3 continues to point to the
beginning of the string, and a null is returned as
the only character.
31 .MORPW Return the source task's password as supplied in
the connect initiate message. This function
requires that AC3 contain a string pointer to the
location where the password is to be stored.
(Passwords are binary, therefore the string
pointer should accomodate 8-bit bytes.)
(MTOPR)
The monitor call returns with an updated pointer
in AC3 and the source task's password stored as
specified. AC4 contains the number of bytes in
the string; a zero value indicates that no
password was supplied by the source task.
32 .MORAC Return the account string supplied by the source
task in the connect initiate message. This
function requires that AC3 contain a string
pointer to the location where the account string
is to be stored. (If the byte size exceeds eight
bits, bytes are truncated to eight bits.)
The monitor call return with an updated pointer in
AC3 and the source task's account number stored as
specified. If no account string was supplied by
the source task, AC3 continues to point to the
beginning of the string, and a null is returned as
the only character.
33 .MORDA Return the optional data supplied in any of the
connect or disconnect messages. This function
requires that AC3 contain a string pointer to the
location where the optional user data is to be
stored. (This file is binary; the string pointer
should specify 8-bit bytes.)
The monitor call returns with an updated pointer
in AC3 and the optional data stored as specified.
AC4 contains the number of bytes in the data
string; a zero value indicates that no optional
data was supplied.
34 .MORCN Return the object type that was used by the source
task to address this connection. The result
indicates whether the local task was addressed by
its generic type or its unique network task name.
The monitor call returns with the object type is
AC3. A zero object type indicates that the target
task was addressed by its unique network task
name; a nonzero value indicates that it was
addressed by its generic object type.
35 .MORIM Read interrupt message. This function requires
that AC3 contain a byte pointer to the receiving
buffer. (If the byte size exceeds eight bits,
bytes are truncated to eight bits.) The maximum
message length is 16 bytes, and the buffer size
should be at least 8 bits.
The monitor call returns with an updated pointer
in AC3, the message stored in the buffer, and the
count of bytes received in AC4.
(MTOPR)
36 .MOSIM Send an interrupt message. This function requires
that AC3 contain a byte pointer to the message
(eight bytes maximum) and the AC4 contain a count
of the bytes in the interrupt message (sixteen
bytes maximum).
37 .MOROD Return the unique identification of the source
task. This identification is in the format of
object-descriptor, and the contents depend on the
DECnet implementation on the remote host. In
addition, if the source task is running on a
system that provides for group and user codes,
this information is also returned. If the source
task name is on a DECnet-20 host, the data
returned is TASK-taskname. This function requires
that AC3 contain a string pointer to the location
where the object-descriptor of the source task is
to be stored. (If the byte size exceeds eight
bits, bytes are truncated to eight bits.)
The monitor call returns with an updated pointer
in AC3 and the object-descriptor stored as
specified. In addition, if the source host system
uses group and user codes (sometimes referred to
as project and programmer number or p,pn), AC4
contains the group code in the left half and the
user code in the right half. If the source host
system does not provide for group or user codes,
AC4 contains zeros.
40 .MOCLZ Reject a connection either implicitly or
explicitly. If the target task closes its JFN
(via the CLOSF monitor call) before accepting the
connection either implicitly or explicitly, the
local NSM assumes that the connection is rejected
and sends a connect reject message back to the
source task. The reason given is process aborted
(reject code 38). The target task must the reopen
its JFN in order to receive subsequent connect
initiate messages.
In order to explicitly reject a connect and at the
same time return a specific reject reason and set
up 16 bytes of user data, the target task must use
the .MOCLZ function of the MTOPR monitor call.
The .MOLCZ function does not close the JFN.
This function requires that
AC2 contain a reject code in the left half
and .MOCLZ in the right half. The reject
code is a 2-byte, NSP-defined decimal number
indicating the reason that a target task is
rejecting a connection. Refer to the
description of code 25, .MORLS, for a list of
(MTOPR)
disconnect/reject codes.
AC3 contain a string pointer to any data to
be returned. (If the byte size exceeds eight
bits, bytes are truncated to eight bits.)
AC4 contain the count of bytes in the data
string (maximum=16). A zero indicates no
data
41 .MOCC Accept a connection either implicitly or
explicitly. Under certain conditions, the local
NSP assumes that the connection is accepted and
sends a connect confirm message back to the source
task. These implicit conditions are
The target task attempts to output to the
logical link (issues a SOUT or SOUTR monitor
call to the network).
The target task submits a read request to the
logical link (issues a SIN or SINR monitor
call to the network).
The target task is in input wait state (has
enabled itself for a "data available"
software interrupt).
In order to explicitly accept a connect and also
return a limited amount of data, the target task
must use the .MOCC function of the MTOPR monitor
call. This function requires that AC3 contain a
string pointer to any data to be returned. (If
byte size exceeds eight bits, bytes are truncated
to eight bits.) AC4 must contain the count of
bytes in the data string to a maximum of 16 bytes.
A zero indicates no data.
42 .MORSS Returns the maximum segment size that can be sent
over this link. This value is the lesser of the
maximum segment sizes supported by the remote NSP
task and the remote network task. The local task
can use this value to optimize the format of data
being transmitted over the link.
The monitor call returns the maximum segment size,
in bytes, in AC3.
FE Functions
Code Symbol Meaning
3 .MOEOF Send an end of file to the program using the FE
device on the front end. This function is used
for synchronization between a program running on
(MTOPR)
the TOPS-20 and a program running on the front
end.
4 .MODTE Assign the specified device to the DTE controller
on the front end. This function, which must be
performed before I/O is allowed to the device,
requires AC3 to contain the device type. The
process must have WHEEL or OPERATOR capability
enabled.
MTA/MT Functions
The functions available for physical magnetic tape drives (MTA) and
logical magnetic tape drives (MT) are described below. Some of these
functions accept arguments in AC3 (refer to the individual
descriptions).
Code Symbol Meaning
0 .MOCLE Clear any error flags from a previous MTOPR call.
1 .MOREW Rewind the tape. This function waits for activity
to stop before winding the tape. If sequential
data is being output, the last partial buffer is
written before the tape is rewound. Control
returns to caller when rewinding begins. For
labeled tapes, this function causes the first
volume in the set to be mounted and positioned to
the first file in the file set. Since a volume
switch may be required, this function could block
for a considerable amount of time.
Use function .MORVL to rewind the current volume.
2 .MOSDR Set the direction of the tape motions for read
operations. This function requires AC3 to contain
the desired direction. If AC3 = 0, the tape
motion is forwards; if AC3 = 1, the tape motion
is backwards.
This function is not available for labeled tapes
and will return an MTOX1 error if used for that
purpose.
3 .MOEOF Write a tape mark. This function requires that
the magnetic tape be opened for write access. If
sequential data is being output, the last partial
buffer is written before the tape mark.
For labeled tapes, issuing this function will
terminate the data portion of the file, write EOF
trailer labels and leave the tape positioned to
accept user trailer labels. It is possible at
this point to write user trailer labels or close
the file. A second .MOEOF function issued without
(MTOPR)
positioning the tape backwards will "close" the
file (subsequent writes will create a new file).
4 .MOSDM Set the hardware data mode to be used when
transferring data to and from the tape. This
function requires AC3 to contain the desired data
mode:
0 .SJDDM default system data mode
1 .SJDMC dump mode (36-bit bytes)
2 .SJDM6 SIXBIT byte mode for 7-track drives
3 .SJDMA ANSI ASCII mode (7 bits in 8-bit
bytes)
4 .SJDM8 industry compatible mode
5 .SJDMH High-density mode for TU70 and TU72
tape drives only (nine 8-bit bytes
in two words).
For labeled tapes, this function is allowed only
if the file is opened in dump mode (.GSDMP). If
this is not the case, an MTOX1 error is returned.
5 .MOSRS Set the size of the records. This function
requires AC3 to contain the desired number of
bytes in the records. This function is allowed
only if no I/O has been done since the JFN was
opened.
For labeled tapes, this function is allowed only
if the file has been opened in dump mode. If the
file has not been opened in dump mode, an MTOX1
error is returned.
The maximum size of the records (in bytes) is as
follows:
Hardware Maximum
I/O Mode Record Size (bytes)
system-default -
dump 8192
SIXBIT 49152
ANSI ASCII 40960
industry compatible 32768
high density 8192
The above values can be exceeded in the execution
of .MOSRS, however the first data transfer will
fail.
6 .MOFWR Advance over one record in the direction away from
the beginning of the tape. If sequential data is
being read in the forward direction and not all of
the record has been read, this function advances
to the start of the next record. If sequential
(MTOPR)
data is being read in the reverse direction and
not all of the record has been read, this function
positions the tape at the end of that record.
For labeled tapes, forward space will position
over a logical record. This implies that many
physical records may be skipped (if S format is
used) perhaps involving one or more volume
switches.
7 .MOBKR Space backward over one record in the direction
toward the beginning of the tape. If sequential
data is being read in the forward direction and
not all of the record has been read, this function
positions the tape back to the start of that
record. If sequential data is being read in the
reverse direction and not all of the record has
been read, this function positions the tape to the
end of the record physically preceding that
record.
For labeled tapes, backward spacing will position
over a logical record. This implies that many
physical records may be skipped (if S format is
used) perhaps involving one or more volume
switches.
10 .MOEOT Advance forward until two sequential tape marks
are seen and position tape after the first tape
mark.
For labeled tapes, this function will position the
volume set beyond the end of the last file in the
set. This is useful for adding a new file to the
end of an already existing volume set. This
function may take some time to complete as one or
more volumes switches may be required.
11 .MORUL Rewind and unload the tape. This function is
identical to the .MOREW function and also unloads
the tape if the hardware supports tape unloading.
For labeled tapes, an unload is illegal unless
accompanying a DISMOUNT request. For MT devices,
this will generate a DESX9 error.
12 .MORDN Return the current density setting. On a
successful return, AC3 contains the current
density.
13 .MOERS Erase three inches of tape (i.e., erase gap).
This function requires that the magnetic tape be
opened for write access.
This function is illegal for labeled tapes.
(MTOPR)
14 .MORDM Return the hardware data mode currently being used
in transfers to and from the tape. On a
successful return, AC3 contains the current data
mode.
15 .MORRS Return the size of the records. On a successful
return, AC3 contains the number of bytes in the
records.
16 .MOFWF Advance to the start of the next file. This
function advances the tape in the direction away
from the beginning of the tape until it passes
over a tape mark.
For labeled tapes, forward space will skip one
logical file. This implies that many physical
files may be skipped, involving perhaps one or
more volume switches.
17 .MOBKF Space backward over one file. This function moves
the tape in the direction toward the beginning of
the tape until it passes over a tape mark or
reaches the beginning of the tape, whichever
occurs first.
For labeled tapes, backspace file will back up one
logical file. This implies that many physical
files may be skipped, involving perhaps one or
more volume switches.
NOTE
For labeled ANSI tape, the monitor can
compute the number of volume switches
required to get to the first section of
the file. Thus, if this function is
issued for an ANSI tape, at most one
volume switch will be required. This is
not true for EBCDIC tape.
Issuing this function when the tape is already
positioned at the first volume of the volume set
will not produce an error. The program issuing
this function must follow the .MOBKF with a GDSTS
call to determine if the BOT was encountered
during the backspacing operation.
20 .MOSPR Set the parity. This function requires AC3 to
contain the desired parity:
0 .SJPRO odd parity
(MTOPR)
1 .SJPRE even parity
21 .MORPR Return the current parity. On a successful
return, AC3 contains the current parity.
22 .MONRB Return number of bytes remaining in the current
record. On a successful return, AC3 contains the
number of bytes remaining. This function is only
meaningful during sequential I/O.
23 .MOFOU Force any partial records to be written during
sequential output.
24 .MOSDN Set the density. The function requires AC3 to
contain the desired density.
0 .SJDDN default system density
1 .SJDN2 200 BPI (8 rows/mm)
2 .SJDN5 556 BPI (22 rows/mm)
3 .SJDN8 800 BPI (31 rows/mm)
4 .SJD16 1600 BPI (63 rows/mm)
5 .SJD62 6250 BPI (246 rows/mm)
This function is illegal for
labeled tapes.
25 .MOINF Return information about the tape.
This function requires AC3 to
contain the address of the argument
block in which the information is
to be returned. The format of the
argument block is as follows:
Word Symbol Contents
0 .MOICT Length of argument block to be
returned (not including this word)
1 .MOITP MTA type code
2 .MOIID MTA reel ID
3 .MOISN Channel, controller, and unit in
the left half and serial number in
the right half.
4 .MOIRD Number of reads done
5 .MOIWT Number of writes done
6 .MOIRC Record number from beginning of
tape
7 .MOIFC Number of files on tape
10 .MOISR Number of soft read errors
11 .MOISW Number of soft write errors
12 .MOIHR Number of hard read errors
13 .MOIHW Number of hard write errors
14 .MOIRF Number of frames read
15 .MOIWF Number of frames written
26 .MORDR Return the direction that the tape is moving
(MTOPR)
during read operations. On a successful return,
AC3 = 0 if the direction of the tape motion is
forwards, or AC3 = 1 if the direction of the tape
motion is backwards.
27 .MOSID Set the reel identification of the tape mounted.
The process must have WHEEL or OPERATOR capability
enabled. This function requires AC3 to contain
the desired 36-bit reel ID.
30 .MOIEL Inhibit error logging for the tape.
31 .MONOP Wait for all activity to stop.
32 .MOLOC Specifies the first volume in a MOUNT request, or
identifies the "next" volume for a volume switch.
This function requires OPERATOR or WHEEL
capability.
AC3 contains a pointer to an argument block having
the following format:
Word Symbol Contents
0 .MOCNT count of words in the block
1 .MOMTN MT unit number to associate with
this MTA
2 .MOLBT label type (.LTxxx)
3 .MODNS density
4 .MOAVL address of volume labels
5 .MONVL number of volume labels at .MOAVL
6 .MOCVN volume number in the volume set
7 .MOVSN SIXBIT file set identifier
37 .MOSTA Return current magtape status. Returns an
argument block having the following form and
contents:
Word Symbol Contents
0 .MOCNT Count of words in the block including
this word
1 .MODDN density flags
Bit Symbol Meaning
B1 SJ%CP2 200 BPI
B2 SJ%CP5 556 BPI
B3 SJ%CP8 800 BPI
B4 SJ%C16 1600 BPI
B5 SJ%C62 6250 BPI
2 .MODDM data mode flags
(MTOPR)
Bit Symbol Meaning
B1 SJ%CMC core dump
B2 SJ%CM6 SIXBIT
B3 SJ%CMA ANSI ASCII
B4 SJ%CM8 industry compatible
B5 SJ%CMH high density mode
3 .MOTRK recording track flags
Bit Symbol Meaning
B1 SJ%7TR 7-track drive
B2 SJ%9TR 9-track drive
4 .MOCST tape status flags
Bit Symbol Meaning
B0 SJ%OFS off line
B1 SJ%MAI maintenance mode
enabled
B2 SJ%MRQ maintenance mode
requested
B3 SJ%BOT beginning of tape
B4 SJ%REW rewinding
B5 SJ%WLK write locked
5 .MODVT device type
Code Symbol Meaning
3 .MTT45 TU45 (system default)
17 .MTT70 TU70
20 .MTT71 TU71
21 .MTT72 TU72
13 .MTT77 TU77
19 .MTT78 TU78
41 .MOOFL Enable interrupts for online/offline transition.
Allows a process to be interrupted if a magnetic
tape drive's state changes from online to offline
or vice-versa and when a rewind operation
completes. This function must be performed once
for each drive for which interrupts are to be
enabled. If multiple drives are enabled for
interrupts, then a .MOSTA function should be
performed (for each drive) before interrupts for
the drives are enabled. Then, when an interrupt
occurs, .MOSTA can be performed for each drive and
the current status of that drive can be compared
against the previous status. Thus, it can be
determined which drive (or drives) interrupted.
This function requires OPERATOR or WHEEL
(MTOPR)
capability.
42 .MOPST Declares the software interrupt channel to be used
by the monitor to indicate that the UTL labels at
the end-of-volume or the UHL labels at the start
of the new volume are available. If this MTOPR is
not performed before an EOV label set is
encountered, the user program will not be given
the opportunity to process the UTL or UHL labels
during the volume switch operation.
AC3 contains the PSI channel number to set. The
channel can be cleared by using -1 in AC3.
43 .MORVL Rewind current labeled tape volume.
44 .MOVLS Switch volumes for an unlabled multi-volume set.
If an unlabeled tape is mounted specifying
multiple volumes in the volume set, the monitor
will not automatically perform a volume switch at
the end of each volume. The .MOVLS function may
be issued in such a case to perform a volume
switch. It can also be used to force a volume
switch for a labeled tape.
AC3 contains the address of an argument block
having the following format:
Word Symbol Contents
0 count of words in block including
this word
1 flags,,function code
2 argument (if required)
Available functions are:
Word Symbol Function
1 .VSMNV mount absolute
volume number
(volume number in
word 2 of the
argument block)
2 .VSFST mount first volume
in set
3 .VSLST mount last volume
in set
4 .VSMRV mount relative
volume number
(volume number in
word 2 of the
argument block)
For .VSMRV, the
(MTOPR)
argument in word 2
of the argument
block is the volume
number relative to
the current mounted
volume to mount.
For example, if
volume 2 is
currently mounted
and .VSMRV is
performed with 2 in
word 2 of the
argument block,
then volume 4 will
be mounted.
Specifying 1 in
word 2 of the
argument block will
mount the next
volume in the set.
5 .VSFLS force volume switch
for labeled tape.
This function is
only for tapes for
which .MOSDS has
previously been
set.
45 .MONTR Set no translate.
Sets or clears the EBCDIC to ASCII translate flag.
If the flag is set and the tape file being read is
from an IBM EBCDIC volume, then all data delivered
to the user program will be in its original EBCDIC
form. If the flag is not set, and the file is
from an IBM EBCDIC volume, then all data delivered
to the user program will be in ASCII. In order to
perform this translation, certain information may
be lost (as the EBCDIC character set contains 256
codes while the ASCII character set contains only
128 codes). Note that the setting of this flag
has no effect on the data delivered by the MTU
JSYS.
If AC3 is zero then the translate flag is cleared.
If AC3 is non-zero, the translate flag is set.
46 .MORDL Read user header labels. Labels must be read
immediately after the file is opened (and before
the first input is requested) or after a volume
switch has occurred and the volume switch PSI has
been generated. .MORDL may be used to read either
the UHL or UTL labels. User header labels may be
read only if the file is opened for read or
append. The labels may be a maximum of 76
(MTOPR)
characters long.
User trailer labels may be read at any time. If
the program requests to read user trailer labels,
the tape will be positioned to the EOF trailer
section.
AC3 contains a byte pointer to the area for
receiving the label.
On a successful return, AC2 contains the user
label identifier. This will be the ASCII
character following the UHL or the UTL. AC3 will
contain an updated byte pointer.
47 .MOWUL Write user header labels or user trailer labels.
User header labels may be written only after the
file is opened (and before the first write is
performed) or when a PSI is generated, indicating
that a volume switch has occurred. User header
labels may be written only if the file is opened
for write access.
User trailer labels may be read or written at any
time. If the program requests to write user
trailer labels, the file will be terminated with
an EOF trailer section. Once user trailer labels
are written in this manner, no more data may be
read or written.
User trailer labels may also be written during a
volume switch sequence. Once the PSI indicating
EOV has been received, the user program may write
a UTL label into the EOV trailer section. This
operation must be performed at interrupt level.
AC3 contains a byte pointer to the label contents.
This string must contain 76 bytes of data (the
monitor will use only the first 76 bytes). AC4
contains a label identifier code (any ASCII
character).
It is possible to encounter EOT while writing the
first UTL in the EOF trailer set. This can occur
if the last data write overwrote the EOT mark. In
this instance, the user program will receive the
EOV PSI from within the code writing the UTL
labels for the file. It is not possible to
receive an EOV PSI while writing the trailer
labels in the EOV set.
50 .MORLI Reads the available fields from the standard
volume and header labels. The ANSI standard
distinguishes protected from unprotected fields;
.MORLI only returns the unprotected fields.
(MTOPR)
AC3 contains a pointer to an argument block of the
form:
Word Contents
0 count of words in block
1 word to store label type of this tape
Value Symbol Label Type
1 .LTUNL Unlabeled
2 .LTANS ANSI
3 .LTEBC EBCDIC
4 .LTT20 TOPS-20
2 byte pointer to area for storing volume
name string
3 byte pointer to area for storing owner
name string
4 word to store tape format (ASCII
character)
5 word to store record length
6 word to store block length
7 word to store creation date (in internal
format)
10 word to store expiration date (in
internal format)
11 byte pointer to area for storing file
name string
12 word to store generation number
13 word to store version number
14 word to store mode value (form-control
value). The possible modes are as
follows:
Mode
Value Meaning
space no line format characters are
present
A FORTRAN format control
characters are present
M All necessary line format
characters are present
X Data in stream mode
The user specifies only the block count and the
byte pointers; the remaining values are returned
by the monitor. If a zero is substituted for any
of the byte pointers, then the associated string
is not returned.
This function is normally issued when the JFN is
open. If issued when the JFN is closed, only the
first 3 words of the argument block are returned.
(MTOPR)
If the tape is unlabeled, only the first word of
the argument block is returned.
51 .MOSMV Declares the value to be placed in the DEC-defined
"form-control" field in the HDR2 label. This
field is not defined in the ANSI standard but
should be specified whenever the data file is
meant to be read with DEC-supplied software. This
function merely declares the value to be placed in
the label. It is the user program's
responsibility to produce records that conform to
the declared mode.
AC3 contains one of the following modes:
Value Symbol Mode
0 .TPFST X - (stream mode)
1 .TPFCP M - (all formatting control
present)
2 .TPFFC A - (FORTRAN control present)
3 .TPFNC space - (no controls present)
52 .MOSDS Set deferred volume switch. Inhibits the monitor
from doing an automatic volume switch and allows a
program to write its own trailer information
beyond the physical end-of-tape mark. This
function is intended for labeled MT devices open
for writing in DUMP mode.
PLPT Functions
The functions available for physical line printers (PLPT) are
described below. Some of these functions accept the address of an
argument block in AC3. The first word of the argument block contains
the length (including this word) of the block. Remaining words of the
block contain arguments for the particular function.
Code Symbol Meaning
27 .MOPSI Enable for a software interrupt on nonfatal device
conditions. Examples of these conditions are:
1. Device changed from offline to online.
2. Device changed from online to offline.
3. Device's page counter has overflowed.
Other device errors or software conditions are not
handled by this function; instead they cause a
software interrupt on channel 11 (.ICDAE).
Argument Block
(MTOPR)
E: 3
E+1: interrupt channel number
E+2: flags. The following flag is defined:
B0(MO%MSG) Suppress standard CTY device
messages.
31 .MONOP Wait for all activity to stop. This function
blocks the process until all data has actually
been sent to the printer and has been printed.
Because this function is transferring data, it can
return an IOX5 data error.
32 .MOLVF Load the line printer's VFU (Vertical Formatting
Unit) from the file indicated in the argument
block.
Argument Block
E: 2
E+1: JFN of the file containing the VFU
The system opens the file for input with a byte
size of 18 bits. It closes the file and releases
the JFN when the loading of the VFU is complete.
33 .MORVF Read the name of the current VFU file stored in
the monitor's data base.
Argument Block
E: 3
E+1: pointer to destination area for ASCIZ name
string
E+2: number of bytes in destination area
34 .MOLTR Load the line printer's translation RAM (Random
Access Memory) from the file indicated in the
argument block.
Argument Block
E: 2
E+1: JFN of the file containing the translation
RAM
The system opens the file for input with a byte
size of 18 bits. It closes the file and releases
the JFN when the loading of the translation RAM is
complete.
35 .MORTR Read the name of the current translation RAM file
stored in the monitor's data base.
Argument Block
(MTOPR)
E: 3
E+1: pointer to destination area for ASCIZ name
string
E+2: number of bytes in destination area
36 .MOSTS Set the status of the line printer.
Argument Block
E: 3
E+1: software status word, with the following
status bits settable by the caller:
B0(MO%LCP) Set line printer as a lower
case printer.
B12(MO%EOF) Set bit MO%EOF in the printer
status word when all data sent
to printer has actually been
printed. The status word can
be obtained with the .MORST
function.
B14(MO%SER) Clear the software error
condition on the line printer.
This condition usually occurs
on a character interrupt.
Other status bits can be read with the
.MORST function (see below) but cannot be
set by the caller.
E+2: value for page counter register. The caller
can indicate the number of pages to be
printed by specifying a value of up to 12
bits (4096). Each time the printer reaches
the top of a new page, it decrements the
value by one. When the value becomes zero,
the printer sets status bit MO%LPC and
generates an interrupt if the .MOPSI
function was given previously.
If the caller specifies a value of 0 in the
register, the system will maintain the page
counter and will not generate an interrupt
to the caller when the page counter becomes
zero.
If the caller specifies a value of -1 in the
register, the value will be ignored.
37 .MORST Read the status of the line printer. The status
is obtained from the front end, and the caller is
blocked until it receives the status.
Argument Block
(MTOPR)
E: 3
E+1: status word. The following bits are
defined:
B0(MO%LCP) Line printer is a lower case
printer. This bit is set only
if a .MOSTS function declaring
the printer lower case was
executed previously.
B1(MO%RLD) Front end has been reloaded.
This bit is reset to zero the
next time any I/O activity
begins for the line printer.
B10(MO%FER) A fatal hardware error
occurred. This condition
generates a software interrupt
on channel 11 (.ICDAE).
B12(MO%EOF) All data sent to printer has
actually been printed.
B13(MO%IOP) Output to the line printer is
in progress.
B14(MO%SER) A software error (e.g.,
interrupt character, page
counter overflow) occurred.
B15(MO%HE) A hardware error occurred.
This error generates a software
interrupt on channel 11
(.ICDAE). This condition
usually requires that the forms
be realigned.
B16(MO%OL) Line printer is offline. This
bit is set on the occurrence of
any hardware condition that
requires operator intervention.
B17(MO%FNX) Line printer does not exist.
B30(MO%RPE) A RAM parity error occurred.
B31(MO%LVU) The line printer has an optical
(12-channel tape reader) VFU.
B33(MO%LVF) A VFU error occurred. The
paper has to be realigned.
B34(MO%LCI) A character interrupt occurred.
This generates a software
interrupt on channel 11
(MTOPR)
(.ICDAE).
B35(MO%LPC) The page counter register has
overflowed.
Bits 2-17 contain the software status word
from the front end, and bits 20-35 contain
the hardware status word.
E+2: value of page counter register. A value of
-1 indicates the printer has no page counter
value defined.
40 .MOFLO Flush any line printer output that has not yet
been printed.
PCDP Functions
The functions available for physical card punches (PCDP) are described
below. Like the LPT functions, these functions accept the address of
an argument block in AC3. The first word of the block contains the
length (including this word) of the block. Remaining words in the
block contain arguments for the particular function.
Code Symbol Meaning
27 .MOPSI Enable for a software interrupt on nonfatal device
conditions. Examples of these conditions are:
1. Device changed from offline to online.
2. Device changed from online to offline.
Other device errors or software conditions are not
handled by this function; instead they cause a
software interrupt on channel 11 (.ICDAE).
Argument Block
E: 3
E+1: interrupt channel number
E+2: flags. The following flag is defined:
B0(MO%MSG) Suppress standard CTY device
messages.
37 .MORST Read the status of the card punch. The status is
obtained from the front end, and the caller is
blocked until it receives the status.
Argument Block
E: 2
E+1: status word. Bits 2-17 contain the software
status word from the front end, and bits
(MTOPR)
20-35 contain the hardware status word.
B10(MO%FER) Fatal error condition
B12(MO%EOF) All pending output has been
processed
B13(MO%IOP) Output in progress
B14(MO%SER) Software error has occurred
(would generate an interrupt on
an assigned channel)
B15(MO%HE) Hardware error has occurred
(would generate interrupt on
channel .ICDAE)
B16(MO%OL) Card punch is offline. This
bit is set when operator
intervention is required (card
jam, hopper empty, or stacker
full).
B17(MO%FNX) Card punch doesn't exist
B32(MO%HEM) Hopper is empty or stacker is
full
B33(MO%SCK) Hopper is empty or stacker is
full (same as above)
B34(MO%PCK) Pick check
PCDR Functions
The functions available for physical card readers (PCDR) are described
below. These functions accept the address of an argument block in
AC3. The first word of the block contains the length (including this
word) of the block. Remaining words in the block contain arguments
for the particular function.
Code Symbol Meaning
27 .MOPSI Enable for a software interrupt on nonfatal device
conditions. Examples of these conditions are:
1. Device changed from offline to online.
2. Device changed from online to offline.
Other device errors or software conditions are not
handled by this function; instead they cause a
software interrupt on channel 11 (.ICDAE).
Argument Block
E: 3
E+1: interrupt channel number
E+2: flags. The following flag is defined:
B0(MO%MSG) Suppress standard CTY device
messages.
37 .MORST Read the status of the card reader. The status is
(MTOPR)
obtained from the front end, and the caller is
blocked until it receives the status.
Argument Block
E: 2
E+1: status word. Bits 2-17 contain the software
status word from the front end, and bits
20-35 contain the hardware status word.
B0(MO%COL) Card reader is on line. This
bit is not obtained from the
front end.
B1(MO%RLD) Front end has been reloaded.
This bit is reset to zero the
next time I/O activity begins
for the card reader.
B10(MO%FER) A fatal hardware error
occurred. This condition
generates a software interrupt
on channel 11 (.ICDAE).
B12(MO%EOF) Card reader is at end of file.
B13(MO%IOP) Input from the card reader is
in progress.
B14(MO%SER) A software error (e.g.,
interrupt character) occurred.
B15(MO%HE) A hardware error occurred.
This error generates a software
interrupt on channel 11
(.ICDAE).
B16(MO%OL) Card reader is off line. This
bit is set on the occurrence of
any hardware condition that
requires operator intervention.
B17(MO%FNX) Card reader does not exist.
B31(MO%SFL) The output stacker is full.
B32(MO%HEM) The input hopper is empty.
B33(MO%SCK) A card did not stack correctly
in the output stacker.
B34(MO%PCK) The card reader failed to pick
a card correctly from the input
hopper.
(MTOPR)
B35(MO%RCK) The card reader detected a read
error when reading a card.
PTY Functions
The functions available for pseudo-terminals (PTY)
are described below. Some of these functions
accept arguments in AC3. (Refer to the individual
descriptions.)
Code Symbol Meaning
24 .MOAPI Assign PTY interrupt channels. This function
requires AC2 to contain
B0(MO%WFI) enable waiting-for-input interrupt
B1(MO%OIR) enable output-is-ready interrupt
B12-B17(MO%SIC) software interrupt channel number
for output to the PTY. The
channel number used for input from
the PTY is one greater than the
channel number used for output to
the PTY.
B18-B35 function code
25 .MOPIH Determine if PTY job needs input. On a successful
return, AC2 contains 0(.MONWI) if PTY job is not
waiting for input or contains -1(.MOWFI) if PTY
job is waiting for input.
26 .MOBAT Set batch control bit. This function requires AC3
to contain 0(.MONCB) if the job is not to be
controlled by batch or to contain 1(.MOJCB) if the
job is to be controlled by batch. To obtain this
value, the process can execute the GETJI JSYS,
function .JIBAT.
TTY Functions
25 .MOPIH Determine if TTY job needs input. On a successful
return, AC2 contains 0(.MONWI) if TTY job is not
waiting for input or contains -1(.MOWFI) if TTY
job is waiting for input.
26 .MOSPD Set the terminal line speed. This function
accepts in AC3 the desired line speed (input speed
in the left half and output speed in the right
half). The left half of AC2 contains flag bits
indicating the type of line being set. If
B0(MO%RMT) is on, the line is a remote (dataset)
line. If B1(MO%AUT) is on, the line is a remote
autobaud line (i.e., is automatically set at 300
baud, and the contents of AC3 are ignored. The
process must have WHEEL or OPERATOR capability
(MTOPR)
enabled to set B0(MO%RMT) and B1(MO%AUT).
27 .MORSP Return the terminal line speed. On a successful
return, the left half of AC2 contains flag bits
indicating the type of line, and AC3 contains the
speed (input speed in the left half and output
speed in the right half). If B0(MO%RMT) of AC2 is
on, the line is a remote line, and if B1(MO%AUT)
is on, the line is a remote autobaud line. AC3
contains the speed or contains -1 if the speed is
unknown or is not applicable.
30 .MORLW Return the terminal page width. On a successful
return, AC3 contains the width.
31 .MOSLW Set the terminal page width. This function
requires AC3 to contain the desired width.
32 .MORLL Return the terminal page length. On a successful
return, AC3 contains the length.
33 .MOSLL Set the terminal page length. This function
requires AC3 to contain the desired length.
34 .MOSNT Specify if terminal line given in AC1 is to
receive system messages. This function requires
AC3 to contain 0 (.MOSMY) to allow messages or 1
(.MOSMN) to suppress messages.
35 .MORNT Return a code indicating if terminal line given in
AC1 is to receive system messages. On a
successful return, AC3 contains 0 (.MOSMY) if
messages are being sent to this line or 1 (.MOSMN)
if messages are being suppressed to this line.
36 .MOSIG Specify if input on this terminal line is to be
ignored when the line is inactive (i.e., is not
assigned or opened). This function requires AC3
to contain 0 if characters on this line are not to
be ignored or 1 if characters on this line are to
be ignored. When input is being ignored and
characters are typed, no CTRL/G (bell) is sent, as
is the normal case when characters are typed on an
inactive line.
37 .MORBM Read the 128-character break mask. The argument
block is the same as for .MOSBM (below).
40 .MOSBM Sets the 128-character break mask. Argument Block
E: 0,,4
E+1-E+4: character mask. The leftmost 32 bits of
each consecutive word correspond to the
ASCII character set in ascending order.
For example, 1B0 in word E+1 (of the
(MTOPR)
argument block) corresponds to ASCII code
000 (null), 1B1 in word E+1 corresponds
to ASCII code 001 (SOH), etc. Bits 32-35
must be zero.
41 .MORFW Returns the current value of the field width in
AC3. Note that this may be less than the value
last set by .MOSFW. If the field width is set to
value X and two characters are read before the
.MORFW is executed, the value returned will be
X-2. A zero returned in AC3 indicates that no
field width is now in effect.
42 .MOSFW Set the field width to the value in AC3. A zero
indicates that no field width is in effect.
45 .MOSLC Set the terminal's line counter to value in AC3.
This counter is incremented by the monitor
everytime a linefeed is output to the terminal.
The monitor clears this counter only when a line
becomes active.
46 .MORLC Read the terminal's line counter and return with
its value in AC3.
47 .MOSLM Set line maximum to the value in AC3. This
function sets the maximum value of the line
counter seen so far. The monitor compares the
line counter with the maximum every time a
linefeed is typed, and if the the line counter
value is larger, the monitor sets the line maximum
to the value of the line counter. When TEXTI
moves the cursor up on screen terminals, it
decrements the line counter.
50 .MORLM Read the current value of the line maximum and
return with its value in AC3.
51 .MOTPS Assign interrupt channels for non-controlling
terminal. The channels are specified in AC3 as
follows: input PSI channel,, output PSI channel.
An interrupt will be generated if a character is
input, or an output-buffer-empty condition occurs
on output. The channels can be cleared by setting
the appropriate half (or halves) of AC3 to -1.
Generates an illegal instruction interrupt on error conditions below.
MTOPR ERROR MNEMONICS:
DESX1: invalid source/destination designator
DESX2: terminal is not available to this job
DESX3: JFN is not assigned
(MTOPR)
DESX4: invalid use of terminal designator or string pointer
DESX5: file is not open
DESX9: invalid operation for this device
IOX4: end of labels encountered
IOX5: device or data error
MTOX1: invalid function
MTOX2: record size was not set before I/O was done
MTOX3: function not legal in dump mode
MTOX4: invalid record size
MTOX5: invalid hardware data mode for magnetic tape
MTOX6: invalid magnetic tape density
MTOX7: WHEEL or OPERATOR capability required
MTOX8: argument block too long
MTOX9: output still pending
MTOX10: VFU or RAM file cannot be OPENed
MTOX11: data too large for buffers
MTOX12: input error or not all data read
MTOX13: argument block too small
MTOX14: invalid software interrupt channel number
MTOX15: device does not have Direct Access (programmable) VFU
MTOX16: VFU or Translation RAM file must be on disk
MTOX17: device is not on line
MTOX18: invalid software interrupt channel number
MTOX19: invalid terminal line width
MTOX20: invalid terminal line length
TTYX01: line is not active
(MTU%)
Node: MTU% Previous: MTOPR Next: MUTIL Up: Top
MTU% JSYS 600
Allows privileged programs to perform various utility functions for
mag tape MTnn: devices. This JSYS differs from the MTOPR JSYS in
that the invoking program need not have a JFN on the MT nor need it
even have access to the MT. It is used by MOUNTR to declare a volume
switch error and by the access-control program (user supplied) to read
file and volume labels.
RESTRICTIONS: Requires enabled WHEEL or OPERATOR capabilities
ACCEPTS IN AC1: function code
AC2: MT unit number
AC3: address of argument block
RETURNS +1: always
The functions and associated argument blocks are as follows:
Code Symbol Function
0 .MTNNV Declare volume switch error
Argument Block:
Word Symbol Contents
0 .MTCNT count of words in block
1 .MTCOD error code to return to user
2 .MTPTR byte pointer to operator response
1 .MTRAL Read labels.
Argument Block:
Word Symbol Contents
0 .MTCNT count of words in block
1 .MTVL1 byte pointer to area to hold VOL1
label
2 .MTVL2 byte pointer to area to hold VOL2
label
3 .MTHD1 byte pointer to area to hold HDR1
label
4 .MTHD2 byte pointer to area to hold HDR2
label
If any of the byte pointers is zero, the
associated string is not returned.
2 .MTASI return assignment information
(MTU%)
Argument Block:
Word Symbol Contents
0 .MTCNT count of words in block
1 .MTPHU returned MTA number associated
with the MT. If there is no
association, .MTNUL is returned.
This function is used by MOUNTR to determine if
there are any existing MT to MTA associations.
This is necessary when MOUNTR is restarted.
Node: MUTIL Previous: MTU% Next: (JSYS4NR)NIN Up: Top
MUTIL JSYS 512
Performs various IPCF (Inter-Process Communication Facility)
functions, such as enabling and disabling PIDs, assigning PIDs, and
setting quotas. Refer to the TOPS-20 Monitor Calls User's Guide for
an overview and description of the Inter-Process Communication
Facility.
RESTRICTIONS: some functions require WHEEL, OPERATOR, or IPCF
capability enabled
ACCEPTS IN AC1: length of argument block
AC2: address of argument block
RETURNS +1: failure, error code in AC1
+2: success. Responses from the requested function are
returned in the argument block.
The format of the argument block is as follows:
Word Meaning
0 Code of desired function. (See below.)
1 through n Arguments for the desired function. The
arguments, which depend on the function requested,
begin in word 1 and are given in the order shown
below. Responses from the requested function are
returned in these words.
The available functions, along with their arguments, are described
below.
Code Symbol Meaning
1 .MUENB Enable the specified PID to receive packets. The
(MUTIL)
PID must have been created by the caller's job.
Also, if the calling process was not the creator
of the PID, the no-access bit (IP%NOA) must be
off.
Argument
PID
2 .MUDIS Disable the specified PID from receiving packets.
The PID must have been created by the caller's
job. Also, if the calling process was not the
creator of the PID, the no-access bit (IP%NOA)
must be off.
Argument
PID
3 .MUGTI Return the PID associated with <SYSTEM>INFO. The
PID is returned in word 2 of the argument block.
Argument
PID or job number
4 .MUCPI Create a private copy of <SYSTEM>INFO for the
specified job. The caller must have WHEEL,
OPERATOR, or IPCF capability enabled.
Arguments
PID to be assigned to <SYSTEM>INFO
PID or number of job creating private copy
5 .MUDES Delete the specified PID. The caller must own the
PID being deleted.
Argument
PID
6 .MUCRE Creates a PID for the specified process or job.
The flags that can be specified are B6(IP%JWP) to
make the PID job wide and B7(IP%NOA) to prevent
access to PID from other processes. The caller
must have IPCF capability enabled if the job
number given is not that of the caller. The PID
created is returned in word 2 of the argument
block. If a job number is specified, the created
PID will belong to the top fork of the job.
Argument
flags,,process handle or job number
(MUTIL)
7 .MUSSQ Set send and receive quotas for the specified PID.
The caller must have IPCF capability enabled. The
new send quota is given in B18-B26, and the new
receive quota is given in B27-B35. The receive
quota applies to the specified PID, but the send
quota applies to the job to which that PID
belongs.
Arguments
PID
new quotas
10 .MUCHO Change the job number associated with the
specified PID. The caller must have WHEEL or
OPERATOR capability enabled.
Arguments
PID
new job number or PID belonging to new job
11 .MUFOJ Return the job number associated with the
specified PID. The job number is returned in word
2 of the argument block.
Argument
PID
12 .MUFJP Return all PIDs associated with the specified job.
Two words are returned, starting in word 2 of the
argument block, for each PID. The first word is
the PID. The second word has B6(IP%JWP) set if
the PID is job wide and B7(IP%NOA) set if the PID
is not accessible by other processes. The list is
terminated by a 0 PID.
Argument
job number or PID belonging to that job
13 .MUFSQ Return the send and receive quotas for the
specified PID. The quotas are returned in word 2
of the argument block with the send quota in
B18-B26 and the receive quota in B27-B35. The
receive quota applies to the specified PID, but
the send quota applies to the job to which that
PID belongs.
Argument
PID
15 .MUFFP Return all PIDs associated with the same process
(MUTIL)
as that of the specified PID. The list of PIDs
returned is in the same format as the list
returned for the .MUFJP function (12).
Argument
PID
16 .MUSPQ Set the maximum number of PIDs allowed for the
specified job. The caller must have IPCF
capability enabled.
Arguments
job number or PID
PID quota
17 .MUFPQ Return the maximum number of PIDs allowed for the
specified job. The PID quota is returned in word
2 of the argument block.
Argument
job number or PID
20 .MUQRY Return the Packet Descriptor Block for the next
packet in the queue associated with the specified
PID. An argument of -1 returns the next
descriptor block for the process, and an argument
of -2 returns the next descriptor block for the
job. The descriptor block is returned starting in
word 1 of the argument block. The calling process
and the process that owns the specified PID must
belong to the same job.
Argument
PID
21 .MUAPF Associate the PID with the specified process. The
calling process and the process that owns the
specified PID must belong to the same job.
Arguments
PID
process handle
22 .MUPIC Place the specified PID on a software interrupt
channel. An interrupt is then generated when:
1. The .MUPIC function is issued while the PID
has one or more messages in its receive queue.
(MUTIL)
2. The PID's receive queue message count goes
from 0 to 1.
If the channel number is given as -1, the PID is
removed from its current channel.
The calling process and the process that owns the
specified PID must belong to the same job.
Arguments
PID
channel number
23 .MUDFI Set the PID of <SYSTEM>INFO. An error is given if
<SYSTEM>INFO already has a PID. The caller must
have IPCF capability enabled.
Argument
PID of <SYSTEM>INFO
24 .MUSSP Place the specified PID into the system PID table
at the given offset. The caller must have WHEEL,
OPERATOR, or IPCF capability enabled. See .MURSP
for a list of system PIDs.
Arguments
index into system PID table
PID
25 .MURSP Return a PID from the system PID table. The PID
is returned in word 2 of the argument block. The
system PID table currently has the following
entries:
0 .SPIPC Reserved for DEC
1 .SPINF PID of <SYSTEM>INFO
2 .SPQSR PID of QUASAR
3 .SPMDA PID of QSRMDA
4 .SPOPR PID of ORION
Argument
index into system PID table
26 .MUMPS Return the system-wide maximum packet size. The
size is returned in word 1 of the argument block.
27 .MUSKP Set PID to receive deleted PID messages. Allows a
controller task to be notified if one of its
subordinate tasks crashes. After this function is
performed, if the subordinate PID is ever deleted
(MUTIL)
(via RESET or the .MUDES MUTIL function), the
monitor will send an IPCF message to the
controlling PID notifying it that the subordinate
PID has been deleted. This message contains
.IPCKP in word 0 and the deleted PID in word 1.
Argument
Source (subordinate) PID
Object (controller) PID
30 .MURKP Return controlling PID for this subordinate PID.
Argument
Source (subordinate) PID
Object (controller) PID (returned)
MUTIL ERROR MNEMONICS:
IPCFX2: no message for this PID
IPCFX3: data too long for user's buffer
IPCFX4: receiver's PID invalid
IPCFX5: receiver's PID disabled
IPCFX6: send quota exceeded
IPCFX7: receiver quota exceeded
IPCFX8: IPCF free space exhausted
IPCFX9: sender's PID invalid
IPCF10: WHEEL capability required
IPCF11: WHEEL or IPCF capability required
IPCF12: no free PID's available
IPCF13: PID quota exceeded
IPCF14: no PID's available to this job
IPCF15: no PID's available to this process
IPCF16: receive and message data modes do not match
IPCF17: argument block too small
IPCF18: invalid MUTIL JSYS function
(MUTIL)
IPCF19: no PID for [SYSTEM]INFO
IPCF20: invalid process handle
IPCF21: invalid job number
IPCF22: invalid software interrupt channel number
IPCF23: [SYSTEM]INFO already exists
IPCF24: invalid message size
IPCF25: PID does not belong to this job
IPCF26: PID does not belong to this process
IPCF27: PID is not defined
IPCF28: PID not accessible by this process
IPCF29: PID already being used by another process
IPCF30: job is not logged in
IPCF32: page is not private
IPCF33: invalid index into system PID table
IPCF35: invalid IPCF quota