;;; -*- Mode:LISP; Package:TAPE; Readtable:CL; Base:10 -*-


(defvar patchname (fs:parse-pathname "sys:patch;system-123.patch-directory#>"))

(setq patches
      (loop for patch from 248 to (nth-value 1 (si:get-system-version 'system))
	    collect
	    (send patchname
		  :new-pathname
		  :name (format nil "SYSTEM-123-~d" patch)
		  :type :wild)))

(setq l
      (cons patchname
	    (append patches
		    (mapcar #'(lambda(path)
				(make-pathname :defaults path
					       :type :wild
					       :version :highest))
			    '(
			      "aza:keith;*.*#>"
			      ;;tiger
;			      "sys:hardcopy;tiger;*.*#>"
;			      "sys:ubin;*.*#1756"
			      ;;microcode
;			      "sys:ulambda;uc-arith.*#>"
			      ;;tape
			      "sys:tape;tframe-window.*#"
			      "sys:tape;patch-22-4.#>"
			      "sys:tape;patch-22.directory"
			      ;;serial-ip
			      "sys:network;serial-ip;*.lisp"
			      "sys:network;serial-ip;*.qfasl"
			      "sys:network;serial-ip;patch;serial-ip-1*"
			      ;;patched files
			      "sys:window;stream"
;			      "sys:network;ip-tcp;kernel;tcp"
;			      "sys:network;chaos;chsaux"
;			      "sys:sys;types"
;			      "sys:network;host"
;			      "sys:zwei;host"
;			      "sys:network;ip-tcp;user;imagen"
;			      "sys:sys2;maksys"
;			      "sys:network;table"
;			      "sys:io;format"
;			      "sys:io;file;pathst"
;			      "sys:zwei;sectio"
			      "sys:sys;genric"
			      "sys:file;server-22*"
			      "sys:file;server.lisp"
			      "sys:file;fs-73*"
			      "sys:file;fsguts.lisp"
			      "sys:sys;sysdcl")))))

(pprint(mapcan #'directory l))

(progn
  (tape:write-files (mapcan #'directory l))
  (tape:finish-tape))
