
# 1 "main.c"

# 26 "C:\Program Files (x86)\Microchip\xc8\v1.38\include\htc.h"
extern const char __xc8_OPTIM_SPEED;

extern double __fpnormalize(double);


# 13 "C:\Program Files (x86)\Microchip\xc8\v1.38\include\xc8debug.h"
#pragma intrinsic(__builtin_software_breakpoint)
extern void __builtin_software_breakpoint(void);

# 49 "C:\Program Files (x86)\Microchip\xc8\v1.38\include\pic12lf1572.h"
extern volatile unsigned char INDF0 @ 0x000;

asm("INDF0 equ 00h");


typedef union {
struct {
unsigned INDF0 :8;
};
} INDF0bits_t;
extern volatile INDF0bits_t INDF0bits @ 0x000;

# 68
extern volatile unsigned char INDF1 @ 0x001;

asm("INDF1 equ 01h");


typedef union {
struct {
unsigned INDF1 :8;
};
} INDF1bits_t;
extern volatile INDF1bits_t INDF1bits @ 0x001;

# 87
extern volatile unsigned char PCL @ 0x002;

asm("PCL equ 02h");


typedef union {
struct {
unsigned PCL :8;
};
} PCLbits_t;
extern volatile PCLbits_t PCLbits @ 0x002;

# 106
extern volatile unsigned char STATUS @ 0x003;

asm("STATUS equ 03h");


typedef union {
struct {
unsigned C :1;
unsigned DC :1;
unsigned Z :1;
unsigned nPD :1;
unsigned nTO :1;
};
struct {
unsigned CARRY :1;
};
struct {
unsigned :2;
unsigned ZERO :1;
};
} STATUSbits_t;
extern volatile STATUSbits_t STATUSbits @ 0x003;

# 166
extern volatile unsigned short FSR0 @ 0x004;


extern volatile unsigned char FSR0L @ 0x004;

asm("FSR0L equ 04h");


typedef union {
struct {
unsigned FSR0L :8;
};
} FSR0Lbits_t;
extern volatile FSR0Lbits_t FSR0Lbits @ 0x004;

# 188
extern volatile unsigned char FSR0H @ 0x005;

asm("FSR0H equ 05h");


typedef union {
struct {
unsigned FSR0H :8;
};
} FSR0Hbits_t;
extern volatile FSR0Hbits_t FSR0Hbits @ 0x005;

# 207
extern volatile unsigned short FSR1 @ 0x006;


extern volatile unsigned char FSR1L @ 0x006;

asm("FSR1L equ 06h");


typedef union {
struct {
unsigned FSR1L :8;
};
} FSR1Lbits_t;
extern volatile FSR1Lbits_t FSR1Lbits @ 0x006;

# 229
extern volatile unsigned char FSR1H @ 0x007;

asm("FSR1H equ 07h");


typedef union {
struct {
unsigned FSR1H :8;
};
} FSR1Hbits_t;
extern volatile FSR1Hbits_t FSR1Hbits @ 0x007;

# 248
extern volatile unsigned char BSR @ 0x008;

asm("BSR equ 08h");


typedef union {
struct {
unsigned BSR0 :1;
unsigned BSR1 :1;
unsigned BSR2 :1;
unsigned BSR3 :1;
unsigned BSR4 :1;
};
struct {
unsigned BSR :5;
};
} BSRbits_t;
extern volatile BSRbits_t BSRbits @ 0x008;

# 299
extern volatile unsigned char WREG @ 0x009;

asm("WREG equ 09h");


typedef union {
struct {
unsigned WREG0 :8;
};
} WREGbits_t;
extern volatile WREGbits_t WREGbits @ 0x009;

# 318
extern volatile unsigned char PCLATH @ 0x00A;

asm("PCLATH equ 0Ah");


typedef union {
struct {
unsigned PCLATH :7;
};
} PCLATHbits_t;
extern volatile PCLATHbits_t PCLATHbits @ 0x00A;

# 337
extern volatile unsigned char INTCON @ 0x00B;

asm("INTCON equ 0Bh");


typedef union {
struct {
unsigned IOCIF :1;
unsigned INTF :1;
unsigned TMR0IF :1;
unsigned IOCIE :1;
unsigned INTE :1;
unsigned TMR0IE :1;
unsigned PEIE :1;
unsigned GIE :1;
};
struct {
unsigned :2;
unsigned T0IF :1;
unsigned :2;
unsigned T0IE :1;
};
} INTCONbits_t;
extern volatile INTCONbits_t INTCONbits @ 0x00B;

# 414
extern volatile unsigned char PORTA @ 0x00C;

asm("PORTA equ 0Ch");


typedef union {
struct {
unsigned RA0 :1;
unsigned RA1 :1;
unsigned RA2 :1;
unsigned RA3 :1;
unsigned RA4 :1;
unsigned RA5 :1;
};
struct {
unsigned PORTA :6;
};
} PORTAbits_t;
extern volatile PORTAbits_t PORTAbits @ 0x00C;

# 471
extern volatile unsigned char PIR1 @ 0x011;

asm("PIR1 equ 011h");


typedef union {
struct {
unsigned TMR1IF :1;
unsigned TMR2IF :1;
unsigned :2;
unsigned TXIF :1;
unsigned RCIF :1;
unsigned ADIF :1;
unsigned TMR1GIF :1;
};
} PIR1bits_t;
extern volatile PIR1bits_t PIR1bits @ 0x011;

# 521
extern volatile unsigned char PIR2 @ 0x012;

asm("PIR2 equ 012h");


typedef union {
struct {
unsigned :5;
unsigned C1IF :1;
};
} PIR2bits_t;
extern volatile PIR2bits_t PIR2bits @ 0x012;

# 541
extern volatile unsigned char PIR3 @ 0x013;

asm("PIR3 equ 013h");


typedef union {
struct {
unsigned :4;
unsigned PWM1IF :1;
unsigned PWM2IF :1;
unsigned PWM3IF :1;
};
} PIR3bits_t;
extern volatile PIR3bits_t PIR3bits @ 0x013;

# 573
extern volatile unsigned char TMR0 @ 0x015;

asm("TMR0 equ 015h");


typedef union {
struct {
unsigned TMR0 :8;
};
} TMR0bits_t;
extern volatile TMR0bits_t TMR0bits @ 0x015;

# 592
extern volatile unsigned short TMR1 @ 0x016;

asm("TMR1 equ 016h");



extern volatile unsigned char TMR1L @ 0x016;

asm("TMR1L equ 016h");


typedef union {
struct {
unsigned TMR1L :8;
};
} TMR1Lbits_t;
extern volatile TMR1Lbits_t TMR1Lbits @ 0x016;

# 617
extern volatile unsigned char TMR1H @ 0x017;

asm("TMR1H equ 017h");


typedef union {
struct {
unsigned TMR1H :8;
};
} TMR1Hbits_t;
extern volatile TMR1Hbits_t TMR1Hbits @ 0x017;

# 636
extern volatile unsigned char T1CON @ 0x018;

asm("T1CON equ 018h");


typedef union {
struct {
unsigned TMR1ON :1;
unsigned :1;
unsigned nT1SYNC :1;
unsigned :1;
unsigned T1CKPS0 :1;
unsigned T1CKPS1 :1;
unsigned TMR1CS0 :1;
unsigned TMR1CS1 :1;
};
struct {
unsigned :4;
unsigned T1CKPS :2;
unsigned TMR1CS :2;
};
} T1CONbits_t;
extern volatile T1CONbits_t T1CONbits @ 0x018;

# 702
extern volatile unsigned char T1GCON @ 0x019;

asm("T1GCON equ 019h");


typedef union {
struct {
unsigned T1GSS0 :1;
unsigned T1GSS1 :1;
unsigned T1GVAL :1;
unsigned T1GGO_nDONE :1;
unsigned T1GSPM :1;
unsigned T1GTM :1;
unsigned T1GPOL :1;
unsigned TMR1GE :1;
};
struct {
unsigned T1GSS :2;
unsigned :1;
unsigned T1GGO :1;
};
} T1GCONbits_t;
extern volatile T1GCONbits_t T1GCONbits @ 0x019;

# 778
extern volatile unsigned char TMR2 @ 0x01A;

asm("TMR2 equ 01Ah");


typedef union {
struct {
unsigned TMR2 :8;
};
} TMR2bits_t;
extern volatile TMR2bits_t TMR2bits @ 0x01A;

# 797
extern volatile unsigned char PR2 @ 0x01B;

asm("PR2 equ 01Bh");


typedef union {
struct {
unsigned PR2 :8;
};
} PR2bits_t;
extern volatile PR2bits_t PR2bits @ 0x01B;

# 816
extern volatile unsigned char T2CON @ 0x01C;

asm("T2CON equ 01Ch");


typedef union {
struct {
unsigned T2CKPS0 :1;
unsigned T2CKPS1 :1;
unsigned :1;
unsigned T2OUTPS0 :1;
unsigned T2OUTPS1 :1;
unsigned T2OUTPS2 :1;
unsigned T2OUTPS3 :1;
};
struct {
unsigned T2CKPS :2;
unsigned TMR2ON :1;
unsigned T2OUTPS :4;
};
} T2CONbits_t;
extern volatile T2CONbits_t T2CONbits @ 0x01C;

# 886
extern volatile unsigned char TRISA @ 0x08C;

asm("TRISA equ 08Ch");


typedef union {
struct {
unsigned TRISA0 :1;
unsigned TRISA1 :1;
unsigned TRISA2 :1;
unsigned TRISA3 :1;
unsigned TRISA4 :1;
unsigned TRISA5 :1;
};
struct {
unsigned TRISA :6;
};
} TRISAbits_t;
extern volatile TRISAbits_t TRISAbits @ 0x08C;

# 943
extern volatile unsigned char PIE1 @ 0x091;

asm("PIE1 equ 091h");


typedef union {
struct {
unsigned TMR1IE :1;
unsigned TMR2IE :1;
unsigned :2;
unsigned TXIE :1;
unsigned RCIE :1;
unsigned ADIE :1;
unsigned TMR1GIE :1;
};
} PIE1bits_t;
extern volatile PIE1bits_t PIE1bits @ 0x091;

# 993
extern volatile unsigned char PIE2 @ 0x092;

asm("PIE2 equ 092h");


typedef union {
struct {
unsigned :5;
unsigned C1IE :1;
};
} PIE2bits_t;
extern volatile PIE2bits_t PIE2bits @ 0x092;

# 1013
extern volatile unsigned char PIE3 @ 0x093;

asm("PIE3 equ 093h");


typedef union {
struct {
unsigned :4;
unsigned PWM1IE :1;
unsigned PWM2IE :1;
unsigned PWM3IE :1;
};
} PIE3bits_t;
extern volatile PIE3bits_t PIE3bits @ 0x093;

# 1045
extern volatile unsigned char OPTION_REG @ 0x095;

asm("OPTION_REG equ 095h");


typedef union {
struct {
unsigned PS0 :1;
unsigned PS1 :1;
unsigned PS2 :1;
unsigned PSA :1;
unsigned TMR0SE :1;
unsigned TMR0CS :1;
unsigned INTEDG :1;
unsigned nWPUEN :1;
};
struct {
unsigned PS :3;
unsigned :1;
unsigned T0SE :1;
unsigned T0CS :1;
};
} OPTION_REGbits_t;
extern volatile OPTION_REGbits_t OPTION_REGbits @ 0x095;

# 1127
extern volatile unsigned char PCON @ 0x096;

asm("PCON equ 096h");


typedef union {
struct {
unsigned nBOR :1;
unsigned nPOR :1;
unsigned nRI :1;
unsigned nRMCLR :1;
unsigned nRWDT :1;
unsigned :1;
unsigned STKUNF :1;
unsigned STKOVF :1;
};
} PCONbits_t;
extern volatile PCONbits_t PCONbits @ 0x096;

# 1183
extern volatile unsigned char WDTCON @ 0x097;

asm("WDTCON equ 097h");


typedef union {
struct {
unsigned SWDTEN :1;
unsigned WDTPS0 :1;
unsigned WDTPS1 :1;
unsigned WDTPS2 :1;
unsigned WDTPS3 :1;
unsigned WDTPS4 :1;
};
struct {
unsigned :1;
unsigned WDTPS :5;
};
} WDTCONbits_t;
extern volatile WDTCONbits_t WDTCONbits @ 0x097;

# 1241
extern volatile unsigned char OSCTUNE @ 0x098;

asm("OSCTUNE equ 098h");


typedef union {
struct {
unsigned TUN0 :1;
unsigned TUN1 :1;
unsigned TUN2 :1;
unsigned TUN3 :1;
unsigned TUN4 :1;
unsigned TUN5 :1;
};
struct {
unsigned TUN :6;
};
} OSCTUNEbits_t;
extern volatile OSCTUNEbits_t OSCTUNEbits @ 0x098;

# 1298
extern volatile unsigned char OSCCON @ 0x099;

asm("OSCCON equ 099h");


typedef union {
struct {
unsigned SCS0 :1;
unsigned SCS1 :1;
unsigned :1;
unsigned IRCF0 :1;
unsigned IRCF1 :1;
unsigned IRCF2 :1;
unsigned IRCF3 :1;
unsigned SPLLEN :1;
};
struct {
unsigned SCS :2;
unsigned :1;
unsigned IRCF :4;
};
} OSCCONbits_t;
extern volatile OSCCONbits_t OSCCONbits @ 0x099;

# 1369
extern volatile unsigned char OSCSTAT @ 0x09A;

asm("OSCSTAT equ 09Ah");


typedef union {
struct {
unsigned HFIOFS :1;
unsigned LFIOFR :1;
unsigned MFIOFR :1;
unsigned HFIOFL :1;
unsigned HFIOFR :1;
unsigned OSTS :1;
unsigned PLLR :1;
};
} OSCSTATbits_t;
extern volatile OSCSTATbits_t OSCSTATbits @ 0x09A;

# 1424
extern volatile unsigned short ADRES @ 0x09B;

asm("ADRES equ 09Bh");



extern volatile unsigned char ADRESL @ 0x09B;

asm("ADRESL equ 09Bh");


typedef union {
struct {
unsigned ADRESL :8;
};
} ADRESLbits_t;
extern volatile ADRESLbits_t ADRESLbits @ 0x09B;

# 1449
extern volatile unsigned char ADRESH @ 0x09C;

asm("ADRESH equ 09Ch");


typedef union {
struct {
unsigned ADRESH :8;
};
} ADRESHbits_t;
extern volatile ADRESHbits_t ADRESHbits @ 0x09C;

# 1468
extern volatile unsigned char ADCON0 @ 0x09D;

asm("ADCON0 equ 09Dh");


typedef union {
struct {
unsigned ADON :1;
unsigned GO_nDONE :1;
unsigned CHS0 :1;
unsigned CHS1 :1;
unsigned CHS2 :1;
unsigned CHS3 :1;
unsigned CHS4 :1;
};
struct {
unsigned :1;
unsigned ADGO :1;
unsigned CHS :5;
};
struct {
unsigned :1;
unsigned GO :1;
};
struct {
unsigned :1;
unsigned nDONE :1;
};
} ADCON0bits_t;
extern volatile ADCON0bits_t ADCON0bits @ 0x09D;

# 1556
extern volatile unsigned char ADCON1 @ 0x09E;

asm("ADCON1 equ 09Eh");


typedef union {
struct {
unsigned ADPREF0 :1;
unsigned ADPREF1 :1;
unsigned :2;
unsigned ADCS0 :1;
unsigned ADCS1 :1;
unsigned ADCS2 :1;
unsigned ADFM :1;
};
struct {
unsigned ADPREF :2;
unsigned :2;
unsigned ADCS :3;
};
} ADCON1bits_t;
extern volatile ADCON1bits_t ADCON1bits @ 0x09E;

# 1621
extern volatile unsigned char ADCON2 @ 0x09F;

asm("ADCON2 equ 09Fh");


typedef union {
struct {
unsigned :4;
unsigned TRIGSEL0 :1;
unsigned TRIGSEL1 :1;
unsigned TRIGSEL2 :1;
unsigned TRIGSEL3 :1;
};
struct {
unsigned :4;
unsigned TRIGSEL :4;
};
} ADCON2bits_t;
extern volatile ADCON2bits_t ADCON2bits @ 0x09F;

# 1668
extern volatile unsigned char LATA @ 0x10C;

asm("LATA equ 010Ch");


typedef union {
struct {
unsigned LATA0 :1;
unsigned LATA1 :1;
unsigned LATA2 :1;
unsigned :1;
unsigned LATA4 :1;
unsigned LATA5 :1;
};
struct {
unsigned LATA :6;
};
} LATAbits_t;
extern volatile LATAbits_t LATAbits @ 0x10C;

# 1720
extern volatile unsigned char CM1CON0 @ 0x111;

asm("CM1CON0 equ 0111h");


typedef union {
struct {
unsigned C1SYNC :1;
unsigned C1HYS :1;
unsigned C1SP :1;
unsigned :1;
unsigned C1POL :1;
unsigned C1OE :1;
unsigned C1OUT :1;
unsigned C1ON :1;
};
} CM1CON0bits_t;
extern volatile CM1CON0bits_t CM1CON0bits @ 0x111;

# 1776
extern volatile unsigned char CM1CON1 @ 0x112;

asm("CM1CON1 equ 0112h");


typedef union {
struct {
unsigned C1NCH0 :1;
unsigned C1NCH1 :1;
unsigned C1NCH2 :1;
unsigned :1;
unsigned C1PCH0 :1;
unsigned C1PCH1 :1;
unsigned C1INTN :1;
unsigned C1INTP :1;
};
struct {
unsigned C1NCH :3;
unsigned :1;
unsigned C1PCH :2;
};
} CM1CON1bits_t;
extern volatile CM1CON1bits_t CM1CON1bits @ 0x112;

# 1847
extern volatile unsigned char CMOUT @ 0x115;

asm("CMOUT equ 0115h");


typedef union {
struct {
unsigned MC1OUT :1;
};
} CMOUTbits_t;
extern volatile CMOUTbits_t CMOUTbits @ 0x115;

# 1866
extern volatile unsigned char BORCON @ 0x116;

asm("BORCON equ 0116h");


typedef union {
struct {
unsigned BORRDY :1;
unsigned :5;
unsigned BORFS :1;
unsigned SBOREN :1;
};
} BORCONbits_t;
extern volatile BORCONbits_t BORCONbits @ 0x116;

