Is it posibble to have part of the code located at 0x0000 to 0x03ff for example and then the remainder of the code at 0x1e00 to 0x1fff, with the area in between (0x0400 to 0x1dff) being skipped.
Yes. You must using compiler LX51 with code banking by Keil.
In LX51, you can just remove that region from code space, using the RESERVE linker control, or a multi-region entry for class CODE in the CLASSES control. In BL51, a multi-region CODE control does the same thing. The IDE will generate these for you if you enter multiple regions in the target options tab under "off-chip code memory".
Thanks for the replies. I have tried the BL51 option by entering the memory locations under 'Off-chip Code memory' and this works fine. Thanks again.