* Fixed svn:eol-style and svn:keywords properties
[fw/sdcc] / device / include / pic16 / pic18f4620.h
1 /* 
2  * pic18f4620.h - PIC18F4620 Device Library Header
3  * 
4  * This file is part of the GNU PIC Library.
5  * 
6  * May, 2005
7  * The GNU PIC Library is maintained by
8  *     Raphael Neider <rneider AT web.de>
9  * 
10  * originally designed by
11  *     Vangelis Rokas <vrokas@otenet.gr>
12  * 
13  * September, 2006
14  *  Added based on existing PICs
15  *      Gary Plumbridge <gary@phodex.net>
16  * 
17  * $Id$
18  * 
19  */
20
21 #ifndef __PIC18F4620_H__
22 #define __PIC18F4620_H__ 1
23
24 extern __sfr __at (0xF80) PORTA;
25 typedef union {
26         struct {
27                 unsigned RA0            : 1;
28                 unsigned RA1            : 1;
29                 unsigned RA2            : 1;
30                 unsigned RA3            : 1;
31                 unsigned RA4            : 1;
32                 unsigned RA5            : 1;
33                 unsigned RA6            : 1;
34                 unsigned RA7            : 1;
35         };
36         struct {
37                 unsigned RA             : 8;
38         };
39         /* aliases */
40         struct {
41                 unsigned                :1;
42                 unsigned                :1;
43                 unsigned                :1;
44                 unsigned                :1;
45                 unsigned C1OUT          :1;
46                 unsigned C2OUT          :1;
47                 unsigned OSC2           :1;
48                 unsigned OSC1           :1;
49         };
50         struct {
51                 unsigned AN0            :1;
52                 unsigned AN1            :1;
53                 unsigned AN2            :1;
54                 unsigned AN3            :1;
55                 unsigned T0CKI          :1;
56                 unsigned AN4            :1;
57                 unsigned                :1;
58                 unsigned                :1;
59         };
60     struct {
61         unsigned            :1;
62         unsigned            :1;
63         unsigned            :1;
64         unsigned            :1;
65         unsigned            :1;
66         unsigned SS         :1;
67         unsigned            :1;
68         unsigned            :1;
69     };
70     struct {
71         unsigned            :1;
72         unsigned            :1;
73         unsigned            :1;
74         unsigned            :1;
75         unsigned            :1;
76         unsigned HLVDIN     :1;
77         unsigned            :1;
78         unsigned            :1;
79     };
80 } __PORTA_t;
81 extern volatile __PORTA_t __at (0xF80) PORTAbits;
82
83 extern __sfr __at (0xF81) PORTB;
84 typedef union {
85         struct {
86                 unsigned RB0            : 1;
87                 unsigned RB1            : 1;
88                 unsigned RB2            : 1;
89                 unsigned RB3            : 1;
90                 unsigned RB4            : 1;
91                 unsigned RB5            : 1;
92                 unsigned RB6            : 1;
93                 unsigned RB7            : 1;
94         };
95         struct {
96                 unsigned RB             : 8;
97         };
98         /* aliases */
99         struct {
100                 unsigned INT0           :1;
101                 unsigned INT1           :1;
102                 unsigned INT2           :1;
103                 unsigned CCP2           :1;
104                 unsigned KBI0           :1;
105                 unsigned KBI1           :1;
106                 unsigned KBI2           :1;
107                 unsigned KBI3           :1;
108         };
109     struct {
110         unsigned AN12       :1;
111         unsigned AN10       :1;
112         unsigned AN8        :1;
113         unsigned AN9        :1;
114         unsigned AN11       :1;
115         unsigned PGM        :1;
116         unsigned PGC        :1;
117         unsigned PGD        :1;
118     };
119 } __PORTB_t;
120 extern volatile __PORTB_t __at (0xF81) PORTBbits;
121
122 extern __sfr __at (0xF82) PORTC;
123 typedef union {
124         struct {
125                 unsigned RC0            : 1;
126                 unsigned RC1            : 1;
127                 unsigned RC2            : 1;
128                 unsigned RC3            : 1;
129                 unsigned RC4            : 1;
130                 unsigned RC5            : 1;
131                 unsigned RC6            : 1;
132                 unsigned RC7            : 1;
133         };
134         struct {
135                 unsigned RC             : 8;
136         };
137         /* aliases */
138         struct {
139                 unsigned T1OSO          :1;
140                 unsigned T1OSI          :1;
141                 unsigned CCP1           :1;
142                 unsigned SCK            :1;
143                 unsigned SDI            :1;
144                 unsigned SDO            :1;
145                 unsigned TX             :1;
146                 unsigned RX             :1;
147         };
148         struct {
149                 unsigned T3CKI          :1;
150                 unsigned CCP2           :1;
151                 unsigned SCL            :1;
152                 unsigned SDA            :1;
153                 unsigned CK             :1;
154                 unsigned DTC            :1;   /* DT might be a reserved word in ASM */
155                 unsigned                :1;
156                 unsigned                :1;
157         };
158         struct {
159                 unsigned T1CKI          :1;
160                 unsigned                :1;
161                 unsigned                :1;
162                 unsigned                :1;
163                 unsigned                :1;
164                 unsigned                :1;
165                 unsigned                :1;
166                 unsigned                :1;
167         };
168 } __PORTC_t;
169 extern volatile __PORTC_t __at (0xF82) PORTCbits;
170
171 extern __sfr __at (0xF83) PORTD;
172 typedef union {
173     struct {
174         unsigned RD0        : 1;
175         unsigned RD1        : 1;
176         unsigned RD2        : 1;
177         unsigned RD3        : 1;
178         unsigned RD4        : 1;
179         unsigned RD5        : 1;
180         unsigned RD6        : 1;
181         unsigned RD7        : 1;
182     };
183     struct {
184         unsigned RD         : 8;
185     };
186     /* aliases */
187     struct {
188         unsigned            :1;
189         unsigned            :1;
190         unsigned            :1;
191         unsigned            :1;
192         unsigned            :1;
193         unsigned ECCPB      :1;
194         unsigned ECCPC      :1;
195         unsigned ECCPD      :1;
196     };
197     struct {
198         unsigned PSP0       :1;
199         unsigned PSP1       :1;
200         unsigned PSP2       :1;
201         unsigned PSP3       :1;
202         unsigned PSP4       :1;
203         unsigned PSP5       :1;
204         unsigned PSP6       :1;
205         unsigned PSP7       :1;
206     };
207 } __PORTD_t;
208 extern volatile __PORTD_t __at (0xF83) PORTDbits;
209
210 extern __sfr __at (0xF84) PORTE;
211 typedef union {
212     struct {
213         unsigned RE0        : 1;
214         unsigned RE1        : 1;
215         unsigned RE2        : 1;
216         unsigned RE3        : 1;
217         unsigned            : 1;
218         unsigned            : 1;
219         unsigned            : 1;
220         unsigned            : 1;
221     };
222     struct {
223         unsigned RE         : 8;
224     };
225     /* aliases */
226     struct {
227         unsigned RD         :1;
228         unsigned WR         :1;
229         unsigned CS         :1;
230         unsigned MCLR       :1;
231         unsigned            :1;
232         unsigned            :1;
233         unsigned            :1;
234         unsigned            :1;
235     };
236     struct {
237         unsigned AN5        :1;
238         unsigned AN6        :1;
239         unsigned AN7        :1;
240         unsigned VPP        :1;
241         unsigned            :1;
242         unsigned            :1;
243         unsigned            :1;
244         unsigned            :1;
245     };
246 } __PORTE_t;
247 extern volatile __PORTE_t __at (0xF84) PORTEbits;
248
249 extern __sfr __at (0xF89) LATA;
250 typedef union {
251         struct {
252                 unsigned LATA0          : 1;
253                 unsigned LATA1          : 1;
254                 unsigned LATA2          : 1;
255                 unsigned LATA3          : 1;
256                 unsigned LATA4          : 1;
257                 unsigned LATA5          : 1;
258                 unsigned LATA6          : 1;
259                 unsigned LATA7          : 1;
260         };
261 } __LATA_t;
262 extern volatile __LATA_t __at (0xF89) LATAbits;
263
264 extern __sfr __at (0xF8A) LATB;
265 typedef union {
266         struct {
267                 unsigned LATB0          : 1;
268                 unsigned LATB1          : 1;
269                 unsigned LATB2          : 1;
270                 unsigned LATB3          : 1;
271                 unsigned LATB4          : 1;
272                 unsigned LATB5          : 1;
273                 unsigned LATB6          : 1;
274                 unsigned LATB7          : 1;
275         };
276 } __LATB_t;
277 extern volatile __LATB_t __at (0xF8A) LATBbits;
278
279 extern __sfr __at (0xF8B) LATC;
280 typedef union {
281         struct {
282                 unsigned LATC0          : 1;
283                 unsigned LATC1          : 1;
284                 unsigned LATC2          : 1;
285                 unsigned LATC3      : 1;
286                 unsigned LATC4      : 1;
287                 unsigned LATC5      : 1;
288                 unsigned LATC6          : 1;
289                 unsigned LATC7          : 1;
290         };
291 } __LATC_t;
292 extern volatile __LATC_t __at (0xF8B) LATCbits;
293
294 extern __sfr __at (0xF8C) LATD;
295 typedef union {
296     struct {
297         unsigned LATD0      : 1;
298         unsigned LATD1      : 1;
299         unsigned LATD2      : 1;
300         unsigned LATD3      : 1;
301         unsigned LATD4      : 1;
302         unsigned LATD5      : 1;
303         unsigned LATD6      : 1;
304         unsigned LATD7      : 1;
305     };
306 } __LATD_t;
307 extern volatile __LATD_t __at (0xF8C) LATDbits;
308
309 extern __sfr __at (0xF8D) LATE;
310 typedef union {
311     struct {
312         unsigned LATE0      : 1;
313         unsigned LATE1      : 1;
314         unsigned LATE2      : 1;
315         unsigned LATE3      : 1;
316         unsigned            : 1;
317         unsigned            : 1;
318         unsigned            : 1;
319         unsigned            : 1;
320     };
321 } __LATE_t;
322 extern volatile __LATE_t __at (0xF8D) LATEbits;
323
324 extern __sfr __at (0xF92) TRISA;
325 typedef union {
326         struct {
327                 unsigned TRISA0         : 1;
328                 unsigned TRISA1         : 1;
329                 unsigned TRISA2         : 1;
330                 unsigned TRISA3         : 1;
331                 unsigned TRISA4         : 1;
332                 unsigned TRISA5         : 1;
333                 unsigned TRISA6         : 1;
334                 unsigned TRISA7         : 1;
335         };
336 } __TRISA_t;
337 extern volatile __TRISA_t __at (0xF92) TRISAbits;
338
339 extern __sfr __at (0xF93) TRISB;
340 typedef union {
341         struct {
342                 unsigned TRISB0         : 1;
343                 unsigned TRISB1         : 1;
344                 unsigned TRISB2         : 1;
345                 unsigned TRISB3         : 1;
346                 unsigned TRISB4         : 1;
347                 unsigned TRISB5         : 1;
348                 unsigned TRISB6         : 1;
349                 unsigned TRISB7         : 1;
350         };
351 } __TRISB_t;
352 extern volatile __TRISB_t __at (0xF93) TRISBbits;
353
354 extern __sfr __at (0xF94) TRISC;
355 typedef union {
356         struct {
357                 unsigned TRISC0         : 1;
358                 unsigned TRISC1         : 1;
359                 unsigned TRISC2         : 1;
360                 unsigned TRISC3         : 1;
361                 unsigned TRISC4         : 1;
362                 unsigned TRISC5         : 1;
363                 unsigned TRISC6         : 1;
364                 unsigned TRISC7         : 1;
365         };
366 } __TRISC_t;
367 extern volatile __TRISC_t __at (0xF94) TRISCbits;
368
369 extern __sfr __at (0xF95) TRISD;
370 typedef union {
371     struct {
372         unsigned TRISD0     : 1;
373         unsigned TRISD1     : 1;
374         unsigned TRISD2     : 1;
375         unsigned TRISD3     : 1;
376         unsigned TRISD4     : 1;
377         unsigned TRISD5     : 1;
378         unsigned TRISD6     : 1;
379         unsigned TRISD7     : 1;
380     };
381 } __TRISD_t;
382 extern volatile __TRISD_t __at (0xF95) TRISDbits;
383
384 extern __sfr __at (0xF96) TRISE;
385 typedef union {
386     struct {
387         unsigned TRISE0     : 1;
388         unsigned TRISE1     : 1;
389         unsigned TRISE2     : 1;
390         unsigned TRISE3     : 1;
391         unsigned            : 1;
392         unsigned            : 1;
393         unsigned            : 1;
394         unsigned            : 1;
395     };
396 } __TRISE_t;
397 extern volatile __TRISE_t __at (0xF96) TRISEbits;
398
399 extern __sfr __at (0xF9B) OSCTUNE;
400 typedef union {
401         struct {
402                 unsigned TUN            : 5;
403                 unsigned                : 1;
404                 unsigned PLLEN          : 1;
405         unsigned INTSRC     : 1;
406         };
407 } __OSCTUNE_t;
408 extern volatile __OSCTUNE_t __at (0xF9B) OSCTUNEbits;
409
410 extern __sfr __at (0xF9D) PIE1;
411 typedef union {
412         struct {
413                 unsigned TMR1IE         : 1;
414                 unsigned TMR2IE         : 1;
415                 unsigned CCP1IE         : 1;
416                 unsigned SSPIE          : 1;
417                 unsigned TXIE           : 1;
418                 unsigned RCIE           : 1;
419                 unsigned ADIE           : 1;
420                 unsigned PSPIE          : 1;
421         };
422 } __PIE1_t;
423 extern volatile __PIE1_t __at (0xF9D) PIE1bits;
424
425 extern __sfr __at (0xF9E) PIR1;
426 typedef union {
427         struct {
428                 unsigned TMR1IF         : 1;
429                 unsigned TMR2IF         : 1;
430                 unsigned CCP1IF         : 1;
431                 unsigned SSPIF          : 1;
432                 unsigned TXIF           : 1;
433                 unsigned RCIF           : 1;
434                 unsigned ADIF           : 1;
435                 unsigned PSPIF          : 1;
436         };
437 } __PIR1_t;
438 extern volatile __PIR1_t __at (0xF9E) PIR1bits;
439
440 extern __sfr __at (0xF9F) IPR1;
441 typedef union {
442         struct {
443                 unsigned TMR1IP         : 1;
444                 unsigned TMR2IP         : 1;
445                 unsigned CCP1IP         : 1;
446                 unsigned SSPIP          : 1;
447                 unsigned TXIP           : 1;
448                 unsigned RCIP           : 1;
449                 unsigned ADIP           : 1;
450                 unsigned PSPIP          : 1;
451         };
452 } __IPR1_t;
453 extern volatile __IPR1_t __at (0xF9F) IPR1bits;
454
455 extern __sfr __at (0xFA0) PIE2;
456 typedef union {
457         struct {
458                 unsigned CCP2IE         : 1;
459                 unsigned TMR3IE         : 1;
460                 unsigned HLVDIE         : 1;
461                 unsigned BCLIE          : 1;
462                 unsigned EEIE           : 1;
463                 unsigned USBIE          : 1;
464                 unsigned CMIE           : 1;
465                 unsigned OSCFIE         : 1;
466         };
467 } __PIE2_t;
468 extern volatile __PIE2_t __at (0xFA0) PIE2bits;
469
470 extern __sfr __at (0xFA1) PIR2;
471 typedef union {
472         struct {
473                 unsigned CCP2IF         : 1;
474                 unsigned TMR3IF         : 1;
475                 unsigned HLVDIF         : 1;
476                 unsigned BCLIF          : 1;
477                 unsigned EEIF           : 1;
478                 unsigned USBIF          : 1;
479                 unsigned CMIF           : 1;
480                 unsigned OSCFIF         : 1;
481         };
482 } __PIR2_t;
483 extern volatile __PIR2_t __at (0xFA1) PIR2bits;
484
485 extern __sfr __at (0xFA2) IPR2;
486 typedef union {
487         struct {
488                 unsigned CCP2IP         : 1;
489                 unsigned TMR3IP         : 1;
490                 unsigned HLVDIP         : 1;
491                 unsigned BCLIP          : 1;
492                 unsigned EEIP           : 1;
493                 unsigned USBIP          : 1;
494                 unsigned CMIP           : 1;
495                 unsigned OSCFIP         : 1;
496         };
497 } __IPR2_t;
498 extern volatile __IPR2_t __at (0xFA2) IPR2bits;
499
500 extern __sfr __at (0xFA6) EECON1;
501 typedef union {
502         struct {
503                 unsigned RD             : 1;
504                 unsigned WR             : 1;
505                 unsigned WREN           : 1;
506                 unsigned WRERR          : 1;
507                 unsigned FREE           : 1;
508                 unsigned                : 1;
509                 unsigned CFGS           : 1;
510                 unsigned EEPGD          : 1;
511         };
512 } __EECON1_t;
513 extern volatile __EECON1_t __at (0xFA6) EECON1bits;
514
515 extern __sfr __at (0xFA7) EECON2;
516
517 extern __sfr __at (0xFA8) EEDATA;
518
519 extern __sfr __at (0xFA9) EEADR;
520
521 extern __sfr __at (0xFAB) RCSTA;
522 typedef union {
523         struct {
524                 unsigned RX9D           : 1;
525                 unsigned OERR           : 1;
526                 unsigned FERR           : 1;
527                 unsigned ADDEN          : 1;
528                 unsigned CREN           : 1;
529                 unsigned SREN           : 1;
530                 unsigned RX9            : 1;
531                 unsigned SPEN           : 1;
532         };
533 } __RCSTA_t;
534 extern volatile __RCSTA_t __at (0xFAB) RCSTAbits;
535
536 extern __sfr __at (0xFAC) TXSTA;
537 typedef union {
538         struct {
539                 unsigned TX9D           : 1;
540                 unsigned TRMT           : 1;
541                 unsigned BRGH           : 1;
542                 unsigned SENDB          : 1;
543                 unsigned SYNC           : 1;
544                 unsigned TXEN           : 1;
545                 unsigned TX9            : 1;
546                 unsigned CSRC           : 1;
547         };
548 } __TXSTA_t;
549 extern volatile __TXSTA_t __at (0xFAC) TXSTAbits;
550
551 extern __sfr __at (0xFAD) TXREG;
552
553 extern __sfr __at (0xFAE) RCREG;
554
555 extern __sfr __at (0xFAF) SPBRG;
556
557 extern __sfr __at (0xFB0) SPBRGH;
558
559 extern __sfr __at (0xFB1) T3CON;
560 typedef union {
561         struct {
562                 unsigned TMR3ON         : 1;
563                 unsigned TMR3CS         : 1;
564                 unsigned NOT_T3SYNC     : 1;
565                 unsigned T3CCP1         : 1;
566                 unsigned T3CKPS0        : 1;
567                 unsigned T3CKPS1        : 1;
568                 unsigned T3CCP2         : 1;
569                 unsigned RD16           : 1;
570         };
571 } __T3CON_t;
572 extern volatile __T3CON_t __at (0xFB1) T3CONbits;
573
574 extern __sfr __at (0xFB2) TMR3L;
575
576 extern __sfr __at (0xFB3) TMR3H;
577
578 extern __sfr __at (0xFB4) CMCON;
579 typedef union {
580         struct {
581                 unsigned CM0            : 1;
582                 unsigned CM1            : 1;
583                 unsigned CM2            : 1;
584                 unsigned CIS            : 1;
585                 unsigned C1INV          : 1;
586                 unsigned C2INV          : 1;
587                 unsigned C1OUT          : 1;
588                 unsigned C2OUT          : 1;
589         };
590 } __CMCON_t;
591 extern volatile __CMCON_t __at (0xFB4) CMCONbits;
592
593 extern __sfr __at (0xFB5) CVRCON;
594 typedef union {
595         struct {
596                 unsigned CVR0           : 1;
597                 unsigned CVR1           : 1;
598                 unsigned CVR2           : 1;
599                 unsigned CVR3           : 1;
600                 unsigned CVRSS          : 1;
601                 unsigned CVRR           : 1;
602                 unsigned CVROE          : 1;
603                 unsigned CVREN          : 1;
604         };
605 } __CVRCON_t;
606 extern volatile __CVRCON_t __at (0xFB5) CVRCONbits;
607
608 extern __sfr __at (0xFB6) ECCP1AS;
609 typedef union {
610         struct {
611                 unsigned PSSBD0         : 1;
612                 unsigned PSSBD1         : 1;
613                 unsigned PSSAC0         : 1;
614                 unsigned PSSAC1         : 1;
615                 unsigned ECCPAS0        : 1;
616                 unsigned ECCPAS1        : 1;
617                 unsigned ECCPAS2        : 1;
618                 unsigned ECCPASE        : 1;
619         };
620 } __ECCP1AS_t;
621 extern volatile __ECCP1AS_t __at (0xFB6) ECCP1ASbits;
622
623 extern __sfr __at (0xFB7) PWM1CON;
624 typedef union {
625         struct {
626                 unsigned PDC0           : 1;
627                 unsigned PDC1           : 1;
628                 unsigned PDC2           : 1;
629                 unsigned PDC3           : 1;
630                 unsigned PDC4           : 1;
631                 unsigned PDC5           : 1;
632                 unsigned PDC6           : 1;
633                 unsigned PRSEN          : 1;
634         };
635 } __PWM1CON_t;
636 extern volatile __PWM1CON_t __at (0xFB7) PWM1CONbits;
637
638 extern __sfr __at (0xFB8) BAUDCON;
639 typedef union {
640         struct {
641                 unsigned ABDEN          : 1;
642                 unsigned WUE            : 1;
643                 unsigned                : 1;
644                 unsigned BRG16          : 1;
645                 unsigned SCKP           : 1;
646                 unsigned                : 1;
647                 unsigned RCMT           : 1;
648                 unsigned ABDOVF         : 1;
649         };
650 } __BAUDCON_t;
651 extern volatile __BAUDCON_t __at (0xFB8) BAUDCONbits;
652
653 extern __sfr __at (0xFBA) CCP2CON;
654 typedef union {
655         struct {
656                 unsigned CCP2M0         : 1;
657                 unsigned CCP2M1         : 1;
658                 unsigned CCP2M2         : 1;
659                 unsigned CCP2M3         : 1;
660                 unsigned DC2B0          : 1;
661                 unsigned DC2B1          : 1;
662                 unsigned                : 1;
663                 unsigned                : 1;
664         };
665 } __CCP2CON_t;
666 extern volatile __CCP2CON_t __at (0xFBA) CCP2CONbits;
667
668 extern __sfr __at (0xFBB) CCPR2L;
669
670 extern __sfr __at (0xFBC) CCPR2H;
671
672 extern __sfr __at (0xFBD) CCP1CON;
673 typedef union {
674         struct {
675                 unsigned CCP1M0         : 1;
676                 unsigned CCP1M1         : 1;
677                 unsigned CCP1M2         : 1;
678                 unsigned CCP1M3         : 1;
679                 unsigned DC1B0          : 1;
680                 unsigned DC1B1          : 1;
681                 unsigned                : 1;
682                 unsigned                : 1;
683         };
684 } __CCP1CON_t;
685 extern volatile __CCP1CON_t __at (0xFBD) CCP1CONbits;
686
687 extern __sfr __at (0xFBE) CCPR1L;
688
689 extern __sfr __at (0xFBF) CCPR1H;
690
691 extern __sfr __at (0xFC0) ADCON2;
692 typedef union {
693         struct {
694                 unsigned ADCS0          : 1;
695                 unsigned ADCS1          : 1;
696                 unsigned ADCS2          : 1;
697                 unsigned ACQT0          : 1;
698                 unsigned ACQT1          : 1;
699                 unsigned ACQT2          : 1;
700                 unsigned                : 1;
701                 unsigned ADFM           : 1;
702         };
703 } __ADCON2_t;
704 extern volatile __ADCON2_t __at (0xFC0) ADCON2bits;
705
706 extern __sfr __at (0xFC1) ADCON1;
707 typedef union {
708         struct {
709                 unsigned PCFG0          : 1;
710                 unsigned PCFG1          : 1;
711                 unsigned PCFG2          : 1;
712                 unsigned PCFG3          : 1;
713                 unsigned VCFG0          : 1;
714                 unsigned VCFG1          : 1;
715                 unsigned                : 1;
716                 unsigned                : 1;
717         };
718 } __ADCON1_t;
719 extern volatile __ADCON1_t __at (0xFC1) ADCON1bits;
720
721 extern __sfr __at (0xFC2) ADCON0;
722 typedef union {
723         struct {
724                 unsigned ADON           : 1;
725                 unsigned GO             : 1;
726                 unsigned CHS0           : 1;
727                 unsigned CHS1           : 1;
728                 unsigned CHS2           : 1;
729                 unsigned CHS3           : 1;
730                 unsigned                : 1;
731                 unsigned                : 1;
732         };
733 } __ADCON0_t;
734 extern volatile __ADCON0_t __at (0xFC2) ADCON0bits;
735
736 extern __sfr __at (0xFC3) ADRESL;
737
738 extern __sfr __at (0xFC4) ADRESH;
739
740 extern __sfr __at (0xFC5) SSPCON2;
741 typedef union {
742         struct {
743                 unsigned SEN            : 1;
744                 unsigned RSEN           : 1;
745                 unsigned PEN            : 1;
746                 unsigned RCEN           : 1;
747                 unsigned ACKEN          : 1;
748                 unsigned ACKDT          : 1;
749                 unsigned ACKSTAT        : 1;
750                 unsigned GCEN           : 1;
751         };
752 } __SSPCON2_t;
753 extern volatile __SSPCON2_t __at (0xFC5) SSPCON2bits;
754
755 extern __sfr __at (0xFC6) SSPCON1;
756 typedef union {
757         struct {
758                 unsigned SSPM0          : 1;
759                 unsigned SSPM1          : 1;
760                 unsigned SSPM2          : 1;
761                 unsigned SSPM3          : 1;
762                 unsigned CKP            : 1;
763                 unsigned SSPEN          : 1;
764                 unsigned SSPOV          : 1;
765                 unsigned WCOL           : 1;
766         };
767 } __SSPCON1_t;
768 extern volatile __SSPCON1_t __at (0xFC6) SSPCON1bits;
769
770 extern __sfr __at (0xFC7) SSPSTAT;
771 typedef union {
772         struct {
773                 unsigned BF             : 1;
774                 unsigned UA             : 1;
775                 unsigned R_W            : 1;
776                 unsigned S              : 1;
777                 unsigned P              : 1;
778                 unsigned D_A            : 1;
779                 unsigned CKE            : 1;
780                 unsigned SMP            : 1;
781         };
782 } __SSPSTAT_t;
783 extern volatile __SSPSTAT_t __at (0xFC7) SSPSTATbits;
784
785 extern __sfr __at (0xFC8) SSPADD;
786
787 extern __sfr __at (0xFC9) SSPBUF;
788
789 extern __sfr __at (0xFCA) T2CON;
790 typedef union {
791         struct {
792                 unsigned T2CKPS0        : 1;
793                 unsigned T2CKPS1        : 1;
794                 unsigned TMR2ON         : 1;
795                 unsigned TOUTPS0        : 1;
796                 unsigned TOUTPS1        : 1;
797                 unsigned TOUTPS2        : 1;
798                 unsigned TOUTPS3        : 1;
799                 unsigned                : 1;
800         };
801 } __T2CON_t;
802 extern volatile __T2CON_t __at (0xFCA) T2CONbits;
803
804 extern __sfr __at (0xFCB) PR2;
805
806 extern __sfr __at (0xFCC) TMR2;
807
808 extern __sfr __at (0xFCD) T1CON;
809 typedef union {
810         struct {
811                 unsigned TMR1ON         : 1;
812                 unsigned TMR1CS         : 1;
813                 unsigned NOT_T1SYNC     : 1;
814                 unsigned T1OSCEN        : 1;
815                 unsigned T1CKPS0        : 1;
816                 unsigned T1CKPS1        : 1;
817                 unsigned T1RUN          : 1;
818                 unsigned RD16           : 1;
819         };
820 } __T1CON_t;
821 extern volatile __T1CON_t __at (0xFCD) T1CONbits;
822
823 extern __sfr __at (0xFCE) TMR1L;
824
825 extern __sfr __at (0xFCF) TMR1H;
826
827 extern __sfr __at (0xFD0) RCON;
828 typedef union {
829         struct {
830                 unsigned BOR            : 1;
831                 unsigned POR            : 1;
832                 unsigned PD             : 1;
833                 unsigned TO             : 1;
834                 unsigned RI             : 1;
835                 unsigned                : 1;
836                 unsigned SBOREN         : 1;
837                 unsigned IPEN           : 1;
838         };
839 } __RCON_t;
840 extern volatile __RCON_t __at (0xFD0) RCONbits;
841
842 extern __sfr __at (0xFD1) WDTCON;
843 typedef union {
844         struct {
845                 unsigned SWDTEN         : 1;
846                 unsigned                : 1;
847                 unsigned                : 1;
848                 unsigned                : 1;
849                 unsigned                : 1;
850                 unsigned                : 1;
851                 unsigned                : 1;
852                 unsigned                : 1;
853         };
854 } __WDTCON_t;
855 extern volatile __WDTCON_t __at (0xFD1) WDTCONbits;
856
857 extern __sfr __at (0xFD2) HLVDCON;
858 typedef union {
859         struct {
860                 unsigned HLVDL0         : 1;
861                 unsigned HLVDL1         : 1;
862                 unsigned HLVDL2         : 1;
863                 unsigned HLVDL3         : 1;
864                 unsigned HLVDEN         : 1;
865                 unsigned IRVST          : 1;
866                 unsigned                : 1;
867                 unsigned VDIRMAG        : 1;
868         };
869 } __HLVDCON_t;
870 extern volatile __HLVDCON_t __at (0xFD2) HLVDCONbits;
871
872 extern __sfr __at (0xFD3) OSCCON;
873 typedef union {
874         struct {
875                 unsigned SCS            : 2;
876                 unsigned FLTS           : 1;
877                 unsigned OSTS           : 1;
878                 unsigned IRCF           : 3;
879                 unsigned IDLEN          : 1;
880         };
881 } __OSCCON_t;
882 extern volatile __OSCCON_t __at (0xFD3) OSCCONbits;
883
884 extern __sfr __at (0xFD5) T0CON;
885 typedef union {
886         struct {
887                 unsigned T0PS0          : 1;
888                 unsigned T0PS1          : 1;
889                 unsigned T0PS2          : 1;
890                 unsigned PSA            : 1;
891                 unsigned T0SE           : 1;
892                 unsigned T0CS           : 1;
893                 unsigned T08BIT         : 1;
894                 unsigned TMR0ON         : 1;
895         };
896 } __T0CON_t;
897 extern volatile __T0CON_t __at (0xFD5) T0CONbits;
898
899 extern __sfr __at (0xFD6) TMR0L;
900
901 extern __sfr __at (0xFD7) TMR0H;
902
903 extern __sfr __at (0xFD8) STATUS;
904 typedef union {
905         struct {
906                 unsigned C              : 1;
907                 unsigned DC             : 1;
908                 unsigned Z              : 1;
909                 unsigned OV             : 1;
910                 unsigned N              : 1;
911                 unsigned                : 1;
912                 unsigned                : 1;
913                 unsigned                : 1;
914         };
915 } __STATUS_t;
916 extern volatile __STATUS_t __at (0xFD8) STATUSbits;
917
918 extern __sfr __at (0xFD9) FSR2L;
919
920 extern __sfr __at (0xFDA) FSR2H;
921 typedef union {
922         struct {
923                 unsigned FSR2H          : 4;
924                 unsigned                : 1;
925                 unsigned                : 1;
926                 unsigned                : 1;
927                 unsigned                : 1;
928         };
929 } __FSR2H_t;
930 extern volatile __FSR2H_t __at (0xFDA) FSR2Hbits;
931
932 extern __sfr __at (0xFDB) PLUSW2;
933
934 extern __sfr __at (0xFDC) PREINC2;
935
936 extern __sfr __at (0xFDD) POSTDEC2;
937
938 extern __sfr __at (0xFDE) POSTINC2;
939
940 extern __sfr __at (0xFDF) INDF2;
941
942 extern __sfr __at (0xFE0) BSR;
943 typedef union {
944         struct {
945                 unsigned BSR            : 4;
946                 unsigned                : 1;
947                 unsigned                : 1;
948                 unsigned                : 1;
949                 unsigned                : 1;
950         };
951 } __BSR_t;
952 extern volatile __BSR_t __at (0xFE0) BSRbits;
953
954 extern __sfr __at (0xFE1) FSR1L;
955
956 extern __sfr __at (0xFE2) FSR1H;
957 typedef union {
958         struct {
959                 unsigned FSR1H          : 4;
960                 unsigned                : 1;
961                 unsigned                : 1;
962                 unsigned                : 1;
963                 unsigned                : 1;
964         };
965 } __FSR1H_t;
966 extern volatile __FSR1H_t __at (0xFE2) FSR1Hbits;
967
968 extern __sfr __at (0xFE3) PLUSW1;
969
970 extern __sfr __at (0xFE4) PREINC1;
971
972 extern __sfr __at (0xFE5) POSTDEC1;
973
974 extern __sfr __at (0xFE6) POSTINC1;
975
976 extern __sfr __at (0xFE7) INDF1;
977
978 extern __sfr __at (0xFE8) WREG;
979
980 extern __sfr __at (0xFE9) FSR0L;
981
982 extern __sfr __at (0xFEA) FSR0H;
983 typedef union {
984         struct {
985                 unsigned FSR0H          : 4;
986                 unsigned                : 1;
987                 unsigned                : 1;
988                 unsigned                : 1;
989                 unsigned                : 1;
990         };
991 } __FSR0H_t;
992 extern volatile __FSR0H_t __at (0xFEA) FSR0Hbits;
993
994 extern __sfr __at (0xFEB) PLUSW0;
995
996 extern __sfr __at (0xFEC) PREINC0;
997
998 extern __sfr __at (0xFED) POSTDEC0;
999
1000 extern __sfr __at (0xFEE) POSTINC0;
1001
1002 extern __sfr __at (0xFEF) INDF0;
1003
1004 extern __sfr __at (0xFF0) INTCON3;
1005 typedef union {
1006         struct {
1007                 unsigned INT1IF         : 1;
1008                 unsigned INT2IF         : 1;
1009                 unsigned                : 1;
1010                 unsigned INT1IE         : 1;
1011                 unsigned INT2IE         : 1;
1012                 unsigned                : 1;
1013                 unsigned INT1IP         : 1;
1014                 unsigned INT2IP         : 1;
1015         };
1016 } __INTCON3_t;
1017 extern volatile __INTCON3_t __at (0xFF0) INTCON3bits;
1018
1019 extern __sfr __at (0xFF1) INTCON2;
1020 typedef union {
1021         struct {
1022                 unsigned RBIP           : 1;
1023                 unsigned                : 1;
1024                 unsigned TMR0IP         : 1;
1025                 unsigned                : 1;
1026                 unsigned INTEDG2        : 1;
1027                 unsigned INTEDG1        : 1;
1028                 unsigned INTEDG0        : 1;
1029                 unsigned RBPU           : 1;
1030         };
1031 } __INTCON2_t;
1032 extern volatile __INTCON2_t __at (0xFF1) INTCON2bits;
1033
1034 extern __sfr __at (0xFF2) INTCON;
1035 typedef union {
1036         struct {
1037                 unsigned RBIF           : 1;
1038                 unsigned INT0IF         : 1;
1039                 unsigned TMR0IF         : 1;
1040                 unsigned RBIE           : 1;
1041                 unsigned INT0IE         : 1;
1042                 unsigned TMR0IE         : 1;
1043                 unsigned PEIE           : 1;
1044                 unsigned GIE            : 1;
1045         };
1046         struct {
1047                 unsigned                : 1;
1048                 unsigned                : 1;
1049                 unsigned                : 1;
1050                 unsigned                : 1;
1051                 unsigned                : 1;
1052                 unsigned                : 1;
1053                 unsigned GIEL           : 1;
1054                 unsigned GIEH           : 1;
1055         };
1056 } __INTCON_t;
1057 extern volatile __INTCON_t __at (0xFF2) INTCONbits;
1058
1059 extern __sfr __at (0xFF3) PRODL;
1060
1061 extern __sfr __at (0xFF4) PRODH;
1062
1063 extern __sfr __at (0xFF5) TABLAT;
1064
1065 extern __sfr __at (0xFF6) TBLPTRL;
1066
1067 extern __sfr __at (0xFF7) TBLPTRH;
1068
1069 extern __sfr __at (0xFF8) TBLPTRU;
1070 typedef union {
1071         struct {
1072                 unsigned TBLPTRU        : 5;
1073                 unsigned                : 1;
1074                 unsigned                : 1;
1075                 unsigned                : 1;
1076         };
1077 } __TBLPTRU_t;
1078 extern volatile __TBLPTRU_t __at (0xFF8) TBLPTRUbits;
1079
1080 extern __sfr __at (0xFF9) PCL;
1081
1082 extern __sfr __at (0xFFA) PCLATH;
1083 typedef union {
1084         struct {
1085                 unsigned PCH            : 8;
1086         };
1087 } __PCLATH_t;
1088 extern volatile __PCLATH_t __at (0xFFA) PCLATHbits;
1089
1090 extern __sfr __at (0xFFB) PCLATU;
1091 typedef union {
1092         struct {
1093                 unsigned PCU            : 5;
1094                 unsigned                : 1;
1095                 unsigned                : 1;
1096                 unsigned                : 1;
1097         };
1098 } __PCLATU_t;
1099 extern volatile __PCLATU_t __at (0xFFB) PCLATUbits;
1100
1101 extern __sfr __at (0xFFC) STKPTR;
1102 typedef union {
1103         struct {
1104                 unsigned STKPTR         : 5;
1105                 unsigned                : 1;
1106                 unsigned STKUNF         : 1;
1107                 unsigned STKFUL         : 1;
1108         };
1109 } __STKPTR_t;
1110 extern volatile __STKPTR_t __at (0xFFC) STKPTRbits;
1111
1112 extern __sfr __at (0xFFD) TOSL;
1113
1114 extern __sfr __at (0xFFE) TOSH;
1115
1116 extern __sfr __at (0xFFF) TOSU;
1117 typedef union {
1118         struct {
1119                 unsigned TOSU           : 5;
1120                 unsigned                : 1;
1121                 unsigned                : 1;
1122                 unsigned                : 1;
1123         };
1124 } __TOSU_t;
1125 extern volatile __TOSU_t __at (0xFFF) TOSUbits;
1126
1127 /* Configuration register locations */
1128 #define __CONFIG1H      0x300001
1129 #define __CONFIG2L      0x300002
1130 #define __CONFIG2H      0x300003
1131 #define __CONFIG3H      0x300005
1132 #define __CONFIG4L      0x300006
1133 #define __CONFIG5L      0x300008
1134 #define __CONFIG5H      0x300009
1135 #define __CONFIG6L      0x30000A
1136 #define __CONFIG6H      0x30000B
1137 #define __CONFIG7L      0x30000C
1138 #define __CONFIG7H      0x30000D
1139
1140
1141 /* Oscillator 1H options */
1142 #define _OSC_INTIO7_1H                              0xF9        /* INTRC-OSC2 as Clock Out, OSC1 as RA7 */
1143 #define _OSC_INTIO67_1H                             0xF8        /* INTRC-OSC2 as RA6, OSC1 as RA7 */
1144 #define _OSC_RCIO6_1H                               0xF7        /* RC-OSC2 as RA6 */
1145 #define _OSC_HSPLL_1H                               0xF6        /* HS-PLL Enabled */
1146 #define _OSC_ECIO6_1H                               0xF5        /* EC-OSC2 as RA6 */
1147 #define _OSC_EC_1H                                      0xF4    /* EC-OSC2 as Clock Out */
1148 #define _OSC_RC_1H                                  0xF3    /* RC */
1149 #define _OSC_HS_1H                                      0xF2    /* HS */
1150 #define _OSC_XT_1H                                  0xF1    /* XT */
1151 #define _OSC_LP_1H                                      0xF0    /* LP */
1152
1153 /* Fail-Safe Clock Monitor Enable 1H options */
1154 #define _FCMEN_OFF_1H                                   0xBF    /* Disabled */
1155 #define _FCMEN_ON_1H                                    0xFF    /* Enabled */
1156
1157 /* Internal External Switch Over Mode 1H options */
1158 #define _IESO_OFF_1H                                    0x7F    /* Disabled */
1159 #define _IESO_ON_1H                                     0xFF    /* Enabled */
1160
1161 /* Power Up Timer 2L options */
1162 #define _PUT_OFF_2L                                     0xFF    /* Disabled */
1163 #define _PUT_ON_2L                                      0xFE    /* Enabled */
1164
1165 /* Brown Out Detect 2L options */
1166 #define _BODEN_ON_2L                                    0xFF    /* Enabled in hardware, SBOREN disabled */
1167 #define _BODEN_ON_WHILE_ACTIVE_2L                       0xFD    /* Enabled while active,disabled in SLEEP,SBOREN disabled */
1168 #define _BODEN_CONTROLLED_WITH_SBOREN_BIT_2L            0xFB    /* Controlled with SBOREN bit */
1169 #define _BODEN_OFF_2L                                   0xF9    /* Disabled in hardware, SBOREN disabled */
1170
1171 /* Brown Out Voltage 2L options */
1172 #define _BODENV_2_0V_2L                                 0xFF    /* 2.1V */
1173 #define _BODENV_2_7V_2L                                 0xF7    /* 2.8V */
1174 #define _BODENV_4_2V_2L                                 0xEF    /* 4.3V */
1175 #define _BODENV_4_5V_2L                                 0xE7    /* 4.6V */
1176
1177
1178 /* Watchdog Timer 2H options */
1179 #define _WDT_ON_2H                                      0xFF    /* Enabled */
1180 #define _WDT_DISABLED_CONTROLLED_2H                     0xFE    /* Disabled-Controlled by SWDTEN bit */
1181
1182 /* Watchdog Postscaler 2H options */
1183 #define _WDTPS_1_32768_2H                               0xFF    /* 1:32768 */
1184 #define _WDTPS_1_16384_2H                               0xFD    /* 1:16384 */
1185 #define _WDTPS_1_8192_2H                                0xFB    /* 1:8192 */
1186 #define _WDTPS_1_4096_2H                                0xF9    /* 1:4096 */
1187 #define _WDTPS_1_2048_2H                                0xF7    /* 1:2048 */
1188 #define _WDTPS_1_1024_2H                                0xF5    /* 1:1024 */
1189 #define _WDTPS_1_512_2H                                 0xF3    /* 1:512 */
1190 #define _WDTPS_1_256_2H                                 0xF1    /* 1:256 */
1191 #define _WDTPS_1_128_2H                                 0xEF    /* 1:128 */
1192 #define _WDTPS_1_64_2H                                  0xED    /* 1:64 */
1193 #define _WDTPS_1_32_2H                                  0xEB    /* 1:32 */
1194 #define _WDTPS_1_16_2H                                  0xE9    /* 1:16 */
1195 #define _WDTPS_1_8_2H                                   0xE7    /* 1:8 */
1196 #define _WDTPS_1_4_2H                                   0xE5    /* 1:4 */
1197 #define _WDTPS_1_2_2H                                   0xE3    /* 1:2 */
1198 #define _WDTPS_1_1_2H                                   0xE1    /* 1:1 */
1199
1200
1201 /* CCP2 Mux 3H options */
1202 #define _CCP2MUX_RC1_3H                                 0xFF    /* RC1 */
1203 #define _CCP2MUX_RB3_3H                                 0xFE    /* RB3 */
1204
1205 /* PortB A/D Enable 3H options */
1206 #define _PBADEN_PORTB_4_0__CONFIGURED_AS_ANALOG_INPUTS_ON_RESET_3H      0xFF    /* PORTB<4:0> configured as analog inputs on RESET */
1207 #define _PBADEN_PORTB_4_0__CONFIGURED_AS_DIGITAL_I_O_ON_RESET_3H        0xFD    /* PORTB<4:0> configured as digital I/O on RESET */
1208
1209 /* Low Power Timer1 Osc enable 3H options */
1210 #define _LPT1OSC_ON_3H                                  0xFF    /* Enabled */
1211 #define _LPT1OSC_OFF_3H                                 0xFB    /* Disabled */
1212
1213 /* Master Clear Enable 3H options */
1214 #define _MCLRE_MCLR_ON_RE3_OFF_3H                       0xFF    /* MCLR Enabled,RE3 Disabled */
1215 #define _MCLRE_MCLR_OFF_RE3_ON_3H                       0x7F    /* MCLR Disabled,RE3 Enabled */
1216
1217
1218 /* Stack Overflow Reset 4L options */
1219 #define _STVR_ON_4L                                     0xFF    /* Enabled */
1220 #define _STVR_OFF_4L                                    0xFE    /* Disabled */
1221
1222 /* Low Voltage Program 4L options */
1223 #define _LVP_ON_4L                                      0xFF    /* Enabled */
1224 #define _LVP_OFF_4L                                     0xFB    /* Disabled */
1225
1226 /* Extended CPU Enable 4L options */
1227 #define _ENHCPU_ON_4L                                   0xFF    /* Enabled */
1228 #define _ENHCPU_OFF_4L                                  0xBF    /* Disabled */
1229
1230 /* Background Debug 4L options */
1231 #define _BACKBUG_OFF_4L                                 0xFF    /* Disabled */
1232 #define _BACKBUG_ON_4L                                  0x7F    /* Enabled */
1233
1234
1235 /* Code Protect 00800-01FFF 5L options */
1236 #define _CP_0_OFF_5L                                    0xFF    /* Disabled */
1237 #define _CP_0_ON_5L                                     0xFE    /* Enabled */
1238
1239 /* Code Protect 02000-03FFF 5L options */
1240 #define _CP_1_OFF_5L                                    0xFF    /* Disabled */
1241 #define _CP_1_ON_5L                                     0xFD    /* Enabled */
1242
1243 /* Code Protect 04000-05FFF 5L options */
1244 #define _CP_2_OFF_5L                                    0xFF    /* Disabled */
1245 #define _CP_2_ON_5L                                     0xFB    /* Enabled */
1246
1247 /* Code Protect 06000-07FFF 5L options */
1248 #define _CP_3_OFF_5L                                    0xFF    /* Disabled */
1249 #define _CP_3_ON_5L                                     0xF7    /* Enabled */
1250
1251
1252 /* Data EE Read Protect 5H options */
1253 #define _CPD_OFF_5H                                     0xFF    /* Disabled */
1254 #define _CPD_ON_5H                                      0x7F    /* Enabled */
1255
1256 /* Code Protect Boot 5H options */
1257 #define _CPB_OFF_5H                                     0xFF    /* Disabled */
1258 #define _CPB_ON_5H                                      0xBF    /* Enabled */
1259
1260
1261 /* Table Write Protect 00800-01FFF 6L options */
1262 #define _WRT_0_OFF_6L                                   0xFF    /* Disabled */
1263 #define _WRT_0_ON_6L                                    0xFE    /* Enabled */
1264
1265 /* Table Write Protect 02000-03FFF 6L options */
1266 #define _WRT_1_OFF_6L                                   0xFF    /* Disabled */
1267 #define _WRT_1_ON_6L                                    0xFD    /* Enabled */
1268
1269 /* Table Write Protect 04000-05FFF 6L options */
1270 #define _WRT_2_OFF_6L                                   0xFF    /* Disabled */
1271 #define _WRT_2_ON_6L                                    0xFB    /* Enabled */
1272
1273 /* Table Write Protect 06000-07FFF 6L options */
1274 #define _WRT_3_OFF_6L                                   0xFF    /* Disabled */
1275 #define _WRT_3_ON_6L                                    0xF7    /* Enabled */
1276
1277
1278 /* Data EE Write Protect 6H options */
1279 #define _WRTD_OFF_6H                                    0xFF    /* Disabled */
1280 #define _WRTD_ON_6H                                     0x7F    /* Enabled */
1281
1282 /* Table Write Protect Boot 6H options */
1283 #define _WRTB_OFF_6H                                    0xFF    /* Disabled */
1284 #define _WRTB_ON_6H                                     0xBF    /* Enabled */
1285
1286 /* Config. Write Protect 6H options */
1287 #define _WRTC_OFF_6H                                    0xFF    /* Disabled */
1288 #define _WRTC_ON_6H                                     0xDF    /* Enabled */
1289
1290
1291 /* Table Read Protect 00800-01FFF 7L options */
1292 #define _EBTR_0_OFF_7L                                  0xFF    /* Disabled */
1293 #define _EBTR_0_ON_7L                                   0xFE    /* Enabled */
1294
1295 /* Table Read Protect 02000-03FFF 7L options */
1296 #define _EBTR_1_OFF_7L                                  0xFF    /* Disabled */
1297 #define _EBTR_1_ON_7L                                   0xFD    /* Enabled */
1298
1299 /* Table Read Protect 04000-05FFF 7L options */
1300 #define _EBTR_2_OFF_7L                                  0xFF    /* Disabled */
1301 #define _EBTR_2_ON_7L                                   0xFB    /* Enabled */
1302
1303 /* Table Read Protect 06000-07FFF 7L options */
1304 #define _EBTR_3_OFF_7L                                  0xFF    /* Disabled */
1305 #define _EBTR_3_ON_7L                                   0xF7    /* Enabled */
1306
1307
1308 /* Table Read Protect Boot 7H options */
1309 #define _EBTRB_OFF_7H                                   0xFF    /* Disabled */
1310 #define _EBTRB_ON_7H                                    0xBF    /* Enabled */
1311
1312
1313 /* Device ID bytes */
1314 #define _DEVID1     0x3FFFFE
1315 #define _DEVID2     0x3FFFFF
1316
1317
1318 /* Location of User ID words */
1319 #define __IDLOC0        0x200000
1320 #define __IDLOC1        0x200001
1321 #define __IDLOC2        0x200002
1322 #define __IDLOC3        0x200003
1323 #define __IDLOC4        0x200004
1324 #define __IDLOC5        0x200005
1325 #define __IDLOC6        0x200006
1326 #define __IDLOC7        0x200007
1327
1328 #endif // __PIC18F4620__