# 1898
extern volatile unsigned char FVRCON @ 0x117;

asm("FVRCON equ 0117h");


typedef union {
struct {
unsigned ADFVR0 :1;
unsigned ADFVR1 :1;
unsigned CDAFVR0 :1;
unsigned CDAFVR1 :1;
unsigned TSRNG :1;
unsigned TSEN :1;
unsigned FVRRDY :1;
unsigned FVREN :1;
};
struct {
unsigned ADFVR :2;
unsigned CDAFVR :2;
};
} FVRCONbits_t;
extern volatile FVRCONbits_t FVRCONbits @ 0x117;

# 1973
extern volatile unsigned char DACCON0 @ 0x118;

asm("DACCON0 equ 0118h");


typedef union {
struct {
unsigned :2;
unsigned DACPSS0 :1;
unsigned DACPSS1 :1;
unsigned :1;
unsigned DACOE :1;
unsigned DACLPS :1;
unsigned DACEN :1;
};
struct {
unsigned :2;
unsigned DACPSS :2;
};
} DACCON0bits_t;
extern volatile DACCON0bits_t DACCON0bits @ 0x118;

# 2027
extern volatile unsigned char DACCON1 @ 0x119;

asm("DACCON1 equ 0119h");


typedef union {
struct {
unsigned DACR0 :1;
unsigned DACR1 :1;
unsigned DACR2 :1;
unsigned DACR3 :1;
unsigned DACR4 :1;
};
struct {
unsigned DACR :5;
};
} DACCON1bits_t;
extern volatile DACCON1bits_t DACCON1bits @ 0x119;

# 2078
extern volatile unsigned char APFCON @ 0x11D;

asm("APFCON equ 011Dh");


extern volatile unsigned char APFCON0 @ 0x11D;

asm("APFCON0 equ 011Dh");


typedef union {
struct {
unsigned P1SEL :1;
unsigned P2SEL :1;
unsigned TXCKSEL :1;
unsigned T1GSEL :1;
unsigned :1;
unsigned CWGBSEL :1;
unsigned CWGASEL :1;
unsigned RXDTSEL :1;
};
} APFCONbits_t;
extern volatile APFCONbits_t APFCONbits @ 0x11D;

# 2138
typedef union {
struct {
unsigned P1SEL :1;
unsigned P2SEL :1;
unsigned TXCKSEL :1;
unsigned T1GSEL :1;
unsigned :1;
unsigned CWGBSEL :1;
unsigned CWGASEL :1;
unsigned RXDTSEL :1;
};
} APFCON0bits_t;
extern volatile APFCON0bits_t APFCON0bits @ 0x11D;

# 2189
extern volatile unsigned char ANSELA @ 0x18C;

asm("ANSELA equ 018Ch");


typedef union {
struct {
unsigned ANSA0 :1;
unsigned ANSA1 :1;
unsigned ANSA2 :1;
unsigned :1;
unsigned ANSA4 :1;
};
struct {
unsigned ANSELA :5;
};
} ANSELAbits_t;
extern volatile ANSELAbits_t ANSELAbits @ 0x18C;

# 2235
extern volatile unsigned short PMADR @ 0x191;

asm("PMADR equ 0191h");



extern volatile unsigned char PMADRL @ 0x191;

asm("PMADRL equ 0191h");


typedef union {
struct {
unsigned PMADRL :8;
};
} PMADRLbits_t;
extern volatile PMADRLbits_t PMADRLbits @ 0x191;

# 2260
extern volatile unsigned char PMADRH @ 0x192;

asm("PMADRH equ 0192h");


typedef union {
struct {
unsigned PMADRH :7;
};
} PMADRHbits_t;
extern volatile PMADRHbits_t PMADRHbits @ 0x192;

# 2279
extern volatile unsigned short PMDAT @ 0x193;

asm("PMDAT equ 0193h");



extern volatile unsigned char PMDATL @ 0x193;

asm("PMDATL equ 0193h");


typedef union {
struct {
unsigned PMDATL :8;
};
} PMDATLbits_t;
extern volatile PMDATLbits_t PMDATLbits @ 0x193;

# 2304
extern volatile unsigned char PMDATH @ 0x194;

asm("PMDATH equ 0194h");


typedef union {
struct {
unsigned PMDATH :6;
};
} PMDATHbits_t;
extern volatile PMDATHbits_t PMDATHbits @ 0x194;

# 2323
extern volatile unsigned char PMCON1 @ 0x195;

asm("PMCON1 equ 0195h");


typedef union {
struct {
unsigned RD :1;
unsigned WR :1;
unsigned WREN :1;
unsigned WRERR :1;
unsigned FREE :1;
unsigned LWLO :1;
unsigned CFGS :1;
};
} PMCON1bits_t;
extern volatile PMCON1bits_t PMCON1bits @ 0x195;

# 2378
extern volatile unsigned char PMCON2 @ 0x196;

asm("PMCON2 equ 0196h");


typedef union {
struct {
unsigned PMCON2 :8;
};
} PMCON2bits_t;
extern volatile PMCON2bits_t PMCON2bits @ 0x196;

# 2397
extern volatile unsigned char RCREG @ 0x199;

asm("RCREG equ 0199h");


typedef union {
struct {
unsigned RCREG :8;
};
} RCREGbits_t;
extern volatile RCREGbits_t RCREGbits @ 0x199;

# 2416
extern volatile unsigned char TXREG @ 0x19A;

asm("TXREG equ 019Ah");


typedef union {
struct {
unsigned TXREG :8;
};
} TXREGbits_t;
extern volatile TXREGbits_t TXREGbits @ 0x19A;

# 2435
extern volatile unsigned short SPBRG @ 0x19B;

asm("SPBRG equ 019Bh");



extern volatile unsigned char SPBRGL @ 0x19B;

asm("SPBRGL equ 019Bh");


typedef union {
struct {
unsigned SPBRGL :8;
};
} SPBRGLbits_t;
extern volatile SPBRGLbits_t SPBRGLbits @ 0x19B;

# 2460
extern volatile unsigned char SPBRGH @ 0x19C;

asm("SPBRGH equ 019Ch");


typedef union {
struct {
unsigned SPBRGH :8;
};
} SPBRGHbits_t;
extern volatile SPBRGHbits_t SPBRGHbits @ 0x19C;

# 2479
extern volatile unsigned char RCSTA @ 0x19D;

asm("RCSTA equ 019Dh");


typedef union {
struct {
unsigned RX9D :1;
unsigned OERR :1;
unsigned FERR :1;
unsigned ADDEN :1;
unsigned CREN :1;
unsigned SREN :1;
unsigned RX9 :1;
unsigned SPEN :1;
};
} RCSTAbits_t;
extern volatile RCSTAbits_t RCSTAbits @ 0x19D;

# 2540
extern volatile unsigned char TXSTA @ 0x19E;

asm("TXSTA equ 019Eh");


typedef union {
struct {
unsigned TX9D :1;
unsigned TRMT :1;
unsigned BRGH :1;
unsigned SENDB :1;
unsigned SYNC :1;
unsigned TXEN :1;
unsigned TX9 :1;
unsigned CSRC :1;
};
} TXSTAbits_t;
extern volatile TXSTAbits_t TXSTAbits @ 0x19E;

# 2601
extern volatile unsigned char BAUDCON @ 0x19F;

asm("BAUDCON equ 019Fh");


typedef union {
struct {
unsigned ABDEN :1;
unsigned WUE :1;
unsigned :1;
unsigned BRG16 :1;
unsigned SCKP :1;
unsigned :1;
unsigned RCIDL :1;
unsigned ABDOVF :1;
};
} BAUDCONbits_t;
extern volatile BAUDCONbits_t BAUDCONbits @ 0x19F;

# 2652
extern volatile unsigned char WPUA @ 0x20C;

asm("WPUA equ 020Ch");


typedef union {
struct {
unsigned WPUA0 :1;
unsigned WPUA1 :1;
unsigned WPUA2 :1;
unsigned WPUA3 :1;
unsigned WPUA4 :1;
unsigned WPUA5 :1;
};
struct {
unsigned WPUA :6;
};
} WPUAbits_t;
extern volatile WPUAbits_t WPUAbits @ 0x20C;

# 2709
extern volatile unsigned char ODCONA @ 0x28C;

asm("ODCONA equ 028Ch");


typedef union {
struct {
unsigned ODA0 :1;
unsigned ODA1 :1;
unsigned ODA2 :1;
unsigned :1;
unsigned ODA4 :1;
unsigned ODA5 :1;
};
struct {
unsigned ODA :6;
};
} ODCONAbits_t;
extern volatile ODCONAbits_t ODCONAbits @ 0x28C;

# 2761
extern volatile unsigned char SLRCONA @ 0x30C;

asm("SLRCONA equ 030Ch");


typedef union {
struct {
unsigned SLRA0 :1;
unsigned SLRA1 :1;
unsigned SLRA2 :1;
unsigned :1;
unsigned SLRA4 :1;
unsigned SLRA5 :1;
};
struct {
unsigned SLRA :6;
};
} SLRCONAbits_t;
extern volatile SLRCONAbits_t SLRCONAbits @ 0x30C;

# 2813
extern volatile unsigned char INLVLA @ 0x38C;

asm("INLVLA equ 038Ch");


typedef union {
struct {
unsigned INLVLA0 :1;
unsigned INLVLA1 :1;
unsigned INLVLA2 :1;
unsigned INLVLA3 :1;
unsigned INLVLA4 :1;
unsigned INLVLA5 :1;
};
struct {
unsigned INLVLA :6;
};
} INLVLAbits_t;
extern volatile INLVLAbits_t INLVLAbits @ 0x38C;

# 2870
extern volatile unsigned char IOCAP @ 0x391;

asm("IOCAP equ 0391h");


typedef union {
struct {
unsigned IOCAP0 :1;
unsigned IOCAP1 :1;
unsigned IOCAP2 :1;
unsigned IOCAP3 :1;
unsigned IOCAP4 :1;
unsigned IOCAP5 :1;
};
struct {
unsigned IOCAP :6;
};
} IOCAPbits_t;
extern volatile IOCAPbits_t IOCAPbits @ 0x391;

# 2927
extern volatile unsigned char IOCAN @ 0x392;

asm("IOCAN equ 0392h");


typedef union {
struct {
unsigned IOCAN0 :1;
unsigned IOCAN1 :1;
unsigned IOCAN2 :1;
unsigned IOCAN3 :1;
unsigned IOCAN4 :1;
unsigned IOCAN5 :1;
};
struct {
unsigned IOCAN :6;
};
} IOCANbits_t;
extern volatile IOCANbits_t IOCANbits @ 0x392;

# 2984
extern volatile unsigned char IOCAF @ 0x393;

asm("IOCAF equ 0393h");


typedef union {
struct {
unsigned IOCAF0 :1;
unsigned IOCAF1 :1;
unsigned IOCAF2 :1;
unsigned IOCAF3 :1;
unsigned IOCAF4 :1;
unsigned IOCAF5 :1;
};
struct {
unsigned IOCAF :6;
};
} IOCAFbits_t;
extern volatile IOCAFbits_t IOCAFbits @ 0x393;

# 3041
extern volatile unsigned char CWG1DBR @ 0x691;

asm("CWG1DBR equ 0691h");


typedef union {
struct {
unsigned CWG1DBR :6;
};
struct {
unsigned CWG1DBR0 :1;
unsigned CWG1DBR1 :1;
unsigned CWG1DBR2 :1;
unsigned CWG1DBR3 :1;
unsigned CWG1DBR4 :1;
unsigned CWG1DBR5 :1;
};
} CWG1DBRbits_t;
extern volatile CWG1DBRbits_t CWG1DBRbits @ 0x691;

# 3098
extern volatile unsigned char CWG1DBF @ 0x692;

asm("CWG1DBF equ 0692h");


typedef union {
struct {
unsigned CWG1DBF :6;
};
struct {
unsigned CWG1DBF0 :1;
unsigned CWG1DBF1 :1;
unsigned CWG1DBF2 :1;
unsigned CWG1DBF3 :1;
unsigned CWG1DBF4 :1;
unsigned CWG1DBF5 :1;
};
} CWG1DBFbits_t;
extern volatile CWG1DBFbits_t CWG1DBFbits @ 0x692;

# 3155
extern volatile unsigned char CWG1CON0 @ 0x693;

asm("CWG1CON0 equ 0693h");


typedef union {
struct {
unsigned G1CS0 :1;
unsigned :2;
unsigned G1POLA :1;
unsigned G1POLB :1;
unsigned G1OEA :1;
unsigned G1OEB :1;
unsigned G1EN :1;
};
struct {
unsigned G1CS :2;
};
} CWG1CON0bits_t;
extern volatile CWG1CON0bits_t CWG1CON0bits @ 0x693;

# 3213
extern volatile unsigned char CWG1CON1 @ 0x694;

asm("CWG1CON1 equ 0694h");


typedef union {
struct {
unsigned G1IS0 :1;
unsigned G1IS1 :1;
unsigned G1IS2 :1;
unsigned :1;
unsigned G1ASDLA :2;
unsigned G1ASDLB :2;
};
struct {
unsigned G1IS :4;
unsigned G1ASDLA0 :1;
unsigned G1ASDLA1 :1;
unsigned G1ASDLB0 :1;
unsigned G1ASDLB1 :1;
};
} CWG1CON1bits_t;
extern volatile CWG1CON1bits_t CWG1CON1bits @ 0x694;

# 3289
extern volatile unsigned char CWG1CON2 @ 0x695;

asm("CWG1CON2 equ 0695h");


typedef union {
struct {
unsigned :1;
unsigned G1ASDSFLT :1;
unsigned G1ASDSC1 :1;
unsigned :3;
unsigned G1ARSEN :1;
unsigned G1ASE :1;
};
} CWG1CON2bits_t;
extern volatile CWG1CON2bits_t CWG1CON2bits @ 0x695;

# 3328
extern volatile unsigned char PWMEN @ 0xD8E;

asm("PWMEN equ 0D8Eh");


typedef union {
struct {
unsigned PWM1EN_A :1;
unsigned PWM2EN_A :1;
unsigned PWM3EN_A :1;
};
struct {
unsigned MPWM1EN :1;
unsigned MPWM2EN :1;
unsigned MPWM3EN :1;
};
} PWMENbits_t;
extern volatile PWMENbits_t PWMENbits @ 0xD8E;

# 3379
extern volatile unsigned char PWMLD @ 0xD8F;

asm("PWMLD equ 0D8Fh");


typedef union {
struct {
unsigned PWM1LDA_A :1;
unsigned PWM2LDA_A :1;
unsigned PWM3LDA_A :1;
};
struct {
unsigned MPWM1LD :1;
unsigned MPWM2LD :1;
unsigned MPWM3LD :1;
};
} PWMLDbits_t;
extern volatile PWMLDbits_t PWMLDbits @ 0xD8F;

# 3430
extern volatile unsigned char PWMOUT @ 0xD90;

asm("PWMOUT equ 0D90h");


typedef union {
struct {
unsigned PWM1OUT_A :1;
unsigned PWM2OUT_A :1;
unsigned PWM3OUT_A :1;
};
struct {
unsigned MPWM1OUT :1;
unsigned MPWM2OUT :1;
unsigned MPWM3OUT :1;
};
} PWMOUTbits_t;
extern volatile PWMOUTbits_t PWMOUTbits @ 0xD90;

# 3481
extern volatile unsigned short PWM1PH @ 0xD91;

asm("PWM1PH equ 0D91h");



extern volatile unsigned char PWM1PHL @ 0xD91;

asm("PWM1PHL equ 0D91h");


typedef union {
struct {
unsigned PH :8;
};
struct {
unsigned PWM1PHL0 :1;
unsigned PWM1PHL1 :1;
unsigned PWM1PHL2 :1;
unsigned PWM1PHL3 :1;
unsigned PWM1PHL4 :1;
unsigned PWM1PHL5 :1;
unsigned PWM1PHL6 :1;
unsigned PWM1PHL7 :1;
};
struct {
unsigned PWM1PHL :8;
};
} PWM1PHLbits_t;
extern volatile PWM1PHLbits_t PWM1PHLbits @ 0xD91;

# 3564
extern volatile unsigned char PWM1PHH @ 0xD92;

asm("PWM1PHH equ 0D92h");


typedef union {
struct {
unsigned PH :8;
};
struct {
unsigned PWM1PHH0 :1;
unsigned PWM1PHH1 :1;
unsigned PWM1PHH2 :1;
unsigned PWM1PHH3 :1;
unsigned PWM1PHH4 :1;
unsigned PWM1PHH5 :1;
unsigned PWM1PHH6 :1;
unsigned PWM1PHH7 :1;
};
struct {
unsigned PWM1PHH :8;
};
} PWM1PHHbits_t;
extern volatile PWM1PHHbits_t PWM1PHHbits @ 0xD92;

# 3641
extern volatile unsigned short PWM1DC @ 0xD93;

asm("PWM1DC equ 0D93h");



extern volatile unsigned char PWM1DCL @ 0xD93;

asm("PWM1DCL equ 0D93h");


typedef union {
struct {
unsigned DC :8;
};
struct {
unsigned PWM1DCL0 :1;
unsigned PWM1DCL1 :1;
unsigned PWM1DCL2 :1;
unsigned PWM1DCL3 :1;
unsigned PWM1DCL4 :1;
unsigned PWM1DCL5 :1;
unsigned PWM1DCL6 :1;
unsigned PWM1DCL7 :1;
};
struct {
unsigned PWM1DCL :8;
};
} PWM1DCLbits_t;
extern volatile PWM1DCLbits_t PWM1DCLbits @ 0xD93;

# 3724
extern volatile unsigned char PWM1DCH @ 0xD94;

asm("PWM1DCH equ 0D94h");


typedef union {
struct {
unsigned DC :8;
};
struct {
unsigned PWM1DCH0 :1;
unsigned PWM1DCH1 :1;
unsigned PWM1DCH2 :1;
unsigned PWM1DCH3 :1;
unsigned PWM1DCH4 :1;
unsigned PWM1DCH5 :1;
unsigned PWM1DCH6 :1;
unsigned PWM1DCH7 :1;
};
struct {
unsigned PWM1DCH :8;
};
} PWM1DCHbits_t;
extern volatile PWM1DCHbits_t PWM1DCHbits @ 0xD94;

