Google
 

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