X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=device%2Finclude%2Fpic16%2Fpic18f442.h;h=046c92dda17ea7634e771418c55a50f8265d708f;hb=bb226788dab3832b0ec0cda70874ce3fce4eebc6;hp=11976f74827a7b93bcec99f2d172bb5e5114b336;hpb=4e39e662bca4e52121166ee8f3b8dae33eb568d6;p=fw%2Fsdcc diff --git a/device/include/pic16/pic18f442.h b/device/include/pic16/pic18f442.h index 11976f74..046c92dd 100644 --- a/device/include/pic16/pic18f442.h +++ b/device/include/pic16/pic18f442.h @@ -15,7 +15,7 @@ #ifndef __PIC18F442_H__ #define __PIC18F442_H__ -extern sfr at 0xf80 PORTA; +extern __sfr __at (0xf80) PORTA; typedef union { struct { unsigned RA0:1; @@ -62,9 +62,9 @@ typedef union { }; } __PORTAbits_t; -extern volatile __PORTAbits_t at 0xf80 PORTAbits; +extern volatile __PORTAbits_t __at (0xf80) PORTAbits; -extern sfr at 0xf81 PORTB; +extern __sfr __at (0xf81) PORTB; typedef union { struct { unsigned RB0:1; @@ -89,9 +89,9 @@ typedef union { }; } __PORTBbits_t; -extern volatile __PORTBbits_t at 0xf81 PORTBbits; +extern volatile __PORTBbits_t __at (0xf81) PORTBbits; -extern sfr at 0xf82 PORTC; +extern __sfr __at (0xf82) PORTC; typedef union { struct { unsigned RC0:1; @@ -127,9 +127,9 @@ typedef union { }; } __PORTCbits_t; -extern volatile __PORTCbits_t at 0xf82 PORTCbits; +extern volatile __PORTCbits_t __at (0xf82) PORTCbits; -extern sfr at 0xf83 PORTD; +extern __sfr __at (0xf83) PORTD; typedef union { struct { unsigned RD0:1; @@ -154,9 +154,9 @@ typedef union { }; } __PORTDbits_t; -extern volatile __PORTDbits_t at 0xf83 PORTDbits; +extern volatile __PORTDbits_t __at (0xf83) PORTDbits; -extern sfr at 0xf84 PORTE; +extern __sfr __at (0xf84) PORTE; typedef union { struct { unsigned RE0:1; @@ -192,9 +192,9 @@ typedef union { }; } __PORTEbits_t; -extern volatile __PORTEbits_t at 0xf84 PORTEbits; +extern volatile __PORTEbits_t __at (0xf84) PORTEbits; -extern sfr at 0xf89 LATA; +extern __sfr __at (0xf89) LATA; typedef union { struct { unsigned LATA0:1; @@ -208,9 +208,9 @@ typedef union { }; } __LATAbits_t; -extern volatile __LATAbits_t at 0xf89 LATAbits; +extern volatile __LATAbits_t __at (0xf89) LATAbits; -extern sfr at 0xf8a LATB; +extern __sfr __at (0xf8a) LATB; typedef union { struct { unsigned LATB0:1; @@ -224,9 +224,9 @@ typedef union { }; } __LATBbits_t; -extern volatile __LATBbits_t at 0xf8a LATBbits; +extern volatile __LATBbits_t __at (0xf8a) LATBbits; -extern sfr at 0xf8b LATC; +extern __sfr __at (0xf8b) LATC; typedef union { struct { unsigned LATC0:1; @@ -240,9 +240,9 @@ typedef union { }; } __LATCbits_t; -extern volatile __LATCbits_t at 0xf8b LATCbits; +extern volatile __LATCbits_t __at (0xf8b) LATCbits; -extern sfr at 0xf8c LATD; +extern __sfr __at (0xf8c) LATD; typedef union { struct { unsigned LATD0:1; @@ -256,9 +256,9 @@ typedef union { }; } __LATDbits_t; -extern volatile __LATDbits_t at 0xf8c LATDbits; +extern volatile __LATDbits_t __at (0xf8c) LATDbits; -extern sfr at 0xf8d LATE; +extern __sfr __at (0xf8d) LATE; typedef union { struct { unsigned LATE0:1; @@ -272,9 +272,9 @@ typedef union { }; } __LATEbits_t; -extern volatile __LATEbits_t at 0xf8d LATEbits; +extern volatile __LATEbits_t __at (0xf8d) LATEbits; -extern sfr at 0xf92 TRISA; +extern __sfr __at (0xf92) TRISA; typedef union { struct { unsigned TRISA0:1; @@ -288,9 +288,9 @@ typedef union { }; } __TRISAbits_t; -extern volatile __TRISAbits_t at 0xf92 TRISAbits; +extern volatile __TRISAbits_t __at (0xf92) TRISAbits; -extern sfr at 0xf93 TRISB; +extern __sfr __at (0xf93) TRISB; typedef union { struct { unsigned TRISB0:1; @@ -304,9 +304,9 @@ typedef union { }; } __TRISBbits_t; -extern volatile __TRISBbits_t at 0xf93 TRISBbits; +extern volatile __TRISBbits_t __at (0xf93) TRISBbits; -extern sfr at 0xf94 TRISC; +extern __sfr __at (0xf94) TRISC; typedef union { struct { unsigned TRISC0:1; @@ -320,9 +320,9 @@ typedef union { }; } __TRISCbits_t; -extern volatile __TRISCbits_t at 0xf94 TRISCbits; +extern volatile __TRISCbits_t __at (0xf94) TRISCbits; -extern sfr at 0xf95 TRISD; +extern __sfr __at (0xf95) TRISD; typedef union { struct { unsigned TRISD0:1; @@ -336,25 +336,25 @@ typedef union { }; } __TRISDbits_t; -extern volatile __TRISDbits_t at 0xf95 TRISDbits; +extern volatile __TRISDbits_t __at (0xf95) TRISDbits; -extern sfr at 0xf96 TRISE; +extern __sfr __at (0xf96) TRISE; typedef union { struct { - unsigned :1; unsigned TRISE0:1; unsigned TRISE1:1; unsigned TRISE2:1; unsigned :1; + unsigned PSPMODE:1; unsigned IBOV:1; unsigned OBF:1; unsigned IBF:1; }; } __TRISEbits_t; -extern volatile __TRISEbits_t at 0xf96 TRISEbits; +extern volatile __TRISEbits_t __at (0xf96) TRISEbits; -extern sfr at 0xf9d PIE1; +extern __sfr __at (0xf9d) PIE1; typedef union { struct { unsigned TMR1IE:1; @@ -368,9 +368,9 @@ typedef union { }; } __PIE1bits_t; -extern volatile __PIE1bits_t at 0xf9d PIE1bits; +extern volatile __PIE1bits_t __at (0xf9d) PIE1bits; -extern sfr at 0xf9e PIR1; +extern __sfr __at (0xf9e) PIR1; typedef union { struct { unsigned TMR1IF:1; @@ -384,9 +384,9 @@ typedef union { }; } __PIR1bits_t; -extern volatile __PIR1bits_t at 0xf9e PIR1bits; +extern volatile __PIR1bits_t __at (0xf9e) PIR1bits; -extern sfr at 0xf9f IPR1; +extern __sfr __at (0xf9f) IPR1; typedef union { struct { unsigned TMR1IP:1; @@ -400,9 +400,9 @@ typedef union { }; } __IPR1bits_t; -extern volatile __IPR1bits_t at 0xf9f IPR1bits; +extern volatile __IPR1bits_t __at (0xf9f) IPR1bits; -extern sfr at 0xfa0 PIE2; +extern __sfr __at (0xfa0) PIE2; typedef union { struct { unsigned CCP2IE:1; @@ -416,9 +416,9 @@ typedef union { }; } __PIE2bits_t; -extern volatile __PIE2bits_t at 0xfa0 PIE2bits; +extern volatile __PIE2bits_t __at (0xfa0) PIE2bits; -extern sfr at 0xfa1 PIR2; +extern __sfr __at (0xfa1) PIR2; typedef union { struct { unsigned CCP2IF:1; @@ -432,9 +432,9 @@ typedef union { }; } __PIR2bits_t; -extern volatile __PIR2bits_t at 0xfa1 PIR2bits; +extern volatile __PIR2bits_t __at (0xfa1) PIR2bits; -extern sfr at 0xfa2 IPR2; +extern __sfr __at (0xfa2) IPR2; typedef union { struct { unsigned CCP2IP:1; @@ -448,9 +448,9 @@ typedef union { }; } __IPR2bits_t; -extern volatile __IPR2bits_t at 0xfa2 IPR2bits; +extern volatile __IPR2bits_t __at (0xfa2) IPR2bits; -extern sfr at 0xfa6 EECON1; +extern __sfr __at (0xfa6) EECON1; typedef union { struct { unsigned RD:1; @@ -464,12 +464,12 @@ typedef union { }; } __EECON1bits_t; -extern volatile __EECON1bits_t at 0xfa6 EECON1bits; +extern volatile __EECON1bits_t __at (0xfa6) EECON1bits; -extern sfr at 0xfa7 EECON2; -extern sfr at 0xfa8 EEDATA; -extern sfr at 0xfa9 EEADR; -extern sfr at 0xfab RCSTA; +extern __sfr __at (0xfa7) EECON2; +extern __sfr __at (0xfa8) EEDATA; +extern __sfr __at (0xfa9) EEADR; +extern __sfr __at (0xfab) RCSTA; typedef union { struct { unsigned RX9D:1; @@ -483,9 +483,9 @@ typedef union { }; } __RCSTAbits_t; -extern volatile __RCSTAbits_t at 0xfab RCSTAbits; +extern volatile __RCSTAbits_t __at (0xfab) RCSTAbits; -extern sfr at 0xfac TXSTA; +extern __sfr __at (0xfac) TXSTA; typedef union { struct { unsigned TX9D:1; @@ -499,12 +499,12 @@ typedef union { }; } __TXSTAbits_t; -extern volatile __TXSTAbits_t at 0xfac TXSTAbits; +extern volatile __TXSTAbits_t __at (0xfac) TXSTAbits; -extern sfr at 0xfad TXREG; -extern sfr at 0xfae RCREG; -extern sfr at 0xfaf SPBRG; -extern sfr at 0xfb1 T3CON; +extern __sfr __at (0xfad) TXREG; +extern __sfr __at (0xfae) RCREG; +extern __sfr __at (0xfaf) SPBRG; +extern __sfr __at (0xfb1) T3CON; typedef union { struct { unsigned TMR3ON:1; @@ -518,11 +518,11 @@ typedef union { }; } __T3CONbits_t; -extern volatile __T3CONbits_t at 0xfb1 T3CONbits; +extern volatile __T3CONbits_t __at (0xfb1) T3CONbits; -extern sfr at 0xfb2 TMR3L; -extern sfr at 0xfb3 TMR3H; -extern sfr at 0xfba CCP2CON; +extern __sfr __at (0xfb2) TMR3L; +extern __sfr __at (0xfb3) TMR3H; +extern __sfr __at (0xfba) CCP2CON; typedef union { struct { unsigned CCP2M0:1; @@ -536,11 +536,11 @@ typedef union { }; } __CCP2CONbits_t; -extern volatile __CCP2CONbits_t at 0xfba CCP2CONbits; +extern volatile __CCP2CONbits_t __at (0xfba) CCP2CONbits; -extern sfr at 0xfbb CCPR2L; -extern sfr at 0xfbc CCPR2H; -extern sfr at 0xfbd CCP1CON; +extern __sfr __at (0xfbb) CCPR2L; +extern __sfr __at (0xfbc) CCPR2H; +extern __sfr __at (0xfbd) CCP1CON; typedef union { struct { unsigned CCP1M0:1; @@ -554,11 +554,11 @@ typedef union { }; } __CCP1CONbits_t; -extern volatile __CCP1CONbits_t at 0xfbd CCP1CONbits; +extern volatile __CCP1CONbits_t __at (0xfbd) CCP1CONbits; -extern sfr at 0xfbe CCPR1L; -extern sfr at 0xfbf CCPR1H; -extern sfr at 0xfc1 ADCON1; +extern __sfr __at (0xfbe) CCPR1L; +extern __sfr __at (0xfbf) CCPR1H; +extern __sfr __at (0xfc1) ADCON1; typedef union { struct { unsigned PCFG0:1; @@ -572,9 +572,9 @@ typedef union { }; } __ADCON1bits_t; -extern volatile __ADCON1bits_t at 0xfc1 ADCON1bits; +extern volatile __ADCON1bits_t __at (0xfc1) ADCON1bits; -extern sfr at 0xfc2 ADCON0; +extern __sfr __at (0xfc2) ADCON0; typedef union { struct { unsigned ADON:1; @@ -588,11 +588,11 @@ typedef union { }; } __ADCON0bits_t; -extern volatile __ADCON0bits_t at 0xfc2 ADCON0bits; +extern volatile __ADCON0bits_t __at (0xfc2) ADCON0bits; -extern sfr at 0xfc3 ADRESL; -extern sfr at 0xfc4 ADRESH; -extern sfr at 0xfc5 SSPCON2; +extern __sfr __at (0xfc3) ADRESL; +extern __sfr __at (0xfc4) ADRESH; +extern __sfr __at (0xfc5) SSPCON2; typedef union { struct { unsigned SEN:1; @@ -606,9 +606,9 @@ typedef union { }; } __SSPCON2bits_t; -extern volatile __SSPCON2bits_t at 0xfc5 SSPCON2bits; +extern volatile __SSPCON2bits_t __at (0xfc5) SSPCON2bits; -extern sfr at 0xfc6 SSPCON1; +extern __sfr __at (0xfc6) SSPCON1; typedef union { struct { unsigned SSPM0:1; @@ -622,9 +622,9 @@ typedef union { }; } __SSPCON1bits_t; -extern volatile __SSPCON1bits_t at 0xfc6 SSPCON1bits; +extern volatile __SSPCON1bits_t __at (0xfc6) SSPCON1bits; -extern sfr at 0xfc7 SSPSTAT; +extern __sfr __at (0xfc7) SSPSTAT; typedef union { struct { unsigned BF:1; @@ -638,11 +638,11 @@ typedef union { }; } __SSPSTATbits_t; -extern volatile __SSPSTATbits_t at 0xfc7 SSPSTATbits; +extern volatile __SSPSTATbits_t __at (0xfc7) SSPSTATbits; -extern sfr at 0xfc8 SSPADD; -extern sfr at 0xfc9 SSPBUF; -extern sfr at 0xfca T2CON; +extern __sfr __at (0xfc8) SSPADD; +extern __sfr __at (0xfc9) SSPBUF; +extern __sfr __at (0xfca) T2CON; typedef union { struct { unsigned T2CKPS0:1; @@ -656,11 +656,11 @@ typedef union { }; } __T2CONbits_t; -extern volatile __T2CONbits_t at 0xfca T2CONbits; +extern volatile __T2CONbits_t __at (0xfca) T2CONbits; -extern sfr at 0xfcb PR2; -extern sfr at 0xfcc TMR2; -extern sfr at 0xfcd T1CON; +extern __sfr __at (0xfcb) PR2; +extern __sfr __at (0xfcc) TMR2; +extern __sfr __at (0xfcd) T1CON; typedef union { struct { unsigned TMR1ON:1; @@ -674,11 +674,11 @@ typedef union { }; } __T1CONbits_t; -extern volatile __T1CONbits_t at 0xfcd T1CONbits; +extern volatile __T1CONbits_t __at (0xfcd) T1CONbits; -extern sfr at 0xfce TMR1L; -extern sfr at 0xfcf TMR1H; -extern sfr at 0xfd0 RCON; +extern __sfr __at (0xfce) TMR1L; +extern __sfr __at (0xfcf) TMR1H; +extern __sfr __at (0xfd0) RCON; typedef union { struct { unsigned BOR:1; @@ -692,9 +692,9 @@ typedef union { }; } __RCONbits_t; -extern volatile __RCONbits_t at 0xfd0 RCONbits; +extern volatile __RCONbits_t __at (0xfd0) RCONbits; -extern sfr at 0xfd1 WDTCON; +extern __sfr __at (0xfd1) WDTCON; typedef union { struct { unsigned SWDTEN:1; @@ -719,9 +719,9 @@ typedef union { }; } __WDTCONbits_t; -extern volatile __WDTCONbits_t at 0xfd1 WDTCONbits; +extern volatile __WDTCONbits_t __at (0xfd1) WDTCONbits; -extern sfr at 0xfd2 LVDCON; +extern __sfr __at (0xfd2) LVDCON; typedef union { struct { unsigned LVDL0:1; @@ -746,9 +746,9 @@ typedef union { }; } __LVDCONbits_t; -extern volatile __LVDCONbits_t at 0xfd2 LVDCONbits; +extern volatile __LVDCONbits_t __at (0xfd2) LVDCONbits; -extern sfr at 0xfd3 OSCCON; +extern __sfr __at (0xfd3) OSCCON; typedef union { struct { unsigned SCS:1; @@ -762,9 +762,9 @@ typedef union { }; } __OSCCONbits_t; -extern volatile __OSCCONbits_t at 0xfd3 OSCCONbits; +extern volatile __OSCCONbits_t __at (0xfd3) OSCCONbits; -extern sfr at 0xfd5 T0CON; +extern __sfr __at (0xfd5) T0CON; typedef union { struct { unsigned T0PS0:1; @@ -778,11 +778,11 @@ typedef union { }; } __T0CONbits_t; -extern volatile __T0CONbits_t at 0xfd5 T0CONbits; +extern volatile __T0CONbits_t __at (0xfd5) T0CONbits; -extern sfr at 0xfd6 TMR0L; -extern sfr at 0xfd7 TMR0H; -extern sfr at 0xfd8 STATUS; +extern __sfr __at (0xfd6) TMR0L; +extern __sfr __at (0xfd7) TMR0H; +extern __sfr __at (0xfd8) STATUS; typedef union { struct { unsigned C:1; @@ -796,32 +796,32 @@ typedef union { }; } __STATUSbits_t; -extern volatile __STATUSbits_t at 0xfd8 STATUSbits; - -extern sfr at 0xfd9 FSR2L; -extern sfr at 0xfda FSR2H; -extern sfr at 0xfdb PLUSW2; -extern sfr at 0xfdc PREINC2; -extern sfr at 0xfdd POSTDEC2; -extern sfr at 0xfde POSTINC2; -extern sfr at 0xfdf INDF2; -extern sfr at 0xfe0 BSR; -extern sfr at 0xfe1 FSR1L; -extern sfr at 0xfe2 FSR1H; -extern sfr at 0xfe3 PLUSW1; -extern sfr at 0xfe4 PREINC1; -extern sfr at 0xfe5 POSTDEC1; -extern sfr at 0xfe6 POSTINC1; -extern sfr at 0xfe7 INDF1; -extern sfr at 0xfe8 WREG; -extern sfr at 0xfe9 FSR0L; -extern sfr at 0xfea FSR0H; -extern sfr at 0xfeb PLUSW0; -extern sfr at 0xfec PREINC0; -extern sfr at 0xfed POSTDEC0; -extern sfr at 0xfee POSTINC0; -extern sfr at 0xfef INDF0; -extern sfr at 0xff0 INTCON3; +extern volatile __STATUSbits_t __at (0xfd8) STATUSbits; + +extern __sfr __at (0xfd9) FSR2L; +extern __sfr __at (0xfda) FSR2H; +extern __sfr __at (0xfdb) PLUSW2; +extern __sfr __at (0xfdc) PREINC2; +extern __sfr __at (0xfdd) POSTDEC2; +extern __sfr __at (0xfde) POSTINC2; +extern __sfr __at (0xfdf) INDF2; +extern __sfr __at (0xfe0) BSR; +extern __sfr __at (0xfe1) FSR1L; +extern __sfr __at (0xfe2) FSR1H; +extern __sfr __at (0xfe3) PLUSW1; +extern __sfr __at (0xfe4) PREINC1; +extern __sfr __at (0xfe5) POSTDEC1; +extern __sfr __at (0xfe6) POSTINC1; +extern __sfr __at (0xfe7) INDF1; +extern __sfr __at (0xfe8) WREG; +extern __sfr __at (0xfe9) FSR0L; +extern __sfr __at (0xfea) FSR0H; +extern __sfr __at (0xfeb) PLUSW0; +extern __sfr __at (0xfec) PREINC0; +extern __sfr __at (0xfed) POSTDEC0; +extern __sfr __at (0xfee) POSTINC0; +extern __sfr __at (0xfef) INDF0; +extern __sfr __at (0xff0) INTCON3; typedef union { struct { unsigned INT1F:1; @@ -846,9 +846,9 @@ typedef union { }; } __INTCON3bits_t; -extern volatile __INTCON3bits_t at 0xff0 INTCON3bits; +extern volatile __INTCON3bits_t __at (0xff0) INTCON3bits; -extern sfr at 0xff1 INTCON2; +extern __sfr __at (0xff1) INTCON2; typedef union { struct { unsigned RBIP:1; @@ -862,9 +862,9 @@ typedef union { }; } __INTCON2bits_t; -extern volatile __INTCON2bits_t at 0xff1 INTCON2bits; +extern volatile __INTCON2bits_t __at (0xff1) INTCON2bits; -extern sfr at 0xff2 INTCON; +extern __sfr __at (0xff2) INTCON; typedef union { struct { unsigned RBIF:1; @@ -876,20 +876,30 @@ typedef union { unsigned PEIE:1; unsigned GIE:1; }; + struct { + unsigned :1; + unsigned INT0IF:1; + unsigned TMR0IF:1; + unsigned :1; + unsigned INT0IE:1; + unsigned TMR0IE:1; + unsigned GIEL:1; + unsigned GIEH:1; + }; } __INTCONbits_t; -extern volatile __INTCONbits_t at 0xff2 INTCONbits; - -extern sfr at 0xff3 PRODL; -extern sfr at 0xff4 PRODH; -extern sfr at 0xff5 TABLAT; -extern sfr at 0xff6 TBLPTRL; -extern sfr at 0xff7 TBLPTRH; -extern sfr at 0xff8 TBLPTRU; -extern sfr at 0xff9 PCL; -extern sfr at 0xffa PCLATH; -extern sfr at 0xffb PCLATU; -extern sfr at 0xffc STKPTR; +extern volatile __INTCONbits_t __at (0xff2) INTCONbits; + +extern __sfr __at (0xff3) PRODL; +extern __sfr __at (0xff4) PRODH; +extern __sfr __at (0xff5) TABLAT; +extern __sfr __at (0xff6) TBLPTRL; +extern __sfr __at (0xff7) TBLPTRH; +extern __sfr __at (0xff8) TBLPTRU; +extern __sfr __at (0xff9) PCL; +extern __sfr __at (0xffa) PCLATH; +extern __sfr __at (0xffb) PCLATU; +extern __sfr __at (0xffc) STKPTR; typedef union { struct { unsigned STKPTR0:1; @@ -903,11 +913,11 @@ typedef union { }; } __STKPTRbits_t; -extern volatile __STKPTRbits_t at 0xffc STKPTRbits; +extern volatile __STKPTRbits_t __at (0xffc) STKPTRbits; -extern sfr at 0xffd TOSL; -extern sfr at 0xffe TOSH; -extern sfr at 0xfff TOSU; +extern __sfr __at (0xffd) TOSL; +extern __sfr __at (0xffe) TOSH; +extern __sfr __at (0xfff) TOSU; /* Configuration registers locations */