# 3801
extern volatile unsigned short PWM1PR @ 0xD95;

asm("PWM1PR equ 0D95h");



extern volatile unsigned char PWM1PRL @ 0xD95;

asm("PWM1PRL equ 0D95h");


typedef union {
struct {
unsigned PR :8;
};
struct {
unsigned PWM1PRL0 :1;
unsigned PWM1PRL1 :1;
unsigned PWM1PRL2 :1;
unsigned PWM1PRL3 :1;
unsigned PWM1PRL4 :1;
unsigned PWM1PRL5 :1;
unsigned PWM1PRL6 :1;
unsigned PWM1PRL7 :1;
};
struct {
unsigned PWM1PRL :8;
};
} PWM1PRLbits_t;
extern volatile PWM1PRLbits_t PWM1PRLbits @ 0xD95;

# 3884
extern volatile unsigned char PWM1PRH @ 0xD96;

asm("PWM1PRH equ 0D96h");


typedef union {
struct {
unsigned PR :8;
};
struct {
unsigned PWM1PRH0 :1;
unsigned PWM1PRH1 :1;
unsigned PWM1PRH2 :1;
unsigned PWM1PRH3 :1;
unsigned PWM1PRH4 :1;
unsigned PWM1PRH5 :1;
unsigned PWM1PRH6 :1;
unsigned PWM1PRH7 :1;
};
struct {
unsigned PWM1PRH :8;
};
} PWM1PRHbits_t;
extern volatile PWM1PRHbits_t PWM1PRHbits @ 0xD96;

# 3961
extern volatile unsigned short PWM1OF @ 0xD97;

asm("PWM1OF equ 0D97h");



extern volatile unsigned char PWM1OFL @ 0xD97;

asm("PWM1OFL equ 0D97h");


typedef union {
struct {
unsigned OF :8;
};
struct {
unsigned PWM1OFL0 :1;
unsigned PWM1OFL1 :1;
unsigned PWM1OFL2 :1;
unsigned PWM1OFL3 :1;
unsigned PWM1OFL4 :1;
unsigned PWM1OFL5 :1;
unsigned PWM1OFL6 :1;
unsigned PWM1OFL7 :1;
};
struct {
unsigned PWM1OFL :8;
};
} PWM1OFLbits_t;
extern volatile PWM1OFLbits_t PWM1OFLbits @ 0xD97;

# 4044
extern volatile unsigned char PWM1OFH @ 0xD98;

asm("PWM1OFH equ 0D98h");


typedef union {
struct {
unsigned OF :8;
};
struct {
unsigned PWM1OFH0 :1;
unsigned PWM1OFH1 :1;
unsigned PWM1OFH2 :1;
unsigned PWM1OFH3 :1;
unsigned PWM1OFH4 :1;
unsigned PWM1OFH5 :1;
unsigned PWM1OFH6 :1;
unsigned PWM1OFH7 :1;
};
struct {
unsigned PWM1OFH :8;
};
} PWM1OFHbits_t;
extern volatile PWM1OFHbits_t PWM1OFHbits @ 0xD98;

# 4121
extern volatile unsigned short PWM1TMR @ 0xD99;

asm("PWM1TMR equ 0D99h");



extern volatile unsigned char PWM1TMRL @ 0xD99;

asm("PWM1TMRL equ 0D99h");


typedef union {
struct {
unsigned TMR :8;
};
struct {
unsigned PWM1TMRL0 :1;
unsigned PWM1TMRL1 :1;
unsigned PWM1TMRL2 :1;
unsigned PWM1TMRL3 :1;
unsigned PWM1TMRL4 :1;
unsigned PWM1TMRL5 :1;
unsigned PWM1TMRL6 :1;
unsigned PWM1TMRL7 :1;
};
struct {
unsigned PWM1TMRL :8;
};
} PWM1TMRLbits_t;
extern volatile PWM1TMRLbits_t PWM1TMRLbits @ 0xD99;

# 4204
extern volatile unsigned char PWM1TMRH @ 0xD9A;

asm("PWM1TMRH equ 0D9Ah");


typedef union {
struct {
unsigned TMR :8;
};
struct {
unsigned PWM1TMRH0 :1;
unsigned PWM1TMRH1 :1;
unsigned PWM1TMRH2 :1;
unsigned PWM1TMRH3 :1;
unsigned PWM1TMRH4 :1;
unsigned PWM1TMRH5 :1;
unsigned PWM1TMRH6 :1;
unsigned PWM1TMRH7 :1;
};
struct {
unsigned PWM1TMRH :8;
};
} PWM1TMRHbits_t;
extern volatile PWM1TMRHbits_t PWM1TMRHbits @ 0xD9A;

# 4281
extern volatile unsigned char PWM1CON @ 0xD9B;

asm("PWM1CON equ 0D9Bh");


typedef union {
struct {
unsigned :2;
unsigned MODE :2;
unsigned POL :1;
unsigned OUT :1;
unsigned OE :1;
unsigned EN :1;
};
struct {
unsigned :2;
unsigned PWM1MODE0 :1;
unsigned PWM1MODE1 :1;
};
struct {
unsigned :2;
unsigned PWM1MODE :2;
unsigned PWM1POL :1;
unsigned PWM1OUT :1;
unsigned PWM1OE :1;
unsigned PWM1EN :1;
};
struct {
unsigned :2;
unsigned MODE0 :1;
unsigned MODE1 :1;
};
} PWM1CONbits_t;
extern volatile PWM1CONbits_t PWM1CONbits @ 0xD9B;

# 4388
extern volatile unsigned char PWM1INTE @ 0xD9C;

asm("PWM1INTE equ 0D9Ch");


extern volatile unsigned char PWM1INTCON @ 0xD9C;

asm("PWM1INTCON equ 0D9Ch");


typedef union {
struct {
unsigned PRIE :1;
unsigned DCIE :1;
unsigned PHIE :1;
unsigned OFIE :1;
};
struct {
unsigned PWM1PRIE :1;
unsigned PWM1DCIE :1;
unsigned PWM1PHIE :1;
unsigned PWM1OFIE :1;
};
} PWM1INTEbits_t;
extern volatile PWM1INTEbits_t PWM1INTEbits @ 0xD9C;

# 4455
typedef union {
struct {
unsigned PRIE :1;
unsigned DCIE :1;
unsigned PHIE :1;
unsigned OFIE :1;
};
struct {
unsigned PWM1PRIE :1;
unsigned PWM1DCIE :1;
unsigned PWM1PHIE :1;
unsigned PWM1OFIE :1;
};
} PWM1INTCONbits_t;
extern volatile PWM1INTCONbits_t PWM1INTCONbits @ 0xD9C;

# 4513
extern volatile unsigned char PWM1INTF @ 0xD9D;

asm("PWM1INTF equ 0D9Dh");


extern volatile unsigned char PWM1INTFLG @ 0xD9D;

asm("PWM1INTFLG equ 0D9Dh");


typedef union {
struct {
unsigned PRIF :1;
unsigned DCIF :1;
unsigned PHIF :1;
unsigned OFIF :1;
};
struct {
unsigned PWM1PRIF :1;
unsigned PWM1DCIF :1;
unsigned PWM1PHIF :1;
unsigned PWM1OFIF :1;
};
} PWM1INTFbits_t;
extern volatile PWM1INTFbits_t PWM1INTFbits @ 0xD9D;

# 4580
typedef union {
struct {
unsigned PRIF :1;
unsigned DCIF :1;
unsigned PHIF :1;
unsigned OFIF :1;
};
struct {
unsigned PWM1PRIF :1;
unsigned PWM1DCIF :1;
unsigned PWM1PHIF :1;
unsigned PWM1OFIF :1;
};
} PWM1INTFLGbits_t;
extern volatile PWM1INTFLGbits_t PWM1INTFLGbits @ 0xD9D;

# 4638
extern volatile unsigned char PWM1CLKCON @ 0xD9E;

asm("PWM1CLKCON equ 0D9Eh");


typedef union {
struct {
unsigned CS :2;
unsigned :2;
unsigned PS :3;
};
struct {
unsigned PWM1CS0 :1;
unsigned PWM1CS1 :1;
unsigned :2;
unsigned PWM1PS0 :1;
unsigned PWM1PS1 :1;
unsigned PWM1PS2 :1;
};
struct {
unsigned PWM1CS :3;
unsigned :1;
unsigned PWM1PS :3;
};
struct {
unsigned CS0 :1;
unsigned CS1 :1;
unsigned :2;
unsigned PS0 :1;
unsigned PS1 :1;
unsigned PS2 :1;
};
} PWM1CLKCONbits_t;
extern volatile PWM1CLKCONbits_t PWM1CLKCONbits @ 0xD9E;

# 4745
extern volatile unsigned char PWM1LDCON @ 0xD9F;

asm("PWM1LDCON equ 0D9Fh");


typedef union {
struct {
unsigned LDS :2;
unsigned :4;
unsigned LDT :1;
unsigned LDA :1;
};
struct {
unsigned PWM1LDS0 :1;
unsigned PWM1LDS1 :1;
};
struct {
unsigned PWM1LDS :2;
unsigned :4;
unsigned PWM1LDM :1;
unsigned PWM1LD :1;
};
struct {
unsigned LDS0 :1;
unsigned LDS1 :1;
};
} PWM1LDCONbits_t;
extern volatile PWM1LDCONbits_t PWM1LDCONbits @ 0xD9F;

# 4826
extern volatile unsigned char PWM1OFCON @ 0xDA0;

asm("PWM1OFCON equ 0DA0h");


typedef union {
struct {
unsigned OFS :2;
unsigned :2;
unsigned OFO :1;
unsigned OFM :2;
};
struct {
unsigned PWM1OFS0 :1;
unsigned PWM1OFS1 :1;
unsigned :3;
unsigned PWM1OFM0 :1;
unsigned PWM1OFM1 :1;
};
struct {
unsigned PWM1OFS :2;
unsigned :2;
unsigned PWM1OFMC :1;
unsigned PWM1OFM :2;
};
struct {
unsigned OFS0 :1;
unsigned OFS1 :1;
unsigned :3;
unsigned OFM0 :1;
unsigned OFM1 :1;
};
} PWM1OFCONbits_t;
extern volatile PWM1OFCONbits_t PWM1OFCONbits @ 0xDA0;

# 4933
extern volatile unsigned short PWM2PH @ 0xDA1;

asm("PWM2PH equ 0DA1h");



extern volatile unsigned char PWM2PHL @ 0xDA1;

asm("PWM2PHL equ 0DA1h");


typedef union {
struct {
unsigned PH :8;
};
struct {
unsigned PWM2PHL0 :1;
unsigned PWM2PHL1 :1;
unsigned PWM2PHL2 :1;
unsigned PWM2PHL3 :1;
unsigned PWM2PHL4 :1;
unsigned PWM2PHL5 :1;
unsigned PWM2PHL6 :1;
unsigned PWM2PHL7 :1;
};
struct {
unsigned PWM2PHL :8;
};
} PWM2PHLbits_t;
extern volatile PWM2PHLbits_t PWM2PHLbits @ 0xDA1;

# 5016
extern volatile unsigned char PWM2PHH @ 0xDA2;

asm("PWM2PHH equ 0DA2h");


typedef union {
struct {
unsigned PH :8;
};
struct {
unsigned PWM2PHH0 :1;
unsigned PWM2PHH1 :1;
unsigned PWM2PHH2 :1;
unsigned PWM2PHH3 :1;
unsigned PWM2PHH4 :1;
unsigned PWM2PHH5 :1;
unsigned PWM2PHH6 :1;
unsigned PWM2PHH7 :1;
};
struct {
unsigned PWM2PHH :8;
};
} PWM2PHHbits_t;
extern volatile PWM2PHHbits_t PWM2PHHbits @ 0xDA2;

# 5093
extern volatile unsigned short PWM2DC @ 0xDA3;

asm("PWM2DC equ 0DA3h");



extern volatile unsigned char PWM2DCL @ 0xDA3;

asm("PWM2DCL equ 0DA3h");


typedef union {
struct {
unsigned DC :8;
};
struct {
unsigned PWM2DCL0 :1;
unsigned PWM2DCL1 :1;
unsigned PWM2DCL2 :1;
unsigned PWM2DCL3 :1;
unsigned PWM2DCL4 :1;
unsigned PWM2DCL5 :1;
unsigned PWM2DCL6 :1;
unsigned PWM2DCL7 :1;
};
struct {
unsigned PWM2DCL :8;
};
} PWM2DCLbits_t;
extern volatile PWM2DCLbits_t PWM2DCLbits @ 0xDA3;

# 5176
extern volatile unsigned char PWM2DCH @ 0xDA4;

asm("PWM2DCH equ 0DA4h");


typedef union {
struct {
unsigned DC :8;
};
struct {
unsigned PWM2DCH0 :1;
unsigned PWM2DCH1 :1;
unsigned PWM2DCH2 :1;
unsigned PWM2DCH3 :1;
unsigned PWM2DCH4 :1;
unsigned PWM2DCH5 :1;
unsigned PWM2DCH6 :1;
unsigned PWM2DCH7 :1;
};
struct {
unsigned PWM2DCH :8;
};
} PWM2DCHbits_t;
extern volatile PWM2DCHbits_t PWM2DCHbits @ 0xDA4;

# 5253
extern volatile unsigned short PWM2PR @ 0xDA5;

asm("PWM2PR equ 0DA5h");



extern volatile unsigned char PWM2PRL @ 0xDA5;

asm("PWM2PRL equ 0DA5h");


typedef union {
struct {
unsigned PR :8;
};
struct {
unsigned PWM2PRL0 :1;
unsigned PWM2PRL1 :1;
unsigned PWM2PRL2 :1;
unsigned PWM2PRL3 :1;
unsigned PWM2PRL4 :1;
unsigned PWM2PRL5 :1;
unsigned PWM2PRL6 :1;
unsigned PWM2PRL7 :1;
};
struct {
unsigned PWM2PRL :8;
};
} PWM2PRLbits_t;
extern volatile PWM2PRLbits_t PWM2PRLbits @ 0xDA5;

# 5336
extern volatile unsigned char PWM2PRH @ 0xDA6;

asm("PWM2PRH equ 0DA6h");


typedef union {
struct {
unsigned PR :8;
};
struct {
unsigned PWM2PRH0 :1;
unsigned PWM2PRH1 :1;
unsigned PWM2PRH2 :1;
unsigned PWM2PRH3 :1;
unsigned PWM2PRH4 :1;
unsigned PWM2PRH5 :1;
unsigned PWM2PRH6 :1;
unsigned PWM2PRH7 :1;
};
struct {
unsigned PWM2PRH :8;
};
} PWM2PRHbits_t;
extern volatile PWM2PRHbits_t PWM2PRHbits @ 0xDA6;

# 5413
extern volatile unsigned short PWM2OF @ 0xDA7;

asm("PWM2OF equ 0DA7h");



extern volatile unsigned char PWM2OFL @ 0xDA7;

asm("PWM2OFL equ 0DA7h");


typedef union {
struct {
unsigned OF :8;
};
struct {
unsigned PWM2OFL0 :1;
unsigned PWM2OFL1 :1;
unsigned PWM2OFL2 :1;
unsigned PWM2OFL3 :1;
unsigned PWM2OFL4 :1;
unsigned PWM2OFL5 :1;
unsigned PWM2OFL6 :1;
unsigned PWM2OFL7 :1;
};
struct {
unsigned PWM2OFL :8;
};
} PWM2OFLbits_t;
extern volatile PWM2OFLbits_t PWM2OFLbits @ 0xDA7;

# 5496
extern volatile unsigned char PWM2OFH @ 0xDA8;

asm("PWM2OFH equ 0DA8h");


typedef union {
struct {
unsigned OF :8;
};
struct {
unsigned PWM2OFH0 :1;
unsigned PWM2OFH1 :1;
unsigned PWM2OFH2 :1;
unsigned PWM2OFH3 :1;
unsigned PWM2OFH4 :1;
unsigned PWM2OFH5 :1;
unsigned PWM2OFH6 :1;
unsigned PWM2OFH7 :1;
};
struct {
unsigned PWM2OFH :8;
};
} PWM2OFHbits_t;
extern volatile PWM2OFHbits_t PWM2OFHbits @ 0xDA8;

# 5573
extern volatile unsigned short PWM2TMR @ 0xDA9;

asm("PWM2TMR equ 0DA9h");



extern volatile unsigned char PWM2TMRL @ 0xDA9;

asm("PWM2TMRL equ 0DA9h");


typedef union {
struct {
unsigned TMR :8;
};
struct {
unsigned PWM2TMRL0 :1;
unsigned PWM2TMRL1 :1;
unsigned PWM2TMRL2 :1;
unsigned PWM2TMRL3 :1;
unsigned PWM2TMRL4 :1;
unsigned PWM2TMRL5 :1;
unsigned PWM2TMRL6 :1;
unsigned PWM2TMRL7 :1;
};
struct {
unsigned PWM2TMRL :8;
};
} PWM2TMRLbits_t;
extern volatile PWM2TMRLbits_t PWM2TMRLbits @ 0xDA9;

# 5656
extern volatile unsigned char PWM2TMRH @ 0xDAA;

asm("PWM2TMRH equ 0DAAh");


typedef union {
struct {
unsigned TMR :8;
};
struct {
unsigned PWM2TMRH0 :1;
unsigned PWM2TMRH1 :1;
unsigned PWM2TMRH2 :1;
unsigned PWM2TMRH3 :1;
unsigned PWM2TMRH4 :1;
unsigned PWM2TMRH5 :1;
unsigned PWM2TMRH6 :1;
unsigned PWM2TMRH7 :1;
};
struct {
unsigned PWM2TMRH :8;
};
} PWM2TMRHbits_t;
extern volatile PWM2TMRHbits_t PWM2TMRHbits @ 0xDAA;

# 5733
extern volatile unsigned char PWM2CON @ 0xDAB;

asm("PWM2CON equ 0DABh");


typedef union {
struct {
unsigned :2;
unsigned MODE :2;
unsigned POL :1;
unsigned OUT :1;
unsigned OE :1;
unsigned EN :1;
};
struct {
unsigned :2;
unsigned PWM2MODE0 :1;
unsigned PWM2MODE1 :1;
};
struct {
unsigned :2;
unsigned PWM2MODE :2;
unsigned PWM2POL :1;
unsigned PWM2OUT :1;
unsigned PWM2OE :1;
unsigned PWM2EN :1;
};
struct {
unsigned :2;
unsigned MODE0 :1;
unsigned MODE1 :1;
};
} PWM2CONbits_t;
extern volatile PWM2CONbits_t PWM2CONbits @ 0xDAB;

