+2009-02-27 Raphael Neider <rneider AT web.de>
+
+ * device/include/pic16/pic18f[24][3456]k20.h,
+ device/include/pic16/pic18f[68][567]j50.h,
+ device/include/pic16/pic18f[68]6j55.h,
+ device/lib/pic16/libdev/pic18f[24][3456]k20.c,
+ device/lib/pic16/libdev/pic18f[68][567]j50.c,
+ device/lib/pic16/libdev/pic18f[68]6j55.c,
+ device/include/pic16/pic18fregs.h,
+ device/include/pic16/pic16devices.txt,
+ device/lib/pic16/pics.all,
+ device/lib/pic16/libdev/Makefile.am,
+ device/lib/pic16/libio/Makefile.am: added/re-enabled many device
+ families (87j50 family contributed by Robert Wuest)
+
+ * device/include/pic16/adc.h,
+ device/lib/pic16/libio/adc/adcbusy.c,
+ device/lib/pic16/libio/adc/adcclose.c,
+ device/lib/pic16/libio/adc/adcconv.c,
+ device/lib/pic16/libio/adc/adcopen.c,
+ device/lib/pic16/libio/adc/adcsetch.c: added 65j50-style ADC
+
+ * doc/sdccman.lyx: updated list of supported devices, fixed typo
+ * device/lib/pic16/Makefile.common: do not suppress assembler warnings
+
2009-02-27 Borut Razem <borut.razem AT siol.net>
* as/z80/asexpr.c, as/z80/z80mch.c: re-fixed bugs
#define ADC_FOSC_64 0x06
#define ADC_FOSC_RC 0x07
+/*
+ * acquisition time (65j50-style only)
+ * -- to be ORed with ADC_FOSC
+ */
+#define ADC_ACQT_0 (0x00 << 3)
+#define ADC_ACQT_2 (0x01 << 3)
+#define ADC_ACQT_4 (0x02 << 3)
+#define ADC_ACQT_6 (0x03 << 3)
+#define ADC_ACQT_8 (0x04 << 3)
+#define ADC_ACQT_12 (0x05 << 3)
+#define ADC_ACQT_16 (0x06 << 3)
+#define ADC_ACQT_20 (0x07 << 3)
+
+/*
+ * calibration enable (65j50-style only)
+ * -- to be ORed with ADC_FOSC
+ */
+#define ADC_CAL 0x40
/*
- * Distinguish between 18f242-style, 18f1220-style, and 18f2220-style ADC:
+ * Distinguishing between ADC-styles:
*
* ADCON0:
- * bit 18f242 18f1220 18f2220
- * 0 ADON ADON ADON
- * 1 - GO GO
- * 2 GO CHS0 CHS0
- * 3 CHS0 CHS1 CHS1
- * 4 CHS1 CHS2 CHS2
- * 5 CHS2 - CHS3
- * 6 ADCS0 VCFG0 -
- * 7 ADCS1 VCFG1 (ADCAL)
+ * bit 18f242 18f1220 18f2220 18f65j50
+ * 0 ADON ADON ADON ADON
+ * 1 - GO GO GO
+ * 2 GO CHS0 CHS0 CHS0
+ * 3 CHS0 CHS1 CHS1 CHS1
+ * 4 CHS1 CHS2 CHS2 CHS2
+ * 5 CHS2 - CHS3 CHS3
+ * 6 ADCS0 VCFG0 - VCFG0
+ * 7 ADCS1 VCFG1 (ADCAL) VCFG1
*
* ADCON1:
- * bit 18f242 18f1220 18f2220
- * 0 PCFG0 PCFG0 PCFG0
- * 1 PCFG1 PCFG1 PCFG1
- * 2 PCFG2 PCFG2 PCFG2
- * 3 PCFG3 PCFG3 PCFG3
- * 4 - PCFG4 VCFG0
- * 5 - PCFG5 VCFG1
- * 6 ADCS2 PCFG6 -
- * 7 ADFM - -
+ * bit 18f242 18f1220 18f2220 18f65j50
+ * 0 PCFG0 PCFG0 PCFG0 ADCS0
+ * 1 PCFG1 PCFG1 PCFG1 ADCS1
+ * 2 PCFG2 PCFG2 PCFG2 ADCS2
+ * 3 PCFG3 PCFG3 PCFG3 ACQT0
+ * 4 - PCFG4 VCFG0 ACQT1
+ * 5 - PCFG5 VCFG1 ACQT2
+ * 6 ADCS2 PCFG6 - ADCAL
+ * 7 ADFM - - ADFM
*/
/* 18f242-style */
/* 18f2220-style, ordered by device family */
#elif defined(pic18f2220) || defined(pic18f2320) || defined(pic18f4220) || defined(pic18f4320) \
|| defined(pic18f2221) || defined(pic18f2321) || defined(pic18f4221) || defined(pic18f4321) \
+ || defined(pic18f23k20) || defined(pic18f24k20) || defined(pic18f25k20) || defined(pic18f26k20) \
|| defined(pic18f2410) || defined(pic18f2510) || defined(pic18f4410) || defined(pic18f4510) \
|| defined(pic18f2420) || defined(pic18f2520) || defined(pic18f4420) || defined(pic18f4520) \
|| defined(pic18f2423) || defined(pic18f2523) || defined(pic18f4423) || defined(pic18f4523) \
|| defined(pic18f2525) || defined(pic18f2620) || defined(pic18f4525) || defined(pic18f4620) \
|| defined(pic18f2585) || defined(pic18f2680) || defined(pic18f4585) || defined(pic18f4680) \
|| defined(pic18f2682) || defined(pic18f2685) || defined(pic18f4682) || defined(pic18f4685) \
+ || defined(pic18f43k20) || defined(pic18f44k20) || defined(pic18f45k20) || defined(pic18f46k20) \
|| defined(pic18f6520) || defined(pic18f6620) || defined(pic18f6720) \
|| defined(pic18f6585) || defined(pic18f6680) || defined(pic18f8585) || defined(pic18f8680) \
|| defined(pic18f66j60) || defined(pic18f66j65) || defined(pic18f67j60) \
#define __SDCC_ADC_STYLE2220 1
+#elif defined(pic18f65j50) || defined(pic18f66j50) || defined(pic18f66j55) || defined(pic18f67j50) \
+ || defined(pic18f85j50) || defined(pic18f86j50) || defined(pic18f86j55) || defined(pic18f87j50) \
+
+#define __SDCC_ADC_STYLE65J50
+
#else /* unknown device */
#error Device ADC style is unknown, please update your adc.h manually and/or inform the maintainer!
#define ADC_CFG_01A_2R 0x3e
#define ADC_CFG_00A_0R 0x0f
+#elif defined(__SDCC_ADC_STYLE65J50)
+
+/*
+ * These devices use a bitmask in ANCON0/1 to configure
+ * AN7..0/AN15..8 as digital ports (bit set) or analog
+ * inputs (bit clear).
+ *
+ * These settings are selected based on their similarity with
+ * the 2220-style settings; 65j50-style is more flexible, though.
+ *
+ * Reference voltages are configured via adc_open's config parameter
+ * using ADC_VCFG_*.
+ */
+
+#define ADC_CFG_16A 0x0000
+#define ADC_CFG_15A 0x8000
+#define ADC_CFG_14A 0xC000
+#define ADC_CFG_13A 0xE000
+#define ADC_CFG_12A 0xF000
+#define ADC_CFG_11A 0xF800
+#define ADC_CFG_10A 0xFC00
+#define ADC_CFG_9A 0xFE00
+#define ADC_CFG_8A 0xFF00
+#define ADC_CFG_7A 0xFF80
+#define ADC_CFG_6A 0xFFC0
+#define ADC_CFG_5A 0xFFE0
+#define ADC_CFG_4A 0xFFF0
+#define ADC_CFG_3A 0xFFF8
+#define ADC_CFG_2A 0xFFFC
+#define ADC_CFG_1A 0xFFFE
+#define ADC_CFG_0A 0xFFFF
+
#else /* unhandled ADC style */
#error No supported ADC style selected.
/* initialize AD module */
+#if defined(__SDCC_ADC_STYLE65J50)
+void adc_open(unsigned char channel, unsigned char fosc, unsigned int pcfg, unsigned char config);
+#else
void adc_open(unsigned char channel, unsigned char fosc, unsigned char pcfg, unsigned char config);
+#endif
/* shutdown AD module */
void adc_close(void);
idlocrange 0x200000 0x200007
+name 18f23k20
+ramsize 512
+split 0x60
+configrange 0x300001 0x30000d
+configword 0x300001 0xcf 0x37
+configword 0x300002 0x1f 0xff
+configword 0x300003 0x1f 0xff
+configword 0x300005 0x8f 0xfb
+configword 0x300006 0xc5 0xbf 0xbf
+configword 0x300008 0x0f 0xff
+configword 0x300009 0xc0 0xff
+configword 0x30000a 0x0f 0xff
+configword 0x30000b 0xe0 0xff
+configword 0x30000c 0x0f 0xff
+configword 0x30000d 0x40 0xff
+idlocrange 0x200000 0x200007
+
+
name 18f2410
ramsize 768
split 0x80
idlocrange 0x200000 0x200007
+name 18f24k20
+using 18f23k20
+ramsize 768
+
+
name 18f2510
using 18f2410
ramsize 1536
using 18f24j10
+name 18f25k20
+using 18f23k20
+ramsize 1536
+
+
name 18f2610
using 18f2410
ramsize 4096
using 18f2682
+name 18f26k20
+using 18f23k20
+ramsize 3936
+
+
name 18f4220
using 18f2220
using 18f2331
+name 18f43k20
+using 18f23k20
+
+
name 18f4410
using 18f2410
ramsize 768
using 18f24j10
+name 18f44k20
+using 18f23k20
+ramsize 768
+
+
name 18f4510
using 18f2410
ramsize 1536
using 18f24j10
+name 18f45k20
+using 18f23k20
+ramsize 1536
+
+
name 18f4610
using 18f2410
ramsize 4096
using 18f2682
+name 18f46k20
+using 18f23k20
+ramsize 3936
+
+
name 18f6520
ramsize 2048
split 0x60
idlocrange 0x200000 0x200007
+name 18f65j50
+ramsize 3904
+split 0x60
+configrange 0x7ff8 0x7ffd
+configword 0x7ff8 0xef 0xff 0xbf
+configword 0x7ff9 0x07 0xff
+configword 0x7ffa 0xc7 0xff
+configword 0x7ffb 0x0f 0xff
+configword 0x7ffc 0xf8 0xff
+configword 0x7ffd 0x0f 0xff
+
+
name 18f6620
using 18f6520
ramsize 3840
name 18f6680
using 18f6585
+name 18f66j50
+ramsize 3904
+split 0x60
+configrange 0xfff8 0xfffd
+configword 0xfff8 0xef 0xff 0xbf
+configword 0xfff9 0x07 0xff
+configword 0xfffa 0xc7 0xff
+configword 0xfffb 0x0f 0xff
+configword 0xfffc 0xf8 0xff
+configword 0xfffd 0x0f 0xff
+
+
+name 18f66j55
+ramsize 3904
+split 0x60
+configrange 0x17ff8 0x17ffd
+configword 0x17ff8 0xef 0xff 0xbf
+configword 0x17ff9 0x07 0xff
+configword 0x17ffa 0xc7 0xff
+configword 0x17ffb 0x0f 0xff
+configword 0x17ffc 0xf8 0xff
+configword 0x17ffd 0x0f 0xff
+
name 18f6720
using 18f6520
ramsize 3840
+name 18f67j50
+ramsize 3904
+split 0x60
+configrange 0x1fff8 0x1fffd
+configword 0x1fff8 0xef 0xff 0xbf
+configword 0x1fff9 0x07 0xff
+configword 0x1fffa 0xc7 0xff
+configword 0x1fffb 0x0f 0xff
+configword 0x1fffc 0xf8 0xff
+configword 0x1fffd 0x0f 0xff
+
+
name 18f8520
using 18f6520
configword 0x1fffd 0x07 0xff
+name 18f85j50
+using 18f65j50
+
+
+name 18f86j50
+using 18f66j50
+
+
+name 18f86j55
+using 18f66j55
+
+
name 18f86j60
using 18f66j60
using 18f66j65
+name 18f87j50
+using 18f67j50
+
+
name 18f87j60
using 18f67j60
--- /dev/null
+/*
+ * pic18f23k20.h - device specific declarations
+ */
+
+#include "pic18f46k20.h"
+
--- /dev/null
+/*
+ * pic18f24k20.h - device specific declarations
+ */
+
+#include "pic18f46k20.h"
+
--- /dev/null
+/*
+ * pic18f25k20.h - device specific declarations
+ */
+
+#include "pic18f46k20.h"
+
--- /dev/null
+/*
+ * pic18f26k20.h - device specific declarations
+ */
+
+#include "pic18f46k20.h"
+
--- /dev/null
+/*
+ * pic18f43k20.h - device specific declarations
+ */
+
+#include "pic18f46k20.h"
+
--- /dev/null
+/*
+ * pic18f44k20.h - device specific declarations
+ */
+
+#include "pic18f46k20.h"
+
--- /dev/null
+/*
+ * pic18f45k20.h - device specific declarations
+ */
+
+#include "pic18f46k20.h"
+
--- /dev/null
+/*
+ * pic18f46k20.h - device specific declarations
+ *
+ * This file is part of the GNU PIC library for SDCC,
+ * originally devised by Vangelis Rokas <vrokas AT otenet.gr>
+ *
+ * It has been automatically generated by inc2h-pic16.pl,
+ * (c) 2007 by Raphael Neider <rneider AT web.de>
+ */
+
+#ifndef __PIC18F46K20_H__
+#define __PIC18F46K20_H__ 1
+
+
+
+// Configuration Bits
+#define __CONFIG1H 0x300001
+#define __CONFIG2L 0x300002
+#define __CONFIG2H 0x300003
+#define __CONFIG3H 0x300005
+#define __CONFIG4L 0x300006
+#define __CONFIG5L 0x300008
+#define __CONFIG5H 0x300009
+#define __CONFIG6L 0x30000A
+#define __CONFIG6H 0x30000B
+#define __CONFIG7L 0x30000C
+#define __CONFIG7H 0x30000D
+
+// CONFIG1H Options
+#define _OSC_LP_1H 0xF0 // LP
+#define _OSC_XT_1H 0xF1 // XT
+#define _OSC_HS_1H 0xF2 // HS
+#define _OSC_RC_1H 0xF3 // RC
+#define _OSC_EC_1H 0xF4 // EC-OSC2 as Clock Out
+#define _OSC_ECIO6_1H 0xF5 // EC-OSC2 as RA6
+#define _OSC_HSPLL_1H 0xF6 // HS-PLL Enabled
+#define _OSC_RCIO6_1H 0xF7 // RC-OSC2 as RA6
+#define _OSC_INTIO67_1H 0xF8 // INTRC-OSC2 as RA6, OSC1 as RA7
+#define _OSC_INTIO7_1H 0xF9 // INTRC-OSC2 as Clock Out, OSC1 as RA7
+#define _FCMEN_OFF_1H 0xBF // Disabled
+#define _FCMEN_ON_1H 0xFF // Enabled
+#define _IESO_OFF_1H 0x7F // Disabled
+#define _IESO_ON_1H 0xFF // Enabled
+
+// CONFIG2L Options
+#define _PWRT_ON_2L 0xFE // Enabled
+#define _PWRT_OFF_2L 0xFF // Disabled
+#define _BOREN_OFF_2L 0xF9 // Disabled
+#define _BOREN_ON_2L 0xFB // SBOREN Enabled
+#define _BOREN_NOSLP_2L 0xFD // Enabled except SLEEP, SBOREN Disabled
+#define _BOREN_SBORDIS_2L 0xFF // Enabled, SBOREN Disabled
+#define _BORV_46_2L 0xE7 // 3.0V
+#define _BORV_43_2L 0xEF // 2.7V
+#define _BORV_28_2L 0xF7 // 2.2V
+#define _BORV_21_2L 0xFF // 1.8
+
+// CONFIG2H Options
+#define _WDT_OFF_2H 0xFE // Disabled
+#define _WDT_ON_2H 0xFF // Enabled
+#define _WDTPS_1_2H 0xE1 // 1:1
+#define _WDTPS_2_2H 0xE3 // 1:2
+#define _WDTPS_4_2H 0xE5 // 1:4
+#define _WDTPS_8_2H 0xE7 // 1:8
+#define _WDTPS_16_2H 0xE9 // 1:16
+#define _WDTPS_32_2H 0xEB // 1:32
+#define _WDTPS_64_2H 0xED // 1:64
+#define _WDTPS_128_2H 0xEF // 1:128
+#define _WDTPS_256_2H 0xF1 // 1:256
+#define _WDTPS_512_2H 0xF3 // 1:512
+#define _WDTPS_1024_2H 0xF5 // 1:1024
+#define _WDTPS_2048_2H 0xF7 // 1:2048
+#define _WDTPS_4096_2H 0xF9 // 1:4096
+#define _WDTPS_8192_2H 0xFB // 1:8192
+#define _WDTPS_16384_2H 0xFD // 1:16384
+#define _WDTPS_32768_2H 0xFF // 1:32768
+
+// CONFIG3H Options
+#define _MCLRE_OFF_3H 0x7F // Disabled
+#define _MCLRE_ON_3H 0xFF // Enabled
+#define _LPT1OSC_OFF_3H 0xFB // Disabled
+#define _LPT1OSC_ON_3H 0xFF // Enabled
+#define _PBADEN_OFF_3H 0xFD // Port B<4:0> digital on RESET
+#define _PBADEN_ON_3H 0xFF // Port B<4:0> analog on RESET
+#define _CCP2MX_PORTBE_3H 0xFE // Muxed with RB3
+#define _CCP2MX_PORTC_3H 0xFF // Muxed with RC1
+
+// CONFIG4L Options
+#define _STVREN_OFF_4L 0xFE // Disabled
+#define _STVREN_ON_4L 0xFF // Enabled
+#define _LVP_OFF_4L 0xFB // Disabled
+#define _LVP_ON_4L 0xFF // Enabled
+#define _XINST_OFF_4L 0xBF // Disabled
+#define _XINST_ON_4L 0xFF // Enabled
+#define _DEBUG_ON_4L 0x7F // Enabled
+#define _DEBUG_OFF_4L 0xFF // Disabled
+
+// CONFIG5L Options
+#define _CP0_ON_5L 0xFE // Enabled
+#define _CP0_OFF_5L 0xFF // Disabled
+#define _CP1_ON_5L 0xFD // Enabled
+#define _CP1_OFF_5L 0xFF // Disabled
+#define _CP2_ON_5L 0xFB // Enabled
+#define _CP2_OFF_5L 0xFF // Disabled
+#define _CP3_ON_5L 0xF7 // Enabled
+#define _CP3_OFF_5L 0xFF // Disabled
+
+// CONFIG5H Options
+#define _CPB_ON_5H 0xBF // Enabled
+#define _CPB_OFF_5H 0xFF // Disabled
+#define _CPD_ON_5H 0x7F // Enabled
+#define _CPD_OFF_5H 0xFF // Disabled
+
+// CONFIG6L Options
+#define _WRT0_ON_6L 0xFE // Enabled
+#define _WRT0_OFF_6L 0xFF // Disabled
+#define _WRT1_ON_6L 0xFD // Enabled
+#define _WRT1_OFF_6L 0xFF // Disabled
+#define _WRT2_ON_6L 0xFB // Enabled
+#define _WRT2_OFF_6L 0xFF // Disabled
+#define _WRT3_ON_6L 0xF7 // Enabled
+#define _WRT3_OFF_6L 0xFF // Disabled
+
+// CONFIG6H Options
+#define _WRTB_ON_6H 0xBF // Enabled
+#define _WRTB_OFF_6H 0xFF // Disabled
+#define _WRTC_ON_6H 0xDF // Enabled
+#define _WRTC_OFF_6H 0xFF // Disabled
+#define _WRTD_ON_6H 0x7F // Enabled
+#define _WRTD_OFF_6H 0xFF // Disabled
+
+// CONFIG7L Options
+#define _EBTR0_ON_7L 0xFE // Enabled
+#define _EBTR0_OFF_7L 0xFF // Disabled
+#define _EBTR1_ON_7L 0xFD // Enabled
+#define _EBTR1_OFF_7L 0xFF // Disabled
+#define _EBTR2_ON_7L 0xFB // Enabled
+#define _EBTR2_OFF_7L 0xFF // Disabled
+#define _EBTR3_ON_7L 0xF7 // Enabled
+#define _EBTR3_OFF_7L 0xFF // Disabled
+
+// CONFIG7H Options
+#define _EBTRB_ON_7H 0xBF // Enabled
+#define _EBTRB_OFF_7H 0xFF // Disabled
+#define _DEVID1 0x3FFFFE
+#define _DEVID2 0x3FFFFF
+#define _IDLOC0 0x200000
+#define _IDLOC1 0x200001
+#define _IDLOC2 0x200002
+#define _IDLOC3 0x200003
+#define _IDLOC4 0x200004
+#define _IDLOC5 0x200005
+#define _IDLOC6 0x200006
+#define _IDLOC7 0x200007
+
+extern __sfr __at (0xF77) SSPMSK;
+
+extern __sfr __at (0xF78) SLRCON;
+typedef union {
+ struct {
+ unsigned SLRA : 1;
+ unsigned SLRB : 1;
+ unsigned SLRC : 1;
+ unsigned SLRD : 1;
+ unsigned SLRE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __SLRCONbits_t;
+extern volatile __SLRCONbits_t __at (0xF78) SLRCONbits;
+
+extern __sfr __at (0xF79) CM12CON;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned C2RSEL : 1;
+ unsigned C1RSEL : 1;
+ unsigned MC2OUT : 1;
+ unsigned MC1OUT : 1;
+ };
+} __CM12CONbits_t;
+extern volatile __CM12CONbits_t __at (0xF79) CM12CONbits;
+
+extern __sfr __at (0xF7A) CM2CON;
+typedef union {
+ struct {
+ unsigned C2CH0 : 1;
+ unsigned C2CH1 : 1;
+ unsigned C2R : 1;
+ unsigned C2SP : 1;
+ unsigned C2POL : 1;
+ unsigned C2OE : 1;
+ unsigned C2OUT : 1;
+ unsigned C2ON : 1;
+ };
+} __CM2CONbits_t;
+extern volatile __CM2CONbits_t __at (0xF7A) CM2CONbits;
+
+extern __sfr __at (0xF7B) CM1CON;
+typedef union {
+ struct {
+ unsigned C1CH0 : 1;
+ unsigned C1CH1 : 1;
+ unsigned C1R : 1;
+ unsigned C1SP : 1;
+ unsigned C1POL : 1;
+ unsigned C1OE : 1;
+ unsigned C1OUT : 1;
+ unsigned C1ON : 1;
+ };
+} __CM1CONbits_t;
+extern volatile __CM1CONbits_t __at (0xF7B) CM1CONbits;
+
+extern __sfr __at (0xF7C) WPUB;
+typedef union {
+ struct {
+ unsigned WPUB0 : 1;
+ unsigned WPUB1 : 1;
+ unsigned WPUB2 : 1;
+ unsigned WPUB3 : 1;
+ unsigned WPUB4 : 1;
+ unsigned WPUB5 : 1;
+ unsigned WPUB6 : 1;
+ unsigned WPUB7 : 1;
+ };
+} __WPUBbits_t;
+extern volatile __WPUBbits_t __at (0xF7C) WPUBbits;
+
+extern __sfr __at (0xF7D) IOCB;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned IOCB4 : 1;
+ unsigned IOCB5 : 1;
+ unsigned IOCB6 : 1;
+ unsigned IOCB7 : 1;
+ };
+} __IOCBbits_t;
+extern volatile __IOCBbits_t __at (0xF7D) IOCBbits;
+
+extern __sfr __at (0xF7E) ANSEL;
+typedef union {
+ struct {
+ unsigned ANS0 : 1;
+ unsigned ANS1 : 1;
+ unsigned ANS2 : 1;
+ unsigned ANS3 : 1;
+ unsigned ANS4 : 1;
+ unsigned ANS5 : 1;
+ unsigned ANS6 : 1;
+ unsigned ANS7 : 1;
+ };
+} __ANSELbits_t;
+extern volatile __ANSELbits_t __at (0xF7E) ANSELbits;
+
+extern __sfr __at (0xF7F) ANSELH;
+typedef union {
+ struct {
+ unsigned ANS8 : 1;
+ unsigned ANS9 : 1;
+ unsigned ANS10 : 1;
+ unsigned ANS11 : 1;
+ unsigned ANS12 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ANSELHbits_t;
+extern volatile __ANSELHbits_t __at (0xF7F) ANSELHbits;
+
+extern __sfr __at (0xF80) PORTA;
+typedef union {
+ struct {
+ unsigned RA0 : 1;
+ unsigned RA1 : 1;
+ unsigned RA2 : 1;
+ unsigned RA3 : 1;
+ unsigned RA4 : 1;
+ unsigned RA5 : 1;
+ unsigned RA6 : 1;
+ unsigned RA7 : 1;
+ };
+ struct {
+ unsigned AN0 : 1;
+ unsigned AN1 : 1;
+ unsigned AN2 : 1;
+ unsigned AN3 : 1;
+ unsigned C1OUT : 1;
+ unsigned AN4 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned C12IN0M : 1;
+ unsigned C12IN1M : 1;
+ unsigned C2INP : 1;
+ unsigned C1INP : 1;
+ unsigned T0CKI : 1;
+ unsigned C2OUT : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned C12IN0N : 1;
+ unsigned C12IN1N : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned SS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_SS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned LVDIN : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned HLVDIN : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PORTAbits_t;
+extern volatile __PORTAbits_t __at (0xF80) PORTAbits;
+
+extern __sfr __at (0xF81) PORTB;
+typedef union {
+ struct {
+ unsigned RB0 : 1;
+ unsigned RB1 : 1;
+ unsigned RB2 : 1;
+ unsigned RB3 : 1;
+ unsigned RB4 : 1;
+ unsigned RB5 : 1;
+ unsigned RB6 : 1;
+ unsigned RB7 : 1;
+ };
+ struct {
+ unsigned INT0 : 1;
+ unsigned INT1 : 1;
+ unsigned INT2 : 1;
+ unsigned CCP2_PORTB : 1;
+ unsigned KBI0 : 1;
+ unsigned KBI1 : 1;
+ unsigned KBI2 : 1;
+ unsigned KBI3 : 1;
+ };
+ struct {
+ unsigned AN12 : 1;
+ unsigned AN10 : 1;
+ unsigned AN8 : 1;
+ unsigned AN9 : 1;
+ unsigned AN11 : 1;
+ unsigned PGM : 1;
+ unsigned PGC : 1;
+ unsigned PGD : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned C12IN2M : 1;
+ unsigned : 1;
+ unsigned C12IN3M : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned C12IN2N : 1;
+ unsigned : 1;
+ unsigned C12IN3N : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PORTBbits_t;
+extern volatile __PORTBbits_t __at (0xF81) PORTBbits;
+
+extern __sfr __at (0xF82) PORTC;
+typedef union {
+ struct {
+ unsigned RC0 : 1;
+ unsigned RC1 : 1;
+ unsigned RC2 : 1;
+ unsigned RC3 : 1;
+ unsigned RC4 : 1;
+ unsigned RC5 : 1;
+ unsigned RC6 : 1;
+ unsigned RC7 : 1;
+ };
+ struct {
+ unsigned T1OSO : 1;
+ unsigned T1OSI : 1;
+ unsigned CCP1 : 1;
+ unsigned SCK : 1;
+ unsigned SDI : 1;
+ unsigned SDO : 1;
+ unsigned TX : 1;
+ unsigned RX : 1;
+ };
+ struct {
+ unsigned T13CKI : 1;
+ unsigned CCP2_PORTC : 1;
+ unsigned : 1;
+ unsigned SCL : 1;
+ unsigned SDA : 1;
+ unsigned : 1;
+ unsigned CK : 1;
+ unsigned DT : 1;
+ };
+ struct {
+ unsigned T1CKI : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PORTCbits_t;
+extern volatile __PORTCbits_t __at (0xF82) PORTCbits;
+
+extern __sfr __at (0xF83) PORTD;
+typedef union {
+ struct {
+ unsigned RD0 : 1;
+ unsigned RD1 : 1;
+ unsigned RD2 : 1;
+ unsigned RD3 : 1;
+ unsigned RD4 : 1;
+ unsigned RD5 : 1;
+ unsigned RD6 : 1;
+ unsigned RD7 : 1;
+ };
+ struct {
+ unsigned PSP0 : 1;
+ unsigned PSP1 : 1;
+ unsigned PSP2 : 1;
+ unsigned PSP3 : 1;
+ unsigned PSP4 : 1;
+ unsigned PSP5 : 1;
+ unsigned PSP6 : 1;
+ unsigned PSP7 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned P1B : 1;
+ unsigned P1C : 1;
+ unsigned P1D : 1;
+ };
+} __PORTDbits_t;
+extern volatile __PORTDbits_t __at (0xF83) PORTDbits;
+
+extern __sfr __at (0xF84) PORTE;
+typedef union {
+ struct {
+ unsigned RE0 : 1;
+ unsigned RE1 : 1;
+ unsigned RE2 : 1;
+ unsigned RE3 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned RD : 1;
+ unsigned WR : 1;
+ unsigned CS : 1;
+ unsigned MCLR : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned NOT_RD : 1;
+ unsigned NOT_WR : 1;
+ unsigned NOT_CS : 1;
+ unsigned NOT_MCLR : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned AN5 : 1;
+ unsigned AN6 : 1;
+ unsigned AN7 : 1;
+ unsigned VPP : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PORTEbits_t;
+extern volatile __PORTEbits_t __at (0xF84) PORTEbits;
+
+extern __sfr __at (0xF89) LATA;
+typedef union {
+ struct {
+ unsigned LATA0 : 1;
+ unsigned LATA1 : 1;
+ unsigned LATA2 : 1;
+ unsigned LATA3 : 1;
+ unsigned LATA4 : 1;
+ unsigned LATA5 : 1;
+ unsigned LATA6 : 1;
+ unsigned LATA7 : 1;
+ };
+} __LATAbits_t;
+extern volatile __LATAbits_t __at (0xF89) LATAbits;
+
+extern __sfr __at (0xF8A) LATB;
+typedef union {
+ struct {
+ unsigned LATB0 : 1;
+ unsigned LATB1 : 1;
+ unsigned LATB2 : 1;
+ unsigned LATB3 : 1;
+ unsigned LATB4 : 1;
+ unsigned LATB5 : 1;
+ unsigned LATB6 : 1;
+ unsigned LATB7 : 1;
+ };
+} __LATBbits_t;
+extern volatile __LATBbits_t __at (0xF8A) LATBbits;
+
+extern __sfr __at (0xF8B) LATC;
+typedef union {
+ struct {
+ unsigned LATC0 : 1;
+ unsigned LATC1 : 1;
+ unsigned LATC2 : 1;
+ unsigned LATC3 : 1;
+ unsigned LATC4 : 1;
+ unsigned LATC5 : 1;
+ unsigned LATC6 : 1;
+ unsigned LATC7 : 1;
+ };
+} __LATCbits_t;
+extern volatile __LATCbits_t __at (0xF8B) LATCbits;
+
+extern __sfr __at (0xF8C) LATD;
+typedef union {
+ struct {
+ unsigned LATD0 : 1;
+ unsigned LATD1 : 1;
+ unsigned LATD2 : 1;
+ unsigned LATD3 : 1;
+ unsigned LATD4 : 1;
+ unsigned LATD5 : 1;
+ unsigned LATD6 : 1;
+ unsigned LATD7 : 1;
+ };
+} __LATDbits_t;
+extern volatile __LATDbits_t __at (0xF8C) LATDbits;
+
+extern __sfr __at (0xF8D) LATE;
+typedef union {
+ struct {
+ unsigned LATE0 : 1;
+ unsigned LATE1 : 1;
+ unsigned LATE2 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __LATEbits_t;
+extern volatile __LATEbits_t __at (0xF8D) LATEbits;
+
+extern __sfr __at (0xF92) DDRA;
+typedef union {
+ struct {
+ unsigned RA0 : 1;
+ unsigned RA1 : 1;
+ unsigned RA2 : 1;
+ unsigned RA3 : 1;
+ unsigned RA4 : 1;
+ unsigned RA5 : 1;
+ unsigned RA6 : 1;
+ unsigned RA7 : 1;
+ };
+} __DDRAbits_t;
+extern volatile __DDRAbits_t __at (0xF92) DDRAbits;
+
+extern __sfr __at (0xF92) TRISA;
+typedef union {
+ struct {
+ unsigned TRISA0 : 1;
+ unsigned TRISA1 : 1;
+ unsigned TRISA2 : 1;
+ unsigned TRISA3 : 1;
+ unsigned TRISA4 : 1;
+ unsigned TRISA5 : 1;
+ unsigned TRISA6 : 1;
+ unsigned TRISA7 : 1;
+ };
+} __TRISAbits_t;
+extern volatile __TRISAbits_t __at (0xF92) TRISAbits;
+
+extern __sfr __at (0xF93) DDRB;
+typedef union {
+ struct {
+ unsigned RB0 : 1;
+ unsigned RB1 : 1;
+ unsigned RB2 : 1;
+ unsigned RB3 : 1;
+ unsigned RB4 : 1;
+ unsigned RB5 : 1;
+ unsigned RB6 : 1;
+ unsigned RB7 : 1;
+ };
+} __DDRBbits_t;
+extern volatile __DDRBbits_t __at (0xF93) DDRBbits;
+
+extern __sfr __at (0xF93) TRISB;
+typedef union {
+ struct {
+ unsigned TRISB0 : 1;
+ unsigned TRISB1 : 1;
+ unsigned TRISB2 : 1;
+ unsigned TRISB3 : 1;
+ unsigned TRISB4 : 1;
+ unsigned TRISB5 : 1;
+ unsigned TRISB6 : 1;
+ unsigned TRISB7 : 1;
+ };
+} __TRISBbits_t;
+extern volatile __TRISBbits_t __at (0xF93) TRISBbits;
+
+extern __sfr __at (0xF94) DDRC;
+typedef union {
+ struct {
+ unsigned RC0 : 1;
+ unsigned RC1 : 1;
+ unsigned RC2 : 1;
+ unsigned RC3 : 1;
+ unsigned RC4 : 1;
+ unsigned RC5 : 1;
+ unsigned RC6 : 1;
+ unsigned RC7 : 1;
+ };
+} __DDRCbits_t;
+extern volatile __DDRCbits_t __at (0xF94) DDRCbits;
+
+extern __sfr __at (0xF94) TRISC;
+typedef union {
+ struct {
+ unsigned TRISC0 : 1;
+ unsigned TRISC1 : 1;
+ unsigned TRISC2 : 1;
+ unsigned TRISC3 : 1;
+ unsigned TRISC4 : 1;
+ unsigned TRISC5 : 1;
+ unsigned TRISC6 : 1;
+ unsigned TRISC7 : 1;
+ };
+} __TRISCbits_t;
+extern volatile __TRISCbits_t __at (0xF94) TRISCbits;
+
+extern __sfr __at (0xF95) DDRD;
+typedef union {
+ struct {
+ unsigned RD0 : 1;
+ unsigned RD1 : 1;
+ unsigned RD2 : 1;
+ unsigned RD3 : 1;
+ unsigned RD4 : 1;
+ unsigned RD5 : 1;
+ unsigned RD6 : 1;
+ unsigned RD7 : 1;
+ };
+} __DDRDbits_t;
+extern volatile __DDRDbits_t __at (0xF95) DDRDbits;
+
+extern __sfr __at (0xF95) TRISD;
+typedef union {
+ struct {
+ unsigned TRISD0 : 1;
+ unsigned TRISD1 : 1;
+ unsigned TRISD2 : 1;
+ unsigned TRISD3 : 1;
+ unsigned TRISD4 : 1;
+ unsigned TRISD5 : 1;
+ unsigned TRISD6 : 1;
+ unsigned TRISD7 : 1;
+ };
+} __TRISDbits_t;
+extern volatile __TRISDbits_t __at (0xF95) TRISDbits;
+
+extern __sfr __at (0xF96) DDRE;
+typedef union {
+ struct {
+ unsigned RE0 : 1;
+ unsigned RE1 : 1;
+ unsigned RE2 : 1;
+ unsigned RE3 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __DDREbits_t;
+extern volatile __DDREbits_t __at (0xF96) DDREbits;
+
+extern __sfr __at (0xF96) TRISE;
+typedef union {
+ struct {
+ 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 __sfr __at (0xF9B) OSCTUNE;
+typedef union {
+ struct {
+ unsigned TUN0 : 1;
+ unsigned TUN1 : 1;
+ unsigned TUN2 : 1;
+ unsigned TUN3 : 1;
+ unsigned TUN4 : 1;
+ unsigned TUN5 : 1;
+ unsigned PLLEN : 1;
+ unsigned INTSRC : 1;
+ };
+} __OSCTUNEbits_t;
+extern volatile __OSCTUNEbits_t __at (0xF9B) OSCTUNEbits;
+
+extern __sfr __at (0xF9D) PIE1;
+typedef union {
+ struct {
+ unsigned TMR1IE : 1;
+ unsigned TMR2IE : 1;
+ unsigned CCP1IE : 1;
+ unsigned SSPIE : 1;
+ unsigned TXIE : 1;
+ unsigned RCIE : 1;
+ unsigned ADIE : 1;
+ unsigned PSPIE : 1;
+ };
+} __PIE1bits_t;
+extern volatile __PIE1bits_t __at (0xF9D) PIE1bits;
+
+extern __sfr __at (0xF9E) PIR1;
+typedef union {
+ struct {
+ unsigned TMR1IF : 1;
+ unsigned TMR2IF : 1;
+ unsigned CCP1IF : 1;
+ unsigned SSPIF : 1;
+ unsigned TXIF : 1;
+ unsigned RCIF : 1;
+ unsigned ADIF : 1;
+ unsigned PSPIF : 1;
+ };
+} __PIR1bits_t;
+extern volatile __PIR1bits_t __at (0xF9E) PIR1bits;
+
+extern __sfr __at (0xF9F) IPR1;
+typedef union {
+ struct {
+ unsigned TMR1IP : 1;
+ unsigned TMR2IP : 1;
+ unsigned CCP1IP : 1;
+ unsigned SSPIP : 1;
+ unsigned TXIP : 1;
+ unsigned RCIP : 1;
+ unsigned ADIP : 1;
+ unsigned PSPIP : 1;
+ };
+} __IPR1bits_t;
+extern volatile __IPR1bits_t __at (0xF9F) IPR1bits;
+
+extern __sfr __at (0xFA0) PIE2;
+typedef union {
+ struct {
+ unsigned CCP2IE : 1;
+ unsigned TMR3IE : 1;
+ unsigned LVDIE : 1;
+ unsigned BCLIE : 1;
+ unsigned EEIE : 1;
+ unsigned CM2IE : 1;
+ unsigned CM1IE : 1;
+ unsigned OSCFIE : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned HLVDIE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned C2IE : 1;
+ unsigned C1IE : 1;
+ unsigned : 1;
+ };
+} __PIE2bits_t;
+extern volatile __PIE2bits_t __at (0xFA0) PIE2bits;
+
+extern __sfr __at (0xFA1) PIR2;
+typedef union {
+ struct {
+ unsigned CCP2IF : 1;
+ unsigned TMR3IF : 1;
+ unsigned LVDIF : 1;
+ unsigned BCLIF : 1;
+ unsigned EEIF : 1;
+ unsigned CM2IF : 1;
+ unsigned CM1IF : 1;
+ unsigned OSCFIF : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned HLVDIF : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned C2IF : 1;
+ unsigned C1IF : 1;
+ unsigned : 1;
+ };
+} __PIR2bits_t;
+extern volatile __PIR2bits_t __at (0xFA1) PIR2bits;
+
+extern __sfr __at (0xFA2) IPR2;
+typedef union {
+ struct {
+ unsigned CCP2IP : 1;
+ unsigned TMR3IP : 1;
+ unsigned LVDIP : 1;
+ unsigned BCLIP : 1;
+ unsigned EEIP : 1;
+ unsigned CM2IP : 1;
+ unsigned CM1IP : 1;
+ unsigned OSCFIP : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned HLVDIP : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned C2IP : 1;
+ unsigned C1IP : 1;
+ unsigned : 1;
+ };
+} __IPR2bits_t;
+extern volatile __IPR2bits_t __at (0xFA2) IPR2bits;
+
+extern __sfr __at (0xFA6) EECON1;
+typedef union {
+ struct {
+ unsigned RD : 1;
+ unsigned WR : 1;
+ unsigned WREN : 1;
+ unsigned WRERR : 1;
+ unsigned FREE : 1;
+ unsigned : 1;
+ unsigned CFGS : 1;
+ unsigned EEPGD : 1;
+ };
+} __EECON1bits_t;
+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;
+typedef union {
+ struct {
+ unsigned RX9D : 1;
+ unsigned OERR : 1;
+ unsigned FERR : 1;
+ unsigned ADEN : 1;
+ unsigned CREN : 1;
+ unsigned SREN : 1;
+ unsigned RX9 : 1;
+ unsigned SPEN : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned ADDEN : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __RCSTAbits_t;
+extern volatile __RCSTAbits_t __at (0xFAB) RCSTAbits;
+
+extern __sfr __at (0xFAC) TXSTA;
+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 __at (0xFAC) TXSTAbits;
+
+extern __sfr __at (0xFAD) TXREG;
+
+extern __sfr __at (0xFAE) RCREG;
+
+extern __sfr __at (0xFAF) SPBRG;
+
+extern __sfr __at (0xFB0) SPBRGH;
+
+extern __sfr __at (0xFB1) T3CON;
+typedef union {
+ struct {
+ unsigned TMR3ON : 1;
+ unsigned TMR3CS : 1;
+ unsigned T3SYNC : 1;
+ unsigned T3CCP1 : 1;
+ unsigned T3CKPS0 : 1;
+ unsigned T3CKPS1 : 1;
+ unsigned T3CCP2 : 1;
+ unsigned RD16 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_T3SYNC : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __T3CONbits_t;
+extern volatile __T3CONbits_t __at (0xFB1) T3CONbits;
+
+extern __sfr __at (0xFB2) TMR3L;
+
+extern __sfr __at (0xFB3) TMR3H;
+
+extern __sfr __at (0xFB4) CVRCON2;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned FVRST : 1;
+ unsigned FVREN : 1;
+ };
+} __CVRCON2bits_t;
+extern volatile __CVRCON2bits_t __at (0xFB4) CVRCON2bits;
+
+extern __sfr __at (0xFB5) CVRCON;
+typedef union {
+ struct {
+ unsigned CVR0 : 1;
+ unsigned CVR1 : 1;
+ unsigned CVR2 : 1;
+ unsigned CVR3 : 1;
+ unsigned CVRSS : 1;
+ unsigned CVRR : 1;
+ unsigned CVROE : 1;
+ unsigned CVREN : 1;
+ };
+} __CVRCONbits_t;
+extern volatile __CVRCONbits_t __at (0xFB5) CVRCONbits;
+
+extern __sfr __at (0xFB6) ECCP1AS;
+typedef union {
+ struct {
+ unsigned PSSBD0 : 1;
+ unsigned PSSBD1 : 1;
+ unsigned PSSAC0 : 1;
+ unsigned PSSAC1 : 1;
+ unsigned ECCPAS0 : 1;
+ unsigned ECCPAS1 : 1;
+ unsigned ECCPAS2 : 1;
+ unsigned ECCPASE : 1;
+ };
+} __ECCP1ASbits_t;
+extern volatile __ECCP1ASbits_t __at (0xFB6) ECCP1ASbits;
+
+extern __sfr __at (0xFB7) PWM1CON;
+typedef union {
+ struct {
+ unsigned PDC0 : 1;
+ unsigned PDC1 : 1;
+ unsigned PDC2 : 1;
+ unsigned PDC3 : 1;
+ unsigned PDC4 : 1;
+ unsigned PDC5 : 1;
+ unsigned PDC6 : 1;
+ unsigned PRSEN : 1;
+ };
+} __PWM1CONbits_t;
+extern volatile __PWM1CONbits_t __at (0xFB7) PWM1CONbits;
+
+extern __sfr __at (0xFB8) BAUDCON;
+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;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CKTXP : 1;
+ unsigned DTRXP : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __BAUDCONbits_t;
+extern volatile __BAUDCONbits_t __at (0xFB8) BAUDCONbits;
+
+extern __sfr __at (0xFB8) BAUDCTL;
+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;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CKTXP : 1;
+ unsigned DTRXP : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __BAUDCTLbits_t;
+extern volatile __BAUDCTLbits_t __at (0xFB8) BAUDCTLbits;
+
+extern __sfr __at (0xFB9) PSTRCON;
+typedef union {
+ struct {
+ unsigned STRA : 1;
+ unsigned STRB : 1;
+ unsigned STRC : 1;
+ unsigned STRD : 1;
+ unsigned STRSYNC : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PSTRCONbits_t;
+extern volatile __PSTRCONbits_t __at (0xFB9) PSTRCONbits;
+
+extern __sfr __at (0xFBA) CCP2CON;
+typedef union {
+ struct {
+ unsigned CCP2M0 : 1;
+ unsigned CCP2M1 : 1;
+ unsigned CCP2M2 : 1;
+ unsigned CCP2M3 : 1;
+ unsigned DC2B0 : 1;
+ unsigned DC2B1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CCP2CONbits_t;
+extern volatile __CCP2CONbits_t __at (0xFBA) CCP2CONbits;
+
+extern __sfr __at (0xFBB) CCPR2;
+
+extern __sfr __at (0xFBB) CCPR2L;
+
+extern __sfr __at (0xFBC) CCPR2H;
+
+extern __sfr __at (0xFBD) CCP1CON;
+typedef union {
+ struct {
+ unsigned CCP1M0 : 1;
+ unsigned CCP1M1 : 1;
+ unsigned CCP1M2 : 1;
+ unsigned CCP1M3 : 1;
+ unsigned DC1B0 : 1;
+ unsigned DC1B1 : 1;
+ unsigned P1M0 : 1;
+ unsigned P1M1 : 1;
+ };
+} __CCP1CONbits_t;
+extern volatile __CCP1CONbits_t __at (0xFBD) CCP1CONbits;
+
+extern __sfr __at (0xFBE) CCPR1;
+
+extern __sfr __at (0xFBE) CCPR1L;
+
+extern __sfr __at (0xFBF) CCPR1H;
+
+extern __sfr __at (0xFC0) ADCON2;
+typedef union {
+ struct {
+ unsigned ADCS0 : 1;
+ unsigned ADCS1 : 1;
+ unsigned ADCS2 : 1;
+ unsigned ACQT0 : 1;
+ unsigned ACQT1 : 1;
+ unsigned ACQT2 : 1;
+ unsigned : 1;
+ unsigned ADFM : 1;
+ };
+} __ADCON2bits_t;
+extern volatile __ADCON2bits_t __at (0xFC0) ADCON2bits;
+
+extern __sfr __at (0xFC1) ADCON1;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned VCFG0 : 1;
+ unsigned VCFG1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ADCON1bits_t;
+extern volatile __ADCON1bits_t __at (0xFC1) ADCON1bits;
+
+extern __sfr __at (0xFC2) ADCON0;
+typedef union {
+ struct {
+ unsigned ADON : 1;
+ unsigned GO : 1;
+ unsigned CHS0 : 1;
+ unsigned CHS1 : 1;
+ unsigned CHS2 : 1;
+ unsigned CHS3 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned DONE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned NOT_DONE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned GO_DONE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ADCON0bits_t;
+extern volatile __ADCON0bits_t __at (0xFC2) ADCON0bits;
+
+extern __sfr __at (0xFC3) ADRES;
+
+extern __sfr __at (0xFC3) ADRESL;
+
+extern __sfr __at (0xFC4) ADRESH;
+
+extern __sfr __at (0xFC5) SSPCON2;
+typedef union {
+ struct {
+ unsigned SEN : 1;
+ unsigned RSEN : 1;
+ unsigned PEN : 1;
+ unsigned RCEN : 1;
+ unsigned ACKEN : 1;
+ unsigned ACKDT : 1;
+ unsigned ACKSTAT : 1;
+ unsigned GCEN : 1;
+ };
+} __SSPCON2bits_t;
+extern volatile __SSPCON2bits_t __at (0xFC5) SSPCON2bits;
+
+extern __sfr __at (0xFC6) SSPCON1;
+typedef union {
+ struct {
+ unsigned SSPM0 : 1;
+ unsigned SSPM1 : 1;
+ unsigned SSPM2 : 1;
+ unsigned SSPM3 : 1;
+ unsigned CKP : 1;
+ unsigned SSPEN : 1;
+ unsigned SSPOV : 1;
+ unsigned WCOL : 1;
+ };
+} __SSPCON1bits_t;
+extern volatile __SSPCON1bits_t __at (0xFC6) SSPCON1bits;
+
+extern __sfr __at (0xFC7) SSPSTAT;
+typedef union {
+ struct {
+ unsigned BF : 1;
+ unsigned UA : 1;
+ unsigned R : 1;
+ unsigned S : 1;
+ unsigned P : 1;
+ unsigned D : 1;
+ unsigned CKE : 1;
+ unsigned SMP : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_W : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_A : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned R_W : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned D_A : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_WRITE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_ADDRESS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __SSPSTATbits_t;
+extern volatile __SSPSTATbits_t __at (0xFC7) SSPSTATbits;
+
+extern __sfr __at (0xFC8) SSPADD;
+
+extern __sfr __at (0xFC9) SSPBUF;
+
+extern __sfr __at (0xFCA) T2CON;
+typedef union {
+ struct {
+ unsigned T2CKPS0 : 1;
+ unsigned T2CKPS1 : 1;
+ unsigned TMR2ON : 1;
+ unsigned T2OUTPS0 : 1;
+ unsigned T2OUTPS1 : 1;
+ unsigned T2OUTPS2 : 1;
+ unsigned T2OUTPS3 : 1;
+ unsigned : 1;
+ };
+} __T2CONbits_t;
+extern volatile __T2CONbits_t __at (0xFCA) T2CONbits;
+
+extern __sfr __at (0xFCB) PR2;
+
+extern __sfr __at (0xFCC) TMR2;
+
+extern __sfr __at (0xFCD) T1CON;
+typedef union {
+ struct {
+ unsigned TMR1ON : 1;
+ unsigned TMR1CS : 1;
+ unsigned T1SYNC : 1;
+ unsigned T1OSCEN : 1;
+ unsigned T1CKPS0 : 1;
+ unsigned T1CKPS1 : 1;
+ unsigned T1RUN : 1;
+ unsigned RD16 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_T1SYNC : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __T1CONbits_t;
+extern volatile __T1CONbits_t __at (0xFCD) T1CONbits;
+
+extern __sfr __at (0xFCE) TMR1L;
+
+extern __sfr __at (0xFCF) TMR1H;
+
+extern __sfr __at (0xFD0) RCON;
+typedef union {
+ struct {
+ unsigned BOR : 1;
+ unsigned POR : 1;
+ unsigned PD : 1;
+ unsigned TO : 1;
+ unsigned RI : 1;
+ unsigned : 1;
+ unsigned SBOREN : 1;
+ unsigned IPEN : 1;
+ };
+ struct {
+ unsigned NOT_BOR : 1;
+ unsigned NOT_POR : 1;
+ unsigned NOT_PD : 1;
+ unsigned NOT_TO : 1;
+ unsigned NOT_RI : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __RCONbits_t;
+extern volatile __RCONbits_t __at (0xFD0) RCONbits;
+
+extern __sfr __at (0xFD1) WDTCON;
+typedef union {
+ struct {
+ unsigned SWDTEN : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned SWDTE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __WDTCONbits_t;
+extern volatile __WDTCONbits_t __at (0xFD1) WDTCONbits;
+
+extern __sfr __at (0xFD2) HLVDCON;
+typedef union {
+ struct {
+ unsigned LVDL0 : 1;
+ unsigned LVDL1 : 1;
+ unsigned LVDL2 : 1;
+ unsigned LVDL3 : 1;
+ unsigned LVDEN : 1;
+ unsigned IRVST : 1;
+ unsigned : 1;
+ unsigned VDIRMAG : 1;
+ };
+ struct {
+ unsigned LVV0 : 1;
+ unsigned LVV1 : 1;
+ unsigned LVV2 : 1;
+ unsigned LVV3 : 1;
+ unsigned HLVDEN : 1;
+ unsigned BGST : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned HLVDL0 : 1;
+ unsigned HLVDL1 : 1;
+ unsigned HLVDL2 : 1;
+ unsigned HLVDL3 : 1;
+ unsigned : 1;
+ unsigned IVRST : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __HLVDCONbits_t;
+extern volatile __HLVDCONbits_t __at (0xFD2) HLVDCONbits;
+
+extern __sfr __at (0xFD2) LVDCON;
+typedef union {
+ struct {
+ unsigned LVDL0 : 1;
+ unsigned LVDL1 : 1;
+ unsigned LVDL2 : 1;
+ unsigned LVDL3 : 1;
+ unsigned LVDEN : 1;
+ unsigned IRVST : 1;
+ unsigned : 1;
+ unsigned VDIRMAG : 1;
+ };
+ struct {
+ unsigned LVV0 : 1;
+ unsigned LVV1 : 1;
+ unsigned LVV2 : 1;
+ unsigned LVV3 : 1;
+ unsigned HLVDEN : 1;
+ unsigned BGST : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned HLVDL0 : 1;
+ unsigned HLVDL1 : 1;
+ unsigned HLVDL2 : 1;
+ unsigned HLVDL3 : 1;
+ unsigned : 1;
+ unsigned IVRST : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __LVDCONbits_t;
+extern volatile __LVDCONbits_t __at (0xFD2) LVDCONbits;
+
+extern __sfr __at (0xFD3) OSCCON;
+typedef union {
+ struct {
+ unsigned SCS0 : 1;
+ unsigned SCS1 : 1;
+ unsigned IOFS : 1;
+ unsigned OSTS : 1;
+ unsigned IRCF0 : 1;
+ unsigned IRCF1 : 1;
+ unsigned IRCF2 : 1;
+ unsigned IDLEN : 1;
+ };
+} __OSCCONbits_t;
+extern volatile __OSCCONbits_t __at (0xFD3) OSCCONbits;
+
+extern __sfr __at (0xFD4) DEBUG;
+
+extern __sfr __at (0xFD5) T0CON;
+typedef union {
+ struct {
+ unsigned T0PS0 : 1;
+ unsigned T0PS1 : 1;
+ unsigned T0PS2 : 1;
+ unsigned PSA : 1;
+ unsigned T0SE : 1;
+ unsigned T0CS : 1;
+ unsigned T08BIT : 1;
+ unsigned TMR0ON : 1;
+ };
+} __T0CONbits_t;
+extern volatile __T0CONbits_t __at (0xFD5) T0CONbits;
+
+extern __sfr __at (0xFD6) TMR0L;
+
+extern __sfr __at (0xFD7) TMR0H;
+
+extern __sfr __at (0xFD8) STATUS;
+typedef union {
+ struct {
+ unsigned C : 1;
+ unsigned DC : 1;
+ unsigned Z : 1;
+ unsigned OV : 1;
+ unsigned N : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __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;
+typedef union {
+ struct {
+ unsigned INT1F : 1;
+ unsigned INT2F : 1;
+ unsigned : 1;
+ unsigned INT1E : 1;
+ unsigned INT2E : 1;
+ unsigned : 1;
+ unsigned INT1P : 1;
+ unsigned INT2P : 1;
+ };
+ struct {
+ unsigned INT1IF : 1;
+ unsigned INT2IF : 1;
+ unsigned : 1;
+ unsigned INT1IE : 1;
+ unsigned INT2IE : 1;
+ unsigned : 1;
+ unsigned INT1IP : 1;
+ unsigned INT2IP : 1;
+ };
+} __INTCON3bits_t;
+extern volatile __INTCON3bits_t __at (0xFF0) INTCON3bits;
+
+extern __sfr __at (0xFF1) INTCON2;
+typedef union {
+ struct {
+ unsigned RBIP : 1;
+ unsigned : 1;
+ unsigned TMR0IP : 1;
+ unsigned : 1;
+ unsigned INTEDG2 : 1;
+ unsigned INTEDG1 : 1;
+ unsigned INTEDG0 : 1;
+ unsigned RBPU : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_RBPU : 1;
+ };
+} __INTCON2bits_t;
+extern volatile __INTCON2bits_t __at (0xFF1) INTCON2bits;
+
+extern __sfr __at (0xFF2) INTCON;
+typedef union {
+ struct {
+ unsigned RBIF : 1;
+ unsigned INT0F : 1;
+ unsigned TMR0IF : 1;
+ unsigned RBIE : 1;
+ unsigned INT0E : 1;
+ unsigned TMR0IE : 1;
+ unsigned PEIE : 1;
+ unsigned GIE : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned INT0IF : 1;
+ unsigned T0IF : 1;
+ unsigned : 1;
+ unsigned INT0IE : 1;
+ unsigned T0IE : 1;
+ unsigned GIEL : 1;
+ unsigned GIEH : 1;
+ };
+} __INTCONbits_t;
+extern volatile __INTCONbits_t __at (0xFF2) INTCONbits;
+
+extern __sfr __at (0xFF3) PROD;
+
+extern __sfr __at (0xFF3) PRODL;
+
+extern __sfr __at (0xFF4) PRODH;
+
+extern __sfr __at (0xFF5) TABLAT;
+
+extern __sfr __at (0xFF6) TBLPTR;
+
+extern __sfr __at (0xFF6) TBLPTRL;
+
+extern __sfr __at (0xFF7) TBLPTRH;
+
+extern __sfr __at (0xFF8) TBLPTRU;
+
+extern __sfr __at (0xFF9) PC;
+
+extern __sfr __at (0xFF9) PCL;
+
+extern __sfr __at (0xFFA) PCLATH;
+
+extern __sfr __at (0xFFB) PCLATU;
+
+extern __sfr __at (0xFFC) STKPTR;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned STKUNF : 1;
+ unsigned STKOVF : 1;
+ };
+} __STKPTRbits_t;
+extern volatile __STKPTRbits_t __at (0xFFC) STKPTRbits;
+
+extern __sfr __at (0xFFD) TOS;
+
+extern __sfr __at (0xFFD) TOSL;
+
+extern __sfr __at (0xFFE) TOSH;
+
+extern __sfr __at (0xFFF) TOSU;
+
+
+#endif
+
--- /dev/null
+/*
+ * pic18f65j50.h - device specific declarations
+ */
+
+#ifndef __PIC18F65J50_H__
+#define __PIC18F65J50_H__ 1
+
+#include "pic18f67j50.h"
+
+// Configuration Bits
+#undef __CONFIG1L
+#undef __CONFIG1H
+#undef __CONFIG2L
+#undef __CONFIG2H
+#undef __CONFIG3L
+#undef __CONFIG3H
+
+#define __CONFIG1L 0x7FF8
+#define __CONFIG1H 0x7FF9
+#define __CONFIG2L 0x7FFA
+#define __CONFIG2H 0x7FFB
+#define __CONFIG3L 0x7FFC
+#define __CONFIG3H 0x7FFD
+
+#endif
+
--- /dev/null
+/*
+ * pic18f66j50.h - device specific declarations
+ */
+
+#ifndef __PIC18F66J50_H__
+#define __PIC18F66J50_H__ 1
+
+#include "pic18f67j50.h"
+
+#undef __CONFIG1L
+#undef __CONFIG1H
+#undef __CONFIG2L
+#undef __CONFIG2H
+#undef __CONFIG3L
+#undef __CONFIG3H
+
+// Configuration Bits
+#define __CONFIG1L 0xFFF8
+#define __CONFIG1H 0xFFF9
+#define __CONFIG2L 0xFFFA
+#define __CONFIG2H 0xFFFB
+#define __CONFIG3L 0xFFFC
+#define __CONFIG3H 0xFFFD
+
+#endif
+
--- /dev/null
+/*
+ * pic18f66j55.h - device specific declarations
+ */
+
+#ifndef __PIC18F66J55_H__
+#define __PIC18F66J55_H__ 1
+
+#include "pic18f67j50.h"
+
+#undef __CONFIG1L
+#undef __CONFIG1H
+#undef __CONFIG2L
+#undef __CONFIG2H
+#undef __CONFIG3L
+#undef __CONFIG3H
+
+// Configuration Bits
+#define __CONFIG1L 0x17FF8
+#define __CONFIG1H 0x17FF9
+#define __CONFIG2L 0x17FFA
+#define __CONFIG2H 0x17FFB
+#define __CONFIG3L 0x17FFC
+#define __CONFIG3H 0x17FFD
+
+#endif
+
--- /dev/null
+/*
+ * pic18f67j50.h - device specific declarations
+ *
+ * This file is part of the GNU PIC library for SDCC,
+ * originally devised by Vangelis Rokas <vrokas AT otenet.gr>
+ *
+ * It has been automatically generated by inc2h-pic16.pl,
+ * (c) 2007 by Raphael Neider <rneider AT web.de>
+ */
+
+#ifndef __PIC18F67J50_H__
+#define __PIC18F67J50_H__ 1
+
+
+
+// Configuration Bits
+#define __CONFIG1L 0x1FFF8
+#define __CONFIG1H 0x1FFF9
+#define __CONFIG2L 0x1FFFA
+#define __CONFIG2H 0x1FFFB
+#define __CONFIG3L 0x1FFFC
+#define __CONFIG3H 0x1FFFD
+#define _DEVID1 0x3FFFFE
+#define _DEVID2 0x3FFFFF
+
+extern __sfr __at (0xF40) PMSTAT;
+
+extern __sfr __at (0xF40) PMSTATL;
+typedef union {
+ struct {
+ unsigned OB0E : 1;
+ unsigned OB1E : 1;
+ unsigned OB2E : 1;
+ unsigned OB3E : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned OBUF : 1;
+ unsigned OBE : 1;
+ };
+} __PMSTATLbits_t;
+extern volatile __PMSTATLbits_t __at (0xF40) PMSTATLbits;
+
+extern __sfr __at (0xF41) PMSTATH;
+typedef union {
+ struct {
+ unsigned IB0F : 1;
+ unsigned IB1F : 1;
+ unsigned IB2F : 1;
+ unsigned IB3F : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned IBOV : 1;
+ unsigned IBF : 1;
+ };
+} __PMSTATHbits_t;
+extern volatile __PMSTATHbits_t __at (0xF41) PMSTATHbits;
+
+extern __sfr __at (0xF42) PMEL;
+typedef union {
+ struct {
+ unsigned PTEN0 : 1;
+ unsigned PTEN1 : 1;
+ unsigned PTEN2 : 1;
+ unsigned PTEN3 : 1;
+ unsigned PTEN4 : 1;
+ unsigned PTEN5 : 1;
+ unsigned PTEN6 : 1;
+ unsigned PTEN7 : 1;
+ };
+} __PMELbits_t;
+extern volatile __PMELbits_t __at (0xF42) PMELbits;
+
+extern __sfr __at (0xF42) PMEN;
+
+extern __sfr __at (0xF43) PMEH;
+typedef union {
+ struct {
+ unsigned PTEN8 : 1;
+ unsigned PTEN9 : 1;
+ unsigned PTEN10 : 1;
+ unsigned PTEN11 : 1;
+ unsigned PTEN12 : 1;
+ unsigned PTEN13 : 1;
+ unsigned PTEN14 : 1;
+ unsigned PTEN15 : 1;
+ };
+} __PMEHbits_t;
+extern volatile __PMEHbits_t __at (0xF43) PMEHbits;
+
+extern __sfr __at (0xF44) PMDIN2;
+
+extern __sfr __at (0xF44) PMDIN2L;
+
+extern __sfr __at (0xF45) PMDIN2H;
+
+extern __sfr __at (0xF46) PMDOUT2;
+
+extern __sfr __at (0xF46) PMDOUT2L;
+
+extern __sfr __at (0xF47) PMDOUT2H;
+
+extern __sfr __at (0xF48) PMMODE;
+
+extern __sfr __at (0xF48) PMMODEL;
+typedef union {
+ struct {
+ unsigned WAITE0 : 1;
+ unsigned WAITE1 : 1;
+ unsigned WAITM0 : 1;
+ unsigned WAITM1 : 1;
+ unsigned WAITM2 : 1;
+ unsigned WAITM3 : 1;
+ unsigned WAITB0 : 1;
+ unsigned WAITB1 : 1;
+ };
+} __PMMODELbits_t;
+extern volatile __PMMODELbits_t __at (0xF48) PMMODELbits;
+
+extern __sfr __at (0xF49) PMMODEH;
+typedef union {
+ struct {
+ unsigned MODE0 : 1;
+ unsigned MODE1 : 1;
+ unsigned MODE16 : 1;
+ unsigned INCM0 : 1;
+ unsigned INCM1 : 1;
+ unsigned IRQM0 : 1;
+ unsigned IRQM1 : 1;
+ unsigned BUSY : 1;
+ };
+} __PMMODEHbits_t;
+extern volatile __PMMODEHbits_t __at (0xF49) PMMODEHbits;
+
+extern __sfr __at (0xF4A) PMCON;
+
+extern __sfr __at (0xF4A) PMCONL;
+typedef union {
+ struct {
+ unsigned RDSP : 1;
+ unsigned WRSP : 1;
+ unsigned BEP : 1;
+ unsigned CS1P : 1;
+ unsigned CS2P : 1;
+ unsigned ALP : 1;
+ unsigned CSF0 : 1;
+ unsigned CSF1 : 1;
+ };
+} __PMCONLbits_t;
+extern volatile __PMCONLbits_t __at (0xF4A) PMCONLbits;
+
+extern __sfr __at (0xF4B) PMCONH;
+typedef union {
+ struct {
+ unsigned PTRDEN : 1;
+ unsigned PTWREN : 1;
+ unsigned PTBEEN : 1;
+ unsigned ADRMUX0 : 1;
+ unsigned ADRMUX1 : 1;
+ unsigned PSIDL : 1;
+ unsigned : 1;
+ unsigned PMPEN : 1;
+ };
+} __PMCONHbits_t;
+extern volatile __PMCONHbits_t __at (0xF4B) PMCONHbits;
+
+extern __sfr __at (0xF4C) UEP0;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP0bits_t;
+extern volatile __UEP0bits_t __at (0xF4C) UEP0bits;
+
+extern __sfr __at (0xF4D) UEP1;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP1bits_t;
+extern volatile __UEP1bits_t __at (0xF4D) UEP1bits;
+
+extern __sfr __at (0xF4E) UEP2;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP2bits_t;
+extern volatile __UEP2bits_t __at (0xF4E) UEP2bits;
+
+extern __sfr __at (0xF4F) UEP3;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP3bits_t;
+extern volatile __UEP3bits_t __at (0xF4F) UEP3bits;
+
+extern __sfr __at (0xF50) UEP4;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP4bits_t;
+extern volatile __UEP4bits_t __at (0xF50) UEP4bits;
+
+extern __sfr __at (0xF51) UEP5;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP5bits_t;
+extern volatile __UEP5bits_t __at (0xF51) UEP5bits;
+
+extern __sfr __at (0xF52) UEP6;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP6bits_t;
+extern volatile __UEP6bits_t __at (0xF52) UEP6bits;
+
+extern __sfr __at (0xF53) UEP7;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP7bits_t;
+extern volatile __UEP7bits_t __at (0xF53) UEP7bits;
+
+extern __sfr __at (0xF54) UEP8;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP8bits_t;
+extern volatile __UEP8bits_t __at (0xF54) UEP8bits;
+
+extern __sfr __at (0xF55) UEP9;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP9bits_t;
+extern volatile __UEP9bits_t __at (0xF55) UEP9bits;
+
+extern __sfr __at (0xF56) UEP10;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP10bits_t;
+extern volatile __UEP10bits_t __at (0xF56) UEP10bits;
+
+extern __sfr __at (0xF57) UEP11;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP11bits_t;
+extern volatile __UEP11bits_t __at (0xF57) UEP11bits;
+
+extern __sfr __at (0xF58) UEP12;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP12bits_t;
+extern volatile __UEP12bits_t __at (0xF58) UEP12bits;
+
+extern __sfr __at (0xF59) UEP13;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP13bits_t;
+extern volatile __UEP13bits_t __at (0xF59) UEP13bits;
+
+extern __sfr __at (0xF5A) UEP14;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP14bits_t;
+extern volatile __UEP14bits_t __at (0xF5A) UEP14bits;
+
+extern __sfr __at (0xF5B) UEP15;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP15bits_t;
+extern volatile __UEP15bits_t __at (0xF5B) UEP15bits;
+
+extern __sfr __at (0xF5C) UIE;
+typedef union {
+ struct {
+ unsigned URSTIE : 1;
+ unsigned UERRIE : 1;
+ unsigned ACTVIE : 1;
+ unsigned TRNIE : 1;
+ unsigned IDLEIE : 1;
+ unsigned STALLIE : 1;
+ unsigned SOFIE : 1;
+ unsigned : 1;
+ };
+} __UIEbits_t;
+extern volatile __UIEbits_t __at (0xF5C) UIEbits;
+
+extern __sfr __at (0xF5D) UEIE;
+typedef union {
+ struct {
+ unsigned PIDEE : 1;
+ unsigned CRC5EE : 1;
+ unsigned CRC16EE : 1;
+ unsigned DFN8EE : 1;
+ unsigned BTOEE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned BTSEE : 1;
+ };
+} __UEIEbits_t;
+extern volatile __UEIEbits_t __at (0xF5D) UEIEbits;
+
+extern __sfr __at (0xF5E) UADDR;
+typedef union {
+ struct {
+ unsigned ADDR0 : 1;
+ unsigned ADDR1 : 1;
+ unsigned ADDR2 : 1;
+ unsigned ADDR3 : 1;
+ unsigned ADDR4 : 1;
+ unsigned ADDR5 : 1;
+ unsigned ADDR6 : 1;
+ unsigned : 1;
+ };
+} __UADDRbits_t;
+extern volatile __UADDRbits_t __at (0xF5E) UADDRbits;
+
+extern __sfr __at (0xF5F) UCFG;
+typedef union {
+ struct {
+ unsigned PPB0 : 1;
+ unsigned PPB1 : 1;
+ unsigned FSEN : 1;
+ unsigned UTRDIS : 1;
+ unsigned UPUEN : 1;
+ unsigned : 1;
+ unsigned UOEMON : 1;
+ unsigned UTEYE : 1;
+ };
+} __UCFGbits_t;
+extern volatile __UCFGbits_t __at (0xF5F) UCFGbits;
+
+extern __sfr __at (0xF60) UFRM;
+
+extern __sfr __at (0xF60) UFRML;
+typedef union {
+ struct {
+ unsigned FRM0 : 1;
+ unsigned FRM1 : 1;
+ unsigned FRM2 : 1;
+ unsigned FRM3 : 1;
+ unsigned FRM4 : 1;
+ unsigned FRM5 : 1;
+ unsigned FRM6 : 1;
+ unsigned FRM7 : 1;
+ };
+} __UFRMLbits_t;
+extern volatile __UFRMLbits_t __at (0xF60) UFRMLbits;
+
+extern __sfr __at (0xF61) UFRMH;
+typedef union {
+ struct {
+ unsigned FRM8 : 1;
+ unsigned FRM9 : 1;
+ unsigned FRM10 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UFRMHbits_t;
+extern volatile __UFRMHbits_t __at (0xF61) UFRMHbits;
+
+extern __sfr __at (0xF62) UIR;
+typedef union {
+ struct {
+ unsigned URSTIF : 1;
+ unsigned UERRIF : 1;
+ unsigned ACTVIF : 1;
+ unsigned TRNIF : 1;
+ unsigned IDLEIF : 1;
+ unsigned STALLIF : 1;
+ unsigned SOFIF : 1;
+ unsigned : 1;
+ };
+} __UIRbits_t;
+extern volatile __UIRbits_t __at (0xF62) UIRbits;
+
+extern __sfr __at (0xF63) UEIR;
+typedef union {
+ struct {
+ unsigned PIDEF : 1;
+ unsigned CRC5EF : 1;
+ unsigned CRC16EF : 1;
+ unsigned DFN8EF : 1;
+ unsigned BTOEF : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned BTSEF : 1;
+ };
+} __UEIRbits_t;
+extern volatile __UEIRbits_t __at (0xF63) UEIRbits;
+
+extern __sfr __at (0xF64) USTAT;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned PPBI : 1;
+ unsigned DIR : 1;
+ unsigned ENDP0 : 1;
+ unsigned ENDP1 : 1;
+ unsigned ENDP2 : 1;
+ unsigned ENDP3 : 1;
+ unsigned : 1;
+ };
+} __USTATbits_t;
+extern volatile __USTATbits_t __at (0xF64) USTATbits;
+
+extern __sfr __at (0xF65) UCON;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned SUSPND : 1;
+ unsigned RESUME : 1;
+ unsigned USBEN : 1;
+ unsigned PKTDIS : 1;
+ unsigned SE0 : 1;
+ unsigned PPBRST : 1;
+ unsigned : 1;
+ };
+} __UCONbits_t;
+extern volatile __UCONbits_t __at (0xF65) UCONbits;
+
+extern __sfr __at (0xF66) PMDIN1;
+
+extern __sfr __at (0xF66) PMDIN1L;
+
+extern __sfr __at (0xF67) PMDIN1H;
+
+extern __sfr __at (0xF68) PMADDR;
+
+extern __sfr __at (0xF68) PMADDRL;
+
+extern __sfr __at (0xF68) PMDOUT1;
+
+extern __sfr __at (0xF68) PMDOUT1L;
+
+extern __sfr __at (0xF69) PMADDRH;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CS1 : 1;
+ unsigned CS2 : 1;
+ };
+} __PMADDRHbits_t;
+extern volatile __PMADDRHbits_t __at (0xF69) PMADDRHbits;
+
+extern __sfr __at (0xF69) PMDOUT1H;
+
+extern __sfr __at (0xF6A) CMSTAT;
+typedef union {
+ struct {
+ unsigned COUT1 : 1;
+ unsigned COUT2 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CMSTATbits_t;
+extern volatile __CMSTATbits_t __at (0xF6A) CMSTATbits;
+
+extern __sfr __at (0xF6A) CMSTATUS;
+typedef union {
+ struct {
+ unsigned COUT1 : 1;
+ unsigned COUT2 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CMSTATUSbits_t;
+extern volatile __CMSTATUSbits_t __at (0xF6A) CMSTATUSbits;
+
+extern __sfr __at (0xF6B) SSP2CON2;
+typedef union {
+ struct {
+ unsigned SEN : 1;
+ unsigned RSEN : 1;
+ unsigned PEN : 1;
+ unsigned RCEN : 1;
+ unsigned ACKEN : 1;
+ unsigned ACKDT : 1;
+ unsigned ACKSTAT : 1;
+ unsigned GCEN : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned ADMSK1 : 1;
+ unsigned ADMSK2 : 1;
+ unsigned ADMSK3 : 1;
+ unsigned ADMSK4 : 1;
+ unsigned ADMSK5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __SSP2CON2bits_t;
+extern volatile __SSP2CON2bits_t __at (0xF6B) SSP2CON2bits;
+
+extern __sfr __at (0xF6C) SSP2CON1;
+typedef union {
+ struct {
+ unsigned SSPM0 : 1;
+ unsigned SSPM1 : 1;
+ unsigned SSPM2 : 1;
+ unsigned SSPM3 : 1;
+ unsigned CKP : 1;
+ unsigned SSPEN : 1;
+ unsigned SSPOV : 1;
+ unsigned WCOL : 1;
+ };
+} __SSP2CON1bits_t;
+extern volatile __SSP2CON1bits_t __at (0xF6C) SSP2CON1bits;
+
+extern __sfr __at (0xF6D) SSP2STAT;
+typedef union {
+ struct {
+ unsigned BF : 1;
+ unsigned UA : 1;
+ unsigned R_W : 1;
+ unsigned S : 1;
+ unsigned P : 1;
+ unsigned D_A : 1;
+ unsigned CKE : 1;
+ unsigned SMP : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned I2C_READ : 1;
+ unsigned I2C_START : 1;
+ unsigned I2C_STOP : 1;
+ unsigned I2C_DAT : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_W : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_A : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_WRITE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_ADDRESS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned READ_WRITE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned DATA_ADDRESS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned R : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned D : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __SSP2STATbits_t;
+extern volatile __SSP2STATbits_t __at (0xF6D) SSP2STATbits;
+
+extern __sfr __at (0xF6E) SSP2ADD;
+
+extern __sfr __at (0xF6E) SSP2MSK;
+typedef union {
+ struct {
+ unsigned MSK0 : 1;
+ unsigned MSK1 : 1;
+ unsigned MSK2 : 1;
+ unsigned MSK3 : 1;
+ unsigned MSK4 : 1;
+ unsigned MSK5 : 1;
+ unsigned MSK6 : 1;
+ unsigned MSK7 : 1;
+ };
+} __SSP2MSKbits_t;
+extern volatile __SSP2MSKbits_t __at (0xF6E) SSP2MSKbits;
+
+extern __sfr __at (0xF6F) SSP2BUF;
+
+extern __sfr __at (0xF70) CCP5CON;
+typedef union {
+ struct {
+ unsigned CCP5M0 : 1;
+ unsigned CCP5M1 : 1;
+ unsigned CCP5M2 : 1;
+ unsigned CCP5M3 : 1;
+ unsigned DCCP5Y : 1;
+ unsigned DCCP5X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned DC5B0 : 1;
+ unsigned DC5B1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CCP5CONbits_t;
+extern volatile __CCP5CONbits_t __at (0xF70) CCP5CONbits;
+
+extern __sfr __at (0xF71) CCPR5;
+
+extern __sfr __at (0xF71) CCPR5L;
+
+extern __sfr __at (0xF72) CCPR5H;
+
+extern __sfr __at (0xF73) CCP4CON;
+typedef union {
+ struct {
+ unsigned CCP4M0 : 1;
+ unsigned CCP4M1 : 1;
+ unsigned CCP4M2 : 1;
+ unsigned CCP4M3 : 1;
+ unsigned DCCP4Y : 1;
+ unsigned DCCP4X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned DC4B0 : 1;
+ unsigned DC4B1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CCP4CONbits_t;
+extern volatile __CCP4CONbits_t __at (0xF73) CCP4CONbits;
+
+extern __sfr __at (0xF74) CCPR4;
+
+extern __sfr __at (0xF74) CCPR4L;
+
+extern __sfr __at (0xF75) CCPR4H;
+
+extern __sfr __at (0xF76) T4CON;
+typedef union {
+ struct {
+ unsigned T4CKPS0 : 1;
+ unsigned T4CKPS1 : 1;
+ unsigned TMR4ON : 1;
+ unsigned T4OUTPS0 : 1;
+ unsigned T4OUTPS1 : 1;
+ unsigned T4OUTPS2 : 1;
+ unsigned T4OUTPS3 : 1;
+ unsigned : 1;
+ };
+} __T4CONbits_t;
+extern volatile __T4CONbits_t __at (0xF76) T4CONbits;
+
+extern __sfr __at (0xF77) CVRCON;
+typedef union {
+ struct {
+ unsigned CVR0 : 1;
+ unsigned CVR1 : 1;
+ unsigned CVR2 : 1;
+ unsigned CVR3 : 1;
+ unsigned CVRSS : 1;
+ unsigned CVRR : 1;
+ unsigned CVROE : 1;
+ unsigned CVREN : 1;
+ };
+} __CVRCONbits_t;
+extern volatile __CVRCONbits_t __at (0xF77) CVRCONbits;
+
+extern __sfr __at (0xF77) PR4;
+
+extern __sfr __at (0xF78) TMR4;
+
+extern __sfr __at (0xF79) T3CON;
+typedef union {
+ struct {
+ unsigned TMR3ON : 1;
+ unsigned TMR3CS : 1;
+ unsigned T3SYNC : 1;
+ unsigned T3CCP1 : 1;
+ unsigned T3CKPS0 : 1;
+ unsigned T3CKPS1 : 1;
+ unsigned T3CCP2 : 1;
+ unsigned RD16 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned T3INSYNC : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_T3SYNC : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __T3CONbits_t;
+extern volatile __T3CONbits_t __at (0xF79) T3CONbits;
+
+extern __sfr __at (0xF7A) TMR3L;
+
+extern __sfr __at (0xF7B) TMR3H;
+
+extern __sfr __at (0xF7C) BAUDCON2;
+typedef union {
+ struct {
+ unsigned ABDEN : 1;
+ unsigned WUE : 1;
+ unsigned : 1;
+ unsigned BRG16 : 1;
+ unsigned SCKP : 1;
+ unsigned DTRXP : 1;
+ unsigned RCMT : 1;
+ unsigned ABDOVF : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned TXCKP : 1;
+ unsigned RXDTP : 1;
+ unsigned RCIDL : 1;
+ unsigned : 1;
+ };
+} __BAUDCON2bits_t;
+extern volatile __BAUDCON2bits_t __at (0xF7C) BAUDCON2bits;
+
+extern __sfr __at (0xF7D) SPBRGH2;
+
+extern __sfr __at (0xF7E) BAUDCON;
+typedef union {
+ struct {
+ unsigned ABDEN : 1;
+ unsigned WUE : 1;
+ unsigned : 1;
+ unsigned BRG16 : 1;
+ unsigned SCKP : 1;
+ unsigned DTRXP : 1;
+ unsigned RCMT : 1;
+ unsigned ABDOVF : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned TXCKP : 1;
+ unsigned RXDTP : 1;
+ unsigned RCIDL : 1;
+ unsigned : 1;
+ };
+} __BAUDCONbits_t;
+extern volatile __BAUDCONbits_t __at (0xF7E) BAUDCONbits;
+
+extern __sfr __at (0xF7E) BAUDCON1;
+typedef union {
+ struct {
+ unsigned ABDEN : 1;
+ unsigned WUE : 1;
+ unsigned : 1;
+ unsigned BRG16 : 1;
+ unsigned SCKP : 1;
+ unsigned DTRXP : 1;
+ unsigned RCMT : 1;
+ unsigned ABDOVF : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned TXCKP : 1;
+ unsigned RXDTP : 1;
+ unsigned RCIDL : 1;
+ unsigned : 1;
+ };
+} __BAUDCON1bits_t;
+extern volatile __BAUDCON1bits_t __at (0xF7E) BAUDCON1bits;
+
+extern __sfr __at (0xF7F) SPBRGH;
+
+extern __sfr __at (0xF7F) SPBRGH1;
+
+extern __sfr __at (0xF80) PORTA;
+typedef union {
+ struct {
+ unsigned RA0 : 1;
+ unsigned RA1 : 1;
+ unsigned RA2 : 1;
+ unsigned RA3 : 1;
+ unsigned RA4 : 1;
+ unsigned RA5 : 1;
+ unsigned RA6 : 1;
+ unsigned RA7 : 1;
+ };
+ struct {
+ unsigned AN0 : 1;
+ unsigned AN1 : 1;
+ unsigned AN2 : 1;
+ unsigned AN3 : 1;
+ unsigned T0CKI : 1;
+ unsigned AN4 : 1;
+ unsigned OSC2 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned VREFM : 1;
+ unsigned VREFP : 1;
+ unsigned : 1;
+ unsigned C2INA : 1;
+ unsigned CLKO : 1;
+ unsigned : 1;
+ };
+} __PORTAbits_t;
+extern volatile __PORTAbits_t __at (0xF80) PORTAbits;
+
+extern __sfr __at (0xF81) PORTB;
+typedef union {
+ struct {
+ unsigned RB0 : 1;
+ unsigned RB1 : 1;
+ unsigned RB2 : 1;
+ unsigned RB3 : 1;
+ unsigned RB4 : 1;
+ unsigned RB5 : 1;
+ unsigned RB6 : 1;
+ unsigned RB7 : 1;
+ };
+ struct {
+ unsigned INT0 : 1;
+ unsigned INT1 : 1;
+ unsigned INT2 : 1;
+ unsigned INT3 : 1;
+ unsigned KBI0 : 1;
+ unsigned KBI1 : 1;
+ unsigned KBI2 : 1;
+ unsigned KBI3 : 1;
+ };
+ struct {
+ unsigned FLT0 : 1;
+ unsigned PMA4 : 1;
+ unsigned PMA3 : 1;
+ unsigned PMA2 : 1;
+ unsigned PMA1 : 1;
+ unsigned PMA0 : 1;
+ unsigned PGC : 1;
+ unsigned PGD : 1;
+ };
+} __PORTBbits_t;
+extern volatile __PORTBbits_t __at (0xF81) PORTBbits;
+
+extern __sfr __at (0xF82) PORTC;
+typedef union {
+ struct {
+ unsigned RC0 : 1;
+ unsigned RC1 : 1;
+ unsigned RC2 : 1;
+ unsigned RC3 : 1;
+ unsigned RC4 : 1;
+ unsigned RC5 : 1;
+ unsigned RC6 : 1;
+ unsigned RC7 : 1;
+ };
+ struct {
+ unsigned T1OSO : 1;
+ unsigned T1OSI : 1;
+ unsigned CCP1 : 1;
+ unsigned SCK : 1;
+ unsigned SDI : 1;
+ unsigned SDO : 1;
+ unsigned TX : 1;
+ unsigned RX : 1;
+ };
+ struct {
+ unsigned T13CKI : 1;
+ unsigned CCP2_PORTC : 1;
+ unsigned : 1;
+ unsigned SCL : 1;
+ unsigned SDA : 1;
+ unsigned C2OUT : 1;
+ unsigned CK : 1;
+ unsigned DT : 1;
+ };
+} __PORTCbits_t;
+extern volatile __PORTCbits_t __at (0xF82) PORTCbits;
+
+extern __sfr __at (0xF83) PORTD;
+typedef union {
+ struct {
+ unsigned RD0 : 1;
+ unsigned RD1 : 1;
+ unsigned RD2 : 1;
+ unsigned RD3 : 1;
+ unsigned RD4 : 1;
+ unsigned RD5 : 1;
+ unsigned RD6 : 1;
+ unsigned RD7 : 1;
+ };
+ struct {
+ unsigned PMD0 : 1;
+ unsigned PMD1 : 1;
+ unsigned PMD2 : 1;
+ unsigned PMD3 : 1;
+ unsigned PMD4 : 1;
+ unsigned PMD5 : 1;
+ unsigned PMD6 : 1;
+ unsigned PMD7 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned SDO2 : 1;
+ unsigned SDA2 : 1;
+ unsigned SCL2 : 1;
+ unsigned SS2 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned SDI2 : 1;
+ unsigned SCK2 : 1;
+ unsigned : 1;
+ };
+} __PORTDbits_t;
+extern volatile __PORTDbits_t __at (0xF83) PORTDbits;
+
+extern __sfr __at (0xF84) PORTE;
+typedef union {
+ struct {
+ unsigned RE0 : 1;
+ unsigned RE1 : 1;
+ unsigned RE2 : 1;
+ unsigned RE3 : 1;
+ unsigned RE4 : 1;
+ unsigned RE5 : 1;
+ unsigned RE6 : 1;
+ unsigned RE7 : 1;
+ };
+ struct {
+ unsigned PMRD : 1;
+ unsigned PMWR : 1;
+ unsigned PMBE : 1;
+ unsigned PMA13 : 1;
+ unsigned PMA12 : 1;
+ unsigned PMA11 : 1;
+ unsigned PMA10 : 1;
+ unsigned PMA9 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned REFO : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP2_PORTE : 1;
+ };
+} __PORTEbits_t;
+extern volatile __PORTEbits_t __at (0xF84) PORTEbits;
+
+extern __sfr __at (0xF85) PORTF;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RF2 : 1;
+ unsigned RF3 : 1;
+ unsigned RF4 : 1;
+ unsigned RF5 : 1;
+ unsigned RF6 : 1;
+ unsigned RF7 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned AN7 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned AN10 : 1;
+ unsigned AN11 : 1;
+ unsigned SS : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned C2INB : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CVREF : 1;
+ unsigned C1INA : 1;
+ unsigned C1OUT : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned PMA5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned C1INB : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PORTFbits_t;
+extern volatile __PORTFbits_t __at (0xF85) PORTFbits;
+
+extern __sfr __at (0xF86) PORTG;
+typedef union {
+ struct {
+ unsigned RG0 : 1;
+ unsigned RG1 : 1;
+ unsigned RG2 : 1;
+ unsigned RG3 : 1;
+ unsigned RG4 : 1;
+ unsigned : 1;
+ unsigned REPU : 1;
+ unsigned RDPU : 1;
+ };
+ struct {
+ unsigned CCP3 : 1;
+ unsigned TX2 : 1;
+ unsigned RX2 : 1;
+ unsigned CCP4 : 1;
+ unsigned CCP5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned PMA8 : 1;
+ unsigned CK2 : 1;
+ unsigned DT2 : 1;
+ unsigned PMCS1 : 1;
+ unsigned PMCS2 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned PMA7 : 1;
+ unsigned PMA6 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PORTGbits_t;
+extern volatile __PORTGbits_t __at (0xF86) PORTGbits;
+
+extern __sfr __at (0xF89) LATA;
+typedef union {
+ struct {
+ unsigned LATA0 : 1;
+ unsigned LATA1 : 1;
+ unsigned LATA2 : 1;
+ unsigned LATA3 : 1;
+ unsigned LATA4 : 1;
+ unsigned LATA5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __LATAbits_t;
+extern volatile __LATAbits_t __at (0xF89) LATAbits;
+
+extern __sfr __at (0xF8A) LATB;
+typedef union {
+ struct {
+ unsigned LATB0 : 1;
+ unsigned LATB1 : 1;
+ unsigned LATB2 : 1;
+ unsigned LATB3 : 1;
+ unsigned LATB4 : 1;
+ unsigned LATB5 : 1;
+ unsigned LATB6 : 1;
+ unsigned LATB7 : 1;
+ };
+} __LATBbits_t;
+extern volatile __LATBbits_t __at (0xF8A) LATBbits;
+
+extern __sfr __at (0xF8B) LATC;
+typedef union {
+ struct {
+ unsigned LATC0 : 1;
+ unsigned LATC1 : 1;
+ unsigned LATC2 : 1;
+ unsigned LATC3 : 1;
+ unsigned LATC4 : 1;
+ unsigned LATC5 : 1;
+ unsigned LATC6 : 1;
+ unsigned LATC7 : 1;
+ };
+} __LATCbits_t;
+extern volatile __LATCbits_t __at (0xF8B) LATCbits;
+
+extern __sfr __at (0xF8C) LATD;
+typedef union {
+ struct {
+ unsigned LATD0 : 1;
+ unsigned LATD1 : 1;
+ unsigned LATD2 : 1;
+ unsigned LATD3 : 1;
+ unsigned LATD4 : 1;
+ unsigned LATD5 : 1;
+ unsigned LATD6 : 1;
+ unsigned LATD7 : 1;
+ };
+} __LATDbits_t;
+extern volatile __LATDbits_t __at (0xF8C) LATDbits;
+
+extern __sfr __at (0xF8D) LATE;
+typedef union {
+ struct {
+ unsigned LATE0 : 1;
+ unsigned LATE1 : 1;
+ unsigned LATE2 : 1;
+ unsigned LATE3 : 1;
+ unsigned LATE4 : 1;
+ unsigned LATE5 : 1;
+ unsigned LATE6 : 1;
+ unsigned LATE7 : 1;
+ };
+} __LATEbits_t;
+extern volatile __LATEbits_t __at (0xF8D) LATEbits;
+
+extern __sfr __at (0xF8E) LATF;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned LATF2 : 1;
+ unsigned LATF3 : 1;
+ unsigned LATF4 : 1;
+ unsigned LATF5 : 1;
+ unsigned LATF6 : 1;
+ unsigned LATF7 : 1;
+ };
+} __LATFbits_t;
+extern volatile __LATFbits_t __at (0xF8E) LATFbits;
+
+extern __sfr __at (0xF8F) LATG;
+typedef union {
+ struct {
+ unsigned LATG0 : 1;
+ unsigned LATG1 : 1;
+ unsigned LATG2 : 1;
+ unsigned LATG3 : 1;
+ unsigned LATG4 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __LATGbits_t;
+extern volatile __LATGbits_t __at (0xF8F) LATGbits;
+
+extern __sfr __at (0xF92) DDRA;
+typedef union {
+ struct {
+ unsigned RA0 : 1;
+ unsigned RA1 : 1;
+ unsigned RA2 : 1;
+ unsigned RA3 : 1;
+ unsigned RA4 : 1;
+ unsigned RA5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __DDRAbits_t;
+extern volatile __DDRAbits_t __at (0xF92) DDRAbits;
+
+extern __sfr __at (0xF92) TRISA;
+typedef union {
+ struct {
+ unsigned TRISA0 : 1;
+ unsigned TRISA1 : 1;
+ unsigned TRISA2 : 1;
+ unsigned TRISA3 : 1;
+ unsigned TRISA4 : 1;
+ unsigned TRISA5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __TRISAbits_t;
+extern volatile __TRISAbits_t __at (0xF92) TRISAbits;
+
+extern __sfr __at (0xF93) DDRB;
+typedef union {
+ struct {
+ unsigned RB0 : 1;
+ unsigned RB1 : 1;
+ unsigned RB2 : 1;
+ unsigned RB3 : 1;
+ unsigned RB4 : 1;
+ unsigned RB5 : 1;
+ unsigned RB6 : 1;
+ unsigned RB7 : 1;
+ };
+} __DDRBbits_t;
+extern volatile __DDRBbits_t __at (0xF93) DDRBbits;
+
+extern __sfr __at (0xF93) TRISB;
+typedef union {
+ struct {
+ unsigned TRISB0 : 1;
+ unsigned TRISB1 : 1;
+ unsigned TRISB2 : 1;
+ unsigned TRISB3 : 1;
+ unsigned TRISB4 : 1;
+ unsigned TRISB5 : 1;
+ unsigned TRISB6 : 1;
+ unsigned TRISB7 : 1;
+ };
+} __TRISBbits_t;
+extern volatile __TRISBbits_t __at (0xF93) TRISBbits;
+
+extern __sfr __at (0xF94) DDRC;
+typedef union {
+ struct {
+ unsigned RC0 : 1;
+ unsigned RC1 : 1;
+ unsigned RC2 : 1;
+ unsigned RC3 : 1;
+ unsigned RC4 : 1;
+ unsigned RC5 : 1;
+ unsigned RC6 : 1;
+ unsigned RC7 : 1;
+ };
+} __DDRCbits_t;
+extern volatile __DDRCbits_t __at (0xF94) DDRCbits;
+
+extern __sfr __at (0xF94) TRISC;
+typedef union {
+ struct {
+ unsigned TRISC0 : 1;
+ unsigned TRISC1 : 1;
+ unsigned TRISC2 : 1;
+ unsigned TRISC3 : 1;
+ unsigned TRISC4 : 1;
+ unsigned TRISC5 : 1;
+ unsigned TRISC6 : 1;
+ unsigned TRISC7 : 1;
+ };
+} __TRISCbits_t;
+extern volatile __TRISCbits_t __at (0xF94) TRISCbits;
+
+extern __sfr __at (0xF95) DDRD;
+typedef union {
+ struct {
+ unsigned RD0 : 1;
+ unsigned RD1 : 1;
+ unsigned RD2 : 1;
+ unsigned RD3 : 1;
+ unsigned RD4 : 1;
+ unsigned RD5 : 1;
+ unsigned RD6 : 1;
+ unsigned RD7 : 1;
+ };
+} __DDRDbits_t;
+extern volatile __DDRDbits_t __at (0xF95) DDRDbits;
+
+extern __sfr __at (0xF95) TRISD;
+typedef union {
+ struct {
+ unsigned TRISD0 : 1;
+ unsigned TRISD1 : 1;
+ unsigned TRISD2 : 1;
+ unsigned TRISD3 : 1;
+ unsigned TRISD4 : 1;
+ unsigned TRISD5 : 1;
+ unsigned TRISD6 : 1;
+ unsigned TRISD7 : 1;
+ };
+} __TRISDbits_t;
+extern volatile __TRISDbits_t __at (0xF95) TRISDbits;
+
+extern __sfr __at (0xF96) DDRE;
+typedef union {
+ struct {
+ unsigned RE0 : 1;
+ unsigned RE1 : 1;
+ unsigned RE2 : 1;
+ unsigned RE3 : 1;
+ unsigned RE4 : 1;
+ unsigned RE5 : 1;
+ unsigned RE6 : 1;
+ unsigned RE7 : 1;
+ };
+} __DDREbits_t;
+extern volatile __DDREbits_t __at (0xF96) DDREbits;
+
+extern __sfr __at (0xF96) TRISE;
+typedef union {
+ struct {
+ unsigned TRISE0 : 1;
+ unsigned TRISE1 : 1;
+ unsigned TRISE2 : 1;
+ unsigned TRISE3 : 1;
+ unsigned TRISE4 : 1;
+ unsigned TRISE5 : 1;
+ unsigned TRISE6 : 1;
+ unsigned TRISE7 : 1;
+ };
+} __TRISEbits_t;
+extern volatile __TRISEbits_t __at (0xF96) TRISEbits;
+
+extern __sfr __at (0xF97) DDRF;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned RF1 : 1;
+ unsigned RF2 : 1;
+ unsigned RF3 : 1;
+ unsigned RF4 : 1;
+ unsigned RF5 : 1;
+ unsigned RF6 : 1;
+ unsigned RF7 : 1;
+ };
+} __DDRFbits_t;
+extern volatile __DDRFbits_t __at (0xF97) DDRFbits;
+
+extern __sfr __at (0xF97) TRISF;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned TRISF2 : 1;
+ unsigned TRISF3 : 1;
+ unsigned TRISF4 : 1;
+ unsigned TRISF5 : 1;
+ unsigned TRISF6 : 1;
+ unsigned TRISF7 : 1;
+ };
+} __TRISFbits_t;
+extern volatile __TRISFbits_t __at (0xF97) TRISFbits;
+
+extern __sfr __at (0xF98) DDRG;
+typedef union {
+ struct {
+ unsigned RG0 : 1;
+ unsigned RG1 : 1;
+ unsigned RG2 : 1;
+ unsigned RG3 : 1;
+ unsigned RG4 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __DDRGbits_t;
+extern volatile __DDRGbits_t __at (0xF98) DDRGbits;
+
+extern __sfr __at (0xF98) TRISG;
+typedef union {
+ struct {
+ unsigned TRISG0 : 1;
+ unsigned TRISG1 : 1;
+ unsigned TRISG2 : 1;
+ unsigned TRISG3 : 1;
+ unsigned TRISG4 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __TRISGbits_t;
+extern volatile __TRISGbits_t __at (0xF98) TRISGbits;
+
+extern __sfr __at (0xF9B) OSCTUNE;
+typedef union {
+ struct {
+ unsigned TUN0 : 1;
+ unsigned TUN1 : 1;
+ unsigned TUN2 : 1;
+ unsigned TUN3 : 1;
+ unsigned TUN4 : 1;
+ unsigned TUN5 : 1;
+ unsigned PLLEN : 1;
+ unsigned INTSRC : 1;
+ };
+} __OSCTUNEbits_t;
+extern volatile __OSCTUNEbits_t __at (0xF9B) OSCTUNEbits;
+
+extern __sfr __at (0xF9C) RCSTA2;
+typedef union {
+ struct {
+ unsigned RCD8 : 1;
+ unsigned OERR : 1;
+ unsigned FERR : 1;
+ unsigned ADDEN : 1;
+ unsigned CREN : 1;
+ unsigned SREN : 1;
+ unsigned RC9 : 1;
+ unsigned SPEN : 1;
+ };
+ struct {
+ unsigned RX9D : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_RC8 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RC8_9 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RX9 : 1;
+ unsigned : 1;
+ };
+} __RCSTA2bits_t;
+extern volatile __RCSTA2bits_t __at (0xF9C) RCSTA2bits;
+
+extern __sfr __at (0xF9D) PIE1;
+typedef union {
+ struct {
+ unsigned TMR1IE : 1;
+ unsigned TMR2IE : 1;
+ unsigned CCP1IE : 1;
+ unsigned SSPIE : 1;
+ unsigned TXIE : 1;
+ unsigned RCIE : 1;
+ unsigned ADIE : 1;
+ unsigned PMPIE : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned SSP1IE : 1;
+ unsigned TX1IE : 1;
+ unsigned RC1IE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PIE1bits_t;
+extern volatile __PIE1bits_t __at (0xF9D) PIE1bits;
+
+extern __sfr __at (0xF9E) PIR1;
+typedef union {
+ struct {
+ unsigned TMR1IF : 1;
+ unsigned TMR2IF : 1;
+ unsigned CCP1IF : 1;
+ unsigned SSPIF : 1;
+ unsigned TXIF : 1;
+ unsigned RCIF : 1;
+ unsigned ADIF : 1;
+ unsigned PMPIF : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned SSP1IF : 1;
+ unsigned TX1IF : 1;
+ unsigned RC1IF : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PIR1bits_t;
+extern volatile __PIR1bits_t __at (0xF9E) PIR1bits;
+
+extern __sfr __at (0xF9F) IPR1;
+typedef union {
+ struct {
+ unsigned TMR1IP : 1;
+ unsigned TMR2IP : 1;
+ unsigned CCP1IP : 1;
+ unsigned SSPIP : 1;
+ unsigned TXIP : 1;
+ unsigned RCIP : 1;
+ unsigned ADIP : 1;
+ unsigned PMPIP : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned SSP1IP : 1;
+ unsigned TX1IP : 1;
+ unsigned RC1IP : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __IPR1bits_t;
+extern volatile __IPR1bits_t __at (0xF9F) IPR1bits;
+
+extern __sfr __at (0xFA0) PIE2;
+typedef union {
+ struct {
+ unsigned CCP2IE : 1;
+ unsigned TMR3IE : 1;
+ unsigned LVDIE : 1;
+ unsigned BCLIE : 1;
+ unsigned USBIE : 1;
+ unsigned CM1IE : 1;
+ unsigned CM2IE : 1;
+ unsigned OSCFIE : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned BCL1IE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PIE2bits_t;
+extern volatile __PIE2bits_t __at (0xFA0) PIE2bits;
+
+extern __sfr __at (0xFA1) PIR2;
+typedef union {
+ struct {
+ unsigned CCP2IF : 1;
+ unsigned TMR3IF : 1;
+ unsigned LVDIF : 1;
+ unsigned BCLIF : 1;
+ unsigned USBIF : 1;
+ unsigned CM1IF : 1;
+ unsigned CM2IF : 1;
+ unsigned OSCFIF : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned BCL1IF : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PIR2bits_t;
+extern volatile __PIR2bits_t __at (0xFA1) PIR2bits;
+
+extern __sfr __at (0xFA2) IPR2;
+typedef union {
+ struct {
+ unsigned CCP2IP : 1;
+ unsigned TMR3IP : 1;
+ unsigned LVDIP : 1;
+ unsigned BCLIP : 1;
+ unsigned USBIP : 1;
+ unsigned CM1IP : 1;
+ unsigned CM2IP : 1;
+ unsigned OSCFIP : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned BCL1IP : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __IPR2bits_t;
+extern volatile __IPR2bits_t __at (0xFA2) IPR2bits;
+
+extern __sfr __at (0xFA3) PIE3;
+typedef union {
+ struct {
+ unsigned CCP3IE : 1;
+ unsigned CCP4IE : 1;
+ unsigned CCP5IE : 1;
+ unsigned TMR4IE : 1;
+ unsigned TX2IE : 1;
+ unsigned RC2IE : 1;
+ unsigned BCL2IE : 1;
+ unsigned SSP2IE : 1;
+ };
+} __PIE3bits_t;
+extern volatile __PIE3bits_t __at (0xFA3) PIE3bits;
+
+extern __sfr __at (0xFA4) PIR3;
+typedef union {
+ struct {
+ unsigned CCP3IF : 1;
+ unsigned CCP4IF : 1;
+ unsigned CCP5IF : 1;
+ unsigned TMR4IF : 1;
+ unsigned TX2IF : 1;
+ unsigned RC2IF : 1;
+ unsigned BCL2IF : 1;
+ unsigned SSP2IF : 1;
+ };
+} __PIR3bits_t;
+extern volatile __PIR3bits_t __at (0xFA4) PIR3bits;
+
+extern __sfr __at (0xFA5) IPR3;
+typedef union {
+ struct {
+ unsigned CCP3IP : 1;
+ unsigned CCP4IP : 1;
+ unsigned CCP5IP : 1;
+ unsigned TMR4IP : 1;
+ unsigned TX2IP : 1;
+ unsigned RC2IP : 1;
+ unsigned BCL2IP : 1;
+ unsigned SSP2IP : 1;
+ };
+} __IPR3bits_t;
+extern volatile __IPR3bits_t __at (0xFA5) IPR3bits;
+
+extern __sfr __at (0xFA6) EECON1;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned WR : 1;
+ unsigned WREN : 1;
+ unsigned WRERR : 1;
+ unsigned FREE : 1;
+ unsigned WPROG : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __EECON1bits_t;
+extern volatile __EECON1bits_t __at (0xFA6) EECON1bits;
+
+extern __sfr __at (0xFA7) EECON2;
+
+extern __sfr __at (0xFA8) TXSTA2;
+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;
+ };
+ struct {
+ unsigned TXD8 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned TX8_9 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_TX8 : 1;
+ unsigned : 1;
+ };
+} __TXSTA2bits_t;
+extern volatile __TXSTA2bits_t __at (0xFA8) TXSTA2bits;
+
+extern __sfr __at (0xFA9) TXREG2;
+
+extern __sfr __at (0xFAA) RCREG2;
+
+extern __sfr __at (0xFAB) SPBRG2;
+
+extern __sfr __at (0xFAC) RCSTA;
+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;
+ };
+ struct {
+ unsigned RCD8 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RC9 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_RC8 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RC8_9 : 1;
+ unsigned : 1;
+ };
+} __RCSTAbits_t;
+extern volatile __RCSTAbits_t __at (0xFAC) RCSTAbits;
+
+extern __sfr __at (0xFAC) RCSTA1;
+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;
+ };
+ struct {
+ unsigned RCD8 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RC9 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_RC8 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RC8_9 : 1;
+ unsigned : 1;
+ };
+} __RCSTA1bits_t;
+extern volatile __RCSTA1bits_t __at (0xFAC) RCSTA1bits;
+
+extern __sfr __at (0xFAD) TXSTA;
+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;
+ };
+ struct {
+ unsigned TXD8 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned TX8_9 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_TX8 : 1;
+ unsigned : 1;
+ };
+} __TXSTAbits_t;
+extern volatile __TXSTAbits_t __at (0xFAD) TXSTAbits;
+
+extern __sfr __at (0xFAD) TXSTA1;
+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;
+ };
+ struct {
+ unsigned TXD8 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned TX8_9 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_TX8 : 1;
+ unsigned : 1;
+ };
+} __TXSTA1bits_t;
+extern volatile __TXSTA1bits_t __at (0xFAD) TXSTA1bits;
+
+extern __sfr __at (0xFAE) TXREG;
+
+extern __sfr __at (0xFAE) TXREG1;
+
+extern __sfr __at (0xFAF) RCREG;
+
+extern __sfr __at (0xFAF) RCREG1;
+
+extern __sfr __at (0xFB0) SPBRG;
+
+extern __sfr __at (0xFB0) SPBRG1;
+
+extern __sfr __at (0xFB1) CCP3CON;
+typedef union {
+ struct {
+ unsigned CCP3M0 : 1;
+ unsigned CCP3M1 : 1;
+ unsigned CCP3M2 : 1;
+ unsigned CCP3M3 : 1;
+ unsigned DC3B0 : 1;
+ unsigned DC3B1 : 1;
+ unsigned P3M0 : 1;
+ unsigned P3M1 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP3Y : 1;
+ unsigned CCP3X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CCP3CONbits_t;
+extern volatile __CCP3CONbits_t __at (0xFB1) CCP3CONbits;
+
+extern __sfr __at (0xFB1) ECCP3CON;
+typedef union {
+ struct {
+ unsigned CCP3M0 : 1;
+ unsigned CCP3M1 : 1;
+ unsigned CCP3M2 : 1;
+ unsigned CCP3M3 : 1;
+ unsigned DC3B0 : 1;
+ unsigned DC3B1 : 1;
+ unsigned P3M0 : 1;
+ unsigned P3M1 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP3Y : 1;
+ unsigned CCP3X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ECCP3CONbits_t;
+extern volatile __ECCP3CONbits_t __at (0xFB1) ECCP3CONbits;
+
+extern __sfr __at (0xFB2) CCPR3;
+
+extern __sfr __at (0xFB2) CCPR3L;
+
+extern __sfr __at (0xFB3) CCPR3H;
+
+extern __sfr __at (0xFB4) ECCP3DEL;
+typedef union {
+ struct {
+ unsigned PDC0 : 1;
+ unsigned PDC1 : 1;
+ unsigned PDC2 : 1;
+ unsigned PDC3 : 1;
+ unsigned PDC4 : 1;
+ unsigned PDC5 : 1;
+ unsigned PDC6 : 1;
+ unsigned PRSEN : 1;
+ };
+ struct {
+ unsigned P3DC0 : 1;
+ unsigned P3DC1 : 1;
+ unsigned P3DC2 : 1;
+ unsigned P3DC3 : 1;
+ unsigned P3DC4 : 1;
+ unsigned P3DC5 : 1;
+ unsigned P3DC6 : 1;
+ unsigned P3RSEN : 1;
+ };
+} __ECCP3DELbits_t;
+extern volatile __ECCP3DELbits_t __at (0xFB4) ECCP3DELbits;
+
+extern __sfr __at (0xFB5) ECCP3AS;
+typedef union {
+ struct {
+ unsigned PSSBD0 : 1;
+ unsigned PSSBD1 : 1;
+ unsigned PSSAC0 : 1;
+ unsigned PSSAC1 : 1;
+ unsigned ECCPAS0 : 1;
+ unsigned ECCPAS1 : 1;
+ unsigned ECCPAS2 : 1;
+ unsigned ECCPASE : 1;
+ };
+ struct {
+ unsigned PSS3BD0 : 1;
+ unsigned PSS3BD1 : 1;
+ unsigned PSS3AC0 : 1;
+ unsigned PSS3AC1 : 1;
+ unsigned ECCP3AS0 : 1;
+ unsigned ECCP3AS1 : 1;
+ unsigned ECCP3AS2 : 1;
+ unsigned ECCP3ASE : 1;
+ };
+} __ECCP3ASbits_t;
+extern volatile __ECCP3ASbits_t __at (0xFB5) ECCP3ASbits;
+
+extern __sfr __at (0xFB6) CCP2CON;
+typedef union {
+ struct {
+ unsigned CCP2M0 : 1;
+ unsigned CCP2M1 : 1;
+ unsigned CCP2M2 : 1;
+ unsigned CCP2M3 : 1;
+ unsigned DC2B0 : 1;
+ unsigned DC2B1 : 1;
+ unsigned P2M0 : 1;
+ unsigned P2M1 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP2Y : 1;
+ unsigned CCP2X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CCP2CONbits_t;
+extern volatile __CCP2CONbits_t __at (0xFB6) CCP2CONbits;
+
+extern __sfr __at (0xFB6) ECCP2CON;
+typedef union {
+ struct {
+ unsigned CCP2M0 : 1;
+ unsigned CCP2M1 : 1;
+ unsigned CCP2M2 : 1;
+ unsigned CCP2M3 : 1;
+ unsigned DC2B0 : 1;
+ unsigned DC2B1 : 1;
+ unsigned P2M0 : 1;
+ unsigned P2M1 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP2Y : 1;
+ unsigned CCP2X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ECCP2CONbits_t;
+extern volatile __ECCP2CONbits_t __at (0xFB6) ECCP2CONbits;
+
+extern __sfr __at (0xFB7) CCPR2;
+
+extern __sfr __at (0xFB7) CCPR2L;
+
+extern __sfr __at (0xFB8) CCPR2H;
+
+extern __sfr __at (0xFB9) ECCP2DEL;
+typedef union {
+ struct {
+ unsigned PDC0 : 1;
+ unsigned PDC1 : 1;
+ unsigned PDC2 : 1;
+ unsigned PDC3 : 1;
+ unsigned PDC4 : 1;
+ unsigned PDC5 : 1;
+ unsigned PDC6 : 1;
+ unsigned PRSEN : 1;
+ };
+ struct {
+ unsigned P2DC0 : 1;
+ unsigned P2DC1 : 1;
+ unsigned P2DC2 : 1;
+ unsigned P2DC3 : 1;
+ unsigned P2DC4 : 1;
+ unsigned P2DC5 : 1;
+ unsigned P2DC6 : 1;
+ unsigned P2RSEN : 1;
+ };
+} __ECCP2DELbits_t;
+extern volatile __ECCP2DELbits_t __at (0xFB9) ECCP2DELbits;
+
+extern __sfr __at (0xFBA) ECCP2AS;
+typedef union {
+ struct {
+ unsigned PSSBD0 : 1;
+ unsigned PSSBD1 : 1;
+ unsigned PSSAC0 : 1;
+ unsigned PSSAC1 : 1;
+ unsigned ECCPAS0 : 1;
+ unsigned ECCPAS1 : 1;
+ unsigned ECCPAS2 : 1;
+ unsigned ECCPASE : 1;
+ };
+ struct {
+ unsigned PSS2BD0 : 1;
+ unsigned PSS2BD1 : 1;
+ unsigned PSS2AC0 : 1;
+ unsigned PSS2AC1 : 1;
+ unsigned ECCP2AS0 : 1;
+ unsigned ECCP2AS1 : 1;
+ unsigned ECCP2AS2 : 1;
+ unsigned ECCP2ASE : 1;
+ };
+} __ECCP2ASbits_t;
+extern volatile __ECCP2ASbits_t __at (0xFBA) ECCP2ASbits;
+
+extern __sfr __at (0xFBB) CCP1CON;
+typedef union {
+ struct {
+ unsigned CCP1M0 : 1;
+ unsigned CCP1M1 : 1;
+ unsigned CCP1M2 : 1;
+ unsigned CCP1M3 : 1;
+ unsigned DC1B0 : 1;
+ unsigned DC1B1 : 1;
+ unsigned P1M0 : 1;
+ unsigned P1M1 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP1Y : 1;
+ unsigned CCP1X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CCP1CONbits_t;
+extern volatile __CCP1CONbits_t __at (0xFBB) CCP1CONbits;
+
+extern __sfr __at (0xFBB) ECCP1CON;
+typedef union {
+ struct {
+ unsigned CCP1M0 : 1;
+ unsigned CCP1M1 : 1;
+ unsigned CCP1M2 : 1;
+ unsigned CCP1M3 : 1;
+ unsigned DC1B0 : 1;
+ unsigned DC1B1 : 1;
+ unsigned P1M0 : 1;
+ unsigned P1M1 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP1Y : 1;
+ unsigned CCP1X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ECCP1CONbits_t;
+extern volatile __ECCP1CONbits_t __at (0xFBB) ECCP1CONbits;
+
+extern __sfr __at (0xFBC) CCPR1;
+
+extern __sfr __at (0xFBC) CCPR1L;
+
+extern __sfr __at (0xFBD) CCPR1H;
+
+extern __sfr __at (0xFBE) ECCP1DEL;
+typedef union {
+ struct {
+ unsigned PDC0 : 1;
+ unsigned PDC1 : 1;
+ unsigned PDC2 : 1;
+ unsigned PDC3 : 1;
+ unsigned PDC4 : 1;
+ unsigned PDC5 : 1;
+ unsigned PDC6 : 1;
+ unsigned PRSEN : 1;
+ };
+ struct {
+ unsigned P1DC0 : 1;
+ unsigned P1DC1 : 1;
+ unsigned P1DC2 : 1;
+ unsigned P1DC3 : 1;
+ unsigned P1DC4 : 1;
+ unsigned P1DC5 : 1;
+ unsigned P1DC6 : 1;
+ unsigned P1RSEN : 1;
+ };
+} __ECCP1DELbits_t;
+extern volatile __ECCP1DELbits_t __at (0xFBE) ECCP1DELbits;
+
+extern __sfr __at (0xFBF) ECCP1AS;
+typedef union {
+ struct {
+ unsigned PSSBD0 : 1;
+ unsigned PSSBD1 : 1;
+ unsigned PSSAC0 : 1;
+ unsigned PSSAC1 : 1;
+ unsigned ECCPAS0 : 1;
+ unsigned ECCPAS1 : 1;
+ unsigned ECCPAS2 : 1;
+ unsigned ECCPASE : 1;
+ };
+ struct {
+ unsigned PSS1BD0 : 1;
+ unsigned PSS1BD1 : 1;
+ unsigned PSS1AC0 : 1;
+ unsigned PSS1AC1 : 1;
+ unsigned ECCP1AS0 : 1;
+ unsigned ECCP1AS1 : 1;
+ unsigned ECCP1AS2 : 1;
+ unsigned ECCP1ASE : 1;
+ };
+} __ECCP1ASbits_t;
+extern volatile __ECCP1ASbits_t __at (0xFBF) ECCP1ASbits;
+
+extern __sfr __at (0xFC0) WDTCON;
+typedef union {
+ struct {
+ unsigned SWDTE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned DEVCFG : 1;
+ unsigned : 1;
+ unsigned LVDSTAT : 1;
+ unsigned REGSLP : 1;
+ };
+ struct {
+ unsigned SWDTEN : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned ADSHR : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __WDTCONbits_t;
+extern volatile __WDTCONbits_t __at (0xFC0) WDTCONbits;
+
+extern __sfr __at (0xFC1) ADCON1;
+typedef union {
+ struct {
+ unsigned ADCS0 : 1;
+ unsigned ADCS1 : 1;
+ unsigned ADCS2 : 1;
+ unsigned ACQT0 : 1;
+ unsigned ACQT1 : 1;
+ unsigned ACQT2 : 1;
+ unsigned ADCAL : 1;
+ unsigned ADFM : 1;
+ };
+} __ADCON1bits_t;
+extern volatile __ADCON1bits_t __at (0xFC1) ADCON1bits;
+
+extern __sfr __at (0xFC1) ANCON0;
+typedef union {
+ struct {
+ unsigned PCFG0 : 1;
+ unsigned PCFG1 : 1;
+ unsigned PCFG2 : 1;
+ unsigned PCFG3 : 1;
+ unsigned PCFG4 : 1;
+ unsigned PCFG5 : 1;
+ unsigned PCFG6 : 1;
+ unsigned PCFG7 : 1;
+ };
+} __ANCON0bits_t;
+extern volatile __ANCON0bits_t __at (0xFC1) ANCON0bits;
+
+extern __sfr __at (0xFC2) ADCON0;
+typedef union {
+ struct {
+ unsigned ADON : 1;
+ unsigned DONE : 1;
+ unsigned CHS0 : 1;
+ unsigned CHS1 : 1;
+ unsigned CHS2 : 1;
+ unsigned CHS3 : 1;
+ unsigned VCFG0 : 1;
+ unsigned VCFG1 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned GO_DONE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned GO : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned NOT_DONE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ADCON0bits_t;
+extern volatile __ADCON0bits_t __at (0xFC2) ADCON0bits;
+
+extern __sfr __at (0xFC2) ANCON1;
+typedef union {
+ struct {
+ unsigned PCFG8 : 1;
+ unsigned PCFG9 : 1;
+ unsigned PCFG10 : 1;
+ unsigned PCFG11 : 1;
+ unsigned PCFG12 : 1;
+ unsigned PCFG13 : 1;
+ unsigned PCFG14 : 1;
+ unsigned PCFG15 : 1;
+ };
+} __ANCON1bits_t;
+extern volatile __ANCON1bits_t __at (0xFC2) ANCON1bits;
+
+extern __sfr __at (0xFC3) ADRES;
+
+extern __sfr __at (0xFC3) ADRESL;
+
+extern __sfr __at (0xFC4) ADRESH;
+
+extern __sfr __at (0xFC5) SSP1CON2;
+typedef union {
+ struct {
+ unsigned SEN : 1;
+ unsigned RSEN : 1;
+ unsigned PEN : 1;
+ unsigned RCEN : 1;
+ unsigned ACKEN : 1;
+ unsigned ACKDT : 1;
+ unsigned ACKSTAT : 1;
+ unsigned GCEN : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned ADMSK1 : 1;
+ unsigned ADMSK2 : 1;
+ unsigned ADMSK3 : 1;
+ unsigned ADMSK4 : 1;
+ unsigned ADMSK5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __SSP1CON2bits_t;
+extern volatile __SSP1CON2bits_t __at (0xFC5) SSP1CON2bits;
+
+extern __sfr __at (0xFC5) SSPCON2;
+typedef union {
+ struct {
+ unsigned SEN : 1;
+ unsigned RSEN : 1;
+ unsigned PEN : 1;
+ unsigned RCEN : 1;
+ unsigned ACKEN : 1;
+ unsigned ACKDT : 1;
+ unsigned ACKSTAT : 1;
+ unsigned GCEN : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned ADMSK1 : 1;
+ unsigned ADMSK2 : 1;
+ unsigned ADMSK3 : 1;
+ unsigned ADMSK4 : 1;
+ unsigned ADMSK5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __SSPCON2bits_t;
+extern volatile __SSPCON2bits_t __at (0xFC5) SSPCON2bits;
+
+extern __sfr __at (0xFC6) SSP1CON1;
+typedef union {
+ struct {
+ unsigned SSPM0 : 1;
+ unsigned SSPM1 : 1;
+ unsigned SSPM2 : 1;
+ unsigned SSPM3 : 1;
+ unsigned CKP : 1;
+ unsigned SSPEN : 1;
+ unsigned SSPOV : 1;
+ unsigned WCOL : 1;
+ };
+} __SSP1CON1bits_t;
+extern volatile __SSP1CON1bits_t __at (0xFC6) SSP1CON1bits;
+
+extern __sfr __at (0xFC6) SSPCON1;
+typedef union {
+ struct {
+ unsigned SSPM0 : 1;
+ unsigned SSPM1 : 1;
+ unsigned SSPM2 : 1;
+ unsigned SSPM3 : 1;
+ unsigned CKP : 1;
+ unsigned SSPEN : 1;
+ unsigned SSPOV : 1;
+ unsigned WCOL : 1;
+ };
+} __SSPCON1bits_t;
+extern volatile __SSPCON1bits_t __at (0xFC6) SSPCON1bits;
+
+extern __sfr __at (0xFC7) SSP1STAT;
+typedef union {
+ struct {
+ unsigned BF : 1;
+ unsigned UA : 1;
+ unsigned R_W : 1;
+ unsigned S : 1;
+ unsigned P : 1;
+ unsigned D_A : 1;
+ unsigned CKE : 1;
+ unsigned SMP : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned I2C_READ : 1;
+ unsigned I2C_START : 1;
+ unsigned I2C_STOP : 1;
+ unsigned I2C_DAT : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_W : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_A : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_WRITE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_ADDRESS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned READ_WRITE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned DATA_ADDRESS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned R : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned D : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __SSP1STATbits_t;
+extern volatile __SSP1STATbits_t __at (0xFC7) SSP1STATbits;
+
+extern __sfr __at (0xFC7) SSPSTAT;
+typedef union {
+ struct {
+ unsigned BF : 1;
+ unsigned UA : 1;
+ unsigned R_W : 1;
+ unsigned S : 1;
+ unsigned P : 1;
+ unsigned D_A : 1;
+ unsigned CKE : 1;
+ unsigned SMP : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned I2C_READ : 1;
+ unsigned I2C_START : 1;
+ unsigned I2C_STOP : 1;
+ unsigned I2C_DAT : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_W : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_A : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_WRITE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_ADDRESS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned READ_WRITE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned DATA_ADDRESS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned R : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned D : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __SSPSTATbits_t;
+extern volatile __SSPSTATbits_t __at (0xFC7) SSPSTATbits;
+
+extern __sfr __at (0xFC8) SSP1ADD;
+
+extern __sfr __at (0xFC8) SSP1MSK;
+
+extern __sfr __at (0xFC8) SSPADD;
+
+extern __sfr __at (0xFC9) SSP1BUF;
+
+extern __sfr __at (0xFC9) SSPBUF;
+
+extern __sfr __at (0xFCA) T2CON;
+typedef union {
+ struct {
+ unsigned T2CKPS0 : 1;
+ unsigned T2CKPS1 : 1;
+ unsigned TMR2ON : 1;
+ unsigned T2OUTPS0 : 1;
+ unsigned T2OUTPS1 : 1;
+ unsigned T2OUTPS2 : 1;
+ unsigned T2OUTPS3 : 1;
+ unsigned : 1;
+ };
+} __T2CONbits_t;
+extern volatile __T2CONbits_t __at (0xFCA) T2CONbits;
+
+extern __sfr __at (0xFCB) PR2;
+
+extern __sfr __at (0xFCC) PADCFG1;
+typedef union {
+ struct {
+ unsigned PMPTTL : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PADCFG1bits_t;
+extern volatile __PADCFG1bits_t __at (0xFCC) PADCFG1bits;
+
+extern __sfr __at (0xFCC) TMR2;
+
+extern __sfr __at (0xFCD) ODCON3;
+typedef union {
+ struct {
+ unsigned SPI1OD : 1;
+ unsigned SPI2OD : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ODCON3bits_t;
+extern volatile __ODCON3bits_t __at (0xFCD) ODCON3bits;
+
+extern __sfr __at (0xFCD) T1CON;
+typedef union {
+ struct {
+ unsigned TMR1ON : 1;
+ unsigned TMR1CS : 1;
+ unsigned T1SYNC : 1;
+ unsigned T1OSCEN : 1;
+ unsigned T1CKPS0 : 1;
+ unsigned T1CKPS1 : 1;
+ unsigned T1RUN : 1;
+ unsigned RD16 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned T1INSYNC : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_T1SYNC : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __T1CONbits_t;
+extern volatile __T1CONbits_t __at (0xFCD) T1CONbits;
+
+extern __sfr __at (0xFCE) ODCON2;
+typedef union {
+ struct {
+ unsigned USART1OD : 1;
+ unsigned USART2OD : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned U1OD : 1;
+ unsigned U2OD : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ODCON2bits_t;
+extern volatile __ODCON2bits_t __at (0xFCE) ODCON2bits;
+
+extern __sfr __at (0xFCE) TMR1L;
+
+extern __sfr __at (0xFCF) ODCON1;
+typedef union {
+ struct {
+ unsigned ECCP1OD : 1;
+ unsigned ECCP2OD : 1;
+ unsigned ECCP3OD : 1;
+ unsigned CCP4OD : 1;
+ unsigned CCP5OD : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ODCON1bits_t;
+extern volatile __ODCON1bits_t __at (0xFCF) ODCON1bits;
+
+extern __sfr __at (0xFCF) TMR1H;
+
+extern __sfr __at (0xFD0) RCON;
+typedef union {
+ struct {
+ unsigned NOT_BOR : 1;
+ unsigned NOT_POR : 1;
+ unsigned NOT_PD : 1;
+ unsigned NOT_TO : 1;
+ unsigned NOT_RI : 1;
+ unsigned NOT_CM : 1;
+ unsigned : 1;
+ unsigned IPEN : 1;
+ };
+ struct {
+ unsigned BOR : 1;
+ unsigned POR : 1;
+ unsigned PD : 1;
+ unsigned TO : 1;
+ unsigned RI : 1;
+ unsigned CM : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __RCONbits_t;
+extern volatile __RCONbits_t __at (0xFD0) RCONbits;
+
+extern __sfr __at (0xFD1) CM2CON;
+typedef union {
+ struct {
+ unsigned C1CH0 : 1;
+ unsigned C1CH1 : 1;
+ unsigned CREF : 1;
+ unsigned EVPOL0 : 1;
+ unsigned EVPOL1 : 1;
+ unsigned CPOL : 1;
+ unsigned COE : 1;
+ unsigned CON : 1;
+ };
+ struct {
+ unsigned CCH0 : 1;
+ unsigned CCH1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CM2CONbits_t;
+extern volatile __CM2CONbits_t __at (0xFD1) CM2CONbits;
+
+extern __sfr __at (0xFD1) CM2CON1;
+typedef union {
+ struct {
+ unsigned C1CH0 : 1;
+ unsigned C1CH1 : 1;
+ unsigned CREF : 1;
+ unsigned EVPOL0 : 1;
+ unsigned EVPOL1 : 1;
+ unsigned CPOL : 1;
+ unsigned COE : 1;
+ unsigned CON : 1;
+ };
+ struct {
+ unsigned CCH0 : 1;
+ unsigned CCH1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CM2CON1bits_t;
+extern volatile __CM2CON1bits_t __at (0xFD1) CM2CON1bits;
+
+extern __sfr __at (0xFD2) CM1CON;
+typedef union {
+ struct {
+ unsigned C1CH0 : 1;
+ unsigned C1CH1 : 1;
+ unsigned CREF : 1;
+ unsigned EVPOL0 : 1;
+ unsigned EVPOL1 : 1;
+ unsigned CPOL : 1;
+ unsigned COE : 1;
+ unsigned CON : 1;
+ };
+ struct {
+ unsigned CCH0 : 1;
+ unsigned CCH1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CM1CONbits_t;
+extern volatile __CM1CONbits_t __at (0xFD2) CM1CONbits;
+
+extern __sfr __at (0xFD2) CM1CON1;
+typedef union {
+ struct {
+ unsigned C1CH0 : 1;
+ unsigned C1CH1 : 1;
+ unsigned CREF : 1;
+ unsigned EVPOL0 : 1;
+ unsigned EVPOL1 : 1;
+ unsigned CPOL : 1;
+ unsigned COE : 1;
+ unsigned CON : 1;
+ };
+ struct {
+ unsigned CCH0 : 1;
+ unsigned CCH1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CM1CON1bits_t;
+extern volatile __CM1CON1bits_t __at (0xFD2) CM1CON1bits;
+
+extern __sfr __at (0xFD3) OSCCON;
+typedef union {
+ struct {
+ unsigned SCS0 : 1;
+ unsigned SCS1 : 1;
+ unsigned IOFS : 1;
+ unsigned OSTS : 1;
+ unsigned IRCF0 : 1;
+ unsigned IRCF1 : 1;
+ unsigned IRCF2 : 1;
+ unsigned IDLEN : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned FLTS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __OSCCONbits_t;
+extern volatile __OSCCONbits_t __at (0xFD3) OSCCONbits;
+
+extern __sfr __at (0xFD3) REFOCON;
+typedef union {
+ struct {
+ unsigned RODIV0 : 1;
+ unsigned RODIV1 : 1;
+ unsigned RODIV2 : 1;
+ unsigned RODIV3 : 1;
+ unsigned ROSEL : 1;
+ unsigned ROSSLP : 1;
+ unsigned : 1;
+ unsigned ROON : 1;
+ };
+} __REFOCONbits_t;
+extern volatile __REFOCONbits_t __at (0xFD3) REFOCONbits;
+
+extern __sfr __at (0xFD5) T0CON;
+typedef union {
+ struct {
+ unsigned T0PS0 : 1;
+ unsigned T0PS1 : 1;
+ unsigned T0PS2 : 1;
+ unsigned PSA : 1;
+ unsigned T0SE : 1;
+ unsigned T0CS : 1;
+ unsigned T08BIT : 1;
+ unsigned TMR0ON : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned T0PS3 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __T0CONbits_t;
+extern volatile __T0CONbits_t __at (0xFD5) T0CONbits;
+
+extern __sfr __at (0xFD6) TMR0L;
+
+extern __sfr __at (0xFD7) TMR0H;
+
+extern __sfr __at (0xFD8) STATUS;
+typedef union {
+ struct {
+ unsigned C : 1;
+ unsigned DC : 1;
+ unsigned Z : 1;
+ unsigned OV : 1;
+ unsigned N : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __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;
+typedef union {
+ struct {
+ unsigned INT1F : 1;
+ unsigned INT2F : 1;
+ unsigned INT3F : 1;
+ unsigned INT1E : 1;
+ unsigned INT2E : 1;
+ unsigned INT3E : 1;
+ unsigned INT1P : 1;
+ unsigned INT2P : 1;
+ };
+ struct {
+ unsigned INT1IF : 1;
+ unsigned INT2IF : 1;
+ unsigned INT3IF : 1;
+ unsigned INT1IE : 1;
+ unsigned INT2IE : 1;
+ unsigned INT3IE : 1;
+ unsigned INT1IP : 1;
+ unsigned INT2IP : 1;
+ };
+} __INTCON3bits_t;
+extern volatile __INTCON3bits_t __at (0xFF0) INTCON3bits;
+
+extern __sfr __at (0xFF1) INTCON2;
+typedef union {
+ struct {
+ unsigned RBIP : 1;
+ unsigned INT3P : 1;
+ unsigned T0IP : 1;
+ unsigned INTEDG3 : 1;
+ unsigned INTEDG2 : 1;
+ unsigned INTEDG1 : 1;
+ unsigned INTEDG0 : 1;
+ unsigned NOT_RBPU : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned INT3IP : 1;
+ unsigned TMR0IP : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RBPU : 1;
+ };
+} __INTCON2bits_t;
+extern volatile __INTCON2bits_t __at (0xFF1) INTCON2bits;
+
+extern __sfr __at (0xFF2) INTCON;
+typedef union {
+ struct {
+ unsigned RBIF : 1;
+ unsigned INT0F : 1;
+ unsigned T0IF : 1;
+ unsigned RBIE : 1;
+ unsigned INT0E : 1;
+ unsigned T0IE : 1;
+ 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) PROD;
+
+extern __sfr __at (0xFF3) PRODL;
+
+extern __sfr __at (0xFF4) PRODH;
+
+extern __sfr __at (0xFF5) TABLAT;
+
+extern __sfr __at (0xFF6) TBLPTR;
+
+extern __sfr __at (0xFF6) TBLPTRL;
+
+extern __sfr __at (0xFF7) TBLPTRH;
+
+extern __sfr __at (0xFF8) TBLPTRU;
+
+extern __sfr __at (0xFF9) PC;
+
+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;
+ unsigned STKPTR1 : 1;
+ unsigned STKPTR2 : 1;
+ unsigned STKPTR3 : 1;
+ unsigned STKPTR4 : 1;
+ unsigned : 1;
+ unsigned STKUNF : 1;
+ unsigned STKOVF : 1;
+ };
+ struct {
+ unsigned SP0 : 1;
+ unsigned SP1 : 1;
+ unsigned SP2 : 1;
+ unsigned SP3 : 1;
+ unsigned SP4 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned STKFUL : 1;
+ };
+} __STKPTRbits_t;
+extern volatile __STKPTRbits_t __at (0xFFC) STKPTRbits;
+
+extern __sfr __at (0xFFD) TOS;
+
+extern __sfr __at (0xFFD) TOSL;
+
+extern __sfr __at (0xFFE) TOSH;
+
+extern __sfr __at (0xFFF) TOSU;
+
+
+#endif
+
--- /dev/null
+/*
+ * pic18f85j50.h - device specific declarations
+ */
+
+#ifndef __PIC18F85J50_H__
+#define __PIC18F85J50_H__ 1
+
+#include "pic18f87j50.h"
+
+#undef __CONFIG1L
+#undef __CONFIG1H
+#undef __CONFIG2L
+#undef __CONFIG2H
+#undef __CONFIG3L
+#undef __CONFIG3H
+
+// Configuration Bits
+#define __CONFIG1L 0x7FF8
+#define __CONFIG1H 0x7FF9
+#define __CONFIG2L 0x7FFA
+#define __CONFIG2H 0x7FFB
+#define __CONFIG3L 0x7FFC
+#define __CONFIG3H 0x7FFD
+
+#endif
+
--- /dev/null
+/*
+ * pic18f86j50.h - device specific declarations
+ */
+
+#ifndef __PIC18F86J50_H__
+#define __PIC18F86J50_H__ 1
+
+#include "pic18f87j50.h"
+
+#undef __CONFIG1L
+#undef __CONFIG1H
+#undef __CONFIG2L
+#undef __CONFIG2H
+#undef __CONFIG3L
+#undef __CONFIG3H
+
+// Configuration Bits
+#define __CONFIG1L 0xFFF8
+#define __CONFIG1H 0xFFF9
+#define __CONFIG2L 0xFFFA
+#define __CONFIG2H 0xFFFB
+#define __CONFIG3L 0xFFFC
+#define __CONFIG3H 0xFFFD
+
+#endif
+
--- /dev/null
+/*
+ * pic18f86j55.h - device specific declarations
+ */
+
+#ifndef __PIC18F86J55_H__
+#define __PIC18F86J55_H__ 1
+
+#include "pic18f87j50.h"
+
+#undef __CONFIG1L
+#undef __CONFIG1H
+#undef __CONFIG2L
+#undef __CONFIG2H
+#undef __CONFIG3L
+#undef __CONFIG3H
+
+// Configuration Bits
+#define __CONFIG1L 0x17FF8
+#define __CONFIG1H 0x17FF9
+#define __CONFIG2L 0x17FFA
+#define __CONFIG2H 0x17FFB
+#define __CONFIG3L 0x17FFC
+#define __CONFIG3H 0x17FFD
+
+#endif
+
--- /dev/null
+/*
+ * pic18f87j50.h - device specific declarations
+ *
+ * This file is part of the GNU PIC library for SDCC,
+ * originally devised by Vangelis Rokas <vrokas AT otenet.gr>
+ *
+ * It has been automatically generated by inc2h-pic16.pl,
+ * (c) 2007 by Raphael Neider <rneider AT web.de>
+ */
+
+#ifndef __PIC18F87J50_H__
+#define __PIC18F87J50_H__ 1
+
+
+
+// Configuration Bits
+#define __CONFIG1L 0x1FFF8
+#define __CONFIG1H 0x1FFF9
+#define __CONFIG2L 0x1FFFA
+#define __CONFIG2H 0x1FFFB
+#define __CONFIG3L 0x1FFFC
+#define __CONFIG3H 0x1FFFD
+#define _DEVID1 0x3FFFFE
+#define _DEVID2 0x3FFFFF
+
+extern __sfr __at (0xF40) PMSTAT;
+
+extern __sfr __at (0xF40) PMSTATL;
+typedef union {
+ struct {
+ unsigned OB0E : 1;
+ unsigned OB1E : 1;
+ unsigned OB2E : 1;
+ unsigned OB3E : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned OBUF : 1;
+ unsigned OBE : 1;
+ };
+} __PMSTATLbits_t;
+extern volatile __PMSTATLbits_t __at (0xF40) PMSTATLbits;
+
+extern __sfr __at (0xF41) PMSTATH;
+typedef union {
+ struct {
+ unsigned IB0F : 1;
+ unsigned IB1F : 1;
+ unsigned IB2F : 1;
+ unsigned IB3F : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned IBOV : 1;
+ unsigned IBF : 1;
+ };
+} __PMSTATHbits_t;
+extern volatile __PMSTATHbits_t __at (0xF41) PMSTATHbits;
+
+extern __sfr __at (0xF42) PMEL;
+typedef union {
+ struct {
+ unsigned PTEN0 : 1;
+ unsigned PTEN1 : 1;
+ unsigned PTEN2 : 1;
+ unsigned PTEN3 : 1;
+ unsigned PTEN4 : 1;
+ unsigned PTEN5 : 1;
+ unsigned PTEN6 : 1;
+ unsigned PTEN7 : 1;
+ };
+} __PMELbits_t;
+extern volatile __PMELbits_t __at (0xF42) PMELbits;
+
+extern __sfr __at (0xF42) PMEN;
+
+extern __sfr __at (0xF43) PMEH;
+typedef union {
+ struct {
+ unsigned PTEN8 : 1;
+ unsigned PTEN9 : 1;
+ unsigned PTEN10 : 1;
+ unsigned PTEN11 : 1;
+ unsigned PTEN12 : 1;
+ unsigned PTEN13 : 1;
+ unsigned PTEN14 : 1;
+ unsigned PTEN15 : 1;
+ };
+} __PMEHbits_t;
+extern volatile __PMEHbits_t __at (0xF43) PMEHbits;
+
+extern __sfr __at (0xF44) PMDIN2;
+
+extern __sfr __at (0xF44) PMDIN2L;
+
+extern __sfr __at (0xF45) PMDIN2H;
+
+extern __sfr __at (0xF46) PMDOUT2;
+
+extern __sfr __at (0xF46) PMDOUT2L;
+
+extern __sfr __at (0xF47) PMDOUT2H;
+
+extern __sfr __at (0xF48) PMMODE;
+
+extern __sfr __at (0xF48) PMMODEL;
+typedef union {
+ struct {
+ unsigned WAITE0 : 1;
+ unsigned WAITE1 : 1;
+ unsigned WAITM0 : 1;
+ unsigned WAITM1 : 1;
+ unsigned WAITM2 : 1;
+ unsigned WAITM3 : 1;
+ unsigned WAITB0 : 1;
+ unsigned WAITB1 : 1;
+ };
+} __PMMODELbits_t;
+extern volatile __PMMODELbits_t __at (0xF48) PMMODELbits;
+
+extern __sfr __at (0xF49) PMMODEH;
+typedef union {
+ struct {
+ unsigned MODE0 : 1;
+ unsigned MODE1 : 1;
+ unsigned MODE16 : 1;
+ unsigned INCM0 : 1;
+ unsigned INCM1 : 1;
+ unsigned IRQM0 : 1;
+ unsigned IRQM1 : 1;
+ unsigned BUSY : 1;
+ };
+} __PMMODEHbits_t;
+extern volatile __PMMODEHbits_t __at (0xF49) PMMODEHbits;
+
+extern __sfr __at (0xF4A) PMCON;
+
+extern __sfr __at (0xF4A) PMCONL;
+typedef union {
+ struct {
+ unsigned RDSP : 1;
+ unsigned WRSP : 1;
+ unsigned BEP : 1;
+ unsigned CS1P : 1;
+ unsigned CS2P : 1;
+ unsigned ALP : 1;
+ unsigned CSF0 : 1;
+ unsigned CSF1 : 1;
+ };
+} __PMCONLbits_t;
+extern volatile __PMCONLbits_t __at (0xF4A) PMCONLbits;
+
+extern __sfr __at (0xF4B) PMCONH;
+typedef union {
+ struct {
+ unsigned PTRDEN : 1;
+ unsigned PTWREN : 1;
+ unsigned PTBEEN : 1;
+ unsigned ADRMUX0 : 1;
+ unsigned ADRMUX1 : 1;
+ unsigned PSIDL : 1;
+ unsigned : 1;
+ unsigned PMPEN : 1;
+ };
+} __PMCONHbits_t;
+extern volatile __PMCONHbits_t __at (0xF4B) PMCONHbits;
+
+extern __sfr __at (0xF4C) UEP0;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP0bits_t;
+extern volatile __UEP0bits_t __at (0xF4C) UEP0bits;
+
+extern __sfr __at (0xF4D) UEP1;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP1bits_t;
+extern volatile __UEP1bits_t __at (0xF4D) UEP1bits;
+
+extern __sfr __at (0xF4E) UEP2;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP2bits_t;
+extern volatile __UEP2bits_t __at (0xF4E) UEP2bits;
+
+extern __sfr __at (0xF4F) UEP3;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP3bits_t;
+extern volatile __UEP3bits_t __at (0xF4F) UEP3bits;
+
+extern __sfr __at (0xF50) UEP4;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP4bits_t;
+extern volatile __UEP4bits_t __at (0xF50) UEP4bits;
+
+extern __sfr __at (0xF51) UEP5;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP5bits_t;
+extern volatile __UEP5bits_t __at (0xF51) UEP5bits;
+
+extern __sfr __at (0xF52) UEP6;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP6bits_t;
+extern volatile __UEP6bits_t __at (0xF52) UEP6bits;
+
+extern __sfr __at (0xF53) UEP7;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP7bits_t;
+extern volatile __UEP7bits_t __at (0xF53) UEP7bits;
+
+extern __sfr __at (0xF54) UEP8;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP8bits_t;
+extern volatile __UEP8bits_t __at (0xF54) UEP8bits;
+
+extern __sfr __at (0xF55) UEP9;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP9bits_t;
+extern volatile __UEP9bits_t __at (0xF55) UEP9bits;
+
+extern __sfr __at (0xF56) UEP10;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP10bits_t;
+extern volatile __UEP10bits_t __at (0xF56) UEP10bits;
+
+extern __sfr __at (0xF57) UEP11;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP11bits_t;
+extern volatile __UEP11bits_t __at (0xF57) UEP11bits;
+
+extern __sfr __at (0xF58) UEP12;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP12bits_t;
+extern volatile __UEP12bits_t __at (0xF58) UEP12bits;
+
+extern __sfr __at (0xF59) UEP13;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP13bits_t;
+extern volatile __UEP13bits_t __at (0xF59) UEP13bits;
+
+extern __sfr __at (0xF5A) UEP14;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP14bits_t;
+extern volatile __UEP14bits_t __at (0xF5A) UEP14bits;
+
+extern __sfr __at (0xF5B) UEP15;
+typedef union {
+ struct {
+ unsigned EPSTALL : 1;
+ unsigned EPINEN : 1;
+ unsigned EPOUTEN : 1;
+ unsigned EPCONDIS : 1;
+ unsigned EPHSHK : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UEP15bits_t;
+extern volatile __UEP15bits_t __at (0xF5B) UEP15bits;
+
+extern __sfr __at (0xF5C) UIE;
+typedef union {
+ struct {
+ unsigned URSTIE : 1;
+ unsigned UERRIE : 1;
+ unsigned ACTVIE : 1;
+ unsigned TRNIE : 1;
+ unsigned IDLEIE : 1;
+ unsigned STALLIE : 1;
+ unsigned SOFIE : 1;
+ unsigned : 1;
+ };
+} __UIEbits_t;
+extern volatile __UIEbits_t __at (0xF5C) UIEbits;
+
+extern __sfr __at (0xF5D) UEIE;
+typedef union {
+ struct {
+ unsigned PIDEE : 1;
+ unsigned CRC5EE : 1;
+ unsigned CRC16EE : 1;
+ unsigned DFN8EE : 1;
+ unsigned BTOEE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned BTSEE : 1;
+ };
+} __UEIEbits_t;
+extern volatile __UEIEbits_t __at (0xF5D) UEIEbits;
+
+extern __sfr __at (0xF5E) UADDR;
+typedef union {
+ struct {
+ unsigned ADDR0 : 1;
+ unsigned ADDR1 : 1;
+ unsigned ADDR2 : 1;
+ unsigned ADDR3 : 1;
+ unsigned ADDR4 : 1;
+ unsigned ADDR5 : 1;
+ unsigned ADDR6 : 1;
+ unsigned : 1;
+ };
+} __UADDRbits_t;
+extern volatile __UADDRbits_t __at (0xF5E) UADDRbits;
+
+extern __sfr __at (0xF5F) UCFG;
+typedef union {
+ struct {
+ unsigned PPB0 : 1;
+ unsigned PPB1 : 1;
+ unsigned FSEN : 1;
+ unsigned UTRDIS : 1;
+ unsigned UPUEN : 1;
+ unsigned : 1;
+ unsigned UOEMON : 1;
+ unsigned UTEYE : 1;
+ };
+} __UCFGbits_t;
+extern volatile __UCFGbits_t __at (0xF5F) UCFGbits;
+
+extern __sfr __at (0xF60) UFRM;
+
+extern __sfr __at (0xF60) UFRML;
+typedef union {
+ struct {
+ unsigned FRM0 : 1;
+ unsigned FRM1 : 1;
+ unsigned FRM2 : 1;
+ unsigned FRM3 : 1;
+ unsigned FRM4 : 1;
+ unsigned FRM5 : 1;
+ unsigned FRM6 : 1;
+ unsigned FRM7 : 1;
+ };
+} __UFRMLbits_t;
+extern volatile __UFRMLbits_t __at (0xF60) UFRMLbits;
+
+extern __sfr __at (0xF61) UFRMH;
+typedef union {
+ struct {
+ unsigned FRM8 : 1;
+ unsigned FRM9 : 1;
+ unsigned FRM10 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __UFRMHbits_t;
+extern volatile __UFRMHbits_t __at (0xF61) UFRMHbits;
+
+extern __sfr __at (0xF62) UIR;
+typedef union {
+ struct {
+ unsigned URSTIF : 1;
+ unsigned UERRIF : 1;
+ unsigned ACTVIF : 1;
+ unsigned TRNIF : 1;
+ unsigned IDLEIF : 1;
+ unsigned STALLIF : 1;
+ unsigned SOFIF : 1;
+ unsigned : 1;
+ };
+} __UIRbits_t;
+extern volatile __UIRbits_t __at (0xF62) UIRbits;
+
+extern __sfr __at (0xF63) UEIR;
+typedef union {
+ struct {
+ unsigned PIDEF : 1;
+ unsigned CRC5EF : 1;
+ unsigned CRC16EF : 1;
+ unsigned DFN8EF : 1;
+ unsigned BTOEF : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned BTSEF : 1;
+ };
+} __UEIRbits_t;
+extern volatile __UEIRbits_t __at (0xF63) UEIRbits;
+
+extern __sfr __at (0xF64) USTAT;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned PPBI : 1;
+ unsigned DIR : 1;
+ unsigned ENDP0 : 1;
+ unsigned ENDP1 : 1;
+ unsigned ENDP2 : 1;
+ unsigned ENDP3 : 1;
+ unsigned : 1;
+ };
+} __USTATbits_t;
+extern volatile __USTATbits_t __at (0xF64) USTATbits;
+
+extern __sfr __at (0xF65) UCON;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned SUSPND : 1;
+ unsigned RESUME : 1;
+ unsigned USBEN : 1;
+ unsigned PKTDIS : 1;
+ unsigned SE0 : 1;
+ unsigned PPBRST : 1;
+ unsigned : 1;
+ };
+} __UCONbits_t;
+extern volatile __UCONbits_t __at (0xF65) UCONbits;
+
+extern __sfr __at (0xF66) PMDIN1;
+
+extern __sfr __at (0xF66) PMDIN1L;
+
+extern __sfr __at (0xF67) PMDIN1H;
+
+extern __sfr __at (0xF68) PMADDR;
+
+extern __sfr __at (0xF68) PMADDRL;
+
+extern __sfr __at (0xF68) PMDOUT1;
+
+extern __sfr __at (0xF68) PMDOUT1L;
+
+extern __sfr __at (0xF69) PMADDRH;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CS1 : 1;
+ unsigned CS2 : 1;
+ };
+} __PMADDRHbits_t;
+extern volatile __PMADDRHbits_t __at (0xF69) PMADDRHbits;
+
+extern __sfr __at (0xF69) PMDOUT1H;
+
+extern __sfr __at (0xF6A) CMSTAT;
+typedef union {
+ struct {
+ unsigned COUT1 : 1;
+ unsigned COUT2 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CMSTATbits_t;
+extern volatile __CMSTATbits_t __at (0xF6A) CMSTATbits;
+
+extern __sfr __at (0xF6A) CMSTATUS;
+typedef union {
+ struct {
+ unsigned COUT1 : 1;
+ unsigned COUT2 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CMSTATUSbits_t;
+extern volatile __CMSTATUSbits_t __at (0xF6A) CMSTATUSbits;
+
+extern __sfr __at (0xF6B) SSP2CON2;
+typedef union {
+ struct {
+ unsigned SEN : 1;
+ unsigned RSEN : 1;
+ unsigned PEN : 1;
+ unsigned RCEN : 1;
+ unsigned ACKEN : 1;
+ unsigned ACKDT : 1;
+ unsigned ACKSTAT : 1;
+ unsigned GCEN : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned ADMSK1 : 1;
+ unsigned ADMSK2 : 1;
+ unsigned ADMSK3 : 1;
+ unsigned ADMSK4 : 1;
+ unsigned ADMSK5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __SSP2CON2bits_t;
+extern volatile __SSP2CON2bits_t __at (0xF6B) SSP2CON2bits;
+
+extern __sfr __at (0xF6C) SSP2CON1;
+typedef union {
+ struct {
+ unsigned SSPM0 : 1;
+ unsigned SSPM1 : 1;
+ unsigned SSPM2 : 1;
+ unsigned SSPM3 : 1;
+ unsigned CKP : 1;
+ unsigned SSPEN : 1;
+ unsigned SSPOV : 1;
+ unsigned WCOL : 1;
+ };
+} __SSP2CON1bits_t;
+extern volatile __SSP2CON1bits_t __at (0xF6C) SSP2CON1bits;
+
+extern __sfr __at (0xF6D) SSP2STAT;
+typedef union {
+ struct {
+ unsigned BF : 1;
+ unsigned UA : 1;
+ unsigned R_W : 1;
+ unsigned S : 1;
+ unsigned P : 1;
+ unsigned D_A : 1;
+ unsigned CKE : 1;
+ unsigned SMP : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned I2C_READ : 1;
+ unsigned I2C_START : 1;
+ unsigned I2C_STOP : 1;
+ unsigned I2C_DAT : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_W : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_A : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_WRITE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_ADDRESS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned READ_WRITE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned DATA_ADDRESS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned R : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned D : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __SSP2STATbits_t;
+extern volatile __SSP2STATbits_t __at (0xF6D) SSP2STATbits;
+
+extern __sfr __at (0xF6E) SSP2ADD;
+
+extern __sfr __at (0xF6E) SSP2MSK;
+typedef union {
+ struct {
+ unsigned MSK0 : 1;
+ unsigned MSK1 : 1;
+ unsigned MSK2 : 1;
+ unsigned MSK3 : 1;
+ unsigned MSK4 : 1;
+ unsigned MSK5 : 1;
+ unsigned MSK6 : 1;
+ unsigned MSK7 : 1;
+ };
+} __SSP2MSKbits_t;
+extern volatile __SSP2MSKbits_t __at (0xF6E) SSP2MSKbits;
+
+extern __sfr __at (0xF6F) SSP2BUF;
+
+extern __sfr __at (0xF70) CCP5CON;
+typedef union {
+ struct {
+ unsigned CCP5M0 : 1;
+ unsigned CCP5M1 : 1;
+ unsigned CCP5M2 : 1;
+ unsigned CCP5M3 : 1;
+ unsigned DCCP5Y : 1;
+ unsigned DCCP5X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned DC5B0 : 1;
+ unsigned DC5B1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CCP5CONbits_t;
+extern volatile __CCP5CONbits_t __at (0xF70) CCP5CONbits;
+
+extern __sfr __at (0xF71) CCPR5;
+
+extern __sfr __at (0xF71) CCPR5L;
+
+extern __sfr __at (0xF72) CCPR5H;
+
+extern __sfr __at (0xF73) CCP4CON;
+typedef union {
+ struct {
+ unsigned CCP4M0 : 1;
+ unsigned CCP4M1 : 1;
+ unsigned CCP4M2 : 1;
+ unsigned CCP4M3 : 1;
+ unsigned DCCP4Y : 1;
+ unsigned DCCP4X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned DC4B0 : 1;
+ unsigned DC4B1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CCP4CONbits_t;
+extern volatile __CCP4CONbits_t __at (0xF73) CCP4CONbits;
+
+extern __sfr __at (0xF74) CCPR4;
+
+extern __sfr __at (0xF74) CCPR4L;
+
+extern __sfr __at (0xF75) CCPR4H;
+
+extern __sfr __at (0xF76) T4CON;
+typedef union {
+ struct {
+ unsigned T4CKPS0 : 1;
+ unsigned T4CKPS1 : 1;
+ unsigned TMR4ON : 1;
+ unsigned T4OUTPS0 : 1;
+ unsigned T4OUTPS1 : 1;
+ unsigned T4OUTPS2 : 1;
+ unsigned T4OUTPS3 : 1;
+ unsigned : 1;
+ };
+} __T4CONbits_t;
+extern volatile __T4CONbits_t __at (0xF76) T4CONbits;
+
+extern __sfr __at (0xF77) CVRCON;
+typedef union {
+ struct {
+ unsigned CVR0 : 1;
+ unsigned CVR1 : 1;
+ unsigned CVR2 : 1;
+ unsigned CVR3 : 1;
+ unsigned CVRSS : 1;
+ unsigned CVRR : 1;
+ unsigned CVROE : 1;
+ unsigned CVREN : 1;
+ };
+} __CVRCONbits_t;
+extern volatile __CVRCONbits_t __at (0xF77) CVRCONbits;
+
+extern __sfr __at (0xF77) PR4;
+
+extern __sfr __at (0xF78) TMR4;
+
+extern __sfr __at (0xF79) T3CON;
+typedef union {
+ struct {
+ unsigned TMR3ON : 1;
+ unsigned TMR3CS : 1;
+ unsigned T3SYNC : 1;
+ unsigned T3CCP1 : 1;
+ unsigned T3CKPS0 : 1;
+ unsigned T3CKPS1 : 1;
+ unsigned T3CCP2 : 1;
+ unsigned RD16 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned T3INSYNC : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_T3SYNC : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __T3CONbits_t;
+extern volatile __T3CONbits_t __at (0xF79) T3CONbits;
+
+extern __sfr __at (0xF7A) TMR3L;
+
+extern __sfr __at (0xF7B) TMR3H;
+
+extern __sfr __at (0xF7C) BAUDCON2;
+typedef union {
+ struct {
+ unsigned ABDEN : 1;
+ unsigned WUE : 1;
+ unsigned : 1;
+ unsigned BRG16 : 1;
+ unsigned SCKP : 1;
+ unsigned DTRXP : 1;
+ unsigned RCMT : 1;
+ unsigned ABDOVF : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned TXCKP : 1;
+ unsigned RXDTP : 1;
+ unsigned RCIDL : 1;
+ unsigned : 1;
+ };
+} __BAUDCON2bits_t;
+extern volatile __BAUDCON2bits_t __at (0xF7C) BAUDCON2bits;
+
+extern __sfr __at (0xF7D) SPBRGH2;
+
+extern __sfr __at (0xF7E) BAUDCON;
+typedef union {
+ struct {
+ unsigned ABDEN : 1;
+ unsigned WUE : 1;
+ unsigned : 1;
+ unsigned BRG16 : 1;
+ unsigned SCKP : 1;
+ unsigned DTRXP : 1;
+ unsigned RCMT : 1;
+ unsigned ABDOVF : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned TXCKP : 1;
+ unsigned RXDTP : 1;
+ unsigned RCIDL : 1;
+ unsigned : 1;
+ };
+} __BAUDCONbits_t;
+extern volatile __BAUDCONbits_t __at (0xF7E) BAUDCONbits;
+
+extern __sfr __at (0xF7E) BAUDCON1;
+typedef union {
+ struct {
+ unsigned ABDEN : 1;
+ unsigned WUE : 1;
+ unsigned : 1;
+ unsigned BRG16 : 1;
+ unsigned SCKP : 1;
+ unsigned DTRXP : 1;
+ unsigned RCMT : 1;
+ unsigned ABDOVF : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned TXCKP : 1;
+ unsigned RXDTP : 1;
+ unsigned RCIDL : 1;
+ unsigned : 1;
+ };
+} __BAUDCON1bits_t;
+extern volatile __BAUDCON1bits_t __at (0xF7E) BAUDCON1bits;
+
+extern __sfr __at (0xF7F) SPBRGH;
+
+extern __sfr __at (0xF7F) SPBRGH1;
+
+extern __sfr __at (0xF80) PORTA;
+typedef union {
+ struct {
+ unsigned RA0 : 1;
+ unsigned RA1 : 1;
+ unsigned RA2 : 1;
+ unsigned RA3 : 1;
+ unsigned RA4 : 1;
+ unsigned RA5 : 1;
+ unsigned RA6 : 1;
+ unsigned RA7 : 1;
+ };
+ struct {
+ unsigned AN0 : 1;
+ unsigned AN1 : 1;
+ unsigned AN2 : 1;
+ unsigned AN3 : 1;
+ unsigned T0CKI : 1;
+ unsigned AN4 : 1;
+ unsigned OSC2 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned VREFM : 1;
+ unsigned VREFP : 1;
+ unsigned PMD5_PORTA : 1;
+ unsigned C2INA : 1;
+ unsigned CLKO : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned PMD4_PORTA : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PORTAbits_t;
+extern volatile __PORTAbits_t __at (0xF80) PORTAbits;
+
+extern __sfr __at (0xF81) PORTB;
+typedef union {
+ struct {
+ unsigned RB0 : 1;
+ unsigned RB1 : 1;
+ unsigned RB2 : 1;
+ unsigned RB3 : 1;
+ unsigned RB4 : 1;
+ unsigned RB5 : 1;
+ unsigned RB6 : 1;
+ unsigned RB7 : 1;
+ };
+ struct {
+ unsigned INT0 : 1;
+ unsigned INT1 : 1;
+ unsigned INT2 : 1;
+ unsigned INT3 : 1;
+ unsigned KBI0 : 1;
+ unsigned KBI1 : 1;
+ unsigned KBI2 : 1;
+ unsigned KBI3 : 1;
+ };
+ struct {
+ unsigned FLT0 : 1;
+ unsigned PMA4 : 1;
+ unsigned PMA3 : 1;
+ unsigned PMA2 : 1;
+ unsigned PMA1 : 1;
+ unsigned PMA0 : 1;
+ unsigned PGC : 1;
+ unsigned PGD : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP2_PORTB : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PORTBbits_t;
+extern volatile __PORTBbits_t __at (0xF81) PORTBbits;
+
+extern __sfr __at (0xF82) PORTC;
+typedef union {
+ struct {
+ unsigned RC0 : 1;
+ unsigned RC1 : 1;
+ unsigned RC2 : 1;
+ unsigned RC3 : 1;
+ unsigned RC4 : 1;
+ unsigned RC5 : 1;
+ unsigned RC6 : 1;
+ unsigned RC7 : 1;
+ };
+ struct {
+ unsigned T1OSO : 1;
+ unsigned T1OSI : 1;
+ unsigned CCP1 : 1;
+ unsigned SCK : 1;
+ unsigned SDI : 1;
+ unsigned SDO : 1;
+ unsigned TX : 1;
+ unsigned RX : 1;
+ };
+ struct {
+ unsigned T13CKI : 1;
+ unsigned CCP2_PORTC : 1;
+ unsigned : 1;
+ unsigned SCL : 1;
+ unsigned SDA : 1;
+ unsigned C2OUT : 1;
+ unsigned CK : 1;
+ unsigned DT : 1;
+ };
+} __PORTCbits_t;
+extern volatile __PORTCbits_t __at (0xF82) PORTCbits;
+
+extern __sfr __at (0xF83) PORTD;
+typedef union {
+ struct {
+ unsigned RD0 : 1;
+ unsigned RD1 : 1;
+ unsigned RD2 : 1;
+ unsigned RD3 : 1;
+ unsigned RD4 : 1;
+ unsigned RD5 : 1;
+ unsigned RD6 : 1;
+ unsigned RD7 : 1;
+ };
+ struct {
+ unsigned PMD0_PORTD : 1;
+ unsigned PMD1_PORTD : 1;
+ unsigned PMD2_PORTD : 1;
+ unsigned PMD3_PORTD : 1;
+ unsigned PMD4_PORTD : 1;
+ unsigned PMD5_PORTD : 1;
+ unsigned PMD6_PORTD : 1;
+ unsigned PMD7_PORTD : 1;
+ };
+ struct {
+ unsigned AD0 : 1;
+ unsigned AD1 : 1;
+ unsigned AD2 : 1;
+ unsigned AD3 : 1;
+ unsigned AD4 : 1;
+ unsigned AD5 : 1;
+ unsigned AD6 : 1;
+ unsigned AD7 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned SDO2 : 1;
+ unsigned SDA2 : 1;
+ unsigned SCL2 : 1;
+ unsigned SS2 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned SDI2 : 1;
+ unsigned SCK2 : 1;
+ unsigned : 1;
+ };
+} __PORTDbits_t;
+extern volatile __PORTDbits_t __at (0xF83) PORTDbits;
+
+extern __sfr __at (0xF84) PORTE;
+typedef union {
+ struct {
+ unsigned RE0 : 1;
+ unsigned RE1 : 1;
+ unsigned RE2 : 1;
+ unsigned RE3 : 1;
+ unsigned RE4 : 1;
+ unsigned RE5 : 1;
+ unsigned RE6 : 1;
+ unsigned RE7 : 1;
+ };
+ struct {
+ unsigned AD8 : 1;
+ unsigned AD9 : 1;
+ unsigned AD10 : 1;
+ unsigned AD11 : 1;
+ unsigned AD12 : 1;
+ unsigned AD13 : 1;
+ unsigned AD14 : 1;
+ unsigned AD15 : 1;
+ };
+ struct {
+ unsigned PMRD_PORTE : 1;
+ unsigned PMWR_PORTE : 1;
+ unsigned PMBE_PORTE : 1;
+ unsigned PMA13 : 1;
+ unsigned PMA12 : 1;
+ unsigned PMA11 : 1;
+ unsigned PMA10 : 1;
+ unsigned PMA9 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned REFO : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP2_PORTE : 1;
+ };
+} __PORTEbits_t;
+extern volatile __PORTEbits_t __at (0xF84) PORTEbits;
+
+extern __sfr __at (0xF85) PORTF;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RF2 : 1;
+ unsigned RF3 : 1;
+ unsigned RF4 : 1;
+ unsigned RF5 : 1;
+ unsigned RF6 : 1;
+ unsigned RF7 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned AN7 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned AN10 : 1;
+ unsigned AN11 : 1;
+ unsigned SS : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned C2INB : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CVREF : 1;
+ unsigned C1INA : 1;
+ unsigned C1OUT : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned PMA5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned C1INB : 1;
+ unsigned PMD1_PORTF : 1;
+ unsigned PMD0_PORTF : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned PMD2_PORTF : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PORTFbits_t;
+extern volatile __PORTFbits_t __at (0xF85) PORTFbits;
+
+extern __sfr __at (0xF86) PORTG;
+typedef union {
+ struct {
+ unsigned RG0 : 1;
+ unsigned RG1 : 1;
+ unsigned RG2 : 1;
+ unsigned RG3 : 1;
+ unsigned RG4 : 1;
+ unsigned RJPU : 1;
+ unsigned REPU : 1;
+ unsigned RDPU : 1;
+ };
+ struct {
+ unsigned CCP3 : 1;
+ unsigned TX2 : 1;
+ unsigned RX2 : 1;
+ unsigned CCP4 : 1;
+ unsigned CCP5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned PMA8 : 1;
+ unsigned CK2 : 1;
+ unsigned DT2 : 1;
+ unsigned PMCS1 : 1;
+ unsigned PMCS2 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned PMA7 : 1;
+ unsigned PMA6 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PORTGbits_t;
+extern volatile __PORTGbits_t __at (0xF86) PORTGbits;
+
+extern __sfr __at (0xF87) PORTH;
+typedef union {
+ struct {
+ unsigned RH0 : 1;
+ unsigned RH1 : 1;
+ unsigned RH2 : 1;
+ unsigned RH3 : 1;
+ unsigned RH4 : 1;
+ unsigned RH5 : 1;
+ unsigned RH6 : 1;
+ unsigned RH7 : 1;
+ };
+ struct {
+ unsigned A16 : 1;
+ unsigned A17 : 1;
+ unsigned A18 : 1;
+ unsigned A19 : 1;
+ unsigned AN12 : 1;
+ unsigned AN13 : 1;
+ unsigned AN14 : 1;
+ unsigned AN15 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned PMD7_PORTH : 1;
+ unsigned PMD6_PORTH : 1;
+ unsigned PMD3_PORTH : 1;
+ unsigned PMBE_PORTH : 1;
+ unsigned PMRD_PORTH : 1;
+ unsigned PMWR_PORTH : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned C2INC : 1;
+ unsigned C2IND : 1;
+ unsigned C1INC : 1;
+ unsigned P1B : 1;
+ };
+} __PORTHbits_t;
+extern volatile __PORTHbits_t __at (0xF87) PORTHbits;
+
+extern __sfr __at (0xF88) PORTJ;
+typedef union {
+ struct {
+ unsigned RJ0 : 1;
+ unsigned RJ1 : 1;
+ unsigned RJ2 : 1;
+ unsigned RJ3 : 1;
+ unsigned RJ4 : 1;
+ unsigned RJ5 : 1;
+ unsigned RJ6 : 1;
+ unsigned RJ7 : 1;
+ };
+ struct {
+ unsigned ALE : 1;
+ unsigned OE : 1;
+ unsigned WRL : 1;
+ unsigned WRH : 1;
+ unsigned BA0 : 1;
+ unsigned CE : 1;
+ unsigned LB : 1;
+ unsigned UB : 1;
+ };
+} __PORTJbits_t;
+extern volatile __PORTJbits_t __at (0xF88) PORTJbits;
+
+extern __sfr __at (0xF89) LATA;
+typedef union {
+ struct {
+ unsigned LATA0 : 1;
+ unsigned LATA1 : 1;
+ unsigned LATA2 : 1;
+ unsigned LATA3 : 1;
+ unsigned LATA4 : 1;
+ unsigned LATA5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __LATAbits_t;
+extern volatile __LATAbits_t __at (0xF89) LATAbits;
+
+extern __sfr __at (0xF8A) LATB;
+typedef union {
+ struct {
+ unsigned LATB0 : 1;
+ unsigned LATB1 : 1;
+ unsigned LATB2 : 1;
+ unsigned LATB3 : 1;
+ unsigned LATB4 : 1;
+ unsigned LATB5 : 1;
+ unsigned LATB6 : 1;
+ unsigned LATB7 : 1;
+ };
+} __LATBbits_t;
+extern volatile __LATBbits_t __at (0xF8A) LATBbits;
+
+extern __sfr __at (0xF8B) LATC;
+typedef union {
+ struct {
+ unsigned LATC0 : 1;
+ unsigned LATC1 : 1;
+ unsigned LATC2 : 1;
+ unsigned LATC3 : 1;
+ unsigned LATC4 : 1;
+ unsigned LATC5 : 1;
+ unsigned LATC6 : 1;
+ unsigned LATC7 : 1;
+ };
+} __LATCbits_t;
+extern volatile __LATCbits_t __at (0xF8B) LATCbits;
+
+extern __sfr __at (0xF8C) LATD;
+typedef union {
+ struct {
+ unsigned LATD0 : 1;
+ unsigned LATD1 : 1;
+ unsigned LATD2 : 1;
+ unsigned LATD3 : 1;
+ unsigned LATD4 : 1;
+ unsigned LATD5 : 1;
+ unsigned LATD6 : 1;
+ unsigned LATD7 : 1;
+ };
+} __LATDbits_t;
+extern volatile __LATDbits_t __at (0xF8C) LATDbits;
+
+extern __sfr __at (0xF8D) LATE;
+typedef union {
+ struct {
+ unsigned LATE0 : 1;
+ unsigned LATE1 : 1;
+ unsigned LATE2 : 1;
+ unsigned LATE3 : 1;
+ unsigned LATE4 : 1;
+ unsigned LATE5 : 1;
+ unsigned LATE6 : 1;
+ unsigned LATE7 : 1;
+ };
+} __LATEbits_t;
+extern volatile __LATEbits_t __at (0xF8D) LATEbits;
+
+extern __sfr __at (0xF8E) LATF;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned LATF2 : 1;
+ unsigned LATF3 : 1;
+ unsigned LATF4 : 1;
+ unsigned LATF5 : 1;
+ unsigned LATF6 : 1;
+ unsigned LATF7 : 1;
+ };
+} __LATFbits_t;
+extern volatile __LATFbits_t __at (0xF8E) LATFbits;
+
+extern __sfr __at (0xF8F) LATG;
+typedef union {
+ struct {
+ unsigned LATG0 : 1;
+ unsigned LATG1 : 1;
+ unsigned LATG2 : 1;
+ unsigned LATG3 : 1;
+ unsigned LATG4 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __LATGbits_t;
+extern volatile __LATGbits_t __at (0xF8F) LATGbits;
+
+extern __sfr __at (0xF90) LATH;
+typedef union {
+ struct {
+ unsigned LATH0 : 1;
+ unsigned LATH1 : 1;
+ unsigned LATH2 : 1;
+ unsigned LATH3 : 1;
+ unsigned LATH4 : 1;
+ unsigned LATH5 : 1;
+ unsigned LATH6 : 1;
+ unsigned LATH7 : 1;
+ };
+} __LATHbits_t;
+extern volatile __LATHbits_t __at (0xF90) LATHbits;
+
+extern __sfr __at (0xF91) LATJ;
+typedef union {
+ struct {
+ unsigned LATJ0 : 1;
+ unsigned LATJ1 : 1;
+ unsigned LATJ2 : 1;
+ unsigned LATJ3 : 1;
+ unsigned LATJ4 : 1;
+ unsigned LATJ5 : 1;
+ unsigned LATJ6 : 1;
+ unsigned LATJ7 : 1;
+ };
+} __LATJbits_t;
+extern volatile __LATJbits_t __at (0xF91) LATJbits;
+
+extern __sfr __at (0xF92) DDRA;
+typedef union {
+ struct {
+ unsigned RA0 : 1;
+ unsigned RA1 : 1;
+ unsigned RA2 : 1;
+ unsigned RA3 : 1;
+ unsigned RA4 : 1;
+ unsigned RA5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __DDRAbits_t;
+extern volatile __DDRAbits_t __at (0xF92) DDRAbits;
+
+extern __sfr __at (0xF92) TRISA;
+typedef union {
+ struct {
+ unsigned TRISA0 : 1;
+ unsigned TRISA1 : 1;
+ unsigned TRISA2 : 1;
+ unsigned TRISA3 : 1;
+ unsigned TRISA4 : 1;
+ unsigned TRISA5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __TRISAbits_t;
+extern volatile __TRISAbits_t __at (0xF92) TRISAbits;
+
+extern __sfr __at (0xF93) DDRB;
+typedef union {
+ struct {
+ unsigned RB0 : 1;
+ unsigned RB1 : 1;
+ unsigned RB2 : 1;
+ unsigned RB3 : 1;
+ unsigned RB4 : 1;
+ unsigned RB5 : 1;
+ unsigned RB6 : 1;
+ unsigned RB7 : 1;
+ };
+} __DDRBbits_t;
+extern volatile __DDRBbits_t __at (0xF93) DDRBbits;
+
+extern __sfr __at (0xF93) TRISB;
+typedef union {
+ struct {
+ unsigned TRISB0 : 1;
+ unsigned TRISB1 : 1;
+ unsigned TRISB2 : 1;
+ unsigned TRISB3 : 1;
+ unsigned TRISB4 : 1;
+ unsigned TRISB5 : 1;
+ unsigned TRISB6 : 1;
+ unsigned TRISB7 : 1;
+ };
+} __TRISBbits_t;
+extern volatile __TRISBbits_t __at (0xF93) TRISBbits;
+
+extern __sfr __at (0xF94) DDRC;
+typedef union {
+ struct {
+ unsigned RC0 : 1;
+ unsigned RC1 : 1;
+ unsigned RC2 : 1;
+ unsigned RC3 : 1;
+ unsigned RC4 : 1;
+ unsigned RC5 : 1;
+ unsigned RC6 : 1;
+ unsigned RC7 : 1;
+ };
+} __DDRCbits_t;
+extern volatile __DDRCbits_t __at (0xF94) DDRCbits;
+
+extern __sfr __at (0xF94) TRISC;
+typedef union {
+ struct {
+ unsigned TRISC0 : 1;
+ unsigned TRISC1 : 1;
+ unsigned TRISC2 : 1;
+ unsigned TRISC3 : 1;
+ unsigned TRISC4 : 1;
+ unsigned TRISC5 : 1;
+ unsigned TRISC6 : 1;
+ unsigned TRISC7 : 1;
+ };
+} __TRISCbits_t;
+extern volatile __TRISCbits_t __at (0xF94) TRISCbits;
+
+extern __sfr __at (0xF95) DDRD;
+typedef union {
+ struct {
+ unsigned RD0 : 1;
+ unsigned RD1 : 1;
+ unsigned RD2 : 1;
+ unsigned RD3 : 1;
+ unsigned RD4 : 1;
+ unsigned RD5 : 1;
+ unsigned RD6 : 1;
+ unsigned RD7 : 1;
+ };
+} __DDRDbits_t;
+extern volatile __DDRDbits_t __at (0xF95) DDRDbits;
+
+extern __sfr __at (0xF95) TRISD;
+typedef union {
+ struct {
+ unsigned TRISD0 : 1;
+ unsigned TRISD1 : 1;
+ unsigned TRISD2 : 1;
+ unsigned TRISD3 : 1;
+ unsigned TRISD4 : 1;
+ unsigned TRISD5 : 1;
+ unsigned TRISD6 : 1;
+ unsigned TRISD7 : 1;
+ };
+} __TRISDbits_t;
+extern volatile __TRISDbits_t __at (0xF95) TRISDbits;
+
+extern __sfr __at (0xF96) DDRE;
+typedef union {
+ struct {
+ unsigned RE0 : 1;
+ unsigned RE1 : 1;
+ unsigned RE2 : 1;
+ unsigned RE3 : 1;
+ unsigned RE4 : 1;
+ unsigned RE5 : 1;
+ unsigned RE6 : 1;
+ unsigned RE7 : 1;
+ };
+} __DDREbits_t;
+extern volatile __DDREbits_t __at (0xF96) DDREbits;
+
+extern __sfr __at (0xF96) TRISE;
+typedef union {
+ struct {
+ unsigned TRISE0 : 1;
+ unsigned TRISE1 : 1;
+ unsigned TRISE2 : 1;
+ unsigned TRISE3 : 1;
+ unsigned TRISE4 : 1;
+ unsigned TRISE5 : 1;
+ unsigned TRISE6 : 1;
+ unsigned TRISE7 : 1;
+ };
+} __TRISEbits_t;
+extern volatile __TRISEbits_t __at (0xF96) TRISEbits;
+
+extern __sfr __at (0xF97) DDRF;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned RF1 : 1;
+ unsigned RF2 : 1;
+ unsigned RF3 : 1;
+ unsigned RF4 : 1;
+ unsigned RF5 : 1;
+ unsigned RF6 : 1;
+ unsigned RF7 : 1;
+ };
+} __DDRFbits_t;
+extern volatile __DDRFbits_t __at (0xF97) DDRFbits;
+
+extern __sfr __at (0xF97) TRISF;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned TRISF2 : 1;
+ unsigned TRISF3 : 1;
+ unsigned TRISF4 : 1;
+ unsigned TRISF5 : 1;
+ unsigned TRISF6 : 1;
+ unsigned TRISF7 : 1;
+ };
+} __TRISFbits_t;
+extern volatile __TRISFbits_t __at (0xF97) TRISFbits;
+
+extern __sfr __at (0xF98) DDRG;
+typedef union {
+ struct {
+ unsigned RG0 : 1;
+ unsigned RG1 : 1;
+ unsigned RG2 : 1;
+ unsigned RG3 : 1;
+ unsigned RG4 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __DDRGbits_t;
+extern volatile __DDRGbits_t __at (0xF98) DDRGbits;
+
+extern __sfr __at (0xF98) TRISG;
+typedef union {
+ struct {
+ unsigned TRISG0 : 1;
+ unsigned TRISG1 : 1;
+ unsigned TRISG2 : 1;
+ unsigned TRISG3 : 1;
+ unsigned TRISG4 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __TRISGbits_t;
+extern volatile __TRISGbits_t __at (0xF98) TRISGbits;
+
+extern __sfr __at (0xF99) DDRH;
+typedef union {
+ struct {
+ unsigned RH0 : 1;
+ unsigned RH1 : 1;
+ unsigned RH2 : 1;
+ unsigned RH3 : 1;
+ unsigned RH4 : 1;
+ unsigned RH5 : 1;
+ unsigned RH6 : 1;
+ unsigned RH7 : 1;
+ };
+} __DDRHbits_t;
+extern volatile __DDRHbits_t __at (0xF99) DDRHbits;
+
+extern __sfr __at (0xF99) TRISH;
+typedef union {
+ struct {
+ unsigned TRISH0 : 1;
+ unsigned TRISH1 : 1;
+ unsigned TRISH2 : 1;
+ unsigned TRISH3 : 1;
+ unsigned TRISH4 : 1;
+ unsigned TRISH5 : 1;
+ unsigned TRISH6 : 1;
+ unsigned TRISH7 : 1;
+ };
+} __TRISHbits_t;
+extern volatile __TRISHbits_t __at (0xF99) TRISHbits;
+
+extern __sfr __at (0xF9A) DDRJ;
+typedef union {
+ struct {
+ unsigned RJ0 : 1;
+ unsigned RJ1 : 1;
+ unsigned RJ2 : 1;
+ unsigned RJ3 : 1;
+ unsigned RJ4 : 1;
+ unsigned RJ5 : 1;
+ unsigned RJ6 : 1;
+ unsigned RJ7 : 1;
+ };
+} __DDRJbits_t;
+extern volatile __DDRJbits_t __at (0xF9A) DDRJbits;
+
+extern __sfr __at (0xF9A) TRISJ;
+typedef union {
+ struct {
+ unsigned TRISJ0 : 1;
+ unsigned TRISJ1 : 1;
+ unsigned TRISJ2 : 1;
+ unsigned TRISJ3 : 1;
+ unsigned TRISJ4 : 1;
+ unsigned TRISJ5 : 1;
+ unsigned TRISJ6 : 1;
+ unsigned TRISJ7 : 1;
+ };
+} __TRISJbits_t;
+extern volatile __TRISJbits_t __at (0xF9A) TRISJbits;
+
+extern __sfr __at (0xF9B) OSCTUNE;
+typedef union {
+ struct {
+ unsigned TUN0 : 1;
+ unsigned TUN1 : 1;
+ unsigned TUN2 : 1;
+ unsigned TUN3 : 1;
+ unsigned TUN4 : 1;
+ unsigned TUN5 : 1;
+ unsigned PLLEN : 1;
+ unsigned INTSRC : 1;
+ };
+} __OSCTUNEbits_t;
+extern volatile __OSCTUNEbits_t __at (0xF9B) OSCTUNEbits;
+
+extern __sfr __at (0xF9C) RCSTA2;
+typedef union {
+ struct {
+ unsigned RCD8 : 1;
+ unsigned OERR : 1;
+ unsigned FERR : 1;
+ unsigned ADDEN : 1;
+ unsigned CREN : 1;
+ unsigned SREN : 1;
+ unsigned RC9 : 1;
+ unsigned SPEN : 1;
+ };
+ struct {
+ unsigned RX9D : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_RC8 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RC8_9 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RX9 : 1;
+ unsigned : 1;
+ };
+} __RCSTA2bits_t;
+extern volatile __RCSTA2bits_t __at (0xF9C) RCSTA2bits;
+
+extern __sfr __at (0xF9D) PIE1;
+typedef union {
+ struct {
+ unsigned TMR1IE : 1;
+ unsigned TMR2IE : 1;
+ unsigned CCP1IE : 1;
+ unsigned SSPIE : 1;
+ unsigned TXIE : 1;
+ unsigned RCIE : 1;
+ unsigned ADIE : 1;
+ unsigned PMPIE : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned SSP1IE : 1;
+ unsigned TX1IE : 1;
+ unsigned RC1IE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PIE1bits_t;
+extern volatile __PIE1bits_t __at (0xF9D) PIE1bits;
+
+extern __sfr __at (0xF9E) PIR1;
+typedef union {
+ struct {
+ unsigned TMR1IF : 1;
+ unsigned TMR2IF : 1;
+ unsigned CCP1IF : 1;
+ unsigned SSPIF : 1;
+ unsigned TXIF : 1;
+ unsigned RCIF : 1;
+ unsigned ADIF : 1;
+ unsigned PMPIF : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned SSP1IF : 1;
+ unsigned TX1IF : 1;
+ unsigned RC1IF : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PIR1bits_t;
+extern volatile __PIR1bits_t __at (0xF9E) PIR1bits;
+
+extern __sfr __at (0xF9F) IPR1;
+typedef union {
+ struct {
+ unsigned TMR1IP : 1;
+ unsigned TMR2IP : 1;
+ unsigned CCP1IP : 1;
+ unsigned SSPIP : 1;
+ unsigned TXIP : 1;
+ unsigned RCIP : 1;
+ unsigned ADIP : 1;
+ unsigned PMPIP : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned SSP1IP : 1;
+ unsigned TX1IP : 1;
+ unsigned RC1IP : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __IPR1bits_t;
+extern volatile __IPR1bits_t __at (0xF9F) IPR1bits;
+
+extern __sfr __at (0xFA0) PIE2;
+typedef union {
+ struct {
+ unsigned CCP2IE : 1;
+ unsigned TMR3IE : 1;
+ unsigned LVDIE : 1;
+ unsigned BCLIE : 1;
+ unsigned USBIE : 1;
+ unsigned CM1IE : 1;
+ unsigned CM2IE : 1;
+ unsigned OSCFIE : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned BCL1IE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PIE2bits_t;
+extern volatile __PIE2bits_t __at (0xFA0) PIE2bits;
+
+extern __sfr __at (0xFA1) PIR2;
+typedef union {
+ struct {
+ unsigned CCP2IF : 1;
+ unsigned TMR3IF : 1;
+ unsigned LVDIF : 1;
+ unsigned BCLIF : 1;
+ unsigned USBIF : 1;
+ unsigned CM1IF : 1;
+ unsigned CM2IF : 1;
+ unsigned OSCFIF : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned BCL1IF : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PIR2bits_t;
+extern volatile __PIR2bits_t __at (0xFA1) PIR2bits;
+
+extern __sfr __at (0xFA2) IPR2;
+typedef union {
+ struct {
+ unsigned CCP2IP : 1;
+ unsigned TMR3IP : 1;
+ unsigned LVDIP : 1;
+ unsigned BCLIP : 1;
+ unsigned USBIP : 1;
+ unsigned CM1IP : 1;
+ unsigned CM2IP : 1;
+ unsigned OSCFIP : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned BCL1IP : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __IPR2bits_t;
+extern volatile __IPR2bits_t __at (0xFA2) IPR2bits;
+
+extern __sfr __at (0xFA3) PIE3;
+typedef union {
+ struct {
+ unsigned CCP3IE : 1;
+ unsigned CCP4IE : 1;
+ unsigned CCP5IE : 1;
+ unsigned TMR4IE : 1;
+ unsigned TX2IE : 1;
+ unsigned RC2IE : 1;
+ unsigned BCL2IE : 1;
+ unsigned SSP2IE : 1;
+ };
+} __PIE3bits_t;
+extern volatile __PIE3bits_t __at (0xFA3) PIE3bits;
+
+extern __sfr __at (0xFA4) PIR3;
+typedef union {
+ struct {
+ unsigned CCP3IF : 1;
+ unsigned CCP4IF : 1;
+ unsigned CCP5IF : 1;
+ unsigned TMR4IF : 1;
+ unsigned TX2IF : 1;
+ unsigned RC2IF : 1;
+ unsigned BCL2IF : 1;
+ unsigned SSP2IF : 1;
+ };
+} __PIR3bits_t;
+extern volatile __PIR3bits_t __at (0xFA4) PIR3bits;
+
+extern __sfr __at (0xFA5) IPR3;
+typedef union {
+ struct {
+ unsigned CCP3IP : 1;
+ unsigned CCP4IP : 1;
+ unsigned CCP5IP : 1;
+ unsigned TMR4IP : 1;
+ unsigned TX2IP : 1;
+ unsigned RC2IP : 1;
+ unsigned BCL2IP : 1;
+ unsigned SSP2IP : 1;
+ };
+} __IPR3bits_t;
+extern volatile __IPR3bits_t __at (0xFA5) IPR3bits;
+
+extern __sfr __at (0xFA6) EECON1;
+typedef union {
+ struct {
+ unsigned : 1;
+ unsigned WR : 1;
+ unsigned WREN : 1;
+ unsigned WRERR : 1;
+ unsigned FREE : 1;
+ unsigned WPROG : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __EECON1bits_t;
+extern volatile __EECON1bits_t __at (0xFA6) EECON1bits;
+
+extern __sfr __at (0xFA7) EECON2;
+
+extern __sfr __at (0xFA8) TXSTA2;
+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;
+ };
+ struct {
+ unsigned TXD8 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned TX8_9 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_TX8 : 1;
+ unsigned : 1;
+ };
+} __TXSTA2bits_t;
+extern volatile __TXSTA2bits_t __at (0xFA8) TXSTA2bits;
+
+extern __sfr __at (0xFA9) TXREG2;
+
+extern __sfr __at (0xFAA) RCREG2;
+
+extern __sfr __at (0xFAB) SPBRG2;
+
+extern __sfr __at (0xFAC) RCSTA;
+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;
+ };
+ struct {
+ unsigned RCD8 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RC9 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_RC8 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RC8_9 : 1;
+ unsigned : 1;
+ };
+} __RCSTAbits_t;
+extern volatile __RCSTAbits_t __at (0xFAC) RCSTAbits;
+
+extern __sfr __at (0xFAC) RCSTA1;
+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;
+ };
+ struct {
+ unsigned RCD8 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RC9 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_RC8 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RC8_9 : 1;
+ unsigned : 1;
+ };
+} __RCSTA1bits_t;
+extern volatile __RCSTA1bits_t __at (0xFAC) RCSTA1bits;
+
+extern __sfr __at (0xFAD) TXSTA;
+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;
+ };
+ struct {
+ unsigned TXD8 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned TX8_9 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_TX8 : 1;
+ unsigned : 1;
+ };
+} __TXSTAbits_t;
+extern volatile __TXSTAbits_t __at (0xFAD) TXSTAbits;
+
+extern __sfr __at (0xFAD) TXSTA1;
+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;
+ };
+ struct {
+ unsigned TXD8 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned TX8_9 : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_TX8 : 1;
+ unsigned : 1;
+ };
+} __TXSTA1bits_t;
+extern volatile __TXSTA1bits_t __at (0xFAD) TXSTA1bits;
+
+extern __sfr __at (0xFAE) TXREG;
+
+extern __sfr __at (0xFAE) TXREG1;
+
+extern __sfr __at (0xFAF) RCREG;
+
+extern __sfr __at (0xFAF) RCREG1;
+
+extern __sfr __at (0xFB0) SPBRG;
+
+extern __sfr __at (0xFB0) SPBRG1;
+
+extern __sfr __at (0xFB1) CCP3CON;
+typedef union {
+ struct {
+ unsigned CCP3M0 : 1;
+ unsigned CCP3M1 : 1;
+ unsigned CCP3M2 : 1;
+ unsigned CCP3M3 : 1;
+ unsigned DC3B0 : 1;
+ unsigned DC3B1 : 1;
+ unsigned P3M0 : 1;
+ unsigned P3M1 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP3Y : 1;
+ unsigned CCP3X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CCP3CONbits_t;
+extern volatile __CCP3CONbits_t __at (0xFB1) CCP3CONbits;
+
+extern __sfr __at (0xFB1) ECCP3CON;
+typedef union {
+ struct {
+ unsigned CCP3M0 : 1;
+ unsigned CCP3M1 : 1;
+ unsigned CCP3M2 : 1;
+ unsigned CCP3M3 : 1;
+ unsigned DC3B0 : 1;
+ unsigned DC3B1 : 1;
+ unsigned P3M0 : 1;
+ unsigned P3M1 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP3Y : 1;
+ unsigned CCP3X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ECCP3CONbits_t;
+extern volatile __ECCP3CONbits_t __at (0xFB1) ECCP3CONbits;
+
+extern __sfr __at (0xFB2) CCPR3;
+
+extern __sfr __at (0xFB2) CCPR3L;
+
+extern __sfr __at (0xFB3) CCPR3H;
+
+extern __sfr __at (0xFB4) ECCP3DEL;
+typedef union {
+ struct {
+ unsigned PDC0 : 1;
+ unsigned PDC1 : 1;
+ unsigned PDC2 : 1;
+ unsigned PDC3 : 1;
+ unsigned PDC4 : 1;
+ unsigned PDC5 : 1;
+ unsigned PDC6 : 1;
+ unsigned PRSEN : 1;
+ };
+ struct {
+ unsigned P3DC0 : 1;
+ unsigned P3DC1 : 1;
+ unsigned P3DC2 : 1;
+ unsigned P3DC3 : 1;
+ unsigned P3DC4 : 1;
+ unsigned P3DC5 : 1;
+ unsigned P3DC6 : 1;
+ unsigned P3RSEN : 1;
+ };
+} __ECCP3DELbits_t;
+extern volatile __ECCP3DELbits_t __at (0xFB4) ECCP3DELbits;
+
+extern __sfr __at (0xFB5) ECCP3AS;
+typedef union {
+ struct {
+ unsigned PSSBD0 : 1;
+ unsigned PSSBD1 : 1;
+ unsigned PSSAC0 : 1;
+ unsigned PSSAC1 : 1;
+ unsigned ECCPAS0 : 1;
+ unsigned ECCPAS1 : 1;
+ unsigned ECCPAS2 : 1;
+ unsigned ECCPASE : 1;
+ };
+ struct {
+ unsigned PSS3BD0 : 1;
+ unsigned PSS3BD1 : 1;
+ unsigned PSS3AC0 : 1;
+ unsigned PSS3AC1 : 1;
+ unsigned ECCP3AS0 : 1;
+ unsigned ECCP3AS1 : 1;
+ unsigned ECCP3AS2 : 1;
+ unsigned ECCP3ASE : 1;
+ };
+} __ECCP3ASbits_t;
+extern volatile __ECCP3ASbits_t __at (0xFB5) ECCP3ASbits;
+
+extern __sfr __at (0xFB6) CCP2CON;
+typedef union {
+ struct {
+ unsigned CCP2M0 : 1;
+ unsigned CCP2M1 : 1;
+ unsigned CCP2M2 : 1;
+ unsigned CCP2M3 : 1;
+ unsigned DC2B0 : 1;
+ unsigned DC2B1 : 1;
+ unsigned P2M0 : 1;
+ unsigned P2M1 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP2Y : 1;
+ unsigned CCP2X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CCP2CONbits_t;
+extern volatile __CCP2CONbits_t __at (0xFB6) CCP2CONbits;
+
+extern __sfr __at (0xFB6) ECCP2CON;
+typedef union {
+ struct {
+ unsigned CCP2M0 : 1;
+ unsigned CCP2M1 : 1;
+ unsigned CCP2M2 : 1;
+ unsigned CCP2M3 : 1;
+ unsigned DC2B0 : 1;
+ unsigned DC2B1 : 1;
+ unsigned P2M0 : 1;
+ unsigned P2M1 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP2Y : 1;
+ unsigned CCP2X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ECCP2CONbits_t;
+extern volatile __ECCP2CONbits_t __at (0xFB6) ECCP2CONbits;
+
+extern __sfr __at (0xFB7) CCPR2;
+
+extern __sfr __at (0xFB7) CCPR2L;
+
+extern __sfr __at (0xFB8) CCPR2H;
+
+extern __sfr __at (0xFB9) ECCP2DEL;
+typedef union {
+ struct {
+ unsigned PDC0 : 1;
+ unsigned PDC1 : 1;
+ unsigned PDC2 : 1;
+ unsigned PDC3 : 1;
+ unsigned PDC4 : 1;
+ unsigned PDC5 : 1;
+ unsigned PDC6 : 1;
+ unsigned PRSEN : 1;
+ };
+ struct {
+ unsigned P2DC0 : 1;
+ unsigned P2DC1 : 1;
+ unsigned P2DC2 : 1;
+ unsigned P2DC3 : 1;
+ unsigned P2DC4 : 1;
+ unsigned P2DC5 : 1;
+ unsigned P2DC6 : 1;
+ unsigned P2RSEN : 1;
+ };
+} __ECCP2DELbits_t;
+extern volatile __ECCP2DELbits_t __at (0xFB9) ECCP2DELbits;
+
+extern __sfr __at (0xFBA) ECCP2AS;
+typedef union {
+ struct {
+ unsigned PSSBD0 : 1;
+ unsigned PSSBD1 : 1;
+ unsigned PSSAC0 : 1;
+ unsigned PSSAC1 : 1;
+ unsigned ECCPAS0 : 1;
+ unsigned ECCPAS1 : 1;
+ unsigned ECCPAS2 : 1;
+ unsigned ECCPASE : 1;
+ };
+ struct {
+ unsigned PSS2BD0 : 1;
+ unsigned PSS2BD1 : 1;
+ unsigned PSS2AC0 : 1;
+ unsigned PSS2AC1 : 1;
+ unsigned ECCP2AS0 : 1;
+ unsigned ECCP2AS1 : 1;
+ unsigned ECCP2AS2 : 1;
+ unsigned ECCP2ASE : 1;
+ };
+} __ECCP2ASbits_t;
+extern volatile __ECCP2ASbits_t __at (0xFBA) ECCP2ASbits;
+
+extern __sfr __at (0xFBB) CCP1CON;
+typedef union {
+ struct {
+ unsigned CCP1M0 : 1;
+ unsigned CCP1M1 : 1;
+ unsigned CCP1M2 : 1;
+ unsigned CCP1M3 : 1;
+ unsigned DC1B0 : 1;
+ unsigned DC1B1 : 1;
+ unsigned P1M0 : 1;
+ unsigned P1M1 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP1Y : 1;
+ unsigned CCP1X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CCP1CONbits_t;
+extern volatile __CCP1CONbits_t __at (0xFBB) CCP1CONbits;
+
+extern __sfr __at (0xFBB) ECCP1CON;
+typedef union {
+ struct {
+ unsigned CCP1M0 : 1;
+ unsigned CCP1M1 : 1;
+ unsigned CCP1M2 : 1;
+ unsigned CCP1M3 : 1;
+ unsigned DC1B0 : 1;
+ unsigned DC1B1 : 1;
+ unsigned P1M0 : 1;
+ unsigned P1M1 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned CCP1Y : 1;
+ unsigned CCP1X : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ECCP1CONbits_t;
+extern volatile __ECCP1CONbits_t __at (0xFBB) ECCP1CONbits;
+
+extern __sfr __at (0xFBC) CCPR1;
+
+extern __sfr __at (0xFBC) CCPR1L;
+
+extern __sfr __at (0xFBD) CCPR1H;
+
+extern __sfr __at (0xFBE) ECCP1DEL;
+typedef union {
+ struct {
+ unsigned PDC0 : 1;
+ unsigned PDC1 : 1;
+ unsigned PDC2 : 1;
+ unsigned PDC3 : 1;
+ unsigned PDC4 : 1;
+ unsigned PDC5 : 1;
+ unsigned PDC6 : 1;
+ unsigned PRSEN : 1;
+ };
+ struct {
+ unsigned P1DC0 : 1;
+ unsigned P1DC1 : 1;
+ unsigned P1DC2 : 1;
+ unsigned P1DC3 : 1;
+ unsigned P1DC4 : 1;
+ unsigned P1DC5 : 1;
+ unsigned P1DC6 : 1;
+ unsigned P1RSEN : 1;
+ };
+} __ECCP1DELbits_t;
+extern volatile __ECCP1DELbits_t __at (0xFBE) ECCP1DELbits;
+
+extern __sfr __at (0xFBF) ECCP1AS;
+typedef union {
+ struct {
+ unsigned PSSBD0 : 1;
+ unsigned PSSBD1 : 1;
+ unsigned PSSAC0 : 1;
+ unsigned PSSAC1 : 1;
+ unsigned ECCPAS0 : 1;
+ unsigned ECCPAS1 : 1;
+ unsigned ECCPAS2 : 1;
+ unsigned ECCPASE : 1;
+ };
+ struct {
+ unsigned PSS1BD0 : 1;
+ unsigned PSS1BD1 : 1;
+ unsigned PSS1AC0 : 1;
+ unsigned PSS1AC1 : 1;
+ unsigned ECCP1AS0 : 1;
+ unsigned ECCP1AS1 : 1;
+ unsigned ECCP1AS2 : 1;
+ unsigned ECCP1ASE : 1;
+ };
+} __ECCP1ASbits_t;
+extern volatile __ECCP1ASbits_t __at (0xFBF) ECCP1ASbits;
+
+extern __sfr __at (0xFC0) WDTCON;
+typedef union {
+ struct {
+ unsigned SWDTE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned DEVCFG : 1;
+ unsigned : 1;
+ unsigned LVDSTAT : 1;
+ unsigned REGSLP : 1;
+ };
+ struct {
+ unsigned SWDTEN : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned ADSHR : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __WDTCONbits_t;
+extern volatile __WDTCONbits_t __at (0xFC0) WDTCONbits;
+
+extern __sfr __at (0xFC1) ADCON1;
+typedef union {
+ struct {
+ unsigned ADCS0 : 1;
+ unsigned ADCS1 : 1;
+ unsigned ADCS2 : 1;
+ unsigned ACQT0 : 1;
+ unsigned ACQT1 : 1;
+ unsigned ACQT2 : 1;
+ unsigned ADCAL : 1;
+ unsigned ADFM : 1;
+ };
+} __ADCON1bits_t;
+extern volatile __ADCON1bits_t __at (0xFC1) ADCON1bits;
+
+extern __sfr __at (0xFC1) ANCON0;
+typedef union {
+ struct {
+ unsigned PCFG0 : 1;
+ unsigned PCFG1 : 1;
+ unsigned PCFG2 : 1;
+ unsigned PCFG3 : 1;
+ unsigned PCFG4 : 1;
+ unsigned PCFG5 : 1;
+ unsigned PCFG6 : 1;
+ unsigned PCFG7 : 1;
+ };
+} __ANCON0bits_t;
+extern volatile __ANCON0bits_t __at (0xFC1) ANCON0bits;
+
+extern __sfr __at (0xFC2) ADCON0;
+typedef union {
+ struct {
+ unsigned ADON : 1;
+ unsigned DONE : 1;
+ unsigned CHS0 : 1;
+ unsigned CHS1 : 1;
+ unsigned CHS2 : 1;
+ unsigned CHS3 : 1;
+ unsigned VCFG0 : 1;
+ unsigned VCFG1 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned GO_DONE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned GO : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned NOT_DONE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ADCON0bits_t;
+extern volatile __ADCON0bits_t __at (0xFC2) ADCON0bits;
+
+extern __sfr __at (0xFC2) ANCON1;
+typedef union {
+ struct {
+ unsigned PCFG8 : 1;
+ unsigned PCFG9 : 1;
+ unsigned PCFG10 : 1;
+ unsigned PCFG11 : 1;
+ unsigned PCFG12 : 1;
+ unsigned PCFG13 : 1;
+ unsigned PCFG14 : 1;
+ unsigned PCFG15 : 1;
+ };
+} __ANCON1bits_t;
+extern volatile __ANCON1bits_t __at (0xFC2) ANCON1bits;
+
+extern __sfr __at (0xFC3) ADRES;
+
+extern __sfr __at (0xFC3) ADRESL;
+
+extern __sfr __at (0xFC4) ADRESH;
+
+extern __sfr __at (0xFC5) SSP1CON2;
+typedef union {
+ struct {
+ unsigned SEN : 1;
+ unsigned RSEN : 1;
+ unsigned PEN : 1;
+ unsigned RCEN : 1;
+ unsigned ACKEN : 1;
+ unsigned ACKDT : 1;
+ unsigned ACKSTAT : 1;
+ unsigned GCEN : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned ADMSK1 : 1;
+ unsigned ADMSK2 : 1;
+ unsigned ADMSK3 : 1;
+ unsigned ADMSK4 : 1;
+ unsigned ADMSK5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __SSP1CON2bits_t;
+extern volatile __SSP1CON2bits_t __at (0xFC5) SSP1CON2bits;
+
+extern __sfr __at (0xFC5) SSPCON2;
+typedef union {
+ struct {
+ unsigned SEN : 1;
+ unsigned RSEN : 1;
+ unsigned PEN : 1;
+ unsigned RCEN : 1;
+ unsigned ACKEN : 1;
+ unsigned ACKDT : 1;
+ unsigned ACKSTAT : 1;
+ unsigned GCEN : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned ADMSK1 : 1;
+ unsigned ADMSK2 : 1;
+ unsigned ADMSK3 : 1;
+ unsigned ADMSK4 : 1;
+ unsigned ADMSK5 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __SSPCON2bits_t;
+extern volatile __SSPCON2bits_t __at (0xFC5) SSPCON2bits;
+
+extern __sfr __at (0xFC6) SSP1CON1;
+typedef union {
+ struct {
+ unsigned SSPM0 : 1;
+ unsigned SSPM1 : 1;
+ unsigned SSPM2 : 1;
+ unsigned SSPM3 : 1;
+ unsigned CKP : 1;
+ unsigned SSPEN : 1;
+ unsigned SSPOV : 1;
+ unsigned WCOL : 1;
+ };
+} __SSP1CON1bits_t;
+extern volatile __SSP1CON1bits_t __at (0xFC6) SSP1CON1bits;
+
+extern __sfr __at (0xFC6) SSPCON1;
+typedef union {
+ struct {
+ unsigned SSPM0 : 1;
+ unsigned SSPM1 : 1;
+ unsigned SSPM2 : 1;
+ unsigned SSPM3 : 1;
+ unsigned CKP : 1;
+ unsigned SSPEN : 1;
+ unsigned SSPOV : 1;
+ unsigned WCOL : 1;
+ };
+} __SSPCON1bits_t;
+extern volatile __SSPCON1bits_t __at (0xFC6) SSPCON1bits;
+
+extern __sfr __at (0xFC7) SSP1STAT;
+typedef union {
+ struct {
+ unsigned BF : 1;
+ unsigned UA : 1;
+ unsigned R_W : 1;
+ unsigned S : 1;
+ unsigned P : 1;
+ unsigned D_A : 1;
+ unsigned CKE : 1;
+ unsigned SMP : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned I2C_READ : 1;
+ unsigned I2C_START : 1;
+ unsigned I2C_STOP : 1;
+ unsigned I2C_DAT : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_W : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_A : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_WRITE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_ADDRESS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned READ_WRITE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned DATA_ADDRESS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned R : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned D : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __SSP1STATbits_t;
+extern volatile __SSP1STATbits_t __at (0xFC7) SSP1STATbits;
+
+extern __sfr __at (0xFC7) SSPSTAT;
+typedef union {
+ struct {
+ unsigned BF : 1;
+ unsigned UA : 1;
+ unsigned R_W : 1;
+ unsigned S : 1;
+ unsigned P : 1;
+ unsigned D_A : 1;
+ unsigned CKE : 1;
+ unsigned SMP : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned I2C_READ : 1;
+ unsigned I2C_START : 1;
+ unsigned I2C_STOP : 1;
+ unsigned I2C_DAT : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_W : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_A : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_WRITE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_ADDRESS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned READ_WRITE : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned DATA_ADDRESS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned R : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned D : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __SSPSTATbits_t;
+extern volatile __SSPSTATbits_t __at (0xFC7) SSPSTATbits;
+
+extern __sfr __at (0xFC8) SSP1ADD;
+
+extern __sfr __at (0xFC8) SSP1MSK;
+
+extern __sfr __at (0xFC8) SSPADD;
+
+extern __sfr __at (0xFC9) SSP1BUF;
+
+extern __sfr __at (0xFC9) SSPBUF;
+
+extern __sfr __at (0xFCA) T2CON;
+typedef union {
+ struct {
+ unsigned T2CKPS0 : 1;
+ unsigned T2CKPS1 : 1;
+ unsigned TMR2ON : 1;
+ unsigned T2OUTPS0 : 1;
+ unsigned T2OUTPS1 : 1;
+ unsigned T2OUTPS2 : 1;
+ unsigned T2OUTPS3 : 1;
+ unsigned : 1;
+ };
+} __T2CONbits_t;
+extern volatile __T2CONbits_t __at (0xFCA) T2CONbits;
+
+extern __sfr __at (0xFCB) MEMCON;
+typedef union {
+ struct {
+ unsigned WM0 : 1;
+ unsigned WM1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned WAIT0 : 1;
+ unsigned WAIT1 : 1;
+ unsigned : 1;
+ unsigned EDBIS : 1;
+ };
+} __MEMCONbits_t;
+extern volatile __MEMCONbits_t __at (0xFCB) MEMCONbits;
+
+extern __sfr __at (0xFCB) PR2;
+
+extern __sfr __at (0xFCC) PADCFG1;
+typedef union {
+ struct {
+ unsigned PMPTTL : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __PADCFG1bits_t;
+extern volatile __PADCFG1bits_t __at (0xFCC) PADCFG1bits;
+
+extern __sfr __at (0xFCC) TMR2;
+
+extern __sfr __at (0xFCD) ODCON3;
+typedef union {
+ struct {
+ unsigned SPI1OD : 1;
+ unsigned SPI2OD : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ODCON3bits_t;
+extern volatile __ODCON3bits_t __at (0xFCD) ODCON3bits;
+
+extern __sfr __at (0xFCD) T1CON;
+typedef union {
+ struct {
+ unsigned TMR1ON : 1;
+ unsigned TMR1CS : 1;
+ unsigned T1SYNC : 1;
+ unsigned T1OSCEN : 1;
+ unsigned T1CKPS0 : 1;
+ unsigned T1CKPS1 : 1;
+ unsigned T1RUN : 1;
+ unsigned RD16 : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned T1INSYNC : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned NOT_T1SYNC : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __T1CONbits_t;
+extern volatile __T1CONbits_t __at (0xFCD) T1CONbits;
+
+extern __sfr __at (0xFCE) ODCON2;
+typedef union {
+ struct {
+ unsigned USART1OD : 1;
+ unsigned USART2OD : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+ struct {
+ unsigned U1OD : 1;
+ unsigned U2OD : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ODCON2bits_t;
+extern volatile __ODCON2bits_t __at (0xFCE) ODCON2bits;
+
+extern __sfr __at (0xFCE) TMR1L;
+
+extern __sfr __at (0xFCF) ODCON1;
+typedef union {
+ struct {
+ unsigned ECCP1OD : 1;
+ unsigned ECCP2OD : 1;
+ unsigned ECCP3OD : 1;
+ unsigned CCP4OD : 1;
+ unsigned CCP5OD : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __ODCON1bits_t;
+extern volatile __ODCON1bits_t __at (0xFCF) ODCON1bits;
+
+extern __sfr __at (0xFCF) TMR1H;
+
+extern __sfr __at (0xFD0) RCON;
+typedef union {
+ struct {
+ unsigned NOT_BOR : 1;
+ unsigned NOT_POR : 1;
+ unsigned NOT_PD : 1;
+ unsigned NOT_TO : 1;
+ unsigned NOT_RI : 1;
+ unsigned NOT_CM : 1;
+ unsigned : 1;
+ unsigned IPEN : 1;
+ };
+ struct {
+ unsigned BOR : 1;
+ unsigned POR : 1;
+ unsigned PD : 1;
+ unsigned TO : 1;
+ unsigned RI : 1;
+ unsigned CM : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __RCONbits_t;
+extern volatile __RCONbits_t __at (0xFD0) RCONbits;
+
+extern __sfr __at (0xFD1) CM2CON;
+typedef union {
+ struct {
+ unsigned C1CH0 : 1;
+ unsigned C1CH1 : 1;
+ unsigned CREF : 1;
+ unsigned EVPOL0 : 1;
+ unsigned EVPOL1 : 1;
+ unsigned CPOL : 1;
+ unsigned COE : 1;
+ unsigned CON : 1;
+ };
+ struct {
+ unsigned CCH0 : 1;
+ unsigned CCH1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CM2CONbits_t;
+extern volatile __CM2CONbits_t __at (0xFD1) CM2CONbits;
+
+extern __sfr __at (0xFD1) CM2CON1;
+typedef union {
+ struct {
+ unsigned C1CH0 : 1;
+ unsigned C1CH1 : 1;
+ unsigned CREF : 1;
+ unsigned EVPOL0 : 1;
+ unsigned EVPOL1 : 1;
+ unsigned CPOL : 1;
+ unsigned COE : 1;
+ unsigned CON : 1;
+ };
+ struct {
+ unsigned CCH0 : 1;
+ unsigned CCH1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CM2CON1bits_t;
+extern volatile __CM2CON1bits_t __at (0xFD1) CM2CON1bits;
+
+extern __sfr __at (0xFD2) CM1CON;
+typedef union {
+ struct {
+ unsigned C1CH0 : 1;
+ unsigned C1CH1 : 1;
+ unsigned CREF : 1;
+ unsigned EVPOL0 : 1;
+ unsigned EVPOL1 : 1;
+ unsigned CPOL : 1;
+ unsigned COE : 1;
+ unsigned CON : 1;
+ };
+ struct {
+ unsigned CCH0 : 1;
+ unsigned CCH1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CM1CONbits_t;
+extern volatile __CM1CONbits_t __at (0xFD2) CM1CONbits;
+
+extern __sfr __at (0xFD2) CM1CON1;
+typedef union {
+ struct {
+ unsigned C1CH0 : 1;
+ unsigned C1CH1 : 1;
+ unsigned CREF : 1;
+ unsigned EVPOL0 : 1;
+ unsigned EVPOL1 : 1;
+ unsigned CPOL : 1;
+ unsigned COE : 1;
+ unsigned CON : 1;
+ };
+ struct {
+ unsigned CCH0 : 1;
+ unsigned CCH1 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __CM1CON1bits_t;
+extern volatile __CM1CON1bits_t __at (0xFD2) CM1CON1bits;
+
+extern __sfr __at (0xFD3) OSCCON;
+typedef union {
+ struct {
+ unsigned SCS0 : 1;
+ unsigned SCS1 : 1;
+ unsigned IOFS : 1;
+ unsigned OSTS : 1;
+ unsigned IRCF0 : 1;
+ unsigned IRCF1 : 1;
+ unsigned IRCF2 : 1;
+ unsigned IDLEN : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned FLTS : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __OSCCONbits_t;
+extern volatile __OSCCONbits_t __at (0xFD3) OSCCONbits;
+
+extern __sfr __at (0xFD3) REFOCON;
+typedef union {
+ struct {
+ unsigned RODIV0 : 1;
+ unsigned RODIV1 : 1;
+ unsigned RODIV2 : 1;
+ unsigned RODIV3 : 1;
+ unsigned ROSEL : 1;
+ unsigned ROSSLP : 1;
+ unsigned : 1;
+ unsigned ROON : 1;
+ };
+} __REFOCONbits_t;
+extern volatile __REFOCONbits_t __at (0xFD3) REFOCONbits;
+
+extern __sfr __at (0xFD5) T0CON;
+typedef union {
+ struct {
+ unsigned T0PS0 : 1;
+ unsigned T0PS1 : 1;
+ unsigned T0PS2 : 1;
+ unsigned PSA : 1;
+ unsigned T0SE : 1;
+ unsigned T0CS : 1;
+ unsigned T08BIT : 1;
+ unsigned TMR0ON : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned T0PS3 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __T0CONbits_t;
+extern volatile __T0CONbits_t __at (0xFD5) T0CONbits;
+
+extern __sfr __at (0xFD6) TMR0L;
+
+extern __sfr __at (0xFD7) TMR0H;
+
+extern __sfr __at (0xFD8) STATUS;
+typedef union {
+ struct {
+ unsigned C : 1;
+ unsigned DC : 1;
+ unsigned Z : 1;
+ unsigned OV : 1;
+ unsigned N : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ };
+} __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;
+typedef union {
+ struct {
+ unsigned INT1F : 1;
+ unsigned INT2F : 1;
+ unsigned INT3F : 1;
+ unsigned INT1E : 1;
+ unsigned INT2E : 1;
+ unsigned INT3E : 1;
+ unsigned INT1P : 1;
+ unsigned INT2P : 1;
+ };
+ struct {
+ unsigned INT1IF : 1;
+ unsigned INT2IF : 1;
+ unsigned INT3IF : 1;
+ unsigned INT1IE : 1;
+ unsigned INT2IE : 1;
+ unsigned INT3IE : 1;
+ unsigned INT1IP : 1;
+ unsigned INT2IP : 1;
+ };
+} __INTCON3bits_t;
+extern volatile __INTCON3bits_t __at (0xFF0) INTCON3bits;
+
+extern __sfr __at (0xFF1) INTCON2;
+typedef union {
+ struct {
+ unsigned RBIP : 1;
+ unsigned INT3P : 1;
+ unsigned T0IP : 1;
+ unsigned INTEDG3 : 1;
+ unsigned INTEDG2 : 1;
+ unsigned INTEDG1 : 1;
+ unsigned INTEDG0 : 1;
+ unsigned NOT_RBPU : 1;
+ };
+ struct {
+ unsigned : 1;
+ unsigned INT3IP : 1;
+ unsigned TMR0IP : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned RBPU : 1;
+ };
+} __INTCON2bits_t;
+extern volatile __INTCON2bits_t __at (0xFF1) INTCON2bits;
+
+extern __sfr __at (0xFF2) INTCON;
+typedef union {
+ struct {
+ unsigned RBIF : 1;
+ unsigned INT0F : 1;
+ unsigned T0IF : 1;
+ unsigned RBIE : 1;
+ unsigned INT0E : 1;
+ unsigned T0IE : 1;
+ 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) PROD;
+
+extern __sfr __at (0xFF3) PRODL;
+
+extern __sfr __at (0xFF4) PRODH;
+
+extern __sfr __at (0xFF5) TABLAT;
+
+extern __sfr __at (0xFF6) TBLPTR;
+
+extern __sfr __at (0xFF6) TBLPTRL;
+
+extern __sfr __at (0xFF7) TBLPTRH;
+
+extern __sfr __at (0xFF8) TBLPTRU;
+
+extern __sfr __at (0xFF9) PC;
+
+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;
+ unsigned STKPTR1 : 1;
+ unsigned STKPTR2 : 1;
+ unsigned STKPTR3 : 1;
+ unsigned STKPTR4 : 1;
+ unsigned : 1;
+ unsigned STKUNF : 1;
+ unsigned STKOVF : 1;
+ };
+ struct {
+ unsigned SP0 : 1;
+ unsigned SP1 : 1;
+ unsigned SP2 : 1;
+ unsigned SP3 : 1;
+ unsigned SP4 : 1;
+ unsigned : 1;
+ unsigned : 1;
+ unsigned STKFUL : 1;
+ };
+} __STKPTRbits_t;
+extern volatile __STKPTRbits_t __at (0xFFC) STKPTRbits;
+
+extern __sfr __at (0xFFD) TOS;
+
+extern __sfr __at (0xFFD) TOSL;
+
+extern __sfr __at (0xFFE) TOSH;
+
+extern __sfr __at (0xFFF) TOSU;
+
+
+#endif
+
#elif defined(pic18f2331)
# include <pic18f2331.h>
+#elif defined(pic18f23k20)
+# include <pic18f23k20.h>
+
#elif defined(pic18f2410)
# include <pic18f2410.h>
#elif defined(pic18f24j10)
# include <pic18f24j10.h>
+#elif defined(pic18f24k20)
+# include <pic18f24k20.h>
+
#elif defined(pic18f2510)
# include <pic18f2510.h>
#elif defined(pic18f25j10)
# include <pic18f25j10.h>
+#elif defined(pic18f25k20)
+# include <pic18f25k20.h>
+
#elif defined(pic18f2610)
# include <pic18f2610.h>
#elif defined(pic18f2685)
# include <pic18f2685.h>
+#elif defined(pic18f26k20)
+# include <pic18f26k20.h>
+
#elif defined(pic18f4220)
# include <pic18f4220.h>
#elif defined(pic18f4331)
# include <pic18f4331.h>
+#elif defined(pic18f43k20)
+# include <pic18f43k20.h>
+
#elif defined(pic18f4410)
# include <pic18f4410.h>
#elif defined(pic18f44j10)
# include <pic18f44j10.h>
+#elif defined(pic18f44k20)
+# include <pic18f44k20.h>
+
#elif defined(pic18f4510)
# include <pic18f4510.h>
#elif defined(pic18f45j10)
# include <pic18f45j10.h>
+#elif defined(pic18f45k20)
+# include <pic18f45k20.h>
+
#elif defined(pic18f4610)
# include <pic18f4610.h>
#elif defined(pic18f4685)
# include <pic18f4685.h>
+#elif defined(pic18f46k20)
+# include <pic18f46k20.h>
+
#elif defined(pic18f6520)
# include <pic18f6520.h>
#elif defined(pic18f6585)
# include <pic18f6585.h>
+#elif defined(pic18f65j50)
+# include <pic18f65j50.h>
+
#elif defined(pic18f6620)
# include <pic18f6620.h>
#elif defined(pic18f6680)
# include <pic18f6680.h>
+#elif defined(pic18f66j50)
+# include <pic18f66j50.h>
+
+#elif defined(pic18f66j55)
+# include <pic18f66j55.h>
+
#elif defined(pic18f66j60)
# include <pic18f66j60.h>
#elif defined(pic18f6720)
# include <pic18f6720.h>
+#elif defined(pic18f67j50)
+# include <pic18f67j50.h>
+
#elif defined(pic18f67j60)
# include <pic18f67j60.h>
#elif defined(pic18f8585)
# include <pic18f8585.h>
+#elif defined(pic18f85j50)
+# include <pic18f85j50.h>
+
#elif defined(pic18f8620)
# include <pic18f8620.h>
#elif defined(pic18f8680)
# include <pic18f8680.h>
+#elif defined(pic18f86j50)
+# include <pic18f86j50.h>
+
+#elif defined(pic18f86j55)
+# include <pic18f86j55.h>
+
#elif defined(pic18f86j60)
# include <pic18f86j60.h>
#elif defined(pic18f8720)
# include <pic18f8720.h>
+#elif defined(pic18f87j50)
+# include <pic18f87j50.h>
+
#elif defined(pic18f87j60)
# include <pic18f87j60.h>
AM_CFLAGS += --asm="$(CCAS)"
AM_CFLAGS += -I.
AM_CFLAGS += -I$(top_srcdir)/../../include/pic16
-AM_CFLAGS += -Wa,-q
+##AM_CFLAGS += -Wa,-q
AM_CFLAGS += --fommit-frame-pointer
AM_CFLAGS += --obanksel=9
libdev18f2220_a_SOURCES = pic18f2220.c
libdev18f2220_a_CFLAGS = -p18f2220 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f2221.a
+libdev18f2221_a_SOURCES = pic18f2221.c
+libdev18f2221_a_CFLAGS = -p18f2221 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f2320.a
libdev18f2320_a_SOURCES = pic18f2320.c
libdev18f2320_a_CFLAGS = -p18f2320 $(AM_CFLAGS)
libdev18f2331_a_SOURCES = pic18f2331.c
libdev18f2331_a_CFLAGS = -p18f2331 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f23k20.a
+libdev18f23k20_a_SOURCES = pic18f23k20.c
+libdev18f23k20_a_CFLAGS = -p18f23k20 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f2410.a
libdev18f2410_a_SOURCES = pic18f2410.c
libdev18f2410_a_CFLAGS = -p18f2410 $(AM_CFLAGS)
libdev18f2420_a_SOURCES = pic18f2420.c
libdev18f2420_a_CFLAGS = -p18f2420 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f2423.a
+libdev18f2423_a_SOURCES = pic18f2423.c
+libdev18f2423_a_CFLAGS = -p18f2423 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f2431.a
libdev18f2431_a_SOURCES = pic18f2431.c
libdev18f2431_a_CFLAGS = -p18f2431 $(AM_CFLAGS)
libdev18f24j10_a_SOURCES = pic18f24j10.c
libdev18f24j10_a_CFLAGS = -p18f24j10 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f24k20.a
+libdev18f24k20_a_SOURCES = pic18f24k20.c
+libdev18f24k20_a_CFLAGS = -p18f24k20 $(AM_CFLAGS)
+
+lib_LIBRARIES += libdev18f2510.a
+libdev18f2510_a_SOURCES = pic18f2510.c
+libdev18f2510_a_CFLAGS = -p18f2510 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f2515.a
libdev18f2515_a_SOURCES = pic18f2515.c
libdev18f2515_a_CFLAGS = -p18f2515 $(AM_CFLAGS)
libdev18f25j10_a_SOURCES = pic18f25j10.c
libdev18f25j10_a_CFLAGS = -p18f25j10 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f25k20.a
+libdev18f25k20_a_SOURCES = pic18f25k20.c
+libdev18f25k20_a_CFLAGS = -p18f25k20 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f2610.a
libdev18f2610_a_SOURCES = pic18f2610.c
libdev18f2610_a_CFLAGS = -p18f2610 $(AM_CFLAGS)
libdev18f2685_a_SOURCES = pic18f2685.c
libdev18f2685_a_CFLAGS = -p18f2685 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f26k20.a
+libdev18f26k20_a_SOURCES = pic18f26k20.c
+libdev18f26k20_a_CFLAGS = -p18f26k20 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f4220.a
libdev18f4220_a_SOURCES = pic18f4220.c
libdev18f4220_a_CFLAGS = -p18f4220 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f4221.a
+libdev18f4221_a_SOURCES = pic18f4221.c
+libdev18f4221_a_CFLAGS = -p18f4221 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f4320.a
libdev18f4320_a_SOURCES = pic18f4320.c
libdev18f4320_a_CFLAGS = -p18f4320 $(AM_CFLAGS)
libdev18f4331_a_SOURCES = pic18f4331.c
libdev18f4331_a_CFLAGS = -p18f4331 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f43k20.a
+libdev18f43k20_a_SOURCES = pic18f43k20.c
+libdev18f43k20_a_CFLAGS = -p18f43k20 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f4410.a
libdev18f4410_a_SOURCES = pic18f4410.c
libdev18f4410_a_CFLAGS = -p18f4410 $(AM_CFLAGS)
libdev18f4420_a_SOURCES = pic18f4420.c
libdev18f4420_a_CFLAGS = -p18f4420 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f4423.a
+libdev18f4423_a_SOURCES = pic18f4423.c
+libdev18f4423_a_CFLAGS = -p18f4423 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f4431.a
libdev18f4431_a_SOURCES = pic18f4431.c
libdev18f4431_a_CFLAGS = -p18f4431 $(AM_CFLAGS)
libdev18f44j10_a_SOURCES = pic18f44j10.c
libdev18f44j10_a_CFLAGS = -p18f44j10 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f44k20.a
+libdev18f44k20_a_SOURCES = pic18f44k20.c
+libdev18f44k20_a_CFLAGS = -p18f44k20 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f4510.a
libdev18f4510_a_SOURCES = pic18f4510.c
libdev18f4510_a_CFLAGS = -p18f4510 $(AM_CFLAGS)
libdev18f4520_a_SOURCES = pic18f4520.c
libdev18f4520_a_CFLAGS = -p18f4520 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f4523.a
+libdev18f4523_a_SOURCES = pic18f4523.c
+libdev18f4523_a_CFLAGS = -p18f4523 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f4525.a
libdev18f4525_a_SOURCES = pic18f4525.c
libdev18f4525_a_CFLAGS = -p18f4525 $(AM_CFLAGS)
libdev18f45j10_a_SOURCES = pic18f45j10.c
libdev18f45j10_a_CFLAGS = -p18f45j10 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f45k20.a
+libdev18f45k20_a_SOURCES = pic18f45k20.c
+libdev18f45k20_a_CFLAGS = -p18f45k20 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f4610.a
libdev18f4610_a_SOURCES = pic18f4610.c
libdev18f4610_a_CFLAGS = -p18f4610 $(AM_CFLAGS)
libdev18f4685_a_SOURCES = pic18f4685.c
libdev18f4685_a_CFLAGS = -p18f4685 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f46k20.a
+libdev18f46k20_a_SOURCES = pic18f46k20.c
+libdev18f46k20_a_CFLAGS = -p18f46k20 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f6520.a
libdev18f6520_a_SOURCES = pic18f6520.c
libdev18f6520_a_CFLAGS = -p18f6520 $(AM_CFLAGS)
libdev18f6585_a_SOURCES = pic18f6585.c
libdev18f6585_a_CFLAGS = -p18f6585 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f65j50.a
+libdev18f65j50_a_SOURCES = pic18f65j50.c
+libdev18f65j50_a_CFLAGS = -p18f65j50 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f6620.a
libdev18f6620_a_SOURCES = pic18f6620.c
libdev18f6620_a_CFLAGS = -p18f6620 $(AM_CFLAGS)
libdev18f6680_a_SOURCES = pic18f6680.c
libdev18f6680_a_CFLAGS = -p18f6680 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f66j50.a
+libdev18f66j50_a_SOURCES = pic18f66j50.c
+libdev18f66j50_a_CFLAGS = -p18f66j50 $(AM_CFLAGS)
+
+lib_LIBRARIES += libdev18f66j55.a
+libdev18f66j55_a_SOURCES = pic18f66j55.c
+libdev18f66j55_a_CFLAGS = -p18f66j55 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f66j60.a
libdev18f66j60_a_SOURCES = pic18f66j60.c
libdev18f66j60_a_CFLAGS = -p18f66j60 $(AM_CFLAGS)
libdev18f6720_a_SOURCES = pic18f6720.c
libdev18f6720_a_CFLAGS = -p18f6720 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f67j50.a
+libdev18f67j50_a_SOURCES = pic18f67j50.c
+libdev18f67j50_a_CFLAGS = -p18f67j50 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f67j60.a
libdev18f67j60_a_SOURCES = pic18f67j60.c
libdev18f67j60_a_CFLAGS = -p18f67j60 $(AM_CFLAGS)
libdev18f8585_a_SOURCES = pic18f8585.c
libdev18f8585_a_CFLAGS = -p18f8585 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f85j50.a
+libdev18f85j50_a_SOURCES = pic18f85j50.c
+libdev18f85j50_a_CFLAGS = -p18f85j50 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f8620.a
libdev18f8620_a_SOURCES = pic18f8620.c
libdev18f8620_a_CFLAGS = -p18f8620 $(AM_CFLAGS)
libdev18f8680_a_SOURCES = pic18f8680.c
libdev18f8680_a_CFLAGS = -p18f8680 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f86j50.a
+libdev18f86j50_a_SOURCES = pic18f86j50.c
+libdev18f86j50_a_CFLAGS = -p18f86j50 $(AM_CFLAGS)
+
+lib_LIBRARIES += libdev18f86j55.a
+libdev18f86j55_a_SOURCES = pic18f86j55.c
+libdev18f86j55_a_CFLAGS = -p18f86j55 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f86j60.a
libdev18f86j60_a_SOURCES = pic18f86j60.c
libdev18f86j60_a_CFLAGS = -p18f86j60 $(AM_CFLAGS)
libdev18f8720_a_SOURCES = pic18f8720.c
libdev18f8720_a_CFLAGS = -p18f8720 $(AM_CFLAGS)
+lib_LIBRARIES += libdev18f87j50.a
+libdev18f87j50_a_SOURCES = pic18f87j50.c
+libdev18f87j50_a_CFLAGS = -p18f87j50 $(AM_CFLAGS)
+
lib_LIBRARIES += libdev18f87j60.a
libdev18f87j60_a_SOURCES = pic18f87j60.c
libdev18f87j60_a_CFLAGS = -p18f87j60 $(AM_CFLAGS)
--- /dev/null
+/*
+ * pic18f23k20.c - device specific definitions
+ */
+
+#include "pic18f46k20.c"
+
--- /dev/null
+/*
+ * pic18f24k20.c - device specific definitions
+ */
+
+#include "pic18f46k20.c"
+
--- /dev/null
+/*
+ * pic18f25k20.c - device specific definitions
+ */
+
+#include "pic18f46k20.c"
+
--- /dev/null
+/*
+ * pic18f26k20.c - device specific definitions
+ */
+
+#include "pic18f46k20.c"
+
--- /dev/null
+/*
+ * pic18f43k20.c - device specific definitions
+ */
+
+#include "pic18f46k20.c"
+
--- /dev/null
+/*
+ * pic18f44k20.c - device specific definitions
+ */
+
+#include "pic18f46k20.c"
+
--- /dev/null
+/*
+ * pic18f45k20.c - device specific definitions
+ */
+
+#include "pic18f46k20.c"
+
--- /dev/null
+/*
+ * pic18f46k20.c - device specific definitions
+ *
+ * This file is part of the GNU PIC library for SDCC,
+ * originally devised by Vangelis Rokas <vrokas AT otenet.gr>
+ *
+ * It has been automatically generated by inc2h-pic16.pl,
+ * (c) 2007 by Raphael Neider <rneider AT web.de>
+ */
+
+#include <pic18f46k20.h>
+
+
+__sfr __at (0xF77) SSPMSK;
+
+__sfr __at (0xF78) SLRCON;
+volatile __SLRCONbits_t __at (0xF78) SLRCONbits;
+
+__sfr __at (0xF79) CM12CON;
+volatile __CM12CONbits_t __at (0xF79) CM12CONbits;
+
+__sfr __at (0xF7A) CM2CON;
+volatile __CM2CONbits_t __at (0xF7A) CM2CONbits;
+
+__sfr __at (0xF7B) CM1CON;
+volatile __CM1CONbits_t __at (0xF7B) CM1CONbits;
+
+__sfr __at (0xF7C) WPUB;
+volatile __WPUBbits_t __at (0xF7C) WPUBbits;
+
+__sfr __at (0xF7D) IOCB;
+volatile __IOCBbits_t __at (0xF7D) IOCBbits;
+
+__sfr __at (0xF7E) ANSEL;
+volatile __ANSELbits_t __at (0xF7E) ANSELbits;
+
+__sfr __at (0xF7F) ANSELH;
+volatile __ANSELHbits_t __at (0xF7F) ANSELHbits;
+
+__sfr __at (0xF80) PORTA;
+volatile __PORTAbits_t __at (0xF80) PORTAbits;
+
+__sfr __at (0xF81) PORTB;
+volatile __PORTBbits_t __at (0xF81) PORTBbits;
+
+__sfr __at (0xF82) PORTC;
+volatile __PORTCbits_t __at (0xF82) PORTCbits;
+
+__sfr __at (0xF83) PORTD;
+volatile __PORTDbits_t __at (0xF83) PORTDbits;
+
+__sfr __at (0xF84) PORTE;
+volatile __PORTEbits_t __at (0xF84) PORTEbits;
+
+__sfr __at (0xF89) LATA;
+volatile __LATAbits_t __at (0xF89) LATAbits;
+
+__sfr __at (0xF8A) LATB;
+volatile __LATBbits_t __at (0xF8A) LATBbits;
+
+__sfr __at (0xF8B) LATC;
+volatile __LATCbits_t __at (0xF8B) LATCbits;
+
+__sfr __at (0xF8C) LATD;
+volatile __LATDbits_t __at (0xF8C) LATDbits;
+
+__sfr __at (0xF8D) LATE;
+volatile __LATEbits_t __at (0xF8D) LATEbits;
+
+__sfr __at (0xF92) DDRA;
+volatile __DDRAbits_t __at (0xF92) DDRAbits;
+
+__sfr __at (0xF92) TRISA;
+volatile __TRISAbits_t __at (0xF92) TRISAbits;
+
+__sfr __at (0xF93) DDRB;
+volatile __DDRBbits_t __at (0xF93) DDRBbits;
+
+__sfr __at (0xF93) TRISB;
+volatile __TRISBbits_t __at (0xF93) TRISBbits;
+
+__sfr __at (0xF94) DDRC;
+volatile __DDRCbits_t __at (0xF94) DDRCbits;
+
+__sfr __at (0xF94) TRISC;
+volatile __TRISCbits_t __at (0xF94) TRISCbits;
+
+__sfr __at (0xF95) DDRD;
+volatile __DDRDbits_t __at (0xF95) DDRDbits;
+
+__sfr __at (0xF95) TRISD;
+volatile __TRISDbits_t __at (0xF95) TRISDbits;
+
+__sfr __at (0xF96) DDRE;
+volatile __DDREbits_t __at (0xF96) DDREbits;
+
+__sfr __at (0xF96) TRISE;
+volatile __TRISEbits_t __at (0xF96) TRISEbits;
+
+__sfr __at (0xF9B) OSCTUNE;
+volatile __OSCTUNEbits_t __at (0xF9B) OSCTUNEbits;
+
+__sfr __at (0xF9D) PIE1;
+volatile __PIE1bits_t __at (0xF9D) PIE1bits;
+
+__sfr __at (0xF9E) PIR1;
+volatile __PIR1bits_t __at (0xF9E) PIR1bits;
+
+__sfr __at (0xF9F) IPR1;
+volatile __IPR1bits_t __at (0xF9F) IPR1bits;
+
+__sfr __at (0xFA0) PIE2;
+volatile __PIE2bits_t __at (0xFA0) PIE2bits;
+
+__sfr __at (0xFA1) PIR2;
+volatile __PIR2bits_t __at (0xFA1) PIR2bits;
+
+__sfr __at (0xFA2) IPR2;
+volatile __IPR2bits_t __at (0xFA2) IPR2bits;
+
+__sfr __at (0xFA6) EECON1;
+volatile __EECON1bits_t __at (0xFA6) EECON1bits;
+
+__sfr __at (0xFA7) EECON2;
+
+__sfr __at (0xFA8) EEDATA;
+
+__sfr __at (0xFA9) EEADR;
+
+__sfr __at (0xFAA) EEADRH;
+
+__sfr __at (0xFAB) RCSTA;
+volatile __RCSTAbits_t __at (0xFAB) RCSTAbits;
+
+__sfr __at (0xFAC) TXSTA;
+volatile __TXSTAbits_t __at (0xFAC) TXSTAbits;
+
+__sfr __at (0xFAD) TXREG;
+
+__sfr __at (0xFAE) RCREG;
+
+__sfr __at (0xFAF) SPBRG;
+
+__sfr __at (0xFB0) SPBRGH;
+
+__sfr __at (0xFB1) T3CON;
+volatile __T3CONbits_t __at (0xFB1) T3CONbits;
+
+__sfr __at (0xFB2) TMR3L;
+
+__sfr __at (0xFB3) TMR3H;
+
+__sfr __at (0xFB4) CVRCON2;
+volatile __CVRCON2bits_t __at (0xFB4) CVRCON2bits;
+
+__sfr __at (0xFB5) CVRCON;
+volatile __CVRCONbits_t __at (0xFB5) CVRCONbits;
+
+__sfr __at (0xFB6) ECCP1AS;
+volatile __ECCP1ASbits_t __at (0xFB6) ECCP1ASbits;
+
+__sfr __at (0xFB7) PWM1CON;
+volatile __PWM1CONbits_t __at (0xFB7) PWM1CONbits;
+
+__sfr __at (0xFB8) BAUDCON;
+volatile __BAUDCONbits_t __at (0xFB8) BAUDCONbits;
+
+__sfr __at (0xFB8) BAUDCTL;
+volatile __BAUDCTLbits_t __at (0xFB8) BAUDCTLbits;
+
+__sfr __at (0xFB9) PSTRCON;
+volatile __PSTRCONbits_t __at (0xFB9) PSTRCONbits;
+
+__sfr __at (0xFBA) CCP2CON;
+volatile __CCP2CONbits_t __at (0xFBA) CCP2CONbits;
+
+__sfr __at (0xFBB) CCPR2;
+
+__sfr __at (0xFBB) CCPR2L;
+
+__sfr __at (0xFBC) CCPR2H;
+
+__sfr __at (0xFBD) CCP1CON;
+volatile __CCP1CONbits_t __at (0xFBD) CCP1CONbits;
+
+__sfr __at (0xFBE) CCPR1;
+
+__sfr __at (0xFBE) CCPR1L;
+
+__sfr __at (0xFBF) CCPR1H;
+
+__sfr __at (0xFC0) ADCON2;
+volatile __ADCON2bits_t __at (0xFC0) ADCON2bits;
+
+__sfr __at (0xFC1) ADCON1;
+volatile __ADCON1bits_t __at (0xFC1) ADCON1bits;
+
+__sfr __at (0xFC2) ADCON0;
+volatile __ADCON0bits_t __at (0xFC2) ADCON0bits;
+
+__sfr __at (0xFC3) ADRES;
+
+__sfr __at (0xFC3) ADRESL;
+
+__sfr __at (0xFC4) ADRESH;
+
+__sfr __at (0xFC5) SSPCON2;
+volatile __SSPCON2bits_t __at (0xFC5) SSPCON2bits;
+
+__sfr __at (0xFC6) SSPCON1;
+volatile __SSPCON1bits_t __at (0xFC6) SSPCON1bits;
+
+__sfr __at (0xFC7) SSPSTAT;
+volatile __SSPSTATbits_t __at (0xFC7) SSPSTATbits;
+
+__sfr __at (0xFC8) SSPADD;
+
+__sfr __at (0xFC9) SSPBUF;
+
+__sfr __at (0xFCA) T2CON;
+volatile __T2CONbits_t __at (0xFCA) T2CONbits;
+
+__sfr __at (0xFCB) PR2;
+
+__sfr __at (0xFCC) TMR2;
+
+__sfr __at (0xFCD) T1CON;
+volatile __T1CONbits_t __at (0xFCD) T1CONbits;
+
+__sfr __at (0xFCE) TMR1L;
+
+__sfr __at (0xFCF) TMR1H;
+
+__sfr __at (0xFD0) RCON;
+volatile __RCONbits_t __at (0xFD0) RCONbits;
+
+__sfr __at (0xFD1) WDTCON;
+volatile __WDTCONbits_t __at (0xFD1) WDTCONbits;
+
+__sfr __at (0xFD2) HLVDCON;
+volatile __HLVDCONbits_t __at (0xFD2) HLVDCONbits;
+
+__sfr __at (0xFD2) LVDCON;
+volatile __LVDCONbits_t __at (0xFD2) LVDCONbits;
+
+__sfr __at (0xFD3) OSCCON;
+volatile __OSCCONbits_t __at (0xFD3) OSCCONbits;
+
+__sfr __at (0xFD4) DEBUG;
+
+__sfr __at (0xFD5) T0CON;
+volatile __T0CONbits_t __at (0xFD5) T0CONbits;
+
+__sfr __at (0xFD6) TMR0L;
+
+__sfr __at (0xFD7) TMR0H;
+
+__sfr __at (0xFD8) STATUS;
+volatile __STATUSbits_t __at (0xFD8) STATUSbits;
+
+__sfr __at (0xFD9) FSR2L;
+
+__sfr __at (0xFDA) FSR2H;
+
+__sfr __at (0xFDB) PLUSW2;
+
+__sfr __at (0xFDC) PREINC2;
+
+__sfr __at (0xFDD) POSTDEC2;
+
+__sfr __at (0xFDE) POSTINC2;
+
+__sfr __at (0xFDF) INDF2;
+
+__sfr __at (0xFE0) BSR;
+
+__sfr __at (0xFE1) FSR1L;
+
+__sfr __at (0xFE2) FSR1H;
+
+__sfr __at (0xFE3) PLUSW1;
+
+__sfr __at (0xFE4) PREINC1;
+
+__sfr __at (0xFE5) POSTDEC1;
+
+__sfr __at (0xFE6) POSTINC1;
+
+__sfr __at (0xFE7) INDF1;
+
+__sfr __at (0xFE8) WREG;
+
+__sfr __at (0xFE9) FSR0L;
+
+__sfr __at (0xFEA) FSR0H;
+
+__sfr __at (0xFEB) PLUSW0;
+
+__sfr __at (0xFEC) PREINC0;
+
+__sfr __at (0xFED) POSTDEC0;
+
+__sfr __at (0xFEE) POSTINC0;
+
+__sfr __at (0xFEF) INDF0;
+
+__sfr __at (0xFF0) INTCON3;
+volatile __INTCON3bits_t __at (0xFF0) INTCON3bits;
+
+__sfr __at (0xFF1) INTCON2;
+volatile __INTCON2bits_t __at (0xFF1) INTCON2bits;
+
+__sfr __at (0xFF2) INTCON;
+volatile __INTCONbits_t __at (0xFF2) INTCONbits;
+
+__sfr __at (0xFF3) PROD;
+
+__sfr __at (0xFF3) PRODL;
+
+__sfr __at (0xFF4) PRODH;
+
+__sfr __at (0xFF5) TABLAT;
+
+__sfr __at (0xFF6) TBLPTR;
+
+__sfr __at (0xFF6) TBLPTRL;
+
+__sfr __at (0xFF7) TBLPTRH;
+
+__sfr __at (0xFF8) TBLPTRU;
+
+__sfr __at (0xFF9) PC;
+
+__sfr __at (0xFF9) PCL;
+
+__sfr __at (0xFFA) PCLATH;
+
+__sfr __at (0xFFB) PCLATU;
+
+__sfr __at (0xFFC) STKPTR;
+volatile __STKPTRbits_t __at (0xFFC) STKPTRbits;
+
+__sfr __at (0xFFD) TOS;
+
+__sfr __at (0xFFD) TOSL;
+
+__sfr __at (0xFFE) TOSH;
+
+__sfr __at (0xFFF) TOSU;
+
+
--- /dev/null
+/*
+ * pic18f65j50.c - device specific definitions
+ */
+
+#include <pic18f65j50.h>
+#include "pic18f67j50.c"
+
--- /dev/null
+/*
+ * pic18f66j50.c - device specific definitions
+ */
+
+#include <pic18f66j50.h>
+#include "pic18f67j50.c"
+
--- /dev/null
+/*
+ * pic18f66j55.c - device specific definitions
+ */
+
+#include <pic18f66j55.h>
+#include "pic18f67j50.c"
+
--- /dev/null
+/*
+ * pic18f67j50.c - device specific definitions
+ *
+ * This file is part of the GNU PIC library for SDCC,
+ * originally devised by Vangelis Rokas <vrokas AT otenet.gr>
+ *
+ * It has been automatically generated by inc2h-pic16.pl,
+ * (c) 2007 by Raphael Neider <rneider AT web.de>
+ */
+
+#include <pic18f67j50.h>
+
+
+__sfr __at (0xF40) PMSTAT;
+
+__sfr __at (0xF40) PMSTATL;
+volatile __PMSTATLbits_t __at (0xF40) PMSTATLbits;
+
+__sfr __at (0xF41) PMSTATH;
+volatile __PMSTATHbits_t __at (0xF41) PMSTATHbits;
+
+__sfr __at (0xF42) PMEL;
+volatile __PMELbits_t __at (0xF42) PMELbits;
+
+__sfr __at (0xF42) PMEN;
+
+__sfr __at (0xF43) PMEH;
+volatile __PMEHbits_t __at (0xF43) PMEHbits;
+
+__sfr __at (0xF44) PMDIN2;
+
+__sfr __at (0xF44) PMDIN2L;
+
+__sfr __at (0xF45) PMDIN2H;
+
+__sfr __at (0xF46) PMDOUT2;
+
+__sfr __at (0xF46) PMDOUT2L;
+
+__sfr __at (0xF47) PMDOUT2H;
+
+__sfr __at (0xF48) PMMODE;
+
+__sfr __at (0xF48) PMMODEL;
+volatile __PMMODELbits_t __at (0xF48) PMMODELbits;
+
+__sfr __at (0xF49) PMMODEH;
+volatile __PMMODEHbits_t __at (0xF49) PMMODEHbits;
+
+__sfr __at (0xF4A) PMCON;
+
+__sfr __at (0xF4A) PMCONL;
+volatile __PMCONLbits_t __at (0xF4A) PMCONLbits;
+
+__sfr __at (0xF4B) PMCONH;
+volatile __PMCONHbits_t __at (0xF4B) PMCONHbits;
+
+__sfr __at (0xF4C) UEP0;
+volatile __UEP0bits_t __at (0xF4C) UEP0bits;
+
+__sfr __at (0xF4D) UEP1;
+volatile __UEP1bits_t __at (0xF4D) UEP1bits;
+
+__sfr __at (0xF4E) UEP2;
+volatile __UEP2bits_t __at (0xF4E) UEP2bits;
+
+__sfr __at (0xF4F) UEP3;
+volatile __UEP3bits_t __at (0xF4F) UEP3bits;
+
+__sfr __at (0xF50) UEP4;
+volatile __UEP4bits_t __at (0xF50) UEP4bits;
+
+__sfr __at (0xF51) UEP5;
+volatile __UEP5bits_t __at (0xF51) UEP5bits;
+
+__sfr __at (0xF52) UEP6;
+volatile __UEP6bits_t __at (0xF52) UEP6bits;
+
+__sfr __at (0xF53) UEP7;
+volatile __UEP7bits_t __at (0xF53) UEP7bits;
+
+__sfr __at (0xF54) UEP8;
+volatile __UEP8bits_t __at (0xF54) UEP8bits;
+
+__sfr __at (0xF55) UEP9;
+volatile __UEP9bits_t __at (0xF55) UEP9bits;
+
+__sfr __at (0xF56) UEP10;
+volatile __UEP10bits_t __at (0xF56) UEP10bits;
+
+__sfr __at (0xF57) UEP11;
+volatile __UEP11bits_t __at (0xF57) UEP11bits;
+
+__sfr __at (0xF58) UEP12;
+volatile __UEP12bits_t __at (0xF58) UEP12bits;
+
+__sfr __at (0xF59) UEP13;
+volatile __UEP13bits_t __at (0xF59) UEP13bits;
+
+__sfr __at (0xF5A) UEP14;
+volatile __UEP14bits_t __at (0xF5A) UEP14bits;
+
+__sfr __at (0xF5B) UEP15;
+volatile __UEP15bits_t __at (0xF5B) UEP15bits;
+
+__sfr __at (0xF5C) UIE;
+volatile __UIEbits_t __at (0xF5C) UIEbits;
+
+__sfr __at (0xF5D) UEIE;
+volatile __UEIEbits_t __at (0xF5D) UEIEbits;
+
+__sfr __at (0xF5E) UADDR;
+volatile __UADDRbits_t __at (0xF5E) UADDRbits;
+
+__sfr __at (0xF5F) UCFG;
+volatile __UCFGbits_t __at (0xF5F) UCFGbits;
+
+__sfr __at (0xF60) UFRM;
+
+__sfr __at (0xF60) UFRML;
+volatile __UFRMLbits_t __at (0xF60) UFRMLbits;
+
+__sfr __at (0xF61) UFRMH;
+volatile __UFRMHbits_t __at (0xF61) UFRMHbits;
+
+__sfr __at (0xF62) UIR;
+volatile __UIRbits_t __at (0xF62) UIRbits;
+
+__sfr __at (0xF63) UEIR;
+volatile __UEIRbits_t __at (0xF63) UEIRbits;
+
+__sfr __at (0xF64) USTAT;
+volatile __USTATbits_t __at (0xF64) USTATbits;
+
+__sfr __at (0xF65) UCON;
+volatile __UCONbits_t __at (0xF65) UCONbits;
+
+__sfr __at (0xF66) PMDIN1;
+
+__sfr __at (0xF66) PMDIN1L;
+
+__sfr __at (0xF67) PMDIN1H;
+
+__sfr __at (0xF68) PMADDR;
+
+__sfr __at (0xF68) PMADDRL;
+
+__sfr __at (0xF68) PMDOUT1;
+
+__sfr __at (0xF68) PMDOUT1L;
+
+__sfr __at (0xF69) PMADDRH;
+volatile __PMADDRHbits_t __at (0xF69) PMADDRHbits;
+
+__sfr __at (0xF69) PMDOUT1H;
+
+__sfr __at (0xF6A) CMSTAT;
+volatile __CMSTATbits_t __at (0xF6A) CMSTATbits;
+
+__sfr __at (0xF6A) CMSTATUS;
+volatile __CMSTATUSbits_t __at (0xF6A) CMSTATUSbits;
+
+__sfr __at (0xF6B) SSP2CON2;
+volatile __SSP2CON2bits_t __at (0xF6B) SSP2CON2bits;
+
+__sfr __at (0xF6C) SSP2CON1;
+volatile __SSP2CON1bits_t __at (0xF6C) SSP2CON1bits;
+
+__sfr __at (0xF6D) SSP2STAT;
+volatile __SSP2STATbits_t __at (0xF6D) SSP2STATbits;
+
+__sfr __at (0xF6E) SSP2ADD;
+
+__sfr __at (0xF6E) SSP2MSK;
+volatile __SSP2MSKbits_t __at (0xF6E) SSP2MSKbits;
+
+__sfr __at (0xF6F) SSP2BUF;
+
+__sfr __at (0xF70) CCP5CON;
+volatile __CCP5CONbits_t __at (0xF70) CCP5CONbits;
+
+__sfr __at (0xF71) CCPR5;
+
+__sfr __at (0xF71) CCPR5L;
+
+__sfr __at (0xF72) CCPR5H;
+
+__sfr __at (0xF73) CCP4CON;
+volatile __CCP4CONbits_t __at (0xF73) CCP4CONbits;
+
+__sfr __at (0xF74) CCPR4;
+
+__sfr __at (0xF74) CCPR4L;
+
+__sfr __at (0xF75) CCPR4H;
+
+__sfr __at (0xF76) T4CON;
+volatile __T4CONbits_t __at (0xF76) T4CONbits;
+
+__sfr __at (0xF77) CVRCON;
+volatile __CVRCONbits_t __at (0xF77) CVRCONbits;
+
+__sfr __at (0xF77) PR4;
+
+__sfr __at (0xF78) TMR4;
+
+__sfr __at (0xF79) T3CON;
+volatile __T3CONbits_t __at (0xF79) T3CONbits;
+
+__sfr __at (0xF7A) TMR3L;
+
+__sfr __at (0xF7B) TMR3H;
+
+__sfr __at (0xF7C) BAUDCON2;
+volatile __BAUDCON2bits_t __at (0xF7C) BAUDCON2bits;
+
+__sfr __at (0xF7D) SPBRGH2;
+
+__sfr __at (0xF7E) BAUDCON;
+volatile __BAUDCONbits_t __at (0xF7E) BAUDCONbits;
+
+__sfr __at (0xF7E) BAUDCON1;
+volatile __BAUDCON1bits_t __at (0xF7E) BAUDCON1bits;
+
+__sfr __at (0xF7F) SPBRGH;
+
+__sfr __at (0xF7F) SPBRGH1;
+
+__sfr __at (0xF80) PORTA;
+volatile __PORTAbits_t __at (0xF80) PORTAbits;
+
+__sfr __at (0xF81) PORTB;
+volatile __PORTBbits_t __at (0xF81) PORTBbits;
+
+__sfr __at (0xF82) PORTC;
+volatile __PORTCbits_t __at (0xF82) PORTCbits;
+
+__sfr __at (0xF83) PORTD;
+volatile __PORTDbits_t __at (0xF83) PORTDbits;
+
+__sfr __at (0xF84) PORTE;
+volatile __PORTEbits_t __at (0xF84) PORTEbits;
+
+__sfr __at (0xF85) PORTF;
+volatile __PORTFbits_t __at (0xF85) PORTFbits;
+
+__sfr __at (0xF86) PORTG;
+volatile __PORTGbits_t __at (0xF86) PORTGbits;
+
+__sfr __at (0xF89) LATA;
+volatile __LATAbits_t __at (0xF89) LATAbits;
+
+__sfr __at (0xF8A) LATB;
+volatile __LATBbits_t __at (0xF8A) LATBbits;
+
+__sfr __at (0xF8B) LATC;
+volatile __LATCbits_t __at (0xF8B) LATCbits;
+
+__sfr __at (0xF8C) LATD;
+volatile __LATDbits_t __at (0xF8C) LATDbits;
+
+__sfr __at (0xF8D) LATE;
+volatile __LATEbits_t __at (0xF8D) LATEbits;
+
+__sfr __at (0xF8E) LATF;
+volatile __LATFbits_t __at (0xF8E) LATFbits;
+
+__sfr __at (0xF8F) LATG;
+volatile __LATGbits_t __at (0xF8F) LATGbits;
+
+__sfr __at (0xF92) DDRA;
+volatile __DDRAbits_t __at (0xF92) DDRAbits;
+
+__sfr __at (0xF92) TRISA;
+volatile __TRISAbits_t __at (0xF92) TRISAbits;
+
+__sfr __at (0xF93) DDRB;
+volatile __DDRBbits_t __at (0xF93) DDRBbits;
+
+__sfr __at (0xF93) TRISB;
+volatile __TRISBbits_t __at (0xF93) TRISBbits;
+
+__sfr __at (0xF94) DDRC;
+volatile __DDRCbits_t __at (0xF94) DDRCbits;
+
+__sfr __at (0xF94) TRISC;
+volatile __TRISCbits_t __at (0xF94) TRISCbits;
+
+__sfr __at (0xF95) DDRD;
+volatile __DDRDbits_t __at (0xF95) DDRDbits;
+
+__sfr __at (0xF95) TRISD;
+volatile __TRISDbits_t __at (0xF95) TRISDbits;
+
+__sfr __at (0xF96) DDRE;
+volatile __DDREbits_t __at (0xF96) DDREbits;
+
+__sfr __at (0xF96) TRISE;
+volatile __TRISEbits_t __at (0xF96) TRISEbits;
+
+__sfr __at (0xF97) DDRF;
+volatile __DDRFbits_t __at (0xF97) DDRFbits;
+
+__sfr __at (0xF97) TRISF;
+volatile __TRISFbits_t __at (0xF97) TRISFbits;
+
+__sfr __at (0xF98) DDRG;
+volatile __DDRGbits_t __at (0xF98) DDRGbits;
+
+__sfr __at (0xF98) TRISG;
+volatile __TRISGbits_t __at (0xF98) TRISGbits;
+
+__sfr __at (0xF9B) OSCTUNE;
+volatile __OSCTUNEbits_t __at (0xF9B) OSCTUNEbits;
+
+__sfr __at (0xF9C) RCSTA2;
+volatile __RCSTA2bits_t __at (0xF9C) RCSTA2bits;
+
+__sfr __at (0xF9D) PIE1;
+volatile __PIE1bits_t __at (0xF9D) PIE1bits;
+
+__sfr __at (0xF9E) PIR1;
+volatile __PIR1bits_t __at (0xF9E) PIR1bits;
+
+__sfr __at (0xF9F) IPR1;
+volatile __IPR1bits_t __at (0xF9F) IPR1bits;
+
+__sfr __at (0xFA0) PIE2;
+volatile __PIE2bits_t __at (0xFA0) PIE2bits;
+
+__sfr __at (0xFA1) PIR2;
+volatile __PIR2bits_t __at (0xFA1) PIR2bits;
+
+__sfr __at (0xFA2) IPR2;
+volatile __IPR2bits_t __at (0xFA2) IPR2bits;
+
+__sfr __at (0xFA3) PIE3;
+volatile __PIE3bits_t __at (0xFA3) PIE3bits;
+
+__sfr __at (0xFA4) PIR3;
+volatile __PIR3bits_t __at (0xFA4) PIR3bits;
+
+__sfr __at (0xFA5) IPR3;
+volatile __IPR3bits_t __at (0xFA5) IPR3bits;
+
+__sfr __at (0xFA6) EECON1;
+volatile __EECON1bits_t __at (0xFA6) EECON1bits;
+
+__sfr __at (0xFA7) EECON2;
+
+__sfr __at (0xFA8) TXSTA2;
+volatile __TXSTA2bits_t __at (0xFA8) TXSTA2bits;
+
+__sfr __at (0xFA9) TXREG2;
+
+__sfr __at (0xFAA) RCREG2;
+
+__sfr __at (0xFAB) SPBRG2;
+
+__sfr __at (0xFAC) RCSTA;
+volatile __RCSTAbits_t __at (0xFAC) RCSTAbits;
+
+__sfr __at (0xFAC) RCSTA1;
+volatile __RCSTA1bits_t __at (0xFAC) RCSTA1bits;
+
+__sfr __at (0xFAD) TXSTA;
+volatile __TXSTAbits_t __at (0xFAD) TXSTAbits;
+
+__sfr __at (0xFAD) TXSTA1;
+volatile __TXSTA1bits_t __at (0xFAD) TXSTA1bits;
+
+__sfr __at (0xFAE) TXREG;
+
+__sfr __at (0xFAE) TXREG1;
+
+__sfr __at (0xFAF) RCREG;
+
+__sfr __at (0xFAF) RCREG1;
+
+__sfr __at (0xFB0) SPBRG;
+
+__sfr __at (0xFB0) SPBRG1;
+
+__sfr __at (0xFB1) CCP3CON;
+volatile __CCP3CONbits_t __at (0xFB1) CCP3CONbits;
+
+__sfr __at (0xFB1) ECCP3CON;
+volatile __ECCP3CONbits_t __at (0xFB1) ECCP3CONbits;
+
+__sfr __at (0xFB2) CCPR3;
+
+__sfr __at (0xFB2) CCPR3L;
+
+__sfr __at (0xFB3) CCPR3H;
+
+__sfr __at (0xFB4) ECCP3DEL;
+volatile __ECCP3DELbits_t __at (0xFB4) ECCP3DELbits;
+
+__sfr __at (0xFB5) ECCP3AS;
+volatile __ECCP3ASbits_t __at (0xFB5) ECCP3ASbits;
+
+__sfr __at (0xFB6) CCP2CON;
+volatile __CCP2CONbits_t __at (0xFB6) CCP2CONbits;
+
+__sfr __at (0xFB6) ECCP2CON;
+volatile __ECCP2CONbits_t __at (0xFB6) ECCP2CONbits;
+
+__sfr __at (0xFB7) CCPR2;
+
+__sfr __at (0xFB7) CCPR2L;
+
+__sfr __at (0xFB8) CCPR2H;
+
+__sfr __at (0xFB9) ECCP2DEL;
+volatile __ECCP2DELbits_t __at (0xFB9) ECCP2DELbits;
+
+__sfr __at (0xFBA) ECCP2AS;
+volatile __ECCP2ASbits_t __at (0xFBA) ECCP2ASbits;
+
+__sfr __at (0xFBB) CCP1CON;
+volatile __CCP1CONbits_t __at (0xFBB) CCP1CONbits;
+
+__sfr __at (0xFBB) ECCP1CON;
+volatile __ECCP1CONbits_t __at (0xFBB) ECCP1CONbits;
+
+__sfr __at (0xFBC) CCPR1;
+
+__sfr __at (0xFBC) CCPR1L;
+
+__sfr __at (0xFBD) CCPR1H;
+
+__sfr __at (0xFBE) ECCP1DEL;
+volatile __ECCP1DELbits_t __at (0xFBE) ECCP1DELbits;
+
+__sfr __at (0xFBF) ECCP1AS;
+volatile __ECCP1ASbits_t __at (0xFBF) ECCP1ASbits;
+
+__sfr __at (0xFC0) WDTCON;
+volatile __WDTCONbits_t __at (0xFC0) WDTCONbits;
+
+__sfr __at (0xFC1) ADCON1;
+volatile __ADCON1bits_t __at (0xFC1) ADCON1bits;
+
+__sfr __at (0xFC1) ANCON0;
+volatile __ANCON0bits_t __at (0xFC1) ANCON0bits;
+
+__sfr __at (0xFC2) ADCON0;
+volatile __ADCON0bits_t __at (0xFC2) ADCON0bits;
+
+__sfr __at (0xFC2) ANCON1;
+volatile __ANCON1bits_t __at (0xFC2) ANCON1bits;
+
+__sfr __at (0xFC3) ADRES;
+
+__sfr __at (0xFC3) ADRESL;
+
+__sfr __at (0xFC4) ADRESH;
+
+__sfr __at (0xFC5) SSP1CON2;
+volatile __SSP1CON2bits_t __at (0xFC5) SSP1CON2bits;
+
+__sfr __at (0xFC5) SSPCON2;
+volatile __SSPCON2bits_t __at (0xFC5) SSPCON2bits;
+
+__sfr __at (0xFC6) SSP1CON1;
+volatile __SSP1CON1bits_t __at (0xFC6) SSP1CON1bits;
+
+__sfr __at (0xFC6) SSPCON1;
+volatile __SSPCON1bits_t __at (0xFC6) SSPCON1bits;
+
+__sfr __at (0xFC7) SSP1STAT;
+volatile __SSP1STATbits_t __at (0xFC7) SSP1STATbits;
+
+__sfr __at (0xFC7) SSPSTAT;
+volatile __SSPSTATbits_t __at (0xFC7) SSPSTATbits;
+
+__sfr __at (0xFC8) SSP1ADD;
+
+__sfr __at (0xFC8) SSP1MSK;
+
+__sfr __at (0xFC8) SSPADD;
+
+__sfr __at (0xFC9) SSP1BUF;
+
+__sfr __at (0xFC9) SSPBUF;
+
+__sfr __at (0xFCA) T2CON;
+volatile __T2CONbits_t __at (0xFCA) T2CONbits;
+
+__sfr __at (0xFCB) PR2;
+
+__sfr __at (0xFCC) PADCFG1;
+volatile __PADCFG1bits_t __at (0xFCC) PADCFG1bits;
+
+__sfr __at (0xFCC) TMR2;
+
+__sfr __at (0xFCD) ODCON3;
+volatile __ODCON3bits_t __at (0xFCD) ODCON3bits;
+
+__sfr __at (0xFCD) T1CON;
+volatile __T1CONbits_t __at (0xFCD) T1CONbits;
+
+__sfr __at (0xFCE) ODCON2;
+volatile __ODCON2bits_t __at (0xFCE) ODCON2bits;
+
+__sfr __at (0xFCE) TMR1L;
+
+__sfr __at (0xFCF) ODCON1;
+volatile __ODCON1bits_t __at (0xFCF) ODCON1bits;
+
+__sfr __at (0xFCF) TMR1H;
+
+__sfr __at (0xFD0) RCON;
+volatile __RCONbits_t __at (0xFD0) RCONbits;
+
+__sfr __at (0xFD1) CM2CON;
+volatile __CM2CONbits_t __at (0xFD1) CM2CONbits;
+
+__sfr __at (0xFD1) CM2CON1;
+volatile __CM2CON1bits_t __at (0xFD1) CM2CON1bits;
+
+__sfr __at (0xFD2) CM1CON;
+volatile __CM1CONbits_t __at (0xFD2) CM1CONbits;
+
+__sfr __at (0xFD2) CM1CON1;
+volatile __CM1CON1bits_t __at (0xFD2) CM1CON1bits;
+
+__sfr __at (0xFD3) OSCCON;
+volatile __OSCCONbits_t __at (0xFD3) OSCCONbits;
+
+__sfr __at (0xFD3) REFOCON;
+volatile __REFOCONbits_t __at (0xFD3) REFOCONbits;
+
+__sfr __at (0xFD5) T0CON;
+volatile __T0CONbits_t __at (0xFD5) T0CONbits;
+
+__sfr __at (0xFD6) TMR0L;
+
+__sfr __at (0xFD7) TMR0H;
+
+__sfr __at (0xFD8) STATUS;
+volatile __STATUSbits_t __at (0xFD8) STATUSbits;
+
+__sfr __at (0xFD9) FSR2L;
+
+__sfr __at (0xFDA) FSR2H;
+
+__sfr __at (0xFDB) PLUSW2;
+
+__sfr __at (0xFDC) PREINC2;
+
+__sfr __at (0xFDD) POSTDEC2;
+
+__sfr __at (0xFDE) POSTINC2;
+
+__sfr __at (0xFDF) INDF2;
+
+__sfr __at (0xFE0) BSR;
+
+__sfr __at (0xFE1) FSR1L;
+
+__sfr __at (0xFE2) FSR1H;
+
+__sfr __at (0xFE3) PLUSW1;
+
+__sfr __at (0xFE4) PREINC1;
+
+__sfr __at (0xFE5) POSTDEC1;
+
+__sfr __at (0xFE6) POSTINC1;
+
+__sfr __at (0xFE7) INDF1;
+
+__sfr __at (0xFE8) WREG;
+
+__sfr __at (0xFE9) FSR0L;
+
+__sfr __at (0xFEA) FSR0H;
+
+__sfr __at (0xFEB) PLUSW0;
+
+__sfr __at (0xFEC) PREINC0;
+
+__sfr __at (0xFED) POSTDEC0;
+
+__sfr __at (0xFEE) POSTINC0;
+
+__sfr __at (0xFEF) INDF0;
+
+__sfr __at (0xFF0) INTCON3;
+volatile __INTCON3bits_t __at (0xFF0) INTCON3bits;
+
+__sfr __at (0xFF1) INTCON2;
+volatile __INTCON2bits_t __at (0xFF1) INTCON2bits;
+
+__sfr __at (0xFF2) INTCON;
+volatile __INTCONbits_t __at (0xFF2) INTCONbits;
+
+__sfr __at (0xFF3) PROD;
+
+__sfr __at (0xFF3) PRODL;
+
+__sfr __at (0xFF4) PRODH;
+
+__sfr __at (0xFF5) TABLAT;
+
+__sfr __at (0xFF6) TBLPTR;
+
+__sfr __at (0xFF6) TBLPTRL;
+
+__sfr __at (0xFF7) TBLPTRH;
+
+__sfr __at (0xFF8) TBLPTRU;
+
+__sfr __at (0xFF9) PC;
+
+__sfr __at (0xFF9) PCL;
+
+__sfr __at (0xFFA) PCLATH;
+
+__sfr __at (0xFFB) PCLATU;
+
+__sfr __at (0xFFC) STKPTR;
+volatile __STKPTRbits_t __at (0xFFC) STKPTRbits;
+
+__sfr __at (0xFFD) TOS;
+
+__sfr __at (0xFFD) TOSL;
+
+__sfr __at (0xFFE) TOSH;
+
+__sfr __at (0xFFF) TOSU;
+
+
--- /dev/null
+/*
+ * pic18f85j50.c - device specific definitions
+ */
+
+#include <pic18f85j50.h>
+#include "pic18f87j50.c"
+
--- /dev/null
+/*
+ * pic18f86j50.c - device specific definitions
+ */
+
+#include <pic18f86j50.h>
+#include "pic18f87j50.c"
+
--- /dev/null
+/*
+ * pic18f86j55.c - device specific definitions
+ */
+
+#include <pic18f86j55.h>
+#include "pic18f87j50.c"
+
--- /dev/null
+/*
+ * pic18f87j50.c - device specific definitions
+ *
+ * This file is part of the GNU PIC library for SDCC,
+ * originally devised by Vangelis Rokas <vrokas AT otenet.gr>
+ *
+ * It has been automatically generated by inc2h-pic16.pl,
+ * (c) 2007 by Raphael Neider <rneider AT web.de>
+ */
+
+#include <pic18f87j50.h>
+
+
+__sfr __at (0xF40) PMSTAT;
+
+__sfr __at (0xF40) PMSTATL;
+volatile __PMSTATLbits_t __at (0xF40) PMSTATLbits;
+
+__sfr __at (0xF41) PMSTATH;
+volatile __PMSTATHbits_t __at (0xF41) PMSTATHbits;
+
+__sfr __at (0xF42) PMEL;
+volatile __PMELbits_t __at (0xF42) PMELbits;
+
+__sfr __at (0xF42) PMEN;
+
+__sfr __at (0xF43) PMEH;
+volatile __PMEHbits_t __at (0xF43) PMEHbits;
+
+__sfr __at (0xF44) PMDIN2;
+
+__sfr __at (0xF44) PMDIN2L;
+
+__sfr __at (0xF45) PMDIN2H;
+
+__sfr __at (0xF46) PMDOUT2;
+
+__sfr __at (0xF46) PMDOUT2L;
+
+__sfr __at (0xF47) PMDOUT2H;
+
+__sfr __at (0xF48) PMMODE;
+
+__sfr __at (0xF48) PMMODEL;
+volatile __PMMODELbits_t __at (0xF48) PMMODELbits;
+
+__sfr __at (0xF49) PMMODEH;
+volatile __PMMODEHbits_t __at (0xF49) PMMODEHbits;
+
+__sfr __at (0xF4A) PMCON;
+
+__sfr __at (0xF4A) PMCONL;
+volatile __PMCONLbits_t __at (0xF4A) PMCONLbits;
+
+__sfr __at (0xF4B) PMCONH;
+volatile __PMCONHbits_t __at (0xF4B) PMCONHbits;
+
+__sfr __at (0xF4C) UEP0;
+volatile __UEP0bits_t __at (0xF4C) UEP0bits;
+
+__sfr __at (0xF4D) UEP1;
+volatile __UEP1bits_t __at (0xF4D) UEP1bits;
+
+__sfr __at (0xF4E) UEP2;
+volatile __UEP2bits_t __at (0xF4E) UEP2bits;
+
+__sfr __at (0xF4F) UEP3;
+volatile __UEP3bits_t __at (0xF4F) UEP3bits;
+
+__sfr __at (0xF50) UEP4;
+volatile __UEP4bits_t __at (0xF50) UEP4bits;
+
+__sfr __at (0xF51) UEP5;
+volatile __UEP5bits_t __at (0xF51) UEP5bits;
+
+__sfr __at (0xF52) UEP6;
+volatile __UEP6bits_t __at (0xF52) UEP6bits;
+
+__sfr __at (0xF53) UEP7;
+volatile __UEP7bits_t __at (0xF53) UEP7bits;
+
+__sfr __at (0xF54) UEP8;
+volatile __UEP8bits_t __at (0xF54) UEP8bits;
+
+__sfr __at (0xF55) UEP9;
+volatile __UEP9bits_t __at (0xF55) UEP9bits;
+
+__sfr __at (0xF56) UEP10;
+volatile __UEP10bits_t __at (0xF56) UEP10bits;
+
+__sfr __at (0xF57) UEP11;
+volatile __UEP11bits_t __at (0xF57) UEP11bits;
+
+__sfr __at (0xF58) UEP12;
+volatile __UEP12bits_t __at (0xF58) UEP12bits;
+
+__sfr __at (0xF59) UEP13;
+volatile __UEP13bits_t __at (0xF59) UEP13bits;
+
+__sfr __at (0xF5A) UEP14;
+volatile __UEP14bits_t __at (0xF5A) UEP14bits;
+
+__sfr __at (0xF5B) UEP15;
+volatile __UEP15bits_t __at (0xF5B) UEP15bits;
+
+__sfr __at (0xF5C) UIE;
+volatile __UIEbits_t __at (0xF5C) UIEbits;
+
+__sfr __at (0xF5D) UEIE;
+volatile __UEIEbits_t __at (0xF5D) UEIEbits;
+
+__sfr __at (0xF5E) UADDR;
+volatile __UADDRbits_t __at (0xF5E) UADDRbits;
+
+__sfr __at (0xF5F) UCFG;
+volatile __UCFGbits_t __at (0xF5F) UCFGbits;
+
+__sfr __at (0xF60) UFRM;
+
+__sfr __at (0xF60) UFRML;
+volatile __UFRMLbits_t __at (0xF60) UFRMLbits;
+
+__sfr __at (0xF61) UFRMH;
+volatile __UFRMHbits_t __at (0xF61) UFRMHbits;
+
+__sfr __at (0xF62) UIR;
+volatile __UIRbits_t __at (0xF62) UIRbits;
+
+__sfr __at (0xF63) UEIR;
+volatile __UEIRbits_t __at (0xF63) UEIRbits;
+
+__sfr __at (0xF64) USTAT;
+volatile __USTATbits_t __at (0xF64) USTATbits;
+
+__sfr __at (0xF65) UCON;
+volatile __UCONbits_t __at (0xF65) UCONbits;
+
+__sfr __at (0xF66) PMDIN1;
+
+__sfr __at (0xF66) PMDIN1L;
+
+__sfr __at (0xF67) PMDIN1H;
+
+__sfr __at (0xF68) PMADDR;
+
+__sfr __at (0xF68) PMADDRL;
+
+__sfr __at (0xF68) PMDOUT1;
+
+__sfr __at (0xF68) PMDOUT1L;
+
+__sfr __at (0xF69) PMADDRH;
+volatile __PMADDRHbits_t __at (0xF69) PMADDRHbits;
+
+__sfr __at (0xF69) PMDOUT1H;
+
+__sfr __at (0xF6A) CMSTAT;
+volatile __CMSTATbits_t __at (0xF6A) CMSTATbits;
+
+__sfr __at (0xF6A) CMSTATUS;
+volatile __CMSTATUSbits_t __at (0xF6A) CMSTATUSbits;
+
+__sfr __at (0xF6B) SSP2CON2;
+volatile __SSP2CON2bits_t __at (0xF6B) SSP2CON2bits;
+
+__sfr __at (0xF6C) SSP2CON1;
+volatile __SSP2CON1bits_t __at (0xF6C) SSP2CON1bits;
+
+__sfr __at (0xF6D) SSP2STAT;
+volatile __SSP2STATbits_t __at (0xF6D) SSP2STATbits;
+
+__sfr __at (0xF6E) SSP2ADD;
+
+__sfr __at (0xF6E) SSP2MSK;
+volatile __SSP2MSKbits_t __at (0xF6E) SSP2MSKbits;
+
+__sfr __at (0xF6F) SSP2BUF;
+
+__sfr __at (0xF70) CCP5CON;
+volatile __CCP5CONbits_t __at (0xF70) CCP5CONbits;
+
+__sfr __at (0xF71) CCPR5;
+
+__sfr __at (0xF71) CCPR5L;
+
+__sfr __at (0xF72) CCPR5H;
+
+__sfr __at (0xF73) CCP4CON;
+volatile __CCP4CONbits_t __at (0xF73) CCP4CONbits;
+
+__sfr __at (0xF74) CCPR4;
+
+__sfr __at (0xF74) CCPR4L;
+
+__sfr __at (0xF75) CCPR4H;
+
+__sfr __at (0xF76) T4CON;
+volatile __T4CONbits_t __at (0xF76) T4CONbits;
+
+__sfr __at (0xF77) CVRCON;
+volatile __CVRCONbits_t __at (0xF77) CVRCONbits;
+
+__sfr __at (0xF77) PR4;
+
+__sfr __at (0xF78) TMR4;
+
+__sfr __at (0xF79) T3CON;
+volatile __T3CONbits_t __at (0xF79) T3CONbits;
+
+__sfr __at (0xF7A) TMR3L;
+
+__sfr __at (0xF7B) TMR3H;
+
+__sfr __at (0xF7C) BAUDCON2;
+volatile __BAUDCON2bits_t __at (0xF7C) BAUDCON2bits;
+
+__sfr __at (0xF7D) SPBRGH2;
+
+__sfr __at (0xF7E) BAUDCON;
+volatile __BAUDCONbits_t __at (0xF7E) BAUDCONbits;
+
+__sfr __at (0xF7E) BAUDCON1;
+volatile __BAUDCON1bits_t __at (0xF7E) BAUDCON1bits;
+
+__sfr __at (0xF7F) SPBRGH;
+
+__sfr __at (0xF7F) SPBRGH1;
+
+__sfr __at (0xF80) PORTA;
+volatile __PORTAbits_t __at (0xF80) PORTAbits;
+
+__sfr __at (0xF81) PORTB;
+volatile __PORTBbits_t __at (0xF81) PORTBbits;
+
+__sfr __at (0xF82) PORTC;
+volatile __PORTCbits_t __at (0xF82) PORTCbits;
+
+__sfr __at (0xF83) PORTD;
+volatile __PORTDbits_t __at (0xF83) PORTDbits;
+
+__sfr __at (0xF84) PORTE;
+volatile __PORTEbits_t __at (0xF84) PORTEbits;
+
+__sfr __at (0xF85) PORTF;
+volatile __PORTFbits_t __at (0xF85) PORTFbits;
+
+__sfr __at (0xF86) PORTG;
+volatile __PORTGbits_t __at (0xF86) PORTGbits;
+
+__sfr __at (0xF87) PORTH;
+volatile __PORTHbits_t __at (0xF87) PORTHbits;
+
+__sfr __at (0xF88) PORTJ;
+volatile __PORTJbits_t __at (0xF88) PORTJbits;
+
+__sfr __at (0xF89) LATA;
+volatile __LATAbits_t __at (0xF89) LATAbits;
+
+__sfr __at (0xF8A) LATB;
+volatile __LATBbits_t __at (0xF8A) LATBbits;
+
+__sfr __at (0xF8B) LATC;
+volatile __LATCbits_t __at (0xF8B) LATCbits;
+
+__sfr __at (0xF8C) LATD;
+volatile __LATDbits_t __at (0xF8C) LATDbits;
+
+__sfr __at (0xF8D) LATE;
+volatile __LATEbits_t __at (0xF8D) LATEbits;
+
+__sfr __at (0xF8E) LATF;
+volatile __LATFbits_t __at (0xF8E) LATFbits;
+
+__sfr __at (0xF8F) LATG;
+volatile __LATGbits_t __at (0xF8F) LATGbits;
+
+__sfr __at (0xF90) LATH;
+volatile __LATHbits_t __at (0xF90) LATHbits;
+
+__sfr __at (0xF91) LATJ;
+volatile __LATJbits_t __at (0xF91) LATJbits;
+
+__sfr __at (0xF92) DDRA;
+volatile __DDRAbits_t __at (0xF92) DDRAbits;
+
+__sfr __at (0xF92) TRISA;
+volatile __TRISAbits_t __at (0xF92) TRISAbits;
+
+__sfr __at (0xF93) DDRB;
+volatile __DDRBbits_t __at (0xF93) DDRBbits;
+
+__sfr __at (0xF93) TRISB;
+volatile __TRISBbits_t __at (0xF93) TRISBbits;
+
+__sfr __at (0xF94) DDRC;
+volatile __DDRCbits_t __at (0xF94) DDRCbits;
+
+__sfr __at (0xF94) TRISC;
+volatile __TRISCbits_t __at (0xF94) TRISCbits;
+
+__sfr __at (0xF95) DDRD;
+volatile __DDRDbits_t __at (0xF95) DDRDbits;
+
+__sfr __at (0xF95) TRISD;
+volatile __TRISDbits_t __at (0xF95) TRISDbits;
+
+__sfr __at (0xF96) DDRE;
+volatile __DDREbits_t __at (0xF96) DDREbits;
+
+__sfr __at (0xF96) TRISE;
+volatile __TRISEbits_t __at (0xF96) TRISEbits;
+
+__sfr __at (0xF97) DDRF;
+volatile __DDRFbits_t __at (0xF97) DDRFbits;
+
+__sfr __at (0xF97) TRISF;
+volatile __TRISFbits_t __at (0xF97) TRISFbits;
+
+__sfr __at (0xF98) DDRG;
+volatile __DDRGbits_t __at (0xF98) DDRGbits;
+
+__sfr __at (0xF98) TRISG;
+volatile __TRISGbits_t __at (0xF98) TRISGbits;
+
+__sfr __at (0xF99) DDRH;
+volatile __DDRHbits_t __at (0xF99) DDRHbits;
+
+__sfr __at (0xF99) TRISH;
+volatile __TRISHbits_t __at (0xF99) TRISHbits;
+
+__sfr __at (0xF9A) DDRJ;
+volatile __DDRJbits_t __at (0xF9A) DDRJbits;
+
+__sfr __at (0xF9A) TRISJ;
+volatile __TRISJbits_t __at (0xF9A) TRISJbits;
+
+__sfr __at (0xF9B) OSCTUNE;
+volatile __OSCTUNEbits_t __at (0xF9B) OSCTUNEbits;
+
+__sfr __at (0xF9C) RCSTA2;
+volatile __RCSTA2bits_t __at (0xF9C) RCSTA2bits;
+
+__sfr __at (0xF9D) PIE1;
+volatile __PIE1bits_t __at (0xF9D) PIE1bits;
+
+__sfr __at (0xF9E) PIR1;
+volatile __PIR1bits_t __at (0xF9E) PIR1bits;
+
+__sfr __at (0xF9F) IPR1;
+volatile __IPR1bits_t __at (0xF9F) IPR1bits;
+
+__sfr __at (0xFA0) PIE2;
+volatile __PIE2bits_t __at (0xFA0) PIE2bits;
+
+__sfr __at (0xFA1) PIR2;
+volatile __PIR2bits_t __at (0xFA1) PIR2bits;
+
+__sfr __at (0xFA2) IPR2;
+volatile __IPR2bits_t __at (0xFA2) IPR2bits;
+
+__sfr __at (0xFA3) PIE3;
+volatile __PIE3bits_t __at (0xFA3) PIE3bits;
+
+__sfr __at (0xFA4) PIR3;
+volatile __PIR3bits_t __at (0xFA4) PIR3bits;
+
+__sfr __at (0xFA5) IPR3;
+volatile __IPR3bits_t __at (0xFA5) IPR3bits;
+
+__sfr __at (0xFA6) EECON1;
+volatile __EECON1bits_t __at (0xFA6) EECON1bits;
+
+__sfr __at (0xFA7) EECON2;
+
+__sfr __at (0xFA8) TXSTA2;
+volatile __TXSTA2bits_t __at (0xFA8) TXSTA2bits;
+
+__sfr __at (0xFA9) TXREG2;
+
+__sfr __at (0xFAA) RCREG2;
+
+__sfr __at (0xFAB) SPBRG2;
+
+__sfr __at (0xFAC) RCSTA;
+volatile __RCSTAbits_t __at (0xFAC) RCSTAbits;
+
+__sfr __at (0xFAC) RCSTA1;
+volatile __RCSTA1bits_t __at (0xFAC) RCSTA1bits;
+
+__sfr __at (0xFAD) TXSTA;
+volatile __TXSTAbits_t __at (0xFAD) TXSTAbits;
+
+__sfr __at (0xFAD) TXSTA1;
+volatile __TXSTA1bits_t __at (0xFAD) TXSTA1bits;
+
+__sfr __at (0xFAE) TXREG;
+
+__sfr __at (0xFAE) TXREG1;
+
+__sfr __at (0xFAF) RCREG;
+
+__sfr __at (0xFAF) RCREG1;
+
+__sfr __at (0xFB0) SPBRG;
+
+__sfr __at (0xFB0) SPBRG1;
+
+__sfr __at (0xFB1) CCP3CON;
+volatile __CCP3CONbits_t __at (0xFB1) CCP3CONbits;
+
+__sfr __at (0xFB1) ECCP3CON;
+volatile __ECCP3CONbits_t __at (0xFB1) ECCP3CONbits;
+
+__sfr __at (0xFB2) CCPR3;
+
+__sfr __at (0xFB2) CCPR3L;
+
+__sfr __at (0xFB3) CCPR3H;
+
+__sfr __at (0xFB4) ECCP3DEL;
+volatile __ECCP3DELbits_t __at (0xFB4) ECCP3DELbits;
+
+__sfr __at (0xFB5) ECCP3AS;
+volatile __ECCP3ASbits_t __at (0xFB5) ECCP3ASbits;
+
+__sfr __at (0xFB6) CCP2CON;
+volatile __CCP2CONbits_t __at (0xFB6) CCP2CONbits;
+
+__sfr __at (0xFB6) ECCP2CON;
+volatile __ECCP2CONbits_t __at (0xFB6) ECCP2CONbits;
+
+__sfr __at (0xFB7) CCPR2;
+
+__sfr __at (0xFB7) CCPR2L;
+
+__sfr __at (0xFB8) CCPR2H;
+
+__sfr __at (0xFB9) ECCP2DEL;
+volatile __ECCP2DELbits_t __at (0xFB9) ECCP2DELbits;
+
+__sfr __at (0xFBA) ECCP2AS;
+volatile __ECCP2ASbits_t __at (0xFBA) ECCP2ASbits;
+
+__sfr __at (0xFBB) CCP1CON;
+volatile __CCP1CONbits_t __at (0xFBB) CCP1CONbits;
+
+__sfr __at (0xFBB) ECCP1CON;
+volatile __ECCP1CONbits_t __at (0xFBB) ECCP1CONbits;
+
+__sfr __at (0xFBC) CCPR1;
+
+__sfr __at (0xFBC) CCPR1L;
+
+__sfr __at (0xFBD) CCPR1H;
+
+__sfr __at (0xFBE) ECCP1DEL;
+volatile __ECCP1DELbits_t __at (0xFBE) ECCP1DELbits;
+
+__sfr __at (0xFBF) ECCP1AS;
+volatile __ECCP1ASbits_t __at (0xFBF) ECCP1ASbits;
+
+__sfr __at (0xFC0) WDTCON;
+volatile __WDTCONbits_t __at (0xFC0) WDTCONbits;
+
+__sfr __at (0xFC1) ADCON1;
+volatile __ADCON1bits_t __at (0xFC1) ADCON1bits;
+
+__sfr __at (0xFC1) ANCON0;
+volatile __ANCON0bits_t __at (0xFC1) ANCON0bits;
+
+__sfr __at (0xFC2) ADCON0;
+volatile __ADCON0bits_t __at (0xFC2) ADCON0bits;
+
+__sfr __at (0xFC2) ANCON1;
+volatile __ANCON1bits_t __at (0xFC2) ANCON1bits;
+
+__sfr __at (0xFC3) ADRES;
+
+__sfr __at (0xFC3) ADRESL;
+
+__sfr __at (0xFC4) ADRESH;
+
+__sfr __at (0xFC5) SSP1CON2;
+volatile __SSP1CON2bits_t __at (0xFC5) SSP1CON2bits;
+
+__sfr __at (0xFC5) SSPCON2;
+volatile __SSPCON2bits_t __at (0xFC5) SSPCON2bits;
+
+__sfr __at (0xFC6) SSP1CON1;
+volatile __SSP1CON1bits_t __at (0xFC6) SSP1CON1bits;
+
+__sfr __at (0xFC6) SSPCON1;
+volatile __SSPCON1bits_t __at (0xFC6) SSPCON1bits;
+
+__sfr __at (0xFC7) SSP1STAT;
+volatile __SSP1STATbits_t __at (0xFC7) SSP1STATbits;
+
+__sfr __at (0xFC7) SSPSTAT;
+volatile __SSPSTATbits_t __at (0xFC7) SSPSTATbits;
+
+__sfr __at (0xFC8) SSP1ADD;
+
+__sfr __at (0xFC8) SSP1MSK;
+
+__sfr __at (0xFC8) SSPADD;
+
+__sfr __at (0xFC9) SSP1BUF;
+
+__sfr __at (0xFC9) SSPBUF;
+
+__sfr __at (0xFCA) T2CON;
+volatile __T2CONbits_t __at (0xFCA) T2CONbits;
+
+__sfr __at (0xFCB) MEMCON;
+volatile __MEMCONbits_t __at (0xFCB) MEMCONbits;
+
+__sfr __at (0xFCB) PR2;
+
+__sfr __at (0xFCC) PADCFG1;
+volatile __PADCFG1bits_t __at (0xFCC) PADCFG1bits;
+
+__sfr __at (0xFCC) TMR2;
+
+__sfr __at (0xFCD) ODCON3;
+volatile __ODCON3bits_t __at (0xFCD) ODCON3bits;
+
+__sfr __at (0xFCD) T1CON;
+volatile __T1CONbits_t __at (0xFCD) T1CONbits;
+
+__sfr __at (0xFCE) ODCON2;
+volatile __ODCON2bits_t __at (0xFCE) ODCON2bits;
+
+__sfr __at (0xFCE) TMR1L;
+
+__sfr __at (0xFCF) ODCON1;
+volatile __ODCON1bits_t __at (0xFCF) ODCON1bits;
+
+__sfr __at (0xFCF) TMR1H;
+
+__sfr __at (0xFD0) RCON;
+volatile __RCONbits_t __at (0xFD0) RCONbits;
+
+__sfr __at (0xFD1) CM2CON;
+volatile __CM2CONbits_t __at (0xFD1) CM2CONbits;
+
+__sfr __at (0xFD1) CM2CON1;
+volatile __CM2CON1bits_t __at (0xFD1) CM2CON1bits;
+
+__sfr __at (0xFD2) CM1CON;
+volatile __CM1CONbits_t __at (0xFD2) CM1CONbits;
+
+__sfr __at (0xFD2) CM1CON1;
+volatile __CM1CON1bits_t __at (0xFD2) CM1CON1bits;
+
+__sfr __at (0xFD3) OSCCON;
+volatile __OSCCONbits_t __at (0xFD3) OSCCONbits;
+
+__sfr __at (0xFD3) REFOCON;
+volatile __REFOCONbits_t __at (0xFD3) REFOCONbits;
+
+__sfr __at (0xFD5) T0CON;
+volatile __T0CONbits_t __at (0xFD5) T0CONbits;
+
+__sfr __at (0xFD6) TMR0L;
+
+__sfr __at (0xFD7) TMR0H;
+
+__sfr __at (0xFD8) STATUS;
+volatile __STATUSbits_t __at (0xFD8) STATUSbits;
+
+__sfr __at (0xFD9) FSR2L;
+
+__sfr __at (0xFDA) FSR2H;
+
+__sfr __at (0xFDB) PLUSW2;
+
+__sfr __at (0xFDC) PREINC2;
+
+__sfr __at (0xFDD) POSTDEC2;
+
+__sfr __at (0xFDE) POSTINC2;
+
+__sfr __at (0xFDF) INDF2;
+
+__sfr __at (0xFE0) BSR;
+
+__sfr __at (0xFE1) FSR1L;
+
+__sfr __at (0xFE2) FSR1H;
+
+__sfr __at (0xFE3) PLUSW1;
+
+__sfr __at (0xFE4) PREINC1;
+
+__sfr __at (0xFE5) POSTDEC1;
+
+__sfr __at (0xFE6) POSTINC1;
+
+__sfr __at (0xFE7) INDF1;
+
+__sfr __at (0xFE8) WREG;
+
+__sfr __at (0xFE9) FSR0L;
+
+__sfr __at (0xFEA) FSR0H;
+
+__sfr __at (0xFEB) PLUSW0;
+
+__sfr __at (0xFEC) PREINC0;
+
+__sfr __at (0xFED) POSTDEC0;
+
+__sfr __at (0xFEE) POSTINC0;
+
+__sfr __at (0xFEF) INDF0;
+
+__sfr __at (0xFF0) INTCON3;
+volatile __INTCON3bits_t __at (0xFF0) INTCON3bits;
+
+__sfr __at (0xFF1) INTCON2;
+volatile __INTCON2bits_t __at (0xFF1) INTCON2bits;
+
+__sfr __at (0xFF2) INTCON;
+volatile __INTCONbits_t __at (0xFF2) INTCONbits;
+
+__sfr __at (0xFF3) PROD;
+
+__sfr __at (0xFF3) PRODL;
+
+__sfr __at (0xFF4) PRODH;
+
+__sfr __at (0xFF5) TABLAT;
+
+__sfr __at (0xFF6) TBLPTR;
+
+__sfr __at (0xFF6) TBLPTRL;
+
+__sfr __at (0xFF7) TBLPTRH;
+
+__sfr __at (0xFF8) TBLPTRU;
+
+__sfr __at (0xFF9) PC;
+
+__sfr __at (0xFF9) PCL;
+
+__sfr __at (0xFFA) PCLATH;
+
+__sfr __at (0xFFB) PCLATU;
+
+__sfr __at (0xFFC) STKPTR;
+volatile __STKPTRbits_t __at (0xFFC) STKPTRbits;
+
+__sfr __at (0xFFD) TOS;
+
+__sfr __at (0xFFD) TOSL;
+
+__sfr __at (0xFFE) TOSH;
+
+__sfr __at (0xFFF) TOSU;
+
+
libio18f2220_a_SOURCES += usart/usartd.c
libio18f2220_a_CFLAGS = -p18f2220 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f2221.a
+libio18f2221_a_SOURCES = dummy.c
+libio18f2221_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f2221_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f2221_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f2221_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f2221_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f2221_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f2221_a_SOURCES += i2c/i2cwrites.c
+libio18f2221_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f2221_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f2221_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f2221_a_SOURCES += usart/usartd.c
+libio18f2221_a_CFLAGS = -p18f2221 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f2320.a
libio18f2320_a_SOURCES = dummy.c
libio18f2320_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f2331_a_SOURCES += usart/usartd.c
libio18f2331_a_CFLAGS = -p18f2331 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f23k20.a
+libio18f23k20_a_SOURCES = dummy.c
+libio18f23k20_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f23k20_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f23k20_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f23k20_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f23k20_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f23k20_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f23k20_a_SOURCES += i2c/i2cwrites.c
+libio18f23k20_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f23k20_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f23k20_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f23k20_a_SOURCES += usart/usartd.c
+libio18f23k20_a_CFLAGS = -p18f23k20 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f2410.a
libio18f2410_a_SOURCES = dummy.c
libio18f2410_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f2420_a_SOURCES += usart/usartd.c
libio18f2420_a_CFLAGS = -p18f2420 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f2423.a
+libio18f2423_a_SOURCES = dummy.c
+libio18f2423_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f2423_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f2423_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f2423_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f2423_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f2423_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f2423_a_SOURCES += i2c/i2cwrites.c
+libio18f2423_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f2423_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f2423_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f2423_a_SOURCES += usart/usartd.c
+libio18f2423_a_CFLAGS = -p18f2423 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f2431.a
libio18f2431_a_SOURCES = dummy.c
libio18f2431_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
libio18f24j10_a_SOURCES += usart/usartd.c
libio18f24j10_a_CFLAGS = -p18f24j10 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f24k20.a
+libio18f24k20_a_SOURCES = dummy.c
+libio18f24k20_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f24k20_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f24k20_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f24k20_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f24k20_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f24k20_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f24k20_a_SOURCES += i2c/i2cwrites.c
+libio18f24k20_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f24k20_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f24k20_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f24k20_a_SOURCES += usart/usartd.c
+libio18f24k20_a_CFLAGS = -p18f24k20 $(AM_CFLAGS)
+
+lib_LIBRARIES += libio18f2510.a
+libio18f2510_a_SOURCES = dummy.c
+libio18f2510_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f2510_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f2510_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f2510_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f2510_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f2510_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f2510_a_SOURCES += i2c/i2cwrites.c
+libio18f2510_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f2510_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f2510_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f2510_a_SOURCES += usart/usartd.c
+libio18f2510_a_CFLAGS = -p18f2510 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f2515.a
libio18f2515_a_SOURCES = dummy.c
libio18f2515_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f25j10_a_SOURCES += usart/usartd.c
libio18f25j10_a_CFLAGS = -p18f25j10 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f25k20.a
+libio18f25k20_a_SOURCES = dummy.c
+libio18f25k20_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f25k20_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f25k20_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f25k20_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f25k20_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f25k20_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f25k20_a_SOURCES += i2c/i2cwrites.c
+libio18f25k20_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f25k20_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f25k20_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f25k20_a_SOURCES += usart/usartd.c
+libio18f25k20_a_CFLAGS = -p18f25k20 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f2610.a
libio18f2610_a_SOURCES = dummy.c
libio18f2610_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f2685_a_SOURCES += usart/usartd.c
libio18f2685_a_CFLAGS = -p18f2685 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f26k20.a
+libio18f26k20_a_SOURCES = dummy.c
+libio18f26k20_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f26k20_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f26k20_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f26k20_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f26k20_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f26k20_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f26k20_a_SOURCES += i2c/i2cwrites.c
+libio18f26k20_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f26k20_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f26k20_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f26k20_a_SOURCES += usart/usartd.c
+libio18f26k20_a_CFLAGS = -p18f26k20 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f4220.a
libio18f4220_a_SOURCES = dummy.c
libio18f4220_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f4220_a_SOURCES += usart/usartd.c
libio18f4220_a_CFLAGS = -p18f4220 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f4221.a
+libio18f4221_a_SOURCES = dummy.c
+libio18f4221_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f4221_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f4221_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f4221_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f4221_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f4221_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f4221_a_SOURCES += i2c/i2cwrites.c
+libio18f4221_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f4221_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f4221_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f4221_a_SOURCES += usart/usartd.c
+libio18f4221_a_CFLAGS = -p18f4221 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f4320.a
libio18f4320_a_SOURCES = dummy.c
libio18f4320_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f4331_a_SOURCES += usart/usartd.c
libio18f4331_a_CFLAGS = -p18f4331 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f43k20.a
+libio18f43k20_a_SOURCES = dummy.c
+libio18f43k20_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f43k20_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f43k20_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f43k20_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f43k20_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f43k20_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f43k20_a_SOURCES += i2c/i2cwrites.c
+libio18f43k20_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f43k20_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f43k20_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f43k20_a_SOURCES += usart/usartd.c
+libio18f43k20_a_CFLAGS = -p18f43k20 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f4410.a
libio18f4410_a_SOURCES = dummy.c
libio18f4410_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f4420_a_SOURCES += usart/usartd.c
libio18f4420_a_CFLAGS = -p18f4420 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f4423.a
+libio18f4423_a_SOURCES = dummy.c
+libio18f4423_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f4423_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f4423_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f4423_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f4423_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f4423_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f4423_a_SOURCES += i2c/i2cwrites.c
+libio18f4423_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f4423_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f4423_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f4423_a_SOURCES += usart/usartd.c
+libio18f4423_a_CFLAGS = -p18f4423 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f4431.a
libio18f4431_a_SOURCES = dummy.c
libio18f4431_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
libio18f44j10_a_SOURCES += usart/usartd.c
libio18f44j10_a_CFLAGS = -p18f44j10 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f44k20.a
+libio18f44k20_a_SOURCES = dummy.c
+libio18f44k20_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f44k20_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f44k20_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f44k20_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f44k20_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f44k20_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f44k20_a_SOURCES += i2c/i2cwrites.c
+libio18f44k20_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f44k20_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f44k20_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f44k20_a_SOURCES += usart/usartd.c
+libio18f44k20_a_CFLAGS = -p18f44k20 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f4510.a
libio18f4510_a_SOURCES = dummy.c
libio18f4510_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f4520_a_SOURCES += usart/usartd.c
libio18f4520_a_CFLAGS = -p18f4520 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f4523.a
+libio18f4523_a_SOURCES = dummy.c
+libio18f4523_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f4523_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f4523_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f4523_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f4523_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f4523_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f4523_a_SOURCES += i2c/i2cwrites.c
+libio18f4523_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f4523_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f4523_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f4523_a_SOURCES += usart/usartd.c
+libio18f4523_a_CFLAGS = -p18f4523 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f4525.a
libio18f4525_a_SOURCES = dummy.c
libio18f4525_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f45j10_a_SOURCES += usart/usartd.c
libio18f45j10_a_CFLAGS = -p18f45j10 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f45k20.a
+libio18f45k20_a_SOURCES = dummy.c
+libio18f45k20_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f45k20_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f45k20_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f45k20_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f45k20_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f45k20_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f45k20_a_SOURCES += i2c/i2cwrites.c
+libio18f45k20_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f45k20_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f45k20_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f45k20_a_SOURCES += usart/usartd.c
+libio18f45k20_a_CFLAGS = -p18f45k20 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f4610.a
libio18f4610_a_SOURCES = dummy.c
libio18f4610_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f4685_a_SOURCES += usart/usartd.c
libio18f4685_a_CFLAGS = -p18f4685 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f46k20.a
+libio18f46k20_a_SOURCES = dummy.c
+libio18f46k20_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f46k20_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f46k20_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f46k20_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f46k20_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f46k20_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f46k20_a_SOURCES += i2c/i2cwrites.c
+libio18f46k20_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f46k20_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f46k20_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f46k20_a_SOURCES += usart/usartd.c
+libio18f46k20_a_CFLAGS = -p18f46k20 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f6520.a
libio18f6520_a_SOURCES = dummy.c
libio18f6520_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f6585_a_SOURCES += usart/usartd.c
libio18f6585_a_CFLAGS = -p18f6585 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f65j50.a
+libio18f65j50_a_SOURCES = dummy.c
+libio18f65j50_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f65j50_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f65j50_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f65j50_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f65j50_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f65j50_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f65j50_a_SOURCES += i2c/i2cwrites.c
+libio18f65j50_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f65j50_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f65j50_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f65j50_a_SOURCES += usart/usartd.c
+libio18f65j50_a_CFLAGS = -p18f65j50 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f6620.a
libio18f6620_a_SOURCES = dummy.c
libio18f6620_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f6680_a_SOURCES += usart/usartd.c
libio18f6680_a_CFLAGS = -p18f6680 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f66j50.a
+libio18f66j50_a_SOURCES = dummy.c
+libio18f66j50_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f66j50_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f66j50_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f66j50_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f66j50_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f66j50_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f66j50_a_SOURCES += i2c/i2cwrites.c
+libio18f66j50_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f66j50_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f66j50_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f66j50_a_SOURCES += usart/usartd.c
+libio18f66j50_a_CFLAGS = -p18f66j50 $(AM_CFLAGS)
+
+lib_LIBRARIES += libio18f66j55.a
+libio18f66j55_a_SOURCES = dummy.c
+libio18f66j55_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f66j55_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f66j55_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f66j55_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f66j55_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f66j55_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f66j55_a_SOURCES += i2c/i2cwrites.c
+libio18f66j55_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f66j55_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f66j55_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f66j55_a_SOURCES += usart/usartd.c
+libio18f66j55_a_CFLAGS = -p18f66j55 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f66j60.a
libio18f66j60_a_SOURCES = dummy.c
libio18f66j60_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f6720_a_SOURCES += usart/usartd.c
libio18f6720_a_CFLAGS = -p18f6720 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f67j50.a
+libio18f67j50_a_SOURCES = dummy.c
+libio18f67j50_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f67j50_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f67j50_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f67j50_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f67j50_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f67j50_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f67j50_a_SOURCES += i2c/i2cwrites.c
+libio18f67j50_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f67j50_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f67j50_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f67j50_a_SOURCES += usart/usartd.c
+libio18f67j50_a_CFLAGS = -p18f67j50 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f67j60.a
libio18f67j60_a_SOURCES = dummy.c
libio18f67j60_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f8585_a_SOURCES += usart/usartd.c
libio18f8585_a_CFLAGS = -p18f8585 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f85j50.a
+libio18f85j50_a_SOURCES = dummy.c
+libio18f85j50_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f85j50_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f85j50_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f85j50_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f85j50_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f85j50_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f85j50_a_SOURCES += i2c/i2cwrites.c
+libio18f85j50_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f85j50_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f85j50_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f85j50_a_SOURCES += usart/usartd.c
+libio18f85j50_a_CFLAGS = -p18f85j50 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f8620.a
libio18f8620_a_SOURCES = dummy.c
libio18f8620_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f8680_a_SOURCES += usart/usartd.c
libio18f8680_a_CFLAGS = -p18f8680 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f86j50.a
+libio18f86j50_a_SOURCES = dummy.c
+libio18f86j50_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f86j50_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f86j50_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f86j50_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f86j50_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f86j50_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f86j50_a_SOURCES += i2c/i2cwrites.c
+libio18f86j50_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f86j50_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f86j50_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f86j50_a_SOURCES += usart/usartd.c
+libio18f86j50_a_CFLAGS = -p18f86j50 $(AM_CFLAGS)
+
+lib_LIBRARIES += libio18f86j55.a
+libio18f86j55_a_SOURCES = dummy.c
+libio18f86j55_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f86j55_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f86j55_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f86j55_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f86j55_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f86j55_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f86j55_a_SOURCES += i2c/i2cwrites.c
+libio18f86j55_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f86j55_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f86j55_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f86j55_a_SOURCES += usart/usartd.c
+libio18f86j55_a_CFLAGS = -p18f86j55 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f86j60.a
libio18f86j60_a_SOURCES = dummy.c
libio18f86j60_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
libio18f8720_a_SOURCES += usart/usartd.c
libio18f8720_a_CFLAGS = -p18f8720 $(AM_CFLAGS)
+lib_LIBRARIES += libio18f87j50.a
+libio18f87j50_a_SOURCES = dummy.c
+libio18f87j50_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
+libio18f87j50_a_SOURCES += adc/adcopen.c adc/adcread.c adc/adcsetch.c
+libio18f87j50_a_SOURCES += i2c/i2cack.c i2c/i2cclose.c i2c/i2cdrdy.c
+libio18f87j50_a_SOURCES += i2c/i2cidle.c i2c/i2cnack.c i2c/i2copen.c
+libio18f87j50_a_SOURCES += i2c/i2creadc.c i2c/i2creads.c i2c/i2crestart.c
+libio18f87j50_a_SOURCES += i2c/i2cstart.c i2c/i2cstop.c i2c/i2cwritec.c
+libio18f87j50_a_SOURCES += i2c/i2cwrites.c
+libio18f87j50_a_SOURCES += usart/ubaud.c usart/ubusy.c usart/uclose.c
+libio18f87j50_a_SOURCES += usart/udrdy.c usart/ugetc.c usart/ugets.c
+libio18f87j50_a_SOURCES += usart/uopen.c usart/uputc.c usart/uputs.c
+libio18f87j50_a_SOURCES += usart/usartd.c
+libio18f87j50_a_CFLAGS = -p18f87j50 $(AM_CFLAGS)
+
lib_LIBRARIES += libio18f87j60.a
libio18f87j60_a_SOURCES = dummy.c
libio18f87j60_a_SOURCES += adc/adcbusy.c adc/adcclose.c adc/adcconv.c
char adc_busy(void) __naked
{
+#if defined(__SDCC_ADC_STYLE65J50)
+ WDTCONbits.ADSHR = 0; /* access ADCON0/1 */
+#endif
#if 0
return (ADCON0bits.GO);
#else
movlw 0x00
#if defined(__SDCC_ADC_STYLE242)
btfsc _ADCON0bits, 2
-#elif defined(__SDCC_ADC_STYLE1220) || defined(__SDCC_ADC_STYLE2220)
+#elif defined(__SDCC_ADC_STYLE1220) \
+ || defined(__SDCC_ADC_STYLE2220) \
+ || defined(__SDCC_ADC_STYLE65J50)
btfsc _ADCON0bits, 1
#else /* unsupported ADC style */
#error Unsupported ADC style.
void adc_close(void)
{
+#if defined(__SDCC_ADC_STYLE65J50)
+ WDTCONbits.ADSHR = 0; /* access ADCON0/1 */
+#endif
ADCON0bits.ADON = 0;
PIE1bits.ADIE = 0;
}
void adc_conv(void)
{
+#if defined(__SDCC_ADC_STYLE65J50)
+ WDTCONbits.ADSHR = 0; /* access ADCON0/1 */
+#endif
ADCON0bits.GO = 1;
}
#include <adc.h>
-/* parameters are:
+/*
+ * parameters are:
* channel: one of ADC_CHN_*
- * fosc: one of ADC_FOSC_*
- * pcfg: one of ADC_CFG_* (a bitmask with set bits denoting digital ports for 242-style)
+ * fosc: one of ADC_FOSC_* | ADC_ACQT_* | ADC_CAL
+ * pcfg: one of ADC_CFG_* (a bitmask with set bits denoting digital ports for 1220/65j50-style)
* config: ADC_FRM_* | ADC_INT_* | ADC_VCFG_*
*/
+#if defined(__SDCC_ADC_STYLE65J50)
+void adc_open(unsigned char channel, unsigned char fosc, unsigned int pcfg, unsigned char config)
+#else
void adc_open(unsigned char channel, unsigned char fosc, unsigned char pcfg, unsigned char config)
+#endif
{
/* disable ADC */
+#if defined(__SDCC_ADC_STYLE65J50)
+ WDTCONbits.ADSHR = 0; /* access ADCON0/1 */
+#endif
ADCON0 = 0;
#if defined(__SDCC_ADC_STYLE242)
* but we retain compatibility for now ... */
ADCON1 = (pcfg & 0x3f) | (config & ADC_VCFG_AN3_AN2);
ADCON2 = (ADCON2 & 0x38) | (fosc & 0x07) | (config & ADC_FRM_RJUST);
+#elif defined(__SDCC_ADC_STYLE65J50)
+ WDTCONbits.ADSHR = 1; /* access ANCON0/1 */
+ ANCON0 = pcfg;
+ ANCON1 = (pcfg >> 8);
+ WDTCONbits.ADSHR = 0; /* access ADCON0/1 */
+ ADCON0 = ((channel & 0x0f) << 2) | ((config & ADC_VCFG_AN3_AN2) << 2);
+ ADCON1 = (config & ADC_FRM_RJUST) | (fosc & 0x7f);
#else /* unsupported ADC style */
#error Unsupported ADC style.
#endif
ADCON0 = (ADCON0 & ~(0x07 << 2)) | ((channel & 0x07) << 2);
#elif defined(__SDCC_ADC_STYLE2220)
ADCON0 = (ADCON0 & ~(0x0f << 2)) | ((channel & 0x0f) << 2);
+#elif defined(__SDCC_ADC_STYLE65J50)
+ WDTCONbits.ADSHR = 0; /* access ADCON0/1 */
+ ADCON0 = (ADCON0 & ~(0x0f << 2)) | ((channel & 0x0f) << 2);
#else /* unsupported ADC style */
#error Unsupported ADC style.
#endif
1320
2220
-#2221 # not in gputils (2008-11-10)
+2221
2320
2321
2331
+23k20
2410
2420
-#2423 # not in gputils (2008-11-10)
+2423
2431
2450
2455
2480
24j10
-#2510 # gplib aborts: invalid rom width for selected processor (8) in "libdev18f2510_a-pic18f2510.o" (2008-11-10)
+24k20
+2510
2515
2520
2523
2580
2585
25j10
+25k20
2610
2620
2680
2682
2685
+26k20
4220
-#4221 # not in gputils (2008-11-10)
+4221
4320
4321
4331
+43k20
4410
4420
-#4423 # not in gputils (2008-11-10)
+4423
4431
4450
4455
4480
44j10
+44k20
4510
4515
4520
-#4523 # not in gputils (2008-11-10)
+4523
4525
4550
4580
4585
45j10
+45k20
4610
4620
4680
4682
4685
+46k20
6520
6585
+65j50
6620
6680
+66j50
+66j55
66j60
66j65
6720
+67j50
67j60
8520
8585
+85j50
8620
8680
+86j50
+86j55
86j60
86j65
8720
+87j50
87j60
96j60
-#LyX 1.5.7 created this file. For more info see http://www.lyx.org/
+#LyX 1.5.6 created this file. For more info see http://www.lyx.org/
\lyxformat 276
\begin_document
\begin_header
\begin_layout Verse
\family typewriter
-sdcc -c _heap.c -D HEAD_SIZE=2048
+sdcc -c _heap.c -D HEAP_SIZE=2048
\end_layout
\begin_layout Standard
\end_layout
\begin_layout Standard
-18F: 2220, 2221, 2320, 2321, 2331, 2410, 2420, 2423, 2431, 2450, 2455, 2480,
- 24j10
+18F: 2220, 2221, 2320, 2321, 2331, 23k20
\end_layout
\begin_layout Standard
-18F: (2510,) 2515, 2520, 2523, 2525, 2550, 2580, 2585, 25j10, 2610, 2620,
- 2680, 2682, 2685
+18F: 2410, 2420, 2423, 2431, 2450, 2455, 2480, 24j10, 24k20
\end_layout
\begin_layout Standard
-18F: 4220, 4221, 4320, 4321, 4331, 4410, 4420, 4423, 4431, 4450, 4455, 4480,
- 44j10
+18F: 2510, 2515, 2520, 2523, 2525, 2550, 2580, 2585, 25j10, 25k20
\end_layout
\begin_layout Standard
-18F: 4510, 4515, 4520, 4523, 4525, 4550, 4580, 4585, 45j10, 4610, 4620,
- 4680, 4682, 4685
+18F: 2610, 2620, 2680, 2682, 2685
\end_layout
\begin_layout Standard
-18F: 6520, 6585, 6620, 6680, 66j60, 66j65, 6720, 67j60
+18F: 4220, 4221, 4320, 4321, 4331, 43k20
\end_layout
\begin_layout Standard
-18F: 8520, 8585, 8620, 8680, 86j60, 86j65, 8720, 87j60
+18F: 4410, 4420, 4423, 4431, 4450, 4455, 4480, 44j10, 44k20
+\end_layout
+
+\begin_layout Standard
+18F: 4510, 4515, 4520, 4523, 4525, 4550, 4580, 4585, 45j10, 45k20
+\end_layout
+
+\begin_layout Standard
+18F: 4610, 4620, 4680, 4682, 4685, 46k20
+\end_layout
+
+\begin_layout Standard
+18F: 6520, 6585, 65j50, 6620, 6680, 66j50, 66j55, 66j60, 66j65, 6720, 67j50,
+ 67j60
+\end_layout
+
+\begin_layout Standard
+18F: 8520, 8585, 85j50, 8620, 8680, 86j50, 86j55, 86j60, 86j65, 8720, 87j50,
+ 87j60
\end_layout
\begin_layout Standard