chiark / gitweb /
explicit inversion command
authorian <ian>
Sat, 10 May 2008 11:25:23 +0000 (11:25 +0000)
committerian <ian>
Sat, 10 May 2008 11:25:23 +0000 (11:25 +0000)
hostside/commands.c

index b7ffd1f60a901c6017dc393ee373c81209baedd8..064a601ea84ab82d0039e35c0d654d93f0921937 100644 (file)
@@ -271,6 +271,20 @@ static int cmd_speed(ParseState *ps, const CmdInfo *ci) {
   return 0;
 }
 
+static int cmd_invert(ParseState *ps, const CmdInfo *ci) {
+  Segment *seg;
+
+  actual_inversions_start();
+  while (ps->remain) {
+    MUSTECR( ps_needsegment(ps,&seg,0) );
+    seg->seg_inverted ^= 1;
+    actual_inversions_segment(seg);
+  }
+  actual_inversions_done();
+
+  return 0;
+}
+
 const CmdInfo toplevel_cmds[]= {
   { "!pic",       cmd_pic,        CIXF_ANYSTA|CIXF_FORCE   },
   { "!nmra",      cmd_nmra,                                },
@@ -278,6 +292,7 @@ const CmdInfo toplevel_cmds[]= {
   { "movpos",     cmd_movpos                               },
 //{ "autopoint",  cmd_autopoint                            },
   { "!movpos",    cmd_movpos,     CIXF_ANYSTA|CIXF_FORCE   },
+  { "!invert",    cmd_invert,     CIXF_ANYSTA|CIXF_FORCE   },
   { "speed",      cmd_speed                                },
   { 0 }
 };