// Sample ICD2 linker command file for 16F628A

LIBPATH  .

CODEPAGE   NAME=vectors    START=0x0      END=0x4      PROTECTED
CODEPAGE   NAME=page       START=0x5      END=0x6FF
CODEPAGE   NAME=debug      START=0x700    END=0x7FF    PROTECTED
CODEPAGE   NAME=.idlocs    START=0x2000   END=0x2003   PROTECTED
CODEPAGE   NAME=.icd_inst  START=0x2004   END=0x2004   PROTECTED
CODEPAGE   NAME=.device_id START=0x2006   END=0x2006   PROTECTED
CODEPAGE   NAME=.config    START=0x2007   END=0x2007   PROTECTED
CODEPAGE   NAME=eedata     START=0x2100   END=0x217F   PROTECTED

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

DATABANK   NAME=gpr0      START=0x20     END=0x6F
DATABANK   NAME=gpr1      START=0xA0     END=0xEF
DATABANK   NAME=gpr2      START=0x120    END=0x144
DATABANK   NAME=dbg2      START=0x145    END=0x14F PROTECTED

SHAREBANK  NAME=dbgnobnk0  START=0x70     END=0x70 PROTECTED
SHAREBANK  NAME=dbgnobnk0  START=0xF0     END=0xF0 PROTECTED
SHAREBANK  NAME=dbgnobnk0  START=0x170    END=0x170 PROTECTED
SHAREBANK  NAME=dbgnobnk0  START=0x1F0    END=0x1F0 PROTECTED

SHAREBANK  NAME=gprnobnk0  START=0x71     END=0x7E
SHAREBANK  NAME=gprnobnk0  START=0xF1     END=0xFE
SHAREBANK  NAME=gprnobnk0  START=0x171    END=0x17E
SHAREBANK  NAME=gprnobnk0  START=0x1F1    END=0x1FE

SHAREBANK  NAME=gprnobnk1  START=0x7F     END=0x7F
SHAREBANK  NAME=gprnobnk1  START=0xFF     END=0xFF
SHAREBANK  NAME=gprnobnk1  START=0x17F    END=0x17F

DATABANK   NAME=testreg    START=0x1FF    END=0x1FF   PROTECTED

SECTION    NAME=STARTUP  ROM=vectors     // Reset and interrupt vectors
SECTION    NAME=PROG     ROM=page        // ROM code space
SECTION    NAME=DEBUG    ROM=debug       // ICD2 debug exec 
SECTION    NAME=IDLOCS   ROM=.idlocs     // ID locations
SECTION    NAME=ICD_INST ROM=.icd_inst   // ICD instruction
SECTION    NAME=DEVICEID ROM=.device_id  // Device ID
SECTION    NAME=DEEPROM  ROM=eedata      // Data EEPROM
