anchor.diff:    (unless scale
       (set! scale value-scale))
     (emit out "~A~A ~A, ~A" insn (insn-size-suffix scale)
  -        (funcall src scale) (funcall dest scale)))
  +        (insn-operand src scale) (insn-operand dest scale)))
   
   (define-insn-2 emit-mov "mov")
   (define-insn-2 emit-lea "lea")
  
positive.code: 
  ;;; Registers
  
  (define (value-sized reg)
    (funcall reg value-scale))
  
  (defmarco (define-register name . variants)
    (quasiquote (define (unquote name)
                  (lambda (scale) (elt (quote (unquote variants)) scale)))))
  
  (define-register %a "%al" "%ax" "%eax" "%rax")
  (define-register %b "%bl" "%bx" "%ebx" "%rbx")
  
negative.code:   (emit out "pop~A ~A" value-insn-size-suffix (value-sized reg)))
  
  (define (emit-set out cc reg)
    (emit out "set~A ~A" cc (insn-operand reg 0)))
  
  (defmarco (define-insn-1 name insn)
    (quasiquote
  