Generic Pointers for MPLAB-C18 Compiler

by Isaac Marino Bavaresco

I got tired of using two or more different versions of functions like "strcmp", "strcmppgm", "strcmppgm2ram", "strcmpram2pgm" (and many other) just because MPLAB-C18 pointers are so stupid.

Then I developed the generic pointers for MPLAB-C18. To make it viable I had to rewrite most of its library functions also. Most I started from scratch (like the 'memcpy' that is shown in the link below) and some I just changed (like the 'printf').

As a positive side effect, most functions run faster than the originals.

Most functions become slightly larger than the orignal, because indeed they are two-in-one (or even four-in-one), but with the advantage that you need just one the code shrinks.

Tested in extended mode only, in a PIC18 with more than 64Ki Words of program memory.