As Joerg Wunsch wrote: > The entire pgm structure appears to be garbled after some point:
More datapoints: update.c obviously has a different idea about struct programmer_t than anyone else: (gdb) bt #0 0x0000000000434723 in jtagmkII_open (pgm=0x6dc9c0, port=0x1 <Address 0x1 out of bounds>) at jtagmkII.c:1555 #1 0x000000000041bee6 in do_op (pgm=0x6dc9c0, p=0x835100, upd=0x664430, flags=UF_NONE) at update.c:322 #2 0x0000000000404157 in main (argc=<optimized out>, argv=<optimized out>) at main.c:1241 (gdb) p sizeof (struct programmer_t) $19 = 9880 (gdb) up #1 0x000000000041bee6 in do_op (pgm=0x6dc9c0, p=0x835100, upd=0x664430, flags=UF_NONE) at update.c:322 322 pgm->vfy_led(pgm, ON); (gdb) p sizeof (struct programmer_t) $20 = 9976 (gdb) up #2 0x0000000000404157 in main (argc=<optimized out>, argv=<optimized out>) at main.c:1241 1241 rc = do_op(pgm, p, upd, uflags); (gdb) p sizeof (struct programmer_t) $21 = 9880 I think it's really time for a unified "avrdude.h" file. -- cheers, Joerg .-.-. --... ...-- -.. . DL8DTL http://www.sax.de/~joerg/ Never trust an operating system you don't have sources for. ;-) _______________________________________________ avrdude-dev mailing list avrdude-dev@nongnu.org https://lists.nongnu.org/mailman/listinfo/avrdude-dev