From f383485940345924c7f4e0bcde4ba72b6b319524 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 13 Feb 2011 21:26:52 +0000 Subject: [PATCH] realtime: print all movpos positions on entering Run --- hostside/movpos.c | 18 ++++++++++++++++++ hostside/realtime.h | 1 + hostside/startup.c | 1 + hostside/x.gdb | 2 ++ 4 files changed, 22 insertions(+) diff --git a/hostside/movpos.c b/hostside/movpos.c index b133267..5b04d30 100644 --- a/hostside/movpos.c +++ b/hostside/movpos.c @@ -1165,3 +1165,21 @@ void motions_all_abandon(void) { for (meth=methods; *meth; meth++) (*meth)->all_abandon(*meth); } + +void movpos_reportall(void) { + SEG_IV; + int feat; + + FOR_SEG { + assert(!seg->moving); + if (seg->i->n_poscombs <= 1) continue; + ouposn_stable(seg); + if (SOMEP(seg->movposcomb)) { + for (feat=0; feati->n_movfeats; feat++) { + const MovFeatInfo *feati= &seg->i->movfeats[feat]; + MovPosComb posn= (seg->movposcomb / feati->weight) % feati->posns; + ouposn_feat(seg, feati, posn, feature_method(feati)); + } + } + } +} diff --git a/hostside/realtime.h b/hostside/realtime.h index 9ff9b3e..4364d70 100644 --- a/hostside/realtime.h +++ b/hostside/realtime.h @@ -199,6 +199,7 @@ void adjuncts_updated(AdjunctsAddr *a); void points_turning_on(void); void motions_all_abandon(void); +void movpos_reportall(void); /*---------- from eventhelp.c ----------*/ diff --git a/hostside/startup.c b/hostside/startup.c index 0688d9a..645e688 100644 --- a/hostside/startup.c +++ b/hostside/startup.c @@ -149,6 +149,7 @@ static void sta_goto(StartupState new_state) { case Sta_Run: if (!simulate) persist_install(); + movpos_reportall(); retransmit_start(); break; case Sta_Crashed: abort(); diff --git a/hostside/x.gdb b/hostside/x.gdb index 6685b33..79e6323 100644 --- a/hostside/x.gdb +++ b/hostside/x.gdb @@ -3,6 +3,8 @@ break die set args -Dmovpos+eval+intern+fsq -R -s/dev/ttyUSB0 -S+realtime.log shinkansen.speeds.record santafe.speeds.record bavarian.speeds.record homes.record +#break movpos_reportall + #break nose_nextseg if sevent_lno >= 35505 #break predict -- 2.30.2