I am trying to use P2C with the Rick Farmer PICloader v1.1. I included some details from his web site. Thus far I have not been successful. Can anyone help? How can I use P2C and/or C2C to compile code compatible with Rick Farmer's PICLoader? Here are some of the details: In other C Pic compilers there is a PRAGMA "#pragma ResetVector 0x0003" to change the reset vector. How can I do this in P2C and C2C? Here are the instructions from Rick Farmers page: http://www.dontronics.com/rfarmer.html Writing Code for Use with PICLOADER PICLOADER's impact on user code is quite small. The only restrictions are that the user code reset vector moves from 0000h to 0003h and the last bank of program memory is reserved for the PICLOADER code. PICLOADER does not use interrupts, so aside from the restrictions in code space you can pretty much write your code as if the PICLOADER did not exist. In addition, PICLOADER can be invoked by the user code at any time to initiate a code reload. Note that PICLOADER always returns control to the user reset vector when it exits, regardless of how and where a user program calls it. Also check to make sure that the default configuration fuses do not conflict with your design. For example, the watchdog timer and brown out detector are enable by default. A complete list of the fuse setting is described at the end of this document and you can change them as needed when you program the bootloader into your target chip. Here is a checklist for converting code to run with the bootloader. http://www.dontronics.com/rfarmer/checklist.htm This is a checklist for converting a 16Cxx design to a 16F87x design that can be loaded and run with the PICLOADER resident bootloader. 1. Change the reset vector in your code from 0000h to 0003h. 2. Remove the __CONFIG statement from your code. The bootloader can not change the configuration fuses. If the default configuration fuses are not to you liking you can change them to whatever like when you install the bootloader with a device programmer. 3. If you use the default fuse setting make sure that your code executes a "clrwdt" instruction every 10 milliseconds. 4. Connect the TX and RX pins to an appropriate connector and or an RS-232 converter chip so that you can communicate with the bootloader.
I have also used Pascal and Borland Delphi for many years now. I found the P2C Compiler and I am debating weather to use it, Basic or tone up my C skills. The dilemma for me is; do I use Pascal (P2C) a language I am very comfortable but there is very, very little support, and an even smaller user community. Or do I bite the bullet and go with the C2C compiler right from the start. Go through the pain of toning my C skills. The C user community is immensely larger and therefore possibly better at getting a question answered. The third option is go with a “Basic” package such as PICBASIC or Basic Micro. The BASIC packages are a bit more expensive but a fully supported commercial package. I come up with rationalizations such as; I could purchase P2C, C2C and programmer parts then use one (P2C) and learn the other (C2C) all for a lot less than the BASIC compiler package alone. But then there is the support issue. The P2C, C2C and any other downloaded/shareware package will be basically self and internet supported, whereas the commercial BASIC packages are supposed to have a support infrastructure in place and handle a multitude of devices and configurations. As an FYI; I am leaning toward the buy both P2C and C2C route…..