\ output is quite simple, just clock out bits including start/stop bit \ input waits for 1->0 start bit transition, waits half a bit, then \ clocks in bits, including the stop bit. macro : wait | q-cond? | q-cond? i if begin q-cond? i not until then begin q-cond? i until ; : pauze | baudrate | 0 begin 1+ z? again ; : half-pauze 2 * pauze ; : startbit? PORTC 0 low? ; forth : wait-start ' startbit? wait ;