anchor.diff:        (- (1+ (logxor value (if is-word #xffff #xff))))
         value))
   
  -(defun wrap-overflow (value is-word)
  -  "Wrap around an overflowed value."
  -  (let ((overflow (if is-word (>= value #x10000) (>= value #x100))))
  -    (setf *has-overflowed* overflow)
  -    (if overflow
  +(defun wrap-carry (value is-word)
  +  "Wrap around an carried value."
  +  (let ((carry (if is-word (>= value #x10000) (>= value #x100))))
  +    (setf *has-carried* carry)
  +    (if carry
   	(if is-word (mod value #x10000) (mod value #x100))
   	value)))
   
  
positive.code:     (getf *registers* reg)))
  
  (defun set-reg (reg value)
    (setf (getf *registers* reg) (wrap-overflow value t)))
  
  (defsetf register set-reg)
  
  
negative.code: 	  (logand (register word) #x00ff)))))
  
  (defun set-byte-reg (reg value)
    (let* ((register-to-word (getf +byte-register-to-word+ reg)) (word (first register-to-word)) (wrapped-value (wrap-carry value nil)))
      (if (second register-to-word)
  	(setf (register word) (+ (ash wrapped-value 8) (logand (register word) #x00ff)))
  	(setf (register word) (+ wrapped-value (logand (register word) #xff00))))))
  