From: Alan C. de A. <ac...@gm...> - 2007-11-08 14:17:46
|
Hi Raphael, 2007/11/8, Raphael Neider <rn...@we...>: > Hi Alan, > I attached a picos18-archive with modifications to make it compile on > SDCC; you may want to diff it against your version to find the numberous > changes throughout the code base. > Be warned: Though I could compile the project, I could not test test it. > There may be subtle conversion errors that you might already have worked > around... > Thank you very much Raphael! I saw your changes are similar the changes I'm doing here. So it is a bode well for me :-). Unhappily I'm trying PICos18 v2.10 and the version you compiled is v1.11. > I also changed the device to 18f4520, for different devices, you need to > adjust (a) devices.inc and (b) the ARCH variable in Makefile. It is > probably cleaner to avoid devices.inc altogether... > Cool! I was using piklab to make it but will use your Makefile as model soon. All problems related to internal registers go away, my problem now is because pro_man.h uses functions defined at kernel.asm (yes native assembly file, no automatically generated one) and compiler don't found it: sdcc -mpic16 -p18f2680 -V -I/home/alan/pic/picos18/ -c pro_man.c pro_man.c:82: #pragma udata: bad argument(s); pragma ignored pro_man.c:103: #pragma udata: bad argument(s); pragma ignored pro_man.c:124: #pragma code: bad argument(s); pragma ignored /home/sdcc-builder/build/sdcc-build/orig/sdcc/src/pic16/gen.c:2097 returning register AOP_ACC (null) /home/sdcc-builder/build/sdcc-build/orig/sdcc/src/pic16/gen.c:2097 returning register AOP_ACC (null) /home/sdcc-builder/build/sdcc-build/orig/sdcc/src/pic16/gen.c:2097 returning register AOP_ACC (null) pro_man.asm:1228: error: Symbol not previously defined (_parser_organize). pro_man.asm:1309: error: Symbol not previously defined (_kernel). pro_man.asm:1398: error: Symbol not previously defined (_sched). pro_man.asm:1512: error: Symbol not previously defined (_restore_start_adr). These functions are defined as extern and prefixed by underscore at the header file, but the compiler is not placing they at "extern variables in this module" section into generated asm file. I tested removing the underscore from header declaration with no success. > Regards, > Raphael > Thank you very much, Alan |