--- embedtools/src/athctl.c 2010/10/27 12:21:56 1.1.2.6 +++ embedtools/src/athctl.c 2010/10/28 23:25:59 1.1.2.7 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ - * $Id: athctl.c,v 1.1.2.6 2010/10/27 12:21:56 misho Exp $ + * $Id: athctl.c,v 1.1.2.7 2010/10/28 23:25:59 misho Exp $ * *************************************************************************/ #include "global.h" @@ -204,7 +204,7 @@ readWord(u_char *mem, u_long offset) } printf("Error:: EEPROM read timeout!\n"); - return 0; + return -1; } static inline short @@ -256,7 +256,7 @@ writeWord(u_char *mem, u_long offset, u_short newval) if (chk == (u_short) -1) return -1; if (chk == newval) - return 1; + return chk; else VERB(1) printf("Write & Read don`t match 0x%04X != 0x%04X\n", newval, chk); if (i) @@ -264,7 +264,7 @@ writeWord(u_char *mem, u_long offset, u_short newval) } while (--i); printf("Error:: EEPROM write timeout!\n"); - return 0; + return -1; } static int @@ -464,7 +464,7 @@ main(int argc, char **argv) if (mode & 4) { if (!(basemem = devOpen(baseaddr))) return 2; - if ((ret = readWord(basemem, offset)) < 1) { + if ((ret = readWord(basemem, offset)) == -1) { devClose(basemem); return 3; } else @@ -474,10 +474,11 @@ main(int argc, char **argv) if (mode & 8) { if (!(basemem = devOpen(baseaddr))) return 2; - if ((ret = writeWord(basemem, offset, newval)) < 1) { + if ((ret = writeWord(basemem, offset, newval)) == -1) { devClose(basemem); return 3; - } + } else + printf("EEPROM writed value 0x%04X\n", (u_short) ret); devClose(basemem); }