anchor.diff:    (loop :for byte :across data-vector :do
        (write-to-nxt-byte byte))
     (force-output *connection*))
  -
  -(defun reply-expected (command)
  -  "Returns T if a reply is expected.
  -A reply is expected if the bit in position 7 (MSB) is 0"
  -  (eql 0 (ldb (byte 1 7) (aref command 0))))
  -
       
   (defun read-nxt-reply ()
     (let* ((length (read-from-nxt-us))
  
positive.code:        (setf (aref result i) (read-from-nxt-byte)))
      result))
  
  (defun send-to-nxt (command)
    "Write command to nxt and read reply if a reply is expected."
    (write-to-nxt command)
    (when (reply-expected command)
      (read-nxt-reply)))
  
  
  (defun dump-message (message)
    (loop :for x :across message 
       :for i :from 0  :do
       (format t "~2D: ~3D ~16R~%" i x x)))
  
  (defun test (&optional (command 'get-firmware-version))
    (let ((reply (send-to-nxt (make-command command))))
      (format t "~A~%" reply)
      reply))
       
  
  (defun status (reply)
    (aref reply 2))
  
  (defun handle (reply)
    (aref reply 3))
negative.code:   (setf *connection* nil))
  
  
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;; LOWLEVEL COMMUNICATION TO THE NXT
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  (defun write-to-nxt-byte (byte)
    "Write a raw byte to the nxt."
    (write-byte byte *connection*))
  