void initiate(uint arg1, uint arg2)
{
	io_printf(IO_STD, "Reading iptag is initiated!\n");
	iptag.flags = 0x87;	// no replay
	iptag.tag = 0;		// internal
	iptag.srce_addr = 0;
	iptag.srce_port = 0xE0 + (uchar)sark_core_id();	// use port-7
	iptag.dest_addr = 0;
	iptag.dest_port = 0;				// send to "root"
	iptag.cmd_rc = CMD_IPTAG;
	uint op = IPTAG_GET << 16;
        iptag.arg1 = op;
        iptag.length = sizeof(sdp_hdr_t) + sizeof(cmd_hdr_t);
	spin1_send_sdp_msg(&iptag, 10);
}
void c_main (void)
{
  uint core = sark_core_id ();				// Get core ID

  io_printf (IO_BUF, "Started core %d\n", core);	// and print it

  sark_srand ((sark_chip_id () << 8) + core * sv->time_ms); // Init randgen

  event_register_timer (SLOT_0);		// Set up the timer event mechanism

  event_queue_proc (timer_proc, 0, 0, PRIO_0); // Queue the first timer call

  uint rc = event_start (0, 0, SYNC_NOWAIT);	// Start event handling

  io_printf (IO_BUF, "Terminated rc %d\n", rc);	// Printed if event_stop used...
}