# 5840
extern volatile unsigned char PWM2INTE @ 0xDAC;

asm("PWM2INTE equ 0DACh");


extern volatile unsigned char PWM2INTCON @ 0xDAC;

asm("PWM2INTCON equ 0DACh");


typedef union {
struct {
unsigned PRIE :1;
unsigned DCIE :1;
unsigned PHIE :1;
unsigned OFIE :1;
};
struct {
unsigned PWM2PRIE :1;
unsigned PWM2DCIE :1;
unsigned PWM2PHIE :1;
unsigned PWM2OFIE :1;
};
} PWM2INTEbits_t;
extern volatile PWM2INTEbits_t PWM2INTEbits @ 0xDAC;

# 5907
typedef union {
struct {
unsigned PRIE :1;
unsigned DCIE :1;
unsigned PHIE :1;
unsigned OFIE :1;
};
struct {
unsigned PWM2PRIE :1;
unsigned PWM2DCIE :1;
unsigned PWM2PHIE :1;
unsigned PWM2OFIE :1;
};
} PWM2INTCONbits_t;
extern volatile PWM2INTCONbits_t PWM2INTCONbits @ 0xDAC;

# 5965
extern volatile unsigned char PWM2INTF @ 0xDAD;

asm("PWM2INTF equ 0DADh");


extern volatile unsigned char PWM2INTFLG @ 0xDAD;

asm("PWM2INTFLG equ 0DADh");


typedef union {
struct {
unsigned PRIF :1;
unsigned DCIF :1;
unsigned PHIF :1;
unsigned OFIF :1;
};
struct {
unsigned PWM2PRIF :1;
unsigned PWM2DCIF :1;
unsigned PWM2PHIF :1;
unsigned PWM2OFIF :1;
};
} PWM2INTFbits_t;
extern volatile PWM2INTFbits_t PWM2INTFbits @ 0xDAD;

# 6032
typedef union {
struct {
unsigned PRIF :1;
unsigned DCIF :1;
unsigned PHIF :1;
unsigned OFIF :1;
};
struct {
unsigned PWM2PRIF :1;
unsigned PWM2DCIF :1;
unsigned PWM2PHIF :1;
unsigned PWM2OFIF :1;
};
} PWM2INTFLGbits_t;
extern volatile PWM2INTFLGbits_t PWM2INTFLGbits @ 0xDAD;

# 6090
extern volatile unsigned char PWM2CLKCON @ 0xDAE;

asm("PWM2CLKCON equ 0DAEh");


typedef union {
struct {
unsigned CS :2;
unsigned :2;
unsigned PS :3;
};
struct {
unsigned PWM2CS0 :1;
unsigned PWM2CS1 :1;
unsigned :2;
unsigned PWM2PS0 :1;
unsigned PWM2PS1 :1;
unsigned PWM2PS2 :1;
};
struct {
unsigned PWM2CS :3;
unsigned :1;
unsigned PWM2PS :3;
};
struct {
unsigned CS0 :1;
unsigned CS1 :1;
unsigned :2;
unsigned PS0 :1;
unsigned PS1 :1;
unsigned PS2 :1;
};
} PWM2CLKCONbits_t;
extern volatile PWM2CLKCONbits_t PWM2CLKCONbits @ 0xDAE;

# 6197
extern volatile unsigned char PWM2LDCON @ 0xDAF;

asm("PWM2LDCON equ 0DAFh");


typedef union {
struct {
unsigned LDS :2;
unsigned :4;
unsigned LDT :1;
unsigned LDA :1;
};
struct {
unsigned PWM2LDS0 :1;
unsigned PWM2LDS1 :1;
};
struct {
unsigned PWM2LDS :2;
unsigned :4;
unsigned PWM2LDM :1;
unsigned PWM2LD :1;
};
struct {
unsigned LDS0 :1;
unsigned LDS1 :1;
};
} PWM2LDCONbits_t;
extern volatile PWM2LDCONbits_t PWM2LDCONbits @ 0xDAF;

# 6278
extern volatile unsigned char PWM2OFCON @ 0xDB0;

asm("PWM2OFCON equ 0DB0h");


typedef union {
struct {
unsigned OFS :2;
unsigned :2;
unsigned OFO :1;
unsigned OFM :2;
};
struct {
unsigned PWM2OFS0 :1;
unsigned PWM2OFS1 :1;
unsigned :3;
unsigned PWM2OFM0 :1;
unsigned PWM2OFM1 :1;
};
struct {
unsigned PWM2OFS :2;
unsigned :2;
unsigned PWM2OFMC :1;
unsigned PWM2OFM :2;
};
struct {
unsigned OFS0 :1;
unsigned OFS1 :1;
unsigned :3;
unsigned OFM0 :1;
unsigned OFM1 :1;
};
} PWM2OFCONbits_t;
extern volatile PWM2OFCONbits_t PWM2OFCONbits @ 0xDB0;

# 6385
extern volatile unsigned short PWM3PH @ 0xDB1;

asm("PWM3PH equ 0DB1h");



extern volatile unsigned char PWM3PHL @ 0xDB1;

asm("PWM3PHL equ 0DB1h");


typedef union {
struct {
unsigned PH :8;
};
struct {
unsigned PWM3PHL0 :1;
unsigned PWM3PHL1 :1;
unsigned PWM3PHL2 :1;
unsigned PWM3PHL3 :1;
unsigned PWM3PHL4 :1;
unsigned PWM3PHL5 :1;
unsigned PWM3PHL6 :1;
unsigned PWM3PHL7 :1;
};
struct {
unsigned PWM3PHL :8;
};
} PWM3PHLbits_t;
extern volatile PWM3PHLbits_t PWM3PHLbits @ 0xDB1;

# 6468
extern volatile unsigned char PWM3PHH @ 0xDB2;

asm("PWM3PHH equ 0DB2h");


typedef union {
struct {
unsigned PH :8;
};
struct {
unsigned PWM3PHH0 :1;
unsigned PWM3PHH1 :1;
unsigned PWM3PHH2 :1;
unsigned PWM3PHH3 :1;
unsigned PWM3PHH4 :1;
unsigned PWM3PHH5 :1;
unsigned PWM3PHH6 :1;
unsigned PWM3PHH7 :1;
};
struct {
unsigned PWM3PHH :8;
};
} PWM3PHHbits_t;
extern volatile PWM3PHHbits_t PWM3PHHbits @ 0xDB2;

# 6545
extern volatile unsigned short PWM3DC @ 0xDB3;

asm("PWM3DC equ 0DB3h");



extern volatile unsigned char PWM3DCL @ 0xDB3;

asm("PWM3DCL equ 0DB3h");


typedef union {
struct {
unsigned DC :8;
};
struct {
unsigned PWM3DCL0 :1;
unsigned PWM3DCL1 :1;
unsigned PWM3DCL2 :1;
unsigned PWM3DCL3 :1;
unsigned PWM3DCL4 :1;
unsigned PWM3DCL5 :1;
unsigned PWM3DCL6 :1;
unsigned PWM3DCL7 :1;
};
struct {
unsigned PWM3DCL :8;
};
} PWM3DCLbits_t;
extern volatile PWM3DCLbits_t PWM3DCLbits @ 0xDB3;

# 6628
extern volatile unsigned char PWM3DCH @ 0xDB4;

asm("PWM3DCH equ 0DB4h");


typedef union {
struct {
unsigned DC :8;
};
struct {
unsigned PWM3DCH0 :1;
unsigned PWM3DCH1 :1;
unsigned PWM3DCH2 :1;
unsigned PWM3DCH3 :1;
unsigned PWM3DCH4 :1;
unsigned PWM3DCH5 :1;
unsigned PWM3DCH6 :1;
unsigned PWM3DCH7 :1;
};
struct {
unsigned PWM3DCH :8;
};
} PWM3DCHbits_t;
extern volatile PWM3DCHbits_t PWM3DCHbits @ 0xDB4;

# 6705
extern volatile unsigned short PWM3PR @ 0xDB5;

asm("PWM3PR equ 0DB5h");



extern volatile unsigned char PWM3PRL @ 0xDB5;

asm("PWM3PRL equ 0DB5h");


typedef union {
struct {
unsigned PR :8;
};
struct {
unsigned PWM3PRL0 :1;
unsigned PWM3PRL1 :1;
unsigned PWM3PRL2 :1;
unsigned PWM3PRL3 :1;
unsigned PWM3PRL4 :1;
unsigned PWM3PRL5 :1;
unsigned PWM3PRL6 :1;
unsigned PWM3PRL7 :1;
};
struct {
unsigned PWM3PRL :8;
};
} PWM3PRLbits_t;
extern volatile PWM3PRLbits_t PWM3PRLbits @ 0xDB5;

# 6788
extern volatile unsigned char PWM3PRH @ 0xDB6;

asm("PWM3PRH equ 0DB6h");


typedef union {
struct {
unsigned PR :8;
};
struct {
unsigned PWM3PRH0 :1;
unsigned PWM3PRH1 :1;
unsigned PWM3PRH2 :1;
unsigned PWM3PRH3 :1;
unsigned PWM3PRH4 :1;
unsigned PWM3PRH5 :1;
unsigned PWM3PRH6 :1;
unsigned PWM3PRH7 :1;
};
struct {
unsigned PWM3PRH :8;
};
} PWM3PRHbits_t;
extern volatile PWM3PRHbits_t PWM3PRHbits @ 0xDB6;

# 6865
extern volatile unsigned short PWM3OF @ 0xDB7;

asm("PWM3OF equ 0DB7h");



extern volatile unsigned char PWM3OFL @ 0xDB7;

asm("PWM3OFL equ 0DB7h");


typedef union {
struct {
unsigned OF :8;
};
struct {
unsigned PWM3OFL0 :1;
unsigned PWM3OFL1 :1;
unsigned PWM3OFL2 :1;
unsigned PWM3OFL3 :1;
unsigned PWM3OFL4 :1;
unsigned PWM3OFL5 :1;
unsigned PWM3OFL6 :1;
unsigned PWM3OFL7 :1;
};
struct {
unsigned PWM3OFL :8;
};
} PWM3OFLbits_t;
extern volatile PWM3OFLbits_t PWM3OFLbits @ 0xDB7;

# 6948
extern volatile unsigned char PWM3OFH @ 0xDB8;

asm("PWM3OFH equ 0DB8h");


typedef union {
struct {
unsigned OF :8;
};
struct {
unsigned PWM3OFH0 :1;
unsigned PWM3OFH1 :1;
unsigned PWM3OFH2 :1;
unsigned PWM3OFH3 :1;
unsigned PWM3OFH4 :1;
unsigned PWM3OFH5 :1;
unsigned PWM3OFH6 :1;
unsigned PWM3OFH7 :1;
};
struct {
unsigned PWM3OFH :8;
};
} PWM3OFHbits_t;
extern volatile PWM3OFHbits_t PWM3OFHbits @ 0xDB8;

# 7025
extern volatile unsigned short PWM3TMR @ 0xDB9;

asm("PWM3TMR equ 0DB9h");



extern volatile unsigned char PWM3TMRL @ 0xDB9;

asm("PWM3TMRL equ 0DB9h");


typedef union {
struct {
unsigned TMR :8;
};
struct {
unsigned PWM3TMRL0 :1;
unsigned PWM3TMRL1 :1;
unsigned PWM3TMRL2 :1;
unsigned PWM3TMRL3 :1;
unsigned PWM3TMRL4 :1;
unsigned PWM3TMRL5 :1;
unsigned PWM3TMRL6 :1;
unsigned PWM3TMRL7 :1;
};
struct {
unsigned PWM3TMRL :8;
};
} PWM3TMRLbits_t;
extern volatile PWM3TMRLbits_t PWM3TMRLbits @ 0xDB9;

# 7108
extern volatile unsigned char PWM3TMRH @ 0xDBA;

asm("PWM3TMRH equ 0DBAh");


typedef union {
struct {
unsigned TMR :8;
};
struct {
unsigned PWM3TMRH0 :1;
unsigned PWM3TMRH1 :1;
unsigned PWM3TMRH2 :1;
unsigned PWM3TMRH3 :1;
unsigned PWM3TMRH4 :1;
unsigned PWM3TMRH5 :1;
unsigned PWM3TMRH6 :1;
unsigned PWM3TMRH7 :1;
};
struct {
unsigned PWM3TMRH :8;
};
} PWM3TMRHbits_t;
extern volatile PWM3TMRHbits_t PWM3TMRHbits @ 0xDBA;

# 7185
extern volatile unsigned char PWM3CON @ 0xDBB;

asm("PWM3CON equ 0DBBh");


typedef union {
struct {
unsigned :2;
unsigned MODE :2;
unsigned POL :1;
unsigned OUT :1;
unsigned OE :1;
unsigned EN :1;
};
struct {
unsigned :2;
unsigned PWM3MODE0 :1;
unsigned PWM3MODE1 :1;
};
struct {
unsigned :2;
unsigned PWM3MODE :2;
unsigned PWM3POL :1;
unsigned PWM3OUT :1;
unsigned PWM3OE :1;
unsigned PWM3EN :1;
};
struct {
unsigned :2;
unsigned MODE0 :1;
unsigned MODE1 :1;
};
} PWM3CONbits_t;
extern volatile PWM3CONbits_t PWM3CONbits @ 0xDBB;

# 7292
extern volatile unsigned char PWM3INTE @ 0xDBC;

asm("PWM3INTE equ 0DBCh");


extern volatile unsigned char PWM3INTCON @ 0xDBC;

asm("PWM3INTCON equ 0DBCh");


typedef union {
struct {
unsigned PRIE :1;
unsigned DCIE :1;
unsigned PHIE :1;
unsigned OFIE :1;
};
struct {
unsigned PWM3PRIE :1;
unsigned PWM3DCIE :1;
unsigned PWM3PHIE :1;
unsigned PWM3OFIE :1;
};
} PWM3INTEbits_t;
extern volatile PWM3INTEbits_t PWM3INTEbits @ 0xDBC;

# 7359
typedef union {
struct {
unsigned PRIE :1;
unsigned DCIE :1;
unsigned PHIE :1;
unsigned OFIE :1;
};
struct {
unsigned PWM3PRIE :1;
unsigned PWM3DCIE :1;
unsigned PWM3PHIE :1;
unsigned PWM3OFIE :1;
};
} PWM3INTCONbits_t;
extern volatile PWM3INTCONbits_t PWM3INTCONbits @ 0xDBC;

# 7417
extern volatile unsigned char PWM3INTF @ 0xDBD;

asm("PWM3INTF equ 0DBDh");


extern volatile unsigned char PWM3INTFLG @ 0xDBD;

asm("PWM3INTFLG equ 0DBDh");


typedef union {
struct {
unsigned PRIF :1;
unsigned DCIF :1;
unsigned PHIF :1;
unsigned OFIF :1;
};
struct {
unsigned PWM3PRIF :1;
unsigned PWM3DCIF :1;
unsigned PWM3PHIF :1;
unsigned PWM3OFIF :1;
};
} PWM3INTFbits_t;
extern volatile PWM3INTFbits_t PWM3INTFbits @ 0xDBD;

# 7484
typedef union {
struct {
unsigned PRIF :1;
unsigned DCIF :1;
unsigned PHIF :1;
unsigned OFIF :1;
};
struct {
unsigned PWM3PRIF :1;
unsigned PWM3DCIF :1;
unsigned PWM3PHIF :1;
unsigned PWM3OFIF :1;
};
} PWM3INTFLGbits_t;
extern volatile PWM3INTFLGbits_t PWM3INTFLGbits @ 0xDBD;

# 7542
extern volatile unsigned char PWM3CLKCON @ 0xDBE;

asm("PWM3CLKCON equ 0DBEh");


typedef union {
struct {
unsigned CS :2;
unsigned :2;
unsigned PS :3;
};
struct {
unsigned PWM3CS0 :1;
unsigned PWM3CS1 :1;
unsigned :2;
unsigned PWM3PS0 :1;
unsigned PWM3PS1 :1;
unsigned PWM3PS2 :1;
};
struct {
unsigned PWM3CS :3;
unsigned :1;
unsigned PWM3PS :3;
};
struct {
unsigned CS0 :1;
unsigned CS1 :1;
unsigned :2;
unsigned PS0 :1;
unsigned PS1 :1;
unsigned PS2 :1;
};
} PWM3CLKCONbits_t;
extern volatile PWM3CLKCONbits_t PWM3CLKCONbits @ 0xDBE;

# 7649
extern volatile unsigned char PWM3LDCON @ 0xDBF;

asm("PWM3LDCON equ 0DBFh");


typedef union {
struct {
unsigned LDS :2;
unsigned :4;
unsigned LDT :1;
unsigned LDA :1;
};
struct {
unsigned PWM3LDS0 :1;
unsigned PWM3LDS1 :1;
};
struct {
unsigned PWM3LDS :2;
unsigned :4;
unsigned PWM3LDM :1;
unsigned PWM3LD :1;
};
struct {
unsigned LDS0 :1;
unsigned LDS1 :1;
};
} PWM3LDCONbits_t;
extern volatile PWM3LDCONbits_t PWM3LDCONbits @ 0xDBF;

# 7730
extern volatile unsigned char PWM3OFCON @ 0xDC0;

asm("PWM3OFCON equ 0DC0h");


typedef union {
struct {
unsigned OFS :2;
unsigned :2;
unsigned OFO :1;
unsigned OFM :2;
};
struct {
unsigned PWM3OFS0 :1;
unsigned PWM3OFS1 :1;
unsigned :3;
unsigned PWM3OFM0 :1;
unsigned PWM3OFM1 :1;
};
struct {
unsigned PWM3OFS :2;
unsigned :2;
unsigned PWM3OFMC :1;
unsigned PWM3OFM :2;
};
struct {
unsigned OFS0 :1;
unsigned OFS1 :1;
unsigned :3;
unsigned OFM0 :1;
unsigned OFM1 :1;
};
} PWM3OFCONbits_t;
extern volatile PWM3OFCONbits_t PWM3OFCONbits @ 0xDC0;

# 7837
extern volatile unsigned char STATUS_SHAD @ 0xFE4;

asm("STATUS_SHAD equ 0FE4h");


