]> git.gag.com Git - fw/sdcc/commitdiff
* device/include/pic/{pic16f84.h,pic16f84a.h},
authortecodev <tecodev@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Wed, 4 Oct 2006 08:55:09 +0000 (08:55 +0000)
committertecodev <tecodev@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Wed, 4 Oct 2006 08:55:09 +0000 (08:55 +0000)
* device/lib/pic/libdev/{pic16f84.c,pic16f84a.c}: added PORT[AB]_bits
  from patch #1522504, thanks to Robas Teodor

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@4400 4a8a32a2-be11-0410-ad9d-d568d2c75423

ChangeLog
device/include/pic/pic16f84.h
device/include/pic/pic16f84a.h
device/lib/pic/libdev/pic16f84.c
device/lib/pic/libdev/pic16f84a.c

index e5b4a62ba03e3f9972dc454b6bc325bf83e92ac6..ec990fd838468713987b9f84b841f0a447d402e1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-10-04 Raphael Neider <rneider AT web.de>
+
+       * device/include/pic/{pic16f84.h,pic16f84a.h},
+       * device/lib/pic/libdev/{pic16f84.c,pic16f84a.c}: added PORT[AB]_bits
+         from patch #1522504, thanks to Robas Teodor
+
 2006-10-02 Maarten Brock <sourceforge.brock AT dse.nl>
 
        * as/link/z80/lkarea.c: essentially reverted lnksect() to #4380 which
index af917e9542e6c317ee2a3fc3cb49b035daa40092..7bbefc3a7482f557d39bea4d95113d494674c4ad 100644 (file)
@@ -265,4 +265,50 @@ extern volatile __STATUS_bits_t __at(STATUS_ADDR) STATUS_bits;
 #define RP1                  STATUS_bits.RP1
 #define IRP                  STATUS_bits.IRP
 
+// ----- PORTA bits --------------------
+typedef union {
+    struct {
+    unsigned char RA0:1;
+    unsigned char RA1:1;
+    unsigned char RA2:1;
+    unsigned char RA3:1;
+    unsigned char RA4:1;
+    unsigned char :1;
+    unsigned char :1;
+    unsigned char :1;
+    };
+} __PORTA_bits_t;
+extern volatile __PORTA_bits_t __at(PORTA_ADDR) PORTA_bits;
+                                   
+#define RA0             PORTA_bits.RA0
+#define RA1             PORTA_bits.RA1
+#define RA2             PORTA_bits.RA2
+#define RA3             PORTA_bits.RA3
+#define RA4            PORTA_bits.RA4
+
+// ----- PORTB bits --------------------
+
+typedef union {
+    struct {
+    unsigned char RB0:1;
+    unsigned char RB1:1;
+    unsigned char RB2:1;
+    unsigned char RB3:1;
+    unsigned char RB4:1;
+    unsigned char RB5:1;
+    unsigned char RB6:1;
+    unsigned char RB7:1;
+    };
+} __PORTB_bits_t;
+extern volatile __PORTB_bits_t __at(PORTB_ADDR) PORTB_bits;
+                                   
+#define RB0            PORTB_bits.RB0
+#define RB1            PORTB_bits.RB1
+#define RB2            PORTB_bits.RB2
+#define RB3            PORTB_bits.RB3
+#define RB4            PORTB_bits.RB4
+#define RB5            PORTB_bits.RB5
+#define RB6            PORTB_bits.RB6
+#define RB7            PORTB_bits.RB7
+
 #endif
index 2324782aa2253056839b00ff8199a85645d702a1..5b8e7d0cb448e5b484cfe06226e83afe65f0f000 100644 (file)
@@ -263,4 +263,50 @@ extern volatile __STATUS_bits_t __at(STATUS_ADDR) STATUS_bits;
 #define RP1                  STATUS_bits.RP1
 #define IRP                  STATUS_bits.IRP
 
