-#include "contrib/demo.ships"
+#ship debug : Debug
+#ship iscratch : Iscratch
-//22: sendto debug.data
-//22: sendto debug.data
-//alu1.out: ack debug.data
+BOB: sendto iscratch.inCBD;
+iscratch.inCBD: [*] take, deliver;
+debug.in: [*] take, deliver;
-299: sendto alu2.a
-120: sendto alu2.b
-0: sendto alu2.op
-alu2.out: take, sendto debug.data
+BOB: {
+ 12: sendto debug.in;
+ 13: sendto debug.in;
+ 14: sendto debug.in;
+ BOB: sendto iscratch.inCBD;
+}
-
-//22: sendto alu3.b
-
-// route the "max" output to the demux, and that to either
-// the finished-value output (debug.data) or the subtractor
-//sort.max: [*] take, sendto demux1.in
-// demux1.false: [*] take, sendto debug.data
-// demux1.true: [*] take, sendto alu.a
-//
-//// route the "min" value to the demux selector to decide if we are
-//// done; also send copies to the ALU and the secondary sort input
-//sort.min: [*] take, sendto dup3.in
-// dup3.a: [*] take, sendto demux1.select
-// dup3.b: [*] take, sendto alu.b
-// dup3.c: [*] take, sendto sort.b
-//
-//// "plug up" the ALU opcode input with a "1" (subtraction)
-//1: sendto alu.op
-// alu.op: take [*] accept
-//
-//// route all data emerging from the ALU back to the primary sort input
-//alu.out: [*] take, sendto sort.a
-//
-//// all other inputs are in default mode
-//sort.a: [*] take, accept
-//sort.b: [*] take, accept
-//alu.a: [*] take, accept
-//alu.b: [*] take, accept
-//dup3.in: [*] take, accept
-//demux1.select: [*] take, accept
-//demux1.in: [*] take, accept
-//
-//// gcd(377,221)=13 (we hope!)
-////377: sendto sort.a
-////221: sendto sort.b
-//