* device/include/pic16/pic18f*.h: add bit aliases in INTCONbits_t
[fw/sdcc] / device / include / pic16 / pic18f258.h
1
2 /*
3  * pic18f258.h - PIC18F258 Device Library Header
4  *
5  * This file is part of the GNU PIC Library.
6  *
7  * January, 2004
8  * The GNU PIC Library is maintained by,
9  *      Vangelis Rokas <vrokas@otenet.gr>
10  *
11  * $Id$
12  *
13  */
14
15 #ifndef __PIC18F258_H__
16 #define __PIC18F258_H__
17
18 extern __sfr __at (0xf00) RXF0SIDH;
19 typedef union {
20         struct {
21                 unsigned SID3:1;
22                 unsigned SID4:1;
23                 unsigned SID5:1;
24                 unsigned SID6:1;
25                 unsigned SID7:1;
26                 unsigned SID8:1;
27                 unsigned SID9:1;
28                 unsigned SID10:1;
29         };
30 } __RXF0SIDHbits_t;
31
32 extern volatile __RXF0SIDHbits_t __at (0xf00) RXF0SIDHbits;
33
34 extern __sfr __at (0xf01) RXF0SIDL;
35 typedef union {
36         struct {
37                 unsigned EID16:1;
38                 unsigned EID17:1;
39                 unsigned :1;
40                 unsigned EXIDE:1;
41                 unsigned :1;
42                 unsigned SID0:1;
43                 unsigned SID1:1;
44                 unsigned SID2:1;
45         };
46 } __RXF0SIDLbits_t;
47
48 extern volatile __RXF0SIDLbits_t __at (0xf01) RXF0SIDLbits;
49
50 extern __sfr __at (0xf02) RXF0EIDH;
51 typedef union {
52         struct {
53                 unsigned EID8:1;
54                 unsigned EID9:1;
55                 unsigned EID10:1;
56                 unsigned EID11:1;
57                 unsigned EID12:1;
58                 unsigned EID13:1;
59                 unsigned EID14:1;
60                 unsigned EID15:1;
61         };
62 } __RXF0EIDHbits_t;
63
64 extern volatile __RXF0EIDHbits_t __at (0xf02) RXF0EIDHbits;
65
66 extern __sfr __at (0xf03) RXF0EIDL;
67 typedef union {
68         struct {
69                 unsigned EID0:1;
70                 unsigned EID1:1;
71                 unsigned EID2:1;
72                 unsigned EID3:1;
73                 unsigned EID4:1;
74                 unsigned EID5:1;
75                 unsigned EID6:1;
76                 unsigned EID7:1;
77         };
78 } __RXF0EIDLbits_t;
79
80 extern volatile __RXF0EIDLbits_t __at (0xf03) RXF0EIDLbits;
81
82 extern __sfr __at (0xf04) RXF1SIDH;
83 typedef union {
84         struct {
85                 unsigned SID3:1;
86                 unsigned SID4:1;
87                 unsigned SID5:1;
88                 unsigned SID6:1;
89                 unsigned SID7:1;
90                 unsigned SID8:1;
91                 unsigned SID9:1;
92                 unsigned SID10:1;
93         };
94 } __RXF1SIDHbits_t;
95
96 extern volatile __RXF1SIDHbits_t __at (0xf04) RXF1SIDHbits;
97
98 extern __sfr __at (0xf05) RXF1SIDL;
99 typedef union {
100         struct {
101                 unsigned EID16:1;
102                 unsigned EID17:1;
103                 unsigned :1;
104                 unsigned EXIDE:1;
105                 unsigned :1;
106                 unsigned SID0:1;
107                 unsigned SID1:1;
108                 unsigned SID2:1;
109         };
110 } __RXF1SIDLbits_t;
111
112 extern volatile __RXF1SIDLbits_t __at (0xf05) RXF1SIDLbits;
113
114 extern __sfr __at (0xf06) RXF1EIDH;
115 typedef union {
116         struct {
117                 unsigned EID8:1;
118                 unsigned EID9:1;
119                 unsigned EID10:1;
120                 unsigned EID11:1;
121                 unsigned EID12:1;
122                 unsigned EID13:1;
123                 unsigned EID14:1;
124                 unsigned EID15:1;
125         };
126 } __RXF1EIDHbits_t;
127
128 extern volatile __RXF1EIDHbits_t __at (0xf06) RXF1EIDHbits;
129
130 extern __sfr __at (0xf07) RXF1EIDL;
131 typedef union {
132         struct {
133                 unsigned EID0:1;
134                 unsigned EID1:1;
135                 unsigned EID2:1;
136                 unsigned EID3:1;
137                 unsigned EID4:1;
138                 unsigned EID5:1;
139                 unsigned EID6:1;
140                 unsigned EID7:1;
141         };
142 } __RXF1EIDLbits_t;
143
144 extern volatile __RXF1EIDLbits_t __at (0xf07) RXF1EIDLbits;
145
146 extern __sfr __at (0xf08) RXF2SIDH;
147 typedef union {
148         struct {
149                 unsigned SID3:1;
150                 unsigned SID4:1;
151                 unsigned SID5:1;
152                 unsigned SID6:1;
153                 unsigned SID7:1;
154                 unsigned SID8:1;
155                 unsigned SID9:1;
156                 unsigned SID10:1;
157         };
158 } __RXF2SIDHbits_t;
159
160 extern volatile __RXF2SIDHbits_t __at (0xf08) RXF2SIDHbits;
161
162 extern __sfr __at (0xf09) RXF2SIDL;
163 typedef union {
164         struct {
165                 unsigned EID16:1;
166                 unsigned EID17:1;
167                 unsigned :1;
168                 unsigned EXIDE:1;
169                 unsigned :1;
170                 unsigned SID0:1;
171                 unsigned SID1:1;
172                 unsigned SID2:1;
173         };
174 } __RXF2SIDLbits_t;
175
176 extern volatile __RXF2SIDLbits_t __at (0xf09) RXF2SIDLbits;
177
178 extern __sfr __at (0xf0a) RXF2EIDH;
179 typedef union {
180         struct {
181                 unsigned EID8:1;
182                 unsigned EID9:1;
183                 unsigned EID10:1;
184                 unsigned EID11:1;
185                 unsigned EID12:1;
186                 unsigned EID13:1;
187                 unsigned EID14:1;
188                 unsigned EID15:1;
189         };
190 } __RXF2EIDHbits_t;
191
192 extern volatile __RXF2EIDHbits_t __at (0xf0a) RXF2EIDHbits;
193
194 extern __sfr __at (0xf0b) RXF2EIDL;
195 typedef union {
196         struct {
197                 unsigned EID0:1;
198                 unsigned EID1:1;
199                 unsigned EID2:1;
200                 unsigned EID3:1;
201                 unsigned EID4:1;
202                 unsigned EID5:1;
203                 unsigned EID6:1;
204                 unsigned EID7:1;
205         };
206 } __RXF2EIDLbits_t;
207
208 extern volatile __RXF2EIDLbits_t __at (0xf0b) RXF2EIDLbits;
209
210 extern __sfr __at (0xf0c) RXF3SIDH;
211 typedef union {
212         struct {
213                 unsigned SID3:1;
214                 unsigned SID4:1;
215                 unsigned SID5:1;
216                 unsigned SID6:1;
217                 unsigned SID7:1;
218                 unsigned SID8:1;
219                 unsigned SID9:1;
220                 unsigned SID10:1;
221         };
222 } __RXF3SIDHbits_t;
223
224 extern volatile __RXF3SIDHbits_t __at (0xf0c) RXF3SIDHbits;
225
226 extern __sfr __at (0xf0d) RXF3SIDL;
227 typedef union {
228         struct {
229                 unsigned EID16:1;
230                 unsigned EID17:1;
231                 unsigned :1;
232                 unsigned EXIDE:1;
233                 unsigned :1;
234                 unsigned SID0:1;
235                 unsigned SID1:1;
236                 unsigned SID2:1;
237         };
238 } __RXF3SIDLbits_t;
239
240 extern volatile __RXF3SIDLbits_t __at (0xf0d) RXF3SIDLbits;
241
242 extern __sfr __at (0xf0e) RXF3EIDH;
243 typedef union {
244         struct {
245                 unsigned EID8:1;
246                 unsigned EID9:1;
247                 unsigned EID10:1;
248                 unsigned EID11:1;
249                 unsigned EID12:1;
250                 unsigned EID13:1;
251                 unsigned EID14:1;
252                 unsigned EID15:1;
253         };
254 } __RXF3EIDHbits_t;
255
256 extern volatile __RXF3EIDHbits_t __at (0xf0e) RXF3EIDHbits;
257
258 extern __sfr __at (0xf0f) RXF3EIDL;
259 typedef union {
260         struct {
261                 unsigned EID0:1;
262                 unsigned EID1:1;
263                 unsigned EID2:1;
264                 unsigned EID3:1;
265                 unsigned EID4:1;
266                 unsigned EID5:1;
267                 unsigned EID6:1;
268                 unsigned EID7:1;
269         };
270 } __RXF3EIDLbits_t;
271
272 extern volatile __RXF3EIDLbits_t __at (0xf0f) RXF3EIDLbits;
273
274 extern __sfr __at (0xf10) RXF4SIDH;
275 typedef union {
276         struct {
277                 unsigned SID3:1;
278                 unsigned SID4:1;
279                 unsigned SID5:1;
280                 unsigned SID6:1;
281                 unsigned SID7:1;
282                 unsigned SID8:1;
283                 unsigned SID9:1;
284                 unsigned SID10:1;
285         };
286 } __RXF4SIDHbits_t;
287
288 extern volatile __RXF4SIDHbits_t __at (0xf10) RXF4SIDHbits;
289
290 extern __sfr __at (0xf11) RXF4SIDL;
291 typedef union {
292         struct {
293                 unsigned EID16:1;
294                 unsigned EID17:1;
295                 unsigned :1;
296                 unsigned EXIDE:1;
297                 unsigned :1;
298                 unsigned SID0:1;
299                 unsigned SID1:1;
300                 unsigned SID2:1;
301         };
302 } __RXF4SIDLbits_t;
303
304 extern volatile __RXF4SIDLbits_t __at (0xf11) RXF4SIDLbits;
305
306 extern __sfr __at (0xf12) RXF4EIDH;
307 typedef union {
308         struct {
309                 unsigned EID8:1;
310                 unsigned EID9:1;
311                 unsigned EID10:1;
312                 unsigned EID11:1;
313                 unsigned EID12:1;
314                 unsigned EID13:1;
315                 unsigned EID14:1;
316                 unsigned EID15:1;
317         };
318 } __RXF4EIDHbits_t;
319
320 extern volatile __RXF4EIDHbits_t __at (0xf12) RXF4EIDHbits;
321
322 extern __sfr __at (0xf13) RXF4EIDL;
323 typedef union {
324         struct {
325                 unsigned EID0:1;
326                 unsigned EID1:1;
327                 unsigned EID2:1;
328                 unsigned EID3:1;
329                 unsigned EID4:1;
330                 unsigned EID5:1;
331                 unsigned EID6:1;
332                 unsigned EID7:1;
333         };
334 } __RXF4EIDLbits_t;
335
336 extern volatile __RXF4EIDLbits_t __at (0xf13) RXF4EIDLbits;
337
338 extern __sfr __at (0xf14) RXF5SIDH;
339 typedef union {
340         struct {
341                 unsigned SID3:1;
342                 unsigned SID4:1;
343                 unsigned SID5:1;
344                 unsigned SID6:1;
345                 unsigned SID7:1;
346                 unsigned SID8:1;
347                 unsigned SID9:1;
348                 unsigned SID10:1;
349         };
350 } __RXF5SIDHbits_t;
351
352 extern volatile __RXF5SIDHbits_t __at (0xf14) RXF5SIDHbits;
353
354 extern __sfr __at (0xf15) RXF5SIDL;
355 typedef union {
356         struct {
357                 unsigned EID16:1;
358                 unsigned EID17:1;
359                 unsigned :1;
360                 unsigned EXIDE:1;
361                 unsigned :1;
362                 unsigned SID0:1;
363                 unsigned SID1:1;
364                 unsigned SID2:1;
365         };
366 } __RXF5SIDLbits_t;
367
368 extern volatile __RXF5SIDLbits_t __at (0xf15) RXF5SIDLbits;
369
370 extern __sfr __at (0xf16) RXF5EIDH;
371 typedef union {
372         struct {
373                 unsigned EID8:1;
374                 unsigned EID9:1;
375                 unsigned EID10:1;
376                 unsigned EID11:1;
377                 unsigned EID12:1;
378                 unsigned EID13:1;
379                 unsigned EID14:1;
380                 unsigned EID15:1;
381         };
382 } __RXF5EIDHbits_t;
383
384 extern volatile __RXF5EIDHbits_t __at (0xf16) RXF5EIDHbits;
385
386 extern __sfr __at (0xf17) RXF5EIDL;
387 typedef union {
388         struct {
389                 unsigned EID0:1;
390                 unsigned EID1:1;
391                 unsigned EID2:1;
392                 unsigned EID3:1;
393                 unsigned EID4:1;
394                 unsigned EID5:1;
395                 unsigned EID6:1;
396                 unsigned EID7:1;
397         };
398 } __RXF5EIDLbits_t;
399
400 extern volatile __RXF5EIDLbits_t __at (0xf17) RXF5EIDLbits;
401
402 extern __sfr __at (0xf18) RXM0SIDH;
403 typedef union {
404         struct {
405                 unsigned SID3:1;
406                 unsigned SID4:1;
407                 unsigned SID5:1;
408                 unsigned SID6:1;
409                 unsigned SID7:1;
410                 unsigned SID8:1;
411                 unsigned SID9:1;
412                 unsigned SID10:1;
413         };
414 } __RXM0SIDHbits_t;
415
416 extern volatile __RXM0SIDHbits_t __at (0xf18) RXM0SIDHbits;
417
418 extern __sfr __at (0xf19) RXM0SIDL;
419 typedef union {
420         struct {
421                 unsigned EID16:1;
422                 unsigned EID17:1;
423                 unsigned :1;
424                 unsigned EXIDE:1;
425                 unsigned :1;
426                 unsigned SID0:1;
427                 unsigned SID1:1;
428                 unsigned SID2:1;
429         };
430 } __RXM0SIDLbits_t;
431
432 extern volatile __RXM0SIDLbits_t __at (0xf19) RXM0SIDLbits;
433
434 extern __sfr __at (0xf1a) RXM0EIDH;
435 typedef union {
436         struct {
437                 unsigned EID8:1;
438                 unsigned EID9:1;
439                 unsigned EID10:1;
440                 unsigned EID11:1;
441                 unsigned EID12:1;
442                 unsigned EID13:1;
443                 unsigned EID14:1;
444                 unsigned EID15:1;
445         };
446 } __RXM0EIDHbits_t;
447
448 extern volatile __RXM0EIDHbits_t __at (0xf1a) RXM0EIDHbits;
449
450 extern __sfr __at (0xf1b) RXM0EIDL;
451 typedef union {
452         struct {
453                 unsigned EID0:1;
454                 unsigned EID1:1;
455                 unsigned EID2:1;
456                 unsigned EID3:1;
457                 unsigned EID4:1;
458                 unsigned EID5:1;
459                 unsigned EID6:1;
460                 unsigned EID7:1;
461         };
462 } __RXM0EIDLbits_t;
463
464 extern volatile __RXM0EIDLbits_t __at (0xf1b) RXM0EIDLbits;
465
466 extern __sfr __at (0xf1c) RXM1SIDH;
467 typedef union {
468         struct {
469                 unsigned SID3:1;
470                 unsigned SID4:1;
471                 unsigned SID5:1;
472                 unsigned SID6:1;
473                 unsigned SID7:1;
474                 unsigned SID8:1;
475                 unsigned SID9:1;
476                 unsigned SID10:1;
477         };
478 } __RXM1SIDHbits_t;
479
480 extern volatile __RXM1SIDHbits_t __at (0xf1c) RXM1SIDHbits;
481
482 extern __sfr __at (0xf1d) RXM1SIDL;
483 typedef union {
484         struct {
485                 unsigned EID16:1;
486                 unsigned EID17:1;
487                 unsigned :1;
488                 unsigned EXIDEN:1;
489                 unsigned :1;
490                 unsigned SID0:1;
491                 unsigned SID1:1;
492                 unsigned SID2:1;
493         };
494 } __RXM1SIDLbits_t;
495
496 extern volatile __RXM1SIDLbits_t __at (0xf1d) RXM1SIDLbits;
497
498 extern __sfr __at (0xf1e) RXM1EIDH;
499 typedef union {
500         struct {
501                 unsigned EID8:1;
502                 unsigned EID9:1;
503                 unsigned EID10:1;
504                 unsigned EID11:1;
505                 unsigned EID12:1;
506                 unsigned EID13:1;
507                 unsigned EID14:1;
508                 unsigned EID15:1;
509         };
510 } __RXM1EIDHbits_t;
511
512 extern volatile __RXM1EIDHbits_t __at (0xf1e) RXM1EIDHbits;
513
514 extern __sfr __at (0xf1f) RXM1EIDL;
515 typedef union {
516         struct {
517                 unsigned EID0:1;
518                 unsigned EID1:1;
519                 unsigned EID2:1;
520                 unsigned EID3:1;
521                 unsigned EID4:1;
522                 unsigned EID5:1;
523                 unsigned EID6:1;
524                 unsigned EID7:1;
525         };
526 } __RXM1EIDLbits_t;
527
528 extern volatile __RXM1EIDLbits_t __at (0xf1f) RXM1EIDLbits;
529
530 extern __sfr __at (0xf20) TXB2CON;
531 typedef union {
532         struct {
533                 unsigned TXPRI0:1;
534                 unsigned TXPRI1:1;
535                 unsigned :1;
536                 unsigned TXREQ:1;
537                 unsigned TXERR:1;
538                 unsigned TXLARB:1;
539                 unsigned TXABT:1;
540                 unsigned :1;
541         };
542 } __TXB2CONbits_t;
543
544 extern volatile __TXB2CONbits_t __at (0xf20) TXB2CONbits;
545
546 extern __sfr __at (0xf21) TXB2SIDH;
547 typedef union {
548         struct {
549                 unsigned SID3:1;
550                 unsigned SID4:1;
551                 unsigned SID5:1;
552                 unsigned SID6:1;
553                 unsigned SID7:1;
554                 unsigned SID8:1;
555                 unsigned SID9:1;
556                 unsigned SID10:1;
557         };
558 } __TXB2SIDHbits_t;
559
560 extern volatile __TXB2SIDHbits_t __at (0xf21) TXB2SIDHbits;
561
562 extern __sfr __at (0xf22) TXB2SIDL;
563 typedef union {
564         struct {
565                 unsigned EID16:1;
566                 unsigned EID17:1;
567                 unsigned :1;
568                 unsigned EXIDEN:1;
569                 unsigned :1;
570                 unsigned SID0:1;
571                 unsigned SID1:1;
572                 unsigned SID2:1;
573         };
574 } __TXB2SIDLbits_t;
575
576 extern volatile __TXB2SIDLbits_t __at (0xf22) TXB2SIDLbits;
577
578 extern __sfr __at (0xf23) TXB2EIDH;
579 typedef union {
580         struct {
581                 unsigned EID8:1;
582                 unsigned EID9:1;
583                 unsigned EID10:1;
584                 unsigned EID11:1;
585                 unsigned EID12:1;
586                 unsigned EID13:1;
587                 unsigned EID14:1;
588                 unsigned EID15:1;
589         };
590 } __TXB2EIDHbits_t;
591
592 extern volatile __TXB2EIDHbits_t __at (0xf23) TXB2EIDHbits;
593
594 extern __sfr __at (0xf24) TXB2EIDL;
595 typedef union {
596         struct {
597                 unsigned EID0:1;
598                 unsigned EID1:1;
599                 unsigned EID2:1;
600                 unsigned EID3:1;
601                 unsigned EID4:1;
602                 unsigned EID5:1;
603                 unsigned EID6:1;
604                 unsigned EID7:1;
605         };
606 } __TXB2EIDLbits_t;
607
608 extern volatile __TXB2EIDLbits_t __at (0xf24) TXB2EIDLbits;
609
610 extern __sfr __at (0xf25) TXB2DLC;
611 typedef union {
612         struct {
613                 unsigned TXB2DLC0:1;
614                 unsigned TXB2DLC1:1;
615                 unsigned TXB2DLC2:1;
616                 unsigned TXB2DLC3:1;
617                 unsigned :1;
618                 unsigned :1;
619                 unsigned TXB2TXRTR:1;
620                 unsigned :1;
621         };
622 } __TXB2DLCbits_t;
623
624 extern volatile __TXB2DLCbits_t __at (0xf25) TXB2DLCbits;
625
626 extern __sfr __at (0xf26) TXB2D0;
627 typedef union {
628         struct {
629                 unsigned TXB2D00:1;
630                 unsigned TXB2D01:1;
631                 unsigned TXB2D02:1;
632                 unsigned TXB2D03:1;
633                 unsigned TXB2D04:1;
634                 unsigned TXB2D05:1;
635                 unsigned TXB2D06:1;
636                 unsigned TXB2D07:1;
637         };
638 } __TXB2D0bits_t;
639
640 extern volatile __TXB2D0bits_t __at (0xf26) TXB2D0bits;
641
642 extern __sfr __at (0xf27) TXB2D1;
643 typedef union {
644         struct {
645                 unsigned TXB2D10:1;
646                 unsigned TXB2D11:1;
647                 unsigned TXB2D12:1;
648                 unsigned TXB2D13:1;
649                 unsigned TXB2D14:1;
650                 unsigned TXB2D15:1;
651                 unsigned TXB2D16:1;
652                 unsigned TXB2D17:1;
653         };
654 } __TXB2D1bits_t;
655
656 extern volatile __TXB2D1bits_t __at (0xf27) TXB2D1bits;
657
658 extern __sfr __at (0xf28) TXB2D2;
659 typedef union {
660         struct {
661                 unsigned TXB2D20:1;
662                 unsigned TXB2D21:1;
663                 unsigned TXB2D22:1;
664                 unsigned TXB2D23:1;
665                 unsigned TXB2D24:1;
666                 unsigned TXB2D25:1;
667                 unsigned TXB2D26:1;
668                 unsigned TXB2D27:1;
669         };
670 } __TXB2D2bits_t;
671
672 extern volatile __TXB2D2bits_t __at (0xf28) TXB2D2bits;
673
674 extern __sfr __at (0xf29) TXB2D3;
675 typedef union {
676         struct {
677                 unsigned TXB2D30:1;
678                 unsigned TXB2D31:1;
679                 unsigned TXB2D32:1;
680                 unsigned TXB2D33:1;
681                 unsigned TXB2D34:1;
682                 unsigned TXB2D35:1;
683                 unsigned TXB2D36:1;
684                 unsigned TXB2D37:1;
685         };
686 } __TXB2D3bits_t;
687
688 extern volatile __TXB2D3bits_t __at (0xf29) TXB2D3bits;
689
690 extern __sfr __at (0xf2a) TXB2D4;
691 typedef union {
692         struct {
693                 unsigned TXB2D40:1;
694                 unsigned TXB2D41:1;
695                 unsigned TXB2D42:1;
696                 unsigned TXB2D43:1;
697                 unsigned TXB2D44:1;
698                 unsigned TXB2D45:1;
699                 unsigned TXB2D46:1;
700                 unsigned TXB2D47:1;
701         };
702 } __TXB2D4bits_t;
703
704 extern volatile __TXB2D4bits_t __at (0xf2a) TXB2D4bits;
705
706 extern __sfr __at (0xf2b) TXB2D5;
707 typedef union {
708         struct {
709                 unsigned TXB2D50:1;
710                 unsigned TXB2D51:1;
711                 unsigned TXB2D52:1;
712                 unsigned TXB2D53:1;
713                 unsigned TXB2D54:1;
714                 unsigned TXB2D55:1;
715                 unsigned TXB2D56:1;
716                 unsigned TXB2D57:1;
717         };
718 } __TXB2D5bits_t;
719
720 extern volatile __TXB2D5bits_t __at (0xf2b) TXB2D5bits;
721
722 extern __sfr __at (0xf2c) TXB2D6;
723 typedef union {
724         struct {
725                 unsigned TXB2D60:1;
726                 unsigned TXB2D61:1;
727                 unsigned TXB2D62:1;
728                 unsigned TXB2D63:1;
729                 unsigned TXB2D64:1;
730                 unsigned TXB2D65:1;
731                 unsigned TXB2D66:1;
732                 unsigned TXB2D67:1;
733         };
734 } __TXB2D6bits_t;
735
736 extern volatile __TXB2D6bits_t __at (0xf2c) TXB2D6bits;
737
738 extern __sfr __at (0xf2d) TXB2D7;
739 typedef union {
740         struct {
741                 unsigned TXB2D70:1;
742                 unsigned TXB2D71:1;
743                 unsigned TXB2D72:1;
744                 unsigned TXB2D73:1;
745                 unsigned TXB2D74:1;
746                 unsigned TXB2D75:1;
747                 unsigned TXB2D76:1;
748                 unsigned TXB2D77:1;
749         };
750 } __TXB2D7bits_t;
751
752 extern volatile __TXB2D7bits_t __at (0xf2d) TXB2D7bits;
753
754 extern __sfr __at (0xf2e) CANSTATRO4;
755 typedef union {
756         struct {
757                 unsigned :1;
758                 unsigned ICODE0:1;
759                 unsigned ICODE1:1;
760                 unsigned ICODE2:1;
761                 unsigned :1;
762                 unsigned OPMODE0:1;
763                 unsigned OPMODE1:1;
764                 unsigned OPMODE2:1;
765         };
766 } __CANSTATRO4bits_t;
767
768 extern volatile __CANSTATRO4bits_t __at (0xf2e) CANSTATRO4bits;
769
770 extern __sfr __at (0xf30) TXB1CON;
771 typedef union {
772         struct {
773                 unsigned TXPRI0:1;
774                 unsigned TXPRI1:1;
775                 unsigned :1;
776                 unsigned TXREQ:1;
777                 unsigned TXERR:1;
778                 unsigned TXLARB:1;
779                 unsigned TXABT:1;
780                 unsigned :1;
781         };
782 } __TXB1CONbits_t;
783
784 extern volatile __TXB1CONbits_t __at (0xf30) TXB1CONbits;
785
786 extern __sfr __at (0xf31) TXB1SIDH;
787 typedef union {
788         struct {
789                 unsigned SID3:1;
790                 unsigned SID4:1;
791                 unsigned SID5:1;
792                 unsigned SID6:1;
793                 unsigned SID7:1;
794                 unsigned SID8:1;
795                 unsigned SID9:1;
796                 unsigned SID10:1;
797         };
798 } __TXB1SIDHbits_t;
799
800 extern volatile __TXB1SIDHbits_t __at (0xf31) TXB1SIDHbits;
801
802 extern __sfr __at (0xf32) TXB1SIDL;
803 typedef union {
804         struct {
805                 unsigned EID16:1;
806                 unsigned EID17:1;
807                 unsigned :1;
808                 unsigned EXIDE:1;
809                 unsigned :1;
810                 unsigned SID0:1;
811                 unsigned SID1:1;
812                 unsigned SID2:1;
813         };
814 } __TXB1SIDLbits_t;
815
816 extern volatile __TXB1SIDLbits_t __at (0xf32) TXB1SIDLbits;
817
818 extern __sfr __at (0xf33) TXB1EIDH;
819 typedef union {
820         struct {
821                 unsigned EID8:1;
822                 unsigned EID9:1;
823                 unsigned EID10:1;
824                 unsigned EID11:1;
825                 unsigned EID12:1;
826                 unsigned EID13:1;
827                 unsigned EID14:1;
828                 unsigned EID15:1;
829         };
830 } __TXB1EIDHbits_t;
831
832 extern volatile __TXB1EIDHbits_t __at (0xf33) TXB1EIDHbits;
833
834 extern __sfr __at (0xf34) TXB1EIDL;
835 typedef union {
836         struct {
837                 unsigned EID0:1;
838                 unsigned EID1:1;
839                 unsigned EID2:1;
840                 unsigned EID3:1;
841                 unsigned EID4:1;
842                 unsigned EID5:1;
843                 unsigned EID6:1;
844                 unsigned EID7:1;
845         };
846 } __TXB1EIDLbits_t;
847
848 extern volatile __TXB1EIDLbits_t __at (0xf34) TXB1EIDLbits;
849
850 extern __sfr __at (0xf35) TXB1DLC;
851 typedef union {
852         struct {
853                 unsigned DLC0:1;
854                 unsigned DLC1:1;
855                 unsigned DLC2:1;
856                 unsigned DLC3:1;
857                 unsigned :1;
858                 unsigned :1;
859                 unsigned TXRTR:1;
860                 unsigned :1;
861         };
862 } __TXB1DLCbits_t;
863
864 extern volatile __TXB1DLCbits_t __at (0xf35) TXB1DLCbits;
865
866 extern __sfr __at (0xf36) TXB1D0;
867 typedef union {
868         struct {
869                 unsigned TXB1D00:1;
870                 unsigned TXB1D01:1;
871                 unsigned TXB1D02:1;
872                 unsigned TXB1D03:1;
873                 unsigned TXB1D04:1;
874                 unsigned TXB1D05:1;
875                 unsigned TXB1D06:1;
876                 unsigned TXB1D07:1;
877         };
878 } __TXB1D0bits_t;
879
880 extern volatile __TXB1D0bits_t __at (0xf36) TXB1D0bits;
881
882 extern __sfr __at (0xf37) TXB1D1;
883 typedef union {
884         struct {
885                 unsigned TXB1D10:1;
886                 unsigned TXB1D11:1;
887                 unsigned TXB1D12:1;
888                 unsigned TXB1D13:1;
889                 unsigned TXB1D14:1;
890                 unsigned TXB1D15:1;
891                 unsigned TXB1D16:1;
892                 unsigned TXB1D17:1;
893         };
894 } __TXB1D1bits_t;
895
896 extern volatile __TXB1D1bits_t __at (0xf37) TXB1D1bits;
897
898 extern __sfr __at (0xf38) TXB1D2;
899 typedef union {
900         struct {
901                 unsigned TXB1D20:1;
902                 unsigned TXB1D21:1;
903                 unsigned TXB1D22:1;
904                 unsigned TXB1D23:1;
905                 unsigned TXB1D24:1;
906                 unsigned TXB1D25:1;
907                 unsigned TXB1D26:1;
908                 unsigned TXB1D27:1;
909         };
910 } __TXB1D2bits_t;
911
912 extern volatile __TXB1D2bits_t __at (0xf38) TXB1D2bits;
913
914 extern __sfr __at (0xf39) TXB1D3;
915 typedef union {
916         struct {
917                 unsigned TXB1D30:1;
918                 unsigned TXB1D31:1;
919                 unsigned TXB1D32:1;
920                 unsigned TXB1D33:1;
921                 unsigned TXB1D34:1;
922                 unsigned TXB1D35:1;
923                 unsigned TXB1D36:1;
924                 unsigned TXB1D37:1;
925         };
926 } __TXB1D3bits_t;
927
928 extern volatile __TXB1D3bits_t __at (0xf39) TXB1D3bits;
929
930 extern __sfr __at (0xf3a) TXB1D4;
931 typedef union {
932         struct {
933                 unsigned TXB1D40:1;
934                 unsigned TXB1D41:1;
935                 unsigned TXB1D42:1;
936                 unsigned TXB1D43:1;
937                 unsigned TXB1D44:1;
938                 unsigned TXB1D45:1;
939                 unsigned TXB1D46:1;
940                 unsigned TXB1D47:1;
941         };
942 } __TXB1D4bits_t;
943
944 extern volatile __TXB1D4bits_t __at (0xf3a) TXB1D4bits;
945
946 extern __sfr __at (0xf3b) TXB1D5;
947 typedef union {
948         struct {
949                 unsigned TXB1D50:1;
950                 unsigned TXB1D51:1;
951                 unsigned TXB1D52:1;
952                 unsigned TXB1D53:1;
953                 unsigned TXB1D54:1;
954                 unsigned TXB1D55:1;
955                 unsigned TXB1D56:1;
956                 unsigned TXB1D57:1;
957         };
958 } __TXB1D5bits_t;
959
960 extern volatile __TXB1D5bits_t __at (0xf3b) TXB1D5bits;
961
962 extern __sfr __at (0xf3c) TXB1D6;
963 typedef union {
964         struct {
965                 unsigned TXB1D60:1;
966                 unsigned TXB1D61:1;
967                 unsigned TXB1D62:1;
968                 unsigned TXB1D63:1;
969                 unsigned TXB1D64:1;
970                 unsigned TXB1D65:1;
971                 unsigned TXB1D66:1;
972                 unsigned TXB1D67:1;
973         };
974 } __TXB1D6bits_t;
975
976 extern volatile __TXB1D6bits_t __at (0xf3c) TXB1D6bits;
977
978 extern __sfr __at (0xf3d) TXB1D7;
979 typedef union {
980         struct {
981                 unsigned TXB1D70:1;
982                 unsigned TXB1D71:1;
983                 unsigned TXB1D72:1;
984                 unsigned TXB1D73:1;
985                 unsigned TXB1D74:1;
986                 unsigned TXB1D75:1;
987                 unsigned TXB1D76:1;
988                 unsigned TXB1D77:1;
989         };
990 } __TXB1D7bits_t;
991
992 extern volatile __TXB1D7bits_t __at (0xf3d) TXB1D7bits;
993
994 extern __sfr __at (0xf3e) CANSTATRO3;
995 typedef union {
996         struct {
997                 unsigned :1;
998                 unsigned ICODE0:1;
999                 unsigned ICODE1:1;
1000                 unsigned ICODE2:1;
1001                 unsigned :1;
1002                 unsigned OPMODE0:1;
1003                 unsigned OPMODE1:1;
1004                 unsigned OPMODE2:1;
1005         };
1006 } __CANSTATRO3bits_t;
1007
1008 extern volatile __CANSTATRO3bits_t __at (0xf3e) CANSTATRO3bits;
1009
1010 extern __sfr __at (0xf40) TXB0CON;
1011 typedef union {
1012         struct {
1013                 unsigned TXPRI0:1;
1014                 unsigned TXPRI1:1;
1015                 unsigned :1;
1016                 unsigned TXREQ:1;
1017                 unsigned TXERR:1;
1018                 unsigned TXLARB:1;
1019                 unsigned TXABT:1;
1020                 unsigned :1;
1021         };
1022 } __TXB0CONbits_t;
1023
1024 extern volatile __TXB0CONbits_t __at (0xf40) TXB0CONbits;
1025
1026 extern __sfr __at (0xf41) TXB0SIDH;
1027 typedef union {
1028         struct {
1029                 unsigned SID3:1;
1030                 unsigned SID4:1;
1031                 unsigned SID5:1;
1032                 unsigned SID6:1;
1033                 unsigned SID7:1;
1034                 unsigned SID8:1;
1035                 unsigned SID9:1;
1036                 unsigned SID10:1;
1037         };
1038 } __TXB0SIDHbits_t;
1039
1040 extern volatile __TXB0SIDHbits_t __at (0xf41) TXB0SIDHbits;
1041
1042 extern __sfr __at (0xf42) TXB0SIDL;
1043 typedef union {
1044         struct {
1045                 unsigned EID16:1;
1046                 unsigned EID17:1;
1047                 unsigned :1;
1048                 unsigned EXIDE:1;
1049                 unsigned :1;
1050                 unsigned SID0:1;
1051                 unsigned SID1:1;
1052                 unsigned SID2:1;
1053         };
1054 } __TXB0SIDLbits_t;
1055
1056 extern volatile __TXB0SIDLbits_t __at (0xf42) TXB0SIDLbits;
1057
1058 extern __sfr __at (0xf43) TXB0EIDH;
1059 typedef union {
1060         struct {
1061                 unsigned EID8:1;
1062                 unsigned EID9:1;
1063                 unsigned EID10:1;
1064                 unsigned EID11:1;
1065                 unsigned EID12:1;
1066                 unsigned EID13:1;
1067                 unsigned EID14:1;
1068                 unsigned EID15:1;
1069         };
1070 } __TXB0EIDHbits_t;
1071
1072 extern volatile __TXB0EIDHbits_t __at (0xf43) TXB0EIDHbits;
1073
1074 extern __sfr __at (0xf44) TXB0EIDL;
1075 typedef union {
1076         struct {
1077                 unsigned EID0:1;
1078                 unsigned EID1:1;
1079                 unsigned EID2:1;
1080                 unsigned EID3:1;
1081                 unsigned EID4:1;
1082                 unsigned EID5:1;
1083                 unsigned EID6:1;
1084                 unsigned EID7:1;
1085         };
1086 } __TXB0EIDLbits_t;
1087
1088 extern volatile __TXB0EIDLbits_t __at (0xf44) TXB0EIDLbits;
1089
1090 extern __sfr __at (0xf45) TXB0DLC;
1091 typedef union {
1092         struct {
1093                 unsigned DLC0:1;
1094                 unsigned DLC1:1;
1095                 unsigned DLC2:1;
1096                 unsigned DLC3:1;
1097                 unsigned :1;
1098                 unsigned :1;
1099                 unsigned TXRTR:1;
1100                 unsigned :1;
1101         };
1102 } __TXB0DLCbits_t;
1103
1104 extern volatile __TXB0DLCbits_t __at (0xf45) TXB0DLCbits;
1105
1106 extern __sfr __at (0xf46) TXB0D0;
1107 typedef union {
1108         struct {
1109                 unsigned TXB0D00:1;
1110                 unsigned TXB0D01:1;
1111                 unsigned TXB0D02:1;
1112                 unsigned TXB0D03:1;
1113                 unsigned TXB0D04:1;
1114                 unsigned TXB0D05:1;
1115                 unsigned TXB0D06:1;
1116                 unsigned TXB0D07:1;
1117         };
1118 } __TXB0D0bits_t;
1119
1120 extern volatile __TXB0D0bits_t __at (0xf46) TXB0D0bits;
1121
1122 extern __sfr __at (0xf47) TXB0D1;
1123 typedef union {
1124         struct {
1125                 unsigned TXB0D10:1;
1126                 unsigned TXB0D11:1;
1127                 unsigned TXB0D12:1;
1128                 unsigned TXB0D13:1;
1129                 unsigned TXB0D14:1;
1130                 unsigned TXB0D15:1;
1131                 unsigned TXB0D16:1;
1132                 unsigned TXB0D17:1;
1133         };
1134 } __TXB0D1bits_t;
1135
1136 extern volatile __TXB0D1bits_t __at (0xf47) TXB0D1bits;
1137
1138 extern __sfr __at (0xf48) TXB0D2;
1139 typedef union {
1140         struct {
1141                 unsigned TXB0D20:1;
1142                 unsigned TXB0D21:1;
1143                 unsigned TXB0D22:1;
1144                 unsigned TXB0D23:1;
1145                 unsigned TXB0D24:1;
1146                 unsigned TXB0D25:1;
1147                 unsigned TXB0D26:1;
1148                 unsigned TXB0D27:1;
1149         };
1150 } __TXB0D2bits_t;
1151
1152 extern volatile __TXB0D2bits_t __at (0xf48) TXB0D2bits;
1153
1154 extern __sfr __at (0xf49) TXB0D3;
1155 typedef union {
1156         struct {
1157                 unsigned TXB0D30:1;
1158                 unsigned TXB0D31:1;
1159                 unsigned TXB0D32:1;
1160                 unsigned TXB0D33:1;
1161                 unsigned TXB0D34:1;
1162                 unsigned TXBD035:1;
1163                 unsigned TXBD0D36:1;
1164                 unsigned TXB0D37:1;
1165         };
1166 } __TXB0D3bits_t;
1167
1168 extern volatile __TXB0D3bits_t __at (0xf49) TXB0D3bits;
1169
1170 extern __sfr __at (0xf4a) TXB0D4;
1171 typedef union {
1172         struct {
1173                 unsigned TXB0D40:1;
1174                 unsigned TXB0D41:1;
1175                 unsigned TXB0D42:1;
1176                 unsigned TXB0D43:1;
1177                 unsigned TXB0D44:1;
1178                 unsigned TXB0D45:1;
1179                 unsigned TXB0D46:1;
1180                 unsigned TXB0D47:1;
1181         };
1182 } __TXB0D4bits_t;
1183
1184 extern volatile __TXB0D4bits_t __at (0xf4a) TXB0D4bits;
1185
1186 extern __sfr __at (0xf4b) TXB0D5;
1187 typedef union {
1188         struct {
1189                 unsigned TXB0D50:1;
1190                 unsigned TXB0D51:1;
1191                 unsigned TXB0D52:1;
1192                 unsigned TXB0D53:1;
1193                 unsigned TXB0D54:1;
1194                 unsigned TXB0D55:1;
1195                 unsigned TXB0D56:1;
1196                 unsigned TXB0D57:1;
1197         };
1198 } __TXB0D5bits_t;
1199
1200 extern volatile __TXB0D5bits_t __at (0xf4b) TXB0D5bits;
1201
1202 extern __sfr __at (0xf4c) TXB0D6;
1203 typedef union {
1204         struct {
1205                 unsigned TXB0D60:1;
1206                 unsigned TXB0D61:1;
1207                 unsigned TXB0D62:1;
1208                 unsigned TXB0D63:1;
1209                 unsigned TXB0D64:1;
1210                 unsigned TXB0D65:1;
1211                 unsigned TXB0D66:1;
1212                 unsigned TXB0D67:1;
1213         };
1214 } __TXB0D6bits_t;
1215
1216 extern volatile __TXB0D6bits_t __at (0xf4c) TXB0D6bits;
1217
1218 extern __sfr __at (0xf4d) TXB0D7;
1219 typedef union {
1220         struct {
1221                 unsigned TXB0D70:1;
1222                 unsigned TXB0D71:1;
1223                 unsigned TXB0D72:1;
1224                 unsigned TXB0D73:1;
1225                 unsigned TXB0D74:1;
1226                 unsigned TXB0D75:1;
1227                 unsigned TXB0D76:1;
1228                 unsigned TXB0D77:1;
1229         };
1230 } __TXB0D7bits_t;
1231
1232 extern volatile __TXB0D7bits_t __at (0xf4d) TXB0D7bits;
1233
1234 extern __sfr __at (0xf4e) CANSTATRO2;
1235 typedef union {
1236         struct {
1237                 unsigned :1;
1238                 unsigned ICODE0:1;
1239                 unsigned ICODE1:1;
1240                 unsigned ICODE2:1;
1241                 unsigned :1;
1242                 unsigned OPMODE0:1;
1243                 unsigned OPMODE1:1;
1244                 unsigned OPMODE2:1;
1245         };
1246 } __CANSTATRO2bits_t;
1247
1248 extern volatile __CANSTATRO2bits_t __at (0xf4e) CANSTATRO2bits;
1249
1250 extern __sfr __at (0xf50) RXB1CON;
1251 typedef union {
1252         struct {
1253                 unsigned FILHIT0:1;
1254                 unsigned FILHIT1:1;
1255                 unsigned FILHIT2:1;
1256                 unsigned RXRTRRO:1;
1257                 unsigned :1;
1258                 unsigned RXM0:1;
1259                 unsigned RXM1:1;
1260                 unsigned RXFUL:1;
1261         };
1262 } __RXB1CONbits_t;
1263
1264 extern volatile __RXB1CONbits_t __at (0xf50) RXB1CONbits;
1265
1266 extern __sfr __at (0xf51) RXB1SIDH;
1267 typedef union {
1268         struct {
1269                 unsigned SID3:1;
1270                 unsigned SID4:1;
1271                 unsigned SID5:1;
1272                 unsigned SID6:1;
1273                 unsigned SID7:1;
1274                 unsigned SID8:1;
1275                 unsigned SID9:1;
1276                 unsigned SID10:1;
1277         };
1278 } __RXB1SIDHbits_t;
1279
1280 extern volatile __RXB1SIDHbits_t __at (0xf51) RXB1SIDHbits;
1281
1282 extern __sfr __at (0xf52) RXB1SIDL;
1283 typedef union {
1284         struct {
1285                 unsigned EID16:1;
1286                 unsigned EID17:1;
1287                 unsigned :1;
1288                 unsigned EXIDE:1;
1289                 unsigned SRR:1;
1290                 unsigned SID0:1;
1291                 unsigned SID1:1;
1292                 unsigned SID2:1;
1293         };
1294 } __RXB1SIDLbits_t;
1295
1296 extern volatile __RXB1SIDLbits_t __at (0xf52) RXB1SIDLbits;
1297
1298 extern __sfr __at (0xf53) RXB1EIDH;
1299 typedef union {
1300         struct {
1301                 unsigned EID8:1;
1302                 unsigned EID9:1;
1303                 unsigned EID10:1;
1304                 unsigned EID11:1;
1305                 unsigned EID12:1;
1306                 unsigned EID13:1;
1307                 unsigned EID14:1;
1308                 unsigned EID15:1;
1309         };
1310 } __RXB1EIDHbits_t;
1311
1312 extern volatile __RXB1EIDHbits_t __at (0xf53) RXB1EIDHbits;
1313
1314 extern __sfr __at (0xf54) RXB1EIDL;
1315 typedef union {
1316         struct {
1317                 unsigned EID0:1;
1318                 unsigned EID1:1;
1319                 unsigned EID2:1;
1320                 unsigned EID3:1;
1321                 unsigned EID4:1;
1322                 unsigned EID5:1;
1323                 unsigned EID6:1;
1324                 unsigned EID7:1;
1325         };
1326 } __RXB1EIDLbits_t;
1327
1328 extern volatile __RXB1EIDLbits_t __at (0xf54) RXB1EIDLbits;
1329
1330 extern __sfr __at (0xf55) RXB1DLC;
1331 typedef union {
1332         struct {
1333                 unsigned DLC0:1;
1334                 unsigned DLC1:1;
1335                 unsigned DLC2:1;
1336                 unsigned DLC3:1;
1337                 unsigned RESB0:1;
1338                 unsigned RESB1:1;
1339                 unsigned RXRTR:1;
1340                 unsigned :1;
1341         };
1342 } __RXB1DLCbits_t;
1343
1344 extern volatile __RXB1DLCbits_t __at (0xf55) RXB1DLCbits;
1345
1346 extern __sfr __at (0xf56) RXB1D0;
1347 typedef union {
1348         struct {
1349                 unsigned RXB1D00:1;
1350                 unsigned RXB1D01:1;
1351                 unsigned RXB1D02:1;
1352                 unsigned RXB1D03:1;
1353                 unsigned RXB1D04:1;
1354                 unsigned RXB1D05:1;
1355                 unsigned RXB1D06:1;
1356                 unsigned RXB1D07:1;
1357         };
1358 } __RXB1D0bits_t;
1359
1360 extern volatile __RXB1D0bits_t __at (0xf56) RXB1D0bits;
1361
1362 extern __sfr __at (0xf57) RXB1D1;
1363 typedef union {
1364         struct {
1365                 unsigned RXB1D10:1;
1366                 unsigned RXB1D11:1;
1367                 unsigned RXB1D12:1;
1368                 unsigned RXB1D13:1;
1369                 unsigned RXB1D14:1;
1370                 unsigned RXB1D15:1;
1371                 unsigned RXB1D16:1;
1372                 unsigned RXB1D17:1;
1373         };
1374 } __RXB1D1bits_t;
1375
1376 extern volatile __RXB1D1bits_t __at (0xf57) RXB1D1bits;
1377
1378 extern __sfr __at (0xf58) RXB1D2;
1379 typedef union {
1380         struct {
1381                 unsigned RXB1D20:1;
1382                 unsigned RXB1D21:1;
1383                 unsigned RXB1D22:1;
1384                 unsigned RXB1D23:1;
1385                 unsigned RXB1D24:1;
1386                 unsigned RXB1D25:1;
1387                 unsigned RXB1D26:1;
1388                 unsigned RXB1D27:1;
1389         };
1390 } __RXB1D2bits_t;
1391
1392 extern volatile __RXB1D2bits_t __at (0xf58) RXB1D2bits;
1393
1394 extern __sfr __at (0xf59) RXB1D3;
1395 typedef union {
1396         struct {
1397                 unsigned RXB1D30:1;
1398                 unsigned RXB1D31:1;
1399                 unsigned RXB1D32:1;
1400                 unsigned RXB1D33:1;
1401                 unsigned RXB1D34:1;
1402                 unsigned RXB1D35:1;
1403                 unsigned RXB1D36:1;
1404                 unsigned RXB1D37:1;
1405         };
1406 } __RXB1D3bits_t;
1407
1408 extern volatile __RXB1D3bits_t __at (0xf59) RXB1D3bits;
1409
1410 extern __sfr __at (0xf5a) RXB1D4;
1411 typedef union {
1412         struct {
1413                 unsigned RXB1D40:1;
1414                 unsigned RXB1D41:1;
1415                 unsigned RXB1D42:1;
1416                 unsigned RXB1D43:1;
1417                 unsigned RXB1D44:1;
1418                 unsigned RXB1D45:1;
1419                 unsigned RXB1D46:1;
1420                 unsigned RXB1D47:1;
1421         };
1422 } __RXB1D4bits_t;
1423
1424 extern volatile __RXB1D4bits_t __at (0xf5a) RXB1D4bits;
1425
1426 extern __sfr __at (0xf5b) RXB1D5;
1427 typedef union {
1428         struct {
1429                 unsigned RXB1D50:1;
1430                 unsigned RXB1D51:1;
1431                 unsigned RXB1D52:1;
1432                 unsigned RXB1D53:1;
1433                 unsigned RXB1D54:1;
1434                 unsigned RXB1D55:1;
1435                 unsigned RXB1D56:1;
1436                 unsigned RXB1D57:1;
1437         };
1438 } __RXB1D5bits_t;
1439
1440 extern volatile __RXB1D5bits_t __at (0xf5b) RXB1D5bits;
1441
1442 extern __sfr __at (0xf5c) RXB1D6;
1443 typedef union {
1444         struct {
1445                 unsigned RXB1D60:1;
1446                 unsigned RXB1D61:1;
1447                 unsigned RXB1D62:1;
1448                 unsigned RXB1D63:1;
1449                 unsigned RXB1D64:1;
1450                 unsigned RXB1D65:1;
1451                 unsigned RXB1D66:1;
1452                 unsigned RXB1D67:1;
1453         };
1454 } __RXB1D6bits_t;
1455
1456 extern volatile __RXB1D6bits_t __at (0xf5c) RXB1D6bits;
1457
1458 extern __sfr __at (0xf5d) RXB1D7;
1459 typedef union {
1460         struct {
1461                 unsigned RXB1D70:1;
1462                 unsigned RXB1D71:1;
1463                 unsigned RXB1D72:1;
1464                 unsigned RXB1D73:1;
1465                 unsigned RXB1D74:1;
1466                 unsigned RXB1D75:1;
1467                 unsigned RXB1D76:1;
1468                 unsigned RXB1D77:1;
1469         };
1470 } __RXB1D7bits_t;
1471
1472 extern volatile __RXB1D7bits_t __at (0xf5d) RXB1D7bits;
1473
1474 extern __sfr __at (0xf5e) CANSTATRO1;
1475 typedef union {
1476         struct {
1477                 unsigned :1;
1478                 unsigned ICODE0:1;
1479                 unsigned ICODE1:1;
1480                 unsigned ICODE2:1;
1481                 unsigned :1;
1482                 unsigned OPMODE0:1;
1483                 unsigned OPMODE1:1;
1484                 unsigned OPMODE2:1;
1485         };
1486 } __CANSTATRO1bits_t;
1487
1488 extern volatile __CANSTATRO1bits_t __at (0xf5e) CANSTATRO1bits;
1489
1490 extern __sfr __at (0xf60) RXB0CON;
1491 typedef union {
1492         struct {
1493                 unsigned FILHIT0:1;
1494                 unsigned RXB0DBEN_R:1;
1495                 unsigned RXB0DBEN:1;
1496                 unsigned RXRTRR0:1;
1497                 unsigned :1;
1498                 unsigned RXM0:1;
1499                 unsigned RXM1:1;
1500                 unsigned RXFUL:1;
1501         };
1502 } __RXB0CONbits_t;
1503
1504 extern volatile __RXB0CONbits_t __at (0xf60) RXB0CONbits;
1505
1506 extern __sfr __at (0xf61) RXB0SIDH;
1507 typedef union {
1508         struct {
1509                 unsigned SID3:1;
1510                 unsigned SID4:1;
1511                 unsigned SID5:1;
1512                 unsigned SID6:1;
1513                 unsigned SID7:1;
1514                 unsigned SID8:1;
1515                 unsigned SID9:1;
1516                 unsigned SID10:1;
1517         };
1518 } __RXB0SIDHbits_t;
1519
1520 extern volatile __RXB0SIDHbits_t __at (0xf61) RXB0SIDHbits;
1521
1522 extern __sfr __at (0xf62) RXB0SIDL;
1523 typedef union {
1524         struct {
1525                 unsigned EID16:1;
1526                 unsigned EID17:1;
1527                 unsigned :1;
1528                 unsigned EXID:1;
1529                 unsigned SRR:1;
1530                 unsigned SID0:1;
1531                 unsigned SID1:1;
1532                 unsigned SID2:1;
1533         };
1534 } __RXB0SIDLbits_t;
1535
1536 extern volatile __RXB0SIDLbits_t __at (0xf62) RXB0SIDLbits;
1537
1538 extern __sfr __at (0xf63) RXB0EIDH;
1539 typedef union {
1540         struct {
1541                 unsigned EID8:1;
1542                 unsigned EDI9:1;
1543                 unsigned EID10:1;
1544                 unsigned ED11:1;
1545                 unsigned EID12:1;
1546                 unsigned EID13:1;
1547                 unsigned EID14:1;
1548                 unsigned EID15:1;
1549         };
1550 } __RXB0EIDHbits_t;
1551
1552 extern volatile __RXB0EIDHbits_t __at (0xf63) RXB0EIDHbits;
1553
1554 extern __sfr __at (0xf64) RXB0EIDL;
1555 typedef union {
1556         struct {
1557                 unsigned EID0:1;
1558                 unsigned EID1:1;
1559                 unsigned EID2:1;
1560                 unsigned EID3:1;
1561                 unsigned EID4:1;
1562                 unsigned EID5:1;
1563                 unsigned EID6:1;
1564                 unsigned EID7:1;
1565         };
1566 } __RXB0EIDLbits_t;
1567
1568 extern volatile __RXB0EIDLbits_t __at (0xf64) RXB0EIDLbits;
1569
1570 extern __sfr __at (0xf65) RXB0DLC;
1571 typedef union {
1572         struct {
1573                 unsigned DLC0:1;
1574                 unsigned DLC1:1;
1575                 unsigned DLC2:1;
1576                 unsigned DLC3:1;
1577                 unsigned RESB0:1;
1578                 unsigned RESB1:1;
1579                 unsigned RTR:1;
1580                 unsigned :1;
1581         };
1582 } __RXB0DLCbits_t;
1583
1584 extern volatile __RXB0DLCbits_t __at (0xf65) RXB0DLCbits;
1585
1586 extern __sfr __at (0xf66) RXB0D0;
1587 extern __sfr __at (0xf67) RXB0D1;
1588 extern __sfr __at (0xf68) RXB0D2;
1589 extern __sfr __at (0xf69) RXB0D3;
1590 extern __sfr __at (0xf6a) RXB0D4;
1591 extern __sfr __at (0xf6b) RXB0D5;
1592 extern __sfr __at (0xf6c) RXB0D6;
1593 extern __sfr __at (0xf6d) RXB0D7;
1594 extern __sfr __at (0xf6e) CANSTAT;
1595 typedef union {
1596         struct {
1597                 unsigned :1;
1598                 unsigned ICODE0:1;
1599                 unsigned ICODE1:1;
1600                 unsigned ICODE2:1;
1601                 unsigned :1;
1602                 unsigned OPMODE0:1;
1603                 unsigned OPMODE1:1;
1604                 unsigned OPMODE2:1;
1605         };
1606 } __CANSTATbits_t;
1607
1608 extern volatile __CANSTATbits_t __at (0xf6e) CANSTATbits;
1609
1610 extern __sfr __at (0xf6f) CANCON;
1611 typedef union {
1612         struct {
1613                 unsigned WIN0:1;
1614                 unsigned WIN1:1;
1615                 unsigned WIN2:1;
1616                 unsigned WIN3:1;
1617                 unsigned ABAT:1;
1618                 unsigned REQOP0:1;
1619                 unsigned REQOP1:1;
1620                 unsigned REQOP2:1;
1621         };
1622 } __CANCONbits_t;
1623
1624 extern volatile __CANCONbits_t __at (0xf6f) CANCONbits;
1625
1626 extern __sfr __at (0xf70) BRGCON1;
1627 typedef union {
1628         struct {
1629                 unsigned BRP0:1;
1630                 unsigned BRP1:1;
1631                 unsigned BRP2:1;
1632                 unsigned BRP3:1;
1633                 unsigned BRP4:1;
1634                 unsigned BRP5:1;
1635                 unsigned SJW0:1;
1636                 unsigned SJW1:1;
1637         };
1638 } __BRGCON1bits_t;
1639
1640 extern volatile __BRGCON1bits_t __at (0xf70) BRGCON1bits;
1641
1642 extern __sfr __at (0xf71) BRGCON2;
1643 typedef union {
1644         struct {
1645                 unsigned PRSEG0:1;
1646                 unsigned PRSEG1:1;
1647                 unsigned PRSEG2:1;
1648                 unsigned SEG1PH0:1;
1649                 unsigned SEG1PH1:1;
1650                 unsigned SEG1PH2:1;
1651                 unsigned SAM:1;
1652                 unsigned SEG2PHTS:1;
1653         };
1654 } __BRGCON2bits_t;
1655
1656 extern volatile __BRGCON2bits_t __at (0xf71) BRGCON2bits;
1657
1658 extern __sfr __at (0xf72) BRGCON3;
1659 typedef union {
1660         struct {
1661                 unsigned SEG2PH0:1;
1662                 unsigned SEG2PH1:1;
1663                 unsigned SEG2PH2:1;
1664                 unsigned :1;
1665                 unsigned :1;
1666                 unsigned :1;
1667                 unsigned WAKFIL:1;
1668                 unsigned :1;
1669         };
1670 } __BRGCON3bits_t;
1671
1672 extern volatile __BRGCON3bits_t __at (0xf72) BRGCON3bits;
1673
1674 extern __sfr __at (0xf73) CIOCON;
1675 typedef union {
1676         struct {
1677                 unsigned :1;
1678                 unsigned :1;
1679                 unsigned :1;
1680                 unsigned :1;
1681                 unsigned CANCAP:1;
1682                 unsigned ENDRHI:1;
1683                 unsigned :1;
1684                 unsigned :1;
1685         };
1686 } __CIOCONbits_t;
1687
1688 extern volatile __CIOCONbits_t __at (0xf73) CIOCONbits;
1689
1690 extern __sfr __at (0xf74) COMSTAT;
1691 typedef union {
1692         struct {
1693                 unsigned EWARN:1;
1694                 unsigned RXWARN:1;
1695                 unsigned TXWARN:1;
1696                 unsigned RXBP:1;
1697                 unsigned TXBP:1;
1698                 unsigned TXBO:1;
1699                 unsigned RXB1OVFL:1;
1700                 unsigned RXB0OVFL:1;
1701         };
1702 } __COMSTATbits_t;
1703
1704 extern volatile __COMSTATbits_t __at (0xf74) COMSTATbits;
1705
1706 extern __sfr __at (0xf75) RXERRCNT;
1707 typedef union {
1708         struct {
1709                 unsigned REC0:1;
1710                 unsigned REC1:1;
1711                 unsigned REC2:1;
1712                 unsigned REC3:1;
1713                 unsigned REC4:1;
1714                 unsigned REC5:1;
1715                 unsigned REC6:1;
1716                 unsigned REC7:1;
1717         };
1718 } __RXERRCNTbits_t;
1719
1720 extern volatile __RXERRCNTbits_t __at (0xf75) RXERRCNTbits;
1721
1722 extern __sfr __at (0xf76) TXERRCNT;
1723 typedef union {
1724         struct {
1725                 unsigned TEC0:1;
1726                 unsigned TEC1:1;
1727                 unsigned TEC2:1;
1728                 unsigned TEC3:1;
1729                 unsigned TEC4:1;
1730                 unsigned TEC5:1;
1731                 unsigned TEC6:1;
1732                 unsigned TEC7:1;
1733         };
1734 } __TXERRCNTbits_t;
1735
1736 extern volatile __TXERRCNTbits_t __at (0xf76) TXERRCNTbits;
1737
1738 extern __sfr __at (0xf80) PORTA;
1739 typedef union {
1740         struct {
1741                 unsigned RA0:1;
1742                 unsigned RA1:1;
1743                 unsigned RA2:1;
1744                 unsigned RA3:1;
1745                 unsigned RA4:1;
1746                 unsigned RA5:1;
1747                 unsigned RA6:1;
1748                 unsigned :1;
1749         };
1750
1751         struct {
1752                 unsigned AN0:1;
1753                 unsigned AN1:1;
1754                 unsigned AN2:1;
1755                 unsigned AN3:1;
1756                 unsigned :1;
1757                 unsigned AN4:1;
1758                 unsigned OSC2:1;
1759                 unsigned :1;
1760         };
1761
1762         struct {
1763                 unsigned :1;
1764                 unsigned :1;
1765                 unsigned VREFM:1;
1766                 unsigned VREFP:1;
1767                 unsigned T0CKI:1;
1768                 unsigned SS:1;
1769                 unsigned CLK0:1;
1770                 unsigned :1;
1771         };
1772
1773         struct {
1774                 unsigned :1;
1775                 unsigned :1;
1776                 unsigned :1;
1777                 unsigned :1;
1778                 unsigned :1;
1779                 unsigned LVDIN:1;
1780                 unsigned :1;
1781                 unsigned :1;
1782         };
1783 } __PORTAbits_t;
1784
1785 extern volatile __PORTAbits_t __at (0xf80) PORTAbits;
1786
1787 extern __sfr __at (0xf81) PORTB;
1788 typedef union {
1789         struct {
1790                 unsigned RB0:1;
1791                 unsigned RB1:1;
1792                 unsigned RB2:1;
1793                 unsigned RB3:1;
1794                 unsigned RB4:1;
1795                 unsigned RB5:1;
1796                 unsigned RB6:1;
1797                 unsigned RB7:1;
1798         };
1799
1800         struct {
1801                 unsigned INT0:1;
1802                 unsigned INT1:1;
1803                 unsigned INT2:1;
1804                 unsigned INT3:1;
1805                 unsigned :1;
1806                 unsigned :1;
1807                 unsigned :1;
1808                 unsigned :1;
1809         };
1810 } __PORTBbits_t;
1811
1812 extern volatile __PORTBbits_t __at (0xf81) PORTBbits;
1813
1814 extern __sfr __at (0xf82) PORTC;
1815 typedef union {
1816         struct {
1817                 unsigned RC0:1;
1818                 unsigned RC1:1;
1819                 unsigned RC2:1;
1820                 unsigned RC3:1;
1821                 unsigned RC4:1;
1822                 unsigned RC5:1;
1823                 unsigned RC6:1;
1824                 unsigned RC7:1;
1825         };
1826
1827         struct {
1828                 unsigned T1OSO:1;
1829                 unsigned T1OSI:1;
1830                 unsigned :1;
1831                 unsigned SCK:1;
1832                 unsigned SDI:1;
1833                 unsigned SDO:1;
1834                 unsigned TX:1;
1835                 unsigned RX:1;
1836         };
1837
1838         struct {
1839                 unsigned T1CKI:1;
1840                 unsigned CCP2:1;
1841                 unsigned CCP1:1;
1842                 unsigned SCL:1;
1843                 unsigned SDA:1;
1844                 unsigned :1;
1845                 unsigned CK:1;
1846                 unsigned DT:1;
1847         };
1848 } __PORTCbits_t;
1849
1850 extern volatile __PORTCbits_t __at (0xf82) PORTCbits;
1851
1852 extern __sfr __at (0xf89) LATA;
1853 typedef union {
1854         struct {
1855                 unsigned LATA0:1;
1856                 unsigned LATA1:1;
1857                 unsigned LATA2:1;
1858                 unsigned LATA3:1;
1859                 unsigned LATA4:1;
1860                 unsigned LATA5:1;
1861                 unsigned LATA6:1;
1862                 unsigned :1;
1863         };
1864 } __LATAbits_t;
1865
1866 extern volatile __LATAbits_t __at (0xf89) LATAbits;
1867
1868 extern __sfr __at (0xf8a) LATB;
1869 typedef union {
1870         struct {
1871                 unsigned LATB0:1;
1872                 unsigned LATB1:1;
1873                 unsigned LATB2:1;
1874                 unsigned LATB3:1;
1875                 unsigned LATB4:1;
1876                 unsigned LATB5:1;
1877                 unsigned LATB6:1;
1878                 unsigned LATB7:1;
1879         };
1880 } __LATBbits_t;
1881
1882 extern volatile __LATBbits_t __at (0xf8a) LATBbits;
1883
1884 extern __sfr __at (0xf8b) LATC;
1885 typedef union {
1886         struct {
1887                 unsigned LATC0:1;
1888                 unsigned LATC1:1;
1889                 unsigned LATC2:1;
1890                 unsigned LATC3:1;
1891                 unsigned LATC4:1;
1892                 unsigned LATC5:1;
1893                 unsigned LATC6:1;
1894                 unsigned LATC7:1;
1895         };
1896 } __LATCbits_t;
1897
1898 extern volatile __LATCbits_t __at (0xf8b) LATCbits;
1899
1900 extern __sfr __at (0xf92) TRISA;
1901 typedef union {
1902         struct {
1903                 unsigned TRISA0:1;
1904                 unsigned TRISA1:1;
1905                 unsigned TRISA2:1;
1906                 unsigned TRISA3:1;
1907                 unsigned TRISA4:1;
1908                 unsigned TRISA5:1;
1909                 unsigned TRISA6:1;
1910                 unsigned :1;
1911         };
1912 } __TRISAbits_t;
1913
1914 extern volatile __TRISAbits_t __at (0xf92) TRISAbits;
1915
1916 extern __sfr __at (0xf93) TRISB;
1917 typedef union {
1918         struct {
1919                 unsigned TRISB0:1;
1920                 unsigned TRISB1:1;
1921                 unsigned TRISB2:1;
1922                 unsigned TRISB3:1;
1923                 unsigned TRISB4:1;
1924                 unsigned TRISB5:1;
1925                 unsigned TRISB6:1;
1926                 unsigned TRISB7:1;
1927         };
1928 } __TRISBbits_t;
1929
1930 extern volatile __TRISBbits_t __at (0xf93) TRISBbits;
1931
1932 extern __sfr __at (0xf94) TRISC;
1933 typedef union {
1934         struct {
1935                 unsigned TRISC0:1;
1936                 unsigned TRISC1:1;
1937                 unsigned TRISC2:1;
1938                 unsigned TRISC3:1;
1939                 unsigned TRISC4:1;
1940                 unsigned TRISC5:1;
1941                 unsigned TRISC6:1;
1942                 unsigned TRISC7:1;
1943         };
1944 } __TRISCbits_t;
1945
1946 extern volatile __TRISCbits_t __at (0xf94) TRISCbits;
1947
1948 extern __sfr __at (0xf9d) PIE1;
1949 typedef union {
1950         struct {
1951                 unsigned TMR1IE:1;
1952                 unsigned TMR2IE:1;
1953                 unsigned CCP1IE:1;
1954                 unsigned SSPIE:1;
1955                 unsigned TXIE:1;
1956                 unsigned RCIE:1;
1957                 unsigned ADIE:1;
1958                 unsigned PSPIE:1;
1959         };
1960 } __PIE1bits_t;
1961
1962 extern volatile __PIE1bits_t __at (0xf9d) PIE1bits;
1963
1964 extern __sfr __at (0xf9e) PIR1;
1965 typedef union {
1966         struct {
1967                 unsigned TMR1IF:1;
1968                 unsigned TMR2IF:1;
1969                 unsigned CCP1IF:1;
1970                 unsigned SSPIF:1;
1971                 unsigned TXIF:1;
1972                 unsigned RCIF:1;
1973                 unsigned ADIF:1;
1974                 unsigned PSPIF:1;
1975         };
1976 } __PIR1bits_t;
1977
1978 extern volatile __PIR1bits_t __at (0xf9e) PIR1bits;
1979
1980 extern __sfr __at (0xf9f) IPR1;
1981 typedef union {
1982         struct {
1983                 unsigned TMR1IP:1;
1984                 unsigned TMR2IP:1;
1985                 unsigned CCP1IP:1;
1986                 unsigned SSPIP:1;
1987                 unsigned TXIP:1;
1988                 unsigned RCIP:1;
1989                 unsigned ADIP:1;
1990                 unsigned PSPIP:1;
1991         };
1992 } __IPR1bits_t;
1993
1994 extern volatile __IPR1bits_t __at (0xf9f) IPR1bits;
1995
1996 extern __sfr __at (0xfa0) PIE2;
1997 typedef union {
1998         struct {
1999                 unsigned CCP2IE:1;
2000                 unsigned TMR3IE:1;
2001                 unsigned LVDIE:1;
2002                 unsigned BCLIE:1;
2003                 unsigned EEIE:1;
2004                 unsigned :1;
2005                 unsigned CMIE:1;
2006                 unsigned :1;
2007         };
2008 } __PIE2bits_t;
2009
2010 extern volatile __PIE2bits_t __at (0xfa0) PIE2bits;
2011
2012 extern __sfr __at (0xfa1) PIR2;
2013 typedef union {
2014         struct {
2015                 unsigned CCP2IF:1;
2016                 unsigned TMR3IF:1;
2017                 unsigned LVDIF:1;
2018                 unsigned BCLIF:1;
2019                 unsigned EEIF:1;
2020                 unsigned :1;
2021                 unsigned CMIF:1;
2022                 unsigned :1;
2023         };
2024 } __PIR2bits_t;
2025
2026 extern volatile __PIR2bits_t __at (0xfa1) PIR2bits;
2027
2028 extern __sfr __at (0xfa2) IPR2;
2029 typedef union {
2030         struct {
2031                 unsigned CCP2IP:1;
2032                 unsigned TMR3IP:1;
2033                 unsigned LVDIP:1;
2034                 unsigned BCLIP:1;
2035                 unsigned EEIP:1;
2036                 unsigned :1;
2037                 unsigned CMIP:1;
2038                 unsigned :1;
2039         };
2040 } __IPR2bits_t;
2041
2042 extern volatile __IPR2bits_t __at (0xfa2) IPR2bits;
2043
2044 extern __sfr __at (0xfa3) PIE3;
2045 typedef union {
2046         struct {
2047                 unsigned RX0IE:1;
2048                 unsigned RX1IE:1;
2049                 unsigned TX0IE:1;
2050                 unsigned TX1IE:1;
2051                 unsigned TX2IE:1;
2052                 unsigned ERRIE:1;
2053                 unsigned WAKIE:1;
2054                 unsigned IVRE:1;
2055         };
2056 } __PIE3bits_t;
2057
2058 extern volatile __PIE3bits_t __at (0xfa3) PIE3bits;
2059
2060 extern __sfr __at (0xfa4) PIR3;
2061 typedef union {
2062         struct {
2063                 unsigned RX0IF:1;
2064                 unsigned RX1IF:1;
2065                 unsigned TX0IF:1;
2066                 unsigned TX1IF:1;
2067                 unsigned TX2IF:1;
2068                 unsigned ERRIF:1;
2069                 unsigned WAKIF:1;
2070                 unsigned IVRF:1;
2071         };
2072 } __PIR3bits_t;
2073
2074 extern volatile __PIR3bits_t __at (0xfa4) PIR3bits;
2075
2076 extern __sfr __at (0xfa5) IPR3;
2077 typedef union {
2078         struct {
2079                 unsigned RX0IP:1;
2080                 unsigned RX1IP:1;
2081                 unsigned TX0IP:1;
2082                 unsigned TX1IP:1;
2083                 unsigned TX2IP:1;
2084                 unsigned ERRIP:1;
2085                 unsigned WAKIP:1;
2086                 unsigned IVRP:1;
2087         };
2088 } __IPR3bits_t;
2089
2090 extern volatile __IPR3bits_t __at (0xfa5) IPR3bits;
2091
2092 extern __sfr __at (0xfa6) EECON1;
2093 typedef union {
2094         struct {
2095                 unsigned RD:1;
2096                 unsigned WR:1;
2097                 unsigned WREN:1;
2098                 unsigned WRERR:1;
2099                 unsigned FREE:1;
2100                 unsigned :1;
2101                 unsigned CFGS:1;
2102                 unsigned EEPGD:1;
2103         };
2104 } __EECON1bits_t;
2105
2106 extern volatile __EECON1bits_t __at (0xfa6) EECON1bits;
2107
2108 extern __sfr __at (0xfa7) EECON2;
2109 extern __sfr __at (0xfa8) EEDATA;
2110 extern __sfr __at (0xfa9) EEADR;
2111 extern __sfr __at (0xfab) RCSTA;
2112 typedef union {
2113         struct {
2114                 unsigned RX9D:1;
2115                 unsigned OERR:1;
2116                 unsigned FERR:1;
2117                 unsigned ADDEN:1;
2118                 unsigned CREN:1;
2119                 unsigned SREN:1;
2120                 unsigned RX9:1;
2121                 unsigned SPEN:1;
2122         };
2123 } __RCSTAbits_t;
2124
2125 extern volatile __RCSTAbits_t __at (0xfab) RCSTAbits;
2126
2127 extern __sfr __at (0xfac) TXSTA;
2128 typedef union {
2129         struct {
2130                 unsigned TX9D:1;
2131                 unsigned TRMT:1;
2132                 unsigned BRGH:1;
2133                 unsigned :1;
2134                 unsigned SYNC:1;
2135                 unsigned TXEN:1;
2136                 unsigned TX9:1;
2137                 unsigned CSRC:1;
2138         };
2139 } __TXSTAbits_t;
2140
2141 extern volatile __TXSTAbits_t __at (0xfac) TXSTAbits;
2142
2143 extern __sfr __at (0xfad) TXREG;
2144 extern __sfr __at (0xfae) RCREG;
2145 extern __sfr __at (0xfaf) SPBRG;
2146 extern __sfr __at (0xfb1) T3CON;
2147 typedef union {
2148         struct {
2149                 unsigned TMR3ON:1;
2150                 unsigned TMR3CS:1;
2151                 unsigned T3SYNC:1;
2152                 unsigned T3CCP1:1;
2153                 unsigned T3CKPS0:1;
2154                 unsigned T3CKPS1:1;
2155                 unsigned T3CCP2:1;
2156                 unsigned RD16:1;
2157         };
2158 } __T3CONbits_t;
2159
2160 extern volatile __T3CONbits_t __at (0xfb1) T3CONbits;
2161
2162 extern __sfr __at (0xfb2) TMR3L;
2163 extern __sfr __at (0xfb3) TMR3H;
2164 extern __sfr __at (0xfbd) CCP1CON;
2165 typedef union {
2166         struct {
2167                 unsigned CCP1M0:1;
2168                 unsigned CCP1M1:1;
2169                 unsigned CCP1M2:1;
2170                 unsigned CCP1M3:1;
2171                 unsigned DCCP1Y:1;
2172                 unsigned DCCP1X:1;
2173                 unsigned :1;
2174                 unsigned :1;
2175         };
2176 } __CCP1CONbits_t;
2177
2178 extern volatile __CCP1CONbits_t __at (0xfbd) CCP1CONbits;
2179
2180 extern __sfr __at (0xfbe) CCPR1L;
2181 extern __sfr __at (0xfbf) CCPR1H;
2182 extern __sfr __at (0xfc1) ADCON1;
2183 typedef union {
2184         struct {
2185                 unsigned PCFG0:1;
2186                 unsigned PCFG1:1;
2187                 unsigned PCFG2:1;
2188                 unsigned PCFG3:1;
2189                 unsigned :1;
2190                 unsigned :1;
2191                 unsigned ADCS2:1;
2192                 unsigned ADFM:1;
2193         };
2194 } __ADCON1bits_t;
2195
2196 extern volatile __ADCON1bits_t __at (0xfc1) ADCON1bits;
2197
2198 extern __sfr __at (0xfc2) ADCON0;
2199 typedef union {
2200         struct {
2201                 unsigned ADON:1;
2202                 unsigned :1;
2203                 unsigned GO:1;
2204                 unsigned CHS0:1;
2205                 unsigned CHS1:1;
2206                 unsigned CHS2:1;
2207                 unsigned ADCS0:1;
2208                 unsigned ADCS1:1;
2209         };
2210 } __ADCON0bits_t;
2211
2212 extern volatile __ADCON0bits_t __at (0xfc2) ADCON0bits;
2213
2214 extern __sfr __at (0xfc3) ADRESL;
2215 extern __sfr __at (0xfc4) ADRESH;
2216 extern __sfr __at (0xfc5) SSPCON2;
2217 typedef union {
2218         struct {
2219                 unsigned SEN:1;
2220                 unsigned RSEN:1;
2221                 unsigned PEN:1;
2222                 unsigned RCEN:1;
2223                 unsigned ACKEN:1;
2224                 unsigned ACKDT:1;
2225                 unsigned ACKSTAT:1;
2226                 unsigned GCEN:1;
2227         };
2228 } __SSPCON2bits_t;
2229
2230 extern volatile __SSPCON2bits_t __at (0xfc5) SSPCON2bits;
2231
2232 extern __sfr __at (0xfc6) SSPCON1;
2233 typedef union {
2234         struct {
2235                 unsigned SSPM0:1;
2236                 unsigned SSPM1:1;
2237                 unsigned SSPM2:1;
2238                 unsigned SSPM3:1;
2239                 unsigned CKP:1;
2240                 unsigned SSPEN:1;
2241                 unsigned SSPOV:1;
2242                 unsigned WCOL:1;
2243         };
2244 } __SSPCON1bits_t;
2245
2246 extern volatile __SSPCON1bits_t __at (0xfc6) SSPCON1bits;
2247
2248 extern __sfr __at (0xfc7) SSPSTAT;
2249 typedef union {
2250         struct {
2251                 unsigned BF:1;
2252                 unsigned UA:1;
2253                 unsigned R_W:1;
2254                 unsigned S:1;
2255                 unsigned P:1;
2256                 unsigned D_A:1;
2257                 unsigned CKE:1;
2258                 unsigned SMP:1;
2259         };
2260 } __SSPSTATbits_t;
2261
2262 extern volatile __SSPSTATbits_t __at (0xfc7) SSPSTATbits;
2263
2264 extern __sfr __at (0xfc8) SSPADD;
2265 extern __sfr __at (0xfc9) SSPBUF;
2266 extern __sfr __at (0xfca) T2CON;
2267 typedef union {
2268         struct {
2269                 unsigned T2CKPS0:1;
2270                 unsigned T2CKPS1:1;
2271                 unsigned TMR2ON:1;
2272                 unsigned TOUTPS0:1;
2273                 unsigned TOUTPS1:1;
2274                 unsigned TOUTPS2:1;
2275                 unsigned TOUTPS3:1;
2276                 unsigned :1;
2277         };
2278 } __T2CONbits_t;
2279
2280 extern volatile __T2CONbits_t __at (0xfca) T2CONbits;
2281
2282 extern __sfr __at (0xfcb) PR2;
2283 extern __sfr __at (0xfcc) TMR2;
2284 extern __sfr __at (0xfcd) T1CON;
2285 typedef union {
2286         struct {
2287                 unsigned TMR1ON:1;
2288                 unsigned TMR1CS:1;
2289                 unsigned NOT_T1SYNC:1;
2290                 unsigned T1OSCEN:1;
2291                 unsigned T1CKPS0:1;
2292                 unsigned T1CKPS1:1;
2293                 unsigned :1;
2294                 unsigned RD16:1;
2295         };
2296 } __T1CONbits_t;
2297
2298 extern volatile __T1CONbits_t __at (0xfcd) T1CONbits;
2299
2300 extern __sfr __at (0xfce) TMR1L;
2301 extern __sfr __at (0xfcf) TMR1H;
2302 extern __sfr __at (0xfd0) RCON;
2303 typedef union {
2304         struct {
2305                 unsigned BOR:1;
2306                 unsigned POR:1;
2307                 unsigned PD:1;
2308                 unsigned TO:1;
2309                 unsigned RI:1;
2310                 unsigned :1;
2311                 unsigned :1;
2312                 unsigned IPEN:1;
2313         };
2314 } __RCONbits_t;
2315
2316 extern volatile __RCONbits_t __at (0xfd0) RCONbits;
2317
2318 extern __sfr __at (0xfd1) WDTCON;
2319 typedef union {
2320         struct {
2321                 unsigned SWDTEN:1;
2322                 unsigned :1;
2323                 unsigned :1;
2324                 unsigned :1;
2325                 unsigned :1;
2326                 unsigned :1;
2327                 unsigned :1;
2328                 unsigned :1;
2329         };
2330
2331         struct {
2332                 unsigned SWDTE:1;
2333                 unsigned :1;
2334                 unsigned :1;
2335                 unsigned :1;
2336                 unsigned :1;
2337                 unsigned :1;
2338                 unsigned :1;
2339                 unsigned :1;
2340         };
2341 } __WDTCONbits_t;
2342
2343 extern volatile __WDTCONbits_t __at (0xfd1) WDTCONbits;
2344
2345 extern __sfr __at (0xfd2) LVDCON;
2346 typedef union {
2347         struct {
2348                 unsigned LVDL0:1;
2349                 unsigned LVDL1:1;
2350                 unsigned LVDL2:1;
2351                 unsigned LVDL3:1;
2352                 unsigned LVDEN:1;
2353                 unsigned VRST:1;
2354                 unsigned :1;
2355                 unsigned :1;
2356         };
2357
2358         struct {
2359                 unsigned LVV0:1;
2360                 unsigned LVV1:1;
2361                 unsigned LVV2:1;
2362                 unsigned LVV3:1;
2363                 unsigned :1;
2364                 unsigned BGST:1;
2365                 unsigned :1;
2366                 unsigned :1;
2367         };
2368 } __LVDCONbits_t;
2369
2370 extern volatile __LVDCONbits_t __at (0xfd2) LVDCONbits;
2371
2372 extern __sfr __at (0xfd3) OSCCON;
2373 typedef union {
2374         struct {
2375                 unsigned SCS:1;
2376                 unsigned :1;
2377                 unsigned :1;
2378                 unsigned :1;
2379                 unsigned :1;
2380                 unsigned :1;
2381                 unsigned :1;
2382                 unsigned :1;
2383         };
2384 } __OSCCONbits_t;
2385
2386 extern volatile __OSCCONbits_t __at (0xfd3) OSCCONbits;
2387
2388 extern __sfr __at (0xfd5) T0CON;
2389 typedef union {
2390         struct {
2391                 unsigned T0PS0:1;
2392                 unsigned T0PS1:1;
2393                 unsigned T0PS2:1;
2394                 unsigned PSA:1;
2395                 unsigned T0SE:1;
2396                 unsigned T0CS:1;
2397                 unsigned T08BIT:1;
2398                 unsigned TMR0ON:1;
2399         };
2400 } __T0CONbits_t;
2401
2402 extern volatile __T0CONbits_t __at (0xfd5) T0CONbits;
2403
2404 extern __sfr __at (0xfd6) TMR0L;
2405 extern __sfr __at (0xfd7) TMR0H;
2406 extern __sfr __at (0xfd8) STATUS;
2407 typedef union {
2408         struct {
2409                 unsigned C:1;
2410                 unsigned DC:1;
2411                 unsigned Z:1;
2412                 unsigned OV:1;
2413                 unsigned N:1;
2414                 unsigned :1;
2415                 unsigned :1;
2416                 unsigned :1;
2417         };
2418 } __STATUSbits_t;
2419
2420 extern volatile __STATUSbits_t __at (0xfd8) STATUSbits;
2421
2422 extern __sfr __at (0xfd9) FSR2L;
2423 extern __sfr __at (0xfda) FSR2H;
2424 extern __sfr __at (0xfdb) PLUSW2;
2425 extern __sfr __at (0xfdc) PREINC2;
2426 extern __sfr __at (0xfdd) POSTDEC2;
2427 extern __sfr __at (0xfde) POSTINC2;
2428 extern __sfr __at (0xfdf) INDF2;
2429 extern __sfr __at (0xfe0) BSR;
2430 extern __sfr __at (0xfe1) FSR1L;
2431 extern __sfr __at (0xfe2) FSR1H;
2432 extern __sfr __at (0xfe3) PLUSW1;
2433 extern __sfr __at (0xfe4) PREINC1;
2434 extern __sfr __at (0xfe5) POSTDEC1;
2435 extern __sfr __at (0xfe6) POSTINC1;
2436 extern __sfr __at (0xfe7) INDF1;
2437 extern __sfr __at (0xfe8) WREG;
2438 extern __sfr __at (0xfe9) FSR0L;
2439 extern __sfr __at (0xfea) FSR0H;
2440 extern __sfr __at (0xfeb) PLUSW0;
2441 extern __sfr __at (0xfec) PREINC0;
2442 extern __sfr __at (0xfed) POSTDEC0;
2443 extern __sfr __at (0xfee) POSTINC0;
2444 extern __sfr __at (0xfef) INDF0;
2445 extern __sfr __at (0xff0) INTCON3;
2446 typedef union {
2447         struct {
2448                 unsigned INT1F:1;
2449                 unsigned :1;
2450                 unsigned :1;
2451                 unsigned INT1E:1;
2452                 unsigned :1;
2453                 unsigned :1;
2454                 unsigned INT1P:1;
2455                 unsigned :1;
2456         };
2457
2458         struct {
2459                 unsigned INT1IF:1;
2460                 unsigned :1;
2461                 unsigned :1;
2462                 unsigned INT2IE:1;
2463                 unsigned :1;
2464                 unsigned :1;
2465                 unsigned INT1IP:1;
2466                 unsigned :1;
2467         };
2468 } __INTCON3bits_t;
2469
2470 extern volatile __INTCON3bits_t __at (0xff0) INTCON3bits;
2471
2472 extern __sfr __at (0xff1) INTCON2;
2473 typedef union {
2474         struct {
2475                 unsigned RBIP:1;
2476                 unsigned :1;
2477                 unsigned T0IP:1;
2478                 unsigned :1;
2479                 unsigned :1;
2480                 unsigned INTEDG1:1;
2481                 unsigned INTEDG0:1;
2482                 unsigned RBPU:1;
2483         };
2484 } __INTCON2bits_t;
2485
2486 extern volatile __INTCON2bits_t __at (0xff1) INTCON2bits;
2487
2488 extern __sfr __at (0xff2) INTCON;
2489 typedef union {
2490         struct {
2491                 unsigned RBIF:1;
2492                 unsigned INT0F:1;
2493                 unsigned T0IF:1;
2494                 unsigned RBIE:1;
2495                 unsigned INT0E:1;
2496                 unsigned T0IE:1;
2497                 unsigned PEIE:1;
2498                 unsigned GIE:1;
2499         };
2500         struct {
2501                 unsigned :1;
2502                 unsigned INT0IF:1;
2503                 unsigned TMR0IF:1;
2504                 unsigned :1;
2505                 unsigned INT0IE:1;
2506                 unsigned TMR0IE:1;
2507                 unsigned GIEL:1;
2508                 unsigned GIEH:1;
2509         };
2510 } __INTCONbits_t;
2511
2512 extern volatile __INTCONbits_t __at (0xff2) INTCONbits;
2513
2514 extern __sfr __at (0xff3) PRODL;
2515 extern __sfr __at (0xff4) PRODH;
2516 extern __sfr __at (0xff5) TABLAT;
2517 extern __sfr __at (0xff6) TBLPTRL;
2518 extern __sfr __at (0xff7) TBLPTRH;
2519 extern __sfr __at (0xff8) TBLPTRU;
2520 extern __sfr __at (0xff9) PCL;
2521 extern __sfr __at (0xffa) PCLATH;
2522 extern __sfr __at (0xffb) PCLATU;
2523 extern __sfr __at (0xffc) STKPTR;
2524 typedef union {
2525         struct {
2526                 unsigned STKPTR0:1;
2527                 unsigned STKPTR1:1;
2528                 unsigned STKPTR2:1;
2529                 unsigned STKPTR3:1;
2530                 unsigned STKPTR4:1;
2531                 unsigned :1;
2532                 unsigned STKUNF:1;
2533                 unsigned STKFUL:1;
2534         };
2535 } __STKPTRbits_t;
2536
2537 extern volatile __STKPTRbits_t __at (0xffc) STKPTRbits;
2538
2539 extern __sfr __at (0xffd) TOSL;
2540 extern __sfr __at (0xffe) TOSH;
2541 extern __sfr __at (0xfff) TOSU;
2542
2543
2544 /* Configuration registers locations */
2545 #define __CONFIG1H      0x300001
2546 #define __CONFIG2L      0x300002
2547 #define __CONFIG2H      0x300003
2548 #define __CONFIG4L      0x300006
2549 #define __CONFIG5L      0x300008
2550 #define __CONFIG5H      0x300009
2551 #define __CONFIG6L      0x30000A
2552 #define __CONFIG6H      0x30000B
2553 #define __CONFIG7L      0x30000C
2554 #define __CONFIG7H      0x30000D
2555
2556
2557
2558 /* Oscillator 1H options */
2559 #define _OSC_RC_OSC2_1H 0xFF    /* RC-OSC2 as RA6 */
2560 #define _OSC_HS_PLL_1H  0xFE    /* HS-PLL Enabled */
2561 #define _OSC_EC_OSC2_RA6_1H     0xFD    /* EC-OSC2 as RA6 */
2562 #define _OSC_EC_OSC2_Clock_Out_1H       0xFC    /* EC-OSC2 as Clock_Out */
2563 #define _OSC_RC_1H      0xFB    /* RC */
2564 #define _OSC_HS_1H      0xFA    /* HS */
2565 #define _OSC_XT_1H      0xF9    /* XT */
2566 #define _OSC_LP_1H      0xF8    /* LP */
2567
2568 /* Osc. Switch Enable 1H options */
2569 #define _OSCS_OFF_1H    0xFF    /* Disabled */
2570 #define _OSCS_ON_1H     0xDF    /* Enabled */
2571
2572 /* Power Up Timer 2L options */
2573 #define _PUT_OFF_2L     0xFF    /* Disabled */
2574 #define _PUT_ON_2L      0xFE    /* Enabled */
2575
2576 /* Brown Out Detect 2L options */
2577 #define _BODEN_ON_2L    0xFF    /* Enabled */
2578 #define _BODEN_OFF_2L   0xFD    /* Disabled */
2579
2580 /* Brown Out Voltage 2L options */
2581 #define _BODENV_2_0V_2L 0xFF    /* 2.0V */
2582 #define _BODENV_2_7V_2L 0xFB    /* 2.7V */
2583 #define _BODENV_4_2V_2L 0xF7    /* 4.2V */
2584 #define _BODENV_4_5V_2L 0xF3    /* 4.5V */
2585
2586 /* Watchdog Timer 2H options */
2587 #define _WDT_ON_2H      0xFF    /* Enabled */
2588 #define _WDT_OFF_2H     0xFE    /* Disabled */
2589
2590 /* Watchdog Postscaler 2H options */
2591 #define _WDTPS_1_128_2H 0xFF    /* 1:128 */
2592 #define _WDTPS_1_64_2H  0xFD    /* 1:64 */
2593 #define _WDTPS_1_32_2H  0xFB    /* 1:32 */
2594 #define _WDTPS_1_16_2H  0xF9    /* 1:16 */
2595 #define _WDTPS_1_8_2H   0xF7    /* 1:8 */
2596 #define _WDTPS_1_4_2H   0xF5    /* 1:4 */
2597 #define _WDTPS_1_2_2H   0xF3    /* 1:2 */
2598 #define _WDTPS_1_1_2H   0xF1    /* 1:1 */
2599
2600 /* Low Voltage Program 4L options */
2601 #define _LVP_ON_4L      0xFF    /* Enabled */
2602 #define _LVP_OFF_4L     0xFB    /* Disabled */
2603
2604 /* Background Debug 4L options */
2605 #define _BACKBUG_OFF_4L 0xFF    /* Disabled */
2606 #define _BACKBUG_ON_4L  0x7F    /* Enabled */
2607
2608 /* Stack Overflow Reset 4L options */
2609 #define _STVR_ON_4L     0xFF    /* Enabled */
2610 #define _STVR_OFF_4L    0xFE    /* Disabled */
2611
2612 /* Code Protect 00200-01FFF 5L options */
2613 #define _CP_0_OFF_5L    0xFF    /* Disabled */
2614 #define _CP_0_ON_5L     0xFE    /* Enabled */
2615
2616 /* Code Protect 02000-03FFF 5L options */
2617 #define _CP_1_OFF_5L    0xFF    /* Disabled */
2618 #define _CP_1_ON_5L     0xFD    /* Enabled */
2619
2620 /* Code Protect 04000-05FFF 5L options */
2621 #define _CP_2_OFF_5L    0xFF    /* Disabled */
2622 #define _CP_2_ON_5L     0xFB    /* Enabled */
2623
2624 /* Code Protect 06000-07FFF 5L options */
2625 #define _CP_3_OFF_5L    0xFF    /* Disabled */
2626 #define _CP_3_ON_5L     0xF7    /* Enabled */
2627
2628 /* Data EE Read Protect 5H options */
2629 #define _CPD_OFF_5H     0xFF    /* Disabled */
2630 #define _CPD_ON_5H      0x7F    /* Enabled */
2631
2632 /* Code Protect Boot 5H options */
2633 #define _CPB_OFF_5H     0xFF    /* Disabled */
2634 #define _CPB_ON_5H      0xBF    /* Enabled */
2635
2636 /* Table Write Protect 00200-01FFF 6L options */
2637 #define _WRT_0_OFF_6L   0xFF    /* Disabled */
2638 #define _WRT_0_ON_6L    0xFE    /* Enabled */
2639
2640 /* Table Write Protect 02000-03FFF 6L options */
2641 #define _WRT_1_OFF_6L   0xFF    /* Disabled */
2642 #define _WRT_1_ON_6L    0xFD    /* Enabled */
2643
2644 /* Table Write Protect 04000-05FFF 6L options */
2645 #define _WRT_2_OFF_6L   0xFF    /* Disabled */
2646 #define _WRT_2_ON_6L    0xFB    /* Enabled */
2647
2648 /* Table Write Protect 06000-07FFF 6L options */
2649 #define _WRT_3_OFF_6L   0xFF    /* Disabled */
2650 #define _WRT_3_ON_6L    0xF7    /* Enabled */
2651
2652 /* Data EE Write Protect 6H options */
2653 #define _WRTD_OFF_6H    0xFF    /* Disabled */
2654 #define _WRTD_ON_6H     0x7F    /* Enabled */
2655
2656 /* Table Write Protect Boot 6H options */
2657 #define _WRTB_OFF_6H    0xFF    /* Disabled */
2658 #define _WRTB_ON_6H     0xBF    /* Enabled */
2659
2660 /* Config. Write Protect 6H options */
2661 #define _WRTC_OFF_6H    0xFF    /* Disabled */
2662 #define _WRTC_ON_6H     0xDF    /* Enabled */
2663
2664 /* Table Read Protect 00200-01FFF 7L options */
2665 #define _EBTR_0_OFF_7L  0xFF    /* Disabled */
2666 #define _EBTR_0_ON_7L   0xFE    /* Enabled */
2667
2668 /* Table Read Protect 02000-03FFF 7L options */
2669 #define _EBTR_1_OFF_7L  0xFF    /* Disabled */
2670 #define _EBTR_1_ON_7L   0xFD    /* Enabled */
2671
2672 /* Table Read Protect 04000-05FFF 7L options */
2673 #define _EBTR_2_OFF_7L  0xFF    /* Disabled */
2674 #define _EBTR_2_ON_7L   0xFB    /* Enabled */
2675
2676 /* Table Read Protect 06000-07FFF 7L options */
2677 #define _EBTR_3_OFF_7L  0xFF    /* Disabled */
2678 #define _EBTR_3_ON_7L   0xF7    /* Enabled */
2679
2680 /* Table Read Protect Boot 7H options */
2681 #define _EBTRB_OFF_7H   0xFF    /* Disabled */
2682 #define _EBTRB_ON_7H    0xBF    /* Enabled */
2683
2684
2685 /* Device ID locations */
2686 #define __IDLOC0        0x200000
2687 #define __IDLOC1        0x200001
2688 #define __IDLOC2        0x200002
2689 #define __IDLOC3        0x200003
2690 #define __IDLOC4        0x200004
2691 #define __IDLOC5        0x200005
2692 #define __IDLOC6        0x200006
2693 #define __IDLOC7        0x200007
2694
2695
2696 #endif