anchor.diff:                                   ;; Copy short part
                                    (let ((metadata (subseq source-dir source-start (+ 32 source-start))))
                                      (replace dest-dir metadata :start1 end-offset))
  -                                 ;; Make short-name
  -                                 (loop :for char-n :from 0 :to 7
  -                                       :for char :across pathname-name
  -                                       :do (setf (aref short-name char-n)
  -                                                 char))
  -                                 (when pathname-type
  -                                   (loop :for char-n :from 8 :to 10
  -                                         :for char :across pathname-type
  -                                         :do (setf (aref short-name char-n)
  -                                                   char)))
  -                                 ;; Check for short name collision
  -                                 (do-files (offset) dest-dir t
  -                                   (when (string= short-name (read-short-name dest-dir offset))
  -                                     (error "Short name ~A does alredy exist.~A~%Short name collision resolution not implemented" short-name)))
                                    ;; Change short name
                                    (setf (read-short-name dest-dir end-offset) short-name)
                                    ;; Write long name parts only if needed
  
positive.code:             :do (setf (aref short-name char-n)
                        char)))
      ;; Check for short name collision
      (do-files (offset) file t
        (when (string= short-name (read-short-name file offset))
          (error "Short name ~A does alredy exist.~A~%Short name collision resolution not implemented" short-name)))
      (multiple-value-bind (time date) (get-fat32-time)
        (let ((cluster-number (next-free-cluster (fat host))))
          (flet ((set-short-name (name file start-offset cluster-number)
  
negative.code:       (setf i 0
              r j))))
  
  (defun make-short-name (pathname-name pathname-type file)
    (let ((short-name (make-string 11 :initial-element #\Space)))
      (loop :for char-n :from 0 :to 7
            :for char :across pathname-name
            :do (setf (aref short-name char-n)
  