typedef union {
struct {
unsigned C_SHAD :1;
unsigned DC_SHAD :1;
unsigned Z_SHAD :1;
};
} STATUS_SHADbits_t;
extern volatile STATUS_SHADbits_t STATUS_SHADbits @ 0xFE4;

# 7868
extern volatile unsigned char WREG_SHAD @ 0xFE5;

asm("WREG_SHAD equ 0FE5h");


typedef union {
struct {
unsigned WREG_SHAD :8;
};
} WREG_SHADbits_t;
extern volatile WREG_SHADbits_t WREG_SHADbits @ 0xFE5;

# 7887
extern volatile unsigned char BSR_SHAD @ 0xFE6;

asm("BSR_SHAD equ 0FE6h");


typedef union {
struct {
unsigned BSR_SHAD :5;
};
} BSR_SHADbits_t;
extern volatile BSR_SHADbits_t BSR_SHADbits @ 0xFE6;

# 7906
extern volatile unsigned char PCLATH_SHAD @ 0xFE7;

asm("PCLATH_SHAD equ 0FE7h");


typedef union {
struct {
unsigned PCLATH_SHAD :7;
};
} PCLATH_SHADbits_t;
extern volatile PCLATH_SHADbits_t PCLATH_SHADbits @ 0xFE7;

# 7925
extern volatile unsigned short FSR0_SHAD @ 0xFE8;

asm("FSR0_SHAD equ 0FE8h");



extern volatile unsigned char FSR0L_SHAD @ 0xFE8;

asm("FSR0L_SHAD equ 0FE8h");


typedef union {
struct {
unsigned FSR0L_SHAD :8;
};
} FSR0L_SHADbits_t;
extern volatile FSR0L_SHADbits_t FSR0L_SHADbits @ 0xFE8;

# 7950
extern volatile unsigned char FSR0H_SHAD @ 0xFE9;

asm("FSR0H_SHAD equ 0FE9h");


typedef union {
struct {
unsigned FSR0H_SHAD :8;
};
} FSR0H_SHADbits_t;
extern volatile FSR0H_SHADbits_t FSR0H_SHADbits @ 0xFE9;

# 7969
extern volatile unsigned short FSR1_SHAD @ 0xFEA;

asm("FSR1_SHAD equ 0FEAh");



extern volatile unsigned char FSR1L_SHAD @ 0xFEA;

asm("FSR1L_SHAD equ 0FEAh");


typedef union {
struct {
unsigned FSR1L_SHAD :8;
};
} FSR1L_SHADbits_t;
extern volatile FSR1L_SHADbits_t FSR1L_SHADbits @ 0xFEA;

# 7994
extern volatile unsigned char FSR1H_SHAD @ 0xFEB;

asm("FSR1H_SHAD equ 0FEBh");


typedef union {
struct {
unsigned FSR1H_SHAD :8;
};
} FSR1H_SHADbits_t;
extern volatile FSR1H_SHADbits_t FSR1H_SHADbits @ 0xFEB;

# 8013
extern volatile unsigned char STKPTR @ 0xFED;

asm("STKPTR equ 0FEDh");


typedef union {
struct {
unsigned STKPTR :5;
};
} STKPTRbits_t;
extern volatile STKPTRbits_t STKPTRbits @ 0xFED;

# 8032
extern volatile unsigned short TOS @ 0xFEE;

asm("TOS equ 0FEEh");



extern volatile unsigned char TOSL @ 0xFEE;

asm("TOSL equ 0FEEh");


typedef union {
struct {
unsigned TOSL :8;
};
} TOSLbits_t;
extern volatile TOSLbits_t TOSLbits @ 0xFEE;

# 8057
extern volatile unsigned char TOSH @ 0xFEF;

asm("TOSH equ 0FEFh");


typedef union {
struct {
unsigned TOSH :7;
};
} TOSHbits_t;
extern volatile TOSHbits_t TOSHbits @ 0xFEF;

# 8082
extern volatile __bit ABDEN @ (((unsigned) &BAUDCON)*8) + 0;

extern volatile __bit ABDOVF @ (((unsigned) &BAUDCON)*8) + 7;

extern volatile __bit ADCS0 @ (((unsigned) &ADCON1)*8) + 4;

extern volatile __bit ADCS1 @ (((unsigned) &ADCON1)*8) + 5;

extern volatile __bit ADCS2 @ (((unsigned) &ADCON1)*8) + 6;

extern volatile __bit ADDEN @ (((unsigned) &RCSTA)*8) + 3;

extern volatile __bit ADFM @ (((unsigned) &ADCON1)*8) + 7;

extern volatile __bit ADFVR0 @ (((unsigned) &FVRCON)*8) + 0;

extern volatile __bit ADFVR1 @ (((unsigned) &FVRCON)*8) + 1;

extern volatile __bit ADGO @ (((unsigned) &ADCON0)*8) + 1;

extern volatile __bit ADIE @ (((unsigned) &PIE1)*8) + 6;

extern volatile __bit ADIF @ (((unsigned) &PIR1)*8) + 6;

extern volatile __bit ADON @ (((unsigned) &ADCON0)*8) + 0;

extern volatile __bit ADPREF0 @ (((unsigned) &ADCON1)*8) + 0;

extern volatile __bit ADPREF1 @ (((unsigned) &ADCON1)*8) + 1;

extern volatile __bit ANSA0 @ (((unsigned) &ANSELA)*8) + 0;

extern volatile __bit ANSA1 @ (((unsigned) &ANSELA)*8) + 1;

extern volatile __bit ANSA2 @ (((unsigned) &ANSELA)*8) + 2;

extern volatile __bit ANSA4 @ (((unsigned) &ANSELA)*8) + 4;

extern volatile __bit BORFS @ (((unsigned) &BORCON)*8) + 6;

extern volatile __bit BORRDY @ (((unsigned) &BORCON)*8) + 0;

extern volatile __bit BRG16 @ (((unsigned) &BAUDCON)*8) + 3;

extern volatile __bit BRGH @ (((unsigned) &TXSTA)*8) + 2;

extern volatile __bit BSR0 @ (((unsigned) &BSR)*8) + 0;

extern volatile __bit BSR1 @ (((unsigned) &BSR)*8) + 1;

extern volatile __bit BSR2 @ (((unsigned) &BSR)*8) + 2;

extern volatile __bit BSR3 @ (((unsigned) &BSR)*8) + 3;

extern volatile __bit BSR4 @ (((unsigned) &BSR)*8) + 4;

extern volatile __bit C1HYS @ (((unsigned) &CM1CON0)*8) + 1;

extern volatile __bit C1IE @ (((unsigned) &PIE2)*8) + 5;

extern volatile __bit C1IF @ (((unsigned) &PIR2)*8) + 5;

extern volatile __bit C1INTN @ (((unsigned) &CM1CON1)*8) + 6;

extern volatile __bit C1INTP @ (((unsigned) &CM1CON1)*8) + 7;

extern volatile __bit C1NCH0 @ (((unsigned) &CM1CON1)*8) + 0;

extern volatile __bit C1NCH1 @ (((unsigned) &CM1CON1)*8) + 1;

extern volatile __bit C1NCH2 @ (((unsigned) &CM1CON1)*8) + 2;

extern volatile __bit C1OE @ (((unsigned) &CM1CON0)*8) + 5;

extern volatile __bit C1ON @ (((unsigned) &CM1CON0)*8) + 7;

extern volatile __bit C1OUT @ (((unsigned) &CM1CON0)*8) + 6;

extern volatile __bit C1PCH0 @ (((unsigned) &CM1CON1)*8) + 4;

extern volatile __bit C1PCH1 @ (((unsigned) &CM1CON1)*8) + 5;

extern volatile __bit C1POL @ (((unsigned) &CM1CON0)*8) + 4;

extern volatile __bit C1SP @ (((unsigned) &CM1CON0)*8) + 2;

extern volatile __bit C1SYNC @ (((unsigned) &CM1CON0)*8) + 0;

extern volatile __bit CARRY @ (((unsigned) &STATUS)*8) + 0;

extern volatile __bit CDAFVR0 @ (((unsigned) &FVRCON)*8) + 2;

extern volatile __bit CDAFVR1 @ (((unsigned) &FVRCON)*8) + 3;

extern volatile __bit CFGS @ (((unsigned) &PMCON1)*8) + 6;

extern volatile __bit CHS0 @ (((unsigned) &ADCON0)*8) + 2;

extern volatile __bit CHS1 @ (((unsigned) &ADCON0)*8) + 3;

extern volatile __bit CHS2 @ (((unsigned) &ADCON0)*8) + 4;

extern volatile __bit CHS3 @ (((unsigned) &ADCON0)*8) + 5;

extern volatile __bit CHS4 @ (((unsigned) &ADCON0)*8) + 6;

extern volatile __bit CREN @ (((unsigned) &RCSTA)*8) + 4;

extern volatile __bit CSRC @ (((unsigned) &TXSTA)*8) + 7;

extern volatile __bit CWG1DBF0 @ (((unsigned) &CWG1DBF)*8) + 0;

extern volatile __bit CWG1DBF1 @ (((unsigned) &CWG1DBF)*8) + 1;

extern volatile __bit CWG1DBF2 @ (((unsigned) &CWG1DBF)*8) + 2;

extern volatile __bit CWG1DBF3 @ (((unsigned) &CWG1DBF)*8) + 3;

extern volatile __bit CWG1DBF4 @ (((unsigned) &CWG1DBF)*8) + 4;

extern volatile __bit CWG1DBF5 @ (((unsigned) &CWG1DBF)*8) + 5;

extern volatile __bit CWG1DBR0 @ (((unsigned) &CWG1DBR)*8) + 0;

extern volatile __bit CWG1DBR1 @ (((unsigned) &CWG1DBR)*8) + 1;

extern volatile __bit CWG1DBR2 @ (((unsigned) &CWG1DBR)*8) + 2;

extern volatile __bit CWG1DBR3 @ (((unsigned) &CWG1DBR)*8) + 3;

extern volatile __bit CWG1DBR4 @ (((unsigned) &CWG1DBR)*8) + 4;

extern volatile __bit CWG1DBR5 @ (((unsigned) &CWG1DBR)*8) + 5;

extern volatile __bit CWGASEL @ (((unsigned) &APFCON)*8) + 6;

extern volatile __bit CWGBSEL @ (((unsigned) &APFCON)*8) + 5;

extern volatile __bit C_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 0;

extern volatile __bit DACEN @ (((unsigned) &DACCON0)*8) + 7;

extern volatile __bit DACLPS @ (((unsigned) &DACCON0)*8) + 6;

extern volatile __bit DACOE @ (((unsigned) &DACCON0)*8) + 5;

extern volatile __bit DACPSS0 @ (((unsigned) &DACCON0)*8) + 2;

extern volatile __bit DACPSS1 @ (((unsigned) &DACCON0)*8) + 3;

extern volatile __bit DACR0 @ (((unsigned) &DACCON1)*8) + 0;

extern volatile __bit DACR1 @ (((unsigned) &DACCON1)*8) + 1;

extern volatile __bit DACR2 @ (((unsigned) &DACCON1)*8) + 2;

extern volatile __bit DACR3 @ (((unsigned) &DACCON1)*8) + 3;

extern volatile __bit DACR4 @ (((unsigned) &DACCON1)*8) + 4;

extern volatile __bit DC @ (((unsigned) &STATUS)*8) + 1;

extern volatile __bit DC_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 1;

extern volatile __bit FERR @ (((unsigned) &RCSTA)*8) + 2;

extern volatile __bit FREE @ (((unsigned) &PMCON1)*8) + 4;

extern volatile __bit FVREN @ (((unsigned) &FVRCON)*8) + 7;

extern volatile __bit FVRRDY @ (((unsigned) &FVRCON)*8) + 6;

extern volatile __bit G1ARSEN @ (((unsigned) &CWG1CON2)*8) + 6;

extern volatile __bit G1ASDLA0 @ (((unsigned) &CWG1CON1)*8) + 4;

extern volatile __bit G1ASDLA1 @ (((unsigned) &CWG1CON1)*8) + 5;

extern volatile __bit G1ASDLB0 @ (((unsigned) &CWG1CON1)*8) + 6;

extern volatile __bit G1ASDLB1 @ (((unsigned) &CWG1CON1)*8) + 7;

extern volatile __bit G1ASDSC1 @ (((unsigned) &CWG1CON2)*8) + 2;

extern volatile __bit G1ASDSFLT @ (((unsigned) &CWG1CON2)*8) + 1;

extern volatile __bit G1ASE @ (((unsigned) &CWG1CON2)*8) + 7;

extern volatile __bit G1CS0 @ (((unsigned) &CWG1CON0)*8) + 0;

extern volatile __bit G1EN @ (((unsigned) &CWG1CON0)*8) + 7;

extern volatile __bit G1IS0 @ (((unsigned) &CWG1CON1)*8) + 0;

extern volatile __bit G1IS1 @ (((unsigned) &CWG1CON1)*8) + 1;

extern volatile __bit G1IS2 @ (((unsigned) &CWG1CON1)*8) + 2;

extern volatile __bit G1OEA @ (((unsigned) &CWG1CON0)*8) + 5;

extern volatile __bit G1OEB @ (((unsigned) &CWG1CON0)*8) + 6;

extern volatile __bit G1POLA @ (((unsigned) &CWG1CON0)*8) + 3;

extern volatile __bit G1POLB @ (((unsigned) &CWG1CON0)*8) + 4;

extern volatile __bit GIE @ (((unsigned) &INTCON)*8) + 7;

extern volatile __bit GO @ (((unsigned) &ADCON0)*8) + 1;

extern volatile __bit GO_nDONE @ (((unsigned) &ADCON0)*8) + 1;

extern volatile __bit HFIOFL @ (((unsigned) &OSCSTAT)*8) + 3;

extern volatile __bit HFIOFR @ (((unsigned) &OSCSTAT)*8) + 4;

extern volatile __bit HFIOFS @ (((unsigned) &OSCSTAT)*8) + 0;

extern volatile __bit INLVLA0 @ (((unsigned) &INLVLA)*8) + 0;

extern volatile __bit INLVLA1 @ (((unsigned) &INLVLA)*8) + 1;

extern volatile __bit INLVLA2 @ (((unsigned) &INLVLA)*8) + 2;

extern volatile __bit INLVLA3 @ (((unsigned) &INLVLA)*8) + 3;

extern volatile __bit INLVLA4 @ (((unsigned) &INLVLA)*8) + 4;

extern volatile __bit INLVLA5 @ (((unsigned) &INLVLA)*8) + 5;

extern volatile __bit INTE @ (((unsigned) &INTCON)*8) + 4;

extern volatile __bit INTEDG @ (((unsigned) &OPTION_REG)*8) + 6;

extern volatile __bit INTF @ (((unsigned) &INTCON)*8) + 1;

extern volatile __bit IOCAF0 @ (((unsigned) &IOCAF)*8) + 0;

extern volatile __bit IOCAF1 @ (((unsigned) &IOCAF)*8) + 1;

extern volatile __bit IOCAF2 @ (((unsigned) &IOCAF)*8) + 2;

extern volatile __bit IOCAF3 @ (((unsigned) &IOCAF)*8) + 3;

extern volatile __bit IOCAF4 @ (((unsigned) &IOCAF)*8) + 4;

extern volatile __bit IOCAF5 @ (((unsigned) &IOCAF)*8) + 5;

extern volatile __bit IOCAN0 @ (((unsigned) &IOCAN)*8) + 0;

extern volatile __bit IOCAN1 @ (((unsigned) &IOCAN)*8) + 1;

extern volatile __bit IOCAN2 @ (((unsigned) &IOCAN)*8) + 2;

extern volatile __bit IOCAN3 @ (((unsigned) &IOCAN)*8) + 3;

extern volatile __bit IOCAN4 @ (((unsigned) &IOCAN)*8) + 4;

extern volatile __bit IOCAN5 @ (((unsigned) &IOCAN)*8) + 5;

extern volatile __bit IOCAP0 @ (((unsigned) &IOCAP)*8) + 0;

extern volatile __bit IOCAP1 @ (((unsigned) &IOCAP)*8) + 1;

extern volatile __bit IOCAP2 @ (((unsigned) &IOCAP)*8) + 2;

extern volatile __bit IOCAP3 @ (((unsigned) &IOCAP)*8) + 3;

extern volatile __bit IOCAP4 @ (((unsigned) &IOCAP)*8) + 4;

extern volatile __bit IOCAP5 @ (((unsigned) &IOCAP)*8) + 5;

extern volatile __bit IOCIE @ (((unsigned) &INTCON)*8) + 3;

extern volatile __bit IOCIF @ (((unsigned) &INTCON)*8) + 0;

extern volatile __bit IRCF0 @ (((unsigned) &OSCCON)*8) + 3;

extern volatile __bit IRCF1 @ (((unsigned) &OSCCON)*8) + 4;

extern volatile __bit IRCF2 @ (((unsigned) &OSCCON)*8) + 5;

extern volatile __bit IRCF3 @ (((unsigned) &OSCCON)*8) + 6;

extern volatile __bit LATA0 @ (((unsigned) &LATA)*8) + 0;

extern volatile __bit LATA1 @ (((unsigned) &LATA)*8) + 1;

extern volatile __bit LATA2 @ (((unsigned) &LATA)*8) + 2;

extern volatile __bit LATA4 @ (((unsigned) &LATA)*8) + 4;

extern volatile __bit LATA5 @ (((unsigned) &LATA)*8) + 5;

extern volatile __bit LFIOFR @ (((unsigned) &OSCSTAT)*8) + 1;

extern volatile __bit LWLO @ (((unsigned) &PMCON1)*8) + 5;

extern volatile __bit MC1OUT @ (((unsigned) &CMOUT)*8) + 0;

extern volatile __bit MFIOFR @ (((unsigned) &OSCSTAT)*8) + 2;

extern volatile __bit MPWM1EN @ (((unsigned) &PWMEN)*8) + 0;

extern volatile __bit MPWM1LD @ (((unsigned) &PWMLD)*8) + 0;

extern volatile __bit MPWM1OUT @ (((unsigned) &PWMOUT)*8) + 0;

extern volatile __bit MPWM2EN @ (((unsigned) &PWMEN)*8) + 1;

extern volatile __bit MPWM2LD @ (((unsigned) &PWMLD)*8) + 1;

