FAT 12, FAT 16 and FAT32 with PBP
There are other ways to get mass storage card access than converting to another compiler with all the fun and trauma that entails. I have just used the Vinculum VDIP1 with a PIC 18F4620 project. The VDIP1 takes serial data from the PIC and drives the USB interface. The VDIP1 handles the FAT 12, FAT 16 and FAT32. By using a common USB to CF, MMC, SD, etc, card reader you get read and write access to most memory formats.
In my application I log data from a scientific instrument to a USB stick. I am using the default 9600 bps async uart writing to a 1 GB USB memory stick.
I have posted the code under the Code Examples section.
Cheers
Brian