// Sample ICD2 linker command file for 16F871

LIBPATH  .

CODEPAGE   NAME=vectors  START=0x0      END=0x4      PROTECTED
CODEPAGE   NAME=page0    START=0x5      END=0x6FF
CODEPAGE   NAME=debug    START=0x700    END=0x7FF    PROTECTED
CODEPAGE   NAME=.idlocs  START=0x2000   END=0x2003   PROTECTED
CODEPAGE   NAME=.config  START=0x2007   END=0x2007   PROTECTED
CODEPAGE   NAME=eedata   START=0x2100   END=0x213F   PROTECTED

DATABANK   NAME=sfr0     START=0x0      END=0x1F     PROTECTED
DATABANK   NAME=sfr1     START=0x80     END=0x9F     PROTECTED
DATABANK   NAME=sfr2     START=0x100    END=0x10F    PROTECTED
DATABANK   NAME=sfr3     START=0x180    END=0x18F    PROTECTED

SHAREBANK   NAME=gprnobnk0     START=0x20     END=0x6F
SHAREBANK   NAME=gprnobnk0     START=0x120    END=0x16F

SHAREBANK   NAME=gprnobnk1     START=0xA0     END=0xB4
SHAREBANK   NAME=dbgspr1       START=0xB5     END=0xBF  PROTECTED
SHAREBANK   NAME=gprnobnk1     START=0x1A0    END=0x1B4
SHAREBANK   NAME=dbgspr1       START=0x1B5    END=0x1BF PROTECTED

SHAREBANK  NAME=dbgspr2   START=0x70     END=0x70 PROTECTED
SHAREBANK  NAME=gprnobnk2 START=0x71     END=0x7F
SHAREBANK  NAME=dbgspr2   START=0xF0     END=0xF0 PROTECTED
SHAREBANK  NAME=gprnobnk2 START=0xF1     END=0xFF
SHAREBANK  NAME=dbgspr2   START=0x170    END=0x170 PROTECTED
SHAREBANK  NAME=gprnobnk2 START=0x171    END=0x17F
SHAREBANK  NAME=dbgspr2   START=0x1F0    END=0x1F0 PROTECTED
SHAREBANK  NAME=gprnobnk2 START=0x1F1    END=0x1FF

SECTION    NAME=STARTUP  ROM=vectors    // Reset and interrupt vectors
SECTION    NAME=PROG1    ROM=page0      // ROM code space - page0
SECTION    NAME=IDLOCS   ROM=.idlocs    // ID locations
SECTION    NAME=DEEPROM  ROM=eedata     // Data EEPROM
