Mon Jun 1 07:21:38 CEST 2009

usb and debugging

Let's get target->host communication working to at least make debug
print statements work.

The idea is this: whenever a command gets executed, the host waits
either for ACK (zero length message) or a command to execute.  For now
let's just stick to display.

It is quite trivial.  Apparently "emit" was already defined as
: ack1 1 transmit transmit ;

The host side then is simple: on every execute, expect printouts
before ack (empty message).

(define (tslurp)
  (let ((reply (target-receive/b)))
    (unless (null? reply)
      (display (list->bytes reply))

(define (texec/b addr)
  (~texec/b addr)