extern volatile __bit MPWM2OUT @ (((unsigned) &PWMOUT)*8) + 1;

extern volatile __bit MPWM3EN @ (((unsigned) &PWMEN)*8) + 2;

extern volatile __bit MPWM3LD @ (((unsigned) &PWMLD)*8) + 2;

extern volatile __bit MPWM3OUT @ (((unsigned) &PWMOUT)*8) + 2;

extern volatile __bit ODA0 @ (((unsigned) &ODCONA)*8) + 0;

extern volatile __bit ODA1 @ (((unsigned) &ODCONA)*8) + 1;

extern volatile __bit ODA2 @ (((unsigned) &ODCONA)*8) + 2;

extern volatile __bit ODA4 @ (((unsigned) &ODCONA)*8) + 4;

extern volatile __bit ODA5 @ (((unsigned) &ODCONA)*8) + 5;

extern volatile __bit OERR @ (((unsigned) &RCSTA)*8) + 1;

extern volatile __bit OSTS @ (((unsigned) &OSCSTAT)*8) + 5;

extern volatile __bit P1SEL @ (((unsigned) &APFCON)*8) + 0;

extern volatile __bit P2SEL @ (((unsigned) &APFCON)*8) + 1;

extern volatile __bit PEIE @ (((unsigned) &INTCON)*8) + 6;

extern volatile __bit PLLR @ (((unsigned) &OSCSTAT)*8) + 6;

extern volatile __bit PSA @ (((unsigned) &OPTION_REG)*8) + 3;

extern volatile __bit PWM1CS0 @ (((unsigned) &PWM1CLKCON)*8) + 0;

extern volatile __bit PWM1CS1 @ (((unsigned) &PWM1CLKCON)*8) + 1;

extern volatile __bit PWM1DCH0 @ (((unsigned) &PWM1DCH)*8) + 0;

extern volatile __bit PWM1DCH1 @ (((unsigned) &PWM1DCH)*8) + 1;

extern volatile __bit PWM1DCH2 @ (((unsigned) &PWM1DCH)*8) + 2;

extern volatile __bit PWM1DCH3 @ (((unsigned) &PWM1DCH)*8) + 3;

extern volatile __bit PWM1DCH4 @ (((unsigned) &PWM1DCH)*8) + 4;

extern volatile __bit PWM1DCH5 @ (((unsigned) &PWM1DCH)*8) + 5;

extern volatile __bit PWM1DCH6 @ (((unsigned) &PWM1DCH)*8) + 6;

extern volatile __bit PWM1DCH7 @ (((unsigned) &PWM1DCH)*8) + 7;

extern volatile __bit PWM1DCIE @ (((unsigned) &PWM1INTE)*8) + 1;

extern volatile __bit PWM1DCIF @ (((unsigned) &PWM1INTF)*8) + 1;

extern volatile __bit PWM1DCL0 @ (((unsigned) &PWM1DCL)*8) + 0;

extern volatile __bit PWM1DCL1 @ (((unsigned) &PWM1DCL)*8) + 1;

extern volatile __bit PWM1DCL2 @ (((unsigned) &PWM1DCL)*8) + 2;

extern volatile __bit PWM1DCL3 @ (((unsigned) &PWM1DCL)*8) + 3;

extern volatile __bit PWM1DCL4 @ (((unsigned) &PWM1DCL)*8) + 4;

extern volatile __bit PWM1DCL5 @ (((unsigned) &PWM1DCL)*8) + 5;

extern volatile __bit PWM1DCL6 @ (((unsigned) &PWM1DCL)*8) + 6;

extern volatile __bit PWM1DCL7 @ (((unsigned) &PWM1DCL)*8) + 7;

extern volatile __bit PWM1EN @ (((unsigned) &PWM1CON)*8) + 7;

extern volatile __bit PWM1EN_A @ (((unsigned) &PWMEN)*8) + 0;

extern volatile __bit PWM1IE @ (((unsigned) &PIE3)*8) + 4;

extern volatile __bit PWM1IF @ (((unsigned) &PIR3)*8) + 4;

extern volatile __bit PWM1LD @ (((unsigned) &PWM1LDCON)*8) + 7;

extern volatile __bit PWM1LDA_A @ (((unsigned) &PWMLD)*8) + 0;

extern volatile __bit PWM1LDM @ (((unsigned) &PWM1LDCON)*8) + 6;

extern volatile __bit PWM1LDS0 @ (((unsigned) &PWM1LDCON)*8) + 0;

extern volatile __bit PWM1LDS1 @ (((unsigned) &PWM1LDCON)*8) + 1;

extern volatile __bit PWM1MODE0 @ (((unsigned) &PWM1CON)*8) + 2;

extern volatile __bit PWM1MODE1 @ (((unsigned) &PWM1CON)*8) + 3;

extern volatile __bit PWM1OE @ (((unsigned) &PWM1CON)*8) + 6;

extern volatile __bit PWM1OFH0 @ (((unsigned) &PWM1OFH)*8) + 0;

extern volatile __bit PWM1OFH1 @ (((unsigned) &PWM1OFH)*8) + 1;

extern volatile __bit PWM1OFH2 @ (((unsigned) &PWM1OFH)*8) + 2;

extern volatile __bit PWM1OFH3 @ (((unsigned) &PWM1OFH)*8) + 3;

extern volatile __bit PWM1OFH4 @ (((unsigned) &PWM1OFH)*8) + 4;

extern volatile __bit PWM1OFH5 @ (((unsigned) &PWM1OFH)*8) + 5;

extern volatile __bit PWM1OFH6 @ (((unsigned) &PWM1OFH)*8) + 6;

extern volatile __bit PWM1OFH7 @ (((unsigned) &PWM1OFH)*8) + 7;

extern volatile __bit PWM1OFIE @ (((unsigned) &PWM1INTE)*8) + 3;

extern volatile __bit PWM1OFIF @ (((unsigned) &PWM1INTF)*8) + 3;

extern volatile __bit PWM1OFL0 @ (((unsigned) &PWM1OFL)*8) + 0;

extern volatile __bit PWM1OFL1 @ (((unsigned) &PWM1OFL)*8) + 1;

extern volatile __bit PWM1OFL2 @ (((unsigned) &PWM1OFL)*8) + 2;

extern volatile __bit PWM1OFL3 @ (((unsigned) &PWM1OFL)*8) + 3;

extern volatile __bit PWM1OFL4 @ (((unsigned) &PWM1OFL)*8) + 4;

extern volatile __bit PWM1OFL5 @ (((unsigned) &PWM1OFL)*8) + 5;

extern volatile __bit PWM1OFL6 @ (((unsigned) &PWM1OFL)*8) + 6;

extern volatile __bit PWM1OFL7 @ (((unsigned) &PWM1OFL)*8) + 7;

extern volatile __bit PWM1OFM0 @ (((unsigned) &PWM1OFCON)*8) + 5;

extern volatile __bit PWM1OFM1 @ (((unsigned) &PWM1OFCON)*8) + 6;

extern volatile __bit PWM1OFMC @ (((unsigned) &PWM1OFCON)*8) + 4;

extern volatile __bit PWM1OFS0 @ (((unsigned) &PWM1OFCON)*8) + 0;

extern volatile __bit PWM1OFS1 @ (((unsigned) &PWM1OFCON)*8) + 1;

extern volatile __bit PWM1OUT @ (((unsigned) &PWM1CON)*8) + 5;

extern volatile __bit PWM1OUT_A @ (((unsigned) &PWMOUT)*8) + 0;

extern volatile __bit PWM1PHH0 @ (((unsigned) &PWM1PHH)*8) + 0;

extern volatile __bit PWM1PHH1 @ (((unsigned) &PWM1PHH)*8) + 1;

extern volatile __bit PWM1PHH2 @ (((unsigned) &PWM1PHH)*8) + 2;

extern volatile __bit PWM1PHH3 @ (((unsigned) &PWM1PHH)*8) + 3;

extern volatile __bit PWM1PHH4 @ (((unsigned) &PWM1PHH)*8) + 4;

extern volatile __bit PWM1PHH5 @ (((unsigned) &PWM1PHH)*8) + 5;

extern volatile __bit PWM1PHH6 @ (((unsigned) &PWM1PHH)*8) + 6;

extern volatile __bit PWM1PHH7 @ (((unsigned) &PWM1PHH)*8) + 7;

extern volatile __bit PWM1PHIE @ (((unsigned) &PWM1INTE)*8) + 2;

extern volatile __bit PWM1PHIF @ (((unsigned) &PWM1INTF)*8) + 2;

extern volatile __bit PWM1PHL0 @ (((unsigned) &PWM1PHL)*8) + 0;

extern volatile __bit PWM1PHL1 @ (((unsigned) &PWM1PHL)*8) + 1;

extern volatile __bit PWM1PHL2 @ (((unsigned) &PWM1PHL)*8) + 2;

extern volatile __bit PWM1PHL3 @ (((unsigned) &PWM1PHL)*8) + 3;

extern volatile __bit PWM1PHL4 @ (((unsigned) &PWM1PHL)*8) + 4;

extern volatile __bit PWM1PHL5 @ (((unsigned) &PWM1PHL)*8) + 5;

extern volatile __bit PWM1PHL6 @ (((unsigned) &PWM1PHL)*8) + 6;

extern volatile __bit PWM1PHL7 @ (((unsigned) &PWM1PHL)*8) + 7;

extern volatile __bit PWM1POL @ (((unsigned) &PWM1CON)*8) + 4;

extern volatile __bit PWM1PRH0 @ (((unsigned) &PWM1PRH)*8) + 0;

extern volatile __bit PWM1PRH1 @ (((unsigned) &PWM1PRH)*8) + 1;

extern volatile __bit PWM1PRH2 @ (((unsigned) &PWM1PRH)*8) + 2;

extern volatile __bit PWM1PRH3 @ (((unsigned) &PWM1PRH)*8) + 3;

extern volatile __bit PWM1PRH4 @ (((unsigned) &PWM1PRH)*8) + 4;

extern volatile __bit PWM1PRH5 @ (((unsigned) &PWM1PRH)*8) + 5;

extern volatile __bit PWM1PRH6 @ (((unsigned) &PWM1PRH)*8) + 6;

extern volatile __bit PWM1PRH7 @ (((unsigned) &PWM1PRH)*8) + 7;

extern volatile __bit PWM1PRIE @ (((unsigned) &PWM1INTE)*8) + 0;

extern volatile __bit PWM1PRIF @ (((unsigned) &PWM1INTF)*8) + 0;

extern volatile __bit PWM1PRL0 @ (((unsigned) &PWM1PRL)*8) + 0;

extern volatile __bit PWM1PRL1 @ (((unsigned) &PWM1PRL)*8) + 1;

extern volatile __bit PWM1PRL2 @ (((unsigned) &PWM1PRL)*8) + 2;

extern volatile __bit PWM1PRL3 @ (((unsigned) &PWM1PRL)*8) + 3;

extern volatile __bit PWM1PRL4 @ (((unsigned) &PWM1PRL)*8) + 4;

extern volatile __bit PWM1PRL5 @ (((unsigned) &PWM1PRL)*8) + 5;

extern volatile __bit PWM1PRL6 @ (((unsigned) &PWM1PRL)*8) + 6;

extern volatile __bit PWM1PRL7 @ (((unsigned) &PWM1PRL)*8) + 7;

extern volatile __bit PWM1PS0 @ (((unsigned) &PWM1CLKCON)*8) + 4;

extern volatile __bit PWM1PS1 @ (((unsigned) &PWM1CLKCON)*8) + 5;

extern volatile __bit PWM1PS2 @ (((unsigned) &PWM1CLKCON)*8) + 6;

extern volatile __bit PWM1TMRH0 @ (((unsigned) &PWM1TMRH)*8) + 0;

extern volatile __bit PWM1TMRH1 @ (((unsigned) &PWM1TMRH)*8) + 1;

extern volatile __bit PWM1TMRH2 @ (((unsigned) &PWM1TMRH)*8) + 2;

extern volatile __bit PWM1TMRH3 @ (((unsigned) &PWM1TMRH)*8) + 3;

extern volatile __bit PWM1TMRH4 @ (((unsigned) &PWM1TMRH)*8) + 4;

extern volatile __bit PWM1TMRH5 @ (((unsigned) &PWM1TMRH)*8) + 5;

extern volatile __bit PWM1TMRH6 @ (((unsigned) &PWM1TMRH)*8) + 6;

extern volatile __bit PWM1TMRH7 @ (((unsigned) &PWM1TMRH)*8) + 7;

extern volatile __bit PWM1TMRL0 @ (((unsigned) &PWM1TMRL)*8) + 0;

extern volatile __bit PWM1TMRL1 @ (((unsigned) &PWM1TMRL)*8) + 1;

extern volatile __bit PWM1TMRL2 @ (((unsigned) &PWM1TMRL)*8) + 2;

extern volatile __bit PWM1TMRL3 @ (((unsigned) &PWM1TMRL)*8) + 3;

extern volatile __bit PWM1TMRL4 @ (((unsigned) &PWM1TMRL)*8) + 4;

extern volatile __bit PWM1TMRL5 @ (((unsigned) &PWM1TMRL)*8) + 5;

extern volatile __bit PWM1TMRL6 @ (((unsigned) &PWM1TMRL)*8) + 6;

extern volatile __bit PWM1TMRL7 @ (((unsigned) &PWM1TMRL)*8) + 7;

extern volatile __bit PWM2CS0 @ (((unsigned) &PWM2CLKCON)*8) + 0;

extern volatile __bit PWM2CS1 @ (((unsigned) &PWM2CLKCON)*8) + 1;

extern volatile __bit PWM2DCH0 @ (((unsigned) &PWM2DCH)*8) + 0;

extern volatile __bit PWM2DCH1 @ (((unsigned) &PWM2DCH)*8) + 1;

extern volatile __bit PWM2DCH2 @ (((unsigned) &PWM2DCH)*8) + 2;

extern volatile __bit PWM2DCH3 @ (((unsigned) &PWM2DCH)*8) + 3;

extern volatile __bit PWM2DCH4 @ (((unsigned) &PWM2DCH)*8) + 4;

extern volatile __bit PWM2DCH5 @ (((unsigned) &PWM2DCH)*8) + 5;

extern volatile __bit PWM2DCH6 @ (((unsigned) &PWM2DCH)*8) + 6;

extern volatile __bit PWM2DCH7 @ (((unsigned) &PWM2DCH)*8) + 7;

extern volatile __bit PWM2DCIE @ (((unsigned) &PWM2INTE)*8) + 1;

extern volatile __bit PWM2DCIF @ (((unsigned) &PWM2INTF)*8) + 1;

extern volatile __bit PWM2DCL0 @ (((unsigned) &PWM2DCL)*8) + 0;

extern volatile __bit PWM2DCL1 @ (((unsigned) &PWM2DCL)*8) + 1;

extern volatile __bit PWM2DCL2 @ (((unsigned) &PWM2DCL)*8) + 2;

extern volatile __bit PWM2DCL3 @ (((unsigned) &PWM2DCL)*8) + 3;

extern volatile __bit PWM2DCL4 @ (((unsigned) &PWM2DCL)*8) + 4;

extern volatile __bit PWM2DCL5 @ (((unsigned) &PWM2DCL)*8) + 5;

extern volatile __bit PWM2DCL6 @ (((unsigned) &PWM2DCL)*8) + 6;

extern volatile __bit PWM2DCL7 @ (((unsigned) &PWM2DCL)*8) + 7;

extern volatile __bit PWM2EN @ (((unsigned) &PWM2CON)*8) + 7;

extern volatile __bit PWM2EN_A @ (((unsigned) &PWMEN)*8) + 1;

extern volatile __bit PWM2IE @ (((unsigned) &PIE3)*8) + 5;

extern volatile __bit PWM2IF @ (((unsigned) &PIR3)*8) + 5;

extern volatile __bit PWM2LD @ (((unsigned) &PWM2LDCON)*8) + 7;

extern volatile __bit PWM2LDA_A @ (((unsigned) &PWMLD)*8) + 1;

extern volatile __bit PWM2LDM @ (((unsigned) &PWM2LDCON)*8) + 6;

extern volatile __bit PWM2LDS0 @ (((unsigned) &PWM2LDCON)*8) + 0;

extern volatile __bit PWM2LDS1 @ (((unsigned) &PWM2LDCON)*8) + 1;

extern volatile __bit PWM2MODE0 @ (((unsigned) &PWM2CON)*8) + 2;

extern volatile __bit PWM2MODE1 @ (((unsigned) &PWM2CON)*8) + 3;

extern volatile __bit PWM2OE @ (((unsigned) &PWM2CON)*8) + 6;

extern volatile __bit PWM2OFH0 @ (((unsigned) &PWM2OFH)*8) + 0;

extern volatile __bit PWM2OFH1 @ (((unsigned) &PWM2OFH)*8) + 1;

extern volatile __bit PWM2OFH2 @ (((unsigned) &PWM2OFH)*8) + 2;

extern volatile __bit PWM2OFH3 @ (((unsigned) &PWM2OFH)*8) + 3;

extern volatile __bit PWM2OFH4 @ (((unsigned) &PWM2OFH)*8) + 4;

extern volatile __bit PWM2OFH5 @ (((unsigned) &PWM2OFH)*8) + 5;

extern volatile __bit PWM2OFH6 @ (((unsigned) &PWM2OFH)*8) + 6;

extern volatile __bit PWM2OFH7 @ (((unsigned) &PWM2OFH)*8) + 7;

extern volatile __bit PWM2OFIE @ (((unsigned) &PWM2INTE)*8) + 3;

extern volatile __bit PWM2OFIF @ (((unsigned) &PWM2INTF)*8) + 3;

extern volatile __bit PWM2OFL0 @ (((unsigned) &PWM2OFL)*8) + 0;

extern volatile __bit PWM2OFL1 @ (((unsigned) &PWM2OFL)*8) + 1;

extern volatile __bit PWM2OFL2 @ (((unsigned) &PWM2OFL)*8) + 2;

extern volatile __bit PWM2OFL3 @ (((unsigned) &PWM2OFL)*8) + 3;

extern volatile __bit PWM2OFL4 @ (((unsigned) &PWM2OFL)*8) + 4;

extern volatile __bit PWM2OFL5 @ (((unsigned) &PWM2OFL)*8) + 5;

extern volatile __bit PWM2OFL6 @ (((unsigned) &PWM2OFL)*8) + 6;

