I wanted to take advantage of the latest trunk and the following feature for usbasp: "mega-commit to bring in memory tagging".
Here is the description of that feature: http://svn.savannah.nongnu.org/viewvc/trunk/avrdude/usbasp.c?root=avrdude&view=log Compiled great, and seemed like it programmed correctly, but verifying the memory contents at the offset yielded only 0xFF's. After debugging the code for a while, I found the problem in usbasp.c - usbasp_spi_paged_write 672 static int usbasp_spi_paged_write(PROGRAMMER * pgm, AVRPART * p, AVRMEM * m, 673 unsigned int page_size, 674 unsigned int address, unsigned int n_bytes) 675 { 676 int n; 677 unsigned char cmd[4]; 678 int wbytes = n_bytes; 679 int blocksize; 680 unsigned char *buffer = (m->buf)+address; 681 unsigned char blockflags = USBASP_BLOCKFLAG_FIRST; Above is the new code, line 680 used to be as follows: 680 unsigned char *buffer = m->buf; Also attaching a patch as well. I have not gone through the other devices this feature was brought to, but verified the fix with usbasp. Thanks for the awesome and amazing tool. Sincerely, Jason
usbasp.patch
Description: Binary data
_______________________________________________ avrdude-dev mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/avrdude-dev
