#include "consumer_proto.h" FUNC(cons_func) { srl_mwmr_t input = GET_MWMR(mwmr); char buf[32]; srl_mwmr_read(input, (unsigned *)buf, 8);//8*4 srl_log_printf (NONE, "Consumer : %s\n\n", buf); } #include "producer_proto.h" static inline char *sprintf (char *dest, int val) { char buf[20]; char *pbuf; unsigned int len = 0; static const char HexaTab[] = "0123456789ABCDEF"; unsigned int i; if (val < 0) { val = -val; memcpy (dest, "-", 1); dest += 1; } for (i = 0; i < 10; i++) { buf[9 - i] = HexaTab[val % 10]; if (!(val /= 10)) break; } len = i + 1; pbuf = &buf[9 - i]; memcpy (dest, pbuf, len); dest += len; return dest; } // end sprintf() FUNC (prod_func) { srl_mwmr_t output = GET_MWMR(mwmr); char buf[32]; char print[30] = "Producer : \n"; int i; char *end; for (i = 0; i < (9999999); i++) { end = sprintf (buf, i); *end = '\0'; end = sprintf (print + 11, i); *end = '\n'; *++end = '\0'; srl_log_printf (NONE, print); srl_mwmr_write (output,(unsigned*) buf, 8);//8*4 } }