extern volatile __bit PWM2OFL7 @ (((unsigned) &PWM2OFL)*8) + 7;

extern volatile __bit PWM2OFM0 @ (((unsigned) &PWM2OFCON)*8) + 5;

extern volatile __bit PWM2OFM1 @ (((unsigned) &PWM2OFCON)*8) + 6;

extern volatile __bit PWM2OFMC @ (((unsigned) &PWM2OFCON)*8) + 4;

extern volatile __bit PWM2OFS0 @ (((unsigned) &PWM2OFCON)*8) + 0;

extern volatile __bit PWM2OFS1 @ (((unsigned) &PWM2OFCON)*8) + 1;

extern volatile __bit PWM2OUT @ (((unsigned) &PWM2CON)*8) + 5;

extern volatile __bit PWM2OUT_A @ (((unsigned) &PWMOUT)*8) + 1;

extern volatile __bit PWM2PHH0 @ (((unsigned) &PWM2PHH)*8) + 0;

extern volatile __bit PWM2PHH1 @ (((unsigned) &PWM2PHH)*8) + 1;

extern volatile __bit PWM2PHH2 @ (((unsigned) &PWM2PHH)*8) + 2;

extern volatile __bit PWM2PHH3 @ (((unsigned) &PWM2PHH)*8) + 3;

extern volatile __bit PWM2PHH4 @ (((unsigned) &PWM2PHH)*8) + 4;

extern volatile __bit PWM2PHH5 @ (((unsigned) &PWM2PHH)*8) + 5;

extern volatile __bit PWM2PHH6 @ (((unsigned) &PWM2PHH)*8) + 6;

extern volatile __bit PWM2PHH7 @ (((unsigned) &PWM2PHH)*8) + 7;

extern volatile __bit PWM2PHIE @ (((unsigned) &PWM2INTE)*8) + 2;

extern volatile __bit PWM2PHIF @ (((unsigned) &PWM2INTF)*8) + 2;

extern volatile __bit PWM2PHL0 @ (((unsigned) &PWM2PHL)*8) + 0;

extern volatile __bit PWM2PHL1 @ (((unsigned) &PWM2PHL)*8) + 1;

extern volatile __bit PWM2PHL2 @ (((unsigned) &PWM2PHL)*8) + 2;

extern volatile __bit PWM2PHL3 @ (((unsigned) &PWM2PHL)*8) + 3;

extern volatile __bit PWM2PHL4 @ (((unsigned) &PWM2PHL)*8) + 4;

extern volatile __bit PWM2PHL5 @ (((unsigned) &PWM2PHL)*8) + 5;

extern volatile __bit PWM2PHL6 @ (((unsigned) &PWM2PHL)*8) + 6;

extern volatile __bit PWM2PHL7 @ (((unsigned) &PWM2PHL)*8) + 7;

extern volatile __bit PWM2POL @ (((unsigned) &PWM2CON)*8) + 4;

extern volatile __bit PWM2PRH0 @ (((unsigned) &PWM2PRH)*8) + 0;

extern volatile __bit PWM2PRH1 @ (((unsigned) &PWM2PRH)*8) + 1;

extern volatile __bit PWM2PRH2 @ (((unsigned) &PWM2PRH)*8) + 2;

extern volatile __bit PWM2PRH3 @ (((unsigned) &PWM2PRH)*8) + 3;

extern volatile __bit PWM2PRH4 @ (((unsigned) &PWM2PRH)*8) + 4;

extern volatile __bit PWM2PRH5 @ (((unsigned) &PWM2PRH)*8) + 5;

extern volatile __bit PWM2PRH6 @ (((unsigned) &PWM2PRH)*8) + 6;

extern volatile __bit PWM2PRH7 @ (((unsigned) &PWM2PRH)*8) + 7;

extern volatile __bit PWM2PRIE @ (((unsigned) &PWM2INTE)*8) + 0;

extern volatile __bit PWM2PRIF @ (((unsigned) &PWM2INTF)*8) + 0;

extern volatile __bit PWM2PRL0 @ (((unsigned) &PWM2PRL)*8) + 0;

extern volatile __bit PWM2PRL1 @ (((unsigned) &PWM2PRL)*8) + 1;

extern volatile __bit PWM2PRL2 @ (((unsigned) &PWM2PRL)*8) + 2;

extern volatile __bit PWM2PRL3 @ (((unsigned) &PWM2PRL)*8) + 3;

extern volatile __bit PWM2PRL4 @ (((unsigned) &PWM2PRL)*8) + 4;

extern volatile __bit PWM2PRL5 @ (((unsigned) &PWM2PRL)*8) + 5;

extern volatile __bit PWM2PRL6 @ (((unsigned) &PWM2PRL)*8) + 6;

extern volatile __bit PWM2PRL7 @ (((unsigned) &PWM2PRL)*8) + 7;

extern volatile __bit PWM2PS0 @ (((unsigned) &PWM2CLKCON)*8) + 4;

extern volatile __bit PWM2PS1 @ (((unsigned) &PWM2CLKCON)*8) + 5;

extern volatile __bit PWM2PS2 @ (((unsigned) &PWM2CLKCON)*8) + 6;

extern volatile __bit PWM2TMRH0 @ (((unsigned) &PWM2TMRH)*8) + 0;

extern volatile __bit PWM2TMRH1 @ (((unsigned) &PWM2TMRH)*8) + 1;

extern volatile __bit PWM2TMRH2 @ (((unsigned) &PWM2TMRH)*8) + 2;

extern volatile __bit PWM2TMRH3 @ (((unsigned) &PWM2TMRH)*8) + 3;

extern volatile __bit PWM2TMRH4 @ (((unsigned) &PWM2TMRH)*8) + 4;

extern volatile __bit PWM2TMRH5 @ (((unsigned) &PWM2TMRH)*8) + 5;

extern volatile __bit PWM2TMRH6 @ (((unsigned) &PWM2TMRH)*8) + 6;

extern volatile __bit PWM2TMRH7 @ (((unsigned) &PWM2TMRH)*8) + 7;

extern volatile __bit PWM2TMRL0 @ (((unsigned) &PWM2TMRL)*8) + 0;

extern volatile __bit PWM2TMRL1 @ (((unsigned) &PWM2TMRL)*8) + 1;

extern volatile __bit PWM2TMRL2 @ (((unsigned) &PWM2TMRL)*8) + 2;

extern volatile __bit PWM2TMRL3 @ (((unsigned) &PWM2TMRL)*8) + 3;

extern volatile __bit PWM2TMRL4 @ (((unsigned) &PWM2TMRL)*8) + 4;

extern volatile __bit PWM2TMRL5 @ (((unsigned) &PWM2TMRL)*8) + 5;

extern volatile __bit PWM2TMRL6 @ (((unsigned) &PWM2TMRL)*8) + 6;

extern volatile __bit PWM2TMRL7 @ (((unsigned) &PWM2TMRL)*8) + 7;

extern volatile __bit PWM3CS0 @ (((unsigned) &PWM3CLKCON)*8) + 0;

extern volatile __bit PWM3CS1 @ (((unsigned) &PWM3CLKCON)*8) + 1;

extern volatile __bit PWM3DCH0 @ (((unsigned) &PWM3DCH)*8) + 0;

extern volatile __bit PWM3DCH1 @ (((unsigned) &PWM3DCH)*8) + 1;

extern volatile __bit PWM3DCH2 @ (((unsigned) &PWM3DCH)*8) + 2;

extern volatile __bit PWM3DCH3 @ (((unsigned) &PWM3DCH)*8) + 3;

extern volatile __bit PWM3DCH4 @ (((unsigned) &PWM3DCH)*8) + 4;

extern volatile __bit PWM3DCH5 @ (((unsigned) &PWM3DCH)*8) + 5;

extern volatile __bit PWM3DCH6 @ (((unsigned) &PWM3DCH)*8) + 6;

extern volatile __bit PWM3DCH7 @ (((unsigned) &PWM3DCH)*8) + 7;

extern volatile __bit PWM3DCIE @ (((unsigned) &PWM3INTE)*8) + 1;

extern volatile __bit PWM3DCIF @ (((unsigned) &PWM3INTF)*8) + 1;

extern volatile __bit PWM3DCL0 @ (((unsigned) &PWM3DCL)*8) + 0;

extern volatile __bit PWM3DCL1 @ (((unsigned) &PWM3DCL)*8) + 1;

extern volatile __bit PWM3DCL2 @ (((unsigned) &PWM3DCL)*8) + 2;

extern volatile __bit PWM3DCL3 @ (((unsigned) &PWM3DCL)*8) + 3;

extern volatile __bit PWM3DCL4 @ (((unsigned) &PWM3DCL)*8) + 4;

extern volatile __bit PWM3DCL5 @ (((unsigned) &PWM3DCL)*8) + 5;

extern volatile __bit PWM3DCL6 @ (((unsigned) &PWM3DCL)*8) + 6;

extern volatile __bit PWM3DCL7 @ (((unsigned) &PWM3DCL)*8) + 7;

extern volatile __bit PWM3EN @ (((unsigned) &PWM3CON)*8) + 7;

extern volatile __bit PWM3EN_A @ (((unsigned) &PWMEN)*8) + 2;

extern volatile __bit PWM3IE @ (((unsigned) &PIE3)*8) + 6;

extern volatile __bit PWM3IF @ (((unsigned) &PIR3)*8) + 6;

extern volatile __bit PWM3LD @ (((unsigned) &PWM3LDCON)*8) + 7;

extern volatile __bit PWM3LDA_A @ (((unsigned) &PWMLD)*8) + 2;

extern volatile __bit PWM3LDM @ (((unsigned) &PWM3LDCON)*8) + 6;

extern volatile __bit PWM3LDS0 @ (((unsigned) &PWM3LDCON)*8) + 0;

extern volatile __bit PWM3LDS1 @ (((unsigned) &PWM3LDCON)*8) + 1;

extern volatile __bit PWM3MODE0 @ (((unsigned) &PWM3CON)*8) + 2;

extern volatile __bit PWM3MODE1 @ (((unsigned) &PWM3CON)*8) + 3;

extern volatile __bit PWM3OE @ (((unsigned) &PWM3CON)*8) + 6;

extern volatile __bit PWM3OFH0 @ (((unsigned) &PWM3OFH)*8) + 0;

extern volatile __bit PWM3OFH1 @ (((unsigned) &PWM3OFH)*8) + 1;

extern volatile __bit PWM3OFH2 @ (((unsigned) &PWM3OFH)*8) + 2;

extern volatile __bit PWM3OFH3 @ (((unsigned) &PWM3OFH)*8) + 3;

extern volatile __bit PWM3OFH4 @ (((unsigned) &PWM3OFH)*8) + 4;

extern volatile __bit PWM3OFH5 @ (((unsigned) &PWM3OFH)*8) + 5;

extern volatile __bit PWM3OFH6 @ (((unsigned) &PWM3OFH)*8) + 6;

extern volatile __bit PWM3OFH7 @ (((unsigned) &PWM3OFH)*8) + 7;

extern volatile __bit PWM3OFIE @ (((unsigned) &PWM3INTE)*8) + 3;

extern volatile __bit PWM3OFIF @ (((unsigned) &PWM3INTF)*8) + 3;

extern volatile __bit PWM3OFL0 @ (((unsigned) &PWM3OFL)*8) + 0;

extern volatile __bit PWM3OFL1 @ (((unsigned) &PWM3OFL)*8) + 1;

extern volatile __bit PWM3OFL2 @ (((unsigned) &PWM3OFL)*8) + 2;

extern volatile __bit PWM3OFL3 @ (((unsigned) &PWM3OFL)*8) + 3;

extern volatile __bit PWM3OFL4 @ (((unsigned) &PWM3OFL)*8) + 4;

extern volatile __bit PWM3OFL5 @ (((unsigned) &PWM3OFL)*8) + 5;

extern volatile __bit PWM3OFL6 @ (((unsigned) &PWM3OFL)*8) + 6;

extern volatile __bit PWM3OFL7 @ (((unsigned) &PWM3OFL)*8) + 7;

extern volatile __bit PWM3OFM0 @ (((unsigned) &PWM3OFCON)*8) + 5;

extern volatile __bit PWM3OFM1 @ (((unsigned) &PWM3OFCON)*8) + 6;

extern volatile __bit PWM3OFMC @ (((unsigned) &PWM3OFCON)*8) + 4;

extern volatile __bit PWM3OFS0 @ (((unsigned) &PWM3OFCON)*8) + 0;

extern volatile __bit PWM3OFS1 @ (((unsigned) &PWM3OFCON)*8) + 1;

extern volatile __bit PWM3OUT @ (((unsigned) &PWM3CON)*8) + 5;

extern volatile __bit PWM3OUT_A @ (((unsigned) &PWMOUT)*8) + 2;

extern volatile __bit PWM3PHH0 @ (((unsigned) &PWM3PHH)*8) + 0;

extern volatile __bit PWM3PHH1 @ (((unsigned) &PWM3PHH)*8) + 1;

extern volatile __bit PWM3PHH2 @ (((unsigned) &PWM3PHH)*8) + 2;

extern volatile __bit PWM3PHH3 @ (((unsigned) &PWM3PHH)*8) + 3;

extern volatile __bit PWM3PHH4 @ (((unsigned) &PWM3PHH)*8) + 4;

extern volatile __bit PWM3PHH5 @ (((unsigned) &PWM3PHH)*8) + 5;

extern volatile __bit PWM3PHH6 @ (((unsigned) &PWM3PHH)*8) + 6;

extern volatile __bit PWM3PHH7 @ (((unsigned) &PWM3PHH)*8) + 7;

extern volatile __bit PWM3PHIE @ (((unsigned) &PWM3INTE)*8) + 2;

extern volatile __bit PWM3PHIF @ (((unsigned) &PWM3INTF)*8) + 2;

extern volatile __bit PWM3PHL0 @ (((unsigned) &PWM3PHL)*8) + 0;

extern volatile __bit PWM3PHL1 @ (((unsigned) &PWM3PHL)*8) + 1;

extern volatile __bit PWM3PHL2 @ (((unsigned) &PWM3PHL)*8) + 2;

extern volatile __bit PWM3PHL3 @ (((unsigned) &PWM3PHL)*8) + 3;

extern volatile __bit PWM3PHL4 @ (((unsigned) &PWM3PHL)*8) + 4;

extern volatile __bit PWM3PHL5 @ (((unsigned) &PWM3PHL)*8) + 5;

extern volatile __bit PWM3PHL6 @ (((unsigned) &PWM3PHL)*8) + 6;

extern volatile __bit PWM3PHL7 @ (((unsigned) &PWM3PHL)*8) + 7;

extern volatile __bit PWM3POL @ (((unsigned) &PWM3CON)*8) + 4;

extern volatile __bit PWM3PRH0 @ (((unsigned) &PWM3PRH)*8) + 0;

extern volatile __bit PWM3PRH1 @ (((unsigned) &PWM3PRH)*8) + 1;

extern volatile __bit PWM3PRH2 @ (((unsigned) &PWM3PRH)*8) + 2;

extern volatile __bit PWM3PRH3 @ (((unsigned) &PWM3PRH)*8) + 3;

extern volatile __bit PWM3PRH4 @ (((unsigned) &PWM3PRH)*8) + 4;

extern volatile __bit PWM3PRH5 @ (((unsigned) &PWM3PRH)*8) + 5;

extern volatile __bit PWM3PRH6 @ (((unsigned) &PWM3PRH)*8) + 6;

extern volatile __bit PWM3PRH7 @ (((unsigned) &PWM3PRH)*8) + 7;

extern volatile __bit PWM3PRIE @ (((unsigned) &PWM3INTE)*8) + 0;

extern volatile __bit PWM3PRIF @ (((unsigned) &PWM3INTF)*8) + 0;

extern volatile __bit PWM3PRL0 @ (((unsigned) &PWM3PRL)*8) + 0;

extern volatile __bit PWM3PRL1 @ (((unsigned) &PWM3PRL)*8) + 1;

extern volatile __bit PWM3PRL2 @ (((unsigned) &PWM3PRL)*8) + 2;

extern volatile __bit PWM3PRL3 @ (((unsigned) &PWM3PRL)*8) + 3;

extern volatile __bit PWM3PRL4 @ (((unsigned) &PWM3PRL)*8) + 4;

extern volatile __bit PWM3PRL5 @ (((unsigned) &PWM3PRL)*8) + 5;

extern volatile __bit PWM3PRL6 @ (((unsigned) &PWM3PRL)*8) + 6;

extern volatile __bit PWM3PRL7 @ (((unsigned) &PWM3PRL)*8) + 7;

extern volatile __bit PWM3PS0 @ (((unsigned) &PWM3CLKCON)*8) + 4;

extern volatile __bit PWM3PS1 @ (((unsigned) &PWM3CLKCON)*8) + 5;

extern volatile __bit PWM3PS2 @ (((unsigned) &PWM3CLKCON)*8) + 6;

extern volatile __bit PWM3TMRH0 @ (((unsigned) &PWM3TMRH)*8) + 0;

extern volatile __bit PWM3TMRH1 @ (((unsigned) &PWM3TMRH)*8) + 1;

extern volatile __bit PWM3TMRH2 @ (((unsigned) &PWM3TMRH)*8) + 2;

extern volatile __bit PWM3TMRH3 @ (((unsigned) &PWM3TMRH)*8) + 3;

extern volatile __bit PWM3TMRH4 @ (((unsigned) &PWM3TMRH)*8) + 4;

extern volatile __bit PWM3TMRH5 @ (((unsigned) &PWM3TMRH)*8) + 5;

extern volatile __bit PWM3TMRH6 @ (((unsigned) &PWM3TMRH)*8) + 6;

extern volatile __bit PWM3TMRH7 @ (((unsigned) &PWM3TMRH)*8) + 7;

extern volatile __bit PWM3TMRL0 @ (((unsigned) &PWM3TMRL)*8) + 0;

extern volatile __bit PWM3TMRL1 @ (((unsigned) &PWM3TMRL)*8) + 1;

extern volatile __bit PWM3TMRL2 @ (((unsigned) &PWM3TMRL)*8) + 2;

extern volatile __bit PWM3TMRL3 @ (((unsigned) &PWM3TMRL)*8) + 3;

extern volatile __bit PWM3TMRL4 @ (((unsigned) &PWM3TMRL)*8) + 4;

