anchor.diff:  (defmethod sys.gray:stream-element-type ((stream fat32-file-character-stream))
     'character)
   
  -;; WIP
  -;; TODO resize to files bigger than 1 cluster
   (defmethod sys.gray:stream-write-byte ((stream fat32-file-stream) byte)
     (assert (member (direction stream) '(:output :io)))
     (when (> (buffer-offset stream)
              (read-buffer-size stream))
       (setf (read-buffer-size stream)
             (buffer-offset stream)))
  +  (let ((array-size (array-dimension (read-buffer stream) 0)))
  +    (when (>= (buffer-offset stream) array-size)
  +      (let* ((host (host stream))
  +             (fat32 (fat32-structure host)))
  +        (setf (read-buffer stream) (adjust-array (read-buffer stream)
  +                                                 (+ array-size (bytes-per-cluster fat32))
  +                                                 :initial-element 0)))))
     (setf (aref (read-buffer stream)
                 (buffer-offset stream))
           byte)
  
positive.code:     (replace sequence (read-buffer stream) :start1 start :end1 end :start2 0 :end2 end2)
      end2))
  
  ;; WIP
  ;; TODO resize to files bigger than 1 cluster
  (defmethod sys.gray:stream-write-char ((stream fat32-file-character-stream) char)
    (assert (member (direction stream) '(:output :io)))
    (when (> (buffer-offset stream)
             (read-buffer-size stream))
      (setf (read-buffer-size stream)
            (buffer-offset stream)))
    (setf (aref (read-buffer stream)
                (buffer-offset stream))
          (char-code char))
  
negative.code:                              (char-code char)))
                   (setf (aref file (+ i 11)) attributes
                         (aref file (+ i 12)) 0
                         (aref file (+ i 13)) 0
                         (sys.int::ub16ref/le file (+ i 14)) time
                         (sys.int::ub16ref/le file (+ i 16)) date
                         (sys.int::ub16ref/le file (+ i 18)) date
  