J'ai fait un bat pour SDCC
sdcc -S -V -mpic14 -p16f84 %1.c > mylog1.txt
gpasm.exe -D__16f84 -c %1.asm -o %1.o > mylog2.txt
gplink.exe -I"c:\progra~1\sdcc\lib\pic" -s"c:\gputils\lkr\16f84.lkr" -o %1 %1.o pic16f84.lib libsdcc.lib >> mylog3.txt
type mylog1.txt
type mylog2.txt
type mylog3.txt
J'obtient des Warnings par le linker
peut être les "page select" ?warning: processor mismatch in "idata.o"
warning: processor mismatch in "_gptrget1.o"
warning: processor mismatch in "_gptrget2.o"
warning: processor mismatch in "idata.o"
warning: processor mismatch in "_gptrget1.o"
warning: processor mismatch in "_gptrget2.o"
Il y a qu'une page avec le 16F84 et le type de compile est "small"
le idata a un "page select" devant chaque call
Je me demande si ça cache autre chose...?
exemple
pas de type de µp spécifié...Code:__codeptrget2: pagesel __codeptrget1 ; might reside in different page call __codeptrget1 movwf STK02 ; temporarily store LSB incfsz STK01,F ; increment low address byte decf STK00,F ; undo increment of high address byte if low byte did not overflow incf STK00,F ; increment high address byte pagesel __codeptrget1 ; might reside in different page call __codeptrget1 movwf STK03 ; temporarily store MSB movf STK02, W movwf STK00 ; LSB in STK00 movf STK03, W ; MSB in WREG return
-----