1 /*
2  * This declarations of the PIC16F1708 MCU.
3  *
4  * This file is part of the GNU PIC library for SDCC, originally
5  * created by Molnar Karoly <molnarkaroly@users.sf.net> 2016.
6  *
7  * This file is generated automatically by the cinc2h.pl, 2016-04-13 17:23:11 UTC.
8  *
9  * SDCC is licensed under the GNU Public license (GPL) v2. Note that
10  * this license covers the code to the compiler and other executables,
11  * but explicitly does not cover any code or objects generated by sdcc.
12  *
13  * For pic device libraries and header files which are derived from
14  * Microchip header (.inc) and linker script (.lkr) files Microchip
15  * requires that "The header files should state that they are only to be
16  * used with authentic Microchip devices" which makes them incompatible
17  * with the GPL. Pic device libraries and header files are located at
18  * non-free/lib and non-free/include directories respectively.
19  * Sdcc should be run with the --use-non-free command line option in
20  * order to include non-free header files and libraries.
21  *
22  * See http://sdcc.sourceforge.net/ for the latest information on sdcc.
23  */
24 
25 #ifndef __PIC16F1708_H__
26 #define __PIC16F1708_H__
27 
28 //==============================================================================
29 //
30 //	Register Addresses
31 //
32 //==============================================================================
33 
34 #ifndef NO_ADDR_DEFINES
35 
36 #define INDF0_ADDR              0x0000
37 #define INDF1_ADDR              0x0001
38 #define PCL_ADDR                0x0002
39 #define STATUS_ADDR             0x0003
40 #define FSR0_ADDR               0x0004
41 #define FSR0L_ADDR              0x0004
42 #define FSR0H_ADDR              0x0005
43 #define FSR1_ADDR               0x0006
44 #define FSR1L_ADDR              0x0006
45 #define FSR1H_ADDR              0x0007
46 #define BSR_ADDR                0x0008
47 #define WREG_ADDR               0x0009
48 #define PCLATH_ADDR             0x000A
49 #define INTCON_ADDR             0x000B
50 #define PORTA_ADDR              0x000C
51 #define PORTB_ADDR              0x000D
52 #define PORTC_ADDR              0x000E
53 #define PIR1_ADDR               0x0011
54 #define PIR2_ADDR               0x0012
55 #define PIR3_ADDR               0x0013
56 #define TMR0_ADDR               0x0015
57 #define TMR1_ADDR               0x0016
58 #define TMR1L_ADDR              0x0016
59 #define TMR1H_ADDR              0x0017
60 #define T1CON_ADDR              0x0018
61 #define T1GCON_ADDR             0x0019
62 #define TMR2_ADDR               0x001A
63 #define PR2_ADDR                0x001B
64 #define T2CON_ADDR              0x001C
65 #define TRISA_ADDR              0x008C
66 #define TRISB_ADDR              0x008D
67 #define TRISC_ADDR              0x008E
68 #define PIE1_ADDR               0x0091
69 #define PIE2_ADDR               0x0092
70 #define PIE3_ADDR               0x0093
71 #define OPTION_REG_ADDR         0x0095
72 #define PCON_ADDR               0x0096
73 #define WDTCON_ADDR             0x0097
74 #define OSCTUNE_ADDR            0x0098
75 #define OSCCON_ADDR             0x0099
76 #define OSCSTAT_ADDR            0x009A
77 #define ADRES_ADDR              0x009B
78 #define ADRESL_ADDR             0x009B
79 #define ADRESH_ADDR             0x009C
80 #define ADCON0_ADDR             0x009D
81 #define ADCON1_ADDR             0x009E
82 #define ADCON2_ADDR             0x009F
83 #define LATA_ADDR               0x010C
84 #define LATB_ADDR               0x010D
85 #define LATC_ADDR               0x010E
86 #define CM1CON0_ADDR            0x0111
87 #define CM1CON1_ADDR            0x0112
88 #define CM2CON0_ADDR            0x0113
89 #define CM2CON1_ADDR            0x0114
90 #define CMOUT_ADDR              0x0115
91 #define BORCON_ADDR             0x0116
92 #define FVRCON_ADDR             0x0117
93 #define DAC1CON0_ADDR           0x0118
94 #define DAC1CON1_ADDR           0x0119
95 #define ZCD1CON_ADDR            0x011C
96 #define ANSELA_ADDR             0x018C
97 #define ANSELB_ADDR             0x018D
98 #define ANSELC_ADDR             0x018E
99 #define PMADR_ADDR              0x0191
100 #define PMADRL_ADDR             0x0191
101 #define PMADRH_ADDR             0x0192
102 #define PMDAT_ADDR              0x0193
103 #define PMDATL_ADDR             0x0193
104 #define PMDATH_ADDR             0x0194
105 #define PMCON1_ADDR             0x0195
106 #define PMCON2_ADDR             0x0196
107 #define VREGCON_ADDR            0x0197
108 #define RC1REG_ADDR             0x0199
109 #define RCREG_ADDR              0x0199
110 #define RCREG1_ADDR             0x0199
111 #define TX1REG_ADDR             0x019A
112 #define TXREG_ADDR              0x019A
113 #define TXREG1_ADDR             0x019A
114 #define SP1BRG_ADDR             0x019B
115 #define SP1BRGL_ADDR            0x019B
116 #define SPBRG_ADDR              0x019B
117 #define SPBRG1_ADDR             0x019B
118 #define SPBRGL_ADDR             0x019B
119 #define SP1BRGH_ADDR            0x019C
120 #define SPBRGH_ADDR             0x019C
121 #define SPBRGH1_ADDR            0x019C
122 #define RC1STA_ADDR             0x019D
123 #define RCSTA_ADDR              0x019D
124 #define RCSTA1_ADDR             0x019D
125 #define TX1STA_ADDR             0x019E
126 #define TXSTA_ADDR              0x019E
127 #define TXSTA1_ADDR             0x019E
128 #define BAUD1CON_ADDR           0x019F
129 #define BAUDCON_ADDR            0x019F
130 #define BAUDCON1_ADDR           0x019F
131 #define BAUDCTL_ADDR            0x019F
132 #define BAUDCTL1_ADDR           0x019F
133 #define WPUA_ADDR               0x020C
134 #define WPUB_ADDR               0x020D
135 #define WPUC_ADDR               0x020E
136 #define SSP1BUF_ADDR            0x0211
137 #define SSPBUF_ADDR             0x0211
138 #define SSP1ADD_ADDR            0x0212
139 #define SSPADD_ADDR             0x0212
140 #define SSP1MSK_ADDR            0x0213
141 #define SSPMSK_ADDR             0x0213
142 #define SSP1STAT_ADDR           0x0214
143 #define SSPSTAT_ADDR            0x0214
144 #define SSP1CON_ADDR            0x0215
145 #define SSP1CON1_ADDR           0x0215
146 #define SSPCON_ADDR             0x0215
147 #define SSPCON1_ADDR            0x0215
148 #define SSP1CON2_ADDR           0x0216
149 #define SSPCON2_ADDR            0x0216
150 #define SSP1CON3_ADDR           0x0217
151 #define SSPCON3_ADDR            0x0217
152 #define ODCONA_ADDR             0x028C
153 #define ODCONB_ADDR             0x028D
154 #define ODCONC_ADDR             0x028E
155 #define CCPR1_ADDR              0x0291
156 #define CCPR1L_ADDR             0x0291
157 #define CCPR1H_ADDR             0x0292
158 #define CCP1CON_ADDR            0x0293
159 #define ECCP1CON_ADDR           0x0293
160 #define CCPR2_ADDR              0x0298
161 #define CCPR2L_ADDR             0x0298
162 #define CCPR2H_ADDR             0x0299
163 #define CCP2CON_ADDR            0x029A
164 #define ECCP2CON_ADDR           0x029A
165 #define CCPTMRS_ADDR            0x029E
166 #define SLRCONA_ADDR            0x030C
167 #define SLRCONB_ADDR            0x030D
168 #define SLRCONC_ADDR            0x030E
169 #define INLVLA_ADDR             0x038C
170 #define INLVLB_ADDR             0x038D
171 #define INLVLC_ADDR             0x038E
172 #define IOCAP_ADDR              0x0391
173 #define IOCAN_ADDR              0x0392
174 #define IOCAF_ADDR              0x0393
175 #define IOCBP_ADDR              0x0394
176 #define IOCBN_ADDR              0x0395
177 #define IOCBF_ADDR              0x0396
178 #define IOCCP_ADDR              0x0397
179 #define IOCCN_ADDR              0x0398
180 #define IOCCF_ADDR              0x0399
181 #define TMR4_ADDR               0x0415
182 #define PR4_ADDR                0x0416
183 #define T4CON_ADDR              0x0417
184 #define TMR6_ADDR               0x041C
185 #define PR6_ADDR                0x041D
186 #define T6CON_ADDR              0x041E
187 #define OPA1CON_ADDR            0x0511
188 #define OPA2CON_ADDR            0x0515
189 #define PWM3DCL_ADDR            0x0617
190 #define PWM3DCH_ADDR            0x0618
191 #define PWM3CON_ADDR            0x0619
192 #define PWM3CON0_ADDR           0x0619
193 #define PWM4DCL_ADDR            0x061A
194 #define PWM4DCH_ADDR            0x061B
195 #define PWM4CON_ADDR            0x061C
196 #define PWM4CON0_ADDR           0x061C
197 #define COG1PHR_ADDR            0x0691
198 #define COG1PHF_ADDR            0x0692
199 #define COG1BLKR_ADDR           0x0693
200 #define COG1BLKF_ADDR           0x0694
201 #define COG1DBR_ADDR            0x0695
202 #define COG1DBF_ADDR            0x0696
203 #define COG1CON0_ADDR           0x0697
204 #define COG1CON1_ADDR           0x0698
205 #define COG1RIS_ADDR            0x0699
206 #define COG1RSIM_ADDR           0x069A
207 #define COG1FIS_ADDR            0x069B
208 #define COG1FSIM_ADDR           0x069C
209 #define COG1ASD0_ADDR           0x069D
210 #define COG1ASD1_ADDR           0x069E
211 #define COG1STR_ADDR            0x069F
212 #define PPSLOCK_ADDR            0x0E0F
213 #define INTPPS_ADDR             0x0E10
214 #define T0CKIPPS_ADDR           0x0E11
215 #define T1CKIPPS_ADDR           0x0E12
216 #define T1GPPS_ADDR             0x0E13
217 #define CCP1PPS_ADDR            0x0E14
218 #define CCP2PPS_ADDR            0x0E15
219 #define COGINPPS_ADDR           0x0E17
220 #define SSPCLKPPS_ADDR          0x0E20
221 #define SSPDATPPS_ADDR          0x0E21
222 #define SSPSSPPS_ADDR           0x0E22
223 #define RXPPS_ADDR              0x0E24
224 #define CKPPS_ADDR              0x0E25
225 #define CLCIN0PPS_ADDR          0x0E28
226 #define CLCIN1PPS_ADDR          0x0E29
227 #define CLCIN2PPS_ADDR          0x0E2A
228 #define CLCIN3PPS_ADDR          0x0E2B
229 #define RA0PPS_ADDR             0x0E90
230 #define RA1PPS_ADDR             0x0E91
231 #define RA2PPS_ADDR             0x0E92
232 #define RA4PPS_ADDR             0x0E94
233 #define RA5PPS_ADDR             0x0E95
234 #define RB4PPS_ADDR             0x0E9C
235 #define RB5PPS_ADDR             0x0E9D
236 #define RB6PPS_ADDR             0x0E9E
237 #define RB7PPS_ADDR             0x0E9F
238 #define RC0PPS_ADDR             0x0EA0
239 #define RC1PPS_ADDR             0x0EA1
240 #define RC2PPS_ADDR             0x0EA2
241 #define RC3PPS_ADDR             0x0EA3
242 #define RC4PPS_ADDR             0x0EA4
243 #define RC5PPS_ADDR             0x0EA5
244 #define RC6PPS_ADDR             0x0EA6
245 #define RC7PPS_ADDR             0x0EA7
246 #define CLCDATA_ADDR            0x0F0F
247 #define CLC1CON_ADDR            0x0F10
248 #define CLC1POL_ADDR            0x0F11
249 #define CLC1SEL0_ADDR           0x0F12
250 #define CLC1SEL1_ADDR           0x0F13
251 #define CLC1SEL2_ADDR           0x0F14
252 #define CLC1SEL3_ADDR           0x0F15
253 #define CLC1GLS0_ADDR           0x0F16
254 #define CLC1GLS1_ADDR           0x0F17
255 #define CLC1GLS2_ADDR           0x0F18
256 #define CLC1GLS3_ADDR           0x0F19
257 #define CLC2CON_ADDR            0x0F1A
258 #define CLC2POL_ADDR            0x0F1B
259 #define CLC2SEL0_ADDR           0x0F1C
260 #define CLC2SEL1_ADDR           0x0F1D
261 #define CLC2SEL2_ADDR           0x0F1E
262 #define CLC2SEL3_ADDR           0x0F1F
263 #define CLC2GLS0_ADDR           0x0F20
264 #define CLC2GLS1_ADDR           0x0F21
265 #define CLC2GLS2_ADDR           0x0F22
266 #define CLC2GLS3_ADDR           0x0F23
267 #define CLC3CON_ADDR            0x0F24
268 #define CLC3POL_ADDR            0x0F25
269 #define CLC3SEL0_ADDR           0x0F26
270 #define CLC3SEL1_ADDR           0x0F27
271 #define CLC3SEL2_ADDR           0x0F28
272 #define CLC3SEL3_ADDR           0x0F29
273 #define CLC3GLS0_ADDR           0x0F2A
274 #define CLC3GLS1_ADDR           0x0F2B
275 #define CLC3GLS2_ADDR           0x0F2C
276 #define CLC3GLS3_ADDR           0x0F2D
277 #define STATUS_SHAD_ADDR        0x0FE4
278 #define WREG_SHAD_ADDR          0x0FE5
279 #define BSR_SHAD_ADDR           0x0FE6
280 #define PCLATH_SHAD_ADDR        0x0FE7
281 #define FSR0L_SHAD_ADDR         0x0FE8
282 #define FSR0H_SHAD_ADDR         0x0FE9
283 #define FSR1L_SHAD_ADDR         0x0FEA
284 #define FSR1H_SHAD_ADDR         0x0FEB
285 #define STKPTR_ADDR             0x0FED
286 #define TOSL_ADDR               0x0FEE
287 #define TOSH_ADDR               0x0FEF
288 
289 #endif // #ifndef NO_ADDR_DEFINES
290 
291 //==============================================================================
292 //
293 //	Register Definitions
294 //
295 //==============================================================================
296 
297 extern __at(0x0000) __sfr INDF0;
298 extern __at(0x0001) __sfr INDF1;
299 extern __at(0x0002) __sfr PCL;
300 
301 //==============================================================================
302 //        STATUS Bits
303 
304 extern __at(0x0003) __sfr STATUS;
305 
306 typedef struct
307   {
308   unsigned C                    : 1;
309   unsigned DC                   : 1;
310   unsigned Z                    : 1;
311   unsigned NOT_PD               : 1;
312   unsigned NOT_TO               : 1;
313   unsigned                      : 1;
314   unsigned                      : 1;
315   unsigned                      : 1;
316   } __STATUSbits_t;
317 
318 extern __at(0x0003) volatile __STATUSbits_t STATUSbits;
319 
320 #define _C                      0x01
321 #define _DC                     0x02
322 #define _Z                      0x04
323 #define _NOT_PD                 0x08
324 #define _NOT_TO                 0x10
325 
326 //==============================================================================
327 
328 extern __at(0x0004) __sfr FSR0;
329 extern __at(0x0004) __sfr FSR0L;
330 extern __at(0x0005) __sfr FSR0H;
331 extern __at(0x0006) __sfr FSR1;
332 extern __at(0x0006) __sfr FSR1L;
333 extern __at(0x0007) __sfr FSR1H;
334 
335 //==============================================================================
336 //        BSR Bits
337 
338 extern __at(0x0008) __sfr BSR;
339 
340 typedef union
341   {
342   struct
343     {
344     unsigned BSR0               : 1;
345     unsigned BSR1               : 1;
346     unsigned BSR2               : 1;
347     unsigned BSR3               : 1;
348     unsigned BSR4               : 1;
349     unsigned                    : 1;
350     unsigned                    : 1;
351     unsigned                    : 1;
352     };
353 
354   struct
355     {
356     unsigned BSR                : 5;
357     unsigned                    : 3;
358     };
359   } __BSRbits_t;
360 
361 extern __at(0x0008) volatile __BSRbits_t BSRbits;
362 
363 #define _BSR0                   0x01
364 #define _BSR1                   0x02
365 #define _BSR2                   0x04
366 #define _BSR3                   0x08
367 #define _BSR4                   0x10
368 
369 //==============================================================================
370 
371 extern __at(0x0009) __sfr WREG;
372 extern __at(0x000A) __sfr PCLATH;
373 
374 //==============================================================================
375 //        INTCON Bits
376 
377 extern __at(0x000B) __sfr INTCON;
378 
379 typedef union
380   {
381   struct
382     {
383     unsigned IOCIF              : 1;
384     unsigned INTF               : 1;
385     unsigned TMR0IF             : 1;
386     unsigned IOCIE              : 1;
387     unsigned INTE               : 1;
388     unsigned TMR0IE             : 1;
389     unsigned PEIE               : 1;
390     unsigned GIE                : 1;
391     };
392 
393   struct
394     {
395     unsigned                    : 1;
396     unsigned                    : 1;
397     unsigned T0IF               : 1;
398     unsigned                    : 1;
399     unsigned                    : 1;
400     unsigned T0IE               : 1;
401     unsigned                    : 1;
402     unsigned                    : 1;
403     };
404   } __INTCONbits_t;
405 
406 extern __at(0x000B) volatile __INTCONbits_t INTCONbits;
407 
408 #define _IOCIF                  0x01
409 #define _INTF                   0x02
410 #define _TMR0IF                 0x04
411 #define _T0IF                   0x04
412 #define _IOCIE                  0x08
413 #define _INTE                   0x10
414 #define _TMR0IE                 0x20
415 #define _T0IE                   0x20
416 #define _PEIE                   0x40
417 #define _GIE                    0x80
418 
419 //==============================================================================
420 
421 
422 //==============================================================================
423 //        PORTA Bits
424 
425 extern __at(0x000C) __sfr PORTA;
426 
427 typedef union
428   {
429   struct
430     {
431     unsigned RA0                : 1;
432     unsigned RA1                : 1;
433     unsigned RA2                : 1;
434     unsigned RA3                : 1;
435     unsigned RA4                : 1;
436     unsigned RA5                : 1;
437     unsigned                    : 1;
438     unsigned                    : 1;
439     };
440 
441   struct
442     {
443     unsigned RA                 : 6;
444     unsigned                    : 2;
445     };
446   } __PORTAbits_t;
447 
448 extern __at(0x000C) volatile __PORTAbits_t PORTAbits;
449 
450 #define _RA0                    0x01
451 #define _RA1                    0x02
452 #define _RA2                    0x04
453 #define _RA3                    0x08
454 #define _RA4                    0x10
455 #define _RA5                    0x20
456 
457 //==============================================================================
458 
459 
460 //==============================================================================
461 //        PORTB Bits
462 
463 extern __at(0x000D) __sfr PORTB;
464 
465 typedef struct
466   {
467   unsigned                      : 1;
468   unsigned                      : 1;
469   unsigned                      : 1;
470   unsigned                      : 1;
471   unsigned RB4                  : 1;
472   unsigned RB5                  : 1;
473   unsigned RB6                  : 1;
474   unsigned RB7                  : 1;
475   } __PORTBbits_t;
476 
477 extern __at(0x000D) volatile __PORTBbits_t PORTBbits;
478 
479 #define _RB4                    0x10
480 #define _RB5                    0x20
481 #define _RB6                    0x40
482 #define _RB7                    0x80
483 
484 //==============================================================================
485 
486 
487 //==============================================================================
488 //        PORTC Bits
489 
490 extern __at(0x000E) __sfr PORTC;
491 
492 typedef struct
493   {
494   unsigned RC0                  : 1;
495   unsigned RC1                  : 1;
496   unsigned RC2                  : 1;
497   unsigned RC3                  : 1;
498   unsigned RC4                  : 1;
499   unsigned RC5                  : 1;
500   unsigned RC6                  : 1;
501   unsigned RC7                  : 1;
502   } __PORTCbits_t;
503 
504 extern __at(0x000E) volatile __PORTCbits_t PORTCbits;
505 
506 #define _RC0                    0x01
507 #define _RC1                    0x02
508 #define _RC2                    0x04
509 #define _RC3                    0x08
510 #define _RC4                    0x10
511 #define _RC5                    0x20
512 #define _RC6                    0x40
513 #define _RC7                    0x80
514 
515 //==============================================================================
516 
517 
518 //==============================================================================
519 //        PIR1 Bits
520 
521 extern __at(0x0011) __sfr PIR1;
522 
523 typedef union
524   {
525   struct
526     {
527     unsigned TMR1IF             : 1;
528     unsigned TMR2IF             : 1;
529     unsigned CCP1IF             : 1;
530     unsigned SSP1IF             : 1;
531     unsigned TXIF               : 1;
532     unsigned RCIF               : 1;
533     unsigned ADIF               : 1;
534     unsigned TMR1GIF            : 1;
535     };
536 
537   struct
538     {
539     unsigned                    : 1;
540     unsigned                    : 1;
541     unsigned CCPIF              : 1;
542     unsigned                    : 1;
543     unsigned                    : 1;
544     unsigned                    : 1;
545     unsigned                    : 1;
546     unsigned                    : 1;
547     };
548   } __PIR1bits_t;
549 
550 extern __at(0x0011) volatile __PIR1bits_t PIR1bits;
551 
552 #define _TMR1IF                 0x01
553 #define _TMR2IF                 0x02
554 #define _CCP1IF                 0x04
555 #define _CCPIF                  0x04
556 #define _SSP1IF                 0x08
557 #define _TXIF                   0x10
558 #define _RCIF                   0x20
559 #define _ADIF                   0x40
560 #define _TMR1GIF                0x80
561 
562 //==============================================================================
563 
564 
565 //==============================================================================
566 //        PIR2 Bits
567 
568 extern __at(0x0012) __sfr PIR2;
569 
570 typedef struct
571   {
572   unsigned CCP2IF               : 1;
573   unsigned TMR4IF               : 1;
574   unsigned TMR6IF               : 1;
575   unsigned BCL1IF               : 1;
576   unsigned                      : 1;
577   unsigned C1IF                 : 1;
578   unsigned C2IF                 : 1;
579   unsigned OSFIF                : 1;
580   } __PIR2bits_t;
581 
582 extern __at(0x0012) volatile __PIR2bits_t PIR2bits;
583 
584 #define _CCP2IF                 0x01
585 #define _TMR4IF                 0x02
586 #define _TMR6IF                 0x04
587 #define _BCL1IF                 0x08
588 #define _C1IF                   0x20
589 #define _C2IF                   0x40
590 #define _OSFIF                  0x80
591 
592 //==============================================================================
593 
594 
595 //==============================================================================
596 //        PIR3 Bits
597 
598 extern __at(0x0013) __sfr PIR3;
599 
600 typedef struct
601   {
602   unsigned CLC1IF               : 1;
603   unsigned CLC2IF               : 1;
604   unsigned CLC3IF               : 1;
605   unsigned                      : 1;
606   unsigned ZCDIF                : 1;
607   unsigned COGIF                : 1;
608   unsigned                      : 1;
609   unsigned                      : 1;
610   } __PIR3bits_t;
611 
612 extern __at(0x0013) volatile __PIR3bits_t PIR3bits;
613 
614 #define _CLC1IF                 0x01
615 #define _CLC2IF                 0x02
616 #define _CLC3IF                 0x04
617 #define _ZCDIF                  0x10
618 #define _COGIF                  0x20
619 
620 //==============================================================================
621 
622 extern __at(0x0015) __sfr TMR0;
623 extern __at(0x0016) __sfr TMR1;
624 extern __at(0x0016) __sfr TMR1L;
625 extern __at(0x0017) __sfr TMR1H;
626 
627 //==============================================================================
628 //        T1CON Bits
629 
630 extern __at(0x0018) __sfr T1CON;
631 
632 typedef union
633   {
634   struct
635     {
636     unsigned TMR1ON             : 1;
637     unsigned                    : 1;
638     unsigned NOT_T1SYNC         : 1;
639     unsigned T1OSCEN            : 1;
640     unsigned T1CKPS0            : 1;
641     unsigned T1CKPS1            : 1;
642     unsigned TMR1CS0            : 1;
643     unsigned TMR1CS1            : 1;
644     };
645 
646   struct
647     {
648     unsigned                    : 4;
649     unsigned T1CKPS             : 2;
650     unsigned                    : 2;
651     };
652 
653   struct
654     {
655     unsigned                    : 6;
656     unsigned TMR1CS             : 2;
657     };
658   } __T1CONbits_t;
659 
660 extern __at(0x0018) volatile __T1CONbits_t T1CONbits;
661 
662 #define _TMR1ON                 0x01
663 #define _NOT_T1SYNC             0x04
664 #define _T1OSCEN                0x08
665 #define _T1CKPS0                0x10
666 #define _T1CKPS1                0x20
667 #define _TMR1CS0                0x40
668 #define _TMR1CS1                0x80
669 
670 //==============================================================================
671 
672 
673 //==============================================================================
674 //        T1GCON Bits
675 
676 extern __at(0x0019) __sfr T1GCON;
677 
678 typedef union
679   {
680   struct
681     {
682     unsigned T1GSS0             : 1;
683     unsigned T1GSS1             : 1;
684     unsigned T1GVAL             : 1;
685     unsigned T1GGO_NOT_DONE     : 1;
686     unsigned T1GSPM             : 1;
687     unsigned T1GTM              : 1;
688     unsigned T1GPOL             : 1;
689     unsigned TMR1GE             : 1;
690     };
691 
692   struct
693     {
694     unsigned T1GSS              : 2;
695     unsigned                    : 6;
696     };
697   } __T1GCONbits_t;
698 
699 extern __at(0x0019) volatile __T1GCONbits_t T1GCONbits;
700 
701 #define _T1GSS0                 0x01
702 #define _T1GSS1                 0x02
703 #define _T1GVAL                 0x04
704 #define _T1GGO_NOT_DONE         0x08
705 #define _T1GSPM                 0x10
706 #define _T1GTM                  0x20
707 #define _T1GPOL                 0x40
708 #define _TMR1GE                 0x80
709 
710 //==============================================================================
711 
712 extern __at(0x001A) __sfr TMR2;
713 extern __at(0x001B) __sfr PR2;
714 
715 //==============================================================================
716 //        T2CON Bits
717 
718 extern __at(0x001C) __sfr T2CON;
719 
720 typedef union
721   {
722   struct
723     {
724     unsigned T2CKPS0            : 1;
725     unsigned T2CKPS1            : 1;
726     unsigned TMR2ON             : 1;
727     unsigned T2OUTPS0           : 1;
728     unsigned T2OUTPS1           : 1;
729     unsigned T2OUTPS2           : 1;
730     unsigned T2OUTPS3           : 1;
731     unsigned                    : 1;
732     };
733 
734   struct
735     {
736     unsigned T2CKPS             : 2;
737     unsigned                    : 6;
738     };
739 
740   struct
741     {
742     unsigned                    : 3;
743     unsigned T2OUTPS            : 4;
744     unsigned                    : 1;
745     };
746   } __T2CONbits_t;
747 
748 extern __at(0x001C) volatile __T2CONbits_t T2CONbits;
749 
750 #define _T2CKPS0                0x01
751 #define _T2CKPS1                0x02
752 #define _TMR2ON                 0x04
753 #define _T2OUTPS0               0x08
754 #define _T2OUTPS1               0x10
755 #define _T2OUTPS2               0x20
756 #define _T2OUTPS3               0x40
757 
758 //==============================================================================
759 
760 
761 //==============================================================================
762 //        TRISA Bits
763 
764 extern __at(0x008C) __sfr TRISA;
765 
766 typedef struct
767   {
768   unsigned TRISA0               : 1;
769   unsigned TRISA1               : 1;
770   unsigned TRISA2               : 1;
771   unsigned                      : 1;
772   unsigned TRISA4               : 1;
773   unsigned TRISA5               : 1;
774   unsigned                      : 1;
775   unsigned                      : 1;
776   } __TRISAbits_t;
777 
778 extern __at(0x008C) volatile __TRISAbits_t TRISAbits;
779 
780 #define _TRISA0                 0x01
781 #define _TRISA1                 0x02
782 #define _TRISA2                 0x04
783 #define _TRISA4                 0x10
784 #define _TRISA5                 0x20
785 
786 //==============================================================================
787 
788 
789 //==============================================================================
790 //        TRISB Bits
791 
792 extern __at(0x008D) __sfr TRISB;
793 
794 typedef struct
795   {
796   unsigned                      : 1;
797   unsigned                      : 1;
798   unsigned                      : 1;
799   unsigned                      : 1;
800   unsigned TRISB4               : 1;
801   unsigned TRISB5               : 1;
802   unsigned TRISB6               : 1;
803   unsigned TRISB7               : 1;
804   } __TRISBbits_t;
805 
806 extern __at(0x008D) volatile __TRISBbits_t TRISBbits;
807 
808 #define _TRISB4                 0x10
809 #define _TRISB5                 0x20
810 #define _TRISB6                 0x40
811 #define _TRISB7                 0x80
812 
813 //==============================================================================
814 
815 
816 //==============================================================================
817 //        TRISC Bits
818 
819 extern __at(0x008E) __sfr TRISC;
820 
821 typedef struct
822   {
823   unsigned TRISC0               : 1;
824   unsigned TRISC1               : 1;
825   unsigned TRISC2               : 1;
826   unsigned TRISC3               : 1;
827   unsigned TRISC4               : 1;
828   unsigned TRISC5               : 1;
829   unsigned TRISC6               : 1;
830   unsigned TRISC7               : 1;
831   } __TRISCbits_t;
832 
833 extern __at(0x008E) volatile __TRISCbits_t TRISCbits;
834 
835 #define _TRISC0                 0x01
836 #define _TRISC1                 0x02
837 #define _TRISC2                 0x04
838 #define _TRISC3                 0x08
839 #define _TRISC4                 0x10
840 #define _TRISC5                 0x20
841 #define _TRISC6                 0x40
842 #define _TRISC7                 0x80
843 
844 //==============================================================================
845 
846 
847 //==============================================================================
848 //        PIE1 Bits
849 
850 extern __at(0x0091) __sfr PIE1;
851 
852 typedef union
853   {
854   struct
855     {
856     unsigned TMR1IE             : 1;
857     unsigned TMR2IE             : 1;
858     unsigned CCP1IE             : 1;
859     unsigned SSP1IE             : 1;
860     unsigned TXIE               : 1;
861     unsigned RCIE               : 1;
862     unsigned ADIE               : 1;
863     unsigned TMR1GIE            : 1;
864     };
865 
866   struct
867     {
868     unsigned                    : 1;
869     unsigned                    : 1;
870     unsigned CCPIE              : 1;
871     unsigned                    : 1;
872     unsigned                    : 1;
873     unsigned                    : 1;
874     unsigned                    : 1;
875     unsigned                    : 1;
876     };
877   } __PIE1bits_t;
878 
879 extern __at(0x0091) volatile __PIE1bits_t PIE1bits;
880 
881 #define _TMR1IE                 0x01
882 #define _TMR2IE                 0x02
883 #define _CCP1IE                 0x04
884 #define _CCPIE                  0x04
885 #define _SSP1IE                 0x08
886 #define _TXIE                   0x10
887 #define _RCIE                   0x20
888 #define _ADIE                   0x40
889 #define _TMR1GIE                0x80
890 
891 //==============================================================================
892 
893 
894 //==============================================================================
895 //        PIE2 Bits
896 
897 extern __at(0x0092) __sfr PIE2;
898 
899 typedef struct
900   {
901   unsigned CCP2IE               : 1;
902   unsigned TMR4IE               : 1;
903   unsigned TMR6IE               : 1;
904   unsigned BCL1IE               : 1;
905   unsigned                      : 1;
906   unsigned C1IE                 : 1;
907   unsigned C2IE                 : 1;
908   unsigned OSFIE                : 1;
909   } __PIE2bits_t;
910 
911 extern __at(0x0092) volatile __PIE2bits_t PIE2bits;
912 
913 #define _CCP2IE                 0x01
914 #define _TMR4IE                 0x02
915 #define _TMR6IE                 0x04
916 #define _BCL1IE                 0x08
917 #define _C1IE                   0x20
918 #define _C2IE                   0x40
919 #define _OSFIE                  0x80
920 
921 //==============================================================================
922 
923 
924 //==============================================================================
925 //        PIE3 Bits
926 
927 extern __at(0x0093) __sfr PIE3;
928 
929 typedef struct
930   {
931   unsigned CLC1IE               : 1;
932   unsigned CLC2IE               : 1;
933   unsigned CLC3IE               : 1;
934   unsigned                      : 1;
935   unsigned ZCDIE                : 1;
936   unsigned COGIE                : 1;
937   unsigned                      : 1;
938   unsigned                      : 1;
939   } __PIE3bits_t;
940 
941 extern __at(0x0093) volatile __PIE3bits_t PIE3bits;
942 
943 #define _CLC1IE                 0x01
944 #define _CLC2IE                 0x02
945 #define _CLC3IE                 0x04
946 #define _ZCDIE                  0x10
947 #define _COGIE                  0x20
948 
949 //==============================================================================
950 
951 
952 //==============================================================================
953 //        OPTION_REG Bits
954 
955 extern __at(0x0095) __sfr OPTION_REG;
956 
957 typedef union
958   {
959   struct
960     {
961     unsigned PS0                : 1;
962     unsigned PS1                : 1;
963     unsigned PS2                : 1;
964     unsigned PSA                : 1;
965     unsigned TMR0SE             : 1;
966     unsigned TMR0CS             : 1;
967     unsigned INTEDG             : 1;
968     unsigned NOT_WPUEN          : 1;
969     };
970 
971   struct
972     {
973     unsigned                    : 1;
974     unsigned                    : 1;
975     unsigned                    : 1;
976     unsigned                    : 1;
977     unsigned T0SE               : 1;
978     unsigned T0CS               : 1;
979     unsigned                    : 1;
980     unsigned                    : 1;
981     };
982 
983   struct
984     {
985     unsigned PS                 : 3;
986     unsigned                    : 5;
987     };
988   } __OPTION_REGbits_t;
989 
990 extern __at(0x0095) volatile __OPTION_REGbits_t OPTION_REGbits;
991 
992 #define _PS0                    0x01
993 #define _PS1                    0x02
994 #define _PS2                    0x04
995 #define _PSA                    0x08
996 #define _TMR0SE                 0x10
997 #define _T0SE                   0x10
998 #define _TMR0CS                 0x20
999 #define _T0CS                   0x20
1000 #define _INTEDG                 0x40
1001 #define _NOT_WPUEN              0x80
1002 
1003 //==============================================================================
1004 
1005 
1006 //==============================================================================
1007 //        PCON Bits
1008 
1009 extern __at(0x0096) __sfr PCON;
1010 
1011 typedef struct
1012   {
1013   unsigned NOT_BOR              : 1;
1014   unsigned NOT_POR              : 1;
1015   unsigned NOT_RI               : 1;
1016   unsigned NOT_RMCLR            : 1;
1017   unsigned NOT_RWDT             : 1;
1018   unsigned                      : 1;
1019   unsigned STKUNF               : 1;
1020   unsigned STKOVF               : 1;
1021   } __PCONbits_t;
1022 
1023 extern __at(0x0096) volatile __PCONbits_t PCONbits;
1024 
1025 #define _NOT_BOR                0x01
1026 #define _NOT_POR                0x02
1027 #define _NOT_RI                 0x04
1028 #define _NOT_RMCLR              0x08
1029 #define _NOT_RWDT               0x10
1030 #define _STKUNF                 0x40
1031 #define _STKOVF                 0x80
1032 
1033 //==============================================================================
1034 
1035 
1036 //==============================================================================
1037 //        WDTCON Bits
1038 
1039 extern __at(0x0097) __sfr WDTCON;
1040 
1041 typedef union
1042   {
1043   struct
1044     {
1045     unsigned SWDTEN             : 1;
1046     unsigned WDTPS0             : 1;
1047     unsigned WDTPS1             : 1;
1048     unsigned WDTPS2             : 1;
1049     unsigned WDTPS3             : 1;
1050     unsigned WDTPS4             : 1;
1051     unsigned                    : 1;
1052     unsigned                    : 1;
1053     };
1054 
1055   struct
1056     {
1057     unsigned                    : 1;
1058     unsigned WDTPS              : 5;
1059     unsigned                    : 2;
1060     };
1061   } __WDTCONbits_t;
1062 
1063 extern __at(0x0097) volatile __WDTCONbits_t WDTCONbits;
1064 
1065 #define _SWDTEN                 0x01
1066 #define _WDTPS0                 0x02
1067 #define _WDTPS1                 0x04
1068 #define _WDTPS2                 0x08
1069 #define _WDTPS3                 0x10
1070 #define _WDTPS4                 0x20
1071 
1072 //==============================================================================
1073 
1074 
1075 //==============================================================================
1076 //        OSCTUNE Bits
1077 
1078 extern __at(0x0098) __sfr OSCTUNE;
1079 
1080 typedef union
1081   {
1082   struct
1083     {
1084     unsigned TUN0               : 1;
1085     unsigned TUN1               : 1;
1086     unsigned TUN2               : 1;
1087     unsigned TUN3               : 1;
1088     unsigned TUN4               : 1;
1089     unsigned TUN5               : 1;
1090     unsigned                    : 1;
1091     unsigned                    : 1;
1092     };
1093 
1094   struct
1095     {
1096     unsigned TUN                : 6;
1097     unsigned                    : 2;
1098     };
1099   } __OSCTUNEbits_t;
1100 
1101 extern __at(0x0098) volatile __OSCTUNEbits_t OSCTUNEbits;
1102 
1103 #define _TUN0                   0x01
1104 #define _TUN1                   0x02
1105 #define _TUN2                   0x04
1106 #define _TUN3                   0x08
1107 #define _TUN4                   0x10
1108 #define _TUN5                   0x20
1109 
1110 //==============================================================================
1111 
1112 
1113 //==============================================================================
1114 //        OSCCON Bits
1115 
1116 extern __at(0x0099) __sfr OSCCON;
1117 
1118 typedef union
1119   {
1120   struct
1121     {
1122     unsigned SCS0               : 1;
1123     unsigned SCS1               : 1;
1124     unsigned                    : 1;
1125     unsigned IRCF0              : 1;
1126     unsigned IRCF1              : 1;
1127     unsigned IRCF2              : 1;
1128     unsigned IRCF3              : 1;
1129     unsigned SPLLEN             : 1;
1130     };
1131 
1132   struct
1133     {
1134     unsigned SCS                : 2;
1135     unsigned                    : 6;
1136     };
1137 
1138   struct
1139     {
1140     unsigned                    : 3;
1141     unsigned IRCF               : 4;
1142     unsigned                    : 1;
1143     };
1144   } __OSCCONbits_t;
1145 
1146 extern __at(0x0099) volatile __OSCCONbits_t OSCCONbits;
1147 
1148 #define _SCS0                   0x01
1149 #define _SCS1                   0x02
1150 #define _IRCF0                  0x08
1151 #define _IRCF1                  0x10
1152 #define _IRCF2                  0x20
1153 #define _IRCF3                  0x40
1154 #define _SPLLEN                 0x80
1155 
1156 //==============================================================================
1157 
1158 
1159 //==============================================================================
1160 //        OSCSTAT Bits
1161 
1162 extern __at(0x009A) __sfr OSCSTAT;
1163 
1164 typedef struct
1165   {
1166   unsigned HFIOFS               : 1;
1167   unsigned LFIOFR               : 1;
1168   unsigned MFIOFR               : 1;
1169   unsigned HFIOFL               : 1;
1170   unsigned HFIOFR               : 1;
1171   unsigned OSTS                 : 1;
1172   unsigned PLLR                 : 1;
1173   unsigned SOSCR                : 1;
1174   } __OSCSTATbits_t;
1175 
1176 extern __at(0x009A) volatile __OSCSTATbits_t OSCSTATbits;
1177 
1178 #define _HFIOFS                 0x01
1179 #define _LFIOFR                 0x02
1180 #define _MFIOFR                 0x04
1181 #define _HFIOFL                 0x08
1182 #define _HFIOFR                 0x10
1183 #define _OSTS                   0x20
1184 #define _PLLR                   0x40
1185 #define _SOSCR                  0x80
1186 
1187 //==============================================================================
1188 
1189 extern __at(0x009B) __sfr ADRES;
1190 extern __at(0x009B) __sfr ADRESL;
1191 extern __at(0x009C) __sfr ADRESH;
1192 
1193 //==============================================================================
1194 //        ADCON0 Bits
1195 
1196 extern __at(0x009D) __sfr ADCON0;
1197 
1198 typedef union
1199   {
1200   struct
1201     {
1202     unsigned ADON               : 1;
1203     unsigned GO_NOT_DONE        : 1;
1204     unsigned CHS0               : 1;
1205     unsigned CHS1               : 1;
1206     unsigned CHS2               : 1;
1207     unsigned CHS3               : 1;
1208     unsigned CHS4               : 1;
1209     unsigned                    : 1;
1210     };
1211 
1212   struct
1213     {
1214     unsigned                    : 1;
1215     unsigned ADGO               : 1;
1216     unsigned                    : 1;
1217     unsigned                    : 1;
1218     unsigned                    : 1;
1219     unsigned                    : 1;
1220     unsigned                    : 1;
1221     unsigned                    : 1;
1222     };
1223 
1224   struct
1225     {
1226     unsigned                    : 1;
1227     unsigned GO                 : 1;
1228     unsigned                    : 1;
1229     unsigned                    : 1;
1230     unsigned                    : 1;
1231     unsigned                    : 1;
1232     unsigned                    : 1;
1233     unsigned                    : 1;
1234     };
1235 
1236   struct
1237     {
1238     unsigned                    : 2;
1239     unsigned CHS                : 5;
1240     unsigned                    : 1;
1241     };
1242   } __ADCON0bits_t;
1243 
1244 extern __at(0x009D) volatile __ADCON0bits_t ADCON0bits;
1245 
1246 #define _ADON                   0x01
1247 #define _GO_NOT_DONE            0x02
1248 #define _ADGO                   0x02
1249 #define _GO                     0x02
1250 #define _CHS0                   0x04
1251 #define _CHS1                   0x08
1252 #define _CHS2                   0x10
1253 #define _CHS3                   0x20
1254 #define _CHS4                   0x40
1255 
1256 //==============================================================================
1257 
1258 
1259 //==============================================================================
1260 //        ADCON1 Bits
1261 
1262 extern __at(0x009E) __sfr ADCON1;
1263 
1264 typedef union
1265   {
1266   struct
1267     {
1268     unsigned ADPREF0            : 1;
1269     unsigned ADPREF1            : 1;
1270     unsigned ADNREF             : 1;
1271     unsigned                    : 1;
1272     unsigned ADCS0              : 1;
1273     unsigned ADCS1              : 1;
1274     unsigned ADCS2              : 1;
1275     unsigned ADFM               : 1;
1276     };
1277 
1278   struct
1279     {
1280     unsigned ADPREF             : 2;
1281     unsigned                    : 6;
1282     };
1283 
1284   struct
1285     {
1286     unsigned                    : 4;
1287     unsigned ADCS               : 3;
1288     unsigned                    : 1;
1289     };
1290   } __ADCON1bits_t;
1291 
1292 extern __at(0x009E) volatile __ADCON1bits_t ADCON1bits;
1293 
1294 #define _ADPREF0                0x01
1295 #define _ADPREF1                0x02
1296 #define _ADNREF                 0x04
1297 #define _ADCS0                  0x10
1298 #define _ADCS1                  0x20
1299 #define _ADCS2                  0x40
1300 #define _ADFM                   0x80
1301 
1302 //==============================================================================
1303 
1304 
1305 //==============================================================================
1306 //        ADCON2 Bits
1307 
1308 extern __at(0x009F) __sfr ADCON2;
1309 
1310 typedef union
1311   {
1312   struct
1313     {
1314     unsigned                    : 1;
1315     unsigned                    : 1;
1316     unsigned                    : 1;
1317     unsigned                    : 1;
1318     unsigned TRIGSEL0           : 1;
1319     unsigned TRIGSEL1           : 1;
1320     unsigned TRIGSEL2           : 1;
1321     unsigned TRIGSEL3           : 1;
1322     };
1323 
1324   struct
1325     {
1326     unsigned                    : 4;
1327     unsigned TRIGSEL            : 4;
1328     };
1329   } __ADCON2bits_t;
1330 
1331 extern __at(0x009F) volatile __ADCON2bits_t ADCON2bits;
1332 
1333 #define _TRIGSEL0               0x10
1334 #define _TRIGSEL1               0x20
1335 #define _TRIGSEL2               0x40
1336 #define _TRIGSEL3               0x80
1337 
1338 //==============================================================================
1339 
1340 
1341 //==============================================================================
1342 //        LATA Bits
1343 
1344 extern __at(0x010C) __sfr LATA;
1345 
1346 typedef struct
1347   {
1348   unsigned LATA0                : 1;
1349   unsigned LATA1                : 1;
1350   unsigned LATA2                : 1;
1351   unsigned                      : 1;
1352   unsigned LATA4                : 1;
1353   unsigned LATA5                : 1;
1354   unsigned                      : 1;
1355   unsigned                      : 1;
1356   } __LATAbits_t;
1357 
1358 extern __at(0x010C) volatile __LATAbits_t LATAbits;
1359 
1360 #define _LATA0                  0x01
1361 #define _LATA1                  0x02
1362 #define _LATA2                  0x04
1363 #define _LATA4                  0x10
1364 #define _LATA5                  0x20
1365 
1366 //==============================================================================
1367 
1368 
1369 //==============================================================================
1370 //        LATB Bits
1371 
1372 extern __at(0x010D) __sfr LATB;
1373 
1374 typedef struct
1375   {
1376   unsigned                      : 1;
1377   unsigned                      : 1;
1378   unsigned                      : 1;
1379   unsigned                      : 1;
1380   unsigned LATB4                : 1;
1381   unsigned LATB5                : 1;
1382   unsigned LATB6                : 1;
1383   unsigned LATB7                : 1;
1384   } __LATBbits_t;
1385 
1386 extern __at(0x010D) volatile __LATBbits_t LATBbits;
1387 
1388 #define _LATB4                  0x10
1389 #define _LATB5                  0x20
1390 #define _LATB6                  0x40
1391 #define _LATB7                  0x80
1392 
1393 //==============================================================================
1394 
1395 
1396 //==============================================================================
1397 //        LATC Bits
1398 
1399 extern __at(0x010E) __sfr LATC;
1400 
1401 typedef struct
1402   {
1403   unsigned LATC0                : 1;
1404   unsigned LATC1                : 1;
1405   unsigned LATC2                : 1;
1406   unsigned LATC3                : 1;
1407   unsigned LATC4                : 1;
1408   unsigned LATC5                : 1;
1409   unsigned LATC6                : 1;
1410   unsigned LATC7                : 1;
1411   } __LATCbits_t;
1412 
1413 extern __at(0x010E) volatile __LATCbits_t LATCbits;
1414 
1415 #define _LATC0                  0x01
1416 #define _LATC1                  0x02
1417 #define _LATC2                  0x04
1418 #define _LATC3                  0x08
1419 #define _LATC4                  0x10
1420 #define _LATC5                  0x20
1421 #define _LATC6                  0x40
1422 #define _LATC7                  0x80
1423 
1424 //==============================================================================
1425 
1426 
1427 //==============================================================================
1428 //        CM1CON0 Bits
1429 
1430 extern __at(0x0111) __sfr CM1CON0;
1431 
1432 typedef struct
1433   {
1434   unsigned C1SYNC               : 1;
1435   unsigned C1HYS                : 1;
1436   unsigned C1SP                 : 1;
1437   unsigned C1ZLF                : 1;
1438   unsigned C1POL                : 1;
1439   unsigned                      : 1;
1440   unsigned C1OUT                : 1;
1441   unsigned C1ON                 : 1;
1442   } __CM1CON0bits_t;
1443 
1444 extern __at(0x0111) volatile __CM1CON0bits_t CM1CON0bits;
1445 
1446 #define _C1SYNC                 0x01
1447 #define _C1HYS                  0x02
1448 #define _C1SP                   0x04
1449 #define _C1ZLF                  0x08
1450 #define _C1POL                  0x10
1451 #define _C1OUT                  0x40
1452 #define _C1ON                   0x80
1453 
1454 //==============================================================================
1455 
1456 
1457 //==============================================================================
1458 //        CM1CON1 Bits
1459 
1460 extern __at(0x0112) __sfr CM1CON1;
1461 
1462 typedef union
1463   {
1464   struct
1465     {
1466     unsigned C1NCH0             : 1;
1467     unsigned C1NCH1             : 1;
1468     unsigned C1NCH2             : 1;
1469     unsigned C1PCH0             : 1;
1470     unsigned C1PCH1             : 1;
1471     unsigned C1PCH2             : 1;
1472     unsigned C1INTN             : 1;
1473     unsigned C1INTP             : 1;
1474     };
1475 
1476   struct
1477     {
1478     unsigned C1NCH              : 3;
1479     unsigned                    : 5;
1480     };
1481 
1482   struct
1483     {
1484     unsigned                    : 3;
1485     unsigned C1PCH              : 3;
1486     unsigned                    : 2;
1487     };
1488   } __CM1CON1bits_t;
1489 
1490 extern __at(0x0112) volatile __CM1CON1bits_t CM1CON1bits;
1491 
1492 #define _C1NCH0                 0x01
1493 #define _C1NCH1                 0x02
1494 #define _C1NCH2                 0x04
1495 #define _C1PCH0                 0x08
1496 #define _C1PCH1                 0x10
1497 #define _C1PCH2                 0x20
1498 #define _C1INTN                 0x40
1499 #define _C1INTP                 0x80
1500 
1501 //==============================================================================
1502 
1503 
1504 //==============================================================================
1505 //        CM2CON0 Bits
1506 
1507 extern __at(0x0113) __sfr CM2CON0;
1508 
1509 typedef struct
1510   {
1511   unsigned C2SYNC               : 1;
1512   unsigned C2HYS                : 1;
1513   unsigned C2SP                 : 1;
1514   unsigned C2ZLF                : 1;
1515   unsigned C2POL                : 1;
1516   unsigned                      : 1;
1517   unsigned C2OUT                : 1;
1518   unsigned C2ON                 : 1;
1519   } __CM2CON0bits_t;
1520 
1521 extern __at(0x0113) volatile __CM2CON0bits_t CM2CON0bits;
1522 
1523 #define _C2SYNC                 0x01
1524 #define _C2HYS                  0x02
1525 #define _C2SP                   0x04
1526 #define _C2ZLF                  0x08
1527 #define _C2POL                  0x10
1528 #define _C2OUT                  0x40
1529 #define _C2ON                   0x80
1530 
1531 //==============================================================================
1532 
1533 
1534 //==============================================================================
1535 //        CM2CON1 Bits
1536 
1537 extern __at(0x0114) __sfr CM2CON1;
1538 
1539 typedef union
1540   {
1541   struct
1542     {
1543     unsigned C2NCH0             : 1;
1544     unsigned C2NCH1             : 1;
1545     unsigned C2NCH2             : 1;
1546     unsigned C2PCH0             : 1;
1547     unsigned C2PCH1             : 1;
1548     unsigned C2PCH2             : 1;
1549     unsigned C2INTN             : 1;
1550     unsigned C2INTP             : 1;
1551     };
1552 
1553   struct
1554     {
1555     unsigned C2NCH              : 3;
1556     unsigned                    : 5;
1557     };
1558 
1559   struct
1560     {
1561     unsigned                    : 3;
1562     unsigned C2PCH              : 3;
1563     unsigned                    : 2;
1564     };
1565   } __CM2CON1bits_t;
1566 
1567 extern __at(0x0114) volatile __CM2CON1bits_t CM2CON1bits;
1568 
1569 #define _C2NCH0                 0x01
1570 #define _C2NCH1                 0x02
1571 #define _C2NCH2                 0x04
1572 #define _C2PCH0                 0x08
1573 #define _C2PCH1                 0x10
1574 #define _C2PCH2                 0x20
1575 #define _C2INTN                 0x40
1576 #define _C2INTP                 0x80
1577 
1578 //==============================================================================
1579 
1580 
1581 //==============================================================================
1582 //        CMOUT Bits
1583 
1584 extern __at(0x0115) __sfr CMOUT;
1585 
1586 typedef struct
1587   {
1588   unsigned MC1OUT               : 1;
1589   unsigned MC2OUT               : 1;
1590   unsigned                      : 1;
1591   unsigned                      : 1;
1592   unsigned                      : 1;
1593   unsigned                      : 1;
1594   unsigned                      : 1;
1595   unsigned                      : 1;
1596   } __CMOUTbits_t;
1597 
1598 extern __at(0x0115) volatile __CMOUTbits_t CMOUTbits;
1599 
1600 #define _MC1OUT                 0x01
1601 #define _MC2OUT                 0x02
1602 
1603 //==============================================================================
1604 
1605 
1606 //==============================================================================
1607 //        BORCON Bits
1608 
1609 extern __at(0x0116) __sfr BORCON;
1610 
1611 typedef struct
1612   {
1613   unsigned BORRDY               : 1;
1614   unsigned                      : 1;
1615   unsigned                      : 1;
1616   unsigned                      : 1;
1617   unsigned                      : 1;
1618   unsigned                      : 1;
1619   unsigned BORFS                : 1;
1620   unsigned SBOREN               : 1;
1621   } __BORCONbits_t;
1622 
1623 extern __at(0x0116) volatile __BORCONbits_t BORCONbits;
1624 
1625 #define _BORRDY                 0x01
1626 #define _BORFS                  0x40
1627 #define _SBOREN                 0x80
1628 
1629 //==============================================================================
1630 
1631 
1632 //==============================================================================
1633 //        FVRCON Bits
1634 
1635 extern __at(0x0117) __sfr FVRCON;
1636 
1637 typedef union
1638   {
1639   struct
1640     {
1641     unsigned ADFVR0             : 1;
1642     unsigned ADFVR1             : 1;
1643     unsigned CDAFVR0            : 1;
1644     unsigned CDAFVR1            : 1;
1645     unsigned TSRNG              : 1;
1646     unsigned TSEN               : 1;
1647     unsigned FVRRDY             : 1;
1648     unsigned FVREN              : 1;
1649     };
1650 
1651   struct
1652     {
1653     unsigned ADFVR              : 2;
1654     unsigned                    : 6;
1655     };
1656 
1657   struct
1658     {
1659     unsigned                    : 2;
1660     unsigned CDAFVR             : 2;
1661     unsigned                    : 4;
1662     };
1663   } __FVRCONbits_t;
1664 
1665 extern __at(0x0117) volatile __FVRCONbits_t FVRCONbits;
1666 
1667 #define _ADFVR0                 0x01
1668 #define _ADFVR1                 0x02
1669 #define _CDAFVR0                0x04
1670 #define _CDAFVR1                0x08
1671 #define _TSRNG                  0x10
1672 #define _TSEN                   0x20
1673 #define _FVRRDY                 0x40
1674 #define _FVREN                  0x80
1675 
1676 //==============================================================================
1677 
1678 
1679 //==============================================================================
1680 //        DAC1CON0 Bits
1681 
1682 extern __at(0x0118) __sfr DAC1CON0;
1683 
1684 typedef union
1685   {
1686   struct
1687     {
1688     unsigned DAC1NSS            : 1;
1689     unsigned                    : 1;
1690     unsigned DAC1PSS0           : 1;
1691     unsigned DAC1PSS1           : 1;
1692     unsigned DAC1OE2            : 1;
1693     unsigned DAC1OE1            : 1;
1694     unsigned                    : 1;
1695     unsigned DAC1EN             : 1;
1696     };
1697 
1698   struct
1699     {
1700     unsigned DACNSS             : 1;
1701     unsigned                    : 1;
1702     unsigned DACPSS0            : 1;
1703     unsigned DACPSS1            : 1;
1704     unsigned DACOE0             : 1;
1705     unsigned DACOE1             : 1;
1706     unsigned                    : 1;
1707     unsigned DACEN              : 1;
1708     };
1709 
1710   struct
1711     {
1712     unsigned                    : 2;
1713     unsigned DACPSS             : 2;
1714     unsigned                    : 4;
1715     };
1716 
1717   struct
1718     {
1719     unsigned                    : 2;
1720     unsigned DAC1PSS            : 2;
1721     unsigned                    : 4;
1722     };
1723 
1724   struct
1725     {
1726     unsigned                    : 4;
1727     unsigned DACOE              : 2;
1728     unsigned                    : 2;
1729     };
1730   } __DAC1CON0bits_t;
1731 
1732 extern __at(0x0118) volatile __DAC1CON0bits_t DAC1CON0bits;
1733 
1734 #define _DAC1NSS                0x01
1735 #define _DACNSS                 0x01
1736 #define _DAC1PSS0               0x04
1737 #define _DACPSS0                0x04
1738 #define _DAC1PSS1               0x08
1739 #define _DACPSS1                0x08
1740 #define _DAC1OE2                0x10
1741 #define _DACOE0                 0x10
1742 #define _DAC1OE1                0x20
1743 #define _DACOE1                 0x20
1744 #define _DAC1EN                 0x80
1745 #define _DACEN                  0x80
1746 
1747 //==============================================================================
1748 
1749 
1750 //==============================================================================
1751 //        DAC1CON1 Bits
1752 
1753 extern __at(0x0119) __sfr DAC1CON1;
1754 
1755 typedef union
1756   {
1757   struct
1758     {
1759     unsigned DAC1R0             : 1;
1760     unsigned DAC1R1             : 1;
1761     unsigned DAC1R2             : 1;
1762     unsigned DAC1R3             : 1;
1763     unsigned DAC1R4             : 1;
1764     unsigned DAC1R5             : 1;
1765     unsigned DAC1R6             : 1;
1766     unsigned DAC1R7             : 1;
1767     };
1768 
1769   struct
1770     {
1771     unsigned DACR0              : 1;
1772     unsigned DACR1              : 1;
1773     unsigned DACR2              : 1;
1774     unsigned DACR3              : 1;
1775     unsigned DACR4              : 1;
1776     unsigned DACR5              : 1;
1777     unsigned DACR6              : 1;
1778     unsigned DACR7              : 1;
1779     };
1780   } __DAC1CON1bits_t;
1781 
1782 extern __at(0x0119) volatile __DAC1CON1bits_t DAC1CON1bits;
1783 
1784 #define _DAC1R0                 0x01
1785 #define _DACR0                  0x01
1786 #define _DAC1R1                 0x02
1787 #define _DACR1                  0x02
1788 #define _DAC1R2                 0x04
1789 #define _DACR2                  0x04
1790 #define _DAC1R3                 0x08
1791 #define _DACR3                  0x08
1792 #define _DAC1R4                 0x10
1793 #define _DACR4                  0x10
1794 #define _DAC1R5                 0x20
1795 #define _DACR5                  0x20
1796 #define _DAC1R6                 0x40
1797 #define _DACR6                  0x40
1798 #define _DAC1R7                 0x80
1799 #define _DACR7                  0x80
1800 
1801 //==============================================================================
1802 
1803 
1804 //==============================================================================
1805 //        ZCD1CON Bits
1806 
1807 extern __at(0x011C) __sfr ZCD1CON;
1808 
1809 typedef struct
1810   {
1811   unsigned ZCD1INTN             : 1;
1812   unsigned ZCD1INTP             : 1;
1813   unsigned                      : 1;
1814   unsigned                      : 1;
1815   unsigned ZCD1POL              : 1;
1816   unsigned ZCD1OUT              : 1;
1817   unsigned                      : 1;
1818   unsigned ZCD1EN               : 1;
1819   } __ZCD1CONbits_t;
1820 
1821 extern __at(0x011C) volatile __ZCD1CONbits_t ZCD1CONbits;
1822 
1823 #define _ZCD1INTN               0x01
1824 #define _ZCD1INTP               0x02
1825 #define _ZCD1POL                0x10
1826 #define _ZCD1OUT                0x20
1827 #define _ZCD1EN                 0x80
1828 
1829 //==============================================================================
1830 
1831 
1832 //==============================================================================
1833 //        ANSELA Bits
1834 
1835 extern __at(0x018C) __sfr ANSELA;
1836 
1837 typedef struct
1838   {
1839   unsigned ANSA0                : 1;
1840   unsigned ANSA1                : 1;
1841   unsigned ANSA2                : 1;
1842   unsigned                      : 1;
1843   unsigned ANSA4                : 1;
1844   unsigned ANS5                 : 1;
1845   unsigned                      : 1;
1846   unsigned                      : 1;
1847   } __ANSELAbits_t;
1848 
1849 extern __at(0x018C) volatile __ANSELAbits_t ANSELAbits;
1850 
1851 #define _ANSA0                  0x01
1852 #define _ANSA1                  0x02
1853 #define _ANSA2                  0x04
1854 #define _ANSA4                  0x10
1855 #define _ANS5                   0x20
1856 
1857 //==============================================================================
1858 
1859 
1860 //==============================================================================
1861 //        ANSELB Bits
1862 
1863 extern __at(0x018D) __sfr ANSELB;
1864 
1865 typedef struct
1866   {
1867   unsigned                      : 1;
1868   unsigned                      : 1;
1869   unsigned                      : 1;
1870   unsigned                      : 1;
1871   unsigned ANSB4                : 1;
1872   unsigned ANSB5                : 1;
1873   unsigned ANSB6                : 1;
1874   unsigned ANSB7                : 1;
1875   } __ANSELBbits_t;
1876 
1877 extern __at(0x018D) volatile __ANSELBbits_t ANSELBbits;
1878 
1879 #define _ANSB4                  0x10
1880 #define _ANSB5                  0x20
1881 #define _ANSB6                  0x40
1882 #define _ANSB7                  0x80
1883 
1884 //==============================================================================
1885 
1886 
1887 //==============================================================================
1888 //        ANSELC Bits
1889 
1890 extern __at(0x018E) __sfr ANSELC;
1891 
1892 typedef struct
1893   {
1894   unsigned ANSC0                : 1;
1895   unsigned ANSC1                : 1;
1896   unsigned ANSC2                : 1;
1897   unsigned ANSC3                : 1;
1898   unsigned                      : 1;
1899   unsigned                      : 1;
1900   unsigned ANSC6                : 1;
1901   unsigned ANSC7                : 1;
1902   } __ANSELCbits_t;
1903 
1904 extern __at(0x018E) volatile __ANSELCbits_t ANSELCbits;
1905 
1906 #define _ANSC0                  0x01
1907 #define _ANSC1                  0x02
1908 #define _ANSC2                  0x04
1909 #define _ANSC3                  0x08
1910 #define _ANSC6                  0x40
1911 #define _ANSC7                  0x80
1912 
1913 //==============================================================================
1914 
1915 extern __at(0x0191) __sfr PMADR;
1916 extern __at(0x0191) __sfr PMADRL;
1917 extern __at(0x0192) __sfr PMADRH;
1918 extern __at(0x0193) __sfr PMDAT;
1919 extern __at(0x0193) __sfr PMDATL;
1920 extern __at(0x0194) __sfr PMDATH;
1921 
1922 //==============================================================================
1923 //        PMCON1 Bits
1924 
1925 extern __at(0x0195) __sfr PMCON1;
1926 
1927 typedef struct
1928   {
1929   unsigned RD                   : 1;
1930   unsigned WR                   : 1;
1931   unsigned WREN                 : 1;
1932   unsigned WRERR                : 1;
1933   unsigned FREE                 : 1;
1934   unsigned LWLO                 : 1;
1935   unsigned CFGS                 : 1;
1936   unsigned                      : 1;
1937   } __PMCON1bits_t;
1938 
1939 extern __at(0x0195) volatile __PMCON1bits_t PMCON1bits;
1940 
1941 #define _RD                     0x01
1942 #define _WR                     0x02
1943 #define _WREN                   0x04
1944 #define _WRERR                  0x08
1945 #define _FREE                   0x10
1946 #define _LWLO                   0x20
1947 #define _CFGS                   0x40
1948 
1949 //==============================================================================
1950 
1951 extern __at(0x0196) __sfr PMCON2;
1952 
1953 //==============================================================================
1954 //        VREGCON Bits
1955 
1956 extern __at(0x0197) __sfr VREGCON;
1957 
1958 typedef struct
1959   {
1960   unsigned Reserved             : 1;
1961   unsigned VREGPM               : 1;
1962   unsigned                      : 1;
1963   unsigned                      : 1;
1964   unsigned                      : 1;
1965   unsigned                      : 1;
1966   unsigned                      : 1;
1967   unsigned                      : 1;
1968   } __VREGCONbits_t;
1969 
1970 extern __at(0x0197) volatile __VREGCONbits_t VREGCONbits;
1971 
1972 #define _Reserved               0x01
1973 #define _VREGPM                 0x02
1974 
1975 //==============================================================================
1976 
1977 extern __at(0x0199) __sfr RC1REG;
1978 extern __at(0x0199) __sfr RCREG;
1979 extern __at(0x0199) __sfr RCREG1;
1980 extern __at(0x019A) __sfr TX1REG;
1981 extern __at(0x019A) __sfr TXREG;
1982 extern __at(0x019A) __sfr TXREG1;
1983 extern __at(0x019B) __sfr SP1BRG;
1984 extern __at(0x019B) __sfr SP1BRGL;
1985 extern __at(0x019B) __sfr SPBRG;
1986 extern __at(0x019B) __sfr SPBRG1;
1987 extern __at(0x019B) __sfr SPBRGL;
1988 extern __at(0x019C) __sfr SP1BRGH;
1989 extern __at(0x019C) __sfr SPBRGH;
1990 extern __at(0x019C) __sfr SPBRGH1;
1991 
1992 //==============================================================================
1993 //        RC1STA Bits
1994 
1995 extern __at(0x019D) __sfr RC1STA;
1996 
1997 typedef struct
1998   {
1999   unsigned RX9D                 : 1;
2000   unsigned OERR                 : 1;
2001   unsigned FERR                 : 1;
2002   unsigned ADDEN                : 1;
2003   unsigned CREN                 : 1;
2004   unsigned SREN                 : 1;
2005   unsigned RX9                  : 1;
2006   unsigned SPEN                 : 1;
2007   } __RC1STAbits_t;
2008 
2009 extern __at(0x019D) volatile __RC1STAbits_t RC1STAbits;
2010 
2011 #define _RX9D                   0x01
2012 #define _OERR                   0x02
2013 #define _FERR                   0x04
2014 #define _ADDEN                  0x08
2015 #define _CREN                   0x10
2016 #define _SREN                   0x20
2017 #define _RX9                    0x40
2018 #define _SPEN                   0x80
2019 
2020 //==============================================================================
2021 
2022 
2023 //==============================================================================
2024 //        RCSTA Bits
2025 
2026 extern __at(0x019D) __sfr RCSTA;
2027 
2028 typedef struct
2029   {
2030   unsigned RX9D                 : 1;
2031   unsigned OERR                 : 1;
2032   unsigned FERR                 : 1;
2033   unsigned ADDEN                : 1;
2034   unsigned CREN                 : 1;
2035   unsigned SREN                 : 1;
2036   unsigned RX9                  : 1;
2037   unsigned SPEN                 : 1;
2038   } __RCSTAbits_t;
2039 
2040 extern __at(0x019D) volatile __RCSTAbits_t RCSTAbits;
2041 
2042 #define _RCSTA_RX9D             0x01
2043 #define _RCSTA_OERR             0x02
2044 #define _RCSTA_FERR             0x04
2045 #define _RCSTA_ADDEN            0x08
2046 #define _RCSTA_CREN             0x10
2047 #define _RCSTA_SREN             0x20
2048 #define _RCSTA_RX9              0x40
2049 #define _RCSTA_SPEN             0x80
2050 
2051 //==============================================================================
2052 
2053 
2054 //==============================================================================
2055 //        RCSTA1 Bits
2056 
2057 extern __at(0x019D) __sfr RCSTA1;
2058 
2059 typedef struct
2060   {
2061   unsigned RX9D                 : 1;
2062   unsigned OERR                 : 1;
2063   unsigned FERR                 : 1;
2064   unsigned ADDEN                : 1;
2065   unsigned CREN                 : 1;
2066   unsigned SREN                 : 1;
2067   unsigned RX9                  : 1;
2068   unsigned SPEN                 : 1;
2069   } __RCSTA1bits_t;
2070 
2071 extern __at(0x019D) volatile __RCSTA1bits_t RCSTA1bits;
2072 
2073 #define _RCSTA1_RX9D            0x01
2074 #define _RCSTA1_OERR            0x02
2075 #define _RCSTA1_FERR            0x04
2076 #define _RCSTA1_ADDEN           0x08
2077 #define _RCSTA1_CREN            0x10
2078 #define _RCSTA1_SREN            0x20
2079 #define _RCSTA1_RX9             0x40
2080 #define _RCSTA1_SPEN            0x80
2081 
2082 //==============================================================================
2083 
2084 
2085 //==============================================================================
2086 //        TX1STA Bits
2087 
2088 extern __at(0x019E) __sfr TX1STA;
2089 
2090 typedef struct
2091   {
2092   unsigned TX9D                 : 1;
2093   unsigned TRMT                 : 1;
2094   unsigned BRGH                 : 1;
2095   unsigned SENDB                : 1;
2096   unsigned SYNC                 : 1;
2097   unsigned TXEN                 : 1;
2098   unsigned TX9                  : 1;
2099   unsigned CSRC                 : 1;
2100   } __TX1STAbits_t;
2101 
2102 extern __at(0x019E) volatile __TX1STAbits_t TX1STAbits;
2103 
2104 #define _TX9D                   0x01
2105 #define _TRMT                   0x02
2106 #define _BRGH                   0x04
2107 #define _SENDB                  0x08
2108 #define _SYNC                   0x10
2109 #define _TXEN                   0x20
2110 #define _TX9                    0x40
2111 #define _CSRC                   0x80
2112 
2113 //==============================================================================
2114 
2115 
2116 //==============================================================================
2117 //        TXSTA Bits
2118 
2119 extern __at(0x019E) __sfr TXSTA;
2120 
2121 typedef struct
2122   {
2123   unsigned TX9D                 : 1;
2124   unsigned TRMT                 : 1;
2125   unsigned BRGH                 : 1;
2126   unsigned SENDB                : 1;
2127   unsigned SYNC                 : 1;
2128   unsigned TXEN                 : 1;
2129   unsigned TX9                  : 1;
2130   unsigned CSRC                 : 1;
2131   } __TXSTAbits_t;
2132 
2133 extern __at(0x019E) volatile __TXSTAbits_t TXSTAbits;
2134 
2135 #define _TXSTA_TX9D             0x01
2136 #define _TXSTA_TRMT             0x02
2137 #define _TXSTA_BRGH             0x04
2138 #define _TXSTA_SENDB            0x08
2139 #define _TXSTA_SYNC             0x10
2140 #define _TXSTA_TXEN             0x20
2141 #define _TXSTA_TX9              0x40
2142 #define _TXSTA_CSRC             0x80
2143 
2144 //==============================================================================
2145 
2146 
2147 //==============================================================================
2148 //        TXSTA1 Bits
2149 
2150 extern __at(0x019E) __sfr TXSTA1;
2151 
2152 typedef struct
2153   {
2154   unsigned TX9D                 : 1;
2155   unsigned TRMT                 : 1;
2156   unsigned BRGH                 : 1;
2157   unsigned SENDB                : 1;
2158   unsigned SYNC                 : 1;
2159   unsigned TXEN                 : 1;
2160   unsigned TX9                  : 1;
2161   unsigned CSRC                 : 1;
2162   } __TXSTA1bits_t;
2163 
2164 extern __at(0x019E) volatile __TXSTA1bits_t TXSTA1bits;
2165 
2166 #define _TXSTA1_TX9D            0x01
2167 #define _TXSTA1_TRMT            0x02
2168 #define _TXSTA1_BRGH            0x04
2169 #define _TXSTA1_SENDB           0x08
2170 #define _TXSTA1_SYNC            0x10
2171 #define _TXSTA1_TXEN            0x20
2172 #define _TXSTA1_TX9             0x40
2173 #define _TXSTA1_CSRC            0x80
2174 
2175 //==============================================================================
2176 
2177 
2178 //==============================================================================
2179 //        BAUD1CON Bits
2180 
2181 extern __at(0x019F) __sfr BAUD1CON;
2182 
2183 typedef struct
2184   {
2185   unsigned ABDEN                : 1;
2186   unsigned WUE                  : 1;
2187   unsigned                      : 1;
2188   unsigned BRG16                : 1;
2189   unsigned SCKP                 : 1;
2190   unsigned                      : 1;
2191   unsigned RCIDL                : 1;
2192   unsigned ABDOVF               : 1;
2193   } __BAUD1CONbits_t;
2194 
2195 extern __at(0x019F) volatile __BAUD1CONbits_t BAUD1CONbits;
2196 
2197 #define _ABDEN                  0x01
2198 #define _WUE                    0x02
2199 #define _BRG16                  0x08
2200 #define _SCKP                   0x10
2201 #define _RCIDL                  0x40
2202 #define _ABDOVF                 0x80
2203 
2204 //==============================================================================
2205 
2206 
2207 //==============================================================================
2208 //        BAUDCON Bits
2209 
2210 extern __at(0x019F) __sfr BAUDCON;
2211 
2212 typedef struct
2213   {
2214   unsigned ABDEN                : 1;
2215   unsigned WUE                  : 1;
2216   unsigned                      : 1;
2217   unsigned BRG16                : 1;
2218   unsigned SCKP                 : 1;
2219   unsigned                      : 1;
2220   unsigned RCIDL                : 1;
2221   unsigned ABDOVF               : 1;
2222   } __BAUDCONbits_t;
2223 
2224 extern __at(0x019F) volatile __BAUDCONbits_t BAUDCONbits;
2225 
2226 #define _BAUDCON_ABDEN          0x01
2227 #define _BAUDCON_WUE            0x02
2228 #define _BAUDCON_BRG16          0x08
2229 #define _BAUDCON_SCKP           0x10
2230 #define _BAUDCON_RCIDL          0x40
2231 #define _BAUDCON_ABDOVF         0x80
2232 
2233 //==============================================================================
2234 
2235 
2236 //==============================================================================
2237 //        BAUDCON1 Bits
2238 
2239 extern __at(0x019F) __sfr BAUDCON1;
2240 
2241 typedef struct
2242   {
2243   unsigned ABDEN                : 1;
2244   unsigned WUE                  : 1;
2245   unsigned                      : 1;
2246   unsigned BRG16                : 1;
2247   unsigned SCKP                 : 1;
2248   unsigned                      : 1;
2249   unsigned RCIDL                : 1;
2250   unsigned ABDOVF               : 1;
2251   } __BAUDCON1bits_t;
2252 
2253 extern __at(0x019F) volatile __BAUDCON1bits_t BAUDCON1bits;
2254 
2255 #define _BAUDCON1_ABDEN         0x01
2256 #define _BAUDCON1_WUE           0x02
2257 #define _BAUDCON1_BRG16         0x08
2258 #define _BAUDCON1_SCKP          0x10
2259 #define _BAUDCON1_RCIDL         0x40
2260 #define _BAUDCON1_ABDOVF        0x80
2261 
2262 //==============================================================================
2263 
2264 
2265 //==============================================================================
2266 //        BAUDCTL Bits
2267 
2268 extern __at(0x019F) __sfr BAUDCTL;
2269 
2270 typedef struct
2271   {
2272   unsigned ABDEN                : 1;
2273   unsigned WUE                  : 1;
2274   unsigned                      : 1;
2275   unsigned BRG16                : 1;
2276   unsigned SCKP                 : 1;
2277   unsigned                      : 1;
2278   unsigned RCIDL                : 1;
2279   unsigned ABDOVF               : 1;
2280   } __BAUDCTLbits_t;
2281 
2282 extern __at(0x019F) volatile __BAUDCTLbits_t BAUDCTLbits;
2283 
2284 #define _BAUDCTL_ABDEN          0x01
2285 #define _BAUDCTL_WUE            0x02
2286 #define _BAUDCTL_BRG16          0x08
2287 #define _BAUDCTL_SCKP           0x10
2288 #define _BAUDCTL_RCIDL          0x40
2289 #define _BAUDCTL_ABDOVF         0x80
2290 
2291 //==============================================================================
2292 
2293 
2294 //==============================================================================
2295 //        BAUDCTL1 Bits
2296 
2297 extern __at(0x019F) __sfr BAUDCTL1;
2298 
2299 typedef struct
2300   {
2301   unsigned ABDEN                : 1;
2302   unsigned WUE                  : 1;
2303   unsigned                      : 1;
2304   unsigned BRG16                : 1;
2305   unsigned SCKP                 : 1;
2306   unsigned                      : 1;
2307   unsigned RCIDL                : 1;
2308   unsigned ABDOVF               : 1;
2309   } __BAUDCTL1bits_t;
2310 
2311 extern __at(0x019F) volatile __BAUDCTL1bits_t BAUDCTL1bits;
2312 
2313 #define _BAUDCTL1_ABDEN         0x01
2314 #define _BAUDCTL1_WUE           0x02
2315 #define _BAUDCTL1_BRG16         0x08
2316 #define _BAUDCTL1_SCKP          0x10
2317 #define _BAUDCTL1_RCIDL         0x40
2318 #define _BAUDCTL1_ABDOVF        0x80
2319 
2320 //==============================================================================
2321 
2322 
2323 //==============================================================================
2324 //        WPUA Bits
2325 
2326 extern __at(0x020C) __sfr WPUA;
2327 
2328 typedef union
2329   {
2330   struct
2331     {
2332     unsigned WPUA0              : 1;
2333     unsigned WPUA1              : 1;
2334     unsigned WPUA2              : 1;
2335     unsigned WPUA3              : 1;
2336     unsigned WPUA4              : 1;
2337     unsigned WPUA5              : 1;
2338     unsigned                    : 1;
2339     unsigned                    : 1;
2340     };
2341 
2342   struct
2343     {
2344     unsigned WPUA               : 6;
2345     unsigned                    : 2;
2346     };
2347   } __WPUAbits_t;
2348 
2349 extern __at(0x020C) volatile __WPUAbits_t WPUAbits;
2350 
2351 #define _WPUA0                  0x01
2352 #define _WPUA1                  0x02
2353 #define _WPUA2                  0x04
2354 #define _WPUA3                  0x08
2355 #define _WPUA4                  0x10
2356 #define _WPUA5                  0x20
2357 
2358 //==============================================================================
2359 
2360 
2361 //==============================================================================
2362 //        WPUB Bits
2363 
2364 extern __at(0x020D) __sfr WPUB;
2365 
2366 typedef struct
2367   {
2368   unsigned                      : 1;
2369   unsigned                      : 1;
2370   unsigned                      : 1;
2371   unsigned                      : 1;
2372   unsigned WPUB4                : 1;
2373   unsigned WPUB5                : 1;
2374   unsigned WPUB6                : 1;
2375   unsigned WPUB7                : 1;
2376   } __WPUBbits_t;
2377 
2378 extern __at(0x020D) volatile __WPUBbits_t WPUBbits;
2379 
2380 #define _WPUB4                  0x10
2381 #define _WPUB5                  0x20
2382 #define _WPUB6                  0x40
2383 #define _WPUB7                  0x80
2384 
2385 //==============================================================================
2386 
2387 
2388 //==============================================================================
2389 //        WPUC Bits
2390 
2391 extern __at(0x020E) __sfr WPUC;
2392 
2393 typedef struct
2394   {
2395   unsigned WPUC0                : 1;
2396   unsigned WPUC1                : 1;
2397   unsigned WPUC2                : 1;
2398   unsigned WPUC3                : 1;
2399   unsigned WPUC4                : 1;
2400   unsigned WPUC5                : 1;
2401   unsigned WPUC6                : 1;
2402   unsigned WPUC7                : 1;
2403   } __WPUCbits_t;
2404 
2405 extern __at(0x020E) volatile __WPUCbits_t WPUCbits;
2406 
2407 #define _WPUC0                  0x01
2408 #define _WPUC1                  0x02
2409 #define _WPUC2                  0x04
2410 #define _WPUC3                  0x08
2411 #define _WPUC4                  0x10
2412 #define _WPUC5                  0x20
2413 #define _WPUC6                  0x40
2414 #define _WPUC7                  0x80
2415 
2416 //==============================================================================
2417 
2418 
2419 //==============================================================================
2420 //        SSP1BUF Bits
2421 
2422 extern __at(0x0211) __sfr SSP1BUF;
2423 
2424 typedef union
2425   {
2426   struct
2427     {
2428     unsigned SSP1BUF0           : 1;
2429     unsigned SSP1BUF1           : 1;
2430     unsigned SSP1BUF2           : 1;
2431     unsigned SSP1BUF3           : 1;
2432     unsigned SSP1BUF4           : 1;
2433     unsigned SSP1BUF5           : 1;
2434     unsigned SSP1BUF6           : 1;
2435     unsigned SSP1BUF7           : 1;
2436     };
2437 
2438   struct
2439     {
2440     unsigned BUF0               : 1;
2441     unsigned BUF1               : 1;
2442     unsigned BUF2               : 1;
2443     unsigned BUF3               : 1;
2444     unsigned BUF4               : 1;
2445     unsigned BUF5               : 1;
2446     unsigned BUF6               : 1;
2447     unsigned BUF7               : 1;
2448     };
2449   } __SSP1BUFbits_t;
2450 
2451 extern __at(0x0211) volatile __SSP1BUFbits_t SSP1BUFbits;
2452 
2453 #define _SSP1BUF0               0x01
2454 #define _BUF0                   0x01
2455 #define _SSP1BUF1               0x02
2456 #define _BUF1                   0x02
2457 #define _SSP1BUF2               0x04
2458 #define _BUF2                   0x04
2459 #define _SSP1BUF3               0x08
2460 #define _BUF3                   0x08
2461 #define _SSP1BUF4               0x10
2462 #define _BUF4                   0x10
2463 #define _SSP1BUF5               0x20
2464 #define _BUF5                   0x20
2465 #define _SSP1BUF6               0x40
2466 #define _BUF6                   0x40
2467 #define _SSP1BUF7               0x80
2468 #define _BUF7                   0x80
2469 
2470 //==============================================================================
2471 
2472 
2473 //==============================================================================
2474 //        SSPBUF Bits
2475 
2476 extern __at(0x0211) __sfr SSPBUF;
2477 
2478 typedef union
2479   {
2480   struct
2481     {
2482     unsigned SSP1BUF0           : 1;
2483     unsigned SSP1BUF1           : 1;
2484     unsigned SSP1BUF2           : 1;
2485     unsigned SSP1BUF3           : 1;
2486     unsigned SSP1BUF4           : 1;
2487     unsigned SSP1BUF5           : 1;
2488     unsigned SSP1BUF6           : 1;
2489     unsigned SSP1BUF7           : 1;
2490     };
2491 
2492   struct
2493     {
2494     unsigned BUF0               : 1;
2495     unsigned BUF1               : 1;
2496     unsigned BUF2               : 1;
2497     unsigned BUF3               : 1;
2498     unsigned BUF4               : 1;
2499     unsigned BUF5               : 1;
2500     unsigned BUF6               : 1;
2501     unsigned BUF7               : 1;
2502     };
2503   } __SSPBUFbits_t;
2504 
2505 extern __at(0x0211) volatile __SSPBUFbits_t SSPBUFbits;
2506 
2507 #define _SSPBUF_SSP1BUF0        0x01
2508 #define _SSPBUF_BUF0            0x01
2509 #define _SSPBUF_SSP1BUF1        0x02
2510 #define _SSPBUF_BUF1            0x02
2511 #define _SSPBUF_SSP1BUF2        0x04
2512 #define _SSPBUF_BUF2            0x04
2513 #define _SSPBUF_SSP1BUF3        0x08
2514 #define _SSPBUF_BUF3            0x08
2515 #define _SSPBUF_SSP1BUF4        0x10
2516 #define _SSPBUF_BUF4            0x10
2517 #define _SSPBUF_SSP1BUF5        0x20
2518 #define _SSPBUF_BUF5            0x20
2519 #define _SSPBUF_SSP1BUF6        0x40
2520 #define _SSPBUF_BUF6            0x40
2521 #define _SSPBUF_SSP1BUF7        0x80
2522 #define _SSPBUF_BUF7            0x80
2523 
2524 //==============================================================================
2525 
2526 
2527 //==============================================================================
2528 //        SSP1ADD Bits
2529 
2530 extern __at(0x0212) __sfr SSP1ADD;
2531 
2532 typedef union
2533   {
2534   struct
2535     {
2536     unsigned SSP1ADD0           : 1;
2537     unsigned SSP1ADD1           : 1;
2538     unsigned SSP1ADD2           : 1;
2539     unsigned SSP1ADD3           : 1;
2540     unsigned SSP1ADD4           : 1;
2541     unsigned SSP1ADD5           : 1;
2542     unsigned SSP1ADD6           : 1;
2543     unsigned SSP1ADD7           : 1;
2544     };
2545 
2546   struct
2547     {
2548     unsigned ADD0               : 1;
2549     unsigned ADD1               : 1;
2550     unsigned ADD2               : 1;
2551     unsigned ADD3               : 1;
2552     unsigned ADD4               : 1;
2553     unsigned ADD5               : 1;
2554     unsigned ADD6               : 1;
2555     unsigned ADD7               : 1;
2556     };
2557   } __SSP1ADDbits_t;
2558 
2559 extern __at(0x0212) volatile __SSP1ADDbits_t SSP1ADDbits;
2560 
2561 #define _SSP1ADD0               0x01
2562 #define _ADD0                   0x01
2563 #define _SSP1ADD1               0x02
2564 #define _ADD1                   0x02
2565 #define _SSP1ADD2               0x04
2566 #define _ADD2                   0x04
2567 #define _SSP1ADD3               0x08
2568 #define _ADD3                   0x08
2569 #define _SSP1ADD4               0x10
2570 #define _ADD4                   0x10
2571 #define _SSP1ADD5               0x20
2572 #define _ADD5                   0x20
2573 #define _SSP1ADD6               0x40
2574 #define _ADD6                   0x40
2575 #define _SSP1ADD7               0x80
2576 #define _ADD7                   0x80
2577 
2578 //==============================================================================
2579 
2580 
2581 //==============================================================================
2582 //        SSPADD Bits
2583 
2584 extern __at(0x0212) __sfr SSPADD;
2585 
2586 typedef union
2587   {
2588   struct
2589     {
2590     unsigned SSP1ADD0           : 1;
2591     unsigned SSP1ADD1           : 1;
2592     unsigned SSP1ADD2           : 1;
2593     unsigned SSP1ADD3           : 1;
2594     unsigned SSP1ADD4           : 1;
2595     unsigned SSP1ADD5           : 1;
2596     unsigned SSP1ADD6           : 1;
2597     unsigned SSP1ADD7           : 1;
2598     };
2599 
2600   struct
2601     {
2602     unsigned ADD0               : 1;
2603     unsigned ADD1               : 1;
2604     unsigned ADD2               : 1;
2605     unsigned ADD3               : 1;
2606     unsigned ADD4               : 1;
2607     unsigned ADD5               : 1;
2608     unsigned ADD6               : 1;
2609     unsigned ADD7               : 1;
2610     };
2611   } __SSPADDbits_t;
2612 
2613 extern __at(0x0212) volatile __SSPADDbits_t SSPADDbits;
2614 
2615 #define _SSPADD_SSP1ADD0        0x01
2616 #define _SSPADD_ADD0            0x01
2617 #define _SSPADD_SSP1ADD1        0x02
2618 #define _SSPADD_ADD1            0x02
2619 #define _SSPADD_SSP1ADD2        0x04
2620 #define _SSPADD_ADD2            0x04
2621 #define _SSPADD_SSP1ADD3        0x08
2622 #define _SSPADD_ADD3            0x08
2623 #define _SSPADD_SSP1ADD4        0x10
2624 #define _SSPADD_ADD4            0x10
2625 #define _SSPADD_SSP1ADD5        0x20
2626 #define _SSPADD_ADD5            0x20
2627 #define _SSPADD_SSP1ADD6        0x40
2628 #define _SSPADD_ADD6            0x40
2629 #define _SSPADD_SSP1ADD7        0x80
2630 #define _SSPADD_ADD7            0x80
2631 
2632 //==============================================================================
2633 
2634 
2635 //==============================================================================
2636 //        SSP1MSK Bits
2637 
2638 extern __at(0x0213) __sfr SSP1MSK;
2639 
2640 typedef union
2641   {
2642   struct
2643     {
2644     unsigned SSP1MSK0           : 1;
2645     unsigned SSP1MSK1           : 1;
2646     unsigned SSP1MSK2           : 1;
2647     unsigned SSP1MSK3           : 1;
2648     unsigned SSP1MSK4           : 1;
2649     unsigned SSP1MSK5           : 1;
2650     unsigned SSP1MSK6           : 1;
2651     unsigned SSP1MSK7           : 1;
2652     };
2653 
2654   struct
2655     {
2656     unsigned MSK0               : 1;
2657     unsigned MSK1               : 1;
2658     unsigned MSK2               : 1;
2659     unsigned MSK3               : 1;
2660     unsigned MSK4               : 1;
2661     unsigned MSK5               : 1;
2662     unsigned MSK6               : 1;
2663     unsigned MSK7               : 1;
2664     };
2665   } __SSP1MSKbits_t;
2666 
2667 extern __at(0x0213) volatile __SSP1MSKbits_t SSP1MSKbits;
2668 
2669 #define _SSP1MSK0               0x01
2670 #define _MSK0                   0x01
2671 #define _SSP1MSK1               0x02
2672 #define _MSK1                   0x02
2673 #define _SSP1MSK2               0x04
2674 #define _MSK2                   0x04
2675 #define _SSP1MSK3               0x08
2676 #define _MSK3                   0x08
2677 #define _SSP1MSK4               0x10
2678 #define _MSK4                   0x10
2679 #define _SSP1MSK5               0x20
2680 #define _MSK5                   0x20
2681 #define _SSP1MSK6               0x40
2682 #define _MSK6                   0x40
2683 #define _SSP1MSK7               0x80
2684 #define _MSK7                   0x80
2685 
2686 //==============================================================================
2687 
2688 
2689 //==============================================================================
2690 //        SSPMSK Bits
2691 
2692 extern __at(0x0213) __sfr SSPMSK;
2693 
2694 typedef union
2695   {
2696   struct
2697     {
2698     unsigned SSP1MSK0           : 1;
2699     unsigned SSP1MSK1           : 1;
2700     unsigned SSP1MSK2           : 1;
2701     unsigned SSP1MSK3           : 1;
2702     unsigned SSP1MSK4           : 1;
2703     unsigned SSP1MSK5           : 1;
2704     unsigned SSP1MSK6           : 1;
2705     unsigned SSP1MSK7           : 1;
2706     };
2707 
2708   struct
2709     {
2710     unsigned MSK0               : 1;
2711     unsigned MSK1               : 1;
2712     unsigned MSK2               : 1;
2713     unsigned MSK3               : 1;
2714     unsigned MSK4               : 1;
2715     unsigned MSK5               : 1;
2716     unsigned MSK6               : 1;
2717     unsigned MSK7               : 1;
2718     };
2719   } __SSPMSKbits_t;
2720 
2721 extern __at(0x0213) volatile __SSPMSKbits_t SSPMSKbits;
2722 
2723 #define _SSPMSK_SSP1MSK0        0x01
2724 #define _SSPMSK_MSK0            0x01
2725 #define _SSPMSK_SSP1MSK1        0x02
2726 #define _SSPMSK_MSK1            0x02
2727 #define _SSPMSK_SSP1MSK2        0x04
2728 #define _SSPMSK_MSK2            0x04
2729 #define _SSPMSK_SSP1MSK3        0x08
2730 #define _SSPMSK_MSK3            0x08
2731 #define _SSPMSK_SSP1MSK4        0x10
2732 #define _SSPMSK_MSK4            0x10
2733 #define _SSPMSK_SSP1MSK5        0x20
2734 #define _SSPMSK_MSK5            0x20
2735 #define _SSPMSK_SSP1MSK6        0x40
2736 #define _SSPMSK_MSK6            0x40
2737 #define _SSPMSK_SSP1MSK7        0x80
2738 #define _SSPMSK_MSK7            0x80
2739 
2740 //==============================================================================
2741 
2742 
2743 //==============================================================================
2744 //        SSP1STAT Bits
2745 
2746 extern __at(0x0214) __sfr SSP1STAT;
2747 
2748 typedef struct
2749   {
2750   unsigned BF                   : 1;
2751   unsigned UA                   : 1;
2752   unsigned R_NOT_W              : 1;
2753   unsigned S                    : 1;
2754   unsigned P                    : 1;
2755   unsigned D_NOT_A              : 1;
2756   unsigned CKE                  : 1;
2757   unsigned SMP                  : 1;
2758   } __SSP1STATbits_t;
2759 
2760 extern __at(0x0214) volatile __SSP1STATbits_t SSP1STATbits;
2761 
2762 #define _BF                     0x01
2763 #define _UA                     0x02
2764 #define _R_NOT_W                0x04
2765 #define _S                      0x08
2766 #define _P                      0x10
2767 #define _D_NOT_A                0x20
2768 #define _CKE                    0x40
2769 #define _SMP                    0x80
2770 
2771 //==============================================================================
2772 
2773 
2774 //==============================================================================
2775 //        SSPSTAT Bits
2776 
2777 extern __at(0x0214) __sfr SSPSTAT;
2778 
2779 typedef struct
2780   {
2781   unsigned BF                   : 1;
2782   unsigned UA                   : 1;
2783   unsigned R_NOT_W              : 1;
2784   unsigned S                    : 1;
2785   unsigned P                    : 1;
2786   unsigned D_NOT_A              : 1;
2787   unsigned CKE                  : 1;
2788   unsigned SMP                  : 1;
2789   } __SSPSTATbits_t;
2790 
2791 extern __at(0x0214) volatile __SSPSTATbits_t SSPSTATbits;
2792 
2793 #define _SSPSTAT_BF             0x01
2794 #define _SSPSTAT_UA             0x02
2795 #define _SSPSTAT_R_NOT_W        0x04
2796 #define _SSPSTAT_S              0x08
2797 #define _SSPSTAT_P              0x10
2798 #define _SSPSTAT_D_NOT_A        0x20
2799 #define _SSPSTAT_CKE            0x40
2800 #define _SSPSTAT_SMP            0x80
2801 
2802 //==============================================================================
2803 
2804 
2805 //==============================================================================
2806 //        SSP1CON Bits
2807 
2808 extern __at(0x0215) __sfr SSP1CON;
2809 
2810 typedef union
2811   {
2812   struct
2813     {
2814     unsigned SSPM0              : 1;
2815     unsigned SSPM1              : 1;
2816     unsigned SSPM2              : 1;
2817     unsigned SSPM3              : 1;
2818     unsigned CKP                : 1;
2819     unsigned SSPEN              : 1;
2820     unsigned SSPOV              : 1;
2821     unsigned WCOL               : 1;
2822     };
2823 
2824   struct
2825     {
2826     unsigned SSPM               : 4;
2827     unsigned                    : 4;
2828     };
2829   } __SSP1CONbits_t;
2830 
2831 extern __at(0x0215) volatile __SSP1CONbits_t SSP1CONbits;
2832 
2833 #define _SSPM0                  0x01
2834 #define _SSPM1                  0x02
2835 #define _SSPM2                  0x04
2836 #define _SSPM3                  0x08
2837 #define _CKP                    0x10
2838 #define _SSPEN                  0x20
2839 #define _SSPOV                  0x40
2840 #define _WCOL                   0x80
2841 
2842 //==============================================================================
2843 
2844 
2845 //==============================================================================
2846 //        SSP1CON1 Bits
2847 
2848 extern __at(0x0215) __sfr SSP1CON1;
2849 
2850 typedef union
2851   {
2852   struct
2853     {
2854     unsigned SSPM0              : 1;
2855     unsigned SSPM1              : 1;
2856     unsigned SSPM2              : 1;
2857     unsigned SSPM3              : 1;
2858     unsigned CKP                : 1;
2859     unsigned SSPEN              : 1;
2860     unsigned SSPOV              : 1;
2861     unsigned WCOL               : 1;
2862     };
2863 
2864   struct
2865     {
2866     unsigned SSPM               : 4;
2867     unsigned                    : 4;
2868     };
2869   } __SSP1CON1bits_t;
2870 
2871 extern __at(0x0215) volatile __SSP1CON1bits_t SSP1CON1bits;
2872 
2873 #define _SSP1CON1_SSPM0         0x01
2874 #define _SSP1CON1_SSPM1         0x02
2875 #define _SSP1CON1_SSPM2         0x04
2876 #define _SSP1CON1_SSPM3         0x08
2877 #define _SSP1CON1_CKP           0x10
2878 #define _SSP1CON1_SSPEN         0x20
2879 #define _SSP1CON1_SSPOV         0x40
2880 #define _SSP1CON1_WCOL          0x80
2881 
2882 //==============================================================================
2883 
2884 
2885 //==============================================================================
2886 //        SSPCON Bits
2887 
2888 extern __at(0x0215) __sfr SSPCON;
2889 
2890 typedef union
2891   {
2892   struct
2893     {
2894     unsigned SSPM0              : 1;
2895     unsigned SSPM1              : 1;
2896     unsigned SSPM2              : 1;
2897     unsigned SSPM3              : 1;
2898     unsigned CKP                : 1;
2899     unsigned SSPEN              : 1;
2900     unsigned SSPOV              : 1;
2901     unsigned WCOL               : 1;
2902     };
2903 
2904   struct
2905     {
2906     unsigned SSPM               : 4;
2907     unsigned                    : 4;
2908     };
2909   } __SSPCONbits_t;
2910 
2911 extern __at(0x0215) volatile __SSPCONbits_t SSPCONbits;
2912 
2913 #define _SSPCON_SSPM0           0x01
2914 #define _SSPCON_SSPM1           0x02
2915 #define _SSPCON_SSPM2           0x04
2916 #define _SSPCON_SSPM3           0x08
2917 #define _SSPCON_CKP             0x10
2918 #define _SSPCON_SSPEN           0x20
2919 #define _SSPCON_SSPOV           0x40
2920 #define _SSPCON_WCOL            0x80
2921 
2922 //==============================================================================
2923 
2924 
2925 //==============================================================================
2926 //        SSPCON1 Bits
2927 
2928 extern __at(0x0215) __sfr SSPCON1;
2929 
2930 typedef union
2931   {
2932   struct
2933     {
2934     unsigned SSPM0              : 1;
2935     unsigned SSPM1              : 1;
2936     unsigned SSPM2              : 1;
2937     unsigned SSPM3              : 1;
2938     unsigned CKP                : 1;
2939     unsigned SSPEN              : 1;
2940     unsigned SSPOV              : 1;
2941     unsigned WCOL               : 1;
2942     };
2943 
2944   struct
2945     {
2946     unsigned SSPM               : 4;
2947     unsigned                    : 4;
2948     };
2949   } __SSPCON1bits_t;
2950 
2951 extern __at(0x0215) volatile __SSPCON1bits_t SSPCON1bits;
2952 
2953 #define _SSPCON1_SSPM0          0x01
2954 #define _SSPCON1_SSPM1          0x02
2955 #define _SSPCON1_SSPM2          0x04
2956 #define _SSPCON1_SSPM3          0x08
2957 #define _SSPCON1_CKP            0x10
2958 #define _SSPCON1_SSPEN          0x20
2959 #define _SSPCON1_SSPOV          0x40
2960 #define _SSPCON1_WCOL           0x80
2961 
2962 //==============================================================================
2963 
2964 
2965 //==============================================================================
2966 //        SSP1CON2 Bits
2967 
2968 extern __at(0x0216) __sfr SSP1CON2;
2969 
2970 typedef struct
2971   {
2972   unsigned SEN                  : 1;
2973   unsigned RSEN                 : 1;
2974   unsigned PEN                  : 1;
2975   unsigned RCEN                 : 1;
2976   unsigned ACKEN                : 1;
2977   unsigned ACKDT                : 1;
2978   unsigned ACKSTAT              : 1;
2979   unsigned GCEN                 : 1;
2980   } __SSP1CON2bits_t;
2981 
2982 extern __at(0x0216) volatile __SSP1CON2bits_t SSP1CON2bits;
2983 
2984 #define _SEN                    0x01
2985 #define _RSEN                   0x02
2986 #define _PEN                    0x04
2987 #define _RCEN                   0x08
2988 #define _ACKEN                  0x10
2989 #define _ACKDT                  0x20
2990 #define _ACKSTAT                0x40
2991 #define _GCEN                   0x80
2992 
2993 //==============================================================================
2994 
2995 
2996 //==============================================================================
2997 //        SSPCON2 Bits
2998 
2999 extern __at(0x0216) __sfr SSPCON2;
3000 
3001 typedef struct
3002   {
3003   unsigned SEN                  : 1;
3004   unsigned RSEN                 : 1;
3005   unsigned PEN                  : 1;
3006   unsigned RCEN                 : 1;
3007   unsigned ACKEN                : 1;
3008   unsigned ACKDT                : 1;
3009   unsigned ACKSTAT              : 1;
3010   unsigned GCEN                 : 1;
3011   } __SSPCON2bits_t;
3012 
3013 extern __at(0x0216) volatile __SSPCON2bits_t SSPCON2bits;
3014 
3015 #define _SSPCON2_SEN            0x01
3016 #define _SSPCON2_RSEN           0x02
3017 #define _SSPCON2_PEN            0x04
3018 #define _SSPCON2_RCEN           0x08
3019 #define _SSPCON2_ACKEN          0x10
3020 #define _SSPCON2_ACKDT          0x20
3021 #define _SSPCON2_ACKSTAT        0x40
3022 #define _SSPCON2_GCEN           0x80
3023 
3024 //==============================================================================
3025 
3026 
3027 //==============================================================================
3028 //        SSP1CON3 Bits
3029 
3030 extern __at(0x0217) __sfr SSP1CON3;
3031 
3032 typedef struct
3033   {
3034   unsigned DHEN                 : 1;
3035   unsigned AHEN                 : 1;
3036   unsigned SBCDE                : 1;
3037   unsigned SDAHT                : 1;
3038   unsigned BOEN                 : 1;
3039   unsigned SCIE                 : 1;
3040   unsigned PCIE                 : 1;
3041   unsigned ACKTIM               : 1;
3042   } __SSP1CON3bits_t;
3043 
3044 extern __at(0x0217) volatile __SSP1CON3bits_t SSP1CON3bits;
3045 
3046 #define _DHEN                   0x01
3047 #define _AHEN                   0x02
3048 #define _SBCDE                  0x04
3049 #define _SDAHT                  0x08
3050 #define _BOEN                   0x10
3051 #define _SCIE                   0x20
3052 #define _PCIE                   0x40
3053 #define _ACKTIM                 0x80
3054 
3055 //==============================================================================
3056 
3057 
3058 //==============================================================================
3059 //        SSPCON3 Bits
3060 
3061 extern __at(0x0217) __sfr SSPCON3;
3062 
3063 typedef struct
3064   {
3065   unsigned DHEN                 : 1;
3066   unsigned AHEN                 : 1;
3067   unsigned SBCDE                : 1;
3068   unsigned SDAHT                : 1;
3069   unsigned BOEN                 : 1;
3070   unsigned SCIE                 : 1;
3071   unsigned PCIE                 : 1;
3072   unsigned ACKTIM               : 1;
3073   } __SSPCON3bits_t;
3074 
3075 extern __at(0x0217) volatile __SSPCON3bits_t SSPCON3bits;
3076 
3077 #define _SSPCON3_DHEN           0x01
3078 #define _SSPCON3_AHEN           0x02
3079 #define _SSPCON3_SBCDE          0x04
3080 #define _SSPCON3_SDAHT          0x08
3081 #define _SSPCON3_BOEN           0x10
3082 #define _SSPCON3_SCIE           0x20
3083 #define _SSPCON3_PCIE           0x40
3084 #define _SSPCON3_ACKTIM         0x80
3085 
3086 //==============================================================================
3087 
3088 
3089 //==============================================================================
3090 //        ODCONA Bits
3091 
3092 extern __at(0x028C) __sfr ODCONA;
3093 
3094 typedef struct
3095   {
3096   unsigned ODA0                 : 1;
3097   unsigned ODA1                 : 1;
3098   unsigned ODA2                 : 1;
3099   unsigned                      : 1;
3100   unsigned ODA4                 : 1;
3101   unsigned ODA5                 : 1;
3102   unsigned                      : 1;
3103   unsigned                      : 1;
3104   } __ODCONAbits_t;
3105 
3106 extern __at(0x028C) volatile __ODCONAbits_t ODCONAbits;
3107 
3108 #define _ODA0                   0x01
3109 #define _ODA1                   0x02
3110 #define _ODA2                   0x04
3111 #define _ODA4                   0x10
3112 #define _ODA5                   0x20
3113 
3114 //==============================================================================
3115 
3116 
3117 //==============================================================================
3118 //        ODCONB Bits
3119 
3120 extern __at(0x028D) __sfr ODCONB;
3121 
3122 typedef struct
3123   {
3124   unsigned                      : 1;
3125   unsigned                      : 1;
3126   unsigned                      : 1;
3127   unsigned                      : 1;
3128   unsigned ODB4                 : 1;
3129   unsigned ODB5                 : 1;
3130   unsigned ODB6                 : 1;
3131   unsigned ODB7                 : 1;
3132   } __ODCONBbits_t;
3133 
3134 extern __at(0x028D) volatile __ODCONBbits_t ODCONBbits;
3135 
3136 #define _ODB4                   0x10
3137 #define _ODB5                   0x20
3138 #define _ODB6                   0x40
3139 #define _ODB7                   0x80
3140 
3141 //==============================================================================
3142 
3143 
3144 //==============================================================================
3145 //        ODCONC Bits
3146 
3147 extern __at(0x028E) __sfr ODCONC;
3148 
3149 typedef struct
3150   {
3151   unsigned ODC0                 : 1;
3152   unsigned ODC1                 : 1;
3153   unsigned ODC2                 : 1;
3154   unsigned ODC3                 : 1;
3155   unsigned ODC4                 : 1;
3156   unsigned ODC5                 : 1;
3157   unsigned ODC6                 : 1;
3158   unsigned ODC7                 : 1;
3159   } __ODCONCbits_t;
3160 
3161 extern __at(0x028E) volatile __ODCONCbits_t ODCONCbits;
3162 
3163 #define _ODC0                   0x01
3164 #define _ODC1                   0x02
3165 #define _ODC2                   0x04
3166 #define _ODC3                   0x08
3167 #define _ODC4                   0x10
3168 #define _ODC5                   0x20
3169 #define _ODC6                   0x40
3170 #define _ODC7                   0x80
3171 
3172 //==============================================================================
3173 
3174 extern __at(0x0291) __sfr CCPR1;
3175 extern __at(0x0291) __sfr CCPR1L;
3176 extern __at(0x0292) __sfr CCPR1H;
3177 
3178 //==============================================================================
3179 //        CCP1CON Bits
3180 
3181 extern __at(0x0293) __sfr CCP1CON;
3182 
3183 typedef union
3184   {
3185   struct
3186     {
3187     unsigned CCP1M0             : 1;
3188     unsigned CCP1M1             : 1;
3189     unsigned CCP1M2             : 1;
3190     unsigned CCP1M3             : 1;
3191     unsigned DC1B0              : 1;
3192     unsigned DC1B1              : 1;
3193     unsigned                    : 1;
3194     unsigned                    : 1;
3195     };
3196 
3197   struct
3198     {
3199     unsigned                    : 1;
3200     unsigned                    : 1;
3201     unsigned                    : 1;
3202     unsigned                    : 1;
3203     unsigned CCP1Y              : 1;
3204     unsigned CCP1X              : 1;
3205     unsigned                    : 1;
3206     unsigned                    : 1;
3207     };
3208 
3209   struct
3210     {
3211     unsigned CCP1M              : 4;
3212     unsigned                    : 4;
3213     };
3214 
3215   struct
3216     {
3217     unsigned                    : 4;
3218     unsigned DC1B               : 2;
3219     unsigned                    : 2;
3220     };
3221   } __CCP1CONbits_t;
3222 
3223 extern __at(0x0293) volatile __CCP1CONbits_t CCP1CONbits;
3224 
3225 #define _CCP1M0                 0x01
3226 #define _CCP1M1                 0x02
3227 #define _CCP1M2                 0x04
3228 #define _CCP1M3                 0x08
3229 #define _DC1B0                  0x10
3230 #define _CCP1Y                  0x10
3231 #define _DC1B1                  0x20
3232 #define _CCP1X                  0x20
3233 
3234 //==============================================================================
3235 
3236 
3237 //==============================================================================
3238 //        ECCP1CON Bits
3239 
3240 extern __at(0x0293) __sfr ECCP1CON;
3241 
3242 typedef union
3243   {
3244   struct
3245     {
3246     unsigned CCP1M0             : 1;
3247     unsigned CCP1M1             : 1;
3248     unsigned CCP1M2             : 1;
3249     unsigned CCP1M3             : 1;
3250     unsigned DC1B0              : 1;
3251     unsigned DC1B1              : 1;
3252     unsigned                    : 1;
3253     unsigned                    : 1;
3254     };
3255 
3256   struct
3257     {
3258     unsigned                    : 1;
3259     unsigned                    : 1;
3260     unsigned                    : 1;
3261     unsigned                    : 1;
3262     unsigned CCP1Y              : 1;
3263     unsigned CCP1X              : 1;
3264     unsigned                    : 1;
3265     unsigned                    : 1;
3266     };
3267 
3268   struct
3269     {
3270     unsigned CCP1M              : 4;
3271     unsigned                    : 4;
3272     };
3273 
3274   struct
3275     {
3276     unsigned                    : 4;
3277     unsigned DC1B               : 2;
3278     unsigned                    : 2;
3279     };
3280   } __ECCP1CONbits_t;
3281 
3282 extern __at(0x0293) volatile __ECCP1CONbits_t ECCP1CONbits;
3283 
3284 #define _ECCP1CON_CCP1M0        0x01
3285 #define _ECCP1CON_CCP1M1        0x02
3286 #define _ECCP1CON_CCP1M2        0x04
3287 #define _ECCP1CON_CCP1M3        0x08
3288 #define _ECCP1CON_DC1B0         0x10
3289 #define _ECCP1CON_CCP1Y         0x10
3290 #define _ECCP1CON_DC1B1         0x20
3291 #define _ECCP1CON_CCP1X         0x20
3292 
3293 //==============================================================================
3294 
3295 extern __at(0x0298) __sfr CCPR2;
3296 extern __at(0x0298) __sfr CCPR2L;
3297 extern __at(0x0299) __sfr CCPR2H;
3298 
3299 //==============================================================================
3300 //        CCP2CON Bits
3301 
3302 extern __at(0x029A) __sfr CCP2CON;
3303 
3304 typedef union
3305   {
3306   struct
3307     {
3308     unsigned CCP2M0             : 1;
3309     unsigned CCP2M1             : 1;
3310     unsigned CCP2M2             : 1;
3311     unsigned CCP2M3             : 1;
3312     unsigned DC2B0              : 1;
3313     unsigned DC2B1              : 1;
3314     unsigned                    : 1;
3315     unsigned                    : 1;
3316     };
3317 
3318   struct
3319     {
3320     unsigned                    : 1;
3321     unsigned                    : 1;
3322     unsigned                    : 1;
3323     unsigned                    : 1;
3324     unsigned CCP2Y              : 1;
3325     unsigned CCP2X              : 1;
3326     unsigned                    : 1;
3327     unsigned                    : 1;
3328     };
3329 
3330   struct
3331     {
3332     unsigned CCP2M              : 4;
3333     unsigned                    : 4;
3334     };
3335 
3336   struct
3337     {
3338     unsigned                    : 4;
3339     unsigned DC2B               : 2;
3340     unsigned                    : 2;
3341     };
3342   } __CCP2CONbits_t;
3343 
3344 extern __at(0x029A) volatile __CCP2CONbits_t CCP2CONbits;
3345 
3346 #define _CCP2M0                 0x01
3347 #define _CCP2M1                 0x02
3348 #define _CCP2M2                 0x04
3349 #define _CCP2M3                 0x08
3350 #define _DC2B0                  0x10
3351 #define _CCP2Y                  0x10
3352 #define _DC2B1                  0x20
3353 #define _CCP2X                  0x20
3354 
3355 //==============================================================================
3356 
3357 
3358 //==============================================================================
3359 //        ECCP2CON Bits
3360 
3361 extern __at(0x029A) __sfr ECCP2CON;
3362 
3363 typedef union
3364   {
3365   struct
3366     {
3367     unsigned CCP2M0             : 1;
3368     unsigned CCP2M1             : 1;
3369     unsigned CCP2M2             : 1;
3370     unsigned CCP2M3             : 1;
3371     unsigned DC2B0              : 1;
3372     unsigned DC2B1              : 1;
3373     unsigned                    : 1;
3374     unsigned                    : 1;
3375     };
3376 
3377   struct
3378     {
3379     unsigned                    : 1;
3380     unsigned                    : 1;
3381     unsigned                    : 1;
3382     unsigned                    : 1;
3383     unsigned CCP2Y              : 1;
3384     unsigned CCP2X              : 1;
3385     unsigned                    : 1;
3386     unsigned                    : 1;
3387     };
3388 
3389   struct
3390     {
3391     unsigned CCP2M              : 4;
3392     unsigned                    : 4;
3393     };
3394 
3395   struct
3396     {
3397     unsigned                    : 4;
3398     unsigned DC2B               : 2;
3399     unsigned                    : 2;
3400     };
3401   } __ECCP2CONbits_t;
3402 
3403 extern __at(0x029A) volatile __ECCP2CONbits_t ECCP2CONbits;
3404 
3405 #define _ECCP2CON_CCP2M0        0x01
3406 #define _ECCP2CON_CCP2M1        0x02
3407 #define _ECCP2CON_CCP2M2        0x04
3408 #define _ECCP2CON_CCP2M3        0x08
3409 #define _ECCP2CON_DC2B0         0x10
3410 #define _ECCP2CON_CCP2Y         0x10
3411 #define _ECCP2CON_DC2B1         0x20
3412 #define _ECCP2CON_CCP2X         0x20
3413 
3414 //==============================================================================
3415 
3416 
3417 //==============================================================================
3418 //        CCPTMRS Bits
3419 
3420 extern __at(0x029E) __sfr CCPTMRS;
3421 
3422 typedef union
3423   {
3424   struct
3425     {
3426     unsigned C1TSEL0            : 1;
3427     unsigned C1TSEL1            : 1;
3428     unsigned C2TSEL0            : 1;
3429     unsigned C2TSEL1            : 1;
3430     unsigned P3TSEL0            : 1;
3431     unsigned P3TSEL1            : 1;
3432     unsigned P4TSEL0            : 1;
3433     unsigned P4TSEL1            : 1;
3434     };
3435 
3436   struct
3437     {
3438     unsigned C1TSEL             : 2;
3439     unsigned                    : 6;
3440     };
3441 
3442   struct
3443     {
3444     unsigned                    : 2;
3445     unsigned C2TSEL             : 2;
3446     unsigned                    : 4;
3447     };
3448 
3449   struct
3450     {
3451     unsigned                    : 4;
3452     unsigned P3TSEL             : 2;
3453     unsigned                    : 2;
3454     };
3455 
3456   struct
3457     {
3458     unsigned                    : 6;
3459     unsigned P4TSEL             : 2;
3460     };
3461   } __CCPTMRSbits_t;
3462 
3463 extern __at(0x029E) volatile __CCPTMRSbits_t CCPTMRSbits;
3464 
3465 #define _C1TSEL0                0x01
3466 #define _C1TSEL1                0x02
3467 #define _C2TSEL0                0x04
3468 #define _C2TSEL1                0x08
3469 #define _P3TSEL0                0x10
3470 #define _P3TSEL1                0x20
3471 #define _P4TSEL0                0x40
3472 #define _P4TSEL1                0x80
3473 
3474 //==============================================================================
3475 
3476 
3477 //==============================================================================
3478 //        SLRCONA Bits
3479 
3480 extern __at(0x030C) __sfr SLRCONA;
3481 
3482 typedef struct
3483   {
3484   unsigned SLRA0                : 1;
3485   unsigned SLRA1                : 1;
3486   unsigned SLRA2                : 1;
3487   unsigned                      : 1;
3488   unsigned SLRA4                : 1;
3489   unsigned SLRA5                : 1;
3490   unsigned                      : 1;
3491   unsigned                      : 1;
3492   } __SLRCONAbits_t;
3493 
3494 extern __at(0x030C) volatile __SLRCONAbits_t SLRCONAbits;
3495 
3496 #define _SLRA0                  0x01
3497 #define _SLRA1                  0x02
3498 #define _SLRA2                  0x04
3499 #define _SLRA4                  0x10
3500 #define _SLRA5                  0x20
3501 
3502 //==============================================================================
3503 
3504 
3505 //==============================================================================
3506 //        SLRCONB Bits
3507 
3508 extern __at(0x030D) __sfr SLRCONB;
3509 
3510 typedef struct
3511   {
3512   unsigned                      : 1;
3513   unsigned                      : 1;
3514   unsigned                      : 1;
3515   unsigned                      : 1;
3516   unsigned SLRB4                : 1;
3517   unsigned SLRB5                : 1;
3518   unsigned SLRB6                : 1;
3519   unsigned SLRB7                : 1;
3520   } __SLRCONBbits_t;
3521 
3522 extern __at(0x030D) volatile __SLRCONBbits_t SLRCONBbits;
3523 
3524 #define _SLRB4                  0x10
3525 #define _SLRB5                  0x20
3526 #define _SLRB6                  0x40
3527 #define _SLRB7                  0x80
3528 
3529 //==============================================================================
3530 
3531 
3532 //==============================================================================
3533 //        SLRCONC Bits
3534 
3535 extern __at(0x030E) __sfr SLRCONC;
3536 
3537 typedef struct
3538   {
3539   unsigned SLRC0                : 1;
3540   unsigned SLRC1                : 1;
3541   unsigned SLRC2                : 1;
3542   unsigned SLRC3                : 1;
3543   unsigned SLRC4                : 1;
3544   unsigned SLRC5                : 1;
3545   unsigned SLRC6                : 1;
3546   unsigned SLRC7                : 1;
3547   } __SLRCONCbits_t;
3548 
3549 extern __at(0x030E) volatile __SLRCONCbits_t SLRCONCbits;
3550 
3551 #define _SLRC0                  0x01
3552 #define _SLRC1                  0x02
3553 #define _SLRC2                  0x04
3554 #define _SLRC3                  0x08
3555 #define _SLRC4                  0x10
3556 #define _SLRC5                  0x20
3557 #define _SLRC6                  0x40
3558 #define _SLRC7                  0x80
3559 
3560 //==============================================================================
3561 
3562 
3563 //==============================================================================
3564 //        INLVLA Bits
3565 
3566 extern __at(0x038C) __sfr INLVLA;
3567 
3568 typedef union
3569   {
3570   struct
3571     {
3572     unsigned INLVLA0            : 1;
3573     unsigned INLVLA1            : 1;
3574     unsigned INLVLA2            : 1;
3575     unsigned INLVLA3            : 1;
3576     unsigned INLVLA4            : 1;
3577     unsigned INLVLA5            : 1;
3578     unsigned                    : 1;
3579     unsigned                    : 1;
3580     };
3581 
3582   struct
3583     {
3584     unsigned INLVLA             : 6;
3585     unsigned                    : 2;
3586     };
3587   } __INLVLAbits_t;
3588 
3589 extern __at(0x038C) volatile __INLVLAbits_t INLVLAbits;
3590 
3591 #define _INLVLA0                0x01
3592 #define _INLVLA1                0x02
3593 #define _INLVLA2                0x04
3594 #define _INLVLA3                0x08
3595 #define _INLVLA4                0x10
3596 #define _INLVLA5                0x20
3597 
3598 //==============================================================================
3599 
3600 
3601 //==============================================================================
3602 //        INLVLB Bits
3603 
3604 extern __at(0x038D) __sfr INLVLB;
3605 
3606 typedef struct
3607   {
3608   unsigned                      : 1;
3609   unsigned                      : 1;
3610   unsigned                      : 1;
3611   unsigned                      : 1;
3612   unsigned INLVLB4              : 1;
3613   unsigned INLVLB5              : 1;
3614   unsigned INLVLB6              : 1;
3615   unsigned INLVLB7              : 1;
3616   } __INLVLBbits_t;
3617 
3618 extern __at(0x038D) volatile __INLVLBbits_t INLVLBbits;
3619 
3620 #define _INLVLB4                0x10
3621 #define _INLVLB5                0x20
3622 #define _INLVLB6                0x40
3623 #define _INLVLB7                0x80
3624 
3625 //==============================================================================
3626 
3627 
3628 //==============================================================================
3629 //        INLVLC Bits
3630 
3631 extern __at(0x038E) __sfr INLVLC;
3632 
3633 typedef struct
3634   {
3635   unsigned INLVLC0              : 1;
3636   unsigned INLVLC1              : 1;
3637   unsigned INLVLC2              : 1;
3638   unsigned INLVLC3              : 1;
3639   unsigned INLVLC4              : 1;
3640   unsigned INLVLC5              : 1;
3641   unsigned INLVLC6              : 1;
3642   unsigned INLVLC7              : 1;
3643   } __INLVLCbits_t;
3644 
3645 extern __at(0x038E) volatile __INLVLCbits_t INLVLCbits;
3646 
3647 #define _INLVLC0                0x01
3648 #define _INLVLC1                0x02
3649 #define _INLVLC2                0x04
3650 #define _INLVLC3                0x08
3651 #define _INLVLC4                0x10
3652 #define _INLVLC5                0x20
3653 #define _INLVLC6                0x40
3654 #define _INLVLC7                0x80
3655 
3656 //==============================================================================
3657 
3658 
3659 //==============================================================================
3660 //        IOCAP Bits
3661 
3662 extern __at(0x0391) __sfr IOCAP;
3663 
3664 typedef union
3665   {
3666   struct
3667     {
3668     unsigned IOCAP0             : 1;
3669     unsigned IOCAP1             : 1;
3670     unsigned IOCAP2             : 1;
3671     unsigned IOCAP3             : 1;
3672     unsigned IOCAP4             : 1;
3673     unsigned IOCAP5             : 1;
3674     unsigned                    : 1;
3675     unsigned                    : 1;
3676     };
3677 
3678   struct
3679     {
3680     unsigned IOCAP              : 6;
3681     unsigned                    : 2;
3682     };
3683   } __IOCAPbits_t;
3684 
3685 extern __at(0x0391) volatile __IOCAPbits_t IOCAPbits;
3686 
3687 #define _IOCAP0                 0x01
3688 #define _IOCAP1                 0x02
3689 #define _IOCAP2                 0x04
3690 #define _IOCAP3                 0x08
3691 #define _IOCAP4                 0x10
3692 #define _IOCAP5                 0x20
3693 
3694 //==============================================================================
3695 
3696 
3697 //==============================================================================
3698 //        IOCAN Bits
3699 
3700 extern __at(0x0392) __sfr IOCAN;
3701 
3702 typedef union
3703   {
3704   struct
3705     {
3706     unsigned IOCAN0             : 1;
3707     unsigned IOCAN1             : 1;
3708     unsigned IOCAN2             : 1;
3709     unsigned IOCAN3             : 1;
3710     unsigned IOCAN4             : 1;
3711     unsigned IOCAN5             : 1;
3712     unsigned                    : 1;
3713     unsigned                    : 1;
3714     };
3715 
3716   struct
3717     {
3718     unsigned IOCAN              : 6;
3719     unsigned                    : 2;
3720     };
3721   } __IOCANbits_t;
3722 
3723 extern __at(0x0392) volatile __IOCANbits_t IOCANbits;
3724 
3725 #define _IOCAN0                 0x01
3726 #define _IOCAN1                 0x02
3727 #define _IOCAN2                 0x04
3728 #define _IOCAN3                 0x08
3729 #define _IOCAN4                 0x10
3730 #define _IOCAN5                 0x20
3731 
3732 //==============================================================================
3733 
3734 
3735 //==============================================================================
3736 //        IOCAF Bits
3737 
3738 extern __at(0x0393) __sfr IOCAF;
3739 
3740 typedef union
3741   {
3742   struct
3743     {
3744     unsigned IOCAF0             : 1;
3745     unsigned IOCAF1             : 1;
3746     unsigned IOCAF2             : 1;
3747     unsigned IOCAF3             : 1;
3748     unsigned IOCAF4             : 1;
3749     unsigned IOCAF5             : 1;
3750     unsigned                    : 1;
3751     unsigned                    : 1;
3752     };
3753 
3754   struct
3755     {
3756     unsigned IOCAF              : 6;
3757     unsigned                    : 2;
3758     };
3759   } __IOCAFbits_t;
3760 
3761 extern __at(0x0393) volatile __IOCAFbits_t IOCAFbits;
3762 
3763 #define _IOCAF0                 0x01
3764 #define _IOCAF1                 0x02
3765 #define _IOCAF2                 0x04
3766 #define _IOCAF3                 0x08
3767 #define _IOCAF4                 0x10
3768 #define _IOCAF5                 0x20
3769 
3770 //==============================================================================
3771 
3772 
3773 //==============================================================================
3774 //        IOCBP Bits
3775 
3776 extern __at(0x0394) __sfr IOCBP;
3777 
3778 typedef struct
3779   {
3780   unsigned                      : 1;
3781   unsigned                      : 1;
3782   unsigned                      : 1;
3783   unsigned                      : 1;
3784   unsigned IOCBP4               : 1;
3785   unsigned IOCBP5               : 1;
3786   unsigned IOCBP6               : 1;
3787   unsigned IOCBP7               : 1;
3788   } __IOCBPbits_t;
3789 
3790 extern __at(0x0394) volatile __IOCBPbits_t IOCBPbits;
3791 
3792 #define _IOCBP4                 0x10
3793 #define _IOCBP5                 0x20
3794 #define _IOCBP6                 0x40
3795 #define _IOCBP7                 0x80
3796 
3797 //==============================================================================
3798 
3799 
3800 //==============================================================================
3801 //        IOCBN Bits
3802 
3803 extern __at(0x0395) __sfr IOCBN;
3804 
3805 typedef struct
3806   {
3807   unsigned                      : 1;
3808   unsigned                      : 1;
3809   unsigned                      : 1;
3810   unsigned                      : 1;
3811   unsigned IOCBN4               : 1;
3812   unsigned IOCBN5               : 1;
3813   unsigned IOCBN6               : 1;
3814   unsigned IOCBN7               : 1;
3815   } __IOCBNbits_t;
3816 
3817 extern __at(0x0395) volatile __IOCBNbits_t IOCBNbits;
3818 
3819 #define _IOCBN4                 0x10
3820 #define _IOCBN5                 0x20
3821 #define _IOCBN6                 0x40
3822 #define _IOCBN7                 0x80
3823 
3824 //==============================================================================
3825 
3826 
3827 //==============================================================================
3828 //        IOCBF Bits
3829 
3830 extern __at(0x0396) __sfr IOCBF;
3831 
3832 typedef struct
3833   {
3834   unsigned                      : 1;
3835   unsigned                      : 1;
3836   unsigned                      : 1;
3837   unsigned                      : 1;
3838   unsigned IOCBF4               : 1;
3839   unsigned IOCBF5               : 1;
3840   unsigned IOCBF6               : 1;
3841   unsigned IOCBF7               : 1;
3842   } __IOCBFbits_t;
3843 
3844 extern __at(0x0396) volatile __IOCBFbits_t IOCBFbits;
3845 
3846 #define _IOCBF4                 0x10
3847 #define _IOCBF5                 0x20
3848 #define _IOCBF6                 0x40
3849 #define _IOCBF7                 0x80
3850 
3851 //==============================================================================
3852 
3853 
3854 //==============================================================================
3855 //        IOCCP Bits
3856 
3857 extern __at(0x0397) __sfr IOCCP;
3858 
3859 typedef struct
3860   {
3861   unsigned IOCCP0               : 1;
3862   unsigned IOCCP1               : 1;
3863   unsigned IOCCP2               : 1;
3864   unsigned IOCCP3               : 1;
3865   unsigned IOCCP4               : 1;
3866   unsigned IOCCP5               : 1;
3867   unsigned IOCCP6               : 1;
3868   unsigned IOCCP7               : 1;
3869   } __IOCCPbits_t;
3870 
3871 extern __at(0x0397) volatile __IOCCPbits_t IOCCPbits;
3872 
3873 #define _IOCCP0                 0x01
3874 #define _IOCCP1                 0x02
3875 #define _IOCCP2                 0x04
3876 #define _IOCCP3                 0x08
3877 #define _IOCCP4                 0x10
3878 #define _IOCCP5                 0x20
3879 #define _IOCCP6                 0x40
3880 #define _IOCCP7                 0x80
3881 
3882 //==============================================================================
3883 
3884 
3885 //==============================================================================
3886 //        IOCCN Bits
3887 
3888 extern __at(0x0398) __sfr IOCCN;
3889 
3890 typedef struct
3891   {
3892   unsigned IOCCN0               : 1;
3893   unsigned IOCCN1               : 1;
3894   unsigned IOCCN2               : 1;
3895   unsigned IOCCN3               : 1;
3896   unsigned IOCCN4               : 1;
3897   unsigned IOCCN5               : 1;
3898   unsigned IOCCN6               : 1;
3899   unsigned IOCCN7               : 1;
3900   } __IOCCNbits_t;
3901 
3902 extern __at(0x0398) volatile __IOCCNbits_t IOCCNbits;
3903 
3904 #define _IOCCN0                 0x01
3905 #define _IOCCN1                 0x02
3906 #define _IOCCN2                 0x04
3907 #define _IOCCN3                 0x08
3908 #define _IOCCN4                 0x10
3909 #define _IOCCN5                 0x20
3910 #define _IOCCN6                 0x40
3911 #define _IOCCN7                 0x80
3912 
3913 //==============================================================================
3914 
3915 
3916 //==============================================================================
3917 //        IOCCF Bits
3918 
3919 extern __at(0x0399) __sfr IOCCF;
3920 
3921 typedef struct
3922   {
3923   unsigned IOCCF0               : 1;
3924   unsigned IOCCF1               : 1;
3925   unsigned IOCCF2               : 1;
3926   unsigned IOCCF3               : 1;
3927   unsigned IOCCF4               : 1;
3928   unsigned IOCCF5               : 1;
3929   unsigned IOCCF6               : 1;
3930   unsigned IOCCF7               : 1;
3931   } __IOCCFbits_t;
3932 
3933 extern __at(0x0399) volatile __IOCCFbits_t IOCCFbits;
3934 
3935 #define _IOCCF0                 0x01
3936 #define _IOCCF1                 0x02
3937 #define _IOCCF2                 0x04
3938 #define _IOCCF3                 0x08
3939 #define _IOCCF4                 0x10
3940 #define _IOCCF5                 0x20
3941 #define _IOCCF6                 0x40
3942 #define _IOCCF7                 0x80
3943 
3944 //==============================================================================
3945 
3946 extern __at(0x0415) __sfr TMR4;
3947 extern __at(0x0416) __sfr PR4;
3948 
3949 //==============================================================================
3950 //        T4CON Bits
3951 
3952 extern __at(0x0417) __sfr T4CON;
3953 
3954 typedef union
3955   {
3956   struct
3957     {
3958     unsigned T4CKPS0            : 1;
3959     unsigned T4CKPS1            : 1;
3960     unsigned TMR4ON             : 1;
3961     unsigned T4OUTPS0           : 1;
3962     unsigned T4OUTPS1           : 1;
3963     unsigned T4OUTPS2           : 1;
3964     unsigned T4OUTPS3           : 1;
3965     unsigned                    : 1;
3966     };
3967 
3968   struct
3969     {
3970     unsigned T4CKPS             : 2;
3971     unsigned                    : 6;
3972     };
3973 
3974   struct
3975     {
3976     unsigned                    : 3;
3977     unsigned T4OUTPS            : 4;
3978     unsigned                    : 1;
3979     };
3980   } __T4CONbits_t;
3981 
3982 extern __at(0x0417) volatile __T4CONbits_t T4CONbits;
3983 
3984 #define _T4CKPS0                0x01
3985 #define _T4CKPS1                0x02
3986 #define _TMR4ON                 0x04
3987 #define _T4OUTPS0               0x08
3988 #define _T4OUTPS1               0x10
3989 #define _T4OUTPS2               0x20
3990 #define _T4OUTPS3               0x40
3991 
3992 //==============================================================================
3993 
3994 extern __at(0x041C) __sfr TMR6;
3995 extern __at(0x041D) __sfr PR6;
3996 
3997 //==============================================================================
3998 //        T6CON Bits
3999 
4000 extern __at(0x041E) __sfr T6CON;
4001 
4002 typedef union
4003   {
4004   struct
4005     {
4006     unsigned T6CKPS0            : 1;
4007     unsigned T6CKPS1            : 1;
4008     unsigned TMR6ON             : 1;
4009     unsigned T6OUTPS0           : 1;
4010     unsigned T6OUTPS1           : 1;
4011     unsigned T6OUTPS2           : 1;
4012     unsigned T6OUTPS3           : 1;
4013     unsigned                    : 1;
4014     };
4015 
4016   struct
4017     {
4018     unsigned T6CKPS             : 2;
4019     unsigned                    : 6;
4020     };
4021 
4022   struct
4023     {
4024     unsigned                    : 3;
4025     unsigned T6OUTPS            : 4;
4026     unsigned                    : 1;
4027     };
4028   } __T6CONbits_t;
4029 
4030 extern __at(0x041E) volatile __T6CONbits_t T6CONbits;
4031 
4032 #define _T6CKPS0                0x01
4033 #define _T6CKPS1                0x02
4034 #define _TMR6ON                 0x04
4035 #define _T6OUTPS0               0x08
4036 #define _T6OUTPS1               0x10
4037 #define _T6OUTPS2               0x20
4038 #define _T6OUTPS3               0x40
4039 
4040 //==============================================================================
4041 
4042 
4043 //==============================================================================
4044 //        OPA1CON Bits
4045 
4046 extern __at(0x0511) __sfr OPA1CON;
4047 
4048 typedef union
4049   {
4050   struct
4051     {
4052     unsigned OPA1PCH0           : 1;
4053     unsigned OPA1PCH1           : 1;
4054     unsigned                    : 1;
4055     unsigned                    : 1;
4056     unsigned OPA1UG             : 1;
4057     unsigned                    : 1;
4058     unsigned OPA1SP             : 1;
4059     unsigned OPA1EN             : 1;
4060     };
4061 
4062   struct
4063     {
4064     unsigned OPA1PCH            : 2;
4065     unsigned                    : 6;
4066     };
4067   } __OPA1CONbits_t;
4068 
4069 extern __at(0x0511) volatile __OPA1CONbits_t OPA1CONbits;
4070 
4071 #define _OPA1PCH0               0x01
4072 #define _OPA1PCH1               0x02
4073 #define _OPA1UG                 0x10
4074 #define _OPA1SP                 0x40
4075 #define _OPA1EN                 0x80
4076 
4077 //==============================================================================
4078 
4079 
4080 //==============================================================================
4081 //        OPA2CON Bits
4082 
4083 extern __at(0x0515) __sfr OPA2CON;
4084 
4085 typedef union
4086   {
4087   struct
4088     {
4089     unsigned OPA2PCH0           : 1;
4090     unsigned OPA2PCH1           : 1;
4091     unsigned                    : 1;
4092     unsigned                    : 1;
4093     unsigned OPA2UG             : 1;
4094     unsigned                    : 1;
4095     unsigned OPA2SP             : 1;
4096     unsigned OPA2EN             : 1;
4097     };
4098 
4099   struct
4100     {
4101     unsigned OPA2PCH            : 2;
4102     unsigned                    : 6;
4103     };
4104   } __OPA2CONbits_t;
4105 
4106 extern __at(0x0515) volatile __OPA2CONbits_t OPA2CONbits;
4107 
4108 #define _OPA2PCH0               0x01
4109 #define _OPA2PCH1               0x02
4110 #define _OPA2UG                 0x10
4111 #define _OPA2SP                 0x40
4112 #define _OPA2EN                 0x80
4113 
4114 //==============================================================================
4115 
4116 
4117 //==============================================================================
4118 //        PWM3DCL Bits
4119 
4120 extern __at(0x0617) __sfr PWM3DCL;
4121 
4122 typedef union
4123   {
4124   struct
4125     {
4126     unsigned                    : 1;
4127     unsigned                    : 1;
4128     unsigned                    : 1;
4129     unsigned                    : 1;
4130     unsigned                    : 1;
4131     unsigned                    : 1;
4132     unsigned PWM3DCL0           : 1;
4133     unsigned PWM3DCL1           : 1;
4134     };
4135 
4136   struct
4137     {
4138     unsigned                    : 6;
4139     unsigned PWM3DCL            : 2;
4140     };
4141   } __PWM3DCLbits_t;
4142 
4143 extern __at(0x0617) volatile __PWM3DCLbits_t PWM3DCLbits;
4144 
4145 #define _PWM3DCL0               0x40
4146 #define _PWM3DCL1               0x80
4147 
4148 //==============================================================================
4149 
4150 
4151 //==============================================================================
4152 //        PWM3DCH Bits
4153 
4154 extern __at(0x0618) __sfr PWM3DCH;
4155 
4156 typedef struct
4157   {
4158   unsigned PWM3DCH0             : 1;
4159   unsigned PWM3DCH1             : 1;
4160   unsigned PWM3DCH2             : 1;
4161   unsigned PWM3DCH3             : 1;
4162   unsigned PWM3DCH4             : 1;
4163   unsigned PWM3DCH5             : 1;
4164   unsigned PWM3DCH6             : 1;
4165   unsigned PWM3DCH7             : 1;
4166   } __PWM3DCHbits_t;
4167 
4168 extern __at(0x0618) volatile __PWM3DCHbits_t PWM3DCHbits;
4169 
4170 #define _PWM3DCH0               0x01
4171 #define _PWM3DCH1               0x02
4172 #define _PWM3DCH2               0x04
4173 #define _PWM3DCH3               0x08
4174 #define _PWM3DCH4               0x10
4175 #define _PWM3DCH5               0x20
4176 #define _PWM3DCH6               0x40
4177 #define _PWM3DCH7               0x80
4178 
4179 //==============================================================================
4180 
4181 
4182 //==============================================================================
4183 //        PWM3CON Bits
4184 
4185 extern __at(0x0619) __sfr PWM3CON;
4186 
4187 typedef struct
4188   {
4189   unsigned                      : 1;
4190   unsigned                      : 1;
4191   unsigned                      : 1;
4192   unsigned                      : 1;
4193   unsigned PWM3POL              : 1;
4194   unsigned PWM3OUT              : 1;
4195   unsigned                      : 1;
4196   unsigned PWM3EN               : 1;
4197   } __PWM3CONbits_t;
4198 
4199 extern __at(0x0619) volatile __PWM3CONbits_t PWM3CONbits;
4200 
4201 #define _PWM3POL                0x10
4202 #define _PWM3OUT                0x20
4203 #define _PWM3EN                 0x80
4204 
4205 //==============================================================================
4206 
4207 
4208 //==============================================================================
4209 //        PWM3CON0 Bits
4210 
4211 extern __at(0x0619) __sfr PWM3CON0;
4212 
4213 typedef struct
4214   {
4215   unsigned                      : 1;
4216   unsigned                      : 1;
4217   unsigned                      : 1;
4218   unsigned                      : 1;
4219   unsigned PWM3POL              : 1;
4220   unsigned PWM3OUT              : 1;
4221   unsigned                      : 1;
4222   unsigned PWM3EN               : 1;
4223   } __PWM3CON0bits_t;
4224 
4225 extern __at(0x0619) volatile __PWM3CON0bits_t PWM3CON0bits;
4226 
4227 #define _PWM3CON0_PWM3POL       0x10
4228 #define _PWM3CON0_PWM3OUT       0x20
4229 #define _PWM3CON0_PWM3EN        0x80
4230 
4231 //==============================================================================
4232 
4233 
4234 //==============================================================================
4235 //        PWM4DCL Bits
4236 
4237 extern __at(0x061A) __sfr PWM4DCL;
4238 
4239 typedef union
4240   {
4241   struct
4242     {
4243     unsigned                    : 1;
4244     unsigned                    : 1;
4245     unsigned                    : 1;
4246     unsigned                    : 1;
4247     unsigned                    : 1;
4248     unsigned                    : 1;
4249     unsigned PWM4DCL0           : 1;
4250     unsigned PWM4DCL1           : 1;
4251     };
4252 
4253   struct
4254     {
4255     unsigned                    : 6;
4256     unsigned PWM4DCL            : 2;
4257     };
4258   } __PWM4DCLbits_t;
4259 
4260 extern __at(0x061A) volatile __PWM4DCLbits_t PWM4DCLbits;
4261 
4262 #define _PWM4DCL0               0x40
4263 #define _PWM4DCL1               0x80
4264 
4265 //==============================================================================
4266 
4267 
4268 //==============================================================================
4269 //        PWM4DCH Bits
4270 
4271 extern __at(0x061B) __sfr PWM4DCH;
4272 
4273 typedef struct
4274   {
4275   unsigned PWM4DCH0             : 1;
4276   unsigned PWM4DCH1             : 1;
4277   unsigned PWM4DCH2             : 1;
4278   unsigned PWM4DCH3             : 1;
4279   unsigned PWM4DCH4             : 1;
4280   unsigned PWM4DCH5             : 1;
4281   unsigned PWM4DCH6             : 1;
4282   unsigned PWM4DCH7             : 1;
4283   } __PWM4DCHbits_t;
4284 
4285 extern __at(0x061B) volatile __PWM4DCHbits_t PWM4DCHbits;
4286 
4287 #define _PWM4DCH0               0x01
4288 #define _PWM4DCH1               0x02
4289 #define _PWM4DCH2               0x04
4290 #define _PWM4DCH3               0x08
4291 #define _PWM4DCH4               0x10
4292 #define _PWM4DCH5               0x20
4293 #define _PWM4DCH6               0x40
4294 #define _PWM4DCH7               0x80
4295 
4296 //==============================================================================
4297 
4298 
4299 //==============================================================================
4300 //        PWM4CON Bits
4301 
4302 extern __at(0x061C) __sfr PWM4CON;
4303 
4304 typedef struct
4305   {
4306   unsigned                      : 1;
4307   unsigned                      : 1;
4308   unsigned                      : 1;
4309   unsigned                      : 1;
4310   unsigned PWM4POL              : 1;
4311   unsigned PWM4OUT              : 1;
4312   unsigned                      : 1;
4313   unsigned PWM4EN               : 1;
4314   } __PWM4CONbits_t;
4315 
4316 extern __at(0x061C) volatile __PWM4CONbits_t PWM4CONbits;
4317 
4318 #define _PWM4POL                0x10
4319 #define _PWM4OUT                0x20
4320 #define _PWM4EN                 0x80
4321 
4322 //==============================================================================
4323 
4324 
4325 //==============================================================================
4326 //        PWM4CON0 Bits
4327 
4328 extern __at(0x061C) __sfr PWM4CON0;
4329 
4330 typedef struct
4331   {
4332   unsigned                      : 1;
4333   unsigned                      : 1;
4334   unsigned                      : 1;
4335   unsigned                      : 1;
4336   unsigned PWM4POL              : 1;
4337   unsigned PWM4OUT              : 1;
4338   unsigned                      : 1;
4339   unsigned PWM4EN               : 1;
4340   } __PWM4CON0bits_t;
4341 
4342 extern __at(0x061C) volatile __PWM4CON0bits_t PWM4CON0bits;
4343 
4344 #define _PWM4CON0_PWM4POL       0x10
4345 #define _PWM4CON0_PWM4OUT       0x20
4346 #define _PWM4CON0_PWM4EN        0x80
4347 
4348 //==============================================================================
4349 
4350 
4351 //==============================================================================
4352 //        COG1PHR Bits
4353 
4354 extern __at(0x0691) __sfr COG1PHR;
4355 
4356 typedef union
4357   {
4358   struct
4359     {
4360     unsigned G1PHR0             : 1;
4361     unsigned G1PHR1             : 1;
4362     unsigned G1PHR2             : 1;
4363     unsigned G1PHR3             : 1;
4364     unsigned G1PHR4             : 1;
4365     unsigned G1PHR5             : 1;
4366     unsigned                    : 1;
4367     unsigned                    : 1;
4368     };
4369 
4370   struct
4371     {
4372     unsigned G1PHR              : 6;
4373     unsigned                    : 2;
4374     };
4375   } __COG1PHRbits_t;
4376 
4377 extern __at(0x0691) volatile __COG1PHRbits_t COG1PHRbits;
4378 
4379 #define _G1PHR0                 0x01
4380 #define _G1PHR1                 0x02
4381 #define _G1PHR2                 0x04
4382 #define _G1PHR3                 0x08
4383 #define _G1PHR4                 0x10
4384 #define _G1PHR5                 0x20
4385 
4386 //==============================================================================
4387 
4388 
4389 //==============================================================================
4390 //        COG1PHF Bits
4391 
4392 extern __at(0x0692) __sfr COG1PHF;
4393 
4394 typedef union
4395   {
4396   struct
4397     {
4398     unsigned G1PHF0             : 1;
4399     unsigned G1PHF1             : 1;
4400     unsigned G1PHF2             : 1;
4401     unsigned G1PHF3             : 1;
4402     unsigned G1PHF4             : 1;
4403     unsigned G1PHF5             : 1;
4404     unsigned                    : 1;
4405     unsigned                    : 1;
4406     };
4407 
4408   struct
4409     {
4410     unsigned G1PHF              : 6;
4411     unsigned                    : 2;
4412     };
4413   } __COG1PHFbits_t;
4414 
4415 extern __at(0x0692) volatile __COG1PHFbits_t COG1PHFbits;
4416 
4417 #define _G1PHF0                 0x01
4418 #define _G1PHF1                 0x02
4419 #define _G1PHF2                 0x04
4420 #define _G1PHF3                 0x08
4421 #define _G1PHF4                 0x10
4422 #define _G1PHF5                 0x20
4423 
4424 //==============================================================================
4425 
4426 
4427 //==============================================================================
4428 //        COG1BLKR Bits
4429 
4430 extern __at(0x0693) __sfr COG1BLKR;
4431 
4432 typedef union
4433   {
4434   struct
4435     {
4436     unsigned G1BLKR0            : 1;
4437     unsigned G1BLKR1            : 1;
4438     unsigned G1BLKR2            : 1;
4439     unsigned G1BLKR3            : 1;
4440     unsigned G1BLKR4            : 1;
4441     unsigned G1BLKR5            : 1;
4442     unsigned                    : 1;
4443     unsigned                    : 1;
4444     };
4445 
4446   struct
4447     {
4448     unsigned G1BLKR             : 6;
4449     unsigned                    : 2;
4450     };
4451   } __COG1BLKRbits_t;
4452 
4453 extern __at(0x0693) volatile __COG1BLKRbits_t COG1BLKRbits;
4454 
4455 #define _G1BLKR0                0x01
4456 #define _G1BLKR1                0x02
4457 #define _G1BLKR2                0x04
4458 #define _G1BLKR3                0x08
4459 #define _G1BLKR4                0x10
4460 #define _G1BLKR5                0x20
4461 
4462 //==============================================================================
4463 
4464 
4465 //==============================================================================
4466 //        COG1BLKF Bits
4467 
4468 extern __at(0x0694) __sfr COG1BLKF;
4469 
4470 typedef union
4471   {
4472   struct
4473     {
4474     unsigned G1BLKF0            : 1;
4475     unsigned G1BLKF1            : 1;
4476     unsigned G1BLKF2            : 1;
4477     unsigned G1BLKF3            : 1;
4478     unsigned G1BLKF4            : 1;
4479     unsigned G1BLKF5            : 1;
4480     unsigned                    : 1;
4481     unsigned                    : 1;
4482     };
4483 
4484   struct
4485     {
4486     unsigned G1BLKF             : 6;
4487     unsigned                    : 2;
4488     };
4489   } __COG1BLKFbits_t;
4490 
4491 extern __at(0x0694) volatile __COG1BLKFbits_t COG1BLKFbits;
4492 
4493 #define _G1BLKF0                0x01
4494 #define _G1BLKF1                0x02
4495 #define _G1BLKF2                0x04
4496 #define _G1BLKF3                0x08
4497 #define _G1BLKF4                0x10
4498 #define _G1BLKF5                0x20
4499 
4500 //==============================================================================
4501 
4502 
4503 //==============================================================================
4504 //        COG1DBR Bits
4505 
4506 extern __at(0x0695) __sfr COG1DBR;
4507 
4508 typedef union
4509   {
4510   struct
4511     {
4512     unsigned G1DBR0             : 1;
4513     unsigned G1DBR1             : 1;
4514     unsigned G1DBR2             : 1;
4515     unsigned G1DBR3             : 1;
4516     unsigned G1DBR4             : 1;
4517     unsigned G1DBR5             : 1;
4518     unsigned                    : 1;
4519     unsigned                    : 1;
4520     };
4521 
4522   struct
4523     {
4524     unsigned G1DBR              : 6;
4525     unsigned                    : 2;
4526     };
4527   } __COG1DBRbits_t;
4528 
4529 extern __at(0x0695) volatile __COG1DBRbits_t COG1DBRbits;
4530 
4531 #define _G1DBR0                 0x01
4532 #define _G1DBR1                 0x02
4533 #define _G1DBR2                 0x04
4534 #define _G1DBR3                 0x08
4535 #define _G1DBR4                 0x10
4536 #define _G1DBR5                 0x20
4537 
4538 //==============================================================================
4539 
4540 
4541 //==============================================================================
4542 //        COG1DBF Bits
4543 
4544 extern __at(0x0696) __sfr COG1DBF;
4545 
4546 typedef union
4547   {
4548   struct
4549     {
4550     unsigned G1DBF0             : 1;
4551     unsigned G1DBF1             : 1;
4552     unsigned G1DBF2             : 1;
4553     unsigned G1DBF3             : 1;
4554     unsigned G1DBF4             : 1;
4555     unsigned G1DBF5             : 1;
4556     unsigned                    : 1;
4557     unsigned                    : 1;
4558     };
4559 
4560   struct
4561     {
4562     unsigned G1DBF              : 6;
4563     unsigned                    : 2;
4564     };
4565   } __COG1DBFbits_t;
4566 
4567 extern __at(0x0696) volatile __COG1DBFbits_t COG1DBFbits;
4568 
4569 #define _G1DBF0                 0x01
4570 #define _G1DBF1                 0x02
4571 #define _G1DBF2                 0x04
4572 #define _G1DBF3                 0x08
4573 #define _G1DBF4                 0x10
4574 #define _G1DBF5                 0x20
4575 
4576 //==============================================================================
4577 
4578 
4579 //==============================================================================
4580 //        COG1CON0 Bits
4581 
4582 extern __at(0x0697) __sfr COG1CON0;
4583 
4584 typedef union
4585   {
4586   struct
4587     {
4588     unsigned G1MD0              : 1;
4589     unsigned G1MD1              : 1;
4590     unsigned G1MD2              : 1;
4591     unsigned G1CS0              : 1;
4592     unsigned G1CS1              : 1;
4593     unsigned                    : 1;
4594     unsigned G1LD               : 1;
4595     unsigned G1EN               : 1;
4596     };
4597 
4598   struct
4599     {
4600     unsigned G1MD               : 3;
4601     unsigned                    : 5;
4602     };
4603 
4604   struct
4605     {
4606     unsigned                    : 3;
4607     unsigned G1CS               : 2;
4608     unsigned                    : 3;
4609     };
4610   } __COG1CON0bits_t;
4611 
4612 extern __at(0x0697) volatile __COG1CON0bits_t COG1CON0bits;
4613 
4614 #define _G1MD0                  0x01
4615 #define _G1MD1                  0x02
4616 #define _G1MD2                  0x04
4617 #define _G1CS0                  0x08
4618 #define _G1CS1                  0x10
4619 #define _G1LD                   0x40
4620 #define _G1EN                   0x80
4621 
4622 //==============================================================================
4623 
4624 
4625 //==============================================================================
4626 //        COG1CON1 Bits
4627 
4628 extern __at(0x0698) __sfr COG1CON1;
4629 
4630 typedef struct
4631   {
4632   unsigned G1POLA               : 1;
4633   unsigned G1POLB               : 1;
4634   unsigned G1POLC               : 1;
4635   unsigned G1POLD               : 1;
4636   unsigned                      : 1;
4637   unsigned                      : 1;
4638   unsigned G1FDBS               : 1;
4639   unsigned G1RDBS               : 1;
4640   } __COG1CON1bits_t;
4641 
4642 extern __at(0x0698) volatile __COG1CON1bits_t COG1CON1bits;
4643 
4644 #define _G1POLA                 0x01
4645 #define _G1POLB                 0x02
4646 #define _G1POLC                 0x04
4647 #define _G1POLD                 0x08
4648 #define _G1FDBS                 0x40
4649 #define _G1RDBS                 0x80
4650 
4651 //==============================================================================
4652 
4653 
4654 //==============================================================================
4655 //        COG1RIS Bits
4656 
4657 extern __at(0x0699) __sfr COG1RIS;
4658 
4659 typedef union
4660   {
4661   struct
4662     {
4663     unsigned G1RIS0             : 1;
4664     unsigned G1RIS1             : 1;
4665     unsigned G1RIS2             : 1;
4666     unsigned G1RIS3             : 1;
4667     unsigned G1RIS4             : 1;
4668     unsigned G1RIS5             : 1;
4669     unsigned G1RIS6             : 1;
4670     unsigned                    : 1;
4671     };
4672 
4673   struct
4674     {
4675     unsigned G1RIS              : 7;
4676     unsigned                    : 1;
4677     };
4678   } __COG1RISbits_t;
4679 
4680 extern __at(0x0699) volatile __COG1RISbits_t COG1RISbits;
4681 
4682 #define _G1RIS0                 0x01
4683 #define _G1RIS1                 0x02
4684 #define _G1RIS2                 0x04
4685 #define _G1RIS3                 0x08
4686 #define _G1RIS4                 0x10
4687 #define _G1RIS5                 0x20
4688 #define _G1RIS6                 0x40
4689 
4690 //==============================================================================
4691 
4692 
4693 //==============================================================================
4694 //        COG1RSIM Bits
4695 
4696 extern __at(0x069A) __sfr COG1RSIM;
4697 
4698 typedef union
4699   {
4700   struct
4701     {
4702     unsigned G1RSIM0            : 1;
4703     unsigned G1RSIM1            : 1;
4704     unsigned G1RSIM2            : 1;
4705     unsigned G1RSIM3            : 1;
4706     unsigned G1RSIM4            : 1;
4707     unsigned G1RSIM5            : 1;
4708     unsigned G1RSIM6            : 1;
4709     unsigned                    : 1;
4710     };
4711 
4712   struct
4713     {
4714     unsigned G1RSIM             : 7;
4715     unsigned                    : 1;
4716     };
4717   } __COG1RSIMbits_t;
4718 
4719 extern __at(0x069A) volatile __COG1RSIMbits_t COG1RSIMbits;
4720 
4721 #define _G1RSIM0                0x01
4722 #define _G1RSIM1                0x02
4723 #define _G1RSIM2                0x04
4724 #define _G1RSIM3                0x08
4725 #define _G1RSIM4                0x10
4726 #define _G1RSIM5                0x20
4727 #define _G1RSIM6                0x40
4728 
4729 //==============================================================================
4730 
4731 
4732 //==============================================================================
4733 //        COG1FIS Bits
4734 
4735 extern __at(0x069B) __sfr COG1FIS;
4736 
4737 typedef union
4738   {
4739   struct
4740     {
4741     unsigned G1FIS0             : 1;
4742     unsigned G1FIS1             : 1;
4743     unsigned G1FIS2             : 1;
4744     unsigned G1FIS3             : 1;
4745     unsigned G1FIS4             : 1;
4746     unsigned G1FIS5             : 1;
4747     unsigned G1FIS6             : 1;
4748     unsigned                    : 1;
4749     };
4750 
4751   struct
4752     {
4753     unsigned G1FIS              : 7;
4754     unsigned                    : 1;
4755     };
4756   } __COG1FISbits_t;
4757 
4758 extern __at(0x069B) volatile __COG1FISbits_t COG1FISbits;
4759 
4760 #define _G1FIS0                 0x01
4761 #define _G1FIS1                 0x02
4762 #define _G1FIS2                 0x04
4763 #define _G1FIS3                 0x08
4764 #define _G1FIS4                 0x10
4765 #define _G1FIS5                 0x20
4766 #define _G1FIS6                 0x40
4767 
4768 //==============================================================================
4769 
4770 
4771 //==============================================================================
4772 //        COG1FSIM Bits
4773 
4774 extern __at(0x069C) __sfr COG1FSIM;
4775 
4776 typedef union
4777   {
4778   struct
4779     {
4780     unsigned G1FSIM0            : 1;
4781     unsigned G1FSIM1            : 1;
4782     unsigned G1FSIM2            : 1;
4783     unsigned G1FSIM3            : 1;
4784     unsigned G1FSIM4            : 1;
4785     unsigned G1FSIM5            : 1;
4786     unsigned G1FSIM6            : 1;
4787     unsigned                    : 1;
4788     };
4789 
4790   struct
4791     {
4792     unsigned G1FSIM             : 7;
4793     unsigned                    : 1;
4794     };
4795   } __COG1FSIMbits_t;
4796 
4797 extern __at(0x069C) volatile __COG1FSIMbits_t COG1FSIMbits;
4798 
4799 #define _G1FSIM0                0x01
4800 #define _G1FSIM1                0x02
4801 #define _G1FSIM2                0x04
4802 #define _G1FSIM3                0x08
4803 #define _G1FSIM4                0x10
4804 #define _G1FSIM5                0x20
4805 #define _G1FSIM6                0x40
4806 
4807 //==============================================================================
4808 
4809 
4810 //==============================================================================
4811 //        COG1ASD0 Bits
4812 
4813 extern __at(0x069D) __sfr COG1ASD0;
4814 
4815 typedef union
4816   {
4817   struct
4818     {
4819     unsigned                    : 1;
4820     unsigned                    : 1;
4821     unsigned G1ASDAC0           : 1;
4822     unsigned G1ASDAC1           : 1;
4823     unsigned G1ASDBD0           : 1;
4824     unsigned G1ASDBD1           : 1;
4825     unsigned G1ARSEN            : 1;
4826     unsigned G1ASE              : 1;
4827     };
4828 
4829   struct
4830     {
4831     unsigned                    : 2;
4832     unsigned G1ASDAC            : 2;
4833     unsigned                    : 4;
4834     };
4835 
4836   struct
4837     {
4838     unsigned                    : 4;
4839     unsigned G1ASDBD            : 2;
4840     unsigned                    : 2;
4841     };
4842   } __COG1ASD0bits_t;
4843 
4844 extern __at(0x069D) volatile __COG1ASD0bits_t COG1ASD0bits;
4845 
4846 #define _G1ASDAC0               0x04
4847 #define _G1ASDAC1               0x08
4848 #define _G1ASDBD0               0x10
4849 #define _G1ASDBD1               0x20
4850 #define _G1ARSEN                0x40
4851 #define _G1ASE                  0x80
4852 
4853 //==============================================================================
4854 
4855 
4856 //==============================================================================
4857 //        COG1ASD1 Bits
4858 
4859 extern __at(0x069E) __sfr COG1ASD1;
4860 
4861 typedef struct
4862   {
4863   unsigned G1AS0E               : 1;
4864   unsigned G1AS1E               : 1;
4865   unsigned G1AS2E               : 1;
4866   unsigned G1AS3E               : 1;
4867   unsigned                      : 1;
4868   unsigned                      : 1;
4869   unsigned                      : 1;
4870   unsigned                      : 1;
4871   } __COG1ASD1bits_t;
4872 
4873 extern __at(0x069E) volatile __COG1ASD1bits_t COG1ASD1bits;
4874 
4875 #define _G1AS0E                 0x01
4876 #define _G1AS1E                 0x02
4877 #define _G1AS2E                 0x04
4878 #define _G1AS3E                 0x08
4879 
4880 //==============================================================================
4881 
4882 
4883 //==============================================================================
4884 //        COG1STR Bits
4885 
4886 extern __at(0x069F) __sfr COG1STR;
4887 
4888 typedef struct
4889   {
4890   unsigned G1STRA               : 1;
4891   unsigned G1STRB               : 1;
4892   unsigned G1STRC               : 1;
4893   unsigned G1STRD               : 1;
4894   unsigned G1SDATA              : 1;
4895   unsigned G1SDATB              : 1;
4896   unsigned G1SDATC              : 1;
4897   unsigned G1SDATD              : 1;
4898   } __COG1STRbits_t;
4899 
4900 extern __at(0x069F) volatile __COG1STRbits_t COG1STRbits;
4901 
4902 #define _G1STRA                 0x01
4903 #define _G1STRB                 0x02
4904 #define _G1STRC                 0x04
4905 #define _G1STRD                 0x08
4906 #define _G1SDATA                0x10
4907 #define _G1SDATB                0x20
4908 #define _G1SDATC                0x40
4909 #define _G1SDATD                0x80
4910 
4911 //==============================================================================
4912 
4913 
4914 //==============================================================================
4915 //        PPSLOCK Bits
4916 
4917 extern __at(0x0E0F) __sfr PPSLOCK;
4918 
4919 typedef struct
4920   {
4921   unsigned PPSLOCKED            : 1;
4922   unsigned                      : 1;
4923   unsigned                      : 1;
4924   unsigned                      : 1;
4925   unsigned                      : 1;
4926   unsigned                      : 1;
4927   unsigned                      : 1;
4928   unsigned                      : 1;
4929   } __PPSLOCKbits_t;
4930 
4931 extern __at(0x0E0F) volatile __PPSLOCKbits_t PPSLOCKbits;
4932 
4933 #define _PPSLOCKED              0x01
4934 
4935 //==============================================================================
4936 
4937 extern __at(0x0E10) __sfr INTPPS;
4938 extern __at(0x0E11) __sfr T0CKIPPS;
4939 extern __at(0x0E12) __sfr T1CKIPPS;
4940 extern __at(0x0E13) __sfr T1GPPS;
4941 extern __at(0x0E14) __sfr CCP1PPS;
4942 extern __at(0x0E15) __sfr CCP2PPS;
4943 extern __at(0x0E17) __sfr COGINPPS;
4944 extern __at(0x0E20) __sfr SSPCLKPPS;
4945 extern __at(0x0E21) __sfr SSPDATPPS;
4946 extern __at(0x0E22) __sfr SSPSSPPS;
4947 extern __at(0x0E24) __sfr RXPPS;
4948 extern __at(0x0E25) __sfr CKPPS;
4949 extern __at(0x0E28) __sfr CLCIN0PPS;
4950 extern __at(0x0E29) __sfr CLCIN1PPS;
4951 extern __at(0x0E2A) __sfr CLCIN2PPS;
4952 extern __at(0x0E2B) __sfr CLCIN3PPS;
4953 extern __at(0x0E90) __sfr RA0PPS;
4954 extern __at(0x0E91) __sfr RA1PPS;
4955 extern __at(0x0E92) __sfr RA2PPS;
4956 extern __at(0x0E94) __sfr RA4PPS;
4957 extern __at(0x0E95) __sfr RA5PPS;
4958 extern __at(0x0E9C) __sfr RB4PPS;
4959 extern __at(0x0E9D) __sfr RB5PPS;
4960 extern __at(0x0E9E) __sfr RB6PPS;
4961 extern __at(0x0E9F) __sfr RB7PPS;
4962 extern __at(0x0EA0) __sfr RC0PPS;
4963 extern __at(0x0EA1) __sfr RC1PPS;
4964 extern __at(0x0EA2) __sfr RC2PPS;
4965 extern __at(0x0EA3) __sfr RC3PPS;
4966 extern __at(0x0EA4) __sfr RC4PPS;
4967 extern __at(0x0EA5) __sfr RC5PPS;
4968 extern __at(0x0EA6) __sfr RC6PPS;
4969 extern __at(0x0EA7) __sfr RC7PPS;
4970 
4971 //==============================================================================
4972 //        CLCDATA Bits
4973 
4974 extern __at(0x0F0F) __sfr CLCDATA;
4975 
4976 typedef struct
4977   {
4978   unsigned MCLC1OUT             : 1;
4979   unsigned MCLC2OUT             : 1;
4980   unsigned MCLC3OUT             : 1;
4981   unsigned                      : 1;
4982   unsigned                      : 1;
4983   unsigned                      : 1;
4984   unsigned                      : 1;
4985   unsigned                      : 1;
4986   } __CLCDATAbits_t;
4987 
4988 extern __at(0x0F0F) volatile __CLCDATAbits_t CLCDATAbits;
4989 
4990 #define _MCLC1OUT               0x01
4991 #define _MCLC2OUT               0x02
4992 #define _MCLC3OUT               0x04
4993 
4994 //==============================================================================
4995 
4996 
4997 //==============================================================================
4998 //        CLC1CON Bits
4999 
5000 extern __at(0x0F10) __sfr CLC1CON;
5001 
5002 typedef union
5003   {
5004   struct
5005     {
5006     unsigned LC1MODE0           : 1;
5007     unsigned LC1MODE1           : 1;
5008     unsigned LC1MODE2           : 1;
5009     unsigned LC1INTN            : 1;
5010     unsigned LC1INTP            : 1;
5011     unsigned LC1OUT             : 1;
5012     unsigned                    : 1;
5013     unsigned LC1EN              : 1;
5014     };
5015 
5016   struct
5017     {
5018     unsigned MODE0              : 1;
5019     unsigned MODE1              : 1;
5020     unsigned MODE2              : 1;
5021     unsigned INTN               : 1;
5022     unsigned INTP               : 1;
5023     unsigned OUT                : 1;
5024     unsigned                    : 1;
5025     unsigned EN                 : 1;
5026     };
5027 
5028   struct
5029     {
5030     unsigned LC1MODE            : 3;
5031     unsigned                    : 5;
5032     };
5033 
5034   struct
5035     {
5036     unsigned MODE               : 3;
5037     unsigned                    : 5;
5038     };
5039   } __CLC1CONbits_t;
5040 
5041 extern __at(0x0F10) volatile __CLC1CONbits_t CLC1CONbits;
5042 
5043 #define _LC1MODE0               0x01
5044 #define _MODE0                  0x01
5045 #define _LC1MODE1               0x02
5046 #define _MODE1                  0x02
5047 #define _LC1MODE2               0x04
5048 #define _MODE2                  0x04
5049 #define _LC1INTN                0x08
5050 #define _INTN                   0x08
5051 #define _LC1INTP                0x10
5052 #define _INTP                   0x10
5053 #define _LC1OUT                 0x20
5054 #define _OUT                    0x20
5055 #define _LC1EN                  0x80
5056 #define _EN                     0x80
5057 
5058 //==============================================================================
5059 
5060 
5061 //==============================================================================
5062 //        CLC1POL Bits
5063 
5064 extern __at(0x0F11) __sfr CLC1POL;
5065 
5066 typedef union
5067   {
5068   struct
5069     {
5070     unsigned LC1G1POL           : 1;
5071     unsigned LC1G2POL           : 1;
5072     unsigned LC1G3POL           : 1;
5073     unsigned LC1G4POL           : 1;
5074     unsigned                    : 1;
5075     unsigned                    : 1;
5076     unsigned                    : 1;
5077     unsigned LC1POL             : 1;
5078     };
5079 
5080   struct
5081     {
5082     unsigned G1POL              : 1;
5083     unsigned G2POL              : 1;
5084     unsigned G3POL              : 1;
5085     unsigned G4POL              : 1;
5086     unsigned                    : 1;
5087     unsigned                    : 1;
5088     unsigned                    : 1;
5089     unsigned POL                : 1;
5090     };
5091   } __CLC1POLbits_t;
5092 
5093 extern __at(0x0F11) volatile __CLC1POLbits_t CLC1POLbits;
5094 
5095 #define _LC1G1POL               0x01
5096 #define _G1POL                  0x01
5097 #define _LC1G2POL               0x02
5098 #define _G2POL                  0x02
5099 #define _LC1G3POL               0x04
5100 #define _G3POL                  0x04
5101 #define _LC1G4POL               0x08
5102 #define _G4POL                  0x08
5103 #define _LC1POL                 0x80
5104 #define _POL                    0x80
5105 
5106 //==============================================================================
5107 
5108 
5109 //==============================================================================
5110 //        CLC1SEL0 Bits
5111 
5112 extern __at(0x0F12) __sfr CLC1SEL0;
5113 
5114 typedef union
5115   {
5116   struct
5117     {
5118     unsigned LC1D1S0            : 1;
5119     unsigned LC1D1S1            : 1;
5120     unsigned LC1D1S2            : 1;
5121     unsigned LC1D1S3            : 1;
5122     unsigned LC1D1S4            : 1;
5123     unsigned                    : 1;
5124     unsigned                    : 1;
5125     unsigned                    : 1;
5126     };
5127 
5128   struct
5129     {
5130     unsigned D1S0               : 1;
5131     unsigned D1S1               : 1;
5132     unsigned D1S2               : 1;
5133     unsigned D1S3               : 1;
5134     unsigned D1S4               : 1;
5135     unsigned                    : 1;
5136     unsigned                    : 1;
5137     unsigned                    : 1;
5138     };
5139 
5140   struct
5141     {
5142     unsigned LC1D1S             : 5;
5143     unsigned                    : 3;
5144     };
5145 
5146   struct
5147     {
5148     unsigned D1S                : 5;
5149     unsigned                    : 3;
5150     };
5151   } __CLC1SEL0bits_t;
5152 
5153 extern __at(0x0F12) volatile __CLC1SEL0bits_t CLC1SEL0bits;
5154 
5155 #define _LC1D1S0                0x01
5156 #define _D1S0                   0x01
5157 #define _LC1D1S1                0x02
5158 #define _D1S1                   0x02
5159 #define _LC1D1S2                0x04
5160 #define _D1S2                   0x04
5161 #define _LC1D1S3                0x08
5162 #define _D1S3                   0x08
5163 #define _LC1D1S4                0x10
5164 #define _D1S4                   0x10
5165 
5166 //==============================================================================
5167 
5168 
5169 //==============================================================================
5170 //        CLC1SEL1 Bits
5171 
5172 extern __at(0x0F13) __sfr CLC1SEL1;
5173 
5174 typedef union
5175   {
5176   struct
5177     {
5178     unsigned LC1D2S0            : 1;
5179     unsigned LC1D2S1            : 1;
5180     unsigned LC1D2S2            : 1;
5181     unsigned LC1D2S3            : 1;
5182     unsigned LC1D2S4            : 1;
5183     unsigned                    : 1;
5184     unsigned                    : 1;
5185     unsigned                    : 1;
5186     };
5187 
5188   struct
5189     {
5190     unsigned D2S0               : 1;
5191     unsigned D2S1               : 1;
5192     unsigned D2S2               : 1;
5193     unsigned D2S3               : 1;
5194     unsigned D2S4               : 1;
5195     unsigned                    : 1;
5196     unsigned                    : 1;
5197     unsigned                    : 1;
5198     };
5199 
5200   struct
5201     {
5202     unsigned D2S                : 5;
5203     unsigned                    : 3;
5204     };
5205 
5206   struct
5207     {
5208     unsigned LC1D2S             : 5;
5209     unsigned                    : 3;
5210     };
5211   } __CLC1SEL1bits_t;
5212 
5213 extern __at(0x0F13) volatile __CLC1SEL1bits_t CLC1SEL1bits;
5214 
5215 #define _LC1D2S0                0x01
5216 #define _D2S0                   0x01
5217 #define _LC1D2S1                0x02
5218 #define _D2S1                   0x02
5219 #define _LC1D2S2                0x04
5220 #define _D2S2                   0x04
5221 #define _LC1D2S3                0x08
5222 #define _D2S3                   0x08
5223 #define _LC1D2S4                0x10
5224 #define _D2S4                   0x10
5225 
5226 //==============================================================================
5227 
5228 
5229 //==============================================================================
5230 //        CLC1SEL2 Bits
5231 
5232 extern __at(0x0F14) __sfr CLC1SEL2;
5233 
5234 typedef union
5235   {
5236   struct
5237     {
5238     unsigned LC1D3S0            : 1;
5239     unsigned LC1D3S1            : 1;
5240     unsigned LC1D3S2            : 1;
5241     unsigned LC1D3S3            : 1;
5242     unsigned LC1D3S4            : 1;
5243     unsigned                    : 1;
5244     unsigned                    : 1;
5245     unsigned                    : 1;
5246     };
5247 
5248   struct
5249     {
5250     unsigned D3S0               : 1;
5251     unsigned D3S1               : 1;
5252     unsigned D3S2               : 1;
5253     unsigned D3S3               : 1;
5254     unsigned D3S4               : 1;
5255     unsigned                    : 1;
5256     unsigned                    : 1;
5257     unsigned                    : 1;
5258     };
5259 
5260   struct
5261     {
5262     unsigned D3S                : 5;
5263     unsigned                    : 3;
5264     };
5265 
5266   struct
5267     {
5268     unsigned LC1D3S             : 5;
5269     unsigned                    : 3;
5270     };
5271   } __CLC1SEL2bits_t;
5272 
5273 extern __at(0x0F14) volatile __CLC1SEL2bits_t CLC1SEL2bits;
5274 
5275 #define _LC1D3S0                0x01
5276 #define _D3S0                   0x01
5277 #define _LC1D3S1                0x02
5278 #define _D3S1                   0x02
5279 #define _LC1D3S2                0x04
5280 #define _D3S2                   0x04
5281 #define _LC1D3S3                0x08
5282 #define _D3S3                   0x08
5283 #define _LC1D3S4                0x10
5284 #define _D3S4                   0x10
5285 
5286 //==============================================================================
5287 
5288 
5289 //==============================================================================
5290 //        CLC1SEL3 Bits
5291 
5292 extern __at(0x0F15) __sfr CLC1SEL3;
5293 
5294 typedef union
5295   {
5296   struct
5297     {
5298     unsigned LC1D4S0            : 1;
5299     unsigned LC1D4S1            : 1;
5300     unsigned LC1D4S2            : 1;
5301     unsigned LC1D4S3            : 1;
5302     unsigned LC1D4S4            : 1;
5303     unsigned                    : 1;
5304     unsigned                    : 1;
5305     unsigned                    : 1;
5306     };
5307 
5308   struct
5309     {
5310     unsigned D4S0               : 1;
5311     unsigned D4S1               : 1;
5312     unsigned D4S2               : 1;
5313     unsigned D4S3               : 1;
5314     unsigned D4S4               : 1;
5315     unsigned                    : 1;
5316     unsigned                    : 1;
5317     unsigned                    : 1;
5318     };
5319 
5320   struct
5321     {
5322     unsigned LC1D4S             : 5;
5323     unsigned                    : 3;
5324     };
5325 
5326   struct
5327     {
5328     unsigned D4S                : 5;
5329     unsigned                    : 3;
5330     };
5331   } __CLC1SEL3bits_t;
5332 
5333 extern __at(0x0F15) volatile __CLC1SEL3bits_t CLC1SEL3bits;
5334 
5335 #define _LC1D4S0                0x01
5336 #define _D4S0                   0x01
5337 #define _LC1D4S1                0x02
5338 #define _D4S1                   0x02
5339 #define _LC1D4S2                0x04
5340 #define _D4S2                   0x04
5341 #define _LC1D4S3                0x08
5342 #define _D4S3                   0x08
5343 #define _LC1D4S4                0x10
5344 #define _D4S4                   0x10
5345 
5346 //==============================================================================
5347 
5348 
5349 //==============================================================================
5350 //        CLC1GLS0 Bits
5351 
5352 extern __at(0x0F16) __sfr CLC1GLS0;
5353 
5354 typedef union
5355   {
5356   struct
5357     {
5358     unsigned LC1G1D1N           : 1;
5359     unsigned LC1G1D1T           : 1;
5360     unsigned LC1G1D2N           : 1;
5361     unsigned LC1G1D2T           : 1;
5362     unsigned LC1G1D3N           : 1;
5363     unsigned LC1G1D3T           : 1;
5364     unsigned LC1G1D4N           : 1;
5365     unsigned LC1G1D4T           : 1;
5366     };
5367 
5368   struct
5369     {
5370     unsigned D1N                : 1;
5371     unsigned D1T                : 1;
5372     unsigned D2N                : 1;
5373     unsigned D2T                : 1;
5374     unsigned D3N                : 1;
5375     unsigned D3T                : 1;
5376     unsigned D4N                : 1;
5377     unsigned D4T                : 1;
5378     };
5379   } __CLC1GLS0bits_t;
5380 
5381 extern __at(0x0F16) volatile __CLC1GLS0bits_t CLC1GLS0bits;
5382 
5383 #define _LC1G1D1N               0x01
5384 #define _D1N                    0x01
5385 #define _LC1G1D1T               0x02
5386 #define _D1T                    0x02
5387 #define _LC1G1D2N               0x04
5388 #define _D2N                    0x04
5389 #define _LC1G1D2T               0x08
5390 #define _D2T                    0x08
5391 #define _LC1G1D3N               0x10
5392 #define _D3N                    0x10
5393 #define _LC1G1D3T               0x20
5394 #define _D3T                    0x20
5395 #define _LC1G1D4N               0x40
5396 #define _D4N                    0x40
5397 #define _LC1G1D4T               0x80
5398 #define _D4T                    0x80
5399 
5400 //==============================================================================
5401 
5402 
5403 //==============================================================================
5404 //        CLC1GLS1 Bits
5405 
5406 extern __at(0x0F17) __sfr CLC1GLS1;
5407 
5408 typedef union
5409   {
5410   struct
5411     {
5412     unsigned LC1G2D1N           : 1;
5413     unsigned LC1G2D1T           : 1;
5414     unsigned LC1G2D2N           : 1;
5415     unsigned LC1G2D2T           : 1;
5416     unsigned LC1G2D3N           : 1;
5417     unsigned LC1G2D3T           : 1;
5418     unsigned LC1G2D4N           : 1;
5419     unsigned LC1G2D4T           : 1;
5420     };
5421 
5422   struct
5423     {
5424     unsigned D1N                : 1;
5425     unsigned D1T                : 1;
5426     unsigned D2N                : 1;
5427     unsigned D2T                : 1;
5428     unsigned D3N                : 1;
5429     unsigned D3T                : 1;
5430     unsigned D4N                : 1;
5431     unsigned D4T                : 1;
5432     };
5433   } __CLC1GLS1bits_t;
5434 
5435 extern __at(0x0F17) volatile __CLC1GLS1bits_t CLC1GLS1bits;
5436 
5437 #define _CLC1GLS1_LC1G2D1N      0x01
5438 #define _CLC1GLS1_D1N           0x01
5439 #define _CLC1GLS1_LC1G2D1T      0x02
5440 #define _CLC1GLS1_D1T           0x02
5441 #define _CLC1GLS1_LC1G2D2N      0x04
5442 #define _CLC1GLS1_D2N           0x04
5443 #define _CLC1GLS1_LC1G2D2T      0x08
5444 #define _CLC1GLS1_D2T           0x08
5445 #define _CLC1GLS1_LC1G2D3N      0x10
5446 #define _CLC1GLS1_D3N           0x10
5447 #define _CLC1GLS1_LC1G2D3T      0x20
5448 #define _CLC1GLS1_D3T           0x20
5449 #define _CLC1GLS1_LC1G2D4N      0x40
5450 #define _CLC1GLS1_D4N           0x40
5451 #define _CLC1GLS1_LC1G2D4T      0x80
5452 #define _CLC1GLS1_D4T           0x80
5453 
5454 //==============================================================================
5455 
5456 
5457 //==============================================================================
5458 //        CLC1GLS2 Bits
5459 
5460 extern __at(0x0F18) __sfr CLC1GLS2;
5461 
5462 typedef union
5463   {
5464   struct
5465     {
5466     unsigned LC1G3D1N           : 1;
5467     unsigned LC1G3D1T           : 1;
5468     unsigned LC1G3D2N           : 1;
5469     unsigned LC1G3D2T           : 1;
5470     unsigned LC1G3D3N           : 1;
5471     unsigned LC1G3D3T           : 1;
5472     unsigned LC1G3D4N           : 1;
5473     unsigned LC1G3D4T           : 1;
5474     };
5475 
5476   struct
5477     {
5478     unsigned D1N                : 1;
5479     unsigned D1T                : 1;
5480     unsigned D2N                : 1;
5481     unsigned D2T                : 1;
5482     unsigned D3N                : 1;
5483     unsigned D3T                : 1;
5484     unsigned D4N                : 1;
5485     unsigned D4T                : 1;
5486     };
5487   } __CLC1GLS2bits_t;
5488 
5489 extern __at(0x0F18) volatile __CLC1GLS2bits_t CLC1GLS2bits;
5490 
5491 #define _CLC1GLS2_LC1G3D1N      0x01
5492 #define _CLC1GLS2_D1N           0x01
5493 #define _CLC1GLS2_LC1G3D1T      0x02
5494 #define _CLC1GLS2_D1T           0x02
5495 #define _CLC1GLS2_LC1G3D2N      0x04
5496 #define _CLC1GLS2_D2N           0x04
5497 #define _CLC1GLS2_LC1G3D2T      0x08
5498 #define _CLC1GLS2_D2T           0x08
5499 #define _CLC1GLS2_LC1G3D3N      0x10
5500 #define _CLC1GLS2_D3N           0x10
5501 #define _CLC1GLS2_LC1G3D3T      0x20
5502 #define _CLC1GLS2_D3T           0x20
5503 #define _CLC1GLS2_LC1G3D4N      0x40
5504 #define _CLC1GLS2_D4N           0x40
5505 #define _CLC1GLS2_LC1G3D4T      0x80
5506 #define _CLC1GLS2_D4T           0x80
5507 
5508 //==============================================================================
5509 
5510 
5511 //==============================================================================
5512 //        CLC1GLS3 Bits
5513 
5514 extern __at(0x0F19) __sfr CLC1GLS3;
5515 
5516 typedef union
5517   {
5518   struct
5519     {
5520     unsigned LC1G4D1N           : 1;
5521     unsigned LC1G4D1T           : 1;
5522     unsigned LC1G4D2N           : 1;
5523     unsigned LC1G4D2T           : 1;
5524     unsigned LC1G4D3N           : 1;
5525     unsigned LC1G4D3T           : 1;
5526     unsigned LC1G4D4N           : 1;
5527     unsigned LC1G4D4T           : 1;
5528     };
5529 
5530   struct
5531     {
5532     unsigned G4D1N              : 1;
5533     unsigned G4D1T              : 1;
5534     unsigned G4D2N              : 1;
5535     unsigned G4D2T              : 1;
5536     unsigned G4D3N              : 1;
5537     unsigned G4D3T              : 1;
5538     unsigned G4D4N              : 1;
5539     unsigned G4D4T              : 1;
5540     };
5541   } __CLC1GLS3bits_t;
5542 
5543 extern __at(0x0F19) volatile __CLC1GLS3bits_t CLC1GLS3bits;
5544 
5545 #define _LC1G4D1N               0x01
5546 #define _G4D1N                  0x01
5547 #define _LC1G4D1T               0x02
5548 #define _G4D1T                  0x02
5549 #define _LC1G4D2N               0x04
5550 #define _G4D2N                  0x04
5551 #define _LC1G4D2T               0x08
5552 #define _G4D2T                  0x08
5553 #define _LC1G4D3N               0x10
5554 #define _G4D3N                  0x10
5555 #define _LC1G4D3T               0x20
5556 #define _G4D3T                  0x20
5557 #define _LC1G4D4N               0x40
5558 #define _G4D4N                  0x40
5559 #define _LC1G4D4T               0x80
5560 #define _G4D4T                  0x80
5561 
5562 //==============================================================================
5563 
5564 
5565 //==============================================================================
5566 //        CLC2CON Bits
5567 
5568 extern __at(0x0F1A) __sfr CLC2CON;
5569 
5570 typedef union
5571   {
5572   struct
5573     {
5574     unsigned LC2MODE0           : 1;
5575     unsigned LC2MODE1           : 1;
5576     unsigned LC2MODE2           : 1;
5577     unsigned LC2INTN            : 1;
5578     unsigned LC2INTP            : 1;
5579     unsigned LC2OUT             : 1;
5580     unsigned                    : 1;
5581     unsigned LC2EN              : 1;
5582     };
5583 
5584   struct
5585     {
5586     unsigned MODE0              : 1;
5587     unsigned MODE1              : 1;
5588     unsigned MODE2              : 1;
5589     unsigned INTN               : 1;
5590     unsigned INTP               : 1;
5591     unsigned OUT                : 1;
5592     unsigned                    : 1;
5593     unsigned EN                 : 1;
5594     };
5595 
5596   struct
5597     {
5598     unsigned LC2MODE            : 3;
5599     unsigned                    : 5;
5600     };
5601 
5602   struct
5603     {
5604     unsigned MODE               : 3;
5605     unsigned                    : 5;
5606     };
5607   } __CLC2CONbits_t;
5608 
5609 extern __at(0x0F1A) volatile __CLC2CONbits_t CLC2CONbits;
5610 
5611 #define _CLC2CON_LC2MODE0       0x01
5612 #define _CLC2CON_MODE0          0x01
5613 #define _CLC2CON_LC2MODE1       0x02
5614 #define _CLC2CON_MODE1          0x02
5615 #define _CLC2CON_LC2MODE2       0x04
5616 #define _CLC2CON_MODE2          0x04
5617 #define _CLC2CON_LC2INTN        0x08
5618 #define _CLC2CON_INTN           0x08
5619 #define _CLC2CON_LC2INTP        0x10
5620 #define _CLC2CON_INTP           0x10
5621 #define _CLC2CON_LC2OUT         0x20
5622 #define _CLC2CON_OUT            0x20
5623 #define _CLC2CON_LC2EN          0x80
5624 #define _CLC2CON_EN             0x80
5625 
5626 //==============================================================================
5627 
5628 
5629 //==============================================================================
5630 //        CLC2POL Bits
5631 
5632 extern __at(0x0F1B) __sfr CLC2POL;
5633 
5634 typedef union
5635   {
5636   struct
5637     {
5638     unsigned LC2G1POL           : 1;
5639     unsigned LC2G2POL           : 1;
5640     unsigned LC2G3POL           : 1;
5641     unsigned LC2G4POL           : 1;
5642     unsigned                    : 1;
5643     unsigned                    : 1;
5644     unsigned                    : 1;
5645     unsigned LC2POL             : 1;
5646     };
5647 
5648   struct
5649     {
5650     unsigned G1POL              : 1;
5651     unsigned G2POL              : 1;
5652     unsigned G3POL              : 1;
5653     unsigned G4POL              : 1;
5654     unsigned                    : 1;
5655     unsigned                    : 1;
5656     unsigned                    : 1;
5657     unsigned POL                : 1;
5658     };
5659   } __CLC2POLbits_t;
5660 
5661 extern __at(0x0F1B) volatile __CLC2POLbits_t CLC2POLbits;
5662 
5663 #define _CLC2POL_LC2G1POL       0x01
5664 #define _CLC2POL_G1POL          0x01
5665 #define _CLC2POL_LC2G2POL       0x02
5666 #define _CLC2POL_G2POL          0x02
5667 #define _CLC2POL_LC2G3POL       0x04
5668 #define _CLC2POL_G3POL          0x04
5669 #define _CLC2POL_LC2G4POL       0x08
5670 #define _CLC2POL_G4POL          0x08
5671 #define _CLC2POL_LC2POL         0x80
5672 #define _CLC2POL_POL            0x80
5673 
5674 //==============================================================================
5675 
5676 
5677 //==============================================================================
5678 //        CLC2SEL0 Bits
5679 
5680 extern __at(0x0F1C) __sfr CLC2SEL0;
5681 
5682 typedef union
5683   {
5684   struct
5685     {
5686     unsigned LC2D1S0            : 1;
5687     unsigned LC2D1S1            : 1;
5688     unsigned LC2D1S2            : 1;
5689     unsigned LC2D1S3            : 1;
5690     unsigned LC2D1S4            : 1;
5691     unsigned                    : 1;
5692     unsigned                    : 1;
5693     unsigned                    : 1;
5694     };
5695 
5696   struct
5697     {
5698     unsigned D1S0               : 1;
5699     unsigned D1S1               : 1;
5700     unsigned D1S2               : 1;
5701     unsigned D1S3               : 1;
5702     unsigned D1S4               : 1;
5703     unsigned                    : 1;
5704     unsigned                    : 1;
5705     unsigned                    : 1;
5706     };
5707 
5708   struct
5709     {
5710     unsigned LC2D1S             : 5;
5711     unsigned                    : 3;
5712     };
5713 
5714   struct
5715     {
5716     unsigned D1S                : 5;
5717     unsigned                    : 3;
5718     };
5719   } __CLC2SEL0bits_t;
5720 
5721 extern __at(0x0F1C) volatile __CLC2SEL0bits_t CLC2SEL0bits;
5722 
5723 #define _CLC2SEL0_LC2D1S0       0x01
5724 #define _CLC2SEL0_D1S0          0x01
5725 #define _CLC2SEL0_LC2D1S1       0x02
5726 #define _CLC2SEL0_D1S1          0x02
5727 #define _CLC2SEL0_LC2D1S2       0x04
5728 #define _CLC2SEL0_D1S2          0x04
5729 #define _CLC2SEL0_LC2D1S3       0x08
5730 #define _CLC2SEL0_D1S3          0x08
5731 #define _CLC2SEL0_LC2D1S4       0x10
5732 #define _CLC2SEL0_D1S4          0x10
5733 
5734 //==============================================================================
5735 
5736 
5737 //==============================================================================
5738 //        CLC2SEL1 Bits
5739 
5740 extern __at(0x0F1D) __sfr CLC2SEL1;
5741 
5742 typedef union
5743   {
5744   struct
5745     {
5746     unsigned LC2D2S0            : 1;
5747     unsigned LC2D2S1            : 1;
5748     unsigned LC2D2S2            : 1;
5749     unsigned LC2D2S3            : 1;
5750     unsigned LC2D2S4            : 1;
5751     unsigned                    : 1;
5752     unsigned                    : 1;
5753     unsigned                    : 1;
5754     };
5755 
5756   struct
5757     {
5758     unsigned D2S0               : 1;
5759     unsigned D2S1               : 1;
5760     unsigned D2S2               : 1;
5761     unsigned D2S3               : 1;
5762     unsigned D2S4               : 1;
5763     unsigned                    : 1;
5764     unsigned                    : 1;
5765     unsigned                    : 1;
5766     };
5767 
5768   struct
5769     {
5770     unsigned LC2D2S             : 5;
5771     unsigned                    : 3;
5772     };
5773 
5774   struct
5775     {
5776     unsigned D2S                : 5;
5777     unsigned                    : 3;
5778     };
5779   } __CLC2SEL1bits_t;
5780 
5781 extern __at(0x0F1D) volatile __CLC2SEL1bits_t CLC2SEL1bits;
5782 
5783 #define _CLC2SEL1_LC2D2S0       0x01
5784 #define _CLC2SEL1_D2S0          0x01
5785 #define _CLC2SEL1_LC2D2S1       0x02
5786 #define _CLC2SEL1_D2S1          0x02
5787 #define _CLC2SEL1_LC2D2S2       0x04
5788 #define _CLC2SEL1_D2S2          0x04
5789 #define _CLC2SEL1_LC2D2S3       0x08
5790 #define _CLC2SEL1_D2S3          0x08
5791 #define _CLC2SEL1_LC2D2S4       0x10
5792 #define _CLC2SEL1_D2S4          0x10
5793 
5794 //==============================================================================
5795 
5796 
5797 //==============================================================================
5798 //        CLC2SEL2 Bits
5799 
5800 extern __at(0x0F1E) __sfr CLC2SEL2;
5801 
5802 typedef union
5803   {
5804   struct
5805     {
5806     unsigned LC2D3S0            : 1;
5807     unsigned LC2D3S1            : 1;
5808     unsigned LC2D3S2            : 1;
5809     unsigned LC2D3S3            : 1;
5810     unsigned LC2D3S4            : 1;
5811     unsigned                    : 1;
5812     unsigned                    : 1;
5813     unsigned                    : 1;
5814     };
5815 
5816   struct
5817     {
5818     unsigned D3S0               : 1;
5819     unsigned D3S1               : 1;
5820     unsigned D3S2               : 1;
5821     unsigned D3S3               : 1;
5822     unsigned D3S4               : 1;
5823     unsigned                    : 1;
5824     unsigned                    : 1;
5825     unsigned                    : 1;
5826     };
5827 
5828   struct
5829     {
5830     unsigned LC2D3S             : 5;
5831     unsigned                    : 3;
5832     };
5833 
5834   struct
5835     {
5836     unsigned D3S                : 5;
5837     unsigned                    : 3;
5838     };
5839   } __CLC2SEL2bits_t;
5840 
5841 extern __at(0x0F1E) volatile __CLC2SEL2bits_t CLC2SEL2bits;
5842 
5843 #define _CLC2SEL2_LC2D3S0       0x01
5844 #define _CLC2SEL2_D3S0          0x01
5845 #define _CLC2SEL2_LC2D3S1       0x02
5846 #define _CLC2SEL2_D3S1          0x02
5847 #define _CLC2SEL2_LC2D3S2       0x04
5848 #define _CLC2SEL2_D3S2          0x04
5849 #define _CLC2SEL2_LC2D3S3       0x08
5850 #define _CLC2SEL2_D3S3          0x08
5851 #define _CLC2SEL2_LC2D3S4       0x10
5852 #define _CLC2SEL2_D3S4          0x10
5853 
5854 //==============================================================================
5855 
5856 
5857 //==============================================================================
5858 //        CLC2SEL3 Bits
5859 
5860 extern __at(0x0F1F) __sfr CLC2SEL3;
5861 
5862 typedef union
5863   {
5864   struct
5865     {
5866     unsigned LC2D4S0            : 1;
5867     unsigned LC2D4S1            : 1;
5868     unsigned LC2D4S2            : 1;
5869     unsigned LC2D4S3            : 1;
5870     unsigned LC2D4S4            : 1;
5871     unsigned                    : 1;
5872     unsigned                    : 1;
5873     unsigned                    : 1;
5874     };
5875 
5876   struct
5877     {
5878     unsigned D4S0               : 1;
5879     unsigned D4S1               : 1;
5880     unsigned D4S2               : 1;
5881     unsigned D4S3               : 1;
5882     unsigned D4S4               : 1;
5883     unsigned                    : 1;
5884     unsigned                    : 1;
5885     unsigned                    : 1;
5886     };
5887 
5888   struct
5889     {
5890     unsigned D4S                : 5;
5891     unsigned                    : 3;
5892     };
5893 
5894   struct
5895     {
5896     unsigned LC2D4S             : 5;
5897     unsigned                    : 3;
5898     };
5899   } __CLC2SEL3bits_t;
5900 
5901 extern __at(0x0F1F) volatile __CLC2SEL3bits_t CLC2SEL3bits;
5902 
5903 #define _CLC2SEL3_LC2D4S0       0x01
5904 #define _CLC2SEL3_D4S0          0x01
5905 #define _CLC2SEL3_LC2D4S1       0x02
5906 #define _CLC2SEL3_D4S1          0x02
5907 #define _CLC2SEL3_LC2D4S2       0x04
5908 #define _CLC2SEL3_D4S2          0x04
5909 #define _CLC2SEL3_LC2D4S3       0x08
5910 #define _CLC2SEL3_D4S3          0x08
5911 #define _CLC2SEL3_LC2D4S4       0x10
5912 #define _CLC2SEL3_D4S4          0x10
5913 
5914 //==============================================================================
5915 
5916 
5917 //==============================================================================
5918 //        CLC2GLS0 Bits
5919 
5920 extern __at(0x0F20) __sfr CLC2GLS0;
5921 
5922 typedef union
5923   {
5924   struct
5925     {
5926     unsigned LC2G1D1N           : 1;
5927     unsigned LC2G1D1T           : 1;
5928     unsigned LC2G1D2N           : 1;
5929     unsigned LC2G1D2T           : 1;
5930     unsigned LC2G1D3N           : 1;
5931     unsigned LC2G1D3T           : 1;
5932     unsigned LC2G1D4N           : 1;
5933     unsigned LC2G1D4T           : 1;
5934     };
5935 
5936   struct
5937     {
5938     unsigned D1N                : 1;
5939     unsigned D1T                : 1;
5940     unsigned D2N                : 1;
5941     unsigned D2T                : 1;
5942     unsigned D3N                : 1;
5943     unsigned D3T                : 1;
5944     unsigned D4N                : 1;
5945     unsigned D4T                : 1;
5946     };
5947   } __CLC2GLS0bits_t;
5948 
5949 extern __at(0x0F20) volatile __CLC2GLS0bits_t CLC2GLS0bits;
5950 
5951 #define _CLC2GLS0_LC2G1D1N      0x01
5952 #define _CLC2GLS0_D1N           0x01
5953 #define _CLC2GLS0_LC2G1D1T      0x02
5954 #define _CLC2GLS0_D1T           0x02
5955 #define _CLC2GLS0_LC2G1D2N      0x04
5956 #define _CLC2GLS0_D2N           0x04
5957 #define _CLC2GLS0_LC2G1D2T      0x08
5958 #define _CLC2GLS0_D2T           0x08
5959 #define _CLC2GLS0_LC2G1D3N      0x10
5960 #define _CLC2GLS0_D3N           0x10
5961 #define _CLC2GLS0_LC2G1D3T      0x20
5962 #define _CLC2GLS0_D3T           0x20
5963 #define _CLC2GLS0_LC2G1D4N      0x40
5964 #define _CLC2GLS0_D4N           0x40
5965 #define _CLC2GLS0_LC2G1D4T      0x80
5966 #define _CLC2GLS0_D4T           0x80
5967 
5968 //==============================================================================
5969 
5970 
5971 //==============================================================================
5972 //        CLC2GLS1 Bits
5973 
5974 extern __at(0x0F21) __sfr CLC2GLS1;
5975 
5976 typedef union
5977   {
5978   struct
5979     {
5980     unsigned LC2G2D1N           : 1;
5981     unsigned LC2G2D1T           : 1;
5982     unsigned LC2G2D2N           : 1;
5983     unsigned LC2G2D2T           : 1;
5984     unsigned LC2G2D3N           : 1;
5985     unsigned LC2G2D3T           : 1;
5986     unsigned LC2G2D4N           : 1;
5987     unsigned LC2G2D4T           : 1;
5988     };
5989 
5990   struct
5991     {
5992     unsigned D1N                : 1;
5993     unsigned D1T                : 1;
5994     unsigned D2N                : 1;
5995     unsigned D2T                : 1;
5996     unsigned D3N                : 1;
5997     unsigned D3T                : 1;
5998     unsigned D4N                : 1;
5999     unsigned D4T                : 1;
6000     };
6001   } __CLC2GLS1bits_t;
6002 
6003 extern __at(0x0F21) volatile __CLC2GLS1bits_t CLC2GLS1bits;
6004 
6005 #define _CLC2GLS1_LC2G2D1N      0x01
6006 #define _CLC2GLS1_D1N           0x01
6007 #define _CLC2GLS1_LC2G2D1T      0x02
6008 #define _CLC2GLS1_D1T           0x02
6009 #define _CLC2GLS1_LC2G2D2N      0x04
6010 #define _CLC2GLS1_D2N           0x04
6011 #define _CLC2GLS1_LC2G2D2T      0x08
6012 #define _CLC2GLS1_D2T           0x08
6013 #define _CLC2GLS1_LC2G2D3N      0x10
6014 #define _CLC2GLS1_D3N           0x10
6015 #define _CLC2GLS1_LC2G2D3T      0x20
6016 #define _CLC2GLS1_D3T           0x20
6017 #define _CLC2GLS1_LC2G2D4N      0x40
6018 #define _CLC2GLS1_D4N           0x40
6019 #define _CLC2GLS1_LC2G2D4T      0x80
6020 #define _CLC2GLS1_D4T           0x80
6021 
6022 //==============================================================================
6023 
6024 
6025 //==============================================================================
6026 //        CLC2GLS2 Bits
6027 
6028 extern __at(0x0F22) __sfr CLC2GLS2;
6029 
6030 typedef union
6031   {
6032   struct
6033     {
6034     unsigned LC2G3D1N           : 1;
6035     unsigned LC2G3D1T           : 1;
6036     unsigned LC2G3D2N           : 1;
6037     unsigned LC2G3D2T           : 1;
6038     unsigned LC2G3D3N           : 1;
6039     unsigned LC2G3D3T           : 1;
6040     unsigned LC2G3D4N           : 1;
6041     unsigned LC2G3D4T           : 1;
6042     };
6043 
6044   struct
6045     {
6046     unsigned D1N                : 1;
6047     unsigned D1T                : 1;
6048     unsigned D2N                : 1;
6049     unsigned D2T                : 1;
6050     unsigned D3N                : 1;
6051     unsigned D3T                : 1;
6052     unsigned D4N                : 1;
6053     unsigned D4T                : 1;
6054     };
6055   } __CLC2GLS2bits_t;
6056 
6057 extern __at(0x0F22) volatile __CLC2GLS2bits_t CLC2GLS2bits;
6058 
6059 #define _CLC2GLS2_LC2G3D1N      0x01
6060 #define _CLC2GLS2_D1N           0x01
6061 #define _CLC2GLS2_LC2G3D1T      0x02
6062 #define _CLC2GLS2_D1T           0x02
6063 #define _CLC2GLS2_LC2G3D2N      0x04
6064 #define _CLC2GLS2_D2N           0x04
6065 #define _CLC2GLS2_LC2G3D2T      0x08
6066 #define _CLC2GLS2_D2T           0x08
6067 #define _CLC2GLS2_LC2G3D3N      0x10
6068 #define _CLC2GLS2_D3N           0x10
6069 #define _CLC2GLS2_LC2G3D3T      0x20
6070 #define _CLC2GLS2_D3T           0x20
6071 #define _CLC2GLS2_LC2G3D4N      0x40
6072 #define _CLC2GLS2_D4N           0x40
6073 #define _CLC2GLS2_LC2G3D4T      0x80
6074 #define _CLC2GLS2_D4T           0x80
6075 
6076 //==============================================================================
6077 
6078 
6079 //==============================================================================
6080 //        CLC2GLS3 Bits
6081 
6082 extern __at(0x0F23) __sfr CLC2GLS3;
6083 
6084 typedef union
6085   {
6086   struct
6087     {
6088     unsigned LC2G4D1N           : 1;
6089     unsigned LC2G4D1T           : 1;
6090     unsigned LC2G4D2N           : 1;
6091     unsigned LC2G4D2T           : 1;
6092     unsigned LC2G4D3N           : 1;
6093     unsigned LC2G4D3T           : 1;
6094     unsigned LC2G4D4N           : 1;
6095     unsigned LC2G4D4T           : 1;
6096     };
6097 
6098   struct
6099     {
6100     unsigned G4D1N              : 1;
6101     unsigned G4D1T              : 1;
6102     unsigned G4D2N              : 1;
6103     unsigned G4D2T              : 1;
6104     unsigned G4D3N              : 1;
6105     unsigned G4D3T              : 1;
6106     unsigned G4D4N              : 1;
6107     unsigned G4D4T              : 1;
6108     };
6109   } __CLC2GLS3bits_t;
6110 
6111 extern __at(0x0F23) volatile __CLC2GLS3bits_t CLC2GLS3bits;
6112 
6113 #define _CLC2GLS3_LC2G4D1N      0x01
6114 #define _CLC2GLS3_G4D1N         0x01
6115 #define _CLC2GLS3_LC2G4D1T      0x02
6116 #define _CLC2GLS3_G4D1T         0x02
6117 #define _CLC2GLS3_LC2G4D2N      0x04
6118 #define _CLC2GLS3_G4D2N         0x04
6119 #define _CLC2GLS3_LC2G4D2T      0x08
6120 #define _CLC2GLS3_G4D2T         0x08
6121 #define _CLC2GLS3_LC2G4D3N      0x10
6122 #define _CLC2GLS3_G4D3N         0x10
6123 #define _CLC2GLS3_LC2G4D3T      0x20
6124 #define _CLC2GLS3_G4D3T         0x20
6125 #define _CLC2GLS3_LC2G4D4N      0x40
6126 #define _CLC2GLS3_G4D4N         0x40
6127 #define _CLC2GLS3_LC2G4D4T      0x80
6128 #define _CLC2GLS3_G4D4T         0x80
6129 
6130 //==============================================================================
6131 
6132 
6133 //==============================================================================
6134 //        CLC3CON Bits
6135 
6136 extern __at(0x0F24) __sfr CLC3CON;
6137 
6138 typedef union
6139   {
6140   struct
6141     {
6142     unsigned LC3MODE0           : 1;
6143     unsigned LC3MODE1           : 1;
6144     unsigned LC3MODE2           : 1;
6145     unsigned LC3INTN            : 1;
6146     unsigned LC3INTP            : 1;
6147     unsigned LC3OUT             : 1;
6148     unsigned                    : 1;
6149     unsigned LC3EN              : 1;
6150     };
6151 
6152   struct
6153     {
6154     unsigned MODE0              : 1;
6155     unsigned MODE1              : 1;
6156     unsigned MODE2              : 1;
6157     unsigned INTN               : 1;
6158     unsigned INTP               : 1;
6159     unsigned OUT                : 1;
6160     unsigned                    : 1;
6161     unsigned EN                 : 1;
6162     };
6163 
6164   struct
6165     {
6166     unsigned MODE               : 3;
6167     unsigned                    : 5;
6168     };
6169 
6170   struct
6171     {
6172     unsigned LC3MODE            : 3;
6173     unsigned                    : 5;
6174     };
6175   } __CLC3CONbits_t;
6176 
6177 extern __at(0x0F24) volatile __CLC3CONbits_t CLC3CONbits;
6178 
6179 #define _CLC3CON_LC3MODE0       0x01
6180 #define _CLC3CON_MODE0          0x01
6181 #define _CLC3CON_LC3MODE1       0x02
6182 #define _CLC3CON_MODE1          0x02
6183 #define _CLC3CON_LC3MODE2       0x04
6184 #define _CLC3CON_MODE2          0x04
6185 #define _CLC3CON_LC3INTN        0x08
6186 #define _CLC3CON_INTN           0x08
6187 #define _CLC3CON_LC3INTP        0x10
6188 #define _CLC3CON_INTP           0x10
6189 #define _CLC3CON_LC3OUT         0x20
6190 #define _CLC3CON_OUT            0x20
6191 #define _CLC3CON_LC3EN          0x80
6192 #define _CLC3CON_EN             0x80
6193 
6194 //==============================================================================
6195 
6196 
6197 //==============================================================================
6198 //        CLC3POL Bits
6199 
6200 extern __at(0x0F25) __sfr CLC3POL;
6201 
6202 typedef union
6203   {
6204   struct
6205     {
6206     unsigned LC3G1POL           : 1;
6207     unsigned LC3G2POL           : 1;
6208     unsigned LC3G3POL           : 1;
6209     unsigned LC3G4POL           : 1;
6210     unsigned                    : 1;
6211     unsigned                    : 1;
6212     unsigned                    : 1;
6213     unsigned LC3POL             : 1;
6214     };
6215 
6216   struct
6217     {
6218     unsigned G1POL              : 1;
6219     unsigned G2POL              : 1;
6220     unsigned G3POL              : 1;
6221     unsigned G4POL              : 1;
6222     unsigned                    : 1;
6223     unsigned                    : 1;
6224     unsigned                    : 1;
6225     unsigned POL                : 1;
6226     };
6227   } __CLC3POLbits_t;
6228 
6229 extern __at(0x0F25) volatile __CLC3POLbits_t CLC3POLbits;
6230 
6231 #define _CLC3POL_LC3G1POL       0x01
6232 #define _CLC3POL_G1POL          0x01
6233 #define _CLC3POL_LC3G2POL       0x02
6234 #define _CLC3POL_G2POL          0x02
6235 #define _CLC3POL_LC3G3POL       0x04
6236 #define _CLC3POL_G3POL          0x04
6237 #define _CLC3POL_LC3G4POL       0x08
6238 #define _CLC3POL_G4POL          0x08
6239 #define _CLC3POL_LC3POL         0x80
6240 #define _CLC3POL_POL            0x80
6241 
6242 //==============================================================================
6243 
6244 
6245 //==============================================================================
6246 //        CLC3SEL0 Bits
6247 
6248 extern __at(0x0F26) __sfr CLC3SEL0;
6249 
6250 typedef union
6251   {
6252   struct
6253     {
6254     unsigned LC3D1S0            : 1;
6255     unsigned LC3D1S1            : 1;
6256     unsigned LC3D1S2            : 1;
6257     unsigned LC3D1S3            : 1;
6258     unsigned LC3D1S4            : 1;
6259     unsigned                    : 1;
6260     unsigned                    : 1;
6261     unsigned                    : 1;
6262     };
6263 
6264   struct
6265     {
6266     unsigned D1S0               : 1;
6267     unsigned D1S1               : 1;
6268     unsigned D1S2               : 1;
6269     unsigned D1S3               : 1;
6270     unsigned D1S4               : 1;
6271     unsigned                    : 1;
6272     unsigned                    : 1;
6273     unsigned                    : 1;
6274     };
6275 
6276   struct
6277     {
6278     unsigned LC3D1S             : 5;
6279     unsigned                    : 3;
6280     };
6281 
6282   struct
6283     {
6284     unsigned D1S                : 5;
6285     unsigned                    : 3;
6286     };
6287   } __CLC3SEL0bits_t;
6288 
6289 extern __at(0x0F26) volatile __CLC3SEL0bits_t CLC3SEL0bits;
6290 
6291 #define _CLC3SEL0_LC3D1S0       0x01
6292 #define _CLC3SEL0_D1S0          0x01
6293 #define _CLC3SEL0_LC3D1S1       0x02
6294 #define _CLC3SEL0_D1S1          0x02
6295 #define _CLC3SEL0_LC3D1S2       0x04
6296 #define _CLC3SEL0_D1S2          0x04
6297 #define _CLC3SEL0_LC3D1S3       0x08
6298 #define _CLC3SEL0_D1S3          0x08
6299 #define _CLC3SEL0_LC3D1S4       0x10
6300 #define _CLC3SEL0_D1S4          0x10
6301 
6302 //==============================================================================
6303 
6304 
6305 //==============================================================================
6306 //        CLC3SEL1 Bits
6307 
6308 extern __at(0x0F27) __sfr CLC3SEL1;
6309 
6310 typedef union
6311   {
6312   struct
6313     {
6314     unsigned LC3D2S0            : 1;
6315     unsigned LC3D2S1            : 1;
6316     unsigned LC3D2S2            : 1;
6317     unsigned LC3D2S3            : 1;
6318     unsigned LC3D2S4            : 1;
6319     unsigned                    : 1;
6320     unsigned                    : 1;
6321     unsigned                    : 1;
6322     };
6323 
6324   struct
6325     {
6326     unsigned D2S0               : 1;
6327     unsigned D2S1               : 1;
6328     unsigned D2S2               : 1;
6329     unsigned D2S3               : 1;
6330     unsigned D2S4               : 1;
6331     unsigned                    : 1;
6332     unsigned                    : 1;
6333     unsigned                    : 1;
6334     };
6335 
6336   struct
6337     {
6338     unsigned D2S                : 5;
6339     unsigned                    : 3;
6340     };
6341 
6342   struct
6343     {
6344     unsigned LC3D2S             : 5;
6345     unsigned                    : 3;
6346     };
6347   } __CLC3SEL1bits_t;
6348 
6349 extern __at(0x0F27) volatile __CLC3SEL1bits_t CLC3SEL1bits;
6350 
6351 #define _CLC3SEL1_LC3D2S0       0x01
6352 #define _CLC3SEL1_D2S0          0x01
6353 #define _CLC3SEL1_LC3D2S1       0x02
6354 #define _CLC3SEL1_D2S1          0x02
6355 #define _CLC3SEL1_LC3D2S2       0x04
6356 #define _CLC3SEL1_D2S2          0x04
6357 #define _CLC3SEL1_LC3D2S3       0x08
6358 #define _CLC3SEL1_D2S3          0x08
6359 #define _CLC3SEL1_LC3D2S4       0x10
6360 #define _CLC3SEL1_D2S4          0x10
6361 
6362 //==============================================================================
6363 
6364 
6365 //==============================================================================
6366 //        CLC3SEL2 Bits
6367 
6368 extern __at(0x0F28) __sfr CLC3SEL2;
6369 
6370 typedef union
6371   {
6372   struct
6373     {
6374     unsigned LC3D3S0            : 1;
6375     unsigned LC3D3S1            : 1;
6376     unsigned LC3D3S2            : 1;
6377     unsigned LC3D3S3            : 1;
6378     unsigned LC3D3S4            : 1;
6379     unsigned                    : 1;
6380     unsigned                    : 1;
6381     unsigned                    : 1;
6382     };
6383 
6384   struct
6385     {
6386     unsigned D3S0               : 1;
6387     unsigned D3S1               : 1;
6388     unsigned D3S2               : 1;
6389     unsigned D3S3               : 1;
6390     unsigned D3S4               : 1;
6391     unsigned                    : 1;
6392     unsigned                    : 1;
6393     unsigned                    : 1;
6394     };
6395 
6396   struct
6397     {
6398     unsigned LC3D3S             : 5;
6399     unsigned                    : 3;
6400     };
6401 
6402   struct
6403     {
6404     unsigned D3S                : 5;
6405     unsigned                    : 3;
6406     };
6407   } __CLC3SEL2bits_t;
6408 
6409 extern __at(0x0F28) volatile __CLC3SEL2bits_t CLC3SEL2bits;
6410 
6411 #define _CLC3SEL2_LC3D3S0       0x01
6412 #define _CLC3SEL2_D3S0          0x01
6413 #define _CLC3SEL2_LC3D3S1       0x02
6414 #define _CLC3SEL2_D3S1          0x02
6415 #define _CLC3SEL2_LC3D3S2       0x04
6416 #define _CLC3SEL2_D3S2          0x04
6417 #define _CLC3SEL2_LC3D3S3       0x08
6418 #define _CLC3SEL2_D3S3          0x08
6419 #define _CLC3SEL2_LC3D3S4       0x10
6420 #define _CLC3SEL2_D3S4          0x10
6421 
6422 //==============================================================================
6423 
6424 
6425 //==============================================================================
6426 //        CLC3SEL3 Bits
6427 
6428 extern __at(0x0F29) __sfr CLC3SEL3;
6429 
6430 typedef union
6431   {
6432   struct
6433     {
6434     unsigned LC3D4S0            : 1;
6435     unsigned LC3D4S1            : 1;
6436     unsigned LC3D4S2            : 1;
6437     unsigned LC3D4S3            : 1;
6438     unsigned LC3D4S4            : 1;
6439     unsigned                    : 1;
6440     unsigned                    : 1;
6441     unsigned                    : 1;
6442     };
6443 
6444   struct
6445     {
6446     unsigned D4S0               : 1;
6447     unsigned D4S1               : 1;
6448     unsigned D4S2               : 1;
6449     unsigned D4S3               : 1;
6450     unsigned D4S4               : 1;
6451     unsigned                    : 1;
6452     unsigned                    : 1;
6453     unsigned                    : 1;
6454     };
6455 
6456   struct
6457     {
6458     unsigned D4S                : 5;
6459     unsigned                    : 3;
6460     };
6461 
6462   struct
6463     {
6464     unsigned LC3D4S             : 5;
6465     unsigned                    : 3;
6466     };
6467   } __CLC3SEL3bits_t;
6468 
6469 extern __at(0x0F29) volatile __CLC3SEL3bits_t CLC3SEL3bits;
6470 
6471 #define _CLC3SEL3_LC3D4S0       0x01
6472 #define _CLC3SEL3_D4S0          0x01
6473 #define _CLC3SEL3_LC3D4S1       0x02
6474 #define _CLC3SEL3_D4S1          0x02
6475 #define _CLC3SEL3_LC3D4S2       0x04
6476 #define _CLC3SEL3_D4S2          0x04
6477 #define _CLC3SEL3_LC3D4S3       0x08
6478 #define _CLC3SEL3_D4S3          0x08
6479 #define _CLC3SEL3_LC3D4S4       0x10
6480 #define _CLC3SEL3_D4S4          0x10
6481 
6482 //==============================================================================
6483 
6484 
6485 //==============================================================================
6486 //        CLC3GLS0 Bits
6487 
6488 extern __at(0x0F2A) __sfr CLC3GLS0;
6489 
6490 typedef union
6491   {
6492   struct
6493     {
6494     unsigned LC3G1D1N           : 1;
6495     unsigned LC3G1D1T           : 1;
6496     unsigned LC3G1D2N           : 1;
6497     unsigned LC3G1D2T           : 1;
6498     unsigned LC3G1D3N           : 1;
6499     unsigned LC3G1D3T           : 1;
6500     unsigned LC3G1D4N           : 1;
6501     unsigned LC3G1D4T           : 1;
6502     };
6503 
6504   struct
6505     {
6506     unsigned D1N                : 1;
6507     unsigned D1T                : 1;
6508     unsigned D2N                : 1;
6509     unsigned D2T                : 1;
6510     unsigned D3N                : 1;
6511     unsigned D3T                : 1;
6512     unsigned D4N                : 1;
6513     unsigned D4T                : 1;
6514     };
6515   } __CLC3GLS0bits_t;
6516 
6517 extern __at(0x0F2A) volatile __CLC3GLS0bits_t CLC3GLS0bits;
6518 
6519 #define _CLC3GLS0_LC3G1D1N      0x01
6520 #define _CLC3GLS0_D1N           0x01
6521 #define _CLC3GLS0_LC3G1D1T      0x02
6522 #define _CLC3GLS0_D1T           0x02
6523 #define _CLC3GLS0_LC3G1D2N      0x04
6524 #define _CLC3GLS0_D2N           0x04
6525 #define _CLC3GLS0_LC3G1D2T      0x08
6526 #define _CLC3GLS0_D2T           0x08
6527 #define _CLC3GLS0_LC3G1D3N      0x10
6528 #define _CLC3GLS0_D3N           0x10
6529 #define _CLC3GLS0_LC3G1D3T      0x20
6530 #define _CLC3GLS0_D3T           0x20
6531 #define _CLC3GLS0_LC3G1D4N      0x40
6532 #define _CLC3GLS0_D4N           0x40
6533 #define _CLC3GLS0_LC3G1D4T      0x80
6534 #define _CLC3GLS0_D4T           0x80
6535 
6536 //==============================================================================
6537 
6538 
6539 //==============================================================================
6540 //        CLC3GLS1 Bits
6541 
6542 extern __at(0x0F2B) __sfr CLC3GLS1;
6543 
6544 typedef union
6545   {
6546   struct
6547     {
6548     unsigned LC3G2D1N           : 1;
6549     unsigned LC3G2D1T           : 1;
6550     unsigned LC3G2D2N           : 1;
6551     unsigned LC3G2D2T           : 1;
6552     unsigned LC3G2D3N           : 1;
6553     unsigned LC3G2D3T           : 1;
6554     unsigned LC3G2D4N           : 1;
6555     unsigned LC3G2D4T           : 1;
6556     };
6557 
6558   struct
6559     {
6560     unsigned D1N                : 1;
6561     unsigned D1T                : 1;
6562     unsigned D2N                : 1;
6563     unsigned D2T                : 1;
6564     unsigned D3N                : 1;
6565     unsigned D3T                : 1;
6566     unsigned D4N                : 1;
6567     unsigned D4T                : 1;
6568     };
6569   } __CLC3GLS1bits_t;
6570 
6571 extern __at(0x0F2B) volatile __CLC3GLS1bits_t CLC3GLS1bits;
6572 
6573 #define _CLC3GLS1_LC3G2D1N      0x01
6574 #define _CLC3GLS1_D1N           0x01
6575 #define _CLC3GLS1_LC3G2D1T      0x02
6576 #define _CLC3GLS1_D1T           0x02
6577 #define _CLC3GLS1_LC3G2D2N      0x04
6578 #define _CLC3GLS1_D2N           0x04
6579 #define _CLC3GLS1_LC3G2D2T      0x08
6580 #define _CLC3GLS1_D2T           0x08
6581 #define _CLC3GLS1_LC3G2D3N      0x10
6582 #define _CLC3GLS1_D3N           0x10
6583 #define _CLC3GLS1_LC3G2D3T      0x20
6584 #define _CLC3GLS1_D3T           0x20
6585 #define _CLC3GLS1_LC3G2D4N      0x40
6586 #define _CLC3GLS1_D4N           0x40
6587 #define _CLC3GLS1_LC3G2D4T      0x80
6588 #define _CLC3GLS1_D4T           0x80
6589 
6590 //==============================================================================
6591 
6592 
6593 //==============================================================================
6594 //        CLC3GLS2 Bits
6595 
6596 extern __at(0x0F2C) __sfr CLC3GLS2;
6597 
6598 typedef union
6599   {
6600   struct
6601     {
6602     unsigned LC3G3D1N           : 1;
6603     unsigned LC3G3D1T           : 1;
6604     unsigned LC3G3D2N           : 1;
6605     unsigned LC3G3D2T           : 1;
6606     unsigned LC3G3D3N           : 1;
6607     unsigned LC3G3D3T           : 1;
6608     unsigned LC3G3D4N           : 1;
6609     unsigned LC3G3D4T           : 1;
6610     };
6611 
6612   struct
6613     {
6614     unsigned D1N                : 1;
6615     unsigned D1T                : 1;
6616     unsigned D2N                : 1;
6617     unsigned D2T                : 1;
6618     unsigned D3N                : 1;
6619     unsigned D3T                : 1;
6620     unsigned D4N                : 1;
6621     unsigned D4T                : 1;
6622     };
6623   } __CLC3GLS2bits_t;
6624 
6625 extern __at(0x0F2C) volatile __CLC3GLS2bits_t CLC3GLS2bits;
6626 
6627 #define _CLC3GLS2_LC3G3D1N      0x01
6628 #define _CLC3GLS2_D1N           0x01
6629 #define _CLC3GLS2_LC3G3D1T      0x02
6630 #define _CLC3GLS2_D1T           0x02
6631 #define _CLC3GLS2_LC3G3D2N      0x04
6632 #define _CLC3GLS2_D2N           0x04
6633 #define _CLC3GLS2_LC3G3D2T      0x08
6634 #define _CLC3GLS2_D2T           0x08
6635 #define _CLC3GLS2_LC3G3D3N      0x10
6636 #define _CLC3GLS2_D3N           0x10
6637 #define _CLC3GLS2_LC3G3D3T      0x20
6638 #define _CLC3GLS2_D3T           0x20
6639 #define _CLC3GLS2_LC3G3D4N      0x40
6640 #define _CLC3GLS2_D4N           0x40
6641 #define _CLC3GLS2_LC3G3D4T      0x80
6642 #define _CLC3GLS2_D4T           0x80
6643 
6644 //==============================================================================
6645 
6646 
6647 //==============================================================================
6648 //        CLC3GLS3 Bits
6649 
6650 extern __at(0x0F2D) __sfr CLC3GLS3;
6651 
6652 typedef union
6653   {
6654   struct
6655     {
6656     unsigned LC3G4D1N           : 1;
6657     unsigned LC3G4D1T           : 1;
6658     unsigned LC3G4D2N           : 1;
6659     unsigned LC3G4D2T           : 1;
6660     unsigned LC3G4D3N           : 1;
6661     unsigned LC3G4D3T           : 1;
6662     unsigned LC3G4D4N           : 1;
6663     unsigned LC3G4D4T           : 1;
6664     };
6665 
6666   struct
6667     {
6668     unsigned G4D1N              : 1;
6669     unsigned G4D1T              : 1;
6670     unsigned G4D2N              : 1;
6671     unsigned G4D2T              : 1;
6672     unsigned G4D3N              : 1;
6673     unsigned G4D3T              : 1;
6674     unsigned G4D4N              : 1;
6675     unsigned G4D4T              : 1;
6676     };
6677   } __CLC3GLS3bits_t;
6678 
6679 extern __at(0x0F2D) volatile __CLC3GLS3bits_t CLC3GLS3bits;
6680 
6681 #define _CLC3GLS3_LC3G4D1N      0x01
6682 #define _CLC3GLS3_G4D1N         0x01
6683 #define _CLC3GLS3_LC3G4D1T      0x02
6684 #define _CLC3GLS3_G4D1T         0x02
6685 #define _CLC3GLS3_LC3G4D2N      0x04
6686 #define _CLC3GLS3_G4D2N         0x04
6687 #define _CLC3GLS3_LC3G4D2T      0x08
6688 #define _CLC3GLS3_G4D2T         0x08
6689 #define _CLC3GLS3_LC3G4D3N      0x10
6690 #define _CLC3GLS3_G4D3N         0x10
6691 #define _CLC3GLS3_LC3G4D3T      0x20
6692 #define _CLC3GLS3_G4D3T         0x20
6693 #define _CLC3GLS3_LC3G4D4N      0x40
6694 #define _CLC3GLS3_G4D4N         0x40
6695 #define _CLC3GLS3_LC3G4D4T      0x80
6696 #define _CLC3GLS3_G4D4T         0x80
6697 
6698 //==============================================================================
6699 
6700 
6701 //==============================================================================
6702 //        STATUS_SHAD Bits
6703 
6704 extern __at(0x0FE4) __sfr STATUS_SHAD;
6705 
6706 typedef struct
6707   {
6708   unsigned C_SHAD               : 1;
6709   unsigned DC_SHAD              : 1;
6710   unsigned Z_SHAD               : 1;
6711   unsigned                      : 1;
6712   unsigned                      : 1;
6713   unsigned                      : 1;
6714   unsigned                      : 1;
6715   unsigned                      : 1;
6716   } __STATUS_SHADbits_t;
6717 
6718 extern __at(0x0FE4) volatile __STATUS_SHADbits_t STATUS_SHADbits;
6719 
6720 #define _C_SHAD                 0x01
6721 #define _DC_SHAD                0x02
6722 #define _Z_SHAD                 0x04
6723 
6724 //==============================================================================
6725 
6726 extern __at(0x0FE5) __sfr WREG_SHAD;
6727 extern __at(0x0FE6) __sfr BSR_SHAD;
6728 extern __at(0x0FE7) __sfr PCLATH_SHAD;
6729 extern __at(0x0FE8) __sfr FSR0L_SHAD;
6730 extern __at(0x0FE9) __sfr FSR0H_SHAD;
6731 extern __at(0x0FEA) __sfr FSR1L_SHAD;
6732 extern __at(0x0FEB) __sfr FSR1H_SHAD;
6733 extern __at(0x0FED) __sfr STKPTR;
6734 extern __at(0x0FEE) __sfr TOSL;
6735 extern __at(0x0FEF) __sfr TOSH;
6736 
6737 //==============================================================================
6738 //
6739 //        Configuration Bits
6740 //
6741 //==============================================================================
6742 
6743 #define _CONFIG1                0x8007
6744 #define _CONFIG2                0x8008
6745 
6746 //----------------------------- CONFIG1 Options -------------------------------
6747 
6748 #define _FOSC_LP                0x3FF8  // LP Oscillator, Low-power crystal connected between OSC1 and OSC2 pins.
6749 #define _FOSC_XT                0x3FF9  // XT Oscillator, Crystal/resonator connected between OSC1 and OSC2 pins.
6750 #define _FOSC_HS                0x3FFA  // HS Oscillator, High-speed crystal/resonator connected between OSC1 and OSC2 pins.
6751 #define _FOSC_EXTRC             0x3FFB  // EXTRC oscillator: External RC circuit connected to CLKIN pin.
6752 #define _FOSC_INTOSC            0x3FFC  // INTOSC oscillator: I/O function on CLKIN pin.
6753 #define _FOSC_ECL               0x3FFD  // ECL, External Clock, Low Power Mode (0-0.5 MHz): device clock supplied to CLKIN pins.
6754 #define _FOSC_ECM               0x3FFE  // ECM, External Clock, Medium Power Mode (0.5-4 MHz): device clock supplied to CLKIN pins.
6755 #define _FOSC_ECH               0x3FFF  // ECH, External Clock, High Power Mode (4-20 MHz): device clock supplied to CLKIN pins.
6756 #define _WDTE_OFF               0x3FE7  // WDT disabled.
6757 #define _WDTE_SWDTEN            0x3FEF  // WDT controlled by the SWDTEN bit in the WDTCON register.
6758 #define _WDTE_NSLEEP            0x3FF7  // WDT enabled while running and disabled in Sleep.
6759 #define _WDTE_ON                0x3FFF  // WDT enabled.
6760 #define _PWRTE_ON               0x3FDF  // PWRT enabled.
6761 #define _PWRTE_OFF              0x3FFF  // PWRT disabled.
6762 #define _MCLRE_OFF              0x3FBF  // MCLR/VPP pin function is digital input.
6763 #define _MCLRE_ON               0x3FFF  // MCLR/VPP pin function is MCLR.
6764 #define _CP_ON                  0x3F7F  // Program memory code protection is enabled.
6765 #define _CP_OFF                 0x3FFF  // Program memory code protection is disabled.
6766 #define _BOREN_OFF              0x39FF  // Brown-out Reset disabled.
6767 #define _BOREN_SBODEN           0x3BFF  // Brown-out Reset controlled by the SBOREN bit in the BORCON register.
6768 #define _BOREN_NSLEEP           0x3DFF  // Brown-out Reset enabled while running and disabled in Sleep.
6769 #define _BOREN_ON               0x3FFF  // Brown-out Reset enabled.
6770 #define _CLKOUTEN_ON            0x37FF  // CLKOUT function is enabled on the CLKOUT pin.
6771 #define _CLKOUTEN_OFF           0x3FFF  // CLKOUT function is disabled. I/O or oscillator function on the CLKOUT pin.
6772 #define _IESO_OFF               0x2FFF  // Internal/External Switchover Mode is disabled.
6773 #define _IESO_ON                0x3FFF  // Internal/External Switchover Mode is enabled.
6774 #define _FCMEN_OFF              0x1FFF  // Fail-Safe Clock Monitor is disabled.
6775 #define _FCMEN_ON               0x3FFF  // Fail-Safe Clock Monitor is enabled.
6776 
6777 //----------------------------- CONFIG2 Options -------------------------------
6778 
6779 #define _WRT_ALL                0x3FFC  // 000h to 1FFFh write protected, no addresses may be modified by EECON control.
6780 #define _WRT_HALF               0x3FFD  // 000h to FFFh write protected, 1000h to 1FFFh may be modified by EECON control.
6781 #define _WRT_BOOT               0x3FFE  // 000h to 1FFh write protected, 200h to 1FFFh may be modified by EECON control.
6782 #define _WRT_OFF                0x3FFF  // Write protection off.
6783 #define _PPS1WAY_OFF            0x3FFB  // The PPSLOCK bit can be set and cleared repeatedly by software.
6784 #define _PPS1WAY_ON             0x3FFF  // The PPSLOCK bit cannot be cleared once it is set by software.
6785 #define _ZCDDIS_OFF             0x3F7F  // Zero-cross detect circuit is enabled at POR.
6786 #define _ZCDDIS_ON              0x3FFF  // Zero-cross detect circuit is disabled at POR.
6787 #define _PLLEN_OFF              0x3EFF  // 4x PLL is enabled when software sets the SPLLEN bit.
6788 #define _PLLEN_ON               0x3FFF  // 4x PLL is always enabled.
6789 #define _STVREN_OFF             0x3DFF  // Stack Overflow or Underflow will not cause a Reset.
6790 #define _STVREN_ON              0x3FFF  // Stack Overflow or Underflow will cause a Reset.
6791 #define _BORV_HI                0x3BFF  // Brown-out Reset Voltage (Vbor), high trip point selected.
6792 #define _BORV_LO                0x3FFF  // Brown-out Reset Voltage (Vbor), low trip point selected.
6793 #define _LPBOR_ON               0x37FF  // Low-Power BOR is enabled.
6794 #define _LPBOR_OFF              0x3FFF  // Low-Power BOR is disabled.
6795 #define _DEBUG_ON               0x2FFF  // In-Circuit Debugger enabled, ICSPCLK and ICSPDAT are dedicated to the debugger.
6796 #define _DEBUG_OFF              0x3FFF  // In-Circuit Debugger disabled, ICSPCLK and ICSPDAT are general purpose I/O pins.
6797 #define _LVP_OFF                0x1FFF  // High-voltage on MCLR/VPP must be used for programming.
6798 #define _LVP_ON                 0x3FFF  // Low-voltage programming enabled.
6799 
6800 //==============================================================================
6801 
6802 #define _DEVID1                 0x8006
6803 
6804 #define _IDLOC0                 0x8000
6805 #define _IDLOC1                 0x8001
6806 #define _IDLOC2                 0x8002
6807 #define _IDLOC3                 0x8003
6808 
6809 //==============================================================================
6810 
6811 #ifndef NO_BIT_DEFINES
6812 
6813 #define ADON                    ADCON0bits.ADON                 // bit 0
6814 #define GO_NOT_DONE             ADCON0bits.GO_NOT_DONE          // bit 1, shadows bit in ADCON0bits
6815 #define ADGO                    ADCON0bits.ADGO                 // bit 1, shadows bit in ADCON0bits
6816 #define GO                      ADCON0bits.GO                   // bit 1, shadows bit in ADCON0bits
6817 #define CHS0                    ADCON0bits.CHS0                 // bit 2
6818 #define CHS1                    ADCON0bits.CHS1                 // bit 3
6819 #define CHS2                    ADCON0bits.CHS2                 // bit 4
6820 #define CHS3                    ADCON0bits.CHS3                 // bit 5
6821 #define CHS4                    ADCON0bits.CHS4                 // bit 6
6822 
6823 #define ADPREF0                 ADCON1bits.ADPREF0              // bit 0
6824 #define ADPREF1                 ADCON1bits.ADPREF1              // bit 1
6825 #define ADNREF                  ADCON1bits.ADNREF               // bit 2
6826 #define ADCS0                   ADCON1bits.ADCS0                // bit 4
6827 #define ADCS1                   ADCON1bits.ADCS1                // bit 5
6828 #define ADCS2                   ADCON1bits.ADCS2                // bit 6
6829 #define ADFM                    ADCON1bits.ADFM                 // bit 7
6830 
6831 #define TRIGSEL0                ADCON2bits.TRIGSEL0             // bit 4
6832 #define TRIGSEL1                ADCON2bits.TRIGSEL1             // bit 5
6833 #define TRIGSEL2                ADCON2bits.TRIGSEL2             // bit 6
6834 #define TRIGSEL3                ADCON2bits.TRIGSEL3             // bit 7
6835 
6836 #define ANSA0                   ANSELAbits.ANSA0                // bit 0
6837 #define ANSA1                   ANSELAbits.ANSA1                // bit 1
6838 #define ANSA2                   ANSELAbits.ANSA2                // bit 2
6839 #define ANSA4                   ANSELAbits.ANSA4                // bit 4
6840 #define ANS5                    ANSELAbits.ANS5                 // bit 5
6841 
6842 #define ANSB4                   ANSELBbits.ANSB4                // bit 4
6843 #define ANSB5                   ANSELBbits.ANSB5                // bit 5
6844 #define ANSB6                   ANSELBbits.ANSB6                // bit 6
6845 #define ANSB7                   ANSELBbits.ANSB7                // bit 7
6846 
6847 #define ANSC0                   ANSELCbits.ANSC0                // bit 0
6848 #define ANSC1                   ANSELCbits.ANSC1                // bit 1
6849 #define ANSC2                   ANSELCbits.ANSC2                // bit 2
6850 #define ANSC3                   ANSELCbits.ANSC3                // bit 3
6851 #define ANSC6                   ANSELCbits.ANSC6                // bit 6
6852 #define ANSC7                   ANSELCbits.ANSC7                // bit 7
6853 
6854 #define ABDEN                   BAUD1CONbits.ABDEN              // bit 0
6855 #define WUE                     BAUD1CONbits.WUE                // bit 1
6856 #define BRG16                   BAUD1CONbits.BRG16              // bit 3
6857 #define SCKP                    BAUD1CONbits.SCKP               // bit 4
6858 #define RCIDL                   BAUD1CONbits.RCIDL              // bit 6
6859 #define ABDOVF                  BAUD1CONbits.ABDOVF             // bit 7
6860 
6861 #define BORRDY                  BORCONbits.BORRDY               // bit 0
6862 #define BORFS                   BORCONbits.BORFS                // bit 6
6863 #define SBOREN                  BORCONbits.SBOREN               // bit 7
6864 
6865 #define BSR0                    BSRbits.BSR0                    // bit 0
6866 #define BSR1                    BSRbits.BSR1                    // bit 1
6867 #define BSR2                    BSRbits.BSR2                    // bit 2
6868 #define BSR3                    BSRbits.BSR3                    // bit 3
6869 #define BSR4                    BSRbits.BSR4                    // bit 4
6870 
6871 #define CCP1M0                  CCP1CONbits.CCP1M0              // bit 0
6872 #define CCP1M1                  CCP1CONbits.CCP1M1              // bit 1
6873 #define CCP1M2                  CCP1CONbits.CCP1M2              // bit 2
6874 #define CCP1M3                  CCP1CONbits.CCP1M3              // bit 3
6875 #define DC1B0                   CCP1CONbits.DC1B0               // bit 4, shadows bit in CCP1CONbits
6876 #define CCP1Y                   CCP1CONbits.CCP1Y               // bit 4, shadows bit in CCP1CONbits
6877 #define DC1B1                   CCP1CONbits.DC1B1               // bit 5, shadows bit in CCP1CONbits
6878 #define CCP1X                   CCP1CONbits.CCP1X               // bit 5, shadows bit in CCP1CONbits
6879 
6880 #define CCP2M0                  CCP2CONbits.CCP2M0              // bit 0
6881 #define CCP2M1                  CCP2CONbits.CCP2M1              // bit 1
6882 #define CCP2M2                  CCP2CONbits.CCP2M2              // bit 2
6883 #define CCP2M3                  CCP2CONbits.CCP2M3              // bit 3
6884 #define DC2B0                   CCP2CONbits.DC2B0               // bit 4, shadows bit in CCP2CONbits
6885 #define CCP2Y                   CCP2CONbits.CCP2Y               // bit 4, shadows bit in CCP2CONbits
6886 #define DC2B1                   CCP2CONbits.DC2B1               // bit 5, shadows bit in CCP2CONbits
6887 #define CCP2X                   CCP2CONbits.CCP2X               // bit 5, shadows bit in CCP2CONbits
6888 
6889 #define C1TSEL0                 CCPTMRSbits.C1TSEL0             // bit 0
6890 #define C1TSEL1                 CCPTMRSbits.C1TSEL1             // bit 1
6891 #define C2TSEL0                 CCPTMRSbits.C2TSEL0             // bit 2
6892 #define C2TSEL1                 CCPTMRSbits.C2TSEL1             // bit 3
6893 #define P3TSEL0                 CCPTMRSbits.P3TSEL0             // bit 4
6894 #define P3TSEL1                 CCPTMRSbits.P3TSEL1             // bit 5
6895 #define P4TSEL0                 CCPTMRSbits.P4TSEL0             // bit 6
6896 #define P4TSEL1                 CCPTMRSbits.P4TSEL1             // bit 7
6897 
6898 #define LC1MODE0                CLC1CONbits.LC1MODE0            // bit 0, shadows bit in CLC1CONbits
6899 #define MODE0                   CLC1CONbits.MODE0               // bit 0, shadows bit in CLC1CONbits
6900 #define LC1MODE1                CLC1CONbits.LC1MODE1            // bit 1, shadows bit in CLC1CONbits
6901 #define MODE1                   CLC1CONbits.MODE1               // bit 1, shadows bit in CLC1CONbits
6902 #define LC1MODE2                CLC1CONbits.LC1MODE2            // bit 2, shadows bit in CLC1CONbits
6903 #define MODE2                   CLC1CONbits.MODE2               // bit 2, shadows bit in CLC1CONbits
6904 #define LC1INTN                 CLC1CONbits.LC1INTN             // bit 3, shadows bit in CLC1CONbits
6905 #define INTN                    CLC1CONbits.INTN                // bit 3, shadows bit in CLC1CONbits
6906 #define LC1INTP                 CLC1CONbits.LC1INTP             // bit 4, shadows bit in CLC1CONbits
6907 #define INTP                    CLC1CONbits.INTP                // bit 4, shadows bit in CLC1CONbits
6908 #define LC1OUT                  CLC1CONbits.LC1OUT              // bit 5, shadows bit in CLC1CONbits
6909 #define OUT                     CLC1CONbits.OUT                 // bit 5, shadows bit in CLC1CONbits
6910 #define LC1EN                   CLC1CONbits.LC1EN               // bit 7, shadows bit in CLC1CONbits
6911 #define EN                      CLC1CONbits.EN                  // bit 7, shadows bit in CLC1CONbits
6912 
6913 #define LC1G1D1N                CLC1GLS0bits.LC1G1D1N           // bit 0, shadows bit in CLC1GLS0bits
6914 #define D1N                     CLC1GLS0bits.D1N                // bit 0, shadows bit in CLC1GLS0bits
6915 #define LC1G1D1T                CLC1GLS0bits.LC1G1D1T           // bit 1, shadows bit in CLC1GLS0bits
6916 #define D1T                     CLC1GLS0bits.D1T                // bit 1, shadows bit in CLC1GLS0bits
6917 #define LC1G1D2N                CLC1GLS0bits.LC1G1D2N           // bit 2, shadows bit in CLC1GLS0bits
6918 #define D2N                     CLC1GLS0bits.D2N                // bit 2, shadows bit in CLC1GLS0bits
6919 #define LC1G1D2T                CLC1GLS0bits.LC1G1D2T           // bit 3, shadows bit in CLC1GLS0bits
6920 #define D2T                     CLC1GLS0bits.D2T                // bit 3, shadows bit in CLC1GLS0bits
6921 #define LC1G1D3N                CLC1GLS0bits.LC1G1D3N           // bit 4, shadows bit in CLC1GLS0bits
6922 #define D3N                     CLC1GLS0bits.D3N                // bit 4, shadows bit in CLC1GLS0bits
6923 #define LC1G1D3T                CLC1GLS0bits.LC1G1D3T           // bit 5, shadows bit in CLC1GLS0bits
6924 #define D3T                     CLC1GLS0bits.D3T                // bit 5, shadows bit in CLC1GLS0bits
6925 #define LC1G1D4N                CLC1GLS0bits.LC1G1D4N           // bit 6, shadows bit in CLC1GLS0bits
6926 #define D4N                     CLC1GLS0bits.D4N                // bit 6, shadows bit in CLC1GLS0bits
6927 #define LC1G1D4T                CLC1GLS0bits.LC1G1D4T           // bit 7, shadows bit in CLC1GLS0bits
6928 #define D4T                     CLC1GLS0bits.D4T                // bit 7, shadows bit in CLC1GLS0bits
6929 
6930 #define LC1G4D1N                CLC1GLS3bits.LC1G4D1N           // bit 0, shadows bit in CLC1GLS3bits
6931 #define G4D1N                   CLC1GLS3bits.G4D1N              // bit 0, shadows bit in CLC1GLS3bits
6932 #define LC1G4D1T                CLC1GLS3bits.LC1G4D1T           // bit 1, shadows bit in CLC1GLS3bits
6933 #define G4D1T                   CLC1GLS3bits.G4D1T              // bit 1, shadows bit in CLC1GLS3bits
6934 #define LC1G4D2N                CLC1GLS3bits.LC1G4D2N           // bit 2, shadows bit in CLC1GLS3bits
6935 #define G4D2N                   CLC1GLS3bits.G4D2N              // bit 2, shadows bit in CLC1GLS3bits
6936 #define LC1G4D2T                CLC1GLS3bits.LC1G4D2T           // bit 3, shadows bit in CLC1GLS3bits
6937 #define G4D2T                   CLC1GLS3bits.G4D2T              // bit 3, shadows bit in CLC1GLS3bits
6938 #define LC1G4D3N                CLC1GLS3bits.LC1G4D3N           // bit 4, shadows bit in CLC1GLS3bits
6939 #define G4D3N                   CLC1GLS3bits.G4D3N              // bit 4, shadows bit in CLC1GLS3bits
6940 #define LC1G4D3T                CLC1GLS3bits.LC1G4D3T           // bit 5, shadows bit in CLC1GLS3bits
6941 #define G4D3T                   CLC1GLS3bits.G4D3T              // bit 5, shadows bit in CLC1GLS3bits
6942 #define LC1G4D4N                CLC1GLS3bits.LC1G4D4N           // bit 6, shadows bit in CLC1GLS3bits
6943 #define G4D4N                   CLC1GLS3bits.G4D4N              // bit 6, shadows bit in CLC1GLS3bits
6944 #define LC1G4D4T                CLC1GLS3bits.LC1G4D4T           // bit 7, shadows bit in CLC1GLS3bits
6945 #define G4D4T                   CLC1GLS3bits.G4D4T              // bit 7, shadows bit in CLC1GLS3bits
6946 
6947 #define LC1G1POL                CLC1POLbits.LC1G1POL            // bit 0, shadows bit in CLC1POLbits
6948 #define G1POL                   CLC1POLbits.G1POL               // bit 0, shadows bit in CLC1POLbits
6949 #define LC1G2POL                CLC1POLbits.LC1G2POL            // bit 1, shadows bit in CLC1POLbits
6950 #define G2POL                   CLC1POLbits.G2POL               // bit 1, shadows bit in CLC1POLbits
6951 #define LC1G3POL                CLC1POLbits.LC1G3POL            // bit 2, shadows bit in CLC1POLbits
6952 #define G3POL                   CLC1POLbits.G3POL               // bit 2, shadows bit in CLC1POLbits
6953 #define LC1G4POL                CLC1POLbits.LC1G4POL            // bit 3, shadows bit in CLC1POLbits
6954 #define G4POL                   CLC1POLbits.G4POL               // bit 3, shadows bit in CLC1POLbits
6955 #define LC1POL                  CLC1POLbits.LC1POL              // bit 7, shadows bit in CLC1POLbits
6956 #define POL                     CLC1POLbits.POL                 // bit 7, shadows bit in CLC1POLbits
6957 
6958 #define LC1D1S0                 CLC1SEL0bits.LC1D1S0            // bit 0, shadows bit in CLC1SEL0bits
6959 #define D1S0                    CLC1SEL0bits.D1S0               // bit 0, shadows bit in CLC1SEL0bits
6960 #define LC1D1S1                 CLC1SEL0bits.LC1D1S1            // bit 1, shadows bit in CLC1SEL0bits
6961 #define D1S1                    CLC1SEL0bits.D1S1               // bit 1, shadows bit in CLC1SEL0bits
6962 #define LC1D1S2                 CLC1SEL0bits.LC1D1S2            // bit 2, shadows bit in CLC1SEL0bits
6963 #define D1S2                    CLC1SEL0bits.D1S2               // bit 2, shadows bit in CLC1SEL0bits
6964 #define LC1D1S3                 CLC1SEL0bits.LC1D1S3            // bit 3, shadows bit in CLC1SEL0bits
6965 #define D1S3                    CLC1SEL0bits.D1S3               // bit 3, shadows bit in CLC1SEL0bits
6966 #define LC1D1S4                 CLC1SEL0bits.LC1D1S4            // bit 4, shadows bit in CLC1SEL0bits
6967 #define D1S4                    CLC1SEL0bits.D1S4               // bit 4, shadows bit in CLC1SEL0bits
6968 
6969 #define LC1D2S0                 CLC1SEL1bits.LC1D2S0            // bit 0, shadows bit in CLC1SEL1bits
6970 #define D2S0                    CLC1SEL1bits.D2S0               // bit 0, shadows bit in CLC1SEL1bits
6971 #define LC1D2S1                 CLC1SEL1bits.LC1D2S1            // bit 1, shadows bit in CLC1SEL1bits
6972 #define D2S1                    CLC1SEL1bits.D2S1               // bit 1, shadows bit in CLC1SEL1bits
6973 #define LC1D2S2                 CLC1SEL1bits.LC1D2S2            // bit 2, shadows bit in CLC1SEL1bits
6974 #define D2S2                    CLC1SEL1bits.D2S2               // bit 2, shadows bit in CLC1SEL1bits
6975 #define LC1D2S3                 CLC1SEL1bits.LC1D2S3            // bit 3, shadows bit in CLC1SEL1bits
6976 #define D2S3                    CLC1SEL1bits.D2S3               // bit 3, shadows bit in CLC1SEL1bits
6977 #define LC1D2S4                 CLC1SEL1bits.LC1D2S4            // bit 4, shadows bit in CLC1SEL1bits
6978 #define D2S4                    CLC1SEL1bits.D2S4               // bit 4, shadows bit in CLC1SEL1bits
6979 
6980 #define LC1D3S0                 CLC1SEL2bits.LC1D3S0            // bit 0, shadows bit in CLC1SEL2bits
6981 #define D3S0                    CLC1SEL2bits.D3S0               // bit 0, shadows bit in CLC1SEL2bits
6982 #define LC1D3S1                 CLC1SEL2bits.LC1D3S1            // bit 1, shadows bit in CLC1SEL2bits
6983 #define D3S1                    CLC1SEL2bits.D3S1               // bit 1, shadows bit in CLC1SEL2bits
6984 #define LC1D3S2                 CLC1SEL2bits.LC1D3S2            // bit 2, shadows bit in CLC1SEL2bits
6985 #define D3S2                    CLC1SEL2bits.D3S2               // bit 2, shadows bit in CLC1SEL2bits
6986 #define LC1D3S3                 CLC1SEL2bits.LC1D3S3            // bit 3, shadows bit in CLC1SEL2bits
6987 #define D3S3                    CLC1SEL2bits.D3S3               // bit 3, shadows bit in CLC1SEL2bits
6988 #define LC1D3S4                 CLC1SEL2bits.LC1D3S4            // bit 4, shadows bit in CLC1SEL2bits
6989 #define D3S4                    CLC1SEL2bits.D3S4               // bit 4, shadows bit in CLC1SEL2bits
6990 
6991 #define LC1D4S0                 CLC1SEL3bits.LC1D4S0            // bit 0, shadows bit in CLC1SEL3bits
6992 #define D4S0                    CLC1SEL3bits.D4S0               // bit 0, shadows bit in CLC1SEL3bits
6993 #define LC1D4S1                 CLC1SEL3bits.LC1D4S1            // bit 1, shadows bit in CLC1SEL3bits
6994 #define D4S1                    CLC1SEL3bits.D4S1               // bit 1, shadows bit in CLC1SEL3bits
6995 #define LC1D4S2                 CLC1SEL3bits.LC1D4S2            // bit 2, shadows bit in CLC1SEL3bits
6996 #define D4S2                    CLC1SEL3bits.D4S2               // bit 2, shadows bit in CLC1SEL3bits
6997 #define LC1D4S3                 CLC1SEL3bits.LC1D4S3            // bit 3, shadows bit in CLC1SEL3bits
6998 #define D4S3                    CLC1SEL3bits.D4S3               // bit 3, shadows bit in CLC1SEL3bits
6999 #define LC1D4S4                 CLC1SEL3bits.LC1D4S4            // bit 4, shadows bit in CLC1SEL3bits
7000 #define D4S4                    CLC1SEL3bits.D4S4               // bit 4, shadows bit in CLC1SEL3bits
7001 
7002 #define MCLC1OUT                CLCDATAbits.MCLC1OUT            // bit 0
7003 #define MCLC2OUT                CLCDATAbits.MCLC2OUT            // bit 1
7004 #define MCLC3OUT                CLCDATAbits.MCLC3OUT            // bit 2
7005 
7006 #define C1SYNC                  CM1CON0bits.C1SYNC              // bit 0
7007 #define C1HYS                   CM1CON0bits.C1HYS               // bit 1
7008 #define C1SP                    CM1CON0bits.C1SP                // bit 2
7009 #define C1ZLF                   CM1CON0bits.C1ZLF               // bit 3
7010 #define C1POL                   CM1CON0bits.C1POL               // bit 4
7011 #define C1OUT                   CM1CON0bits.C1OUT               // bit 6
7012 #define C1ON                    CM1CON0bits.C1ON                // bit 7
7013 
7014 #define C1NCH0                  CM1CON1bits.C1NCH0              // bit 0
7015 #define C1NCH1                  CM1CON1bits.C1NCH1              // bit 1
7016 #define C1NCH2                  CM1CON1bits.C1NCH2              // bit 2
7017 #define C1PCH0                  CM1CON1bits.C1PCH0              // bit 3
7018 #define C1PCH1                  CM1CON1bits.C1PCH1              // bit 4
7019 #define C1PCH2                  CM1CON1bits.C1PCH2              // bit 5
7020 #define C1INTN                  CM1CON1bits.C1INTN              // bit 6
7021 #define C1INTP                  CM1CON1bits.C1INTP              // bit 7
7022 
7023 #define C2SYNC                  CM2CON0bits.C2SYNC              // bit 0
7024 #define C2HYS                   CM2CON0bits.C2HYS               // bit 1
7025 #define C2SP                    CM2CON0bits.C2SP                // bit 2
7026 #define C2ZLF                   CM2CON0bits.C2ZLF               // bit 3
7027 #define C2POL                   CM2CON0bits.C2POL               // bit 4
7028 #define C2OUT                   CM2CON0bits.C2OUT               // bit 6
7029 #define C2ON                    CM2CON0bits.C2ON                // bit 7
7030 
7031 #define C2NCH0                  CM2CON1bits.C2NCH0              // bit 0
7032 #define C2NCH1                  CM2CON1bits.C2NCH1              // bit 1
7033 #define C2NCH2                  CM2CON1bits.C2NCH2              // bit 2
7034 #define C2PCH0                  CM2CON1bits.C2PCH0              // bit 3
7035 #define C2PCH1                  CM2CON1bits.C2PCH1              // bit 4
7036 #define C2PCH2                  CM2CON1bits.C2PCH2              // bit 5
7037 #define C2INTN                  CM2CON1bits.C2INTN              // bit 6
7038 #define C2INTP                  CM2CON1bits.C2INTP              // bit 7
7039 
7040 #define MC1OUT                  CMOUTbits.MC1OUT                // bit 0
7041 #define MC2OUT                  CMOUTbits.MC2OUT                // bit 1
7042 
7043 #define G1ASDAC0                COG1ASD0bits.G1ASDAC0           // bit 2
7044 #define G1ASDAC1                COG1ASD0bits.G1ASDAC1           // bit 3
7045 #define G1ASDBD0                COG1ASD0bits.G1ASDBD0           // bit 4
7046 #define G1ASDBD1                COG1ASD0bits.G1ASDBD1           // bit 5
7047 #define G1ARSEN                 COG1ASD0bits.G1ARSEN            // bit 6
7048 #define G1ASE                   COG1ASD0bits.G1ASE              // bit 7
7049 
7050 #define G1AS0E                  COG1ASD1bits.G1AS0E             // bit 0
7051 #define G1AS1E                  COG1ASD1bits.G1AS1E             // bit 1
7052 #define G1AS2E                  COG1ASD1bits.G1AS2E             // bit 2
7053 #define G1AS3E                  COG1ASD1bits.G1AS3E             // bit 3
7054 
7055 #define G1BLKF0                 COG1BLKFbits.G1BLKF0            // bit 0
7056 #define G1BLKF1                 COG1BLKFbits.G1BLKF1            // bit 1
7057 #define G1BLKF2                 COG1BLKFbits.G1BLKF2            // bit 2
7058 #define G1BLKF3                 COG1BLKFbits.G1BLKF3            // bit 3
7059 #define G1BLKF4                 COG1BLKFbits.G1BLKF4            // bit 4
7060 #define G1BLKF5                 COG1BLKFbits.G1BLKF5            // bit 5
7061 
7062 #define G1BLKR0                 COG1BLKRbits.G1BLKR0            // bit 0
7063 #define G1BLKR1                 COG1BLKRbits.G1BLKR1            // bit 1
7064 #define G1BLKR2                 COG1BLKRbits.G1BLKR2            // bit 2
7065 #define G1BLKR3                 COG1BLKRbits.G1BLKR3            // bit 3
7066 #define G1BLKR4                 COG1BLKRbits.G1BLKR4            // bit 4
7067 #define G1BLKR5                 COG1BLKRbits.G1BLKR5            // bit 5
7068 
7069 #define G1MD0                   COG1CON0bits.G1MD0              // bit 0
7070 #define G1MD1                   COG1CON0bits.G1MD1              // bit 1
7071 #define G1MD2                   COG1CON0bits.G1MD2              // bit 2
7072 #define G1CS0                   COG1CON0bits.G1CS0              // bit 3
7073 #define G1CS1                   COG1CON0bits.G1CS1              // bit 4
7074 #define G1LD                    COG1CON0bits.G1LD               // bit 6
7075 #define G1EN                    COG1CON0bits.G1EN               // bit 7
7076 
7077 #define G1POLA                  COG1CON1bits.G1POLA             // bit 0
7078 #define G1POLB                  COG1CON1bits.G1POLB             // bit 1
7079 #define G1POLC                  COG1CON1bits.G1POLC             // bit 2
7080 #define G1POLD                  COG1CON1bits.G1POLD             // bit 3
7081 #define G1FDBS                  COG1CON1bits.G1FDBS             // bit 6
7082 #define G1RDBS                  COG1CON1bits.G1RDBS             // bit 7
7083 
7084 #define G1DBF0                  COG1DBFbits.G1DBF0              // bit 0
7085 #define G1DBF1                  COG1DBFbits.G1DBF1              // bit 1
7086 #define G1DBF2                  COG1DBFbits.G1DBF2              // bit 2
7087 #define G1DBF3                  COG1DBFbits.G1DBF3              // bit 3
7088 #define G1DBF4                  COG1DBFbits.G1DBF4              // bit 4
7089 #define G1DBF5                  COG1DBFbits.G1DBF5              // bit 5
7090 
7091 #define G1DBR0                  COG1DBRbits.G1DBR0              // bit 0
7092 #define G1DBR1                  COG1DBRbits.G1DBR1              // bit 1
7093 #define G1DBR2                  COG1DBRbits.G1DBR2              // bit 2
7094 #define G1DBR3                  COG1DBRbits.G1DBR3              // bit 3
7095 #define G1DBR4                  COG1DBRbits.G1DBR4              // bit 4
7096 #define G1DBR5                  COG1DBRbits.G1DBR5              // bit 5
7097 
7098 #define G1FIS0                  COG1FISbits.G1FIS0              // bit 0
7099 #define G1FIS1                  COG1FISbits.G1FIS1              // bit 1
7100 #define G1FIS2                  COG1FISbits.G1FIS2              // bit 2
7101 #define G1FIS3                  COG1FISbits.G1FIS3              // bit 3
7102 #define G1FIS4                  COG1FISbits.G1FIS4              // bit 4
7103 #define G1FIS5                  COG1FISbits.G1FIS5              // bit 5
7104 #define G1FIS6                  COG1FISbits.G1FIS6              // bit 6
7105 
7106 #define G1FSIM0                 COG1FSIMbits.G1FSIM0            // bit 0
7107 #define G1FSIM1                 COG1FSIMbits.G1FSIM1            // bit 1
7108 #define G1FSIM2                 COG1FSIMbits.G1FSIM2            // bit 2
7109 #define G1FSIM3                 COG1FSIMbits.G1FSIM3            // bit 3
7110 #define G1FSIM4                 COG1FSIMbits.G1FSIM4            // bit 4
7111 #define G1FSIM5                 COG1FSIMbits.G1FSIM5            // bit 5
7112 #define G1FSIM6                 COG1FSIMbits.G1FSIM6            // bit 6
7113 
7114 #define G1PHF0                  COG1PHFbits.G1PHF0              // bit 0
7115 #define G1PHF1                  COG1PHFbits.G1PHF1              // bit 1
7116 #define G1PHF2                  COG1PHFbits.G1PHF2              // bit 2
7117 #define G1PHF3                  COG1PHFbits.G1PHF3              // bit 3
7118 #define G1PHF4                  COG1PHFbits.G1PHF4              // bit 4
7119 #define G1PHF5                  COG1PHFbits.G1PHF5              // bit 5
7120 
7121 #define G1PHR0                  COG1PHRbits.G1PHR0              // bit 0
7122 #define G1PHR1                  COG1PHRbits.G1PHR1              // bit 1
7123 #define G1PHR2                  COG1PHRbits.G1PHR2              // bit 2
7124 #define G1PHR3                  COG1PHRbits.G1PHR3              // bit 3
7125 #define G1PHR4                  COG1PHRbits.G1PHR4              // bit 4
7126 #define G1PHR5                  COG1PHRbits.G1PHR5              // bit 5
7127 
7128 #define G1RIS0                  COG1RISbits.G1RIS0              // bit 0
7129 #define G1RIS1                  COG1RISbits.G1RIS1              // bit 1
7130 #define G1RIS2                  COG1RISbits.G1RIS2              // bit 2
7131 #define G1RIS3                  COG1RISbits.G1RIS3              // bit 3
7132 #define G1RIS4                  COG1RISbits.G1RIS4              // bit 4
7133 #define G1RIS5                  COG1RISbits.G1RIS5              // bit 5
7134 #define G1RIS6                  COG1RISbits.G1RIS6              // bit 6
7135 
7136 #define G1RSIM0                 COG1RSIMbits.G1RSIM0            // bit 0
7137 #define G1RSIM1                 COG1RSIMbits.G1RSIM1            // bit 1
7138 #define G1RSIM2                 COG1RSIMbits.G1RSIM2            // bit 2
7139 #define G1RSIM3                 COG1RSIMbits.G1RSIM3            // bit 3
7140 #define G1RSIM4                 COG1RSIMbits.G1RSIM4            // bit 4
7141 #define G1RSIM5                 COG1RSIMbits.G1RSIM5            // bit 5
7142 #define G1RSIM6                 COG1RSIMbits.G1RSIM6            // bit 6
7143 
7144 #define G1STRA                  COG1STRbits.G1STRA              // bit 0
7145 #define G1STRB                  COG1STRbits.G1STRB              // bit 1
7146 #define G1STRC                  COG1STRbits.G1STRC              // bit 2
7147 #define G1STRD                  COG1STRbits.G1STRD              // bit 3
7148 #define G1SDATA                 COG1STRbits.G1SDATA             // bit 4
7149 #define G1SDATB                 COG1STRbits.G1SDATB             // bit 5
7150 #define G1SDATC                 COG1STRbits.G1SDATC             // bit 6
7151 #define G1SDATD                 COG1STRbits.G1SDATD             // bit 7
7152 
7153 #define DAC1NSS                 DAC1CON0bits.DAC1NSS            // bit 0, shadows bit in DAC1CON0bits
7154 #define DACNSS                  DAC1CON0bits.DACNSS             // bit 0, shadows bit in DAC1CON0bits
7155 #define DAC1PSS0                DAC1CON0bits.DAC1PSS0           // bit 2, shadows bit in DAC1CON0bits
7156 #define DACPSS0                 DAC1CON0bits.DACPSS0            // bit 2, shadows bit in DAC1CON0bits
7157 #define DAC1PSS1                DAC1CON0bits.DAC1PSS1           // bit 3, shadows bit in DAC1CON0bits
7158 #define DACPSS1                 DAC1CON0bits.DACPSS1            // bit 3, shadows bit in DAC1CON0bits
7159 #define DAC1OE2                 DAC1CON0bits.DAC1OE2            // bit 4, shadows bit in DAC1CON0bits
7160 #define DACOE0                  DAC1CON0bits.DACOE0             // bit 4, shadows bit in DAC1CON0bits
7161 #define DAC1OE1                 DAC1CON0bits.DAC1OE1            // bit 5, shadows bit in DAC1CON0bits
7162 #define DACOE1                  DAC1CON0bits.DACOE1             // bit 5, shadows bit in DAC1CON0bits
7163 #define DAC1EN                  DAC1CON0bits.DAC1EN             // bit 7, shadows bit in DAC1CON0bits
7164 #define DACEN                   DAC1CON0bits.DACEN              // bit 7, shadows bit in DAC1CON0bits
7165 
7166 #define DAC1R0                  DAC1CON1bits.DAC1R0             // bit 0, shadows bit in DAC1CON1bits
7167 #define DACR0                   DAC1CON1bits.DACR0              // bit 0, shadows bit in DAC1CON1bits
7168 #define DAC1R1                  DAC1CON1bits.DAC1R1             // bit 1, shadows bit in DAC1CON1bits
7169 #define DACR1                   DAC1CON1bits.DACR1              // bit 1, shadows bit in DAC1CON1bits
7170 #define DAC1R2                  DAC1CON1bits.DAC1R2             // bit 2, shadows bit in DAC1CON1bits
7171 #define DACR2                   DAC1CON1bits.DACR2              // bit 2, shadows bit in DAC1CON1bits
7172 #define DAC1R3                  DAC1CON1bits.DAC1R3             // bit 3, shadows bit in DAC1CON1bits
7173 #define DACR3                   DAC1CON1bits.DACR3              // bit 3, shadows bit in DAC1CON1bits
7174 #define DAC1R4                  DAC1CON1bits.DAC1R4             // bit 4, shadows bit in DAC1CON1bits
7175 #define DACR4                   DAC1CON1bits.DACR4              // bit 4, shadows bit in DAC1CON1bits
7176 #define DAC1R5                  DAC1CON1bits.DAC1R5             // bit 5, shadows bit in DAC1CON1bits
7177 #define DACR5                   DAC1CON1bits.DACR5              // bit 5, shadows bit in DAC1CON1bits
7178 #define DAC1R6                  DAC1CON1bits.DAC1R6             // bit 6, shadows bit in DAC1CON1bits
7179 #define DACR6                   DAC1CON1bits.DACR6              // bit 6, shadows bit in DAC1CON1bits
7180 #define DAC1R7                  DAC1CON1bits.DAC1R7             // bit 7, shadows bit in DAC1CON1bits
7181 #define DACR7                   DAC1CON1bits.DACR7              // bit 7, shadows bit in DAC1CON1bits
7182 
7183 #define ADFVR0                  FVRCONbits.ADFVR0               // bit 0
7184 #define ADFVR1                  FVRCONbits.ADFVR1               // bit 1
7185 #define CDAFVR0                 FVRCONbits.CDAFVR0              // bit 2
7186 #define CDAFVR1                 FVRCONbits.CDAFVR1              // bit 3
7187 #define TSRNG                   FVRCONbits.TSRNG                // bit 4
7188 #define TSEN                    FVRCONbits.TSEN                 // bit 5
7189 #define FVRRDY                  FVRCONbits.FVRRDY               // bit 6
7190 #define FVREN                   FVRCONbits.FVREN                // bit 7
7191 
7192 #define INLVLA0                 INLVLAbits.INLVLA0              // bit 0
7193 #define INLVLA1                 INLVLAbits.INLVLA1              // bit 1
7194 #define INLVLA2                 INLVLAbits.INLVLA2              // bit 2
7195 #define INLVLA3                 INLVLAbits.INLVLA3              // bit 3
7196 #define INLVLA4                 INLVLAbits.INLVLA4              // bit 4
7197 #define INLVLA5                 INLVLAbits.INLVLA5              // bit 5
7198 
7199 #define INLVLB4                 INLVLBbits.INLVLB4              // bit 4
7200 #define INLVLB5                 INLVLBbits.INLVLB5              // bit 5
7201 #define INLVLB6                 INLVLBbits.INLVLB6              // bit 6
7202 #define INLVLB7                 INLVLBbits.INLVLB7              // bit 7
7203 
7204 #define INLVLC0                 INLVLCbits.INLVLC0              // bit 0
7205 #define INLVLC1                 INLVLCbits.INLVLC1              // bit 1
7206 #define INLVLC2                 INLVLCbits.INLVLC2              // bit 2
7207 #define INLVLC3                 INLVLCbits.INLVLC3              // bit 3
7208 #define INLVLC4                 INLVLCbits.INLVLC4              // bit 4
7209 #define INLVLC5                 INLVLCbits.INLVLC5              // bit 5
7210 #define INLVLC6                 INLVLCbits.INLVLC6              // bit 6
7211 #define INLVLC7                 INLVLCbits.INLVLC7              // bit 7
7212 
7213 #define IOCIF                   INTCONbits.IOCIF                // bit 0
7214 #define INTF                    INTCONbits.INTF                 // bit 1
7215 #define TMR0IF                  INTCONbits.TMR0IF               // bit 2, shadows bit in INTCONbits
7216 #define T0IF                    INTCONbits.T0IF                 // bit 2, shadows bit in INTCONbits
7217 #define IOCIE                   INTCONbits.IOCIE                // bit 3
7218 #define INTE                    INTCONbits.INTE                 // bit 4
7219 #define TMR0IE                  INTCONbits.TMR0IE               // bit 5, shadows bit in INTCONbits
7220 #define T0IE                    INTCONbits.T0IE                 // bit 5, shadows bit in INTCONbits
7221 #define PEIE                    INTCONbits.PEIE                 // bit 6
7222 #define GIE                     INTCONbits.GIE                  // bit 7
7223 
7224 #define IOCAF0                  IOCAFbits.IOCAF0                // bit 0
7225 #define IOCAF1                  IOCAFbits.IOCAF1                // bit 1
7226 #define IOCAF2                  IOCAFbits.IOCAF2                // bit 2
7227 #define IOCAF3                  IOCAFbits.IOCAF3                // bit 3
7228 #define IOCAF4                  IOCAFbits.IOCAF4                // bit 4
7229 #define IOCAF5                  IOCAFbits.IOCAF5                // bit 5
7230 
7231 #define IOCAN0                  IOCANbits.IOCAN0                // bit 0
7232 #define IOCAN1                  IOCANbits.IOCAN1                // bit 1
7233 #define IOCAN2                  IOCANbits.IOCAN2                // bit 2
7234 #define IOCAN3                  IOCANbits.IOCAN3                // bit 3
7235 #define IOCAN4                  IOCANbits.IOCAN4                // bit 4
7236 #define IOCAN5                  IOCANbits.IOCAN5                // bit 5
7237 
7238 #define IOCAP0                  IOCAPbits.IOCAP0                // bit 0
7239 #define IOCAP1                  IOCAPbits.IOCAP1                // bit 1
7240 #define IOCAP2                  IOCAPbits.IOCAP2                // bit 2
7241 #define IOCAP3                  IOCAPbits.IOCAP3                // bit 3
7242 #define IOCAP4                  IOCAPbits.IOCAP4                // bit 4
7243 #define IOCAP5                  IOCAPbits.IOCAP5                // bit 5
7244 
7245 #define IOCBF4                  IOCBFbits.IOCBF4                // bit 4
7246 #define IOCBF5                  IOCBFbits.IOCBF5                // bit 5
7247 #define IOCBF6                  IOCBFbits.IOCBF6                // bit 6
7248 #define IOCBF7                  IOCBFbits.IOCBF7                // bit 7
7249 
7250 #define IOCBN4                  IOCBNbits.IOCBN4                // bit 4
7251 #define IOCBN5                  IOCBNbits.IOCBN5                // bit 5
7252 #define IOCBN6                  IOCBNbits.IOCBN6                // bit 6
7253 #define IOCBN7                  IOCBNbits.IOCBN7                // bit 7
7254 
7255 #define IOCBP4                  IOCBPbits.IOCBP4                // bit 4
7256 #define IOCBP5                  IOCBPbits.IOCBP5                // bit 5
7257 #define IOCBP6                  IOCBPbits.IOCBP6                // bit 6
7258 #define IOCBP7                  IOCBPbits.IOCBP7                // bit 7
7259 
7260 #define IOCCF0                  IOCCFbits.IOCCF0                // bit 0
7261 #define IOCCF1                  IOCCFbits.IOCCF1                // bit 1
7262 #define IOCCF2                  IOCCFbits.IOCCF2                // bit 2
7263 #define IOCCF3                  IOCCFbits.IOCCF3                // bit 3
7264 #define IOCCF4                  IOCCFbits.IOCCF4                // bit 4
7265 #define IOCCF5                  IOCCFbits.IOCCF5                // bit 5
7266 #define IOCCF6                  IOCCFbits.IOCCF6                // bit 6
7267 #define IOCCF7                  IOCCFbits.IOCCF7                // bit 7
7268 
7269 #define IOCCN0                  IOCCNbits.IOCCN0                // bit 0
7270 #define IOCCN1                  IOCCNbits.IOCCN1                // bit 1
7271 #define IOCCN2                  IOCCNbits.IOCCN2                // bit 2
7272 #define IOCCN3                  IOCCNbits.IOCCN3                // bit 3
7273 #define IOCCN4                  IOCCNbits.IOCCN4                // bit 4
7274 #define IOCCN5                  IOCCNbits.IOCCN5                // bit 5
7275 #define IOCCN6                  IOCCNbits.IOCCN6                // bit 6
7276 #define IOCCN7                  IOCCNbits.IOCCN7                // bit 7
7277 
7278 #define IOCCP0                  IOCCPbits.IOCCP0                // bit 0
7279 #define IOCCP1                  IOCCPbits.IOCCP1                // bit 1
7280 #define IOCCP2                  IOCCPbits.IOCCP2                // bit 2
7281 #define IOCCP3                  IOCCPbits.IOCCP3                // bit 3
7282 #define IOCCP4                  IOCCPbits.IOCCP4                // bit 4
7283 #define IOCCP5                  IOCCPbits.IOCCP5                // bit 5
7284 #define IOCCP6                  IOCCPbits.IOCCP6                // bit 6
7285 #define IOCCP7                  IOCCPbits.IOCCP7                // bit 7
7286 
7287 #define LATA0                   LATAbits.LATA0                  // bit 0
7288 #define LATA1                   LATAbits.LATA1                  // bit 1
7289 #define LATA2                   LATAbits.LATA2                  // bit 2
7290 #define LATA4                   LATAbits.LATA4                  // bit 4
7291 #define LATA5                   LATAbits.LATA5                  // bit 5
7292 
7293 #define LATB4                   LATBbits.LATB4                  // bit 4
7294 #define LATB5                   LATBbits.LATB5                  // bit 5
7295 #define LATB6                   LATBbits.LATB6                  // bit 6
7296 #define LATB7                   LATBbits.LATB7                  // bit 7
7297 
7298 #define LATC0                   LATCbits.LATC0                  // bit 0
7299 #define LATC1                   LATCbits.LATC1                  // bit 1
7300 #define LATC2                   LATCbits.LATC2                  // bit 2
7301 #define LATC3                   LATCbits.LATC3                  // bit 3
7302 #define LATC4                   LATCbits.LATC4                  // bit 4
7303 #define LATC5                   LATCbits.LATC5                  // bit 5
7304 #define LATC6                   LATCbits.LATC6                  // bit 6
7305 #define LATC7                   LATCbits.LATC7                  // bit 7
7306 
7307 #define ODA0                    ODCONAbits.ODA0                 // bit 0
7308 #define ODA1                    ODCONAbits.ODA1                 // bit 1
7309 #define ODA2                    ODCONAbits.ODA2                 // bit 2
7310 #define ODA4                    ODCONAbits.ODA4                 // bit 4
7311 #define ODA5                    ODCONAbits.ODA5                 // bit 5
7312 
7313 #define ODB4                    ODCONBbits.ODB4                 // bit 4
7314 #define ODB5                    ODCONBbits.ODB5                 // bit 5
7315 #define ODB6                    ODCONBbits.ODB6                 // bit 6
7316 #define ODB7                    ODCONBbits.ODB7                 // bit 7
7317 
7318 #define ODC0                    ODCONCbits.ODC0                 // bit 0
7319 #define ODC1                    ODCONCbits.ODC1                 // bit 1
7320 #define ODC2                    ODCONCbits.ODC2                 // bit 2
7321 #define ODC3                    ODCONCbits.ODC3                 // bit 3
7322 #define ODC4                    ODCONCbits.ODC4                 // bit 4
7323 #define ODC5                    ODCONCbits.ODC5                 // bit 5
7324 #define ODC6                    ODCONCbits.ODC6                 // bit 6
7325 #define ODC7                    ODCONCbits.ODC7                 // bit 7
7326 
7327 #define OPA1PCH0                OPA1CONbits.OPA1PCH0            // bit 0
7328 #define OPA1PCH1                OPA1CONbits.OPA1PCH1            // bit 1
7329 #define OPA1UG                  OPA1CONbits.OPA1UG              // bit 4
7330 #define OPA1SP                  OPA1CONbits.OPA1SP              // bit 6
7331 #define OPA1EN                  OPA1CONbits.OPA1EN              // bit 7
7332 
7333 #define OPA2PCH0                OPA2CONbits.OPA2PCH0            // bit 0
7334 #define OPA2PCH1                OPA2CONbits.OPA2PCH1            // bit 1
7335 #define OPA2UG                  OPA2CONbits.OPA2UG              // bit 4
7336 #define OPA2SP                  OPA2CONbits.OPA2SP              // bit 6
7337 #define OPA2EN                  OPA2CONbits.OPA2EN              // bit 7
7338 
7339 #define PS0                     OPTION_REGbits.PS0              // bit 0
7340 #define PS1                     OPTION_REGbits.PS1              // bit 1
7341 #define PS2                     OPTION_REGbits.PS2              // bit 2
7342 #define PSA                     OPTION_REGbits.PSA              // bit 3
7343 #define TMR0SE                  OPTION_REGbits.TMR0SE           // bit 4, shadows bit in OPTION_REGbits
7344 #define T0SE                    OPTION_REGbits.T0SE             // bit 4, shadows bit in OPTION_REGbits
7345 #define TMR0CS                  OPTION_REGbits.TMR0CS           // bit 5, shadows bit in OPTION_REGbits
7346 #define T0CS                    OPTION_REGbits.T0CS             // bit 5, shadows bit in OPTION_REGbits
7347 #define INTEDG                  OPTION_REGbits.INTEDG           // bit 6
7348 #define NOT_WPUEN               OPTION_REGbits.NOT_WPUEN        // bit 7
7349 
7350 #define SCS0                    OSCCONbits.SCS0                 // bit 0
7351 #define SCS1                    OSCCONbits.SCS1                 // bit 1
7352 #define IRCF0                   OSCCONbits.IRCF0                // bit 3
7353 #define IRCF1                   OSCCONbits.IRCF1                // bit 4
7354 #define IRCF2                   OSCCONbits.IRCF2                // bit 5
7355 #define IRCF3                   OSCCONbits.IRCF3                // bit 6
7356 #define SPLLEN                  OSCCONbits.SPLLEN               // bit 7
7357 
7358 #define HFIOFS                  OSCSTATbits.HFIOFS              // bit 0
7359 #define LFIOFR                  OSCSTATbits.LFIOFR              // bit 1
7360 #define MFIOFR                  OSCSTATbits.MFIOFR              // bit 2
7361 #define HFIOFL                  OSCSTATbits.HFIOFL              // bit 3
7362 #define HFIOFR                  OSCSTATbits.HFIOFR              // bit 4
7363 #define OSTS                    OSCSTATbits.OSTS                // bit 5
7364 #define PLLR                    OSCSTATbits.PLLR                // bit 6
7365 #define SOSCR                   OSCSTATbits.SOSCR               // bit 7
7366 
7367 #define TUN0                    OSCTUNEbits.TUN0                // bit 0
7368 #define TUN1                    OSCTUNEbits.TUN1                // bit 1
7369 #define TUN2                    OSCTUNEbits.TUN2                // bit 2
7370 #define TUN3                    OSCTUNEbits.TUN3                // bit 3
7371 #define TUN4                    OSCTUNEbits.TUN4                // bit 4
7372 #define TUN5                    OSCTUNEbits.TUN5                // bit 5
7373 
7374 #define NOT_BOR                 PCONbits.NOT_BOR                // bit 0
7375 #define NOT_POR                 PCONbits.NOT_POR                // bit 1
7376 #define NOT_RI                  PCONbits.NOT_RI                 // bit 2
7377 #define NOT_RMCLR               PCONbits.NOT_RMCLR              // bit 3
7378 #define NOT_RWDT                PCONbits.NOT_RWDT               // bit 4
7379 #define STKUNF                  PCONbits.STKUNF                 // bit 6
7380 #define STKOVF                  PCONbits.STKOVF                 // bit 7
7381 
7382 #define TMR1IE                  PIE1bits.TMR1IE                 // bit 0
7383 #define TMR2IE                  PIE1bits.TMR2IE                 // bit 1
7384 #define CCP1IE                  PIE1bits.CCP1IE                 // bit 2, shadows bit in PIE1bits
7385 #define CCPIE                   PIE1bits.CCPIE                  // bit 2, shadows bit in PIE1bits
7386 #define SSP1IE                  PIE1bits.SSP1IE                 // bit 3
7387 #define TXIE                    PIE1bits.TXIE                   // bit 4
7388 #define RCIE                    PIE1bits.RCIE                   // bit 5
7389 #define ADIE                    PIE1bits.ADIE                   // bit 6
7390 #define TMR1GIE                 PIE1bits.TMR1GIE                // bit 7
7391 
7392 #define CCP2IE                  PIE2bits.CCP2IE                 // bit 0
7393 #define TMR4IE                  PIE2bits.TMR4IE                 // bit 1
7394 #define TMR6IE                  PIE2bits.TMR6IE                 // bit 2
7395 #define BCL1IE                  PIE2bits.BCL1IE                 // bit 3
7396 #define C1IE                    PIE2bits.C1IE                   // bit 5
7397 #define C2IE                    PIE2bits.C2IE                   // bit 6
7398 #define OSFIE                   PIE2bits.OSFIE                  // bit 7
7399 
7400 #define CLC1IE                  PIE3bits.CLC1IE                 // bit 0
7401 #define CLC2IE                  PIE3bits.CLC2IE                 // bit 1
7402 #define CLC3IE                  PIE3bits.CLC3IE                 // bit 2
7403 #define ZCDIE                   PIE3bits.ZCDIE                  // bit 4
7404 #define COGIE                   PIE3bits.COGIE                  // bit 5
7405 
7406 #define TMR1IF                  PIR1bits.TMR1IF                 // bit 0
7407 #define TMR2IF                  PIR1bits.TMR2IF                 // bit 1
7408 #define CCP1IF                  PIR1bits.CCP1IF                 // bit 2, shadows bit in PIR1bits
7409 #define CCPIF                   PIR1bits.CCPIF                  // bit 2, shadows bit in PIR1bits
7410 #define SSP1IF                  PIR1bits.SSP1IF                 // bit 3
7411 #define TXIF                    PIR1bits.TXIF                   // bit 4
7412 #define RCIF                    PIR1bits.RCIF                   // bit 5
7413 #define ADIF                    PIR1bits.ADIF                   // bit 6
7414 #define TMR1GIF                 PIR1bits.TMR1GIF                // bit 7
7415 
7416 #define CCP2IF                  PIR2bits.CCP2IF                 // bit 0
7417 #define TMR4IF                  PIR2bits.TMR4IF                 // bit 1
7418 #define TMR6IF                  PIR2bits.TMR6IF                 // bit 2
7419 #define BCL1IF                  PIR2bits.BCL1IF                 // bit 3
7420 #define C1IF                    PIR2bits.C1IF                   // bit 5
7421 #define C2IF                    PIR2bits.C2IF                   // bit 6
7422 #define OSFIF                   PIR2bits.OSFIF                  // bit 7
7423 
7424 #define CLC1IF                  PIR3bits.CLC1IF                 // bit 0
7425 #define CLC2IF                  PIR3bits.CLC2IF                 // bit 1
7426 #define CLC3IF                  PIR3bits.CLC3IF                 // bit 2
7427 #define ZCDIF                   PIR3bits.ZCDIF                  // bit 4
7428 #define COGIF                   PIR3bits.COGIF                  // bit 5
7429 
7430 #define RD                      PMCON1bits.RD                   // bit 0
7431 #define WR                      PMCON1bits.WR                   // bit 1
7432 #define WREN                    PMCON1bits.WREN                 // bit 2
7433 #define WRERR                   PMCON1bits.WRERR                // bit 3
7434 #define FREE                    PMCON1bits.FREE                 // bit 4
7435 #define LWLO                    PMCON1bits.LWLO                 // bit 5
7436 #define CFGS                    PMCON1bits.CFGS                 // bit 6
7437 
7438 #define RA0                     PORTAbits.RA0                   // bit 0
7439 #define RA1                     PORTAbits.RA1                   // bit 1
7440 #define RA2                     PORTAbits.RA2                   // bit 2
7441 #define RA3                     PORTAbits.RA3                   // bit 3
7442 #define RA4                     PORTAbits.RA4                   // bit 4
7443 #define RA5                     PORTAbits.RA5                   // bit 5
7444 
7445 #define RB4                     PORTBbits.RB4                   // bit 4
7446 #define RB5                     PORTBbits.RB5                   // bit 5
7447 #define RB6                     PORTBbits.RB6                   // bit 6
7448 #define RB7                     PORTBbits.RB7                   // bit 7
7449 
7450 #define RC0                     PORTCbits.RC0                   // bit 0
7451 #define RC1                     PORTCbits.RC1                   // bit 1
7452 #define RC2                     PORTCbits.RC2                   // bit 2
7453 #define RC3                     PORTCbits.RC3                   // bit 3
7454 #define RC4                     PORTCbits.RC4                   // bit 4
7455 #define RC5                     PORTCbits.RC5                   // bit 5
7456 #define RC6                     PORTCbits.RC6                   // bit 6
7457 #define RC7                     PORTCbits.RC7                   // bit 7
7458 
7459 #define PPSLOCKED               PPSLOCKbits.PPSLOCKED           // bit 0
7460 
7461 #define PWM3POL                 PWM3CONbits.PWM3POL             // bit 4
7462 #define PWM3OUT                 PWM3CONbits.PWM3OUT             // bit 5
7463 #define PWM3EN                  PWM3CONbits.PWM3EN              // bit 7
7464 
7465 #define PWM3DCH0                PWM3DCHbits.PWM3DCH0            // bit 0
7466 #define PWM3DCH1                PWM3DCHbits.PWM3DCH1            // bit 1
7467 #define PWM3DCH2                PWM3DCHbits.PWM3DCH2            // bit 2
7468 #define PWM3DCH3                PWM3DCHbits.PWM3DCH3            // bit 3
7469 #define PWM3DCH4                PWM3DCHbits.PWM3DCH4            // bit 4
7470 #define PWM3DCH5                PWM3DCHbits.PWM3DCH5            // bit 5
7471 #define PWM3DCH6                PWM3DCHbits.PWM3DCH6            // bit 6
7472 #define PWM3DCH7                PWM3DCHbits.PWM3DCH7            // bit 7
7473 
7474 #define PWM3DCL0                PWM3DCLbits.PWM3DCL0            // bit 6
7475 #define PWM3DCL1                PWM3DCLbits.PWM3DCL1            // bit 7
7476 
7477 #define PWM4POL                 PWM4CONbits.PWM4POL             // bit 4
7478 #define PWM4OUT                 PWM4CONbits.PWM4OUT             // bit 5
7479 #define PWM4EN                  PWM4CONbits.PWM4EN              // bit 7
7480 
7481 #define PWM4DCH0                PWM4DCHbits.PWM4DCH0            // bit 0
7482 #define PWM4DCH1                PWM4DCHbits.PWM4DCH1            // bit 1
7483 #define PWM4DCH2                PWM4DCHbits.PWM4DCH2            // bit 2
7484 #define PWM4DCH3                PWM4DCHbits.PWM4DCH3            // bit 3
7485 #define PWM4DCH4                PWM4DCHbits.PWM4DCH4            // bit 4
7486 #define PWM4DCH5                PWM4DCHbits.PWM4DCH5            // bit 5
7487 #define PWM4DCH6                PWM4DCHbits.PWM4DCH6            // bit 6
7488 #define PWM4DCH7                PWM4DCHbits.PWM4DCH7            // bit 7
7489 
7490 #define PWM4DCL0                PWM4DCLbits.PWM4DCL0            // bit 6
7491 #define PWM4DCL1                PWM4DCLbits.PWM4DCL1            // bit 7
7492 
7493 #define RX9D                    RC1STAbits.RX9D                 // bit 0
7494 #define OERR                    RC1STAbits.OERR                 // bit 1
7495 #define FERR                    RC1STAbits.FERR                 // bit 2
7496 #define ADDEN                   RC1STAbits.ADDEN                // bit 3
7497 #define CREN                    RC1STAbits.CREN                 // bit 4
7498 #define SREN                    RC1STAbits.SREN                 // bit 5
7499 #define RX9                     RC1STAbits.RX9                  // bit 6
7500 #define SPEN                    RC1STAbits.SPEN                 // bit 7
7501 
7502 #define SLRA0                   SLRCONAbits.SLRA0               // bit 0
7503 #define SLRA1                   SLRCONAbits.SLRA1               // bit 1
7504 #define SLRA2                   SLRCONAbits.SLRA2               // bit 2
7505 #define SLRA4                   SLRCONAbits.SLRA4               // bit 4
7506 #define SLRA5                   SLRCONAbits.SLRA5               // bit 5
7507 
7508 #define SLRB4                   SLRCONBbits.SLRB4               // bit 4
7509 #define SLRB5                   SLRCONBbits.SLRB5               // bit 5
7510 #define SLRB6                   SLRCONBbits.SLRB6               // bit 6
7511 #define SLRB7                   SLRCONBbits.SLRB7               // bit 7
7512 
7513 #define SLRC0                   SLRCONCbits.SLRC0               // bit 0
7514 #define SLRC1                   SLRCONCbits.SLRC1               // bit 1
7515 #define SLRC2                   SLRCONCbits.SLRC2               // bit 2
7516 #define SLRC3                   SLRCONCbits.SLRC3               // bit 3
7517 #define SLRC4                   SLRCONCbits.SLRC4               // bit 4
7518 #define SLRC5                   SLRCONCbits.SLRC5               // bit 5
7519 #define SLRC6                   SLRCONCbits.SLRC6               // bit 6
7520 #define SLRC7                   SLRCONCbits.SLRC7               // bit 7
7521 
7522 #define SSP1ADD0                SSP1ADDbits.SSP1ADD0            // bit 0, shadows bit in SSP1ADDbits
7523 #define ADD0                    SSP1ADDbits.ADD0                // bit 0, shadows bit in SSP1ADDbits
7524 #define SSP1ADD1                SSP1ADDbits.SSP1ADD1            // bit 1, shadows bit in SSP1ADDbits
7525 #define ADD1                    SSP1ADDbits.ADD1                // bit 1, shadows bit in SSP1ADDbits
7526 #define SSP1ADD2                SSP1ADDbits.SSP1ADD2            // bit 2, shadows bit in SSP1ADDbits
7527 #define ADD2                    SSP1ADDbits.ADD2                // bit 2, shadows bit in SSP1ADDbits
7528 #define SSP1ADD3                SSP1ADDbits.SSP1ADD3            // bit 3, shadows bit in SSP1ADDbits
7529 #define ADD3                    SSP1ADDbits.ADD3                // bit 3, shadows bit in SSP1ADDbits
7530 #define SSP1ADD4                SSP1ADDbits.SSP1ADD4            // bit 4, shadows bit in SSP1ADDbits
7531 #define ADD4                    SSP1ADDbits.ADD4                // bit 4, shadows bit in SSP1ADDbits
7532 #define SSP1ADD5                SSP1ADDbits.SSP1ADD5            // bit 5, shadows bit in SSP1ADDbits
7533 #define ADD5                    SSP1ADDbits.ADD5                // bit 5, shadows bit in SSP1ADDbits
7534 #define SSP1ADD6                SSP1ADDbits.SSP1ADD6            // bit 6, shadows bit in SSP1ADDbits
7535 #define ADD6                    SSP1ADDbits.ADD6                // bit 6, shadows bit in SSP1ADDbits
7536 #define SSP1ADD7                SSP1ADDbits.SSP1ADD7            // bit 7, shadows bit in SSP1ADDbits
7537 #define ADD7                    SSP1ADDbits.ADD7                // bit 7, shadows bit in SSP1ADDbits
7538 
7539 #define SSP1BUF0                SSP1BUFbits.SSP1BUF0            // bit 0, shadows bit in SSP1BUFbits
7540 #define BUF0                    SSP1BUFbits.BUF0                // bit 0, shadows bit in SSP1BUFbits
7541 #define SSP1BUF1                SSP1BUFbits.SSP1BUF1            // bit 1, shadows bit in SSP1BUFbits
7542 #define BUF1                    SSP1BUFbits.BUF1                // bit 1, shadows bit in SSP1BUFbits
7543 #define SSP1BUF2                SSP1BUFbits.SSP1BUF2            // bit 2, shadows bit in SSP1BUFbits
7544 #define BUF2                    SSP1BUFbits.BUF2                // bit 2, shadows bit in SSP1BUFbits
7545 #define SSP1BUF3                SSP1BUFbits.SSP1BUF3            // bit 3, shadows bit in SSP1BUFbits
7546 #define BUF3                    SSP1BUFbits.BUF3                // bit 3, shadows bit in SSP1BUFbits
7547 #define SSP1BUF4                SSP1BUFbits.SSP1BUF4            // bit 4, shadows bit in SSP1BUFbits
7548 #define BUF4                    SSP1BUFbits.BUF4                // bit 4, shadows bit in SSP1BUFbits
7549 #define SSP1BUF5                SSP1BUFbits.SSP1BUF5            // bit 5, shadows bit in SSP1BUFbits
7550 #define BUF5                    SSP1BUFbits.BUF5                // bit 5, shadows bit in SSP1BUFbits
7551 #define SSP1BUF6                SSP1BUFbits.SSP1BUF6            // bit 6, shadows bit in SSP1BUFbits
7552 #define BUF6                    SSP1BUFbits.BUF6                // bit 6, shadows bit in SSP1BUFbits
7553 #define SSP1BUF7                SSP1BUFbits.SSP1BUF7            // bit 7, shadows bit in SSP1BUFbits
7554 #define BUF7                    SSP1BUFbits.BUF7                // bit 7, shadows bit in SSP1BUFbits
7555 
7556 #define SSPM0                   SSP1CONbits.SSPM0               // bit 0
7557 #define SSPM1                   SSP1CONbits.SSPM1               // bit 1
7558 #define SSPM2                   SSP1CONbits.SSPM2               // bit 2
7559 #define SSPM3                   SSP1CONbits.SSPM3               // bit 3
7560 #define CKP                     SSP1CONbits.CKP                 // bit 4
7561 #define SSPEN                   SSP1CONbits.SSPEN               // bit 5
7562 #define SSPOV                   SSP1CONbits.SSPOV               // bit 6
7563 #define WCOL                    SSP1CONbits.WCOL                // bit 7
7564 
7565 #define SEN                     SSP1CON2bits.SEN                // bit 0
7566 #define RSEN                    SSP1CON2bits.RSEN               // bit 1
7567 #define PEN                     SSP1CON2bits.PEN                // bit 2
7568 #define RCEN                    SSP1CON2bits.RCEN               // bit 3
7569 #define ACKEN                   SSP1CON2bits.ACKEN              // bit 4
7570 #define ACKDT                   SSP1CON2bits.ACKDT              // bit 5
7571 #define ACKSTAT                 SSP1CON2bits.ACKSTAT            // bit 6
7572 #define GCEN                    SSP1CON2bits.GCEN               // bit 7
7573 
7574 #define DHEN                    SSP1CON3bits.DHEN               // bit 0
7575 #define AHEN                    SSP1CON3bits.AHEN               // bit 1
7576 #define SBCDE                   SSP1CON3bits.SBCDE              // bit 2
7577 #define SDAHT                   SSP1CON3bits.SDAHT              // bit 3
7578 #define BOEN                    SSP1CON3bits.BOEN               // bit 4
7579 #define SCIE                    SSP1CON3bits.SCIE               // bit 5
7580 #define PCIE                    SSP1CON3bits.PCIE               // bit 6
7581 #define ACKTIM                  SSP1CON3bits.ACKTIM             // bit 7
7582 
7583 #define SSP1MSK0                SSP1MSKbits.SSP1MSK0            // bit 0, shadows bit in SSP1MSKbits
7584 #define MSK0                    SSP1MSKbits.MSK0                // bit 0, shadows bit in SSP1MSKbits
7585 #define SSP1MSK1                SSP1MSKbits.SSP1MSK1            // bit 1, shadows bit in SSP1MSKbits
7586 #define MSK1                    SSP1MSKbits.MSK1                // bit 1, shadows bit in SSP1MSKbits
7587 #define SSP1MSK2                SSP1MSKbits.SSP1MSK2            // bit 2, shadows bit in SSP1MSKbits
7588 #define MSK2                    SSP1MSKbits.MSK2                // bit 2, shadows bit in SSP1MSKbits
7589 #define SSP1MSK3                SSP1MSKbits.SSP1MSK3            // bit 3, shadows bit in SSP1MSKbits
7590 #define MSK3                    SSP1MSKbits.MSK3                // bit 3, shadows bit in SSP1MSKbits
7591 #define SSP1MSK4                SSP1MSKbits.SSP1MSK4            // bit 4, shadows bit in SSP1MSKbits
7592 #define MSK4                    SSP1MSKbits.MSK4                // bit 4, shadows bit in SSP1MSKbits
7593 #define SSP1MSK5                SSP1MSKbits.SSP1MSK5            // bit 5, shadows bit in SSP1MSKbits
7594 #define MSK5                    SSP1MSKbits.MSK5                // bit 5, shadows bit in SSP1MSKbits
7595 #define SSP1MSK6                SSP1MSKbits.SSP1MSK6            // bit 6, shadows bit in SSP1MSKbits
7596 #define MSK6                    SSP1MSKbits.MSK6                // bit 6, shadows bit in SSP1MSKbits
7597 #define SSP1MSK7                SSP1MSKbits.SSP1MSK7            // bit 7, shadows bit in SSP1MSKbits
7598 #define MSK7                    SSP1MSKbits.MSK7                // bit 7, shadows bit in SSP1MSKbits
7599 
7600 #define BF                      SSP1STATbits.BF                 // bit 0
7601 #define UA                      SSP1STATbits.UA                 // bit 1
7602 #define R_NOT_W                 SSP1STATbits.R_NOT_W            // bit 2
7603 #define S                       SSP1STATbits.S                  // bit 3
7604 #define P                       SSP1STATbits.P                  // bit 4
7605 #define D_NOT_A                 SSP1STATbits.D_NOT_A            // bit 5
7606 #define CKE                     SSP1STATbits.CKE                // bit 6
7607 #define SMP                     SSP1STATbits.SMP                // bit 7
7608 
7609 #define C                       STATUSbits.C                    // bit 0
7610 #define DC                      STATUSbits.DC                   // bit 1
7611 #define Z                       STATUSbits.Z                    // bit 2
7612 #define NOT_PD                  STATUSbits.NOT_PD               // bit 3
7613 #define NOT_TO                  STATUSbits.NOT_TO               // bit 4
7614 
7615 #define C_SHAD                  STATUS_SHADbits.C_SHAD          // bit 0
7616 #define DC_SHAD                 STATUS_SHADbits.DC_SHAD         // bit 1
7617 #define Z_SHAD                  STATUS_SHADbits.Z_SHAD          // bit 2
7618 
7619 #define TMR1ON                  T1CONbits.TMR1ON                // bit 0
7620 #define NOT_T1SYNC              T1CONbits.NOT_T1SYNC            // bit 2
7621 #define T1OSCEN                 T1CONbits.T1OSCEN               // bit 3
7622 #define T1CKPS0                 T1CONbits.T1CKPS0               // bit 4
7623 #define T1CKPS1                 T1CONbits.T1CKPS1               // bit 5
7624 #define TMR1CS0                 T1CONbits.TMR1CS0               // bit 6
7625 #define TMR1CS1                 T1CONbits.TMR1CS1               // bit 7
7626 
7627 #define T1GSS0                  T1GCONbits.T1GSS0               // bit 0
7628 #define T1GSS1                  T1GCONbits.T1GSS1               // bit 1
7629 #define T1GVAL                  T1GCONbits.T1GVAL               // bit 2
7630 #define T1GGO_NOT_DONE          T1GCONbits.T1GGO_NOT_DONE       // bit 3
7631 #define T1GSPM                  T1GCONbits.T1GSPM               // bit 4
7632 #define T1GTM                   T1GCONbits.T1GTM                // bit 5
7633 #define T1GPOL                  T1GCONbits.T1GPOL               // bit 6
7634 #define TMR1GE                  T1GCONbits.TMR1GE               // bit 7
7635 
7636 #define T2CKPS0                 T2CONbits.T2CKPS0               // bit 0
7637 #define T2CKPS1                 T2CONbits.T2CKPS1               // bit 1
7638 #define TMR2ON                  T2CONbits.TMR2ON                // bit 2
7639 #define T2OUTPS0                T2CONbits.T2OUTPS0              // bit 3
7640 #define T2OUTPS1                T2CONbits.T2OUTPS1              // bit 4
7641 #define T2OUTPS2                T2CONbits.T2OUTPS2              // bit 5
7642 #define T2OUTPS3                T2CONbits.T2OUTPS3              // bit 6
7643 
7644 #define T4CKPS0                 T4CONbits.T4CKPS0               // bit 0
7645 #define T4CKPS1                 T4CONbits.T4CKPS1               // bit 1
7646 #define TMR4ON                  T4CONbits.TMR4ON                // bit 2
7647 #define T4OUTPS0                T4CONbits.T4OUTPS0              // bit 3
7648 #define T4OUTPS1                T4CONbits.T4OUTPS1              // bit 4
7649 #define T4OUTPS2                T4CONbits.T4OUTPS2              // bit 5
7650 #define T4OUTPS3                T4CONbits.T4OUTPS3              // bit 6
7651 
7652 #define T6CKPS0                 T6CONbits.T6CKPS0               // bit 0
7653 #define T6CKPS1                 T6CONbits.T6CKPS1               // bit 1
7654 #define TMR6ON                  T6CONbits.TMR6ON                // bit 2
7655 #define T6OUTPS0                T6CONbits.T6OUTPS0              // bit 3
7656 #define T6OUTPS1                T6CONbits.T6OUTPS1              // bit 4
7657 #define T6OUTPS2                T6CONbits.T6OUTPS2              // bit 5
7658 #define T6OUTPS3                T6CONbits.T6OUTPS3              // bit 6
7659 
7660 #define TRISA0                  TRISAbits.TRISA0                // bit 0
7661 #define TRISA1                  TRISAbits.TRISA1                // bit 1
7662 #define TRISA2                  TRISAbits.TRISA2                // bit 2
7663 #define TRISA4                  TRISAbits.TRISA4                // bit 4
7664 #define TRISA5                  TRISAbits.TRISA5                // bit 5
7665 
7666 #define TRISB4                  TRISBbits.TRISB4                // bit 4
7667 #define TRISB5                  TRISBbits.TRISB5                // bit 5
7668 #define TRISB6                  TRISBbits.TRISB6                // bit 6
7669 #define TRISB7                  TRISBbits.TRISB7                // bit 7
7670 
7671 #define TRISC0                  TRISCbits.TRISC0                // bit 0
7672 #define TRISC1                  TRISCbits.TRISC1                // bit 1
7673 #define TRISC2                  TRISCbits.TRISC2                // bit 2
7674 #define TRISC3                  TRISCbits.TRISC3                // bit 3
7675 #define TRISC4                  TRISCbits.TRISC4                // bit 4
7676 #define TRISC5                  TRISCbits.TRISC5                // bit 5
7677 #define TRISC6                  TRISCbits.TRISC6                // bit 6
7678 #define TRISC7                  TRISCbits.TRISC7                // bit 7
7679 
7680 #define TX9D                    TX1STAbits.TX9D                 // bit 0
7681 #define TRMT                    TX1STAbits.TRMT                 // bit 1
7682 #define BRGH                    TX1STAbits.BRGH                 // bit 2
7683 #define SENDB                   TX1STAbits.SENDB                // bit 3
7684 #define SYNC                    TX1STAbits.SYNC                 // bit 4
7685 #define TXEN                    TX1STAbits.TXEN                 // bit 5
7686 #define TX9                     TX1STAbits.TX9                  // bit 6
7687 #define CSRC                    TX1STAbits.CSRC                 // bit 7
7688 
7689 #define Reserved                VREGCONbits.Reserved            // bit 0
7690 #define VREGPM                  VREGCONbits.VREGPM              // bit 1
7691 
7692 #define SWDTEN                  WDTCONbits.SWDTEN               // bit 0
7693 #define WDTPS0                  WDTCONbits.WDTPS0               // bit 1
7694 #define WDTPS1                  WDTCONbits.WDTPS1               // bit 2
7695 #define WDTPS2                  WDTCONbits.WDTPS2               // bit 3
7696 #define WDTPS3                  WDTCONbits.WDTPS3               // bit 4
7697 #define WDTPS4                  WDTCONbits.WDTPS4               // bit 5
7698 
7699 #define WPUA0                   WPUAbits.WPUA0                  // bit 0
7700 #define WPUA1                   WPUAbits.WPUA1                  // bit 1
7701 #define WPUA2                   WPUAbits.WPUA2                  // bit 2
7702 #define WPUA3                   WPUAbits.WPUA3                  // bit 3
7703 #define WPUA4                   WPUAbits.WPUA4                  // bit 4
7704 #define WPUA5                   WPUAbits.WPUA5                  // bit 5
7705 
7706 #define WPUB4                   WPUBbits.WPUB4                  // bit 4
7707 #define WPUB5                   WPUBbits.WPUB5                  // bit 5
7708 #define WPUB6                   WPUBbits.WPUB6                  // bit 6
7709 #define WPUB7                   WPUBbits.WPUB7                  // bit 7
7710 
7711 #define WPUC0                   WPUCbits.WPUC0                  // bit 0
7712 #define WPUC1                   WPUCbits.WPUC1                  // bit 1
7713 #define WPUC2                   WPUCbits.WPUC2                  // bit 2
7714 #define WPUC3                   WPUCbits.WPUC3                  // bit 3
7715 #define WPUC4                   WPUCbits.WPUC4                  // bit 4
7716 #define WPUC5                   WPUCbits.WPUC5                  // bit 5
7717 #define WPUC6                   WPUCbits.WPUC6                  // bit 6
7718 #define WPUC7                   WPUCbits.WPUC7                  // bit 7
7719 
7720 #define ZCD1INTN                ZCD1CONbits.ZCD1INTN            // bit 0
7721 #define ZCD1INTP                ZCD1CONbits.ZCD1INTP            // bit 1
7722 #define ZCD1POL                 ZCD1CONbits.ZCD1POL             // bit 4
7723 #define ZCD1OUT                 ZCD1CONbits.ZCD1OUT             // bit 5
7724 #define ZCD1EN                  ZCD1CONbits.ZCD1EN              // bit 7
7725 
7726 #endif // #ifndef NO_BIT_DEFINES
7727 
7728 #endif // #ifndef __PIC16F1708_H__
7729