Trailing-Edge
-
PDP-10 Archives
-
BB-M081Z-SM
-
monitor-sources/filnft.mac
There are 19 other files named filnft.mac in the archive. Click here to see a list.
; UPD ID= 8518, RIP:<7.MONITOR>FILNFT.MAC.2, 9-Feb-88 15:36:08 by GSCOTT
;TCO 7.1218 - Update copyright date.
; UPD ID= 2075, SNARK:<6.1.MONITOR>FILNFT.MAC.22, 3-Jun-85 14:35:57 by MCCOLLUM
;TCO 6.1.1406 - Update copyright notice.
; UPD ID= 4541, SNARK:<6.MONITOR>FILNFT.MAC.21, 15-Jul-84 10:49:14 by PURRETTA
;Update copyright notice
; UPD ID= 4208, SNARK:<6.MONITOR>FILNFT.MAC.20, 11-May-84 09:18:44 by MCINTEE
;Make dummy
; UPD ID= 2865, SNARK:<6.MONITOR>FILNFT.MAC.19, 24-Aug-83 08:01:56 by MCINTEE
;Node name in file spec not allowed in 6.1 either
; UPD ID= 2148, SNARK:<6.MONITOR>FILNFT.MAC.18, 4-Apr-83 13:25:11 by MCINTEE
;More TCO 6.1030 - Node name in file spec not allowed in 6.0
; UPD ID= 1393, SNARK:<6.MONITOR>FILNFT.MAC.17, 1-Nov-82 09:33:12 by MCINTEE
;FIX DIMLNK
; UPD ID= 1274, SNARK:<6.MONITOR>FILNFT.MAC.16, 4-Oct-82 12:44:53 by MCINTEE
;TCO 6.1030 - Add dummy routine DIMLNK
; UPD ID= 1098, SNARK:<6.MONITOR>FILNFT.MAC.15, 19-Aug-82 13:39:12 by MCINTEE
;TCO 6.1030 - Add routines DAPRST & DAPLGO, fork & job cleanup
; UPD ID= 1053, SNARK:<6.MONITOR>FILNFT.MAC.14, 9-Aug-82 15:28:14 by MCINTEE
;TCO 6.1219 - Extend NFTDTB for RLJFD
; UPD ID= 1042, SNARK:<6.MONITOR>FILNFT.MAC.13, 6-Aug-82 11:37:03 by MCINTEE
;more tco 6.1030 - Node verification - use OSTRF instead of ASTF
; UPD ID= 1010, SNARK:<6.MONITOR>FILNFT.MAC.12, 28-Jul-82 10:26:53 by MCINTEE
;more tco 6.1030 -add attribute lookup.
; UPD ID= 977, SNARK:<6.MONITOR>FILNFT.MAC.11, 7-Jul-82 10:54:20 by MCINTEE
;more tco 6.1030 -make extension lookup always succeed.
; UPD ID= 973, SNARK:<6.MONITOR>FILNFT.MAC.10, 1-Jul-82 10:33:07 by MCINTEE
;more tco 6.1030 -Add SEARCH DIMSYM
; UPD ID= 972, SNARK:<6.MONITOR>FILNFT.MAC.9, 30-Jun-82 16:15:48 by MCINTEE
;more tco 6.1030 -add dummy DAP% jsys
; UPD ID= 961, SNARK:<6.MONITOR>FILNFT.MAC.8, 24-Jun-82 14:35:41 by MCINTEE
;more tco 6.1030 -Return ambiguous on name & extension lookup with recognition.
; and allow NODLUK to work
; UPD ID= 782, SNARK:<6.MONITOR>FILNFT.MAC.7, 25-May-82 09:12:18 by MCINTEE
;more tco 6.1030 -return error on nonparse only NODLUKs (NFT problems)
; UPD ID= 764, SNARK:<6.MONITOR>FILNFT.MAC.6, 19-May-82 13:40:37 by MCINTEE
;more tco 6.1030 -remove previous edit
; UPD ID= 269, SNARK:<6.MONITOR>FILNFT.MAC.5, 31-Dec-81 08:59:14 by MCINTEE
;more tco 6.1030 -return error on non parse only NODLUKs
; (until NFT & FAL are fixed)
; UPD ID= 261, SNARK:<6.MONITOR>FILNFT.MAC.4, 16-Dec-81 16:21:34 by MCINTEE
;more tco 6.1030 -Device dispatch routines for name lookup (DIR,NAM,EXT,VER) always return true
;more tco 6.1030 -Node verification routine is in final form.
; COPYRIGHT (c) DIGITAL EQUIPMENT CORPORATION 1976, 1988.
; ALL RIGHTS RESERVED.
;
; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE
; INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER
; COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
; OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY
; TRANSFERRED.
;
; THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE
; AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
; CORPORATION.
;
; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
; SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY DIGITAL.
; SEARCH PROLOG,DIMSYM
SEARCH PROLOG
TTITLE FILNFT
SWAPCD
;SPECIAL AC DEFINITIONS USED HEREIN
DEFAC (STS,P1) ;SEE GTJFN FOR FUNCTIONS
DEFAC (JFN,P2)
DEFAC (DEV,P4)
DEFAC (F1,P5)
;DEVICE DEPENDENT ROUTINES. TO DO CERTAIN FUNCTIONS, THE RH OF DEV
;CONTAINS THE NAME OF A TABLE SUCH AS DSKDTB, AND A ROUTINE IS CALLED
;VIA 'CALL @FOO(DEV)', WHERE FOO IS A SYMBOL FOR AN OFFSET INTO THE
;TABLE. THE SYMBOLS ARE DEFINED IN PROLOG. IN THE COMMENTS BELOW,
;THE OFFSET IS INDICATED ALONG WITH THE PURPOSE OF THE ROUTINE
NFTDTB::NFTDTL
DTBDSP (NFTDIR) ;DLUKD - DIRECTORY SETUP
DTBDSP (NFTNAM) ;NLUKD - NAME LOOKUP
DTBDSP (NFTEXT) ;ELUKD - EXTENSION LOOKUP
DTBDSP (NFTVER) ;VLUKD - VERSION LOOKUP
; DTBDSP (NFTPRT) ;PLUKD - PROTECTION INSERTION
DTBBAD (DESX9) ;PLUKD - PROTECTION INSERTION
; DTBDSP (NFTACT) ;ALUKD - ACCOUNT INSERTION
DTBBAD (DESX9) ;ALUKD - ACCOUNT INSERTION
; DTBDSP (NFTINS) ;SLUKD - STATUS INSERTION
DTBBAD (DESX9) ;SLUKD - STATUS INSERTION
; DTBDSP (NFTOPN) ;OPEND - OPEN FILE
DTBBAD (DESX9) ;OPEND - OPEN FILE
; DTBDSP (NFTSQI) ;BIND - BYTE INPUT
DTBBAD (DESX9) ;BIND - BYTE INPUT
; DTBDSP (NFTSQO) ;BOUTD - BYTE OUTPUT
DTBBAD (DESX9) ;BOUTD - BYTE OUTPUT
; DTBDSP (NFTCLZ) ;CLOSD - CLOSE FILE
DTBBAD (DESX9) ;CLOSD - CLOSE FILE
; DTBDSP (NFTREN) ;REND - RENAME
DTBBAD (DESX9) ;REND - RENAME
; DTBDSP (NFTDEL) ;DELD - DELETE FILE
DTBBAD (DESX9) ;DELD - DELETE FILE
DTBBAD (DESX9) ;DMPID - DUMP MODE INPUT
DTBBAD (DESX9) ;DMPOD - DUMP MODE OUTPUT
DTBBAD (DESX9) ;MNTD - MOUNT DEVICE
DTBBAD (DESX9) ;DSMD - DISMOUNT DEVICE
DTBBAD (DESX9) ;INDD - INITIALIZE DIRECTORY OF DEVICE
DTBBAD (MTOX1) ;MTPD - DO MTAPE OPERATION
DTBBAD (DESX9) ;GDSTD - GET DEVICE STATUS
DTBBAD (DESX9) ;SDSTD - SET DEVICE STATUS
DTBBAD (DESX9) ;RECOUT - FORCE RECORD OUT (SOUTR)
; DTBSKP ;RECOUT - FORCE RECORD OUT (SOUTR)
DTBBAD (DESX9) ;RFTADD - READ FILE TIME AND DATE
; DTBDSP (NFTRFT) ;RFTADD - READ FILE TIME AND DATE
DTBBAD (DESX9) ;SFTADD - SET FILE TIME AND DATE
DTBBAD (DESX9) ;JFNID - SET JFN FOR INPUT
; DTBDSP (NFTINP) ;JFNID - SET JFN FOR INPUT
DTBBAD (DESX9) ;JFNOD - SET JFN FOR OUTPUT
; DTBDSP (NFTOUT) ;JFNOD - SET JFN FOR OUTPUT
DTBDSP (NFTATR) ;ATRD - CHECK ATTRIBUTE
DTBSKP ;RLJFD - release resources
NFTDTL==:.-NFTDTB ;GLOBAL LENGTH OF DISPATCH TABLE
SUBTTL DEVICE DISPATCH ROUTINES -- ALL ROUTINES
;directory lookup, always succeed
NFTDIR: RETSKP
;name lookup, succeed if not recognition
NFTNAM: TQNE <NREC1> ;recognition ?
IFSKP.
TQO <AMBGF> ;yes. say ambiguous.
RETBAD (GJFX18)
ENDIF.
RETSKP
;extension lookup, always succeed
NFTEXT: RETSKP ;allow anything.
;version lookup, always succeed
NFTVER: RETSKP ;allow anything.
;check legality of attribute
;T2/ attribute value
;CALL @ATRD(DEV)
;returns +1 on failure, +2 on success
NFTATR: TQNE <OSTRF> ;parse only ?
RETSKP ;yes. allow anything.
CAIN T2,.PFACT ;no. account ?
RETSKP ;yes. good
RETBAD (GJFX49) ;no. bad.
NFTPRT: RET
NFTACT: RET
NFTINS: RETSKP
NFTOPN: RETSKP
NFTSQI: RET
NFTSQO: RET
NFTCLZ: RETSKP
NFTREN: RETSKP
NFTDEL: RETSKP
NFTRFT: RETSKP
NFTINP: RET
NFTOUT: RET
SUBTTL DIM START UP ROUTINE
DIMLNK::RETSKP ;dummy
SUBTTL DAP% FORK CLEANUP ROUTINE
DAPRST::RET ;dummy
SUBTTL DAP% JOB CLEANUP ROUTINE
DAPLGO::RET ;dummy
SUBTTL DAP ATTENTION ROUTINE
DAPHND::SAVEAC <CX> ;dummy -
SKIPL SLOWF
IFSKP.
MCENTR
PUSH P,[IFIW!MRETN]
ENDIF.
SE1ENT
RET
SUBTTL NODE VERIFICATION
;verify syntax for node name &
;verify that node exists and is reachable, if not parse-only
; in T1 - address of string block as used by GTJFN
; in STS - parse-only flag
; CALL NODLUK
; returns +1 on failure
; returns +2 on success
; uses T1, preserves all other ACs
NODLUK::SAVEAC <T2,T3,T4> ;T1 - T4 used by PARNO1 & NDVFY1
STKVAR <BYTPTR> ;BYTPTR - byte pointer to node name
HRLI T1,440700 ;make T1 into a real byte pointer
AOS T1 ; pointing to the text.(it is ASCIZ)
MOVEM T1,BYTPTR ;save it
CALL PARNOD ;parse it, return length in T1
RETBAD() ;failed, pass along error
TQNE <OSTRF> ;Parse only ?
IFSKP.
NODLKX: NOP ;NO. nop to turn it off if needed
MOVE T2,T1 ;No. set up for node verification
MOVE T1,BYTPTR ; in monitor space
CALL NDVFY1 ;verify existence of node
TXNN T1,ND%EXM ;does such a node exist?
RETBAD(NSPX24) ;no, it is not a known node, failure
ENDIF.
RETSKP ;success
ENDSV.
;the DAP% jsys
.DAP:: MCENT
JRST UJSYS0 ;not allowed in this release.
SAVEAC <Q1,Q2>
; TXZN T1,DP%BLK ;wait for completion ?
IFSKP.
SETO T4, ;yes.
ELSE.
SETZ T4, ;no.
ENDIF.
HLRZ T3,T1 ;get function code
MOVE Q2,T1 ;save it.
; CAIL T3,0 ;is the function code legit ?
; CAILE T3,MAXFNC ;" " " " "
ITERR (DAPX0) ;No.
MRETNG ;yes.
TNXEND
END