From 5787edc500a796b2c0703694be27b72579da6537 Mon Sep 17 00:00:00 2001 From: errea <javier.errea-moreno@eurecom.fr> Date: Thu, 24 Jan 2019 20:13:02 +0100 Subject: [PATCH] Updated version for MBED --- .DS_Store | Bin 14340 -> 14340 bytes executablecode/.DS_Store | Bin 14340 -> 14340 bytes executablecode/src_MBED/.DS_Store | Bin 0 -> 6148 bytes executablecode/src_MBED/asyncchannel.cpp | 3 +- executablecode/src_MBED/asyncchannel.h | 2 + executablecode/src_MBED/debug.cpp | 22 ++--- executablecode/src_MBED/defs.h | 6 +- executablecode/src_MBED/message.cpp | 1 + executablecode/src_MBED/myerrors.cpp | 6 +- executablecode/src_MBED/mytimelib.cpp | 10 +-- executablecode/src_MBED/random.cpp | 2 +- executablecode/src_MBED/request.cpp | 1 + executablecode/src_MBED/request.h | 3 +- executablecode/src_MBED/request_manager.cpp | 10 +-- executablecode/src_MBED/syncchannel.cpp | 5 +- executablecode/src_MBED/tracemanager.cpp | 78 ++++++++++-------- modeling/.DS_Store | Bin 12292 -> 12292 bytes modeling/BlinkingLed.ttool/.DS_Store | Bin 8196 -> 8196 bytes .../AVATAR_executablecode/.DS_Store | Bin 12292 -> 12292 bytes 19 files changed, 82 insertions(+), 67 deletions(-) create mode 100644 executablecode/src_MBED/.DS_Store diff --git a/.DS_Store b/.DS_Store index 49142a76da8924b6b8bbe7843a801b753aa9ad34..21f1bb784384dcc9f8e3bbeff9ac65ae73f2905d 100644 GIT binary patch delta 998 zcmeIvPe_wt90%~<cm45w>lr=mAFr>IM(^ANJ#3k#OKC#5&;p^E>(6D&nQzKwE-WM) z#-fYRpC>v6Mp4nFwApb+MHjQe+95kcM3)FUdI_qht%HXsy7%0E-|z3ae15s%-0*b4 zrUYAp^`3^{R`Jv}QnB8uM|MR#`2l0nBIcbz8MtM@^Uc0vmV8DVShsS&U3iT)8!P>> zv(A`#IGx&SjwQvo(J!(ty9nEzsu2!Q>4_!#PSN4j!9?8Ku$x6Qa+SvwwYY(AwAIx! z79BKGeLSO<lR%K^Jwx$Ca)|e-N@=OFiRrzg$&rkiPVuf^VaUP6dvAAE<sgNs$w$o; zrYQAOnkHzHrf8N5G)MFFn%>bz`a;X}mA=t;5LDRUfD<lkf(M&nAb=KxupJR}qX)f+ zVLuW$0ux6uh~pT;DU9PZ&fz>R;t~X|;wEn4wuWiUAdgu*!2+J+1>Rr@AMjbctVu|u zpN=l(`y0|LpDBS_{cSPE!5>JSs!Cm}^Sj;Lq9{eJQm<kG_ZC&c@l~bK-N?2nl8CP< zw;|T5N<_Z8-0ooQinQWu%WX9ii+(Mu{*h{t-qI&ph6NR{N+MnI)JmErgwY{sI?;ta z*e7ug;2;hmxdLbuCvXxIID;I{N~Q~vN#HWBU<%i89XBM`T^H_2tostHfH^$GBRs}4 d6h*gY<nPo*nOJaW!dheeKk7dm)&85K{s8gy>M8&L delta 932 zcma*mNlX(_7zgn82Z0&-kVgw;%GP2ji(#>puq3PzK@cPg6%0fubkGUV0xgTUppnEF z<up-oOS~9^XhOoGCVEj(gI-XgA;yc*c=SS|Mh`w14jhbe4zqm!dEYmgU*1^nSnu>> zy^!N5NVnK??dpQQKY@lxmAfk~w7Qk)2Nij!uGg=4J-!2SzmH$lXk(|kVm0WRln$?_ zUKx=Y)X=2zQ9X+YmrPQuz^p>kK)cd6p!kn2uT^P+WD(h%(BgLa<yx;>=~QI*dLkuA zNrKS4R^Qn#^Rrf_DN>rqTtb77x7S*v(@c^1#D*@#v$51p9RhQU&Tdz`+`X*NS{t8B z^98m?Y#h|SRhtn>3k9*M!`ss%d;C7FRwAjtlT3kpzAD)gN3Eqhh;|4ho@A49QbXEE zKRHIm$po1qvt*v!Cr`<1@}7JoU&%MJO1_gH<R=0Uh#&+b91={3MI6$Q4F_^iiYip2 z2DR9aX0+fCTH!_yJm^IqhHwg}aRy_!fQuGf!e!jVB<|oY?%@#@@Ek9&gg5wr&-kJ) z*{tefl%3m{D=I4(t@@{pd6SK}vNfDV=nauk#%PNzEh9UxuuPpcI!CG5$^WH1>>N_u z{v!unz7E;rRy>Cr2Nj>v-Yv6`2&9X`vSf;hP26TSGl9Jnv`1aCnQ~8YJ=>nlvw)2x zGm9sIoKDLeIn>O8xRSOmzkpJ<g){PWl(#J^=5a6w6P9C5F%pfZ<)X-lVBNqV*3wk% zR{TGqMe>$>;yS-TxQPx1u9AopWFQYEC__1Rp#pW-hx%$Xz{yeC;6gjP)?vID#t4q% z1Ww{C&fz@A8Rs?=xQc7Ij$63BZZw5i%wZl6@DNY%YG$uA9=drCm8nVAq7YqJ4BtnF tnPS6*0Cm+?B<jNAc)?hetd<(C%-k@(!^~uA166};4mCLH*<atW;}3}f<k$cJ diff --git a/executablecode/.DS_Store b/executablecode/.DS_Store index 3e1592b66d1676dd14d5acddf549dcd1b18e56c4..ac8091b1da224bc3cd92055428e332b8a4ba2d1a 100644 GIT binary patch delta 722 zcmYk(OGs2v90u_7_0W5ptDaG3?wvc2t4+iBwoxf9M<*jqGlDW2FpSZ;!Jy8=8GA@( z(nLhHh(ixDB!Y;VMS`ZiRzViEvfM<AB5K)V8*Mty4e~4w=X@WWKm1NQo{rC?tt_`R zo$G7zRh88Hn6tvgW=c1)aXG*e6&6v-Q#*EdSfwszuC%aU@=<ojT%-ge1F`6V$e2zc zX7Xi6si&g0p~>IICY449H5Vv0RSk~zM-rov)Jf_Vgylk>I$bLJuE-M`U8>p}4yE*+ zBRb#1ye^>TLdmO^i!>zkB>BTeQYF=hG%5BBMxx<tqWYwIfriC{L!o|s$cVN`jRM^x z9y+FvBqOn?5f)3$f*2f#4G-(lR5ClhrBzk?_*g~n4kc6j;(AmM)7Srot1fjHo3d#e zM0a2_$u2hOupq-e*_;C=<RKpgP~d?VWhh4-TF{CBI?;u0?8Scc;xPJf1Yry#iZ~KD zjx(6VS)_3ZS8)y3aU1vX7*FvG&+!tAc!edr!$*9@HzqqZ{9x0v%%)X=RaURqYwaEF zR;hEfy|&u^L;ea}QL)7;mw3vn>$W!UU<tdz@@o8S(Y}2`@@giLJ`$GgHdWEQT9qKs zHOu^W>@~HTMAvd{F?+3VkTklU!wT7JW0NG&bzI(P{VlxB;l@VW=Hx9AMZs-A5#kP% z8OQ&6L?BLf&SAD?$Q+p`3*-%XPri_!<PQjPU_udl=<xanF~q%MIDs*o!Z=RjJTBlO v7rV^GZr~=Sa0_>FkIOwk26LFl0ylhu7kJB9t!H+db7{?$&%s$!$#3~Di}SAV delta 960 zcmZvZSxggA6o&6#6=&>-LoKBX;}j69SfvO;T%n+-h++f<qhhAcD5KC~J75%XMT0SJ zxi4;UNnB!F6BqQ&EynG^Xdi?`O^h%4peE=8i80=`HZjI|n3MbebM86we_gFzt=GG3 zl|KTl&3eS}`QE@ZXz-Afp&UQV%$rlq{L0#<(8gLrG1?;KN_dr+S*xpBKnd6Ds?k)Z z1!p&F?OL!VT&)-y?H1>)T^?&#q!>-?BQB?G%{>x(c#dBs+B-T53W~h$!bydlUUx@H ziO=gUDlG2o<T=jasa)LHw)4QT<7dyEzwqE;yo&&dO49z+WO+mvW>k!Nnq0f@ueF8Y zQq}yb>IDK#8=p?cWly9p^D1b2cDgk+LmoYL!laVvWwWCr#59Xw6>Ri+uATN|+c=Be z;dEt6676)^w>7i{^bKvgu}RF~xTr-;8{y89gcU0L$ps-*U!!ZPc#GrXPHvVYEsr@B zVU4|2))2ouPxA7j!qr9e&00dq7YcYW!q=_WgKAuniiBcLRQV;%N<eE)NK=Gq+$?cE zU*E2UBYG&9P_05K$2Y7FwX|qKBNCtMFPEgo*xYI*V$`&1LAKKqHr#1<SfngzF0FUS z^l^@b?s8bRogp{LZPG&?k{2XO`p8G}m3$-p<U1LF2^=hNA_ut`0}p(dfl`#gk18xh zJsO}O02Lb6Ap!&K*oZCIjXmhbUL3>`9K~^*z*$_uRb0az+{a72!fQnF7Vq#LpYre- z{rG8uX;^}wDG9bFN%W6yro~Qq)S>@_l`H2|&Ykx!SnJ5%)L7ypt?9N5cWz#O(Uh6x z)a|m<Yt|APa`{)v9(f$cfQhDPjPiJ|EQo^`8$N#Y6$r98gkj*~$H~QlAP#1n67JM# z%uQiH5^kx)T*5q;!)X^hvYDrTuQi#oBboCv@|t`gUs%Ee<QGz4rpq!teibbUVFSV} z$1T{3?bv~x*oXZr#X~rZV=Tp!IEB-=h)cN4^1O{6mgikOz;l*qFSR*k^xb%$88zK7 Iy9Y9U1Mc<lTL1t6 diff --git a/executablecode/src_MBED/.DS_Store b/executablecode/src_MBED/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**<q8>++&mCkOWA81W14cNZ<zv;LbK1Poaz?KmsK2CSc!( z0ynLxE!0092;Krf2c+FF_Fe*7ECH>lEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0<F0fCPF1$Cyrb|F7^5{eNG?83~ZUUlGt@xh*qZDeu<Z%US-OSsOPv j)R!Z4KLME7ReXlK;d!wEw5GODWMKRea10D2@KpjYNUI8I literal 0 HcmV?d00001 diff --git a/executablecode/src_MBED/asyncchannel.cpp b/executablecode/src_MBED/asyncchannel.cpp index 40c52ac0f1..cf02f9d230 100644 --- a/executablecode/src_MBED/asyncchannel.cpp +++ b/executablecode/src_MBED/asyncchannel.cpp @@ -1,7 +1,8 @@ #include "message.h" #include "asyncchannel.h" #include "myerrors.h" -#include "mbed.h" +#include <mbed.h> + asyncchannel *getNewAsyncchannel(char *outname, char *inname, int isBlocking, int maxNbOfMessages) { asyncchannel * asyncch = (asyncchannel *)(malloc(sizeof(struct asyncchannel))); diff --git a/executablecode/src_MBED/asyncchannel.h b/executablecode/src_MBED/asyncchannel.h index 8f812359db..0de5484f17 100644 --- a/executablecode/src_MBED/asyncchannel.h +++ b/executablecode/src_MBED/asyncchannel.h @@ -7,6 +7,8 @@ struct asyncchannel; #include "request.h" + + struct asyncchannel { char *outname; char *inname; diff --git a/executablecode/src_MBED/debug.cpp b/executablecode/src_MBED/debug.cpp index b52637800c..98d62d71c1 100644 --- a/executablecode/src_MBED/debug.cpp +++ b/executablecode/src_MBED/debug.cpp @@ -1,10 +1,10 @@ //#include <stdlib.h> //#include <stdio.h> #include <time.h> -#include <mbed.h> + #define DEBUG_ON 1 #define DEBUG_OFF 2 -Serial pc(USBTX,USBRX); +//Serial pc(USBTX,USBRX); #include <mbed.h> #include "debug.h" @@ -13,12 +13,12 @@ int _debug = DEBUG_OFF; void activeDebug() { _debug = DEBUG_ON; - pc.printf("Modo debug activado"); + printf("Modo debug activado"); } void unactiveDebug() { _debug = DEBUG_OFF; - pc.printf("Modo debug desactivado"); + printf("Modo debug desactivado"); } void debugThreeInts(char *msg, int value1, int value2, int value3) { @@ -27,7 +27,7 @@ void debugThreeInts(char *msg, int value1, int value2, int value3) { } if (msg != NULL) { - pc.printf("DT> %s: %d, %d, %d\n", msg, value1, value2, value3); + printf("DT> %s: %d, %d, %d\n", msg, value1, value2, value3); } } @@ -37,7 +37,7 @@ void debugTwoInts(char *msg, int value1, int value2) { } if (msg != NULL) { - pc.printf("DT> %s: %d, %d\n", msg, value1, value2); + printf("DT> %s: %d, %d\n", msg, value1, value2); } } @@ -47,7 +47,7 @@ void debugInt(char *msg, int value) { } if (msg != NULL) { - pc.printf("DT> %s: %d\n", msg, value); + printf("DT> %s: %d\n", msg, value); } } @@ -57,7 +57,7 @@ void debugLong(char *msg, long value) { } if (msg != NULL) { - pc.printf("DT> %s: %ld\n", msg, value); + printf("DT> %s: %ld\n", msg, value); } } @@ -67,7 +67,7 @@ void debugMsg(char *msg) { } if (msg != NULL) { - pc.printf("DT> %s\n", msg); + printf("DT> %s\n", msg); } } @@ -77,7 +77,7 @@ void debug2Msg(char *name, char *msg) { } if ((name != NULL) && (msg != NULL)) { - pc.printf("DT - %s -> %s\n", name, msg); + printf("DT - %s -> %s\n", name, msg); } } @@ -85,5 +85,5 @@ void debugTime(char *msg, struct timespec *ts) { if (_debug == DEBUG_OFF) { return; } - pc.printf("DT> (-------t------->) %s sec=%ld nsec=%ld\n", msg, ts->tv_sec, ts->tv_nsec); + printf("DT> (-------t------->) %s sec=%ld nsec=%ld\n", msg, ts->tv_sec, ts->tv_nsec); } diff --git a/executablecode/src_MBED/defs.h b/executablecode/src_MBED/defs.h index 3b997bfdf8..a8d6a631b7 100644 --- a/executablecode/src_MBED/defs.h +++ b/executablecode/src_MBED/defs.h @@ -1,9 +1,9 @@ #ifndef DEFS_H #define DEFS_H -#define bool int -#define true 1 -#define false 0 +//#define bool int +//#define true 1 +//#define false 0 #endif diff --git a/executablecode/src_MBED/message.cpp b/executablecode/src_MBED/message.cpp index bfb14536b7..86d1ebf3c9 100644 --- a/executablecode/src_MBED/message.cpp +++ b/executablecode/src_MBED/message.cpp @@ -8,6 +8,7 @@ #include <Mutex.h> #include <mbed.h> +#include <Thread.h> long __id_message = 0; rtos::Mutex __message_mutex; diff --git a/executablecode/src_MBED/myerrors.cpp b/executablecode/src_MBED/myerrors.cpp index c3ac566a12..2a73c4b8e2 100644 --- a/executablecode/src_MBED/myerrors.cpp +++ b/executablecode/src_MBED/myerrors.cpp @@ -3,12 +3,12 @@ #include "myerrors.h" #include <mbed.h> -Serial pc(USBTX,USBRX); +//Serial pc(USBTX,USBRX); void criticalErrorInt(char *msg, int value) { if (msg != NULL) { - pc.printf("\nCritical error: %s, %d\n", msg, value); + printf("\nCritical error: %s, %d\n", msg, value); } exit(-1); @@ -17,7 +17,7 @@ void criticalErrorInt(char *msg, int value) { void criticalError(char *msg) { if (msg != NULL) { - pc.printf("\nCritical error: %s\n", msg); + printf("\nCritical error: %s\n", msg); } exit(-1); diff --git a/executablecode/src_MBED/mytimelib.cpp b/executablecode/src_MBED/mytimelib.cpp index f24986a16c..89c7f175da 100644 --- a/executablecode/src_MBED/mytimelib.cpp +++ b/executablecode/src_MBED/mytimelib.cpp @@ -1,4 +1,4 @@ -//#include<time.h> +#include <time.h> #include "mytimelib.h" #include "random.h" @@ -103,7 +103,7 @@ void delayToTimeSpec(struct timespec *ts, long delay) { void waitFor(long minDelay, long maxDelay) { struct timespec tssrc; - struct timespec tsret; + //struct timespec tsret; int delay; @@ -118,11 +118,7 @@ void waitFor(long minDelay, long maxDelay) { delayToTimeSpec(&tssrc, delay); debugLong("............. waiting For", delay); - if(tssrc.tv_nsec > tsret.tv_nsec){ - wait_us(tsret.tv_nsec/1000); - }else{ - wait_us(tssrc.tv_nsec/1000); - } + wait_us(delay); debugLong("............. waiting Done for: ", delay); } diff --git a/executablecode/src_MBED/random.cpp b/executablecode/src_MBED/random.cpp index 4a5df9dd59..0022ae2f13 100644 --- a/executablecode/src_MBED/random.cpp +++ b/executablecode/src_MBED/random.cpp @@ -1,7 +1,7 @@ //#include <stdlib.h> //#include <unistd.h> -//#include <time.h> +#include <time.h> //#include <limits.h> #include "random.h" diff --git a/executablecode/src_MBED/request.cpp b/executablecode/src_MBED/request.cpp index 86e78bb382..3d7d900bdb 100644 --- a/executablecode/src_MBED/request.cpp +++ b/executablecode/src_MBED/request.cpp @@ -4,6 +4,7 @@ #include <mbed.h> #include <Mutex.h> +#include <Thread.h> #include "request.h" #include "mytimelib.h" diff --git a/executablecode/src_MBED/request.h b/executablecode/src_MBED/request.h index 3d0172fcde..416e392aaf 100644 --- a/executablecode/src_MBED/request.h +++ b/executablecode/src_MBED/request.h @@ -12,6 +12,7 @@ struct request; #include "asyncchannel.h" #include "message.h" + #define SEND_SYNC_REQUEST 0 #define RECEIVE_SYNC_REQUEST 2 #define SEND_ASYNC_REQUEST 4 @@ -87,7 +88,7 @@ void copyParameters(request *src, request *dst); setOfRequests *newListOfRequests(size_t *wakeupCondition, rtos::Mutex *mutex); void addRequestToList(setOfRequests *list, request* req); void clearListOfRequests(setOfRequests *list); -void fillListOfRequests(setOfRequests *list, char *name, rtos::Thread* thread, size_t *wakeupCondition, rtos::Mutex *mutex); +void fillListOfRequests(setOfRequests *list, char *name, rtos::Thread* thread, size_t wakeupCondition, rtos::Mutex *mutex); void removeAllPendingRequestsFromPendingLists(request *req, int apartThisOne); request *hasIdenticalRequestInListOfSelectedRequests(request *req, request *list); diff --git a/executablecode/src_MBED/request_manager.cpp b/executablecode/src_MBED/request_manager.cpp index 76b27cf68d..4f0bec57ff 100644 --- a/executablecode/src_MBED/request_manager.cpp +++ b/executablecode/src_MBED/request_manager.cpp @@ -31,7 +31,7 @@ void executeSendSyncTransaction(request *req) { currentReq = currentReq->next; } - cpt = random() % cpt; + cpt = rand() % cpt; // Head of the list? selectedReq = req->syncChannel->inWaitQueue; @@ -77,7 +77,7 @@ void executeReceiveSyncTransaction(request *req) { //debugInt("cpt", cpt); currentReq = currentReq->next; } - cpt = random() % cpt; + cpt = rand() % cpt; selectedReq = req->syncChannel->outWaitQueue; while (cpt > 0) { selectedReq = selectedReq->next; @@ -171,7 +171,7 @@ void executeSendBroadcastTransaction(request *req) { if (tmpreq != NULL) { // Must select one of the two // If =1, replace, otherwise, just do nothing - cpt = random() % 2; + cpt = rand() % 2; if (cpt == 1) { debugMsg("Replacing broadcast request"); req->relatedRequest = replaceInListOfSelectedRequests(tmpreq, currentReq, req->relatedRequest); @@ -557,11 +557,11 @@ request *executeListOfRequests(setOfRequests *list) { debug2Msg(list->ownerName, "Waiting for a request and at most for a given time"); debugTime("Min time to wait=", &(list->minTimeToWait)); //pthread_cond_timedwait(list->wakeupCondition, list->mutex, &(list->minTimeToWait)); - osEvent event = rtos::Thread::signal_wait(list->wakeupCondition, list->minTimeToWait.tv_sec*1000); + osEvent event = rtos::Thread::signal_wait(list->wakeupCondition, list->minTimeToWait.tv_sec); } else { debug2Msg(list->ownerName, "Releasing mutex"); //pthread_cond_wait(list->wakeupCondition, list->mutex); - osEvent event = rtos::Thread::signal_wait(list->wakeupCondition); + osEvent event = rtos::Thread::signal_wait(list->wakeupCondition); } debug2Msg(list->ownerName, "Waking up for requests! -> getting mutex"); } diff --git a/executablecode/src_MBED/syncchannel.cpp b/executablecode/src_MBED/syncchannel.cpp index 7b81f8a91f..9e52a0f36b 100644 --- a/executablecode/src_MBED/syncchannel.cpp +++ b/executablecode/src_MBED/syncchannel.cpp @@ -10,14 +10,15 @@ syncchannel *getNewSyncchannel(char *outname, char *inname) { syncchannel * syncch = (syncchannel *)(malloc(sizeof(struct syncchannel))); + //syncchannel * syncch = NULL; if (syncch == NULL) { criticalError("Allocation of request failed"); } syncch->inname = inname; syncch->outname = outname; - syncch->inWaitQueue = (request*)NULL; - syncch->outWaitQueue = (request*)NULL; + //syncch->inWaitQueue = (request*)NULL; + //syncch->outWaitQueue = (request*)NULL; syncch->isBroadcast = false; return syncch; } diff --git a/executablecode/src_MBED/tracemanager.cpp b/executablecode/src_MBED/tracemanager.cpp index acaf473b95..ffd40967f6 100644 --- a/executablecode/src_MBED/tracemanager.cpp +++ b/executablecode/src_MBED/tracemanager.cpp @@ -2,10 +2,15 @@ //#include <stdio.h> //#include <time.h> +#include <mbed.h> +#include <Thread.h> +#include <Mutex.h> +#include <time.h> + #include "tracemanager.h" #include "debug.h" #include "mytimelib.h" -#include <Mutex.h> + #define TRACE_OFF 0 @@ -248,6 +253,7 @@ void traceAsynchronousReceiveRequest(request *req) { void traceRequest(char *myname, request *req) { char s[1024]; int i; + //printf("Calling tracerequest of type %s\n", req->type); debugMsg("Trace request"); @@ -261,40 +267,46 @@ void traceRequest(char *myname, request *req) { switch(req->type) { case SEND_SYNC_REQUEST: - debug2Msg("Sync channel", req->syncChannel->outname); - sprintf(s, "block=%s type=send_synchro channel=%s params=", myname, req->syncChannel->outname); - for(i=0; i<req->nbOfParams; i++) { - if (i>0) { - sprintf(s, "%s,", s); + debug2Msg("Sync channel", req->syncChannel->outname); + sprintf(s, "block=%s type=send_synchro channel=%s params=", myname, req->syncChannel->outname); + for(i=0; i<req->nbOfParams; i++) { + if (i>0) { + sprintf(s, "%s,", s); + } + sprintf(s, "%s%d", s, *(req->params[i])); } - sprintf(s, "%s%d", s, *(req->params[i])); - } - sprintf(s, "%s\n", s); - - break; - case RECEIVE_SYNC_REQUEST: - sprintf(s, "block=%s type=receive_synchro channel=%s\n", myname, req->syncChannel->inname); - break; + sprintf(s, "%s\n", s); + + break; + case RECEIVE_SYNC_REQUEST: + + sprintf(s, "block=%s type=receive_synchro channel=%s\n", myname, req->syncChannel->inname); + break; case SEND_ASYNC_REQUEST: - debug2Msg("Async channel", req->asyncChannel->outname); - sprintf(s, "block=%s type=send_async_2 channel=%s\n", myname, req->asyncChannel->outname); - break; - case RECEIVE_ASYNC_REQUEST: - sprintf(s, "block=%s type=receive_async_2 channel=%s\n", myname, req->asyncChannel->inname); - break; - case SEND_BROADCAST_REQUEST: - debug2Msg("Sync channel", req->syncChannel->outname); - sprintf(s, "block=%s type=send_broadcast channel=%s\n", myname, req->syncChannel->outname); - break; - case RECEIVE_BROADCAST_REQUEST: - debug2Msg("Sync channel", req->syncChannel->outname); - sprintf(s, "block=%s type=receive_broadcast channel=%s\n", myname, req->syncChannel->outname); - break; - case IMMEDIATE: - sprintf(s, "block=%s type=action\n", myname); - break; - default: - sprintf(s, "block=%s type=unknown\n", myname); + debug2Msg("Async channel", req->asyncChannel->outname); + sprintf(s, "block=%s type=send_async_2 channel=%s\n", myname, req->asyncChannel->outname); + break; + case RECEIVE_ASYNC_REQUEST: + + sprintf(s, "block=%s type=receive_async_2 channel=%s\n", myname, req->asyncChannel->inname); + break; + case SEND_BROADCAST_REQUEST: + + debug2Msg("Sync channel", req->syncChannel->outname); + sprintf(s, "block=%s type=send_broadcast channel=%s\n", myname, req->syncChannel->outname); + break; + case RECEIVE_BROADCAST_REQUEST: + + debug2Msg("Sync channel", req->syncChannel->outname); + sprintf(s, "block=%s type=receive_broadcast channel=%s\n", myname, req->syncChannel->outname); + break; + case IMMEDIATE: + + sprintf(s, "block=%s type=action\n", myname); + break; + default: + + sprintf(s, "block=%s type=unknown\n", myname); } debugMsg("Trace request 2"); diff --git a/modeling/.DS_Store b/modeling/.DS_Store index 241074f8b7bbebdcc36c6248bc38e899647a2aad..9c9a6e7f9a09faa86de2165583dfa1453974e00a 100644 GIT binary patch delta 668 zcmbV|OH5Ni7=`CxDRU?3W$;qk4zGrKL-A3#ZA}n^R2x@5VoXsmngY`3rKPAXJ}}q~ z5hX5+6D4Yli9r{xFhm#V+Q7z*L|JJxx?$nU#I4g_7cPynnf&LQN&fTA49yHJJ~61Z z%i11{S#kN?n3a#jZMj?@^>V$|WB7~!<smvSIbxrmw2N0HywS8rujN}zgQW`gRE7^z zZLOSiY-KE!wezFApgBpTlNtTF;gL*^k7~5?C>CeN@r#)Y1$!dT5Bv$cH#1}4^u+jh zCSNRQRNnFKmWifd=@ofH-ja9ZJ^4UBl6CThd?nw=ck+Y$f(vfcfT9k~XhAE&*nv)T z!9oxEuowG~#6cWI3jH{SG|s@r7_um08rM+54b0;{9^fGs@D$Imh!<GKYf?E?C|~k( zlTXeyB&)^#de$x<i)p#qJSMG1zdTo`ml}NjfC!2<%2z0-YvqxdqFv)JDMw`#rr1U) zuX0#KbZJT!-{i0u+ewucUhU9s)}twL+~v?-)<=~e?sjOSNNSW58cKwn4K*UyTOxxL zI{cOXZ3w|cL^-e!MI61@gM{)>wr~iCaRh@nfs;6;T%1)dvdAHiOSp_FTvbl4V-`0t nhg-OddzhE$){Z4Tu;G!PYD~EyqJLL6|Ec<tEBw>_|KEQD(T0)$ delta 892 zcmci8Pe_w-7zgm@YtDY}Tk22W{l(suuC+1$<jf{bA<1b<h#^{&1fBXGM!K2rCMm?I zJcU{I>k?6cbg2$T!%GCwsSZI!9;!o^=nr-2(4|AvZ(DQ<!b{KX`+eYf;IlBgFnV`I z6Zdv?iBDQjQI{%~tv2z<)2s2cY4jVDu~dB4h{RHc$sty)5nE|lIk!7BEt(#SpGe13 zbKJw2V78_aURGYJdNrTIV{E{T&l~IcCZN_S+*AgR#}gCzM%%3h8J|!FCu3vAWT9$S zLyR9%j?Nl0W;~fFl$C0jDbexd)Rd7(nc|AAHREY-r2Htv$VCm*PTe$222Il(Ez%NQ zpsRF~R%wkM(qno`&*(Y5pf~i6-qQ#ANMGp({R9C}VTS`wRHFtv;Y9#@(2NjT(1uQQ zp&LEuLli?ehG9%#3JFvtaT2F-5tkrv8P{+fH*gELk;MZswAmxh**h$H#M=4C(f1ce z<@MH_VnwB9wYfdM+Qz-%{Q?zzqSoDzaXFlJeTQDd_!Gw2dM>J7T~YX2A?RK`z!)!D zw>zA!x_VvZo20jrkHIEY=N3uJ@-ft+s=Qd*7q+c!a$6#me_yTA4=9Wi^R)X5ra9cq zKXg~<4&9fsFX<J%m8xH)=yxe<LAlg)VH<R~;e%g#)}lV|xesA<AR<){;xPI#fI%F= z2x1tQu7-4-#tclPa0(R}>3arev550nlG4i}w%wO4bA2uqz1E<Zuimmz(z=b1W{dsb IO8(2IU(2(^{{R30 diff --git a/modeling/BlinkingLed.ttool/.DS_Store b/modeling/BlinkingLed.ttool/.DS_Store index 733a46fccde2ef836ce1efa4ccb390d6ee48015a..057b6bcfcf3b5b2773f468d6f624b76c99be538f 100644 GIT binary patch literal 8196 zcmeHMTWl0n82-Pdz)U;PDU?zM$}ZHVU<$Ofp^$Ld-oSDR4cpRkk!5yggbCA`vNPKj zN=c0-hA59Jq7Oc3jPi=$?MdUE7q!NSZw6o0L|=?A{xfHm&;k$mV2I2~&iT%q|NQ5i z`SSfU^Y0Q7I*UdNQ7sWkTmw`qxVc9O>_NS&B%+ZrMzB9o2OXd+nKaHdE-?c!12F?J z12F?J0}mqu{LT)Fbf5RWu*Pl7K+M1+$w2UYNO27?9pRL~@X^6dm;x{cDL`1b&v`)T zlZr4M;grD8mDd#610q*MDF%c)+f%`G#&m>J0);z4xD%qC5oIU{cW1v;IGvCd7`HJ4 zF#~rq5QNVX&f5=i?Vpjq=c!0O>69azv-v!^WRRH~^G0&En`5spb0fCp`OVEgATg(G z?!5VuR4$b-D1S0@(jCkAx?l7<^}><hs!#V%=AwST>)N;bdhVcQj%C&AF4ysO%P|X~ zvt^h(<>;X0817i7TXYOBTqh$8k|axVR;`_wXxY-zlxl5hn`}x=w6`}mrP^9IO-{<v z(uS68y~l^ooSir~dHxk~*NC1RR5^=<%MV6@?TvN`3KDOWD7aaoKrXLP7HGSk*j1zK z&Z>(>`R?|Q_?GK<2hD=Vm{lu1W~4XoI(-E*un*>4yEyE4S+y#!+xeoc`(}r2XRNa( zk5zj4f@|A-u4e_y92)Y?aX+x#Wg0r{xdp!~Tr8`qMbA87@><rY+083@Ll$otII57Z zEL^%`Rm0;O+O}-#oUT->7Ae(A&ETlzSvlJr7_$uj<RRV5n~q^QCk`{|j&D6>nFYBD zO>)1Z51Z4A)T+wbWtuir%vq<4mVZXAm!xpCZl$IiHF(Q?t`T?{>bsI0T2`;rv?GC~ zt6*|#utT_cqqbI7b*bOu(}|HLWxcF=a{nn-KschcD6Nue$OE>XGi@=nN!cu^d*s1U z!K@gpR<=s=P~IIL=0khow%d1T+Oc5Uy}IY`A2A(1(ihR*+DffQk`4vd4#VIh)tAIk zpI#%na(%iv8kDGxHc~h3rQ=kf3A#v^=n7q>YjmAHp&K+!H|ZArM!(Y^^e6p=1S+rq z3sH$$G@ub{uofG!9XpUlFLq-u_Td1I;3$qE3j@P&FoM$<!xWyzGk6v+;6=QIm+?B@ z#(VexAL1i?iqG&lzQMQn3AgZzI9sBm?meX&5QtwHA0WV4-BExiF5Fw)$(_4))+oIX zueyI+7^rG-^^%&UsfM-dHnwl=xGjiTI+&r;JEa+FQHU)RVM$~{{4D(CE9#Ww0L#-H zpB*rzKvL%i;UY~hU#8V2S0^8nSaqtnR2q{NGRK9mH71)RNli=#%dX#$RMa^f4RUzd z+NLDcxh#AsyxhD+QPeVy3}M~2ovrgY286Y<j;$oi|6asj(RcJS3;1sk=CODevv60j zaMz)oMcaXH^k66UqmN~q!9XZm9XXtW&Ej=2j<Yz2Nu0-XxPa$bz86`(mv9-c;x)X9 zw^+vS;0mtd8m_aT-^a)J8aHN1c=s#`fB#?-9?cXS+jUN`S1BlFE*M`42IdH;4f6k< z`~UtQ(-kuiGw?rV0A<~o?oPhJ`#mm$Tsy_}IM<*A^QHubF5HCaIAfTOGv5Bgkozf~ i8u+9moD#?*T>kSP0`B|{jNkt=KVswef2hevq4@`x*gJLr literal 8196 zcmeHMO;8*~6n+l~>6t(n2qcq)pRE8T(M@E50u8||KdG295sH68l4W*h3}a?zaA$TG zLQqbYKe<LtylF00s{AbvYI(4{=tZlPDx(+6gBMFZc!{MKUr*0cfrJB>U{$88y1$-& z?{!aq^UXAG0RZgF>M;Nn02oz{$_{GoQMjGgyGl_oQbLFn56}z4kN^YbsfHzFAY>q9 zAY>q9AY|bG$N-($ys!<<ePIpTkb#ha2a*B)eTY!y7!Pn+p#SNh#!mqVc?#ec>Qf%z z$3y~*2e>TI52ZOp_JBbs1}O%LaI#0ZJ7GM)Wq~3bP=o^pD`SwMpualBMSOR_xWKRt z83-A;n*sj%)KK0&PIYum{+@y?c%VTNEXw9n;D8QBGVjhMEhkA)Unl1*)Ad?gf54*R zl5M5i8Ize@E}t8jb@C&g=4IVJEi=uphBR+B8T3aT$6D=c$#K)jCzR@b$M!VSHZp#& zsT<^ScEYrEC*S8}ZQb?f84(7?Bqk*kb#bwy{qbld))`xhMi#reTBDJU_RggxiS22Q z^_-kZFI-x@y!8Avv1<&z98j^2h3lK6z;bi_f`X!Sfr48F3M6@ldc0abF=?h8d&InC zB$Nu57&u9nLm4ASyPZfmRyJ+B38gZnS*fh0c}A~gac6hZGv+<sJL5VTuitk}C`#5f zh7IyFbH)I9Q)m^RX>iUn9oro@GA?0byj5&Wx>;7Uuc5K!P+M1be5HJ6g(6qU)e||> zHItSxmN#{8c1m+ohOL|Sg)_vd?U~P*Mn<Z{s5EM8X=6p%Sy8@wkE%{)ljd_-(_2s) z8548Ws`ZlcF*~c%ot$=b9;y2lwN^dA*fbyS&luE-VYyj-NK!O5>e9Z%6c5W$NpYpo zi}Zj+=%aFsDY`UfX-UHpLmhG_Q=XD0a$<X8uu49{q{)<%PSZ`hVys6!#+0wvdA{%| z&GiQ744c;GTj;G-)hRyStLui&7;B8T1SBc^#Mui6paYJ=5KNJ}^Kb>O!fWsr+=P$d z6ZjIofp6hE_#SS-FYp`u4u8O(a2x)Hf8bwaScz4*3mdQn58@*j#TXvJZtTG)updw1 zX&l5M9LEICU=mY!5k1Ue4qw2R@MU}zui%?_1K-8>@O}IMKgG|)jTIGS`lPrnwD>vo zHu0vCOoKPIX!u?-ts|K>ZK+IuEaTd&tlCvwQ{UJUjdga%SD);<hq*><cPh*ml~9eZ zrh;08ib=tH_wASK#z<$z{CedV-Uwwo*F9U|-VKquI)$rATsAe=$qJI%CEt3mnXE;D z?a*Pe6_c=qt*u?IQ?`+YMP%1wvaFPl$c6Q24_Qk|&cfQepR6EBcj$3LHNFEM!WX2( zpWtWsl~ni_+(y7sEW_Pcj}dIdCTzyT*otk~jvb`GW7vy*z6PK6H8_RScn;5#5@+#Q zv@ne}=5YZR@iH#qi=@X_d_7*p*YOR!hS%}!by_@8P@zD)u{kZ~Ml!bL*cT|OpzgI3 zhF4p`K(Sa<<@x{djeq~&idzfU3>gR+xK9jV$-u}!A1$`g$C>Ba5vns(dEtJ`0{swb s{B)eqPsa&Y|6xe|2)Xi@c!0|SX@tss{~=)YFW>O|56^#Jf)8Z#A0zPWZvX%Q diff --git a/modeling/BlinkingLed.ttool/AVATAR_executablecode/.DS_Store b/modeling/BlinkingLed.ttool/AVATAR_executablecode/.DS_Store index e822ab9a1ee9a6b5f6026f365d62f62222f636d2..e07abf6bee883ef2e77ca2c673adee53105d99cd 100644 GIT binary patch delta 25 gcmZokXi3;$BFtfEX{e)MY-lq1pn~J(TH$sX0B1l4;s5{u delta 16 XcmZokXi3;$B0PDgg6HO1;dU7SIiUty -- GitLab