4 # 44 "/opt/microchip/xc8/v1.12/include/pic12f1822.h"
5 extern volatile unsigned char INDF0 @ 0x000;
15 extern volatile INDF0bits_t INDF0bits @ 0x000;
18 extern volatile unsigned char INDF1 @ 0x001;
28 extern volatile INDF1bits_t INDF1bits @ 0x001;
31 extern volatile unsigned char PCL @ 0x002;
41 extern volatile PCLbits_t PCLbits @ 0x002;
44 extern volatile unsigned char STATUS @ 0x003;
46 asm("STATUS equ 03h");
65 extern volatile STATUSbits_t STATUSbits @ 0x003;
68 extern volatile unsigned short FSR0 @ 0x004;
71 extern volatile unsigned char FSR0L @ 0x004;
81 extern volatile FSR0Lbits_t FSR0Lbits @ 0x004;
84 extern volatile unsigned char FSR0H @ 0x005;
94 extern volatile FSR0Hbits_t FSR0Hbits @ 0x005;
97 extern volatile unsigned short FSR1 @ 0x006;
100 extern volatile unsigned char FSR1L @ 0x006;
102 asm("FSR1L equ 06h");
110 extern volatile FSR1Lbits_t FSR1Lbits @ 0x006;
113 extern volatile unsigned char FSR1H @ 0x007;
115 asm("FSR1H equ 07h");
123 extern volatile FSR1Hbits_t FSR1Hbits @ 0x007;
126 extern volatile unsigned char BSR @ 0x008;
143 extern volatile BSRbits_t BSRbits @ 0x008;
146 extern volatile unsigned char WREG @ 0x009;
156 extern volatile WREGbits_t WREGbits @ 0x009;
159 extern volatile unsigned char PCLATH @ 0x00A;
161 asm("PCLATH equ 0Ah");
169 extern volatile PCLATHbits_t PCLATHbits @ 0x00A;
172 extern volatile unsigned char INTCON @ 0x00B;
174 asm("INTCON equ 0Bh");
195 extern volatile INTCONbits_t INTCONbits @ 0x00B;
198 extern volatile unsigned char PORTA @ 0x00C;
200 asm("PORTA equ 0Ch");
278 extern volatile PORTAbits_t PORTAbits @ 0x00C;
281 extern volatile unsigned char PIR1 @ 0x011;
283 asm("PIR1 equ 011h");
298 extern volatile PIR1bits_t PIR1bits @ 0x011;
301 extern volatile unsigned char PIR2 @ 0x012;
303 asm("PIR2 equ 012h");
316 extern volatile PIR2bits_t PIR2bits @ 0x012;
319 extern volatile unsigned char TMR0 @ 0x015;
321 asm("TMR0 equ 015h");
329 extern volatile TMR0bits_t TMR0bits @ 0x015;
332 extern volatile unsigned short TMR1 @ 0x016;
334 asm("TMR1 equ 016h");
338 extern volatile unsigned char TMR1L @ 0x016;
340 asm("TMR1L equ 016h");
348 extern volatile TMR1Lbits_t TMR1Lbits @ 0x016;
351 extern volatile unsigned char TMR1H @ 0x017;
353 asm("TMR1H equ 017h");
361 extern volatile TMR1Hbits_t TMR1Hbits @ 0x017;
364 extern volatile unsigned char T1CON @ 0x018;
366 asm("T1CON equ 018h");
386 extern volatile T1CONbits_t T1CONbits @ 0x018;
389 extern volatile unsigned char T1GCON @ 0x019;
391 asm("T1GCON equ 019h");
399 unsigned T1GGO_nDONE :1;
411 extern volatile T1GCONbits_t T1GCONbits @ 0x019;
414 extern volatile unsigned char TMR2 @ 0x01A;
416 asm("TMR2 equ 01Ah");
424 extern volatile TMR2bits_t TMR2bits @ 0x01A;
427 extern volatile unsigned char PR2 @ 0x01B;
437 extern volatile PR2bits_t PR2bits @ 0x01B;
440 extern volatile unsigned char T2CON @ 0x01C;
442 asm("T2CON equ 01Ch");
450 unsigned T2OUTPS0 :1;
451 unsigned T2OUTPS1 :1;
452 unsigned T2OUTPS2 :1;
453 unsigned T2OUTPS3 :1;
461 extern volatile T2CONbits_t T2CONbits @ 0x01C;
464 extern volatile unsigned char CPSCON0 @ 0x01E;
466 asm("CPSCON0 equ 01Eh");
484 extern volatile CPSCON0bits_t CPSCON0bits @ 0x01E;
487 extern volatile unsigned char CPSCON1 @ 0x01F;
489 asm("CPSCON1 equ 01Fh");
501 extern volatile CPSCON1bits_t CPSCON1bits @ 0x01F;
504 extern volatile unsigned char TRISA @ 0x08C;
506 asm("TRISA equ 08Ch");
519 extern volatile TRISAbits_t TRISAbits @ 0x08C;
522 extern volatile unsigned char PIE1 @ 0x091;
524 asm("PIE1 equ 091h");
539 extern volatile PIE1bits_t PIE1bits @ 0x091;
542 extern volatile unsigned char PIE2 @ 0x092;
544 asm("PIE2 equ 092h");
557 extern volatile PIE2bits_t PIE2bits @ 0x092;
560 extern volatile unsigned char OPTION_REG @ 0x095;
562 asm("OPTION_REG equ 095h");
583 extern volatile OPTION_REGbits_t OPTION_REGbits @ 0x095;
586 extern volatile unsigned char PCON @ 0x096;
588 asm("PCON equ 096h");
602 extern volatile PCONbits_t PCONbits @ 0x096;
605 extern volatile unsigned char WDTCON @ 0x097;
607 asm("WDTCON equ 097h");
624 extern volatile WDTCONbits_t WDTCONbits @ 0x097;
627 extern volatile unsigned char OSCTUNE @ 0x098;
629 asm("OSCTUNE equ 098h");
645 extern volatile OSCTUNEbits_t OSCTUNEbits @ 0x098;
648 extern volatile unsigned char OSCCON @ 0x099;
650 asm("OSCCON equ 099h");
670 extern volatile OSCCONbits_t OSCCONbits @ 0x099;
673 extern volatile unsigned char OSCSTAT @ 0x09A;
675 asm("OSCSTAT equ 09Ah");
690 extern volatile OSCSTATbits_t OSCSTATbits @ 0x09A;
693 extern volatile unsigned short ADRES @ 0x09B;
695 asm("ADRES equ 09Bh");
699 extern volatile unsigned char ADRESL @ 0x09B;
701 asm("ADRESL equ 09Bh");
709 extern volatile ADRESLbits_t ADRESLbits @ 0x09B;
712 extern volatile unsigned char ADRESH @ 0x09C;
714 asm("ADRESH equ 09Ch");
722 extern volatile ADRESHbits_t ADRESHbits @ 0x09C;
725 extern volatile unsigned char ADCON0 @ 0x09D;
727 asm("ADCON0 equ 09Dh");
733 unsigned GO_nDONE :1;
754 extern volatile ADCON0bits_t ADCON0bits @ 0x09D;
757 extern volatile unsigned char ADCON1 @ 0x09E;
759 asm("ADCON1 equ 09Eh");
778 extern volatile ADCON1bits_t ADCON1bits @ 0x09E;
781 extern volatile unsigned char LATA @ 0x10C;
783 asm("LATA equ 010Ch");
796 extern volatile LATAbits_t LATAbits @ 0x10C;
799 extern volatile unsigned char CM1CON0 @ 0x111;
801 asm("CM1CON0 equ 0111h");
816 extern volatile CM1CON0bits_t CM1CON0bits @ 0x111;
819 extern volatile unsigned char CM1CON1 @ 0x112;
821 asm("CM1CON1 equ 0112h");
838 extern volatile CM1CON1bits_t CM1CON1bits @ 0x112;
841 extern volatile unsigned char CMOUT @ 0x115;
843 asm("CMOUT equ 0115h");
851 extern volatile CMOUTbits_t CMOUTbits @ 0x115;
854 extern volatile unsigned char BORCON @ 0x116;
856 asm("BORCON equ 0116h");
866 extern volatile BORCONbits_t BORCONbits @ 0x116;
869 extern volatile unsigned char FVRCON @ 0x117;
871 asm("FVRCON equ 0117h");
890 extern volatile FVRCONbits_t FVRCONbits @ 0x117;
893 extern volatile unsigned char DACCON0 @ 0x118;
895 asm("DACCON0 equ 0118h");
913 extern volatile DACCON0bits_t DACCON0bits @ 0x118;
916 extern volatile unsigned char DACCON1 @ 0x119;
918 asm("DACCON1 equ 0119h");
933 extern volatile DACCON1bits_t DACCON1bits @ 0x119;
936 extern volatile unsigned char SRCON0 @ 0x11A;
938 asm("SRCON0 equ 011Ah");
957 extern volatile SRCON0bits_t SRCON0bits @ 0x11A;
960 extern volatile unsigned char SRCON1 @ 0x11B;
962 asm("SRCON1 equ 011Bh");
977 extern volatile SRCON1bits_t SRCON1bits @ 0x11B;
980 extern volatile unsigned char APFCON @ 0x11D;
982 asm("APFCON equ 011Dh");
985 extern volatile unsigned char APFCON0 @ 0x11D;
987 asm("APFCON0 equ 011Dh");
1004 unsigned SDO1SEL :1;
1007 extern volatile APFCONbits_t APFCONbits @ 0x11D;
1012 unsigned CCP1SEL :1;
1014 unsigned TXCKSEL :1;
1019 unsigned RXDTSEL :1;
1024 unsigned SDO1SEL :1;
1027 extern volatile APFCON0bits_t APFCON0bits @ 0x11D;
1030 extern volatile unsigned char ANSELA @ 0x18C;
1032 asm("ANSELA equ 018Ch");
1047 extern volatile ANSELAbits_t ANSELAbits @ 0x18C;
1050 extern volatile unsigned short EEADR @ 0x191;
1052 asm("EEADR equ 0191h");
1056 extern volatile unsigned char EEADRL @ 0x191;
1058 asm("EEADRL equ 0191h");
1066 extern volatile EEADRLbits_t EEADRLbits @ 0x191;
1069 extern volatile unsigned char EEADRH @ 0x192;
1071 asm("EEADRH equ 0192h");
1079 extern volatile EEADRHbits_t EEADRHbits @ 0x192;
1082 extern volatile unsigned short EEDAT @ 0x193;
1084 asm("EEDAT equ 0193h");
1088 extern volatile unsigned char EEDATL @ 0x193;
1090 asm("EEDATL equ 0193h");
1093 extern volatile unsigned char EEDATA @ 0x193;
1095 asm("EEDATA equ 0193h");
1103 extern volatile EEDATLbits_t EEDATLbits @ 0x193;
1111 extern volatile EEDATAbits_t EEDATAbits @ 0x193;
1114 extern volatile unsigned char EEDATH @ 0x194;
1116 asm("EEDATH equ 0194h");
1124 extern volatile EEDATHbits_t EEDATHbits @ 0x194;
1127 extern volatile unsigned char EECON1 @ 0x195;
1129 asm("EECON1 equ 0195h");
1144 extern volatile EECON1bits_t EECON1bits @ 0x195;
1147 extern volatile unsigned char EECON2 @ 0x196;
1149 asm("EECON2 equ 0196h");
1157 extern volatile EECON2bits_t EECON2bits @ 0x196;
1160 extern volatile unsigned char RCREG @ 0x199;
1162 asm("RCREG equ 0199h");
1170 extern volatile RCREGbits_t RCREGbits @ 0x199;
1173 extern volatile unsigned char TXREG @ 0x19A;
1175 asm("TXREG equ 019Ah");
1183 extern volatile TXREGbits_t TXREGbits @ 0x19A;
1186 extern volatile unsigned char SPBRGL @ 0x19B;
1188 asm("SPBRGL equ 019Bh");
1191 extern volatile unsigned char SPBRG @ 0x19B;
1193 asm("SPBRG equ 019Bh");
1201 extern volatile SPBRGLbits_t SPBRGLbits @ 0x19B;
1209 extern volatile SPBRGbits_t SPBRGbits @ 0x19B;
1212 extern volatile unsigned char SPBRGH @ 0x19C;
1214 asm("SPBRGH equ 019Ch");
1222 extern volatile SPBRGHbits_t SPBRGHbits @ 0x19C;
1225 extern volatile unsigned char RCSTA @ 0x19D;
1227 asm("RCSTA equ 019Dh");
1242 extern volatile RCSTAbits_t RCSTAbits @ 0x19D;
1245 extern volatile unsigned char TXSTA @ 0x19E;
1247 asm("TXSTA equ 019Eh");
1262 extern volatile TXSTAbits_t TXSTAbits @ 0x19E;
1265 extern volatile unsigned char BAUDCON @ 0x19F;
1267 asm("BAUDCON equ 019Fh");
1282 extern volatile BAUDCONbits_t BAUDCONbits @ 0x19F;
1285 extern volatile unsigned char WPUA @ 0x20C;
1287 asm("WPUA equ 020Ch");
1303 extern volatile WPUAbits_t WPUAbits @ 0x20C;
1306 extern volatile unsigned char SSP1BUF @ 0x211;
1308 asm("SSP1BUF equ 0211h");
1311 extern volatile unsigned char SSPBUF @ 0x211;
1313 asm("SSPBUF equ 0211h");
1321 extern volatile SSP1BUFbits_t SSP1BUFbits @ 0x211;
1329 extern volatile SSPBUFbits_t SSPBUFbits @ 0x211;
1332 extern volatile unsigned char SSP1ADD @ 0x212;
1334 asm("SSP1ADD equ 0212h");
1337 extern volatile unsigned char SSPADD @ 0x212;
1339 asm("SSPADD equ 0212h");
1347 extern volatile SSP1ADDbits_t SSP1ADDbits @ 0x212;
1355 extern volatile SSPADDbits_t SSPADDbits @ 0x212;
1358 extern volatile unsigned char SSP1MSK @ 0x213;
1360 asm("SSP1MSK equ 0213h");
1363 extern volatile unsigned char SSPMSK @ 0x213;
1365 asm("SSPMSK equ 0213h");
1373 extern volatile SSP1MSKbits_t SSP1MSKbits @ 0x213;
1381 extern volatile SSPMSKbits_t SSPMSKbits @ 0x213;
1384 extern volatile unsigned char SSP1STAT @ 0x214;
1386 asm("SSP1STAT equ 0214h");
1389 extern volatile unsigned char SSPSTAT @ 0x214;
1391 asm("SSPSTAT equ 0214h");
1406 extern volatile SSP1STATbits_t SSP1STATbits @ 0x214;
1421 extern volatile SSPSTATbits_t SSPSTATbits @ 0x214;
1424 extern volatile unsigned char SSP1CON1 @ 0x215;
1426 asm("SSP1CON1 equ 0215h");
1429 extern volatile unsigned char SSPCON1 @ 0x215;
1431 asm("SSPCON1 equ 0215h");
1433 extern volatile unsigned char SSPCON @ 0x215;
1435 asm("SSPCON equ 0215h");
1453 extern volatile SSP1CON1bits_t SSP1CON1bits @ 0x215;
1471 extern volatile SSPCON1bits_t SSPCON1bits @ 0x215;
1489 extern volatile SSPCONbits_t SSPCONbits @ 0x215;
1492 extern volatile unsigned char SSP1CON2 @ 0x216;
1494 asm("SSP1CON2 equ 0216h");
1497 extern volatile unsigned char SSPCON2 @ 0x216;
1499 asm("SSPCON2 equ 0216h");
1510 unsigned ACKSTAT :1;
1514 extern volatile SSP1CON2bits_t SSP1CON2bits @ 0x216;
1525 unsigned ACKSTAT :1;
1529 extern volatile SSPCON2bits_t SSPCON2bits @ 0x216;
1532 extern volatile unsigned char SSP1CON3 @ 0x217;
1534 asm("SSP1CON3 equ 0217h");
1537 extern volatile unsigned char SSPCON3 @ 0x217;
1539 asm("SSPCON3 equ 0217h");
1554 extern volatile SSP1CON3bits_t SSP1CON3bits @ 0x217;
1569 extern volatile SSPCON3bits_t SSPCON3bits @ 0x217;
1572 extern volatile unsigned char CCPR1L @ 0x291;
1574 asm("CCPR1L equ 0291h");
1582 extern volatile CCPR1Lbits_t CCPR1Lbits @ 0x291;
1585 extern volatile unsigned char CCPR1H @ 0x292;
1587 asm("CCPR1H equ 0292h");
1595 extern volatile CCPR1Hbits_t CCPR1Hbits @ 0x292;
1598 extern volatile unsigned char CCP1CON @ 0x293;
1600 asm("CCP1CON equ 0293h");
1620 extern volatile CCP1CONbits_t CCP1CONbits @ 0x293;
1623 extern volatile unsigned char PWM1CON @ 0x294;
1625 asm("PWM1CON equ 0294h");
1643 extern volatile PWM1CONbits_t PWM1CONbits @ 0x294;
1646 extern volatile unsigned char CCP1AS @ 0x295;
1648 asm("CCP1AS equ 0295h");
1651 extern volatile unsigned char ECCP1AS @ 0x295;
1653 asm("ECCP1AS equ 0295h");
1658 unsigned PSS1BD0 :1;
1659 unsigned PSS1BD1 :1;
1660 unsigned PSS1AC0 :1;
1661 unsigned PSS1AC1 :1;
1662 unsigned CCP1AS0 :1;
1663 unsigned CCP1AS1 :1;
1664 unsigned CCP1AS2 :1;
1665 unsigned CCP1ASE :1;
1673 extern volatile CCP1ASbits_t CCP1ASbits @ 0x295;
1678 unsigned PSS1BD0 :1;
1679 unsigned PSS1BD1 :1;
1680 unsigned PSS1AC0 :1;
1681 unsigned PSS1AC1 :1;
1682 unsigned CCP1AS0 :1;
1683 unsigned CCP1AS1 :1;
1684 unsigned CCP1AS2 :1;
1685 unsigned CCP1ASE :1;
1693 extern volatile ECCP1ASbits_t ECCP1ASbits @ 0x295;
1696 extern volatile unsigned char PSTR1CON @ 0x296;
1698 asm("PSTR1CON equ 0296h");
1707 unsigned STR1SYNC :1;
1710 extern volatile PSTR1CONbits_t PSTR1CONbits @ 0x296;
1713 extern volatile unsigned char IOCAP @ 0x391;
1715 asm("IOCAP equ 0391h");
1731 extern volatile IOCAPbits_t IOCAPbits @ 0x391;
1734 extern volatile unsigned char IOCAN @ 0x392;
1736 asm("IOCAN equ 0392h");
1752 extern volatile IOCANbits_t IOCANbits @ 0x392;
1755 extern volatile unsigned char IOCAF @ 0x393;
1757 asm("IOCAF equ 0393h");
1773 extern volatile IOCAFbits_t IOCAFbits @ 0x393;
1776 extern volatile unsigned char CLKRCON @ 0x39A;
1778 asm("CLKRCON equ 039Ah");
1783 unsigned CLKRDIV0 :1;
1784 unsigned CLKRDIV1 :1;
1785 unsigned CLKRDIV2 :1;
1786 unsigned CLKRDC0 :1;
1787 unsigned CLKRDC1 :1;
1788 unsigned CLKRSLR :1;
1793 unsigned CLKRDIV :3;
1797 extern volatile CLKRCONbits_t CLKRCONbits @ 0x39A;
1800 extern volatile unsigned char MDCON @ 0x39C;
1802 asm("MDCON equ 039Ch");
1816 extern volatile MDCONbits_t MDCONbits @ 0x39C;
1819 extern volatile unsigned char MDSRC @ 0x39D;
1821 asm("MDSRC equ 039Dh");
1831 unsigned MDMSODIS :1;
1837 extern volatile MDSRCbits_t MDSRCbits @ 0x39D;
1840 extern volatile unsigned char MDCARL @ 0x39E;
1842 asm("MDCARL equ 039Eh");
1852 unsigned MDCLSYNC :1;
1853 unsigned MDCLPOL :1;
1854 unsigned MDCLODIS :1;
1860 extern volatile MDCARLbits_t MDCARLbits @ 0x39E;
1863 extern volatile unsigned char MDCARH @ 0x39F;
1865 asm("MDCARH equ 039Fh");
1875 unsigned MDCHSYNC :1;
1876 unsigned MDCHPOL :1;
1877 unsigned MDCHODIS :1;
1883 extern volatile MDCARHbits_t MDCARHbits @ 0x39F;
1886 extern volatile unsigned char STATUS_SHAD @ 0xFE4;
1888 asm("STATUS_SHAD equ 0FE4h");
1894 unsigned DC_SHAD :1;
1897 } STATUS_SHADbits_t;
1898 extern volatile STATUS_SHADbits_t STATUS_SHADbits @ 0xFE4;
1901 extern volatile unsigned char WREG_SHAD @ 0xFE5;
1903 asm("WREG_SHAD equ 0FE5h");
1908 unsigned WREG_SHAD :8;
1911 extern volatile WREG_SHADbits_t WREG_SHADbits @ 0xFE5;
1914 extern volatile unsigned char BSR_SHAD @ 0xFE6;
1916 asm("BSR_SHAD equ 0FE6h");
1921 unsigned BSR_SHAD :5;
1924 extern volatile BSR_SHADbits_t BSR_SHADbits @ 0xFE6;
1927 extern volatile unsigned char PCLATH_SHAD @ 0xFE7;
1929 asm("PCLATH_SHAD equ 0FE7h");
1934 unsigned PCLATH_SHAD :7;
1936 } PCLATH_SHADbits_t;
1937 extern volatile PCLATH_SHADbits_t PCLATH_SHADbits @ 0xFE7;
1940 extern volatile unsigned char FSR0L_SHAD @ 0xFE8;
1942 asm("FSR0L_SHAD equ 0FE8h");
1947 unsigned FSR0L_SHAD :8;
1950 extern volatile FSR0L_SHADbits_t FSR0L_SHADbits @ 0xFE8;
1953 extern volatile unsigned char FSR0H_SHAD @ 0xFE9;
1955 asm("FSR0H_SHAD equ 0FE9h");
1960 unsigned FSR0H_SHAD :8;
1963 extern volatile FSR0H_SHADbits_t FSR0H_SHADbits @ 0xFE9;
1966 extern volatile unsigned char FSR1L_SHAD @ 0xFEA;
1968 asm("FSR1L_SHAD equ 0FEAh");
1973 unsigned FSR1L_SHAD :8;
1976 extern volatile FSR1L_SHADbits_t FSR1L_SHADbits @ 0xFEA;
1979 extern volatile unsigned char FSR1H_SHAD @ 0xFEB;
1981 asm("FSR1H_SHAD equ 0FEBh");
1986 unsigned FSR1H_SHAD :8;
1989 extern volatile FSR1H_SHADbits_t FSR1H_SHADbits @ 0xFEB;
1992 extern volatile unsigned char STKPTR @ 0xFED;
1994 asm("STKPTR equ 0FEDh");
2002 extern volatile STKPTRbits_t STKPTRbits @ 0xFED;
2005 extern volatile unsigned char TOSL @ 0xFEE;
2007 asm("TOSL equ 0FEEh");
2015 extern volatile TOSLbits_t TOSLbits @ 0xFEE;
2018 extern volatile unsigned char TOSH @ 0xFEF;
2020 asm("TOSH equ 0FEFh");
2028 extern volatile TOSHbits_t TOSHbits @ 0xFEF;
2031 extern volatile __bit ABDEN @ (((unsigned) &BAUDCON)*8) + 0;
2033 extern volatile __bit ABDOVF @ (((unsigned) &BAUDCON)*8) + 7;
2035 extern volatile __bit ACKDT @ (((unsigned) &SSP1CON2)*8) + 5;
2037 extern volatile __bit ACKEN @ (((unsigned) &SSP1CON2)*8) + 4;
2039 extern volatile __bit ACKSTAT @ (((unsigned) &SSP1CON2)*8) + 6;
2041 extern volatile __bit ACKTIM @ (((unsigned) &SSP1CON3)*8) + 7;
2043 extern volatile __bit ADCS0 @ (((unsigned) &ADCON1)*8) + 4;
2045 extern volatile __bit ADCS1 @ (((unsigned) &ADCON1)*8) + 5;
2047 extern volatile __bit ADCS2 @ (((unsigned) &ADCON1)*8) + 6;
2049 extern volatile __bit ADDEN @ (((unsigned) &RCSTA)*8) + 3;
2051 extern volatile __bit ADFM @ (((unsigned) &ADCON1)*8) + 7;
2053 extern volatile __bit ADFVR0 @ (((unsigned) &FVRCON)*8) + 0;
2055 extern volatile __bit ADFVR1 @ (((unsigned) &FVRCON)*8) + 1;
2057 extern volatile __bit ADGO @ (((unsigned) &ADCON0)*8) + 1;
2059 extern volatile __bit ADIE @ (((unsigned) &PIE1)*8) + 6;
2061 extern volatile __bit ADIF @ (((unsigned) &PIR1)*8) + 6;
2063 extern volatile __bit ADON @ (((unsigned) &ADCON0)*8) + 0;
2065 extern volatile __bit ADPREF0 @ (((unsigned) &ADCON1)*8) + 0;
2067 extern volatile __bit ADPREF1 @ (((unsigned) &ADCON1)*8) + 1;
2069 extern volatile __bit AHEN @ (((unsigned) &SSP1CON3)*8) + 1;
2071 extern volatile __bit AN0 @ (((unsigned) &PORTA)*8) + 0;
2073 extern volatile __bit AN1 @ (((unsigned) &PORTA)*8) + 1;
2075 extern volatile __bit AN2 @ (((unsigned) &PORTA)*8) + 2;
2077 extern volatile __bit AN3 @ (((unsigned) &PORTA)*8) + 4;
2079 extern volatile __bit ANSA0 @ (((unsigned) &ANSELA)*8) + 0;
2081 extern volatile __bit ANSA1 @ (((unsigned) &ANSELA)*8) + 1;
2083 extern volatile __bit ANSA2 @ (((unsigned) &ANSELA)*8) + 2;
2085 extern volatile __bit ANSA4 @ (((unsigned) &ANSELA)*8) + 4;
2087 extern volatile __bit BCL1IE @ (((unsigned) &PIE2)*8) + 3;
2089 extern volatile __bit BCL1IF @ (((unsigned) &PIR2)*8) + 3;
2091 extern volatile __bit BF @ (((unsigned) &SSP1STAT)*8) + 0;
2093 extern volatile __bit BOEN @ (((unsigned) &SSP1CON3)*8) + 4;
2095 extern volatile __bit BORRDY @ (((unsigned) &BORCON)*8) + 0;
2097 extern volatile __bit BRG16 @ (((unsigned) &BAUDCON)*8) + 3;
2099 extern volatile __bit BRGH @ (((unsigned) &TXSTA)*8) + 2;
2101 extern volatile __bit BSR0 @ (((unsigned) &BSR)*8) + 0;
2103 extern volatile __bit BSR1 @ (((unsigned) &BSR)*8) + 1;
2105 extern volatile __bit BSR2 @ (((unsigned) &BSR)*8) + 2;
2107 extern volatile __bit BSR3 @ (((unsigned) &BSR)*8) + 3;
2109 extern volatile __bit BSR4 @ (((unsigned) &BSR)*8) + 4;
2111 extern volatile __bit C1HYS @ (((unsigned) &CM1CON0)*8) + 1;
2113 extern volatile __bit C1IE @ (((unsigned) &PIE2)*8) + 5;
2115 extern volatile __bit C1IF @ (((unsigned) &PIR2)*8) + 5;
2117 extern volatile __bit C1IN0N @ (((unsigned) &PORTA)*8) + 1;
2119 extern volatile __bit C1IN1N @ (((unsigned) &PORTA)*8) + 4;
2121 extern volatile __bit C1INP @ (((unsigned) &PORTA)*8) + 0;
2123 extern volatile __bit C1INTN @ (((unsigned) &CM1CON1)*8) + 6;
2125 extern volatile __bit C1INTP @ (((unsigned) &CM1CON1)*8) + 7;
2127 extern volatile __bit C1NCH0 @ (((unsigned) &CM1CON1)*8) + 0;
2129 extern volatile __bit C1OE @ (((unsigned) &CM1CON0)*8) + 5;
2131 extern volatile __bit C1ON @ (((unsigned) &CM1CON0)*8) + 7;
2133 extern volatile __bit C1PCH0 @ (((unsigned) &CM1CON1)*8) + 4;
2135 extern volatile __bit C1PCH1 @ (((unsigned) &CM1CON1)*8) + 5;
2137 extern volatile __bit C1POL @ (((unsigned) &CM1CON0)*8) + 4;
2139 extern volatile __bit C1SP @ (((unsigned) &CM1CON0)*8) + 2;
2141 extern volatile __bit C1SYNC @ (((unsigned) &CM1CON0)*8) + 0;
2143 extern volatile __bit CARRY @ (((unsigned) &STATUS)*8) + 0;
2145 extern volatile __bit CCP1AS0 @ (((unsigned) &CCP1AS)*8) + 4;
2147 extern volatile __bit CCP1AS1 @ (((unsigned) &CCP1AS)*8) + 5;
2149 extern volatile __bit CCP1AS2 @ (((unsigned) &CCP1AS)*8) + 6;
2151 extern volatile __bit CCP1ASE @ (((unsigned) &CCP1AS)*8) + 7;
2153 extern volatile __bit CCP1IE @ (((unsigned) &PIE1)*8) + 2;
2155 extern volatile __bit CCP1IF @ (((unsigned) &PIR1)*8) + 2;
2157 extern volatile __bit CCP1M0 @ (((unsigned) &CCP1CON)*8) + 0;
2159 extern volatile __bit CCP1M1 @ (((unsigned) &CCP1CON)*8) + 1;
2161 extern volatile __bit CCP1M2 @ (((unsigned) &CCP1CON)*8) + 2;
2163 extern volatile __bit CCP1M3 @ (((unsigned) &CCP1CON)*8) + 3;
2165 extern volatile __bit CCP1SEL @ (((unsigned) &APFCON)*8) + 0;
2167 extern volatile __bit CDAFVR0 @ (((unsigned) &FVRCON)*8) + 2;
2169 extern volatile __bit CDAFVR1 @ (((unsigned) &FVRCON)*8) + 3;
2171 extern volatile __bit CFGS @ (((unsigned) &EECON1)*8) + 6;
2173 extern volatile __bit CHS0 @ (((unsigned) &ADCON0)*8) + 2;
2175 extern volatile __bit CHS1 @ (((unsigned) &ADCON0)*8) + 3;
2177 extern volatile __bit CHS2 @ (((unsigned) &ADCON0)*8) + 4;
2179 extern volatile __bit CHS3 @ (((unsigned) &ADCON0)*8) + 5;
2181 extern volatile __bit CHS4 @ (((unsigned) &ADCON0)*8) + 6;
2183 extern volatile __bit CKE @ (((unsigned) &SSP1STAT)*8) + 6;
2185 extern volatile __bit CKP @ (((unsigned) &SSP1CON1)*8) + 4;
2187 extern volatile __bit CLKIN @ (((unsigned) &PORTA)*8) + 5;
2189 extern volatile __bit CLKOUT @ (((unsigned) &PORTA)*8) + 4;
2191 extern volatile __bit CLKR @ (((unsigned) &PORTA)*8) + 4;
2193 extern volatile __bit CLKRDC0 @ (((unsigned) &CLKRCON)*8) + 3;
2195 extern volatile __bit CLKRDC1 @ (((unsigned) &CLKRCON)*8) + 4;
2197 extern volatile __bit CLKRDIV0 @ (((unsigned) &CLKRCON)*8) + 0;
2199 extern volatile __bit CLKRDIV1 @ (((unsigned) &CLKRCON)*8) + 1;
2201 extern volatile __bit CLKRDIV2 @ (((unsigned) &CLKRCON)*8) + 2;
2203 extern volatile __bit CLKREN @ (((unsigned) &CLKRCON)*8) + 7;
2205 extern volatile __bit CLKROE @ (((unsigned) &CLKRCON)*8) + 6;
2207 extern volatile __bit CLKRSLR @ (((unsigned) &CLKRCON)*8) + 5;
2209 extern volatile __bit CPS0 @ (((unsigned) &PORTA)*8) + 0;
2211 extern volatile __bit CPS1 @ (((unsigned) &PORTA)*8) + 1;
2213 extern volatile __bit CPS2 @ (((unsigned) &PORTA)*8) + 2;
2215 extern volatile __bit CPS3 @ (((unsigned) &PORTA)*8) + 4;
2217 extern volatile __bit CPSCH0 @ (((unsigned) &CPSCON1)*8) + 0;
2219 extern volatile __bit CPSCH1 @ (((unsigned) &CPSCON1)*8) + 1;
2221 extern volatile __bit CPSON @ (((unsigned) &CPSCON0)*8) + 7;
2223 extern volatile __bit CPSOUT @ (((unsigned) &CPSCON0)*8) + 1;
2225 extern volatile __bit CPSRM @ (((unsigned) &CPSCON0)*8) + 6;
2227 extern volatile __bit CPSRNG0 @ (((unsigned) &CPSCON0)*8) + 2;
2229 extern volatile __bit CPSRNG1 @ (((unsigned) &CPSCON0)*8) + 3;
2231 extern volatile __bit CREN @ (((unsigned) &RCSTA)*8) + 4;
2233 extern volatile __bit CSRC @ (((unsigned) &TXSTA)*8) + 7;
2235 extern volatile __bit C_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 0;
2237 extern volatile __bit DACEN @ (((unsigned) &DACCON0)*8) + 7;
2239 extern volatile __bit DACLPS @ (((unsigned) &DACCON0)*8) + 6;
2241 extern volatile __bit DACOE @ (((unsigned) &DACCON0)*8) + 5;
2243 extern volatile __bit DACOUT @ (((unsigned) &PORTA)*8) + 0;
2245 extern volatile __bit DACPSS0 @ (((unsigned) &DACCON0)*8) + 2;
2247 extern volatile __bit DACPSS1 @ (((unsigned) &DACCON0)*8) + 3;
2249 extern volatile __bit DACR0 @ (((unsigned) &DACCON1)*8) + 0;
2251 extern volatile __bit DACR1 @ (((unsigned) &DACCON1)*8) + 1;
2253 extern volatile __bit DACR2 @ (((unsigned) &DACCON1)*8) + 2;
2255 extern volatile __bit DACR3 @ (((unsigned) &DACCON1)*8) + 3;
2257 extern volatile __bit DACR4 @ (((unsigned) &DACCON1)*8) + 4;
2259 extern volatile __bit DC @ (((unsigned) &STATUS)*8) + 1;
2261 extern volatile __bit DC1B0 @ (((unsigned) &CCP1CON)*8) + 4;
2263 extern volatile __bit DC1B1 @ (((unsigned) &CCP1CON)*8) + 5;
2265 extern volatile __bit DC_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 1;
2267 extern volatile __bit DHEN @ (((unsigned) &SSP1CON3)*8) + 0;
2269 extern volatile __bit D_nA @ (((unsigned) &SSP1STAT)*8) + 5;
2271 extern volatile __bit EEIE @ (((unsigned) &PIE2)*8) + 4;
2273 extern volatile __bit EEIF @ (((unsigned) &PIR2)*8) + 4;
2275 extern volatile __bit EEPGD @ (((unsigned) &EECON1)*8) + 7;
2277 extern volatile __bit FERR @ (((unsigned) &RCSTA)*8) + 2;
2279 extern volatile __bit FLT0 @ (((unsigned) &PORTA)*8) + 2;
2281 extern volatile __bit FREE @ (((unsigned) &EECON1)*8) + 4;
2283 extern volatile __bit FVREN @ (((unsigned) &FVRCON)*8) + 7;
2285 extern volatile __bit FVRRDY @ (((unsigned) &FVRCON)*8) + 6;
2287 extern volatile __bit GCEN @ (((unsigned) &SSP1CON2)*8) + 7;
2289 extern volatile __bit GIE @ (((unsigned) &INTCON)*8) + 7;
2291 extern volatile __bit GO @ (((unsigned) &ADCON0)*8) + 1;
2293 extern volatile __bit GO_nDONE @ (((unsigned) &ADCON0)*8) + 1;
2295 extern volatile __bit HFIOFL @ (((unsigned) &OSCSTAT)*8) + 3;
2297 extern volatile __bit HFIOFR @ (((unsigned) &OSCSTAT)*8) + 4;
2299 extern volatile __bit HFIOFS @ (((unsigned) &OSCSTAT)*8) + 0;
2301 extern volatile __bit INTE @ (((unsigned) &INTCON)*8) + 4;
2303 extern volatile __bit INTEDG @ (((unsigned) &OPTION_REG)*8) + 6;
2305 extern volatile __bit INTF @ (((unsigned) &INTCON)*8) + 1;
2307 extern volatile __bit IOCAF0 @ (((unsigned) &IOCAF)*8) + 0;
2309 extern volatile __bit IOCAF1 @ (((unsigned) &IOCAF)*8) + 1;
2311 extern volatile __bit IOCAF2 @ (((unsigned) &IOCAF)*8) + 2;
2313 extern volatile __bit IOCAF3 @ (((unsigned) &IOCAF)*8) + 3;
2315 extern volatile __bit IOCAF4 @ (((unsigned) &IOCAF)*8) + 4;
2317 extern volatile __bit IOCAF5 @ (((unsigned) &IOCAF)*8) + 5;
2319 extern volatile __bit IOCAN0 @ (((unsigned) &IOCAN)*8) + 0;
2321 extern volatile __bit IOCAN1 @ (((unsigned) &IOCAN)*8) + 1;
2323 extern volatile __bit IOCAN2 @ (((unsigned) &IOCAN)*8) + 2;
2325 extern volatile __bit IOCAN3 @ (((unsigned) &IOCAN)*8) + 3;
2327 extern volatile __bit IOCAN4 @ (((unsigned) &IOCAN)*8) + 4;
2329 extern volatile __bit IOCAN5 @ (((unsigned) &IOCAN)*8) + 5;
2331 extern volatile __bit IOCAP0 @ (((unsigned) &IOCAP)*8) + 0;
2333 extern volatile __bit IOCAP1 @ (((unsigned) &IOCAP)*8) + 1;
2335 extern volatile __bit IOCAP2 @ (((unsigned) &IOCAP)*8) + 2;
2337 extern volatile __bit IOCAP3 @ (((unsigned) &IOCAP)*8) + 3;
2339 extern volatile __bit IOCAP4 @ (((unsigned) &IOCAP)*8) + 4;
2341 extern volatile __bit IOCAP5 @ (((unsigned) &IOCAP)*8) + 5;
2343 extern volatile __bit IOCIE @ (((unsigned) &INTCON)*8) + 3;
2345 extern volatile __bit IOCIF @ (((unsigned) &INTCON)*8) + 0;
2347 extern volatile __bit IRCF0 @ (((unsigned) &OSCCON)*8) + 3;
2349 extern volatile __bit IRCF1 @ (((unsigned) &OSCCON)*8) + 4;
2351 extern volatile __bit IRCF2 @ (((unsigned) &OSCCON)*8) + 5;
2353 extern volatile __bit IRCF3 @ (((unsigned) &OSCCON)*8) + 6;
2355 extern volatile __bit LATA0 @ (((unsigned) &LATA)*8) + 0;
2357 extern volatile __bit LATA1 @ (((unsigned) &LATA)*8) + 1;
2359 extern volatile __bit LATA2 @ (((unsigned) &LATA)*8) + 2;
2361 extern volatile __bit LATA4 @ (((unsigned) &LATA)*8) + 4;
2363 extern volatile __bit LATA5 @ (((unsigned) &LATA)*8) + 5;
2365 extern volatile __bit LFIOFR @ (((unsigned) &OSCSTAT)*8) + 1;
2367 extern volatile __bit LWLO @ (((unsigned) &EECON1)*8) + 5;
2369 extern volatile __bit MC1OUT @ (((unsigned) &CMOUT)*8) + 0;
2371 extern volatile __bit MDBIT @ (((unsigned) &MDCON)*8) + 0;
2373 extern volatile __bit MDCH0 @ (((unsigned) &MDCARH)*8) + 0;
2375 extern volatile __bit MDCH1 @ (((unsigned) &MDCARH)*8) + 1;
2377 extern volatile __bit MDCH2 @ (((unsigned) &MDCARH)*8) + 2;
2379 extern volatile __bit MDCH3 @ (((unsigned) &MDCARH)*8) + 3;
2381 extern volatile __bit MDCHODIS @ (((unsigned) &MDCARH)*8) + 7;
2383 extern volatile __bit MDCHPOL @ (((unsigned) &MDCARH)*8) + 6;
2385 extern volatile __bit MDCHSYNC @ (((unsigned) &MDCARH)*8) + 5;
2387 extern volatile __bit MDCIN1 @ (((unsigned) &PORTA)*8) + 2;
2389 extern volatile __bit MDCIN2 @ (((unsigned) &PORTA)*8) + 4;
2391 extern volatile __bit MDCL0 @ (((unsigned) &MDCARL)*8) + 0;
2393 extern volatile __bit MDCL1 @ (((unsigned) &MDCARL)*8) + 1;
2395 extern volatile __bit MDCL2 @ (((unsigned) &MDCARL)*8) + 2;
2397 extern volatile __bit MDCL3 @ (((unsigned) &MDCARL)*8) + 3;
2399 extern volatile __bit MDCLODIS @ (((unsigned) &MDCARL)*8) + 7;
2401 extern volatile __bit MDCLPOL @ (((unsigned) &MDCARL)*8) + 6;
2403 extern volatile __bit MDCLSYNC @ (((unsigned) &MDCARL)*8) + 5;
2405 extern volatile __bit MDEN @ (((unsigned) &MDCON)*8) + 7;
2407 extern volatile __bit MDMIN @ (((unsigned) &PORTA)*8) + 1;
2409 extern volatile __bit MDMS0 @ (((unsigned) &MDSRC)*8) + 0;
2411 extern volatile __bit MDMS1 @ (((unsigned) &MDSRC)*8) + 1;
2413 extern volatile __bit MDMS2 @ (((unsigned) &MDSRC)*8) + 2;
2415 extern volatile __bit MDMS3 @ (((unsigned) &MDSRC)*8) + 3;
2417 extern volatile __bit MDMSODIS @ (((unsigned) &MDSRC)*8) + 7;
2419 extern volatile __bit MDOE @ (((unsigned) &MDCON)*8) + 6;
2421 extern volatile __bit MDOPOL @ (((unsigned) &MDCON)*8) + 4;
2423 extern volatile __bit MDSLR @ (((unsigned) &MDCON)*8) + 5;
2425 extern volatile __bit MFIOFR @ (((unsigned) &OSCSTAT)*8) + 2;
2427 extern volatile __bit OERR @ (((unsigned) &RCSTA)*8) + 1;
2429 extern volatile __bit OSC1 @ (((unsigned) &PORTA)*8) + 5;
2431 extern volatile __bit OSC2 @ (((unsigned) &PORTA)*8) + 4;
2433 extern volatile __bit OSFIE @ (((unsigned) &PIE2)*8) + 7;
2435 extern volatile __bit OSFIF @ (((unsigned) &PIR2)*8) + 7;
2437 extern volatile __bit OSTS @ (((unsigned) &OSCSTAT)*8) + 5;
2439 extern volatile __bit P1BSEL @ (((unsigned) &APFCON)*8) + 1;
2441 extern volatile __bit P1DC0 @ (((unsigned) &PWM1CON)*8) + 0;
2443 extern volatile __bit P1DC1 @ (((unsigned) &PWM1CON)*8) + 1;
2445 extern volatile __bit P1DC2 @ (((unsigned) &PWM1CON)*8) + 2;
2447 extern volatile __bit P1DC3 @ (((unsigned) &PWM1CON)*8) + 3;
2449 extern volatile __bit P1DC4 @ (((unsigned) &PWM1CON)*8) + 4;
2451 extern volatile __bit P1DC5 @ (((unsigned) &PWM1CON)*8) + 5;
2453 extern volatile __bit P1DC6 @ (((unsigned) &PWM1CON)*8) + 6;
2455 extern volatile __bit P1M0 @ (((unsigned) &CCP1CON)*8) + 6;
2457 extern volatile __bit P1M1 @ (((unsigned) &CCP1CON)*8) + 7;
2459 extern volatile __bit P1RSEN @ (((unsigned) &PWM1CON)*8) + 7;
2461 extern volatile __bit PCIE @ (((unsigned) &SSP1CON3)*8) + 6;
2463 extern volatile __bit PEIE @ (((unsigned) &INTCON)*8) + 6;
2465 extern volatile __bit PEN @ (((unsigned) &SSP1CON2)*8) + 2;
2467 extern volatile __bit PLLR @ (((unsigned) &OSCSTAT)*8) + 6;
2469 extern volatile __bit PS0 @ (((unsigned) &OPTION_REG)*8) + 0;
2471 extern volatile __bit PS1 @ (((unsigned) &OPTION_REG)*8) + 1;
2473 extern volatile __bit PS2 @ (((unsigned) &OPTION_REG)*8) + 2;
2475 extern volatile __bit PSA @ (((unsigned) &OPTION_REG)*8) + 3;
2477 extern volatile __bit PSS1AC0 @ (((unsigned) &CCP1AS)*8) + 2;
2479 extern volatile __bit PSS1AC1 @ (((unsigned) &CCP1AS)*8) + 3;
2481 extern volatile __bit PSS1BD0 @ (((unsigned) &CCP1AS)*8) + 0;
2483 extern volatile __bit PSS1BD1 @ (((unsigned) &CCP1AS)*8) + 1;
2485 extern volatile __bit RA0 @ (((unsigned) &PORTA)*8) + 0;
2487 extern volatile __bit RA1 @ (((unsigned) &PORTA)*8) + 1;
2489 extern volatile __bit RA2 @ (((unsigned) &PORTA)*8) + 2;
2491 extern volatile __bit RA3 @ (((unsigned) &PORTA)*8) + 3;
2493 extern volatile __bit RA4 @ (((unsigned) &PORTA)*8) + 4;
2495 extern volatile __bit RA5 @ (((unsigned) &PORTA)*8) + 5;
2497 extern volatile __bit RCEN @ (((unsigned) &SSP1CON2)*8) + 3;
2499 extern volatile __bit RCIDL @ (((unsigned) &BAUDCON)*8) + 6;
2501 extern volatile __bit RCIE @ (((unsigned) &PIE1)*8) + 5;
2503 extern volatile __bit RCIF @ (((unsigned) &PIR1)*8) + 5;
2505 extern volatile __bit RD @ (((unsigned) &EECON1)*8) + 0;
2507 extern volatile __bit RSEN @ (((unsigned) &SSP1CON2)*8) + 1;
2509 extern volatile __bit RX9 @ (((unsigned) &RCSTA)*8) + 6;
2511 extern volatile __bit RX9D @ (((unsigned) &RCSTA)*8) + 0;
2513 extern volatile __bit RXDTSEL @ (((unsigned) &APFCON)*8) + 7;
2515 extern volatile __bit R_nW @ (((unsigned) &SSP1STAT)*8) + 2;
2517 extern volatile __bit SBCDE @ (((unsigned) &SSP1CON3)*8) + 2;
2519 extern volatile __bit SBOREN @ (((unsigned) &BORCON)*8) + 7;
2521 extern volatile __bit SCIE @ (((unsigned) &SSP1CON3)*8) + 5;
2523 extern volatile __bit SCK @ (((unsigned) &PORTA)*8) + 1;
2525 extern volatile __bit SCKP @ (((unsigned) &BAUDCON)*8) + 4;
2527 extern volatile __bit SCL @ (((unsigned) &PORTA)*8) + 1;
2529 extern volatile __bit SCS0 @ (((unsigned) &OSCCON)*8) + 0;
2531 extern volatile __bit SCS1 @ (((unsigned) &OSCCON)*8) + 1;
2533 extern volatile __bit SDA @ (((unsigned) &PORTA)*8) + 2;
2535 extern volatile __bit SDAHT @ (((unsigned) &SSP1CON3)*8) + 3;
2537 extern volatile __bit SDI @ (((unsigned) &PORTA)*8) + 2;
2539 extern volatile __bit SDO1SEL @ (((unsigned) &APFCON)*8) + 6;
2541 extern volatile __bit SDOSEL @ (((unsigned) &APFCON)*8) + 6;
2543 extern volatile __bit SEN @ (((unsigned) &SSP1CON2)*8) + 0;
2545 extern volatile __bit SENDB @ (((unsigned) &TXSTA)*8) + 3;
2547 extern volatile __bit SMP @ (((unsigned) &SSP1STAT)*8) + 7;
2549 extern volatile __bit SPEN @ (((unsigned) &RCSTA)*8) + 7;
2551 extern volatile __bit SPLLEN @ (((unsigned) &OSCCON)*8) + 7;
2553 extern volatile __bit SRCLK0 @ (((unsigned) &SRCON0)*8) + 4;
2555 extern volatile __bit SRCLK1 @ (((unsigned) &SRCON0)*8) + 5;
2557 extern volatile __bit SRCLK2 @ (((unsigned) &SRCON0)*8) + 6;
2559 extern volatile __bit SREN @ (((unsigned) &RCSTA)*8) + 5;
2561 extern volatile __bit SRI @ (((unsigned) &PORTA)*8) + 1;
2563 extern volatile __bit SRLEN @ (((unsigned) &SRCON0)*8) + 7;
2565 extern volatile __bit SRNQ @ (((unsigned) &PORTA)*8) + 5;
2567 extern volatile __bit SRNQEN @ (((unsigned) &SRCON0)*8) + 2;
2569 extern volatile __bit SRPR @ (((unsigned) &SRCON0)*8) + 0;
2571 extern volatile __bit SRPS @ (((unsigned) &SRCON0)*8) + 1;
2573 extern volatile __bit SRQ @ (((unsigned) &PORTA)*8) + 2;
2575 extern volatile __bit SRQEN @ (((unsigned) &SRCON0)*8) + 3;
2577 extern volatile __bit SRRC1E @ (((unsigned) &SRCON1)*8) + 0;
2579 extern volatile __bit SRRCKE @ (((unsigned) &SRCON1)*8) + 2;
2581 extern volatile __bit SRRPE @ (((unsigned) &SRCON1)*8) + 3;
2583 extern volatile __bit SRSC1E @ (((unsigned) &SRCON1)*8) + 4;
2585 extern volatile __bit SRSCKE @ (((unsigned) &SRCON1)*8) + 6;
2587 extern volatile __bit SRSPE @ (((unsigned) &SRCON1)*8) + 7;
2589 extern volatile __bit SS1SEL @ (((unsigned) &APFCON)*8) + 5;
2591 extern volatile __bit SSP1IE @ (((unsigned) &PIE1)*8) + 3;
2593 extern volatile __bit SSP1IF @ (((unsigned) &PIR1)*8) + 3;
2595 extern volatile __bit SSPEN @ (((unsigned) &SSP1CON1)*8) + 5;
2597 extern volatile __bit SSPM0 @ (((unsigned) &SSP1CON1)*8) + 0;
2599 extern volatile __bit SSPM1 @ (((unsigned) &SSP1CON1)*8) + 1;
2601 extern volatile __bit SSPM2 @ (((unsigned) &SSP1CON1)*8) + 2;
2603 extern volatile __bit SSPM3 @ (((unsigned) &SSP1CON1)*8) + 3;
2605 extern volatile __bit SSPOV @ (((unsigned) &SSP1CON1)*8) + 6;
2607 extern volatile __bit SSSEL @ (((unsigned) &APFCON)*8) + 5;
2609 extern volatile __bit STKOVF @ (((unsigned) &PCON)*8) + 7;
2611 extern volatile __bit STKUNF @ (((unsigned) &PCON)*8) + 6;
2613 extern volatile __bit STR1A @ (((unsigned) &PSTR1CON)*8) + 0;
2615 extern volatile __bit STR1B @ (((unsigned) &PSTR1CON)*8) + 1;
2617 extern volatile __bit STR1C @ (((unsigned) &PSTR1CON)*8) + 2;
2619 extern volatile __bit STR1D @ (((unsigned) &PSTR1CON)*8) + 3;
2621 extern volatile __bit STR1SYNC @ (((unsigned) &PSTR1CON)*8) + 4;
2623 extern volatile __bit SWDTEN @ (((unsigned) &WDTCON)*8) + 0;
2625 extern volatile __bit SYNC @ (((unsigned) &TXSTA)*8) + 4;
2627 extern volatile __bit T0CKI @ (((unsigned) &PORTA)*8) + 2;
2629 extern volatile __bit T0CS @ (((unsigned) &OPTION_REG)*8) + 5;
2631 extern volatile __bit T0IE @ (((unsigned) &INTCON)*8) + 5;
2633 extern volatile __bit T0IF @ (((unsigned) &INTCON)*8) + 2;
2635 extern volatile __bit T0SE @ (((unsigned) &OPTION_REG)*8) + 4;
2637 extern volatile __bit T0XCS @ (((unsigned) &CPSCON0)*8) + 0;
2639 extern volatile __bit T1CKI @ (((unsigned) &PORTA)*8) + 5;
2641 extern volatile __bit T1CKPS0 @ (((unsigned) &T1CON)*8) + 4;
2643 extern volatile __bit T1CKPS1 @ (((unsigned) &T1CON)*8) + 5;
2645 extern volatile __bit T1GGO @ (((unsigned) &T1GCON)*8) + 3;
2647 extern volatile __bit T1GGO_nDONE @ (((unsigned) &T1GCON)*8) + 3;
2649 extern volatile __bit T1GPOL @ (((unsigned) &T1GCON)*8) + 6;
2651 extern volatile __bit T1GSEL @ (((unsigned) &APFCON)*8) + 3;
2653 extern volatile __bit T1GSPM @ (((unsigned) &T1GCON)*8) + 4;
2655 extern volatile __bit T1GSS0 @ (((unsigned) &T1GCON)*8) + 0;
2657 extern volatile __bit T1GSS1 @ (((unsigned) &T1GCON)*8) + 1;
2659 extern volatile __bit T1GTM @ (((unsigned) &T1GCON)*8) + 5;
2661 extern volatile __bit T1GVAL @ (((unsigned) &T1GCON)*8) + 2;
2663 extern volatile __bit T1OSCEN @ (((unsigned) &T1CON)*8) + 3;
2665 extern volatile __bit T1OSCR @ (((unsigned) &OSCSTAT)*8) + 7;
2667 extern volatile __bit T1OSI @ (((unsigned) &PORTA)*8) + 5;
2669 extern volatile __bit T1OSO @ (((unsigned) &PORTA)*8) + 4;
2671 extern volatile __bit T2CKPS0 @ (((unsigned) &T2CON)*8) + 0;
2673 extern volatile __bit T2CKPS1 @ (((unsigned) &T2CON)*8) + 1;
2675 extern volatile __bit T2OUTPS0 @ (((unsigned) &T2CON)*8) + 3;
2677 extern volatile __bit T2OUTPS1 @ (((unsigned) &T2CON)*8) + 4;
2679 extern volatile __bit T2OUTPS2 @ (((unsigned) &T2CON)*8) + 5;
2681 extern volatile __bit T2OUTPS3 @ (((unsigned) &T2CON)*8) + 6;
2683 extern volatile __bit TMR0CS @ (((unsigned) &OPTION_REG)*8) + 5;
2685 extern volatile __bit TMR0IE @ (((unsigned) &INTCON)*8) + 5;
2687 extern volatile __bit TMR0IF @ (((unsigned) &INTCON)*8) + 2;
2689 extern volatile __bit TMR0SE @ (((unsigned) &OPTION_REG)*8) + 4;
2691 extern volatile __bit TMR1CS0 @ (((unsigned) &T1CON)*8) + 6;
2693 extern volatile __bit TMR1CS1 @ (((unsigned) &T1CON)*8) + 7;
2695 extern volatile __bit TMR1GE @ (((unsigned) &T1GCON)*8) + 7;
2697 extern volatile __bit TMR1GIE @ (((unsigned) &PIE1)*8) + 7;
2699 extern volatile __bit TMR1GIF @ (((unsigned) &PIR1)*8) + 7;
2701 extern volatile __bit TMR1IE @ (((unsigned) &PIE1)*8) + 0;
2703 extern volatile __bit TMR1IF @ (((unsigned) &PIR1)*8) + 0;
2705 extern volatile __bit TMR1ON @ (((unsigned) &T1CON)*8) + 0;
2707 extern volatile __bit TMR2IE @ (((unsigned) &PIE1)*8) + 1;
2709 extern volatile __bit TMR2IF @ (((unsigned) &PIR1)*8) + 1;
2711 extern volatile __bit TMR2ON @ (((unsigned) &T2CON)*8) + 2;
2713 extern volatile __bit TRISA0 @ (((unsigned) &TRISA)*8) + 0;
2715 extern volatile __bit TRISA1 @ (((unsigned) &TRISA)*8) + 1;
2717 extern volatile __bit TRISA2 @ (((unsigned) &TRISA)*8) + 2;
2719 extern volatile __bit TRISA3 @ (((unsigned) &TRISA)*8) + 3;
2721 extern volatile __bit TRISA4 @ (((unsigned) &TRISA)*8) + 4;
2723 extern volatile __bit TRISA5 @ (((unsigned) &TRISA)*8) + 5;
2725 extern volatile __bit TRMT @ (((unsigned) &TXSTA)*8) + 1;
2727 extern volatile __bit TSEN @ (((unsigned) &FVRCON)*8) + 5;
2729 extern volatile __bit TSRNG @ (((unsigned) &FVRCON)*8) + 4;
2731 extern volatile __bit TUN0 @ (((unsigned) &OSCTUNE)*8) + 0;
2733 extern volatile __bit TUN1 @ (((unsigned) &OSCTUNE)*8) + 1;
2735 extern volatile __bit TUN2 @ (((unsigned) &OSCTUNE)*8) + 2;
2737 extern volatile __bit TUN3 @ (((unsigned) &OSCTUNE)*8) + 3;
2739 extern volatile __bit TUN4 @ (((unsigned) &OSCTUNE)*8) + 4;
2741 extern volatile __bit TUN5 @ (((unsigned) &OSCTUNE)*8) + 5;
2743 extern volatile __bit TX9 @ (((unsigned) &TXSTA)*8) + 6;
2745 extern volatile __bit TX9D @ (((unsigned) &TXSTA)*8) + 0;
2747 extern volatile __bit TXCKSEL @ (((unsigned) &APFCON)*8) + 2;
2749 extern volatile __bit TXEN @ (((unsigned) &TXSTA)*8) + 5;
2751 extern volatile __bit TXIE @ (((unsigned) &PIE1)*8) + 4;
2753 extern volatile __bit TXIF @ (((unsigned) &PIR1)*8) + 4;
2755 extern volatile __bit UA @ (((unsigned) &SSP1STAT)*8) + 1;
2757 extern volatile __bit WCOL @ (((unsigned) &SSP1CON1)*8) + 7;
2759 extern volatile __bit WDTPS0 @ (((unsigned) &WDTCON)*8) + 1;
2761 extern volatile __bit WDTPS1 @ (((unsigned) &WDTCON)*8) + 2;
2763 extern volatile __bit WDTPS2 @ (((unsigned) &WDTCON)*8) + 3;
2765 extern volatile __bit WDTPS3 @ (((unsigned) &WDTCON)*8) + 4;
2767 extern volatile __bit WDTPS4 @ (((unsigned) &WDTCON)*8) + 5;
2769 extern volatile __bit WPUA0 @ (((unsigned) &WPUA)*8) + 0;
2771 extern volatile __bit WPUA1 @ (((unsigned) &WPUA)*8) + 1;
2773 extern volatile __bit WPUA2 @ (((unsigned) &WPUA)*8) + 2;
2775 extern volatile __bit WPUA3 @ (((unsigned) &WPUA)*8) + 3;
2777 extern volatile __bit WPUA4 @ (((unsigned) &WPUA)*8) + 4;
2779 extern volatile __bit WPUA5 @ (((unsigned) &WPUA)*8) + 5;
2781 extern volatile __bit WR @ (((unsigned) &EECON1)*8) + 1;
2783 extern volatile __bit WREN @ (((unsigned) &EECON1)*8) + 2;
2785 extern volatile __bit WRERR @ (((unsigned) &EECON1)*8) + 3;
2787 extern volatile __bit WUE @ (((unsigned) &BAUDCON)*8) + 1;
2789 extern volatile __bit ZERO @ (((unsigned) &STATUS)*8) + 2;
2791 extern volatile __bit Z_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 2;
2793 extern volatile __bit nBOR @ (((unsigned) &PCON)*8) + 0;
2795 extern volatile __bit nDONE @ (((unsigned) &ADCON0)*8) + 1;
2797 extern volatile __bit nMCLR @ (((unsigned) &PORTA)*8) + 3;
2799 extern volatile __bit nPD @ (((unsigned) &STATUS)*8) + 3;
2801 extern volatile __bit nPOR @ (((unsigned) &PCON)*8) + 1;
2803 extern volatile __bit nRI @ (((unsigned) &PCON)*8) + 2;
2805 extern volatile __bit nRMCLR @ (((unsigned) &PCON)*8) + 3;
2807 extern volatile __bit nT1SYNC @ (((unsigned) &T1CON)*8) + 2;
2809 extern volatile __bit nTO @ (((unsigned) &STATUS)*8) + 4;
2811 extern volatile __bit nWPUEN @ (((unsigned) &OPTION_REG)*8) + 7;
2814 # 27 "/opt/microchip/xc8/v1.12/include/pic.h"
2815 #pragma intrinsic(_nop)
2816 extern void _nop(void);
2819 extern unsigned int flash_read(unsigned short addr);
2821 # 41 "/opt/microchip/xc8/v1.12/include/eeprom_routines.h"
2822 extern void eeprom_write(unsigned char addr, unsigned char value);
2823 extern unsigned char eeprom_read(unsigned char addr);
2824 extern void eecpymem(volatile unsigned char *to, __eeprom unsigned char *from, unsigned char size);
2825 extern void memcpyee(__eeprom unsigned char *to, const unsigned char *from, unsigned char size);
2828 # 150 "/opt/microchip/xc8/v1.12/include/pic.h"
2829 #pragma intrinsic(_delay)
2830 extern void _delay(unsigned long);
2832 # 8 "/opt/microchip/xc8/v1.12/include/stdio.h"
2833 typedef int ptrdiff_t;
2834 typedef unsigned size_t;
2835 typedef unsigned short wchar_t;
2837 # 7 "/opt/microchip/xc8/v1.12/include/stdarg.h"
2838 typedef void * va_list[1];
2840 #pragma intrinsic(__va_start)
2841 extern void * __va_start(void);
2843 #pragma intrinsic(__va_arg)
2844 extern void * __va_arg(void *, ...);
2846 # 23 "/opt/microchip/xc8/v1.12/include/stdio.h"
2853 void (* func)(char);
2856 # 17 "/opt/microchip/xc8/v1.12/include/conio.h"
2860 extern void init_uart(void);
2862 extern char getch(void);
2863 extern char getche(void);
2864 extern void putch(char);
2865 extern void ungetch(char);
2867 extern __bit kbhit(void);
2870 extern char * cgets(char *);
2871 extern void cputs(const char *);
2873 # 99 "/opt/microchip/xc8/v1.12/include/stdio.h"
2874 extern int cprintf(char *, ...);
2875 #pragma printf_check(cprintf)
2879 extern int _doprnt(struct __prbuf *, const register char *, register va_list);
2883 #pragma printf_check(vprintf) const
2884 #pragma printf_check(vsprintf) const
2886 extern char * gets(char *);
2887 extern int puts(const char *);
2888 extern int scanf(const char *, ...);
2889 extern int sscanf(const char *, const char *, ...);
2890 extern int vprintf(const char *, va_list);
2891 extern int vsprintf(char *, const char *, va_list) __attribute__((unsupported("vsprintf() is not supported by this compiler")));
2892 extern int vscanf(const char *, va_list ap);
2893 extern int vsscanf(const char *, const char *, va_list);
2895 #pragma printf_check(printf) const
2896 #pragma printf_check(sprintf) const
2897 extern int sprintf(char *, const char *, ...);
2898 extern int printf(const char *, ...);
2900 # 13 "/opt/microchip/xc8/v1.12/include/stdint.h"
2901 typedef signed char int8_t;
2904 typedef signed int int16_t;
2907 typedef signed short long int int24_t;
2910 typedef signed long int int32_t;
2913 typedef unsigned char uint8_t;
2916 typedef unsigned int uint16_t;
2919 typedef unsigned short long int uint24_t;
2922 typedef unsigned long int uint32_t;
2925 typedef signed char int_least8_t;
2928 typedef signed int int_least16_t;
2931 typedef signed short long int int_least24_t;
2934 typedef signed long int int_least32_t;
2937 typedef unsigned char uint_least8_t;
2940 typedef unsigned int uint_least16_t;
2943 typedef unsigned short long int uint_least24_t;
2946 typedef unsigned long int uint_least32_t;
2949 typedef signed char int_fast8_t;
2952 typedef signed int int_fast16_t;
2955 typedef signed short long int int_fast24_t;
2958 typedef signed long int int_fast32_t;
2961 typedef unsigned char uint_fast8_t;
2964 typedef unsigned int uint_fast16_t;
2967 typedef unsigned short long int uint_fast24_t;
2970 typedef unsigned long int uint_fast32_t;
2973 typedef int32_t intmax_t;
2978 typedef uint32_t uintmax_t;
2983 typedef int16_t intptr_t;
2988 typedef uint16_t uintptr_t;
2990 # 12 "/opt/microchip/xc8/v1.12/include/stdbool.h"
2991 typedef unsigned char bool;
2993 # 44 "/opt/microchip/xc8/v1.12/include/pic12f1840.h"
2994 extern volatile unsigned char INDF0 @ 0x000;
2996 asm("INDF0 equ 00h");
3004 extern volatile INDF0bits_t INDF0bits @ 0x000;
3007 extern volatile unsigned char INDF1 @ 0x001;
3009 asm("INDF1 equ 01h");
3017 extern volatile INDF1bits_t INDF1bits @ 0x001;
3020 extern volatile unsigned char PCL @ 0x002;
3030 extern volatile PCLbits_t PCLbits @ 0x002;
3033 extern volatile unsigned char STATUS @ 0x003;
3035 asm("STATUS equ 03h");
3054 extern volatile STATUSbits_t STATUSbits @ 0x003;
3057 extern volatile unsigned short FSR0 @ 0x004;
3060 extern volatile unsigned char FSR0L @ 0x004;
3062 asm("FSR0L equ 04h");
3070 extern volatile FSR0Lbits_t FSR0Lbits @ 0x004;
3073 extern volatile unsigned char FSR0H @ 0x005;
3075 asm("FSR0H equ 05h");
3083 extern volatile FSR0Hbits_t FSR0Hbits @ 0x005;
3086 extern volatile unsigned short FSR1 @ 0x006;
3089 extern volatile unsigned char FSR1L @ 0x006;
3091 asm("FSR1L equ 06h");
3099 extern volatile FSR1Lbits_t FSR1Lbits @ 0x006;
3102 extern volatile unsigned char FSR1H @ 0x007;
3104 asm("FSR1H equ 07h");
3112 extern volatile FSR1Hbits_t FSR1Hbits @ 0x007;
3115 extern volatile unsigned char BSR @ 0x008;
3132 extern volatile BSRbits_t BSRbits @ 0x008;
3135 extern volatile unsigned char WREG @ 0x009;
3137 asm("WREG equ 09h");
3145 extern volatile WREGbits_t WREGbits @ 0x009;
3148 extern volatile unsigned char PCLATH @ 0x00A;
3150 asm("PCLATH equ 0Ah");
3158 extern volatile PCLATHbits_t PCLATHbits @ 0x00A;
3161 extern volatile unsigned char INTCON @ 0x00B;
3163 asm("INTCON equ 0Bh");
3184 extern volatile INTCONbits_t INTCONbits @ 0x00B;
3187 extern volatile unsigned char PORTA @ 0x00C;
3189 asm("PORTA equ 0Ch");
3202 extern volatile PORTAbits_t PORTAbits @ 0x00C;
3205 extern volatile unsigned char PIR1 @ 0x011;
3207 asm("PIR1 equ 011h");
3219 unsigned TMR1GIF :1;
3222 extern volatile PIR1bits_t PIR1bits @ 0x011;
3225 extern volatile unsigned char PIR2 @ 0x012;
3227 asm("PIR2 equ 012h");
3240 extern volatile PIR2bits_t PIR2bits @ 0x012;
3243 extern volatile unsigned char TMR0 @ 0x015;
3245 asm("TMR0 equ 015h");
3253 extern volatile TMR0bits_t TMR0bits @ 0x015;
3256 extern volatile unsigned short TMR1 @ 0x016;
3258 asm("TMR1 equ 016h");
3262 extern volatile unsigned char TMR1L @ 0x016;
3264 asm("TMR1L equ 016h");
3272 extern volatile TMR1Lbits_t TMR1Lbits @ 0x016;
3275 extern volatile unsigned char TMR1H @ 0x017;
3277 asm("TMR1H equ 017h");
3285 extern volatile TMR1Hbits_t TMR1Hbits @ 0x017;
3288 extern volatile unsigned char T1CON @ 0x018;
3290 asm("T1CON equ 018h");
3297 unsigned nT1SYNC :1;
3298 unsigned T1OSCEN :1;
3299 unsigned T1CKPS0 :1;
3300 unsigned T1CKPS1 :1;
3301 unsigned TMR1CS0 :1;
3302 unsigned TMR1CS1 :1;
3310 extern volatile T1CONbits_t T1CONbits @ 0x018;
3313 extern volatile unsigned char T1GCON @ 0x019;
3315 asm("T1GCON equ 019h");
3323 unsigned T1GGO_nDONE :1;
3335 extern volatile T1GCONbits_t T1GCONbits @ 0x019;
3338 extern volatile unsigned char TMR2 @ 0x01A;
3340 asm("TMR2 equ 01Ah");
3348 extern volatile TMR2bits_t TMR2bits @ 0x01A;
3351 extern volatile unsigned char PR2 @ 0x01B;
3353 asm("PR2 equ 01Bh");
3361 extern volatile PR2bits_t PR2bits @ 0x01B;
3364 extern volatile unsigned char T2CON @ 0x01C;
3366 asm("T2CON equ 01Ch");
3371 unsigned T2CKPS0 :1;
3372 unsigned T2CKPS1 :1;
3374 unsigned T2OUTPS0 :1;
3375 unsigned T2OUTPS1 :1;
3376 unsigned T2OUTPS2 :1;
3377 unsigned T2OUTPS3 :1;
3382 unsigned T2OUTPS :4;
3385 extern volatile T2CONbits_t T2CONbits @ 0x01C;
3388 extern volatile unsigned char CPSCON0 @ 0x01E;
3390 asm("CPSCON0 equ 01Eh");
3397 unsigned CPSRNG0 :1;
3398 unsigned CPSRNG1 :1;
3408 extern volatile CPSCON0bits_t CPSCON0bits @ 0x01E;
3411 extern volatile unsigned char CPSCON1 @ 0x01F;
3413 asm("CPSCON1 equ 01Fh");
3425 extern volatile CPSCON1bits_t CPSCON1bits @ 0x01F;
3428 extern volatile unsigned char TRISA @ 0x08C;
3430 asm("TRISA equ 08Ch");
3443 extern volatile TRISAbits_t TRISAbits @ 0x08C;
3446 extern volatile unsigned char PIE1 @ 0x091;
3448 asm("PIE1 equ 091h");
3460 unsigned TMR1GIE :1;
3463 extern volatile PIE1bits_t PIE1bits @ 0x091;
3466 extern volatile unsigned char PIE2 @ 0x092;
3468 asm("PIE2 equ 092h");
3481 extern volatile PIE2bits_t PIE2bits @ 0x092;
3484 extern volatile unsigned char OPTION_REG @ 0x095;
3486 asm("OPTION_REG equ 095h");
3507 extern volatile OPTION_REGbits_t OPTION_REGbits @ 0x095;
3510 extern volatile unsigned char PCON @ 0x096;
3512 asm("PCON equ 096h");
3526 extern volatile PCONbits_t PCONbits @ 0x096;
3529 extern volatile unsigned char WDTCON @ 0x097;
3531 asm("WDTCON equ 097h");
3548 extern volatile WDTCONbits_t WDTCONbits @ 0x097;
3551 extern volatile unsigned char OSCTUNE @ 0x098;
3553 asm("OSCTUNE equ 098h");
3569 extern volatile OSCTUNEbits_t OSCTUNEbits @ 0x098;
3572 extern volatile unsigned char OSCCON @ 0x099;
3574 asm("OSCCON equ 099h");
3594 extern volatile OSCCONbits_t OSCCONbits @ 0x099;
3597 extern volatile unsigned char OSCSTAT @ 0x09A;
3599 asm("OSCSTAT equ 09Ah");
3614 extern volatile OSCSTATbits_t OSCSTATbits @ 0x09A;
3617 extern volatile unsigned short ADRES @ 0x09B;
3619 asm("ADRES equ 09Bh");
3623 extern volatile unsigned char ADRESL @ 0x09B;
3625 asm("ADRESL equ 09Bh");
3633 extern volatile ADRESLbits_t ADRESLbits @ 0x09B;
3636 extern volatile unsigned char ADRESH @ 0x09C;
3638 asm("ADRESH equ 09Ch");
3646 extern volatile ADRESHbits_t ADRESHbits @ 0x09C;
3649 extern volatile unsigned char ADCON0 @ 0x09D;
3651 asm("ADCON0 equ 09Dh");
3657 unsigned GO_nDONE :1;
3674 extern volatile ADCON0bits_t ADCON0bits @ 0x09D;
3677 extern volatile unsigned char ADCON1 @ 0x09E;
3679 asm("ADCON1 equ 09Eh");
3684 unsigned ADPREF0 :1;
3685 unsigned ADPREF1 :1;
3698 extern volatile ADCON1bits_t ADCON1bits @ 0x09E;
3701 extern volatile unsigned char LATA @ 0x10C;
3703 asm("LATA equ 010Ch");
3716 extern volatile LATAbits_t LATAbits @ 0x10C;
3719 extern volatile unsigned char CM1CON0 @ 0x111;
3721 asm("CM1CON0 equ 0111h");
3736 extern volatile CM1CON0bits_t CM1CON0bits @ 0x111;
3739 extern volatile unsigned char CM1CON1 @ 0x112;
3741 asm("CM1CON1 equ 0112h");
3759 extern volatile CM1CON1bits_t CM1CON1bits @ 0x112;
3762 extern volatile unsigned char CMOUT @ 0x115;
3764 asm("CMOUT equ 0115h");
3772 extern volatile CMOUTbits_t CMOUTbits @ 0x115;
3775 extern volatile unsigned char BORCON @ 0x116;
3777 asm("BORCON equ 0116h");
3788 extern volatile BORCONbits_t BORCONbits @ 0x116;
3791 extern volatile unsigned char FVRCON @ 0x117;
3793 asm("FVRCON equ 0117h");
3800 unsigned CDAFVR0 :1;
3801 unsigned CDAFVR1 :1;
3812 extern volatile FVRCONbits_t FVRCONbits @ 0x117;
3815 extern volatile unsigned char DACCON0 @ 0x118;
3817 asm("DACCON0 equ 0118h");
3823 unsigned DACPSS0 :1;
3824 unsigned DACPSS1 :1;
3835 extern volatile DACCON0bits_t DACCON0bits @ 0x118;
3838 extern volatile unsigned char DACCON1 @ 0x119;
3840 asm("DACCON1 equ 0119h");
3855 extern volatile DACCON1bits_t DACCON1bits @ 0x119;
3858 extern volatile unsigned char SRCON0 @ 0x11A;
3860 asm("SRCON0 equ 011Ah");
3879 extern volatile SRCON0bits_t SRCON0bits @ 0x11A;
3882 extern volatile unsigned char SRCON1 @ 0x11B;
3884 asm("SRCON1 equ 011Bh");
3899 extern volatile SRCON1bits_t SRCON1bits @ 0x11B;
3902 extern volatile unsigned char APFCON @ 0x11D;
3904 asm("APFCON equ 011Dh");
3907 extern volatile unsigned char APFCON0 @ 0x11D;
3909 asm("APFCON0 equ 011Dh");
3914 unsigned CCP1SEL :1;
3916 unsigned TXCKSEL :1;
3921 unsigned RXDTSEL :1;
3926 unsigned SDO1SEL :1;
3929 extern volatile APFCONbits_t APFCONbits @ 0x11D;
3934 unsigned CCP1SEL :1;
3936 unsigned TXCKSEL :1;
3941 unsigned RXDTSEL :1;
3946 unsigned SDO1SEL :1;
3949 extern volatile APFCON0bits_t APFCON0bits @ 0x11D;
3952 extern volatile unsigned char ANSELA @ 0x18C;
3954 asm("ANSELA equ 018Ch");
3969 extern volatile ANSELAbits_t ANSELAbits @ 0x18C;
3972 extern volatile unsigned short EEADR @ 0x191;
3974 asm("EEADR equ 0191h");
3978 extern volatile unsigned char EEADRL @ 0x191;
3980 asm("EEADRL equ 0191h");
3988 extern volatile EEADRLbits_t EEADRLbits @ 0x191;
3991 extern volatile unsigned char EEADRH @ 0x192;
3993 asm("EEADRH equ 0192h");
4001 extern volatile EEADRHbits_t EEADRHbits @ 0x192;
4004 extern volatile unsigned short EEDAT @ 0x193;
4006 asm("EEDAT equ 0193h");
4010 extern volatile unsigned char EEDATL @ 0x193;
4012 asm("EEDATL equ 0193h");
4015 extern volatile unsigned char EEDATA @ 0x193;
4017 asm("EEDATA equ 0193h");
4025 extern volatile EEDATLbits_t EEDATLbits @ 0x193;
4033 extern volatile EEDATAbits_t EEDATAbits @ 0x193;
4036 extern volatile unsigned char EEDATH @ 0x194;
4038 asm("EEDATH equ 0194h");
4046 extern volatile EEDATHbits_t EEDATHbits @ 0x194;
4049 extern volatile unsigned char EECON1 @ 0x195;
4051 asm("EECON1 equ 0195h");
4066 extern volatile EECON1bits_t EECON1bits @ 0x195;
4069 extern volatile unsigned char EECON2 @ 0x196;
4071 asm("EECON2 equ 0196h");
4079 extern volatile EECON2bits_t EECON2bits @ 0x196;
4082 extern volatile unsigned char VREGCON @ 0x197;
4084 asm("VREGCON equ 0197h");
4089 unsigned VREGPM0 :1;
4090 unsigned VREGPM1 :1;
4096 extern volatile VREGCONbits_t VREGCONbits @ 0x197;
4099 extern volatile unsigned char RCREG @ 0x199;
4101 asm("RCREG equ 0199h");
4109 extern volatile RCREGbits_t RCREGbits @ 0x199;
4112 extern volatile unsigned char TXREG @ 0x19A;
4114 asm("TXREG equ 019Ah");
4122 extern volatile TXREGbits_t TXREGbits @ 0x19A;
4125 extern volatile unsigned char SPBRGL @ 0x19B;
4127 asm("SPBRGL equ 019Bh");
4130 extern volatile unsigned char SPBRG @ 0x19B;
4132 asm("SPBRG equ 019Bh");
4140 extern volatile SPBRGLbits_t SPBRGLbits @ 0x19B;
4148 extern volatile SPBRGbits_t SPBRGbits @ 0x19B;
4151 extern volatile unsigned char SPBRGH @ 0x19C;
4153 asm("SPBRGH equ 019Ch");
4161 extern volatile SPBRGHbits_t SPBRGHbits @ 0x19C;
4164 extern volatile unsigned char RCSTA @ 0x19D;
4166 asm("RCSTA equ 019Dh");
4181 extern volatile RCSTAbits_t RCSTAbits @ 0x19D;
4184 extern volatile unsigned char TXSTA @ 0x19E;
4186 asm("TXSTA equ 019Eh");
4201 extern volatile TXSTAbits_t TXSTAbits @ 0x19E;
4204 extern volatile unsigned char BAUDCON @ 0x19F;
4206 asm("BAUDCON equ 019Fh");
4221 extern volatile BAUDCONbits_t BAUDCONbits @ 0x19F;
4224 extern volatile unsigned char WPUA @ 0x20C;
4226 asm("WPUA equ 020Ch");
4242 extern volatile WPUAbits_t WPUAbits @ 0x20C;
4245 extern volatile unsigned char SSP1BUF @ 0x211;
4247 asm("SSP1BUF equ 0211h");
4250 extern volatile unsigned char SSPBUF @ 0x211;
4252 asm("SSPBUF equ 0211h");
4260 extern volatile SSP1BUFbits_t SSP1BUFbits @ 0x211;
4268 extern volatile SSPBUFbits_t SSPBUFbits @ 0x211;
4271 extern volatile unsigned char SSP1ADD @ 0x212;
4273 asm("SSP1ADD equ 0212h");
4276 extern volatile unsigned char SSPADD @ 0x212;
4278 asm("SSPADD equ 0212h");
4286 extern volatile SSP1ADDbits_t SSP1ADDbits @ 0x212;
4294 extern volatile SSPADDbits_t SSPADDbits @ 0x212;
4297 extern volatile unsigned char SSP1MSK @ 0x213;
4299 asm("SSP1MSK equ 0213h");
4302 extern volatile unsigned char SSPMSK @ 0x213;
4304 asm("SSPMSK equ 0213h");
4312 extern volatile SSP1MSKbits_t SSP1MSKbits @ 0x213;
4320 extern volatile SSPMSKbits_t SSPMSKbits @ 0x213;
4323 extern volatile unsigned char SSP1STAT @ 0x214;
4325 asm("SSP1STAT equ 0214h");
4328 extern volatile unsigned char SSPSTAT @ 0x214;
4330 asm("SSPSTAT equ 0214h");
4345 extern volatile SSP1STATbits_t SSP1STATbits @ 0x214;
4360 extern volatile SSPSTATbits_t SSPSTATbits @ 0x214;
4363 extern volatile unsigned char SSP1CON1 @ 0x215;
4365 asm("SSP1CON1 equ 0215h");
4368 extern volatile unsigned char SSPCON1 @ 0x215;
4370 asm("SSPCON1 equ 0215h");
4372 extern volatile unsigned char SSPCON @ 0x215;
4374 asm("SSPCON equ 0215h");
4392 extern volatile SSP1CON1bits_t SSP1CON1bits @ 0x215;
4410 extern volatile SSPCON1bits_t SSPCON1bits @ 0x215;
4428 extern volatile SSPCONbits_t SSPCONbits @ 0x215;
4431 extern volatile unsigned char SSP1CON2 @ 0x216;
4433 asm("SSP1CON2 equ 0216h");
4436 extern volatile unsigned char SSPCON2 @ 0x216;
4438 asm("SSPCON2 equ 0216h");
4449 unsigned ACKSTAT :1;
4453 extern volatile SSP1CON2bits_t SSP1CON2bits @ 0x216;
4464 unsigned ACKSTAT :1;
4468 extern volatile SSPCON2bits_t SSPCON2bits @ 0x216;
4471 extern volatile unsigned char SSP1CON3 @ 0x217;
4473 asm("SSP1CON3 equ 0217h");
4476 extern volatile unsigned char SSPCON3 @ 0x217;
4478 asm("SSPCON3 equ 0217h");
4493 extern volatile SSP1CON3bits_t SSP1CON3bits @ 0x217;
4508 extern volatile SSPCON3bits_t SSPCON3bits @ 0x217;
4511 extern volatile unsigned char CCPR1L @ 0x291;
4513 asm("CCPR1L equ 0291h");
4521 extern volatile CCPR1Lbits_t CCPR1Lbits @ 0x291;
4524 extern volatile unsigned char CCPR1H @ 0x292;
4526 asm("CCPR1H equ 0292h");
4534 extern volatile CCPR1Hbits_t CCPR1Hbits @ 0x292;
4537 extern volatile unsigned char CCP1CON @ 0x293;
4539 asm("CCP1CON equ 0293h");
4559 extern volatile CCP1CONbits_t CCP1CONbits @ 0x293;
4562 extern volatile unsigned char PWM1CON @ 0x294;
4564 asm("PWM1CON equ 0294h");
4582 extern volatile PWM1CONbits_t PWM1CONbits @ 0x294;
4585 extern volatile unsigned char CCP1AS @ 0x295;
4587 asm("CCP1AS equ 0295h");
4590 extern volatile unsigned char ECCP1AS @ 0x295;
4592 asm("ECCP1AS equ 0295h");
4597 unsigned PSS1BD0 :1;
4598 unsigned PSS1BD1 :1;
4599 unsigned PSS1AC0 :1;
4600 unsigned PSS1AC1 :1;
4601 unsigned CCP1AS0 :1;
4602 unsigned CCP1AS1 :1;
4603 unsigned CCP1AS2 :1;
4604 unsigned CCP1ASE :1;
4612 extern volatile CCP1ASbits_t CCP1ASbits @ 0x295;
4617 unsigned PSS1BD0 :1;
4618 unsigned PSS1BD1 :1;
4619 unsigned PSS1AC0 :1;
4620 unsigned PSS1AC1 :1;
4621 unsigned CCP1AS0 :1;
4622 unsigned CCP1AS1 :1;
4623 unsigned CCP1AS2 :1;
4624 unsigned CCP1ASE :1;
4632 extern volatile ECCP1ASbits_t ECCP1ASbits @ 0x295;
4635 extern volatile unsigned char PSTR1CON @ 0x296;
4637 asm("PSTR1CON equ 0296h");
4646 unsigned STR1SYNC :1;
4649 extern volatile PSTR1CONbits_t PSTR1CONbits @ 0x296;
4652 extern volatile unsigned char IOCAP @ 0x391;
4654 asm("IOCAP equ 0391h");
4670 extern volatile IOCAPbits_t IOCAPbits @ 0x391;
4673 extern volatile unsigned char IOCAN @ 0x392;
4675 asm("IOCAN equ 0392h");
4691 extern volatile IOCANbits_t IOCANbits @ 0x392;
4694 extern volatile unsigned char IOCAF @ 0x393;
4696 asm("IOCAF equ 0393h");
4712 extern volatile IOCAFbits_t IOCAFbits @ 0x393;
4715 extern volatile unsigned char CLKRCON @ 0x39A;
4717 asm("CLKRCON equ 039Ah");
4722 unsigned CLKRDIV0 :1;
4723 unsigned CLKRDIV1 :1;
4724 unsigned CLKRDIV2 :1;
4725 unsigned CLKRDC0 :1;
4726 unsigned CLKRDC1 :1;
4727 unsigned CLKRSLR :1;
4732 unsigned CLKRDIV :3;
4736 extern volatile CLKRCONbits_t CLKRCONbits @ 0x39A;
4739 extern volatile unsigned char MDCON @ 0x39C;
4741 asm("MDCON equ 039Ch");
4755 extern volatile MDCONbits_t MDCONbits @ 0x39C;
4758 extern volatile unsigned char MDSRC @ 0x39D;
4760 asm("MDSRC equ 039Dh");
4770 unsigned MDMSODIS :1;
4776 extern volatile MDSRCbits_t MDSRCbits @ 0x39D;
4779 extern volatile unsigned char MDCARL @ 0x39E;
4781 asm("MDCARL equ 039Eh");
4791 unsigned MDCLSYNC :1;
4792 unsigned MDCLPOL :1;
4793 unsigned MDCLODIS :1;
4799 extern volatile MDCARLbits_t MDCARLbits @ 0x39E;
4802 extern volatile unsigned char MDCARH @ 0x39F;
4804 asm("MDCARH equ 039Fh");
4814 unsigned MDCHSYNC :1;
4815 unsigned MDCHPOL :1;
4816 unsigned MDCHODIS :1;
4822 extern volatile MDCARHbits_t MDCARHbits @ 0x39F;
4825 extern volatile unsigned char STATUS_SHAD @ 0xFE4;
4827 asm("STATUS_SHAD equ 0FE4h");
4833 unsigned DC_SHAD :1;
4836 } STATUS_SHADbits_t;
4837 extern volatile STATUS_SHADbits_t STATUS_SHADbits @ 0xFE4;
4840 extern volatile unsigned char WREG_SHAD @ 0xFE5;
4842 asm("WREG_SHAD equ 0FE5h");
4847 unsigned WREG_SHAD :8;
4850 extern volatile WREG_SHADbits_t WREG_SHADbits @ 0xFE5;
4853 extern volatile unsigned char BSR_SHAD @ 0xFE6;
4855 asm("BSR_SHAD equ 0FE6h");
4860 unsigned BSR_SHAD :5;
4863 extern volatile BSR_SHADbits_t BSR_SHADbits @ 0xFE6;
4866 extern volatile unsigned char PCLATH_SHAD @ 0xFE7;
4868 asm("PCLATH_SHAD equ 0FE7h");
4873 unsigned PCLATH_SHAD :7;
4875 } PCLATH_SHADbits_t;
4876 extern volatile PCLATH_SHADbits_t PCLATH_SHADbits @ 0xFE7;
4879 extern volatile unsigned char FSR0L_SHAD @ 0xFE8;
4881 asm("FSR0L_SHAD equ 0FE8h");
4886 unsigned FSR0L_SHAD :8;
4889 extern volatile FSR0L_SHADbits_t FSR0L_SHADbits @ 0xFE8;
4892 extern volatile unsigned char FSR0H_SHAD @ 0xFE9;
4894 asm("FSR0H_SHAD equ 0FE9h");
4899 unsigned FSR0H_SHAD :8;
4902 extern volatile FSR0H_SHADbits_t FSR0H_SHADbits @ 0xFE9;
4905 extern volatile unsigned char FSR1L_SHAD @ 0xFEA;
4907 asm("FSR1L_SHAD equ 0FEAh");
4912 unsigned FSR1L_SHAD :8;
4915 extern volatile FSR1L_SHADbits_t FSR1L_SHADbits @ 0xFEA;
4918 extern volatile unsigned char FSR1H_SHAD @ 0xFEB;
4920 asm("FSR1H_SHAD equ 0FEBh");
4925 unsigned FSR1H_SHAD :8;
4928 extern volatile FSR1H_SHADbits_t FSR1H_SHADbits @ 0xFEB;
4931 extern volatile unsigned char STKPTR @ 0xFED;
4933 asm("STKPTR equ 0FEDh");
4941 extern volatile STKPTRbits_t STKPTRbits @ 0xFED;
4944 extern volatile unsigned char TOSL @ 0xFEE;
4946 asm("TOSL equ 0FEEh");
4954 extern volatile TOSLbits_t TOSLbits @ 0xFEE;
4957 extern volatile unsigned char TOSH @ 0xFEF;
4959 asm("TOSH equ 0FEFh");
4967 extern volatile TOSHbits_t TOSHbits @ 0xFEF;
4970 extern volatile __bit ABDEN @ (((unsigned) &BAUDCON)*8) + 0;
4972 extern volatile __bit ABDOVF @ (((unsigned) &BAUDCON)*8) + 7;
4974 extern volatile __bit ACKDT @ (((unsigned) &SSP1CON2)*8) + 5;
4976 extern volatile __bit ACKEN @ (((unsigned) &SSP1CON2)*8) + 4;
4978 extern volatile __bit ACKSTAT @ (((unsigned) &SSP1CON2)*8) + 6;
4980 extern volatile __bit ACKTIM @ (((unsigned) &SSP1CON3)*8) + 7;
4982 extern volatile __bit ADCS0 @ (((unsigned) &ADCON1)*8) + 4;
4984 extern volatile __bit ADCS1 @ (((unsigned) &ADCON1)*8) + 5;
4986 extern volatile __bit ADCS2 @ (((unsigned) &ADCON1)*8) + 6;
4988 extern volatile __bit ADDEN @ (((unsigned) &RCSTA)*8) + 3;
4990 extern volatile __bit ADFM @ (((unsigned) &ADCON1)*8) + 7;
4992 extern volatile __bit ADFVR0 @ (((unsigned) &FVRCON)*8) + 0;
4994 extern volatile __bit ADFVR1 @ (((unsigned) &FVRCON)*8) + 1;
4996 extern volatile __bit ADGO @ (((unsigned) &ADCON0)*8) + 1;
4998 extern volatile __bit ADIE @ (((unsigned) &PIE1)*8) + 6;
5000 extern volatile __bit ADIF @ (((unsigned) &PIR1)*8) + 6;
5002 extern volatile __bit ADON @ (((unsigned) &ADCON0)*8) + 0;
5004 extern volatile __bit ADPREF0 @ (((unsigned) &ADCON1)*8) + 0;
5006 extern volatile __bit ADPREF1 @ (((unsigned) &ADCON1)*8) + 1;
5008 extern volatile __bit AHEN @ (((unsigned) &SSP1CON3)*8) + 1;
5010 extern volatile __bit ANSA0 @ (((unsigned) &ANSELA)*8) + 0;
5012 extern volatile __bit ANSA1 @ (((unsigned) &ANSELA)*8) + 1;
5014 extern volatile __bit ANSA2 @ (((unsigned) &ANSELA)*8) + 2;
5016 extern volatile __bit ANSA4 @ (((unsigned) &ANSELA)*8) + 4;
5018 extern volatile __bit BCL1IE @ (((unsigned) &PIE2)*8) + 3;
5020 extern volatile __bit BCL1IF @ (((unsigned) &PIR2)*8) + 3;
5022 extern volatile __bit BF @ (((unsigned) &SSP1STAT)*8) + 0;
5024 extern volatile __bit BOEN @ (((unsigned) &SSP1CON3)*8) + 4;
5026 extern volatile __bit BORFS @ (((unsigned) &BORCON)*8) + 6;
5028 extern volatile __bit BORRDY @ (((unsigned) &BORCON)*8) + 0;
5030 extern volatile __bit BRG16 @ (((unsigned) &BAUDCON)*8) + 3;
5032 extern volatile __bit BRGH @ (((unsigned) &TXSTA)*8) + 2;
5034 extern volatile __bit BSR0 @ (((unsigned) &BSR)*8) + 0;
5036 extern volatile __bit BSR1 @ (((unsigned) &BSR)*8) + 1;
5038 extern volatile __bit BSR2 @ (((unsigned) &BSR)*8) + 2;
5040 extern volatile __bit BSR3 @ (((unsigned) &BSR)*8) + 3;
5042 extern volatile __bit BSR4 @ (((unsigned) &BSR)*8) + 4;
5044 extern volatile __bit C1HYS @ (((unsigned) &CM1CON0)*8) + 1;
5046 extern volatile __bit C1IE @ (((unsigned) &PIE2)*8) + 5;
5048 extern volatile __bit C1IF @ (((unsigned) &PIR2)*8) + 5;
5050 extern volatile __bit C1INTN @ (((unsigned) &CM1CON1)*8) + 6;
5052 extern volatile __bit C1INTP @ (((unsigned) &CM1CON1)*8) + 7;
5054 extern volatile __bit C1NCH @ (((unsigned) &CM1CON1)*8) + 0;
5056 extern volatile __bit C1NCH0 @ (((unsigned) &CM1CON1)*8) + 0;
5058 extern volatile __bit C1OE @ (((unsigned) &CM1CON0)*8) + 5;
5060 extern volatile __bit C1ON @ (((unsigned) &CM1CON0)*8) + 7;
5062 extern volatile __bit C1OUT @ (((unsigned) &CM1CON0)*8) + 6;
5064 extern volatile __bit C1PCH0 @ (((unsigned) &CM1CON1)*8) + 4;
5066 extern volatile __bit C1PCH1 @ (((unsigned) &CM1CON1)*8) + 5;
5068 extern volatile __bit C1POL @ (((unsigned) &CM1CON0)*8) + 4;
5070 extern volatile __bit C1SP @ (((unsigned) &CM1CON0)*8) + 2;
5072 extern volatile __bit C1SYNC @ (((unsigned) &CM1CON0)*8) + 0;
5074 extern volatile __bit CARRY @ (((unsigned) &STATUS)*8) + 0;
5076 extern volatile __bit CCP1AS0 @ (((unsigned) &CCP1AS)*8) + 4;
5078 extern volatile __bit CCP1AS1 @ (((unsigned) &CCP1AS)*8) + 5;
5080 extern volatile __bit CCP1AS2 @ (((unsigned) &CCP1AS)*8) + 6;
5082 extern volatile __bit CCP1ASE @ (((unsigned) &CCP1AS)*8) + 7;
5084 extern volatile __bit CCP1IE @ (((unsigned) &PIE1)*8) + 2;
5086 extern volatile __bit CCP1IF @ (((unsigned) &PIR1)*8) + 2;
5088 extern volatile __bit CCP1M0 @ (((unsigned) &CCP1CON)*8) + 0;
5090 extern volatile __bit CCP1M1 @ (((unsigned) &CCP1CON)*8) + 1;
5092 extern volatile __bit CCP1M2 @ (((unsigned) &CCP1CON)*8) + 2;
5094 extern volatile __bit CCP1M3 @ (((unsigned) &CCP1CON)*8) + 3;
5096 extern volatile __bit CCP1SEL @ (((unsigned) &APFCON)*8) + 0;
5098 extern volatile __bit CDAFVR0 @ (((unsigned) &FVRCON)*8) + 2;
5100 extern volatile __bit CDAFVR1 @ (((unsigned) &FVRCON)*8) + 3;
5102 extern volatile __bit CFGS @ (((unsigned) &EECON1)*8) + 6;
5104 extern volatile __bit CHS0 @ (((unsigned) &ADCON0)*8) + 2;
5106 extern volatile __bit CHS1 @ (((unsigned) &ADCON0)*8) + 3;
5108 extern volatile __bit CHS2 @ (((unsigned) &ADCON0)*8) + 4;
5110 extern volatile __bit CHS3 @ (((unsigned) &ADCON0)*8) + 5;
5112 extern volatile __bit CHS4 @ (((unsigned) &ADCON0)*8) + 6;
5114 extern volatile __bit CKE @ (((unsigned) &SSP1STAT)*8) + 6;
5116 extern volatile __bit CKP @ (((unsigned) &SSP1CON1)*8) + 4;
5118 extern volatile __bit CLKRDC0 @ (((unsigned) &CLKRCON)*8) + 3;
5120 extern volatile __bit CLKRDC1 @ (((unsigned) &CLKRCON)*8) + 4;
5122 extern volatile __bit CLKRDIV0 @ (((unsigned) &CLKRCON)*8) + 0;
5124 extern volatile __bit CLKRDIV1 @ (((unsigned) &CLKRCON)*8) + 1;
5126 extern volatile __bit CLKRDIV2 @ (((unsigned) &CLKRCON)*8) + 2;
5128 extern volatile __bit CLKREN @ (((unsigned) &CLKRCON)*8) + 7;
5130 extern volatile __bit CLKROE @ (((unsigned) &CLKRCON)*8) + 6;
5132 extern volatile __bit CLKRSLR @ (((unsigned) &CLKRCON)*8) + 5;
5134 extern volatile __bit CPSCH0 @ (((unsigned) &CPSCON1)*8) + 0;
5136 extern volatile __bit CPSCH1 @ (((unsigned) &CPSCON1)*8) + 1;
5138 extern volatile __bit CPSON @ (((unsigned) &CPSCON0)*8) + 7;
5140 extern volatile __bit CPSOUT @ (((unsigned) &CPSCON0)*8) + 1;
5142 extern volatile __bit CPSRM @ (((unsigned) &CPSCON0)*8) + 6;
5144 extern volatile __bit CPSRNG0 @ (((unsigned) &CPSCON0)*8) + 2;
5146 extern volatile __bit CPSRNG1 @ (((unsigned) &CPSCON0)*8) + 3;
5148 extern volatile __bit CREN @ (((unsigned) &RCSTA)*8) + 4;
5150 extern volatile __bit CSRC @ (((unsigned) &TXSTA)*8) + 7;
5152 extern volatile __bit C_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 0;
5154 extern volatile __bit DACEN @ (((unsigned) &DACCON0)*8) + 7;
5156 extern volatile __bit DACLPS @ (((unsigned) &DACCON0)*8) + 6;
5158 extern volatile __bit DACOE @ (((unsigned) &DACCON0)*8) + 5;
5160 extern volatile __bit DACPSS0 @ (((unsigned) &DACCON0)*8) + 2;
5162 extern volatile __bit DACPSS1 @ (((unsigned) &DACCON0)*8) + 3;
5164 extern volatile __bit DACR0 @ (((unsigned) &DACCON1)*8) + 0;
5166 extern volatile __bit DACR1 @ (((unsigned) &DACCON1)*8) + 1;
5168 extern volatile __bit DACR2 @ (((unsigned) &DACCON1)*8) + 2;
5170 extern volatile __bit DACR3 @ (((unsigned) &DACCON1)*8) + 3;
5172 extern volatile __bit DACR4 @ (((unsigned) &DACCON1)*8) + 4;
5174 extern volatile __bit DC @ (((unsigned) &STATUS)*8) + 1;
5176 extern volatile __bit DC1B0 @ (((unsigned) &CCP1CON)*8) + 4;
5178 extern volatile __bit DC1B1 @ (((unsigned) &CCP1CON)*8) + 5;
5180 extern volatile __bit DC_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 1;
5182 extern volatile __bit DHEN @ (((unsigned) &SSP1CON3)*8) + 0;
5184 extern volatile __bit D_nA @ (((unsigned) &SSP1STAT)*8) + 5;
5186 extern volatile __bit EEIE @ (((unsigned) &PIE2)*8) + 4;
5188 extern volatile __bit EEIF @ (((unsigned) &PIR2)*8) + 4;
5190 extern volatile __bit EEPGD @ (((unsigned) &EECON1)*8) + 7;
5192 extern volatile __bit FERR @ (((unsigned) &RCSTA)*8) + 2;
5194 extern volatile __bit FREE @ (((unsigned) &EECON1)*8) + 4;
5196 extern volatile __bit FVREN @ (((unsigned) &FVRCON)*8) + 7;
5198 extern volatile __bit FVRRDY @ (((unsigned) &FVRCON)*8) + 6;
5200 extern volatile __bit GCEN @ (((unsigned) &SSP1CON2)*8) + 7;
5202 extern volatile __bit GIE @ (((unsigned) &INTCON)*8) + 7;
5204 extern volatile __bit GO @ (((unsigned) &ADCON0)*8) + 1;
5206 extern volatile __bit GO_nDONE @ (((unsigned) &ADCON0)*8) + 1;
5208 extern volatile __bit HFIOFL @ (((unsigned) &OSCSTAT)*8) + 3;
5210 extern volatile __bit HFIOFR @ (((unsigned) &OSCSTAT)*8) + 4;
5212 extern volatile __bit HFIOFS @ (((unsigned) &OSCSTAT)*8) + 0;
5214 extern volatile __bit INTE @ (((unsigned) &INTCON)*8) + 4;
5216 extern volatile __bit INTEDG @ (((unsigned) &OPTION_REG)*8) + 6;
5218 extern volatile __bit INTF @ (((unsigned) &INTCON)*8) + 1;
5220 extern volatile __bit IOCAF0 @ (((unsigned) &IOCAF)*8) + 0;
5222 extern volatile __bit IOCAF1 @ (((unsigned) &IOCAF)*8) + 1;
5224 extern volatile __bit IOCAF2 @ (((unsigned) &IOCAF)*8) + 2;
5226 extern volatile __bit IOCAF3 @ (((unsigned) &IOCAF)*8) + 3;
5228 extern volatile __bit IOCAF4 @ (((unsigned) &IOCAF)*8) + 4;
5230 extern volatile __bit IOCAF5 @ (((unsigned) &IOCAF)*8) + 5;
5232 extern volatile __bit IOCAN0 @ (((unsigned) &IOCAN)*8) + 0;
5234 extern volatile __bit IOCAN1 @ (((unsigned) &IOCAN)*8) + 1;
5236 extern volatile __bit IOCAN2 @ (((unsigned) &IOCAN)*8) + 2;
5238 extern volatile __bit IOCAN3 @ (((unsigned) &IOCAN)*8) + 3;
5240 extern volatile __bit IOCAN4 @ (((unsigned) &IOCAN)*8) + 4;
5242 extern volatile __bit IOCAN5 @ (((unsigned) &IOCAN)*8) + 5;
5244 extern volatile __bit IOCAP0 @ (((unsigned) &IOCAP)*8) + 0;
5246 extern volatile __bit IOCAP1 @ (((unsigned) &IOCAP)*8) + 1;
5248 extern volatile __bit IOCAP2 @ (((unsigned) &IOCAP)*8) + 2;
5250 extern volatile __bit IOCAP3 @ (((unsigned) &IOCAP)*8) + 3;
5252 extern volatile __bit IOCAP4 @ (((unsigned) &IOCAP)*8) + 4;
5254 extern volatile __bit IOCAP5 @ (((unsigned) &IOCAP)*8) + 5;
5256 extern volatile __bit IOCIE @ (((unsigned) &INTCON)*8) + 3;
5258 extern volatile __bit IOCIF @ (((unsigned) &INTCON)*8) + 0;
5260 extern volatile __bit IRCF0 @ (((unsigned) &OSCCON)*8) + 3;
5262 extern volatile __bit IRCF1 @ (((unsigned) &OSCCON)*8) + 4;
5264 extern volatile __bit IRCF2 @ (((unsigned) &OSCCON)*8) + 5;
5266 extern volatile __bit IRCF3 @ (((unsigned) &OSCCON)*8) + 6;
5268 extern volatile __bit LATA0 @ (((unsigned) &LATA)*8) + 0;
5270 extern volatile __bit LATA1 @ (((unsigned) &LATA)*8) + 1;
5272 extern volatile __bit LATA2 @ (((unsigned) &LATA)*8) + 2;
5274 extern volatile __bit LATA4 @ (((unsigned) &LATA)*8) + 4;
5276 extern volatile __bit LATA5 @ (((unsigned) &LATA)*8) + 5;
5278 extern volatile __bit LFIOFR @ (((unsigned) &OSCSTAT)*8) + 1;
5280 extern volatile __bit LWLO @ (((unsigned) &EECON1)*8) + 5;
5282 extern volatile __bit MC1OUT @ (((unsigned) &CMOUT)*8) + 0;
5284 extern volatile __bit MDBIT @ (((unsigned) &MDCON)*8) + 0;
5286 extern volatile __bit MDCH0 @ (((unsigned) &MDCARH)*8) + 0;
5288 extern volatile __bit MDCH1 @ (((unsigned) &MDCARH)*8) + 1;
5290 extern volatile __bit MDCH2 @ (((unsigned) &MDCARH)*8) + 2;
5292 extern volatile __bit MDCH3 @ (((unsigned) &MDCARH)*8) + 3;
5294 extern volatile __bit MDCHODIS @ (((unsigned) &MDCARH)*8) + 7;
5296 extern volatile __bit MDCHPOL @ (((unsigned) &MDCARH)*8) + 6;
5298 extern volatile __bit MDCHSYNC @ (((unsigned) &MDCARH)*8) + 5;
5300 extern volatile __bit MDCL0 @ (((unsigned) &MDCARL)*8) + 0;
5302 extern volatile __bit MDCL1 @ (((unsigned) &MDCARL)*8) + 1;
5304 extern volatile __bit MDCL2 @ (((unsigned) &MDCARL)*8) + 2;
5306 extern volatile __bit MDCL3 @ (((unsigned) &MDCARL)*8) + 3;
5308 extern volatile __bit MDCLODIS @ (((unsigned) &MDCARL)*8) + 7;
5310 extern volatile __bit MDCLPOL @ (((unsigned) &MDCARL)*8) + 6;
5312 extern volatile __bit MDCLSYNC @ (((unsigned) &MDCARL)*8) + 5;
5314 extern volatile __bit MDEN @ (((unsigned) &MDCON)*8) + 7;
5316 extern volatile __bit MDMS0 @ (((unsigned) &MDSRC)*8) + 0;
5318 extern volatile __bit MDMS1 @ (((unsigned) &MDSRC)*8) + 1;
5320 extern volatile __bit MDMS2 @ (((unsigned) &MDSRC)*8) + 2;
5322 extern volatile __bit MDMS3 @ (((unsigned) &MDSRC)*8) + 3;
5324 extern volatile __bit MDMSODIS @ (((unsigned) &MDSRC)*8) + 7;
5326 extern volatile __bit MDOE @ (((unsigned) &MDCON)*8) + 6;
5328 extern volatile __bit MDOPOL @ (((unsigned) &MDCON)*8) + 4;
5330 extern volatile __bit MDOUT @ (((unsigned) &MDCON)*8) + 3;
5332 extern volatile __bit MDSLR @ (((unsigned) &MDCON)*8) + 5;
5334 extern volatile __bit MFIOFR @ (((unsigned) &OSCSTAT)*8) + 2;
5336 extern volatile __bit OERR @ (((unsigned) &RCSTA)*8) + 1;
5338 extern volatile __bit OSFIE @ (((unsigned) &PIE2)*8) + 7;
5340 extern volatile __bit OSFIF @ (((unsigned) &PIR2)*8) + 7;
5342 extern volatile __bit OSTS @ (((unsigned) &OSCSTAT)*8) + 5;
5344 extern volatile __bit P1BSEL @ (((unsigned) &APFCON)*8) + 1;
5346 extern volatile __bit P1DC0 @ (((unsigned) &PWM1CON)*8) + 0;
5348 extern volatile __bit P1DC1 @ (((unsigned) &PWM1CON)*8) + 1;
5350 extern volatile __bit P1DC2 @ (((unsigned) &PWM1CON)*8) + 2;
5352 extern volatile __bit P1DC3 @ (((unsigned) &PWM1CON)*8) + 3;
5354 extern volatile __bit P1DC4 @ (((unsigned) &PWM1CON)*8) + 4;
5356 extern volatile __bit P1DC5 @ (((unsigned) &PWM1CON)*8) + 5;
5358 extern volatile __bit P1DC6 @ (((unsigned) &PWM1CON)*8) + 6;
5360 extern volatile __bit P1M0 @ (((unsigned) &CCP1CON)*8) + 6;
5362 extern volatile __bit P1M1 @ (((unsigned) &CCP1CON)*8) + 7;
5364 extern volatile __bit P1RSEN @ (((unsigned) &PWM1CON)*8) + 7;
5366 extern volatile __bit PCIE @ (((unsigned) &SSP1CON3)*8) + 6;
5368 extern volatile __bit PEIE @ (((unsigned) &INTCON)*8) + 6;
5370 extern volatile __bit PEN @ (((unsigned) &SSP1CON2)*8) + 2;
5372 extern volatile __bit PLLR @ (((unsigned) &OSCSTAT)*8) + 6;
5374 extern volatile __bit PS0 @ (((unsigned) &OPTION_REG)*8) + 0;
5376 extern volatile __bit PS1 @ (((unsigned) &OPTION_REG)*8) + 1;
5378 extern volatile __bit PS2 @ (((unsigned) &OPTION_REG)*8) + 2;
5380 extern volatile __bit PSA @ (((unsigned) &OPTION_REG)*8) + 3;
5382 extern volatile __bit PSS1AC0 @ (((unsigned) &CCP1AS)*8) + 2;
5384 extern volatile __bit PSS1AC1 @ (((unsigned) &CCP1AS)*8) + 3;
5386 extern volatile __bit PSS1BD0 @ (((unsigned) &CCP1AS)*8) + 0;
5388 extern volatile __bit PSS1BD1 @ (((unsigned) &CCP1AS)*8) + 1;
5390 extern volatile __bit RA0 @ (((unsigned) &PORTA)*8) + 0;
5392 extern volatile __bit RA1 @ (((unsigned) &PORTA)*8) + 1;
5394 extern volatile __bit RA2 @ (((unsigned) &PORTA)*8) + 2;
5396 extern volatile __bit RA3 @ (((unsigned) &PORTA)*8) + 3;
5398 extern volatile __bit RA4 @ (((unsigned) &PORTA)*8) + 4;
5400 extern volatile __bit RA5 @ (((unsigned) &PORTA)*8) + 5;
5402 extern volatile __bit RCEN @ (((unsigned) &SSP1CON2)*8) + 3;
5404 extern volatile __bit RCIDL @ (((unsigned) &BAUDCON)*8) + 6;
5406 extern volatile __bit RCIE @ (((unsigned) &PIE1)*8) + 5;
5408 extern volatile __bit RCIF @ (((unsigned) &PIR1)*8) + 5;
5410 extern volatile __bit RD @ (((unsigned) &EECON1)*8) + 0;
5412 extern volatile __bit RSEN @ (((unsigned) &SSP1CON2)*8) + 1;
5414 extern volatile __bit RX9 @ (((unsigned) &RCSTA)*8) + 6;
5416 extern volatile __bit RX9D @ (((unsigned) &RCSTA)*8) + 0;
5418 extern volatile __bit RXDTSEL @ (((unsigned) &APFCON)*8) + 7;
5420 extern volatile __bit R_nW @ (((unsigned) &SSP1STAT)*8) + 2;
5422 extern volatile __bit SBCDE @ (((unsigned) &SSP1CON3)*8) + 2;
5424 extern volatile __bit SBOREN @ (((unsigned) &BORCON)*8) + 7;
5426 extern volatile __bit SCIE @ (((unsigned) &SSP1CON3)*8) + 5;
5428 extern volatile __bit SCKP @ (((unsigned) &BAUDCON)*8) + 4;
5430 extern volatile __bit SCS0 @ (((unsigned) &OSCCON)*8) + 0;
5432 extern volatile __bit SCS1 @ (((unsigned) &OSCCON)*8) + 1;
5434 extern volatile __bit SDAHT @ (((unsigned) &SSP1CON3)*8) + 3;
5436 extern volatile __bit SDO1SEL @ (((unsigned) &APFCON)*8) + 6;
5438 extern volatile __bit SDOSEL @ (((unsigned) &APFCON)*8) + 6;
5440 extern volatile __bit SEN @ (((unsigned) &SSP1CON2)*8) + 0;
5442 extern volatile __bit SENDB @ (((unsigned) &TXSTA)*8) + 3;
5444 extern volatile __bit SMP @ (((unsigned) &SSP1STAT)*8) + 7;
5446 extern volatile __bit SPEN @ (((unsigned) &RCSTA)*8) + 7;
5448 extern volatile __bit SPLLEN @ (((unsigned) &OSCCON)*8) + 7;
5450 extern volatile __bit SRCLK0 @ (((unsigned) &SRCON0)*8) + 4;
5452 extern volatile __bit SRCLK1 @ (((unsigned) &SRCON0)*8) + 5;
5454 extern volatile __bit SRCLK2 @ (((unsigned) &SRCON0)*8) + 6;
5456 extern volatile __bit SREN @ (((unsigned) &RCSTA)*8) + 5;
5458 extern volatile __bit SRLEN @ (((unsigned) &SRCON0)*8) + 7;
5460 extern volatile __bit SRNQEN @ (((unsigned) &SRCON0)*8) + 2;
5462 extern volatile __bit SRPR @ (((unsigned) &SRCON0)*8) + 0;
5464 extern volatile __bit SRPS @ (((unsigned) &SRCON0)*8) + 1;
5466 extern volatile __bit SRQEN @ (((unsigned) &SRCON0)*8) + 3;
5468 extern volatile __bit SRRC1E @ (((unsigned) &SRCON1)*8) + 0;
5470 extern volatile __bit SRRCKE @ (((unsigned) &SRCON1)*8) + 2;
5472 extern volatile __bit SRRPE @ (((unsigned) &SRCON1)*8) + 3;
5474 extern volatile __bit SRSC1E @ (((unsigned) &SRCON1)*8) + 4;
5476 extern volatile __bit SRSCKE @ (((unsigned) &SRCON1)*8) + 6;
5478 extern volatile __bit SRSPE @ (((unsigned) &SRCON1)*8) + 7;
5480 extern volatile __bit SS1SEL @ (((unsigned) &APFCON)*8) + 5;
5482 extern volatile __bit SSP1IE @ (((unsigned) &PIE1)*8) + 3;
5484 extern volatile __bit SSP1IF @ (((unsigned) &PIR1)*8) + 3;
5486 extern volatile __bit SSPEN @ (((unsigned) &SSP1CON1)*8) + 5;
5488 extern volatile __bit SSPM0 @ (((unsigned) &SSP1CON1)*8) + 0;
5490 extern volatile __bit SSPM1 @ (((unsigned) &SSP1CON1)*8) + 1;
5492 extern volatile __bit SSPM2 @ (((unsigned) &SSP1CON1)*8) + 2;
5494 extern volatile __bit SSPM3 @ (((unsigned) &SSP1CON1)*8) + 3;
5496 extern volatile __bit SSPOV @ (((unsigned) &SSP1CON1)*8) + 6;
5498 extern volatile __bit SSSEL @ (((unsigned) &APFCON)*8) + 5;
5500 extern volatile __bit STKOVF @ (((unsigned) &PCON)*8) + 7;
5502 extern volatile __bit STKUNF @ (((unsigned) &PCON)*8) + 6;
5504 extern volatile __bit STR1A @ (((unsigned) &PSTR1CON)*8) + 0;
5506 extern volatile __bit STR1B @ (((unsigned) &PSTR1CON)*8) + 1;
5508 extern volatile __bit STR1SYNC @ (((unsigned) &PSTR1CON)*8) + 4;
5510 extern volatile __bit SWDTEN @ (((unsigned) &WDTCON)*8) + 0;
5512 extern volatile __bit SYNC @ (((unsigned) &TXSTA)*8) + 4;
5514 extern volatile __bit T0CS @ (((unsigned) &OPTION_REG)*8) + 5;
5516 extern volatile __bit T0IE @ (((unsigned) &INTCON)*8) + 5;
5518 extern volatile __bit T0IF @ (((unsigned) &INTCON)*8) + 2;
5520 extern volatile __bit T0SE @ (((unsigned) &OPTION_REG)*8) + 4;
5522 extern volatile __bit T0XCS @ (((unsigned) &CPSCON0)*8) + 0;
5524 extern volatile __bit T1CKPS0 @ (((unsigned) &T1CON)*8) + 4;
5526 extern volatile __bit T1CKPS1 @ (((unsigned) &T1CON)*8) + 5;
5528 extern volatile __bit T1GGO @ (((unsigned) &T1GCON)*8) + 3;
5530 extern volatile __bit T1GGO_nDONE @ (((unsigned) &T1GCON)*8) + 3;
5532 extern volatile __bit T1GPOL @ (((unsigned) &T1GCON)*8) + 6;
5534 extern volatile __bit T1GSEL @ (((unsigned) &APFCON)*8) + 3;
5536 extern volatile __bit T1GSPM @ (((unsigned) &T1GCON)*8) + 4;
5538 extern volatile __bit T1GSS0 @ (((unsigned) &T1GCON)*8) + 0;
5540 extern volatile __bit T1GSS1 @ (((unsigned) &T1GCON)*8) + 1;
5542 extern volatile __bit T1GTM @ (((unsigned) &T1GCON)*8) + 5;
5544 extern volatile __bit T1GVAL @ (((unsigned) &T1GCON)*8) + 2;
5546 extern volatile __bit T1OSCEN @ (((unsigned) &T1CON)*8) + 3;
5548 extern volatile __bit T1OSCR @ (((unsigned) &OSCSTAT)*8) + 7;
5550 extern volatile __bit T2CKPS0 @ (((unsigned) &T2CON)*8) + 0;
5552 extern volatile __bit T2CKPS1 @ (((unsigned) &T2CON)*8) + 1;
5554 extern volatile __bit T2OUTPS0 @ (((unsigned) &T2CON)*8) + 3;
5556 extern volatile __bit T2OUTPS1 @ (((unsigned) &T2CON)*8) + 4;
5558 extern volatile __bit T2OUTPS2 @ (((unsigned) &T2CON)*8) + 5;
5560 extern volatile __bit T2OUTPS3 @ (((unsigned) &T2CON)*8) + 6;
5562 extern volatile __bit TMR0CS @ (((unsigned) &OPTION_REG)*8) + 5;
5564 extern volatile __bit TMR0IE @ (((unsigned) &INTCON)*8) + 5;
5566 extern volatile __bit TMR0IF @ (((unsigned) &INTCON)*8) + 2;
5568 extern volatile __bit TMR0SE @ (((unsigned) &OPTION_REG)*8) + 4;
5570 extern volatile __bit TMR1CS0 @ (((unsigned) &T1CON)*8) + 6;
5572 extern volatile __bit TMR1CS1 @ (((unsigned) &T1CON)*8) + 7;
5574 extern volatile __bit TMR1GE @ (((unsigned) &T1GCON)*8) + 7;
5576 extern volatile __bit TMR1GIE @ (((unsigned) &PIE1)*8) + 7;
5578 extern volatile __bit TMR1GIF @ (((unsigned) &PIR1)*8) + 7;
5580 extern volatile __bit TMR1IE @ (((unsigned) &PIE1)*8) + 0;
5582 extern volatile __bit TMR1IF @ (((unsigned) &PIR1)*8) + 0;
5584 extern volatile __bit TMR1ON @ (((unsigned) &T1CON)*8) + 0;
5586 extern volatile __bit TMR2IE @ (((unsigned) &PIE1)*8) + 1;
5588 extern volatile __bit TMR2IF @ (((unsigned) &PIR1)*8) + 1;
5590 extern volatile __bit TMR2ON @ (((unsigned) &T2CON)*8) + 2;
5592 extern volatile __bit TRISA0 @ (((unsigned) &TRISA)*8) + 0;
5594 extern volatile __bit TRISA1 @ (((unsigned) &TRISA)*8) + 1;
5596 extern volatile __bit TRISA2 @ (((unsigned) &TRISA)*8) + 2;
5598 extern volatile __bit TRISA3 @ (((unsigned) &TRISA)*8) + 3;
5600 extern volatile __bit TRISA4 @ (((unsigned) &TRISA)*8) + 4;
5602 extern volatile __bit TRISA5 @ (((unsigned) &TRISA)*8) + 5;
5604 extern volatile __bit TRMT @ (((unsigned) &TXSTA)*8) + 1;
5606 extern volatile __bit TSEN @ (((unsigned) &FVRCON)*8) + 5;
5608 extern volatile __bit TSRNG @ (((unsigned) &FVRCON)*8) + 4;
5610 extern volatile __bit TUN0 @ (((unsigned) &OSCTUNE)*8) + 0;
5612 extern volatile __bit TUN1 @ (((unsigned) &OSCTUNE)*8) + 1;
5614 extern volatile __bit TUN2 @ (((unsigned) &OSCTUNE)*8) + 2;
5616 extern volatile __bit TUN3 @ (((unsigned) &OSCTUNE)*8) + 3;
5618 extern volatile __bit TUN4 @ (((unsigned) &OSCTUNE)*8) + 4;
5620 extern volatile __bit TUN5 @ (((unsigned) &OSCTUNE)*8) + 5;
5622 extern volatile __bit TX9 @ (((unsigned) &TXSTA)*8) + 6;
5624 extern volatile __bit TX9D @ (((unsigned) &TXSTA)*8) + 0;
5626 extern volatile __bit TXCKSEL @ (((unsigned) &APFCON)*8) + 2;
5628 extern volatile __bit TXEN @ (((unsigned) &TXSTA)*8) + 5;
5630 extern volatile __bit TXIE @ (((unsigned) &PIE1)*8) + 4;
5632 extern volatile __bit TXIF @ (((unsigned) &PIR1)*8) + 4;
5634 extern volatile __bit UA @ (((unsigned) &SSP1STAT)*8) + 1;
5636 extern volatile __bit VREGPM0 @ (((unsigned) &VREGCON)*8) + 0;
5638 extern volatile __bit VREGPM1 @ (((unsigned) &VREGCON)*8) + 1;
5640 extern volatile __bit WCOL @ (((unsigned) &SSP1CON1)*8) + 7;
5642 extern volatile __bit WDTPS0 @ (((unsigned) &WDTCON)*8) + 1;
5644 extern volatile __bit WDTPS1 @ (((unsigned) &WDTCON)*8) + 2;
5646 extern volatile __bit WDTPS2 @ (((unsigned) &WDTCON)*8) + 3;
5648 extern volatile __bit WDTPS3 @ (((unsigned) &WDTCON)*8) + 4;
5650 extern volatile __bit WDTPS4 @ (((unsigned) &WDTCON)*8) + 5;
5652 extern volatile __bit WPUA0 @ (((unsigned) &WPUA)*8) + 0;
5654 extern volatile __bit WPUA1 @ (((unsigned) &WPUA)*8) + 1;
5656 extern volatile __bit WPUA2 @ (((unsigned) &WPUA)*8) + 2;
5658 extern volatile __bit WPUA3 @ (((unsigned) &WPUA)*8) + 3;
5660 extern volatile __bit WPUA4 @ (((unsigned) &WPUA)*8) + 4;
5662 extern volatile __bit WPUA5 @ (((unsigned) &WPUA)*8) + 5;
5664 extern volatile __bit WR @ (((unsigned) &EECON1)*8) + 1;
5666 extern volatile __bit WREN @ (((unsigned) &EECON1)*8) + 2;
5668 extern volatile __bit WRERR @ (((unsigned) &EECON1)*8) + 3;
5670 extern volatile __bit WUE @ (((unsigned) &BAUDCON)*8) + 1;
5672 extern volatile __bit ZERO @ (((unsigned) &STATUS)*8) + 2;
5674 extern volatile __bit Z_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 2;
5676 extern volatile __bit nBOR @ (((unsigned) &PCON)*8) + 0;
5678 extern volatile __bit nPD @ (((unsigned) &STATUS)*8) + 3;
5680 extern volatile __bit nPOR @ (((unsigned) &PCON)*8) + 1;
5682 extern volatile __bit nRI @ (((unsigned) &PCON)*8) + 2;
5684 extern volatile __bit nRMCLR @ (((unsigned) &PCON)*8) + 3;
5686 extern volatile __bit nT1SYNC @ (((unsigned) &T1CON)*8) + 2;
5688 extern volatile __bit nTO @ (((unsigned) &STATUS)*8) + 4;
5690 extern volatile __bit nWPUEN @ (((unsigned) &OPTION_REG)*8) + 7;
5693 void ConfigureOscillator(void);
5697 bool msg_empty(void);
5698 void msg_write(const char *msg);
5699 void msg_writebyte(const char msg);
5700 void msg_sendnext(void);
5701 void tohex(char val[3], char i);
5702 void msg_recvnext(void);
5703 bool msg_recvready(void);
5704 char msg_recv(void);
5707 void int_disable(void);
5708 void int_enable(void);
5711 bool OW_reset(void);
5712 void OW_write_bit(bool val);
5714 void OW_write_byte(unsigned char byte);
5715 unsigned char OW_read_byte(void);
5717 void OW_search_init();
5718 bool OW_search(void);
5719 void OW_start(void);
5722 bool OW_parasite(void);
5723 void OW_read_block(uint8_t code, uint8_t * data, uint8_t len);
5727 inline void drive_OW_low(void);
5728 inline void drive_OW_high(void);
5729 inline void float_OW(void);
5730 inline bool read_OW(void);
5732 extern unsigned char romid[8];
5745 const char * banner = "\r\n\n\nPIC 1-Wire Bridge system. Press 'H' for help.\r\n";
5762 ConfigureOscillator();
5775 if (TRISAbits.TRISA5 == 1) {
5777 prompt[5] = PORTAbits.RA5 ? '1':'0';
5780 prompt[5] = PORTAbits.RA5 ? '1':'0';
5783 if (!msg_empty()) continue;
5785 if (!msg_recvready()) continue;
5787 char cmd = msg_recv();
5789 if (cmd == '\r' || cmd == '\n') {
5790 if (usermode) msg_write("\r\n");
5792 if (cmd == 'h' || cmd == 'H') {
5794 msg_write("\nHelp:\r\n");
5795 while (!msg_empty());
5796 msg_write("E - Enumerate the Bus\r\n");
5797 msg_write("R - Reset Bus\r\n");
5798 while (!msg_empty());
5799 msg_write("0,1,3 - bus to Low, High, Tristate\r\n");
5800 msg_write("I - Read (one) Device ID\r\n");
5801 while (!msg_empty());
5802 msg_write("P - Any device parasitic powered?\r\n");
5803 msg_write("S - Read scratchpad memory\r\n");
5804 while (!msg_empty());
5805 msg_write("T - read temperature of all devices\r\n");
5808 if (cmd == 'r' || cmd == 'R') {
5810 bool present = OW_reset();
5812 if (usermode) msg_write("\r");
5814 msg_write("RESET Device detected.\r\n");
5816 msg_write("RESET No Devices detected.\r\n");
5818 if (cmd == 'e' || cmd == 'E')
5821 if (usermode) msg_write("\r");
5826 if (usermode) msg_write("ENUM ");
5827 for (char j=0; j<8; j++) {
5828 tohex(val, romid[j]);
5831 if (usermode) msg_write("\r\n"); else msg_write("\n");
5835 if (count==0) msg_write("ERROR No devices found\r\n");
5840 if (cmd == 'i' || cmd == 'I') {
5843 if (usermode) msg_write("\rID ");
5844 for (char j=0; j<8; j++) {
5845 tohex(val, romid[j]);
5848 if (usermode) msg_write("\r\n"); else msg_write("\n");
5850 if (cmd == 'p' || cmd == 'P') {
5851 if (usermode) msg_write("\r");
5852 bool para = OW_parasite();
5855 msg_write("PARA A Device is parasite powered\r\n");
5857 msg_write("PARA No Device is parasite powered.\r\n");
5859 if (para) msg_write("PARA\n"); else msg_write("DIRECT\n");
5862 if (cmd == 's' || cmd =='S') {
5865 OW_read_block(0xBE, scratch, 9);
5866 if (usermode) msg_write("\rSCRATCH");
5867 for (char j=0; j<9; j++) {
5869 tohex(val, scratch[j]);
5873 if (usermode) msg_write("\r\n"); else msg_write("\n");
5875 if (cmd == 't' || cmd == 'T') {
5890 for (char j=0; j<9; j++) scratch[j]=0;
5893 OW_read_block(0xBE, scratch, 9);
5896 if (usermode) msg_write("\r");
5898 for (char j=0;j<8;j++) {
5899 tohex(val, romid[j]);
5903 tohex(val, scratch[1]);
5905 tohex(val, scratch[0]);
5907 if (usermode) msg_write("\r\n"); else msg_write("\n");
5910 if (!usermode) msg_write("END\n");
5917 msg_write("\rBUS 1-Wire set low\r\n");
5925 msg_write("\rBUS 1-wire set high\r\n");
5927 msg_write("HIGH\n");
5933 msg_write("\rBUS 1-wire set to tri-state\r\n");
5935 msg_write("TRISTATE\n");
5940 msg_write("Play dead.\r\n");
5941 while (1) { _nop(); }
5945 bool line = read_OW();
5947 if (usermode) msg_write("\rBUS HIGH\r\n");
5949 msg_write("HIGH\n");
5951 if (usermode) msg_write("\rBUS LOW\r\n");
5952 else msg_write("LOW\n");
5957 msg_write("ERROR Press H for Help\n");
5959 msg_write("\rERROR Unknown command '");
5961 msg_write("' Press 'H' for help.\r\n");
5965 if (usermode) msg_write(prompt);
5970 void tohex(char val[], char i)
5974 val[0] = 'A' + (bt - 10);
5979 val[1] = 'A' + (bt - 10);
5987 bool msg_empty(void)
5989 if (outp == 0) return 1;
5994 void msg_write(const char *msg)
5996 char * p = outbuff + outlen;
5997 while (outlen < sizeof(outbuff) && *msg != 0) {
6008 void msg_writebyte(const char msg)
6010 if (outlen+1 >= (uint8_t)sizeof(outbuff)) return;
6011 outbuff[outlen++] = msg;
6012 outbuff[outlen] = 0;
6019 void putch(char data)
6021 msg_writebyte(data);
6025 void msg_sendnext(void)
6028 if (outp == 0 || *outp == 0) {
6039 void msg_recvnext(void)
6041 while (PIR1bits.RCIF) {
6042 bool err = RCSTAbits.FERR;
6049 if (inlen > sizeof(inbuff)) return;
6052 inbuff[inlen++] = new;
6056 bool msg_recvready(void)
6058 if (inlen > 0) return 1;
6064 if (inlen == 0) return 0;
6067 bool in = PIE1bits.RCIE;
6070 char new = inbuff[0];
6074 for (char i=0;i<inlen;i++)
6075 inbuff[i] = inbuff[i+1];
6083 void int_disable(void)
6088 void int_enable(void)