int main (int ac, char *ag[]) { int addr; int len; int index; CArray result; LowLevelDriverInterface *iface = 0; memset (&arg, 0, sizeof (arg)); argp_parse (&argp, ac, ag, 0, &index, &arg); if (index > ac - 3) die ("more parameter expected"); if (index < ac - 3) die ("unexpected parameter"); signal (SIGPIPE, SIG_IGN); pth_init (); Logs t; t.setTraceLevel (arg.tracelevel); iface = Create (ag[index], &t); if (!iface) die ("initialisation failed"); if (!iface->init ()) die ("initialisation failed"); addr = readHex (ag[index + 1]); len = atoi (ag[index + 2]); int res = readEMIMem (iface, addr, len, result); if (!res) { printf ("Read failed"); } else { for (int i = 0; i < result (); i++) printf ("%02x ", result[i]); printf ("\n"); } delete iface; if (Cleanup) Cleanup (); pth_exit (0); return 0; }