extern volatile __bit PWM3TMRL5 @ (((unsigned) &PWM3TMRL)*8) + 5;

extern volatile __bit PWM3TMRL6 @ (((unsigned) &PWM3TMRL)*8) + 6;

extern volatile __bit PWM3TMRL7 @ (((unsigned) &PWM3TMRL)*8) + 7;

extern volatile __bit RA0 @ (((unsigned) &PORTA)*8) + 0;

extern volatile __bit RA1 @ (((unsigned) &PORTA)*8) + 1;

extern volatile __bit RA2 @ (((unsigned) &PORTA)*8) + 2;

extern volatile __bit RA3 @ (((unsigned) &PORTA)*8) + 3;

extern volatile __bit RA4 @ (((unsigned) &PORTA)*8) + 4;

extern volatile __bit RA5 @ (((unsigned) &PORTA)*8) + 5;

extern volatile __bit RCIDL @ (((unsigned) &BAUDCON)*8) + 6;

extern volatile __bit RCIE @ (((unsigned) &PIE1)*8) + 5;

extern volatile __bit RCIF @ (((unsigned) &PIR1)*8) + 5;

extern volatile __bit RD @ (((unsigned) &PMCON1)*8) + 0;

extern volatile __bit RX9 @ (((unsigned) &RCSTA)*8) + 6;

extern volatile __bit RX9D @ (((unsigned) &RCSTA)*8) + 0;

extern volatile __bit RXDTSEL @ (((unsigned) &APFCON)*8) + 7;

extern volatile __bit SBOREN @ (((unsigned) &BORCON)*8) + 7;

extern volatile __bit SCKP @ (((unsigned) &BAUDCON)*8) + 4;

extern volatile __bit SCS0 @ (((unsigned) &OSCCON)*8) + 0;

extern volatile __bit SCS1 @ (((unsigned) &OSCCON)*8) + 1;

extern volatile __bit SENDB @ (((unsigned) &TXSTA)*8) + 3;

extern volatile __bit SLRA0 @ (((unsigned) &SLRCONA)*8) + 0;

extern volatile __bit SLRA1 @ (((unsigned) &SLRCONA)*8) + 1;

extern volatile __bit SLRA2 @ (((unsigned) &SLRCONA)*8) + 2;

extern volatile __bit SLRA4 @ (((unsigned) &SLRCONA)*8) + 4;

extern volatile __bit SLRA5 @ (((unsigned) &SLRCONA)*8) + 5;

extern volatile __bit SPEN @ (((unsigned) &RCSTA)*8) + 7;

extern volatile __bit SPLLEN @ (((unsigned) &OSCCON)*8) + 7;

extern volatile __bit SREN @ (((unsigned) &RCSTA)*8) + 5;

extern volatile __bit STKOVF @ (((unsigned) &PCON)*8) + 7;

extern volatile __bit STKUNF @ (((unsigned) &PCON)*8) + 6;

extern volatile __bit SWDTEN @ (((unsigned) &WDTCON)*8) + 0;

extern volatile __bit SYNC @ (((unsigned) &TXSTA)*8) + 4;

extern volatile __bit T0CS @ (((unsigned) &OPTION_REG)*8) + 5;

extern volatile __bit T0IE @ (((unsigned) &INTCON)*8) + 5;

extern volatile __bit T0IF @ (((unsigned) &INTCON)*8) + 2;

extern volatile __bit T0SE @ (((unsigned) &OPTION_REG)*8) + 4;

extern volatile __bit T1CKPS0 @ (((unsigned) &T1CON)*8) + 4;

extern volatile __bit T1CKPS1 @ (((unsigned) &T1CON)*8) + 5;

extern volatile __bit T1GGO @ (((unsigned) &T1GCON)*8) + 3;

extern volatile __bit T1GGO_nDONE @ (((unsigned) &T1GCON)*8) + 3;

extern volatile __bit T1GPOL @ (((unsigned) &T1GCON)*8) + 6;

extern volatile __bit T1GSEL @ (((unsigned) &APFCON)*8) + 3;

extern volatile __bit T1GSPM @ (((unsigned) &T1GCON)*8) + 4;

extern volatile __bit T1GSS0 @ (((unsigned) &T1GCON)*8) + 0;

extern volatile __bit T1GSS1 @ (((unsigned) &T1GCON)*8) + 1;

extern volatile __bit T1GTM @ (((unsigned) &T1GCON)*8) + 5;

extern volatile __bit T1GVAL @ (((unsigned) &T1GCON)*8) + 2;

extern volatile __bit T2CKPS0 @ (((unsigned) &T2CON)*8) + 0;

extern volatile __bit T2CKPS1 @ (((unsigned) &T2CON)*8) + 1;

extern volatile __bit T2OUTPS0 @ (((unsigned) &T2CON)*8) + 3;

extern volatile __bit T2OUTPS1 @ (((unsigned) &T2CON)*8) + 4;

extern volatile __bit T2OUTPS2 @ (((unsigned) &T2CON)*8) + 5;

extern volatile __bit T2OUTPS3 @ (((unsigned) &T2CON)*8) + 6;

extern volatile __bit TMR0CS @ (((unsigned) &OPTION_REG)*8) + 5;

extern volatile __bit TMR0IE @ (((unsigned) &INTCON)*8) + 5;

extern volatile __bit TMR0IF @ (((unsigned) &INTCON)*8) + 2;

extern volatile __bit TMR0SE @ (((unsigned) &OPTION_REG)*8) + 4;

extern volatile __bit TMR1CS0 @ (((unsigned) &T1CON)*8) + 6;

extern volatile __bit TMR1CS1 @ (((unsigned) &T1CON)*8) + 7;

extern volatile __bit TMR1GE @ (((unsigned) &T1GCON)*8) + 7;

extern volatile __bit TMR1GIE @ (((unsigned) &PIE1)*8) + 7;

extern volatile __bit TMR1GIF @ (((unsigned) &PIR1)*8) + 7;

extern volatile __bit TMR1IE @ (((unsigned) &PIE1)*8) + 0;

extern volatile __bit TMR1IF @ (((unsigned) &PIR1)*8) + 0;

extern volatile __bit TMR1ON @ (((unsigned) &T1CON)*8) + 0;

extern volatile __bit TMR2IE @ (((unsigned) &PIE1)*8) + 1;

extern volatile __bit TMR2IF @ (((unsigned) &PIR1)*8) + 1;

extern volatile __bit TMR2ON @ (((unsigned) &T2CON)*8) + 2;

extern volatile __bit TRIGSEL0 @ (((unsigned) &ADCON2)*8) + 4;

extern volatile __bit TRIGSEL1 @ (((unsigned) &ADCON2)*8) + 5;

extern volatile __bit TRIGSEL2 @ (((unsigned) &ADCON2)*8) + 6;

extern volatile __bit TRIGSEL3 @ (((unsigned) &ADCON2)*8) + 7;

extern volatile __bit TRISA0 @ (((unsigned) &TRISA)*8) + 0;

extern volatile __bit TRISA1 @ (((unsigned) &TRISA)*8) + 1;

extern volatile __bit TRISA2 @ (((unsigned) &TRISA)*8) + 2;

extern volatile __bit TRISA3 @ (((unsigned) &TRISA)*8) + 3;

extern volatile __bit TRISA4 @ (((unsigned) &TRISA)*8) + 4;

extern volatile __bit TRISA5 @ (((unsigned) &TRISA)*8) + 5;

extern volatile __bit TRMT @ (((unsigned) &TXSTA)*8) + 1;

extern volatile __bit TSEN @ (((unsigned) &FVRCON)*8) + 5;

extern volatile __bit TSRNG @ (((unsigned) &FVRCON)*8) + 4;

extern volatile __bit TUN0 @ (((unsigned) &OSCTUNE)*8) + 0;

extern volatile __bit TUN1 @ (((unsigned) &OSCTUNE)*8) + 1;

extern volatile __bit TUN2 @ (((unsigned) &OSCTUNE)*8) + 2;

extern volatile __bit TUN3 @ (((unsigned) &OSCTUNE)*8) + 3;

extern volatile __bit TUN4 @ (((unsigned) &OSCTUNE)*8) + 4;

extern volatile __bit TUN5 @ (((unsigned) &OSCTUNE)*8) + 5;

extern volatile __bit TX9 @ (((unsigned) &TXSTA)*8) + 6;

extern volatile __bit TX9D @ (((unsigned) &TXSTA)*8) + 0;

extern volatile __bit TXCKSEL @ (((unsigned) &APFCON)*8) + 2;

extern volatile __bit TXEN @ (((unsigned) &TXSTA)*8) + 5;

extern volatile __bit TXIE @ (((unsigned) &PIE1)*8) + 4;

extern volatile __bit TXIF @ (((unsigned) &PIR1)*8) + 4;

extern volatile __bit WDTPS0 @ (((unsigned) &WDTCON)*8) + 1;

extern volatile __bit WDTPS1 @ (((unsigned) &WDTCON)*8) + 2;

extern volatile __bit WDTPS2 @ (((unsigned) &WDTCON)*8) + 3;

extern volatile __bit WDTPS3 @ (((unsigned) &WDTCON)*8) + 4;

extern volatile __bit WDTPS4 @ (((unsigned) &WDTCON)*8) + 5;

extern volatile __bit WPUA0 @ (((unsigned) &WPUA)*8) + 0;

extern volatile __bit WPUA1 @ (((unsigned) &WPUA)*8) + 1;

extern volatile __bit WPUA2 @ (((unsigned) &WPUA)*8) + 2;

extern volatile __bit WPUA3 @ (((unsigned) &WPUA)*8) + 3;

extern volatile __bit WPUA4 @ (((unsigned) &WPUA)*8) + 4;

extern volatile __bit WPUA5 @ (((unsigned) &WPUA)*8) + 5;

extern volatile __bit WR @ (((unsigned) &PMCON1)*8) + 1;

extern volatile __bit WREN @ (((unsigned) &PMCON1)*8) + 2;

extern volatile __bit WRERR @ (((unsigned) &PMCON1)*8) + 3;

extern volatile __bit WUE @ (((unsigned) &BAUDCON)*8) + 1;

extern volatile __bit ZERO @ (((unsigned) &STATUS)*8) + 2;

extern volatile __bit Z_SHAD @ (((unsigned) &STATUS_SHAD)*8) + 2;

extern volatile __bit nBOR @ (((unsigned) &PCON)*8) + 0;

extern volatile __bit nDONE @ (((unsigned) &ADCON0)*8) + 1;

extern volatile __bit nPD @ (((unsigned) &STATUS)*8) + 3;

extern volatile __bit nPOR @ (((unsigned) &PCON)*8) + 1;

extern volatile __bit nRI @ (((unsigned) &PCON)*8) + 2;

extern volatile __bit nRMCLR @ (((unsigned) &PCON)*8) + 3;

extern volatile __bit nRWDT @ (((unsigned) &PCON)*8) + 4;

extern volatile __bit nT1SYNC @ (((unsigned) &T1CON)*8) + 2;

extern volatile __bit nTO @ (((unsigned) &STATUS)*8) + 4;

extern volatile __bit nWPUEN @ (((unsigned) &OPTION_REG)*8) + 7;


# 27 "C:\Program Files (x86)\Microchip\xc8\v1.38\include\pic.h"
#pragma intrinsic(__nop)
extern void __nop(void);

# 77
extern unsigned int flash_read(unsigned short addr);


# 151
#pragma intrinsic(_delay)
extern __nonreentrant void _delay(unsigned long);

# 186
extern unsigned char __resetbits;
extern __bit __powerdown;
extern __bit __timeout;

# 154 "mcc_generated_files/pin_manager.h"
void PIN_MANAGER_Initialize (void);

# 166
void PIN_MANAGER_IOC(void);

# 13 "C:\Program Files (x86)\Microchip\xc8\v1.38\include\stdint.h"
typedef signed char int8_t;

# 20
typedef signed int int16_t;

# 28
typedef signed short long int int24_t;

# 36
typedef signed long int int32_t;

# 43
typedef unsigned char uint8_t;

# 49
typedef unsigned int uint16_t;

# 56
typedef unsigned short long int uint24_t;

# 63
typedef unsigned long int uint32_t;

# 71
typedef signed char int_least8_t;

# 78
typedef signed int int_least16_t;

# 90
typedef signed short long int int_least24_t;

# 98
typedef signed long int int_least32_t;

# 105
typedef unsigned char uint_least8_t;

# 111
typedef unsigned int uint_least16_t;

# 121
typedef unsigned short long int uint_least24_t;

# 128
typedef unsigned long int uint_least32_t;

# 137
typedef signed char int_fast8_t;

# 144
typedef signed int int_fast16_t;

# 156
typedef signed short long int int_fast24_t;

# 164
typedef signed long int int_fast32_t;

# 171
typedef unsigned char uint_fast8_t;

# 177
typedef unsigned int uint_fast16_t;

# 187
typedef unsigned short long int uint_fast24_t;

# 194
typedef unsigned long int uint_fast32_t;

# 200
typedef int32_t intmax_t;




typedef uint32_t uintmax_t;




typedef int16_t intptr_t;




typedef uint16_t uintptr_t;

# 12 "C:\Program Files (x86)\Microchip\xc8\v1.38\include\stdbool.h"
typedef unsigned char bool;

# 92 "mcc_generated_files/fvr.h"
void FVR_Initialize(void);

# 126
bool FVR_IsOutputReady(void);

# 71 "mcc_generated_files/adc1.h"
typedef uint16_t adc_result_t;

# 76
typedef struct
{
adc_result_t adcResult1;
adc_result_t adcResult2;
} adc_sync_double_result_t;

# 94
typedef enum
{
channel_AN2 = 0x2,
channel_Temp = 0x1D,
channel_DAC = 0x1E,
channel_FVR = 0x1F
} adc_channel_t;

# 135
void ADC1_Initialize(void);

# 165
void ADC1_SelectChannel(adc_channel_t channel);

# 192
void ADC1_StartConversion();

# 224
bool ADC1_IsConversionDone();

# 257
adc_result_t ADC1_GetConversionResult(void);

# 287
adc_result_t ADC1_GetConversion(adc_channel_t channel);

# 69 "mcc_generated_files/mcc.h"
void SYSTEM_Initialize(void);

# 82
void OSCILLATOR_Initialize(void);

# 95
void WDT_Initialize(void);

# 55 "main.c"
const unsigned char serial[3] @ 0x3FD = {0x07, 0xff, 0x7e};

# 94
typedef unsigned char U8;
typedef volatile unsigned char V8;
typedef unsigned int U16;
typedef volatile unsigned char vbool;

adc_result_t adc_RA2, battery_level;

U8 packet_t[8] = {
0xFF, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};

U8 encman[16];

void manchester_enc(U8 * inbuf, U8 *outbuf, U8 len)
{
U8 i, k;
U8 outbuf_idx = 0;
U8 hbyte, lbyte;
U8 tbyte;

for (k = 0; k < len; k++)
{
hbyte = 0x00;
lbyte = 0x00;
tbyte = *(inbuf + k);

for (i = 0; i < 4; i++)
{
if (tbyte & 0x80)
{
hbyte |= 0x01;
}
else
{
hbyte |= 0x02;
}

if (i < 3)
hbyte = (hbyte << 2);

if (tbyte & 0x08)
{
lbyte |= 0x01;
}
else
{
lbyte |= 0x02;
}
if (i < 3)
lbyte = (lbyte << 2);

tbyte = (tbyte << 1);
}

*(outbuf + outbuf_idx) = hbyte;
*(outbuf + outbuf_idx + 1) = lbyte;
outbuf_idx += 2;
}
}

void crc12(U8 * inbuf, U8 *outbuf, U8 len)
{
U16 crc = 0;
U16 inbuf_t;
U8 i, k;

for (i = 0; i < len; i++)
{
inbuf_t = *(inbuf +i);
crc ^= inbuf_t << 4;

for (k = 0; k < 8; k++)
{
if (crc & 0x800)
{
crc = crc << 1;
crc = (crc ^ 0x805) & 0xFFF;
}
else
{
crc = (crc << 1) & 0xFFF;
}
}
}

crc = (crc << 4);
*outbuf = (U8)(crc >> 8);
*(outbuf + 1) = (U8)crc;
}

void delay_us(U8 delay)
{
U8 i, k;

for (i = 0; i < delay; i++)
for (k = 0; k < 1; k++)
{
__nop();
}
}

void sendSignal(U8 * pt)
{
U8 i, k, n;
U8 wbyte;
U8 old_state = 0;

for (n = 0; n < 6; n++) {
delay_us(125);
(LATAbits.LATA4 = 1);
delay_us(10);

for (i = 0; i < 16 ; i++) {
wbyte = *(pt + i);

for (k = 0; k < 8; k++) {
if (wbyte & 0x80) {
(LATAbits.LATA5 = 1);
delay_us(6);

if (old_state) delay_us(5);

old_state = 1;
} else {
(LATAbits.LATA5 = 0);
if (!old_state) delay_us(11);
else delay_us(17);

old_state = 0;
}
wbyte = (wbyte << 1);
}
}
delay_us(10);
(LATAbits.LATA4 = 0);
for (i = 0; i < 34; i++) delay_us(250);
}
}

# 236
void main(void)
{
U8 lc_ext_state;


SYSTEM_Initialize();

# 262
packet_t[2] = (serial[0] & 0x0F) | 0xA0;
packet_t[3] = serial[1];
packet_t[4] = serial[2];
packet_t[5] = 0x00;

while (1) {
asm("clrwdt");

if ((PORTA & (1 << 1))) {
packet_t[5] |= 0x80;
} else {
packet_t[5] &= ~0x80;
}

lc_ext_state = 0xFF;
if ((PORTA & (1 << 1))) {
lc_ext_state |= 0x80;
} else {
lc_ext_state &= ~0x80;
}

packet_t[5] = packet_t[5] & lc_ext_state;

adc_RA2 = ADC1_GetConversion(channel_AN2);

if (adc_RA2 < 0x0100)
{
packet_t[5] &= ~0x40;
}
else
{
packet_t[5] |= 0x40;
battery_level = adc_RA2;
}

if (battery_level < 0x01F4) {
packet_t[5] |= 0x08;
} else {
packet_t[5] &= ~0x08;
}

crc12(&packet_t[2], &packet_t[6], 4);
manchester_enc(&packet_t[0], &encman[0], 8);
sendSignal(&encman[0]);


asm("sleep");
}
}

