anchor.diff:  (print "Your QEmu session ready to debug")
   ; Looks like our machine ready to start, ok.
   
  -; окошко с регистрами. обновляет, добывает, рисует
  -(fork-server 'registers (lambda ()
  -(let loop ((ff #empty))
  -(let*((envelope (wait-mail))
  -      (sender msg envelope))
  -   (let ((eax (bytes->number (gdb gdb-p-x-answer-parser "p/x $eax") 16))
  -         (ebx (bytes->number (gdb gdb-p-x-answer-parser "p/x $ebx") 16))
  -         (ecx (bytes->number (gdb gdb-p-x-answer-parser "p/x $ecx") 16))
  -         (edx (bytes->number (gdb gdb-p-x-answer-parser "p/x $edx") 16))
  -         (esp (bytes->number (gdb gdb-p-x-answer-parser "p/x $esp") 16))
  -         (ebp (bytes->number (gdb gdb-p-x-answer-parser "p/x $ebp") 16))
  -         (esi (bytes->number (gdb gdb-p-x-answer-parser "p/x $esi") 16))
  -         (edi (bytes->number (gdb gdb-p-x-answer-parser "p/x $edi") 16))
  -         (eip (bytes->number (gdb gdb-p-x-answer-parser "p/x $eip") 16))
  -         (show (lambda (x y reg value)
  -            (locate x y)
  -            (set-color DARKGREY)
  -            (for-each display (list "$" reg " "))
  -            (set-color (if (eq? value (get ff reg -1)) GREY RED))
  -            (display ($reg->string value)))))
  -
  -      (show 60 1 'eax eax)
  -      (show 60 2 'ebx ebx)
  -      (show 60 3 'ecx ecx)
  -      (show 60 4 'edx edx)
  -      (show 60 5 'esp esp)
  -      (show 60 6 'ebp ebp)
  -      (show 60 7 'esi esi)
  -      (show 60 8 'edi edi)
  -
  -      (show 60 10 'eip eip)
  -
  -      (mail sender 'ok)
  -      (loop (fold (lambda (ff v)
  -                     (put ff (car v) (cdr v)))
  -               ff `(
  -                  (eax . ,eax) (ebx . ,ebx) (ecx . ,ecx) (edx . ,edx)
  -                  (esp . ,esp) (ebp . ,ebp) (esi . ,esi) (edi . ,edi)
  -                  (eip . ,eip)
  -               ))))))))
  +,load "registers.lisp"
   
   (fork-server 'code (lambda ()
   (let loop ((ff #empty))
   (let*((envelope (wait-mail))
         (sender msg envelope))
  -   (let ((code (gdb gdb-x-i-answer-parser "x/11i $pc")))
  +   (let ((code (gdb gdb-x-i-answer-parser "x/11i $eip")))
         (locate 1 1) (set-color GREY)
         (for-each (lambda (ai)
               (display "                                                           \x1B;[1000D")
  
positive.code: 
                 (locate 3 20)
                 (show-cursor)
                 (let ((command (read)))
                    (cond
                       ((eq? command 'save)
  
negative.code: 
              ; Step Over
              ((key-pressed #xffc3) ; F6
                 (let ((code (gdb gdb-x-i-answer-parser "x/2i $eip")))
                    ;(caar code) <= current ip
                    ;(caadr code) <= next ip
                    (print "  " ($reg->string (caadr code)))
  