At 09:01 03/14/99 +1000, Clyde Smith-Stubbs wrote: >The intrinsic library routines (e.g. multiply, divide) are re-entrant in the >sense that they can be called from an interrupt function, and no problems will >occur if they're already executing, but this is achieved by saving the >necessary RAM areas in the interrupt routine (the compiler saves only what >appears >to be necessary). User functions are generally speaking not re-entrant. thanks for the clarification. makes sense. >With respect to the original question about practicality of C on a PIC, the >amount of RAM used by a C program should not be any larger than that used >by an equivalent assembler program; data is data and occupies the same space >irrespective of the language used. as a matter of fact, due to the "smart" handling of local variables it might even be that a compiler uses less ram than a not fully optimized assembler program. (and who has the time to fully optimize everything? :) ge