1// File: 16lf876_g.lkr
2// Generic linker script for the PIC16LF876 processor
3
4LIBPATH .
5
6CODEPAGE   NAME=page0      START=0x0               END=0x7FF
7CODEPAGE   NAME=page1      START=0x800             END=0xFFF
8CODEPAGE   NAME=page2      START=0x1000            END=0x17FF
9CODEPAGE   NAME=page3      START=0x1800            END=0x1FFF
10CODEPAGE   NAME=.idlocs    START=0x2000            END=0x2003         PROTECTED
11CODEPAGE   NAME=devid      START=0x2006            END=0x2006         PROTECTED
12CODEPAGE   NAME=.config    START=0x2007            END=0x2007         PROTECTED
13CODEPAGE   NAME=eedata     START=0x2100            END=0x21FF         PROTECTED
14
15DATABANK   NAME=sfr0       START=0x0               END=0x1F           PROTECTED
16DATABANK   NAME=sfr1       START=0x80              END=0x9F           PROTECTED
17DATABANK   NAME=sfr2       START=0x100             END=0x10F          PROTECTED
18DATABANK   NAME=sfr3       START=0x180             END=0x18F          PROTECTED
19
20DATABANK   NAME=gpr0       START=0x20              END=0x6F
21DATABANK   NAME=gpr1       START=0xA0              END=0xEF
22DATABANK   NAME=gpr2       START=0x110             END=0x16F
23DATABANK   NAME=gpr3       START=0x190             END=0x1EF
24
25SHAREBANK  NAME=gprnobnk   START=0x70            END=0x7F
26SHAREBANK  NAME=gprnobnk   START=0xF0            END=0xFF           PROTECTED
27SHAREBANK  NAME=gprnobnk   START=0x170           END=0x17F          PROTECTED
28SHAREBANK  NAME=gprnobnk   START=0x1F0           END=0x1FF          PROTECTED
29
30SECTION    NAME=PROG1      ROM=page0           // ROM code space - page0
31SECTION    NAME=PROG2      ROM=page1           // ROM code space - page1
32SECTION    NAME=PROG3      ROM=page2           // ROM code space - page2
33SECTION    NAME=PROG4      ROM=page3           // ROM code space - page3
34SECTION    NAME=IDLOCS     ROM=.idlocs         // ID locations
35SECTION    NAME=DEEPROM    ROM=eedata          // Data EEPROM
36
37