Display all headersTo: picbootloader@yahoogroups.com From: "reactivate_now" Date: Sun, 06 Jun 2004 10:12:01 -0000 Subject: [picbootloader] Workaround for trouble with PIC16F87XA devices! Reply-To: picbootloader@yahoogroups.com Hello, First of all, this bootloader rocks! Saved me hours of debugging! I think there is indeed a bug in Shane's bootloader when using it with PIC16F87XA devices and there is a 3 in 4 chance that you will encounter it :-). When you have a hex file with a non multiple of 4 opcodes, the bootloader won't work! non-working example: :040000008A01252824 :080008008A110A1242284A285D :1000100056289828DF280B29142927293A2942290C :10002000532964297529962999299C29A429AC2941 :10003000BD29C52983120313A20000308A00253090 :10004000220703188A0A2208820704308316031342 :1000503086008030870083129F010630D3 working example: :040000008A01252824 :080008008A110A1242284A285D :1000100056289828DF280B29142927293A2942290C :10002000532964297529962999299C29A429AC2941 :10003000BD29C52983120313A20000308A00253090 :10004000220703188A0A2208820704308316031342 :100050008500F03086008030870083129F010630D3 The datasheet specs that: 1) you MUST write the FLASH in groups of 4 words. 2) When not writing 4 WORDS you MUST READ the non-written words so you don't overwrite them I assume that the bootloader sins against one of these rules, hopefully the authors have an idea were it can be. Workaround: very simple, make sure you always have a multiple of 4 opcodes in the hex file and it works! Simply add some nops somewhere to fill it up. With an editor you can easily see how many opcodes you have to add to have a nice alignment in the hex file at the end. Hope this works for you! greets, G