Trailing-Edge
-
PDP-10 Archives
-
-
There are no other files named in the archive.
(FILECREATED "24-AUG-81 13:50:30" <LISPUSERS>PERMSTATUS.;7 1936
changes to: PERMSTATUS
previous date: "16-APR-79 16:39:21" <LISPUSERS>PERMSTATUS.;5
)
(* copyright (c) 1981 Xerox Corporation)
(PRETTYCOMPRINT PERMSTATUSCOMS)
(RPAQQ PERMSTATUSCOMS [(FNS PERMSTATUS)
(LOCALVARS . T)
(DECLARE: DOEVAL@COMPILE DONTCOPY (P (RESETSAVE DWIMIFYCOMPFLG T])
(DEFINEQ
(PERMSTATUS
[LAMBDA (FILE ACCESS BYTESIZE FILEPTR WRITEDATE MDP) (* DECLARATIONS:)
(* rmk: "24-AUG-81 13:50")
(* If ACCESS=NIL, returns a form that RESTOREFILES can execute to restore the status of a permanent file.
The form will call PERMSTATUS with ACCESS not NIL and with the necessary additional information specified as
arguments.)
(COND
[(NULL ACCESS)
(PROG [(OFD (SELECTQ (SYSTEMTYPE)
((TENEX TOPS20)
(OPNJFN FILE))
(\GETOFD FILE]
(RETURN (LIST (QUOTE PERMSTATUS)
FILE
(SETQ ACCESS (GETFILEINFO OFD (QUOTE ACCESS)))
(GETFILEINFO OFD (QUOTE OPENBYTESIZE))
(GETFILEPTR FILE)
(GETFILEINFO OFD (QUOTE IWRITEDATE]
(T (COND
([AND WRITEDATE (NOT (IEQP WRITEDATE (GETFILEINFO FILE (QUOTE IWRITEDATE]
(LISPXPRIN1 "****WARNING: Writedate on permanent file has changed: " T)
(LISPXPRINT FILE T)))
(COND
((NLSETQ (OPENFILE FILE ACCESS (QUOTE OLD)
BYTESIZE MDP)) (* Check the writedate BEFORE opening)
(COND
((NEQ ACCESS (QUOTE APPEND))
(SETFILEPTR FILE FILEPTR)))
(RESTOREMAP FILE) (* Restore page map ala the PMAP package)
T])
)
(DECLARE: DOEVAL@COMPILE DONTCOPY
(LOCALVARS . T)
)
(DECLARE: DOEVAL@COMPILE DONTCOPY
(RESETSAVE DWIMIFYCOMPFLG T)
)
(DECLARE: DONTCOPY
(FILEMAP (NIL (407 1786 (PERMSTATUS 419 . 1783)))))
STOP