+// ----- PORTA bits --------------------
+typedef union {
+    struct {
+    unsigned char RA0:1;
+    unsigned char RA1:1;
+    unsigned char RA2:1;
+    unsigned char RA3:1;
+    unsigned char RA4:1;
+    unsigned char :1;
+    unsigned char :1;
+    unsigned char :1;
+    };
+} __PORTA_bits_t;
+extern volatile __PORTA_bits_t __at(PORTA_ADDR) PORTA_bits;
+                                   
+#define RA0             PORTA_bits.RA0
+#define RA1             PORTA_bits.RA1
+#define RA2             PORTA_bits.RA2
+#define RA3             PORTA_bits.RA3
+#define RA4            PORTA_bits.RA4
+
+// ----- PORTB bits --------------------
+
+typedef union {
+    struct {
+    unsigned char RB0:1;
+    unsigned char RB1:1;
+    unsigned char RB2:1;
+    unsigned char RB3:1;
+    unsigned char RB4:1;
+    unsigned char RB5:1;
+    unsigned char RB6:1;
+    unsigned char RB7:1;
+    };
+} __PORTB_bits_t;
+extern volatile __PORTB_bits_t __at(PORTB_ADDR) PORTB_bits;
+                                   
+#define RB0            PORTB_bits.RB0
+#define RB1            PORTB_bits.RB1
+#define RB2            PORTB_bits.RB2
+#define RB3            PORTB_bits.RB3
+#define RB4            PORTB_bits.RB4
+#define RB5            PORTB_bits.RB5
+#define RB6            PORTB_bits.RB6
+#define RB7            PORTB_bits.RB7
+
 #endif
index 5f9357a1ce89c8a7b3265a470d5b272c2e20dcca..8c1245bfba02415a8029dd6e812bb69d7859ff6f 100644 (file)
@@ -25,8 +25,10 @@ __sfr  __at (EECON2_ADDR)                  EECON2;
 // 
 // bitfield definitions
 // 
-volatile __EECON1_bits_t __at(EECON1_ADDR) EECON1_bits;
-volatile __INTCON_bits_t __at(INTCON_ADDR) INTCON_bits;
+volatile __EECON1_bits_t     __at(EECON1_ADDR)     EECON1_bits;
+volatile __INTCON_bits_t     __at(INTCON_ADDR)     INTCON_bits;
 volatile __OPTION_REG_bits_t __at(OPTION_REG_ADDR) OPTION_REG_bits;
-volatile __STATUS_bits_t __at(STATUS_ADDR) STATUS_bits;
+volatile __STATUS_bits_t     __at(STATUS_ADDR)     STATUS_bits;
+volatile __PORTA_bits_t      __at(PORTA_ADDR)      PORTA_bits;
+volatile __PORTB_bits_t      __at(PORTB_ADDR)      PORTB_bits;
 
index 71de3d10ee2341aff715e8f4f0959302cde65e9c..2cfe8540218858f4af4e334ed542eb35712011fa 100644 (file)
@@ -25,8 +25,10 @@ __sfr  __at (EECON2_ADDR)                  EECON2;
 // 
 // bitfield definitions
 // 
-volatile __EECON1_bits_t __at(EECON1_ADDR) EECON1_bits;
-volatile __INTCON_bits_t __at(INTCON_ADDR) INTCON_bits;
+volatile __EECON1_bits_t     __at(EECON1_ADDR)     EECON1_bits;
+volatile __INTCON_bits_t     __at(INTCON_ADDR)     INTCON_bits;
 volatile __OPTION_REG_bits_t __at(OPTION_REG_ADDR) OPTION_REG_bits;
-volatile __STATUS_bits_t __at(STATUS_ADDR) STATUS_bits;
+volatile __STATUS_bits_t     __at(STATUS_ADDR)     STATUS_bits;
+volatile __PORTA_bits_t      __at(PORTA_ADDR)      PORTA_bits;
+volatile __PORTB_bits_t      __at(PORTB_ADDR)      PORTB_bits;