Looking at the map file, i can see that .cinit -- googling for it it seems that is something to do with HiTech toolchain, and that linker puts constant initialiser in there. Did Microchip switch to HiTech linker? MPLINK 4.44, Linker Linker Map File - Created Sat Aug 18 16:09:18 2012 Section Info Section Type Address Location Size(Bytes) --------- --------- --------- --------- --------- rst code 0x000000 program 0x000006 int code 0x000004 program 0x000002 .cinit romdata 0x000005 program 0x000004 On 18 August 2012 15:56, Tamas Rudnai wrote: > In relative mode the RETLWs are at the very beginning unless I define the > address with 'code 0' whereas the two RETLWs goes to the end of the code.= ... > > Tamas > > > On 18 August 2012 15:39, John Coppens wrote: > >> On Sat, 18 Aug 2012 23:56:50 +0200 >> Jan-Erik Soderholm wrote: >> >> > For me, this works (without getting extra RETLW's) *IF* >> > I make sure the "Build absolute mode" option is *checked* >> > in the project config dialog. If not, I get the same >> > result as Tamas. >> >> Hallo Jan-Erik... >> >> Strange: I never spent much time with that option, because the field >> behind it is greyed out. It's almost unreadable, but it says (N/A)... >> Any idea why that is? >> >> John >> -- >> http://www.piclist.com PIC/SX FAQ & list archive >> View/change your membership options at >> http://mailman.mit.edu/mailman/listinfo/piclist >> > > > > -- > int main() { char *a,*s,*q; printf(s=3D"int main() { char *a,*s,*q; > printf(s=3D%s%s%s, q=3D%s%s%s%s,s,q,q,a=3D%s%s%s%s,q,q,q,a,a,q); }", > q=3D"\"",s,q,q,a=3D"\\",q,q,q,a,a,q); } > --=20 int main() { char *a,*s,*q; printf(s=3D"int main() { char *a,*s,*q; printf(s=3D%s%s%s, q=3D%s%s%s%s,s,q,q,a=3D%s%s%s%s,q,q,q,a,a,q); }", q=3D"\"",s,q,q,a=3D"\\",q,q,q,a,a,q); } --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .