vm-ware fusio 6

Serial number: VZ15K-DKD85-M85EP-W4P79-XAAU4
Serial number: VU50A-2UW9Q-M88UY-D7MQX-ZG8X8
Serial number: VG7WU-41G97-48D8Y-X5PQZ-MLHZA
Serial number: VA5MK-49E1H-488NP-ENXXG-M28X6
Serial number: YZ3TU-AHWE2-0892Q-YWYET-Q7UDD
Serial number: GV5DK-8RDDJ-484GQ-FZNNG-Y2UYA
Serial number: CU74A-6ZE0J-489WP-YXZ59-W70W2
Serial number: CG500-47EEM-08EAQ-GGW7Z-QP2VD
Serial number: CF7X2-FFFEP-48DQZ-ZFQEE-QAUVF
Serial number: GV1MA-DPW57-0894Y-H4NZT-X6KC2


How to Relocate User Code

User code must be relocated at address 0x0200 or 0x0800 depending on the model and firmware used. The start of user space depends on the size of the boot block. Originally, the boot block for PIC18F devices was 256 bytes. Lately, most new models have a boot block of 2048 bytes. To determine the size of the boot block for your device, you may look at the PicDevices.properties file.

If you are not concerned about protecting the boot block, you can still relocate the user code to address 0x0200 even if your device boot block is 2048 bytes, but you must change the appropriate entry in the PicDevices.properties file and you must use the appropriate bootloader firmware (bootloader.hex).


Add the following directives in you .c file:

#org 0x0000,0x01ff
void bootloader() {
} // Reserve space for the bootloader

Replace 0x200 and 0x208 with 0x800 and 0x808 for PIC devices using a 2 kb boot block.


Use the compiler directive --ivt-loc 0x200.


In the link phase, use the linker directive -a200h.

Microchip C18


Edit the Linker script 18f452_c.lkr to protect the boot block, and rebuild the C18 startup objects c018.o and c018i.o. The Linker script 18f4620_c.lkr must be used for models that use a 2048 boot block. Also be certain you have not defined absolute code sections in the source code to start in the boot block. For instance:

#pragma code InterruptVectorHigh = 0x08

must be changed to

#pragma code InterruptVectorHigh = 0x208

or for models that use 2048 bytes boot block:

#pragma code InterruptVectorHigh = 0x808

PIC Basic Pro

Had the following line:



to be continued