#include "memory.h"
#define BAUD_RATE 19200
+
+#define STRINGIFY(n) #n
+
+#ifdef DEFPORT
+#define PORT_NAME STRINGIFY(DEFPORT)
+#else
#define PORT_NAME "/dev/ttyUSB0"
+#endif
+
+#ifdef _WIN32
+static void keypress(void)
+{
+ printf("Press ENTER to exit\n");
+ getchar();
+}
+#else
+static void keypress(void) {}
+#endif
void usage(const char * name)
if (!idonly && optind >= argc) {
loge("Error: missing hexfile");
+ keypress();
return 1;
}
FILE * fd = NULL;
if ((fd = fopen(argv[optind], "r"))==NULL) {
loge("Error opening %s: %s", argv[optind], strerror(errno));
+ keypress();
return 1;
}
ram = load_ihex(fd);
logd("open serial port %s at %d baud", port, baud);
port_t * pt = serial_open(port, baud);
- if (pt == NULL) return 1;
+ if (pt == NULL) {
+ keypress();
+ return 1;
+ }
uint16_t maxmem;
uint16_t devid;
if (loader_connect(pt, &maxmem, &devid)) {
+ keypress();
return 1;
}
logi(" Max Mem: %d", dev->memsize );
}
+ keypress();
return 0;
}
if (dev) logd("Device Name: %s", dev->name);
/* check that the selected program will fit on this device */
if (makesafe_mem(&ram, maxmem)) {
serial_close(pt);
+ keypress();
return 1;
}
logd("After re-organisation");
/* finished */
serial_close(pt);
logd("done.");
+ keypress();
return 0;
}