anchor.diff:  (defun sign-extend (value)
     (wrap-carry (twos-complement value nil) t))
   
  +(defun segment-calc (seg reg)
  +  (logand (+ (ash seg 4) reg) #xfffff))
  +
   ;;; setf-able locations
  +
  +;; Registers
   
   (defun register (reg)
     (disasm-instr reg
  
positive.code: (defun mov-offset-to-accumulator (opcode)
    (with-size-by-last-bit opcode
      (if is-word
  	(mov (word-in-ram (next-word) *ram*) (register :ax))
  	(mov (byte-in-ram (next-word) *ram*) (byte-register :al)))))
  
  (defun mov-accumulator-to-offset (opcode)
    (with-size-by-last-bit opcode
      (if is-word
  	(mov (register :ax) (word-in-ram (next-word) *ram*))
  	(mov (byte-register :al) (byte-in-ram (next-word) *ram*)))))
  
  ;; Groups 1A, 4, and 5 (inc/dec, call/jmp, and push/pop on EAs)
  
  
negative.code: 
  (defun xlat ()
    (disasm-instr '("xlat")
      (setf (byte-register :al) (segmented-byte-in-ram (+ (register :bx) (byte-register :al))))))
  
  ;;; Opcode parsing
  
  