OSDN Git Service

projects clean up 1
[pinoc/pinoc.git] / test / xmodem_test / xmodem_test / iodefine.h
1 /***********************************************************************/
2 /*                                                                     */
3 /*  FILE        :iodefine.h                                            */
4 /*  DATE        :Fri, Feb 08, 2013                                     */
5 /*  DESCRIPTION :Definition of I/O Register                            */
6 /*  CPU TYPE    :H8/3069R                                              */
7 /*                                                                     */
8 /*  This file is generated by Renesas Project Generator (Ver.4.16).    */
9 /*                                                                     */
10 /***********************************************************************/
11                   
12
13
14
15 /************************************************************************/
16 /*      H8/3069 Series Include File                        Ver 2.2      */
17 /************************************************************************/
18 union un_p1dr {                                         /* union P1DR   */
19               unsigned char BYTE;                       /*  Byte Access */
20               struct {                                  /*  Bit  Access */
21                      unsigned char B7:1;                /*    Bit 7     */
22                      unsigned char B6:1;                /*    Bit 6     */
23                      unsigned char B5:1;                /*    Bit 5     */
24                      unsigned char B4:1;                /*    Bit 4     */
25                      unsigned char B3:1;                /*    Bit 3     */
26                      unsigned char B2:1;                /*    Bit 2     */
27                      unsigned char B1:1;                /*    Bit 1     */
28                      unsigned char B0:1;                /*    Bit 0     */
29                      }      BIT;                        /*              */
30 };                                                      /*              */
31 union un_p2pcr {                                        /* union P2PCR  */
32                unsigned char BYTE;                      /*  Byte Access */
33                struct {                                 /*  Bit  Access */
34                       unsigned char B7:1;               /*    Bit 7     */
35                       unsigned char B6:1;               /*    Bit 6     */
36                       unsigned char B5:1;               /*    Bit 5     */
37                       unsigned char B4:1;               /*    Bit 4     */
38                       unsigned char B3:1;               /*    Bit 3     */
39                       unsigned char B2:1;               /*    Bit 2     */
40                       unsigned char B1:1;               /*    Bit 1     */
41                       unsigned char B0:1;               /*    Bit 0     */
42                       }      BIT;                       /*              */
43 };                                                      /*              */
44 union un_p2dr {                                         /* union P2DR   */
45               unsigned char BYTE;                       /*  Byte Access */
46               struct {                                  /*  Bit  Access */
47                      unsigned char B7:1;                /*    Bit 7     */
48                      unsigned char B6:1;                /*    Bit 6     */
49                      unsigned char B5:1;                /*    Bit 5     */
50                      unsigned char B4:1;                /*    Bit 4     */
51                      unsigned char B3:1;                /*    Bit 3     */
52                      unsigned char B2:1;                /*    Bit 2     */
53                      unsigned char B1:1;                /*    Bit 1     */
54                      unsigned char B0:1;                /*    Bit 0     */
55                      }      BIT;                        /*              */
56 };                                                      /*              */
57 union un_p3dr {                                         /* union P3DR   */
58               unsigned char BYTE;                       /*  Byte Access */
59               struct {                                  /*  Bit  Access */
60                      unsigned char B7:1;                /*    Bit 7     */
61                      unsigned char B6:1;                /*    Bit 6     */
62                      unsigned char B5:1;                /*    Bit 5     */
63                      unsigned char B4:1;                /*    Bit 4     */
64                      unsigned char B3:1;                /*    Bit 3     */
65                      unsigned char B2:1;                /*    Bit 2     */
66                      unsigned char B1:1;                /*    Bit 1     */
67                      unsigned char B0:1;                /*    Bit 0     */
68                      }      BIT;                        /*              */
69 };                                                      /*              */
70 union un_p4pcr {                                        /* union P4PCR  */
71                unsigned char BYTE;                      /*  Byte Access */
72                struct {                                 /*  Bit  Access */
73                       unsigned char B7:1;               /*    Bit 7     */
74                       unsigned char B6:1;               /*    Bit 6     */
75                       unsigned char B5:1;               /*    Bit 5     */
76                       unsigned char B4:1;               /*    Bit 4     */
77                       unsigned char B3:1;               /*    Bit 3     */
78                       unsigned char B2:1;               /*    Bit 2     */
79                       unsigned char B1:1;               /*    Bit 1     */
80                       unsigned char B0:1;               /*    Bit 0     */
81                       }      BIT;                       /*              */
82 };                                                      /*              */
83 union un_p4dr {                                         /* union P4DR   */
84               unsigned char BYTE;                       /*  Byte Access */
85               struct {                                  /*  Bit  Access */
86                      unsigned char B7:1;                /*    Bit 7     */
87                      unsigned char B6:1;                /*    Bit 6     */
88                      unsigned char B5:1;                /*    Bit 5     */
89                      unsigned char B4:1;                /*    Bit 4     */
90                      unsigned char B3:1;                /*    Bit 3     */
91                      unsigned char B2:1;                /*    Bit 2     */
92                      unsigned char B1:1;                /*    Bit 1     */
93                      unsigned char B0:1;                /*    Bit 0     */
94                      }      BIT;                        /*              */
95 };                                                      /*              */
96 union un_p5pcr {                                        /* union P5PCR  */
97                unsigned char BYTE;                      /*  Byte Access */
98                struct {                                 /*  Bit  Access */
99                       unsigned char   :4;               /*              */
100                       unsigned char B3:1;               /*    Bit 3     */
101                       unsigned char B2:1;               /*    Bit 2     */
102                       unsigned char B1:1;               /*    Bit 1     */
103                       unsigned char B0:1;               /*    Bit 0     */
104                       }      BIT;                       /*              */
105 };                                                      /*              */
106 union un_p5dr {                                         /* union P5DR   */
107               unsigned char BYTE;                       /*  Byte Access */
108               struct {                                  /*  Bit  Access */
109                      unsigned char   :4;                /*              */
110                      unsigned char B3:1;                /*    Bit 3     */
111                      unsigned char B2:1;                /*    Bit 2     */
112                      unsigned char B1:1;                /*    Bit 1     */
113                      unsigned char B0:1;                /*    Bit 0     */
114                      }      BIT;                        /*              */
115 };                                                      /*              */
116 union un_p6dr {                                         /* union P6DR   */
117               unsigned char BYTE;                       /*  Byte Access */
118               struct {                                  /*  Bit  Access */
119                      unsigned char B7:1;                /*    Bit 7     */
120                      unsigned char B6:1;                /*    Bit 6     */
121                      unsigned char B5:1;                /*    Bit 5     */
122                      unsigned char B4:1;                /*    Bit 4     */
123                      unsigned char B3:1;                /*    Bit 3     */
124                      unsigned char B2:1;                /*    Bit 2     */
125                      unsigned char B1:1;                /*    Bit 1     */
126                      unsigned char B0:1;                /*    Bit 0     */
127                      }      BIT;                        /*              */
128 };                                                      /*              */
129 union un_p7dr {                                         /* union P7DR   */
130               unsigned char BYTE;                       /*  Byte Access */
131               struct {                                  /*  Bit  Access */
132                      unsigned char B7:1;                /*    Bit 7     */
133                      unsigned char B6:1;                /*    Bit 6     */
134                      unsigned char B5:1;                /*    Bit 5     */
135                      unsigned char B4:1;                /*    Bit 4     */
136                      unsigned char B3:1;                /*    Bit 3     */
137                      unsigned char B2:1;                /*    Bit 2     */
138                      unsigned char B1:1;                /*    Bit 1     */
139                      unsigned char B0:1;                /*    Bit 0     */
140                      }      BIT;                        /*              */
141 };                                                      /*              */
142 union un_p8dr {                                         /* union P8DR   */
143               unsigned char BYTE;                       /*  Byte Access */
144               struct {                                  /*  Bit  Access */
145                      unsigned char   :3;                /*              */
146                      unsigned char B4:1;                /*    Bit 4     */
147                      unsigned char B3:1;                /*    Bit 3     */
148                      unsigned char B2:1;                /*    Bit 2     */
149                      unsigned char B1:1;                /*    Bit 1     */
150                      unsigned char B0:1;                /*    Bit 0     */
151                      }      BIT;                        /*              */
152 };                                                      /*              */
153 union un_p9dr {                                         /* union P9DR   */
154               unsigned char BYTE;                       /*  Byte Access */
155               struct {                                  /*  Bit  Access */
156                      unsigned char   :2;                /*              */
157                      unsigned char B5:1;                /*    Bit 5     */
158                      unsigned char B4:1;                /*    Bit 4     */
159                      unsigned char B3:1;                /*    Bit 3     */
160                      unsigned char B2:1;                /*    Bit 2     */
161                      unsigned char B1:1;                /*    Bit 1     */
162                      unsigned char B0:1;                /*    Bit 0     */
163                      }      BIT;                        /*              */
164 };                                                      /*              */
165 union un_padr {                                         /* union PADR   */
166               unsigned char BYTE;                       /*  Byte Access */
167               struct {                                  /*  Bit  Access */
168                      unsigned char B7:1;                /*    Bit 7     */
169                      unsigned char B6:1;                /*    Bit 6     */
170                      unsigned char B5:1;                /*    Bit 5     */
171                      unsigned char B4:1;                /*    Bit 4     */
172                      unsigned char B3:1;                /*    Bit 3     */
173                      unsigned char B2:1;                /*    Bit 2     */
174                      unsigned char B1:1;                /*    Bit 1     */
175                      unsigned char B0:1;                /*    Bit 0     */
176                      }      BIT;                        /*              */
177 };                                                      /*              */
178 union un_pbdr {                                         /* union PBDR   */
179               unsigned char BYTE;                       /*  Byte Access */
180               struct {                                  /*  Bit  Access */
181                      unsigned char B7:1;                /*    Bit 7     */
182                      unsigned char B6:1;                /*    Bit 6     */
183                      unsigned char B5:1;                /*    Bit 5     */
184                      unsigned char B4:1;                /*    Bit 4     */
185                      unsigned char B3:1;                /*    Bit 3     */
186                      unsigned char B2:1;                /*    Bit 2     */
187                      unsigned char B1:1;                /*    Bit 1     */
188                      unsigned char B0:1;                /*    Bit 0     */
189                      }      BIT;                        /*              */
190 };                                                      /*              */
191 union un_mdcr {                                         /* union MDCR   */
192               unsigned char BYTE;                       /*  Byte Access */
193               struct {                                  /*  Bit  Access */
194                      unsigned char    :5;               /*              */
195                      unsigned char MDS:3;               /*    MDS       */
196                      }      BIT;                        /*              */
197 };                                                      /*              */
198 union un_syscr {                                        /* union SYSCR  */
199                unsigned char BYTE;                      /*  Byte Access */
200                struct {                                 /*  Bit  Access */
201                       unsigned char SSBY :1;            /*    SSBY      */
202                       unsigned char STS  :3;            /*    STS       */
203                       unsigned char UE   :1;            /*    UE        */
204                       unsigned char NMIEG:1;            /*    NMIEG     */
205                       unsigned char SSOE :1;            /*    SSOE      */
206                       unsigned char RAME :1;            /*    RAME      */
207                       }      BIT;                       /*              */
208 };                                                      /*              */
209 union un_divcr {                                        /* union DIVCR  */
210                unsigned char BYTE;                      /*  Byte Access */
211                struct {                                 /*  Bit  Access */
212                       unsigned char    :6;              /*              */
213                       unsigned char DIV:2;              /*    DIV       */
214                       }      BIT;                       /*              */
215 };                                                      /*              */
216 union un_mstcr {                                        /* union MSTCR  */
217                unsigned int WORD;                       /*  Word Access */
218                struct {                                 /*  Byte Access */
219                       unsigned char H;                  /*    High      */
220                       unsigned char L;                  /*    Low       */
221                       }     BYTE;                       /*              */
222                struct {                                 /*  Bit  Access */
223                       unsigned char PSTOP :1;           /*    PSTOP     */
224                       unsigned char       :4;           /*              */
225                       unsigned char _SCI2 :1;           /*    MSTPH2    */
226                       unsigned char _SCI1 :1;           /*    MSTPH1    */
227                       unsigned char _SCI0 :1;           /*    MSTPH0    */
228                       unsigned char _DMAC :1;           /*    MSTPL7    */
229                       unsigned char       :1;           /*              */
230                       unsigned char _DRAM :1;           /*    MSTPL5    */
231                       unsigned char _ITU  :1;           /*    MSTPL4    */
232                       unsigned char _TMR01:1;           /*    MSTPL3    */
233                       unsigned char _TMR23:1;           /*    MSTPL2    */
234                       unsigned char       :1;           /*              */
235                       unsigned char _AD   :1;           /*    MSTPL0    */
236                       }     BIT;                        /*              */
237 };                                                      /*              */
238 struct st_bsc {                                         /* struct BSC   */
239               char              wk1;                    /*              */
240               union {                                   /* BRCR         */
241                     unsigned char BYTE;                 /*  Byte Access */
242                     struct {                            /*  Bit  Access */
243                            unsigned char A23E:1;        /*    A23E      */
244                            unsigned char A22E:1;        /*    A22E      */
245                            unsigned char A21E:1;        /*    A21E      */
246                            unsigned char A20E:1;        /*    A20E      */
247                            unsigned char     :3;        /*              */
248                            unsigned char BRLE:1;        /*    BRLE      */
249                            }      BIT;                  /*              */
250                     }           BRCR;                   /*              */
251               char              wk2[10];                /*              */
252               union {                                   /* ADRCR        */
253                     unsigned char BYTE;                 /*  Byte Access */
254                     struct {                            /*  Bit  Access */
255                            unsigned char       :7;      /*              */
256                            unsigned char ADRCTL:1;      /*    ADRCTL    */
257                            }      BIT;                  /*              */
258                     }           ADRCR;                  /*              */
259               union {                                   /* CSCR         */
260                     unsigned char BYTE;                 /*  Byte Access */
261                     struct {                            /*  Bit  Access */
262                            unsigned char CS7E:1;        /*    CS7E      */
263                            unsigned char CS6E:1;        /*    CS6E      */
264                            unsigned char CS5E:1;        /*    CS5E      */
265                            unsigned char CS4E:1;        /*    CS4E      */
266                            }      BIT;                  /*              */
267                     }           CSCR;                   /*              */
268               union {                                   /* ABWCR        */
269                     unsigned char BYTE;                 /*  Byte Access */
270                     struct {                            /*  Bit  Access */
271                            unsigned char ABW7:1;        /*    ABW7      */
272                            unsigned char ABW6:1;        /*    ABW6      */
273                            unsigned char ABW5:1;        /*    ABW5      */
274                            unsigned char ABW4:1;        /*    ABW4      */
275                            unsigned char ABW3:1;        /*    ABW3      */
276                            unsigned char ABW2:1;        /*    ABW2      */
277                            unsigned char ABW1:1;        /*    ABW1      */
278                            unsigned char ABW0:1;        /*    ABW0      */
279                            }      BIT;                  /*              */
280                     }           ABWCR;                  /*              */
281               union {                                   /* ASTCR        */
282                     unsigned char BYTE;                 /*  Byte Access */
283                     struct {                            /*  Bit  Access */
284                            unsigned char AST7:1;        /*    AST7      */
285                            unsigned char AST6:1;        /*    AST6      */
286                            unsigned char AST5:1;        /*    AST5      */
287                            unsigned char AST4:1;        /*    AST4      */
288                            unsigned char AST3:1;        /*    AST3      */
289                            unsigned char AST2:1;        /*    AST2      */
290                            unsigned char AST1:1;        /*    AST1      */
291                            unsigned char AST0:1;        /*    AST0      */
292                            }      BIT;                  /*              */
293                     }           ASTCR;                  /*              */
294               union {                                   /* WCR          */
295                     unsigned int WORD;                  /*  Word Access */
296                     struct {                            /*  Byte Access */
297                            unsigned char H;             /*    WCRH      */
298                            unsigned char L;             /*    WCRL      */
299                            }     BYTE;                  /*              */
300                     struct {                            /*  Bit  Access */
301                            unsigned char W7:2;          /*    W7        */
302                            unsigned char W6:2;          /*    W6        */
303                            unsigned char W5:2;          /*    W5        */
304                            unsigned char W4:2;          /*    W4        */
305                            unsigned char W3:2;          /*    W3        */
306                            unsigned char W2:2;          /*    W2        */
307                            unsigned char W1:2;          /*    W1        */
308                            unsigned char W0:2;          /*    W0        */
309                            }     BIT;                   /*              */
310                     }           WCR;                    /*              */
311               union {                                   /* BCR          */
312                     unsigned char BYTE;                 /*  Byte Access */
313                     struct {                            /*  Bit  Access */
314                            unsigned char ICIS1 :1;      /*    ICIS1     */
315                            unsigned char ICIS0 :1;      /*    ICIS0     */
316                            unsigned char BROME :1;      /*    BROME     */
317                            unsigned char BRSTS1:1;      /*    BRSTS1    */
318                            unsigned char BRSTS0:1;      /*    BRSTS0    */
319                            unsigned char       :1;      /*              */
320                            unsigned char RDEA  :1;      /*    RDEA      */
321                            unsigned char WAITE :1;      /*    WAITE     */
322                            }     BIT;                   /*              */
323                     }           BCR;                    /*              */
324               char              wk3;                    /*              */
325               union {                                   /* DRCRA        */
326                     unsigned char BYTE;                 /*  Byte Access */
327                     struct {                            /*  Bit  Access */
328                            unsigned char DRAS :3;       /*    DRAS      */
329                            unsigned char      :1;       /*              */
330                            unsigned char BE   :1;       /*    BE        */
331                            unsigned char RDM  :1;       /*    RDM       */
332                            unsigned char SRFMD:1;       /*    SRFMD     */
333                            unsigned char RFSHE:1;       /*    RFSHE     */
334                            }      BIT;                  /*              */
335                     }           DRCRA;                  /*              */
336               union {                                   /* DRCRB        */
337                     unsigned char BYTE;                 /*  Byte Access */
338                     struct {                            /*  Bit  Access */
339                            unsigned char MXC  :2;       /*    MXC       */
340                            unsigned char CSEL :1;       /*    CSEL      */
341                            unsigned char RCYCE:1;       /*    RCYCE     */
342                            unsigned char      :1;       /*              */
343                            unsigned char _TPC :1;       /*    TPC       */
344                            unsigned char RCW  :1;       /*    RCW       */
345                            unsigned char RLW  :1;       /*    RLW       */
346                            }      BIT;                  /*              */
347                     }           DRCRB;                  /*              */
348               union {                                   /* RTMCSR       */
349                     unsigned char BYTE;                 /*  Byte Access */
350                     struct {                            /*  Bit  Access */
351                            unsigned char CMF  :1;       /*    CMF       */
352                            unsigned char CMIE :1;       /*    CMIE      */
353                            unsigned char CKS  :3;       /*    CKS       */
354                            }      BIT;                  /*              */
355                     }           RTMCSR;                 /*              */
356               unsigned char     RTCNT;                  /* RTCNT        */
357               unsigned char     RTCOR;                  /* RTCOR        */
358 };                                                      /*              */
359 struct st_intc {                                        /* struct INTC  */
360                union {                                  /* ISCR         */
361                      unsigned char BYTE;                /*  Byte Access */
362                      struct {                           /*  Bit  Access */
363                             unsigned char       :2;     /*              */
364                             unsigned char IRQ5SC:1;     /*    IRQ5SC    */
365                             unsigned char IRQ4SC:1;     /*    IRQ4SC    */
366                             unsigned char IRQ3SC:1;     /*    IRQ3SC    */
367                             unsigned char IRQ2SC:1;     /*    IRQ2SC    */
368                             unsigned char IRQ1SC:1;     /*    IRQ1SC    */
369                             unsigned char IRQ0SC:1;     /*    IRQ0SC    */
370                             }      BIT;                 /*              */
371                      }          ISCR;                   /*              */
372                union {                                  /* IER          */
373                      unsigned char BYTE;                /*  Byte Access */
374                      struct {                           /*  Bit  Access */
375                             unsigned char      :2;      /*              */
376                             unsigned char IRQ5E:1;      /*    IRQ5E     */
377                             unsigned char IRQ4E:1;      /*    IRQ4E     */
378                             unsigned char IRQ3E:1;      /*    IRQ3E     */
379                             unsigned char IRQ2E:1;      /*    IRQ2E     */
380                             unsigned char IRQ1E:1;      /*    IRQ1E     */
381                             unsigned char IRQ0E:1;      /*    IRQ0E     */
382                             }      BIT;                 /*              */
383                      }          IER;                    /*              */
384                union {                                  /* ISR          */
385                      unsigned char BYTE;                /*  Byte Access */
386                      struct {                           /*  Bit  Access */
387                             unsigned char      :2;      /*              */
388                             unsigned char IRQ5F:1;      /*    IRQ5F     */
389                             unsigned char IRQ4F:1;      /*    IRQ4F     */
390                             unsigned char IRQ3F:1;      /*    IRQ3F     */
391                             unsigned char IRQ2F:1;      /*    IRQ2F     */
392                             unsigned char IRQ1F:1;      /*    IRQ1F     */
393                             unsigned char IRQ0F:1;      /*    IRQ0F     */
394                             }      BIT;                 /*              */
395                      }          ISR;                    /*              */
396                char             wk;                     /*              */
397                union {                                  /* IPRA         */
398                      unsigned char BYTE;                /*  Byte Access */
399                      struct {                           /*  Bit  Access */
400                             unsigned char _IRQ0 :1;     /*    IRQ0      */
401                             unsigned char _IRQ1 :1;     /*    IRQ1      */
402                             unsigned char _IRQ23:1;     /*    IRQ2,IRQ3 */
403                             unsigned char _IRQ45:1;     /*    IRQ4,IRQ5 */
404                             unsigned char _WDT  :1;     /* WDT,DRAM,A/D */
405                             unsigned char _ITU0 :1;     /*    ITU0      */
406                             unsigned char _ITU1 :1;     /*    ITU1      */
407                             unsigned char _ITU2 :1;     /*    ITU2      */
408                             }      BIT;                 /*              */
409                      }          IPRA;                   /*              */
410                union {                                  /* IPRB         */
411                      unsigned char BYTE;                /*  Byte Access */
412                      struct {                           /*  Bit  Access */
413                             unsigned char _TMR01:1;     /*    TMR0,1    */
414                             unsigned char _TMR23:1;     /*    TMR2,3    */
415                             unsigned char _DMAC :1;     /*    DMAC      */
416                             unsigned char       :1;     /*              */
417                             unsigned char _SCI0 :1;     /*    SCI0      */
418                             unsigned char _SCI1 :1;     /*    SCI1      */
419                             unsigned char _SCI2 :1;     /*    SCI2      */
420                             }      BIT;                 /*              */
421                      }          IPRB;                   /*              */
422 };                                                      /*              */
423 #if __CPU__==2                                          /* Normal Mode  */
424 struct st_sam {                                         /* struct DMAC  */
425               char              wk[2];                  /*              */
426               void             *MAR;                    /* MAR          */
427               unsigned int      ETCR;                   /* ETCR         */
428               unsigned char     IOAR;                   /* IOAR         */
429               union {                                   /* DTCR         */
430                     unsigned char BYTE;                 /*  Byte Access */
431                     struct {                            /*  Bit  Access */
432                            unsigned char DTE :1;        /*    DTE       */
433                            unsigned char DTSZ:1;        /*    DTSZ      */
434                            unsigned char DTID:1;        /*    DTID      */
435                            unsigned char RPE :1;        /*    RPE       */
436                            unsigned char DTIE:1;        /*    DTIE      */
437                            unsigned char DTS :3;        /*    DTS       */
438                            }      BIT;                  /*              */
439                     }           DTCR;                   /*              */
440 };                                                      /*              */
441 struct st_fam {                                         /* struct DMAC  */
442               char              wk1[2];                 /*              */
443               void             *MARA;                   /* MARA         */
444               unsigned int      ETCRA;                  /* ETCRA        */
445               char              wk2;                    /*              */
446               union {                                   /* DTCRA        */
447                     unsigned char BYTE;                 /*  Byte Access */
448                     struct {                            /*  Bit  Access */
449                            unsigned char DTE  :1;       /*    DTE       */
450                            unsigned char DTSZ :1;       /*    DTSZ      */
451                            unsigned char SAID :1;       /*    SAID      */
452                            unsigned char SAIDE:1;       /*    SAIDE     */
453                            unsigned char DTIE :1;       /*    DTIE      */
454                            unsigned char DTS  :3;       /*    DTS       */
455                            }      BIT;                  /*              */
456                     }           DTCRA;                  /*              */
457               char              wk3[2];                 /*              */
458               void             *MARB;                   /* MARB         */
459               unsigned int      ETCRB;                  /* ETCRB        */
460               char              wk4;                    /*              */
461               union {                                   /* DTCRB        */
462                     unsigned char BYTE;                 /*  Byte Access */
463                     struct {                            /*  Bit  Access */
464                            unsigned char DTME :1;       /*    DTME      */
465                            unsigned char      :1;       /*              */
466                            unsigned char DAID :1;       /*    DAID      */
467                            unsigned char DAIDE:1;       /*    DAIDE     */
468                            unsigned char TMS  :1;       /*    TMS       */
469                            unsigned char DTS  :3;       /*    DTS       */
470                            }      BIT;                  /*              */
471                     }           DTCRB;                  /*              */
472 };                                                      /*              */
473 #else                                                   /* Advanced Mode*/
474 struct st_sam {                                         /* struct DMAC  */
475               void             *MAR;                    /* MAR          */
476               unsigned int      ETCR;                   /* ETCR         */
477               unsigned char     IOAR;                   /* IOAR         */
478               union {                                   /* DTCR         */
479                     unsigned char BYTE;                 /*  Byte Access */
480                     struct {                            /*  Bit  Access */
481                            unsigned char DTE :1;        /*    DTE       */
482                            unsigned char DTSZ:1;        /*    DTSZ      */
483                            unsigned char DTID:1;        /*    DTID      */
484                            unsigned char RPE :1;        /*    RPE       */
485                            unsigned char DTIE:1;        /*    DTIE      */
486                            unsigned char DTS :3;        /*    DTS       */
487                            }      BIT;                  /*              */
488                     }           DTCR;                   /*              */
489 };                                                      /*              */
490 struct st_fam {                                         /* struct DMAC  */
491               void             *MARA;                   /* MARA         */
492               unsigned int      ETCRA;                  /* ETCRA        */
493               char              wk1;                    /*              */
494               union {                                   /* DTCRA        */
495                     unsigned char BYTE;                 /*  Byte Access */
496                     struct {                            /*  Bit  Access */
497                            unsigned char DTE  :1;       /*    DTE       */
498                            unsigned char DTSZ :1;       /*    DTSZ      */
499                            unsigned char SAID :1;       /*    SAID      */
500                            unsigned char SAIDE:1;       /*    SAIDE     */
501                            unsigned char DTIE :1;       /*    DTIE      */
502                            unsigned char DTS  :3;       /*    DTS       */
503                            }      BIT;                  /*              */
504                     }           DTCRA;                  /*              */
505               void             *MARB;                   /* MARB         */
506               unsigned int      ETCRB;                  /* ETCRB        */
507               char              wk2;                    /*              */
508               union {                                   /* DTCRB        */
509                     unsigned char BYTE;                 /*  Byte Access */
510                     struct {                            /*  Bit  Access */
511                            unsigned char DTME :1;       /*    DTME      */
512                            unsigned char      :1;       /*              */
513                            unsigned char DAID :1;       /*    DAID      */
514                            unsigned char DAIDE:1;       /*    DAIDE     */
515                            unsigned char TMS  :1;       /*    TMS       */
516                            unsigned char DTS  :3;       /*    DTS       */
517                            }      BIT;                  /*              */
518                     }           DTCRB;                  /*              */
519 };                                                      /*              */
520 #endif                                                  /*              */
521 struct st_flash {                                       /* struct FLASH */
522                 char            wk;                     /*              */
523                 union {                                 /* RAMCR        */
524                       unsigned char BYTE;               /*  Byte Access */
525                       struct {                          /*  Bit  Access */
526                              unsigned char     :4;      /*              */
527                              unsigned char RAMS:1;      /*    RAMS      */
528                              unsigned char RAM :3;      /*    RAM       */
529                              }      BIT;                /*              */
530                       }         RAMCR;                  /*              */
531                 char            wk1[56];                /*              */
532                 union {                                 /* FCCS         */
533                       unsigned char BYTE;               /*  Byte Access */
534                       struct {                          /*  Bit  Access */
535                              unsigned char FWE :1;      /*    FWE       */
536                              unsigned char     :2;      /*              */
537                              unsigned char FLER:1;      /*    FLER      */
538                              unsigned char     :3;      /*              */
539                              unsigned char SCO :1;      /*    SCO       */
540                              }      BIT;                /*              */
541                       }         FCCS;                   /*              */
542                 union {                                 /* FPCS         */
543                       unsigned char BYTE;               /*  Byte Access */
544                       struct {                          /*  Bit  Access */
545                              unsigned char     :7;      /*              */
546                              unsigned char PPVS:1;      /*    PPVS      */
547                              }      BIT;                /*              */
548                       }         FPCS;                   /*              */
549                 union {                                 /* FECS         */
550                       unsigned char BYTE;               /*  Byte Access */
551                       struct {                          /*  Bit  Access */
552                              unsigned char     :7;      /*              */
553                              unsigned char EPVB:1;      /*    EPVB      */
554                              }      BIT;                /*              */
555                       }         FECS;                   /*              */
556                 char            wk2;                    /*              */
557                 unsigned char   FKEY;                   /* FKEY         */
558                 unsigned char   FMATS;                  /* FMATS        */
559                 unsigned char   FTDAR;                  /* FTDAR        */
560                 union {                                 /* FVACR        */
561                       unsigned char BYTE;               /*  Byte Access */
562                       struct {                          /*  Bit  Access */
563                              unsigned char FVCHGE:1;    /*    FVCHGE    */
564                              unsigned char       :3;    /*              */
565                              unsigned char FVSEL :4;    /*    FVSEL     */
566                              }      BIT;                /*              */
567                       }         FVACR;                  /*              */
568                 unsigned char   FVADRR;                 /* FVADRR       */
569                 unsigned char   FVADRE;                 /* FVADRE       */
570                 unsigned char   FVADRH;                 /* FVADRH       */
571                 unsigned char   FVADRL;                 /* FVADRL       */
572 };                                                      /*              */
573 struct st_itu {                                         /* struct ITU   */
574               union {                                   /* TSTR         */
575                     unsigned char BYTE;                 /*  Byte Access */
576                     struct {                            /*  Bit  Access */
577                            unsigned char     :5;        /*              */
578                            unsigned char STR2:1;        /*    STR2      */
579                            unsigned char STR1:1;        /*    STR1      */
580                            unsigned char STR0:1;        /*    STR0      */
581                            }      BIT;                  /*              */
582                     }           TSTR;                   /*              */
583               union {                                   /* TSNC         */
584                     unsigned char BYTE;                 /*  Byte Access */
585                     struct {                            /*  Bit  Access */
586                            unsigned char      :5;       /*              */
587                            unsigned char SYNC2:1;       /*    SYNC2     */
588                            unsigned char SYNC1:1;       /*    SYNC1     */
589                            unsigned char SYNC0:1;       /*    SYNC0     */
590                            }      BIT;                  /*              */
591                     }           TSNC;                   /*              */
592               union {                                   /* TMDR         */
593                     unsigned char BYTE;                 /*  Byte Access */
594                     struct {                            /*  Bit  Access */
595                            unsigned char     :1;        /*              */
596                            unsigned char MDF :1;        /*    MDF       */
597                            unsigned char FDIR:1;        /*    FDIR      */
598                            unsigned char     :2;        /*              */
599                            unsigned char PWM2:1;        /*    PWM2      */
600                            unsigned char PWM1:1;        /*    PWM1      */
601                            unsigned char PWM0:1;        /*    PWM0      */
602                            }      BIT;                  /*              */
603                     }           TMDR;                   /*              */
604               union {                                   /* TOLR         */
605                     unsigned char BYTE;                 /*  Byte Access */
606                     struct {                            /*  Bit  Access */
607                            unsigned char     :2;        /*              */
608                            unsigned char TOB2:1;        /*    TOB2      */
609                            unsigned char TOA2:1;        /*    TOA2      */
610                            unsigned char TOB1:1;        /*    TOB1      */
611                            unsigned char TOA1:1;        /*    TOA1      */
612                            unsigned char TOB0:1;        /*    TOB0      */
613                            unsigned char TOA0:1;        /*    TOA0      */
614                            }      BIT;                  /*              */
615                     }           TOLR;                   /*              */
616               union {                                   /* TISRA        */
617                     unsigned char BYTE;                 /*  Byte Access */
618                     struct {                            /*  Bit  Access */
619                            unsigned char       :1;      /*              */
620                            unsigned char IMIEA2:1;      /*    IMIEA2    */
621                            unsigned char IMIEA1:1;      /*    IMIEA2    */
622                            unsigned char IMIEA0:1;      /*    IMIEA2    */
623                            unsigned char       :1;      /*              */
624                            unsigned char IMFA2 :1;      /*    IMFA2     */
625                            unsigned char IMFA1 :1;      /*    IMFA1     */
626                            unsigned char IMFA0 :1;      /*    IMFA0     */
627                            }      BIT;                  /*              */
628                     }           TISRA;                  /*              */
629               union {                                   /* TISRB        */
630                     unsigned char BYTE;                 /*  Byte Access */
631                     struct {                            /*  Bit  Access */
632                            unsigned char       :1;      /*              */
633                            unsigned char IMIEB2:1;      /*    IMIEB2    */
634                            unsigned char IMIEB1:1;      /*    IMIEB2    */
635                            unsigned char IMIEB0:1;      /*    IMIEB2    */
636                            unsigned char       :1;      /*              */
637                            unsigned char IMFB2 :1;      /*    IMFB2     */
638                            unsigned char IMFB1 :1;      /*    IMFB1     */
639                            unsigned char IMFB0 :1;      /*    IMFB0     */
640                            }      BIT;                  /*              */
641                     }           TISRB;                  /*              */
642               union {                                   /* TISRC        */
643                     unsigned char BYTE;                 /*  Byte Access */
644                     struct {                            /*  Bit  Access */
645                            unsigned char      :1;       /*              */
646                            unsigned char OVIE2:1;       /*    OVIE2     */
647                            unsigned char OVIE1:1;       /*    OVIE2     */
648                            unsigned char OVIE0:1;       /*    OVIE2     */
649                            unsigned char      :1;       /*              */
650                            unsigned char OVF2 :1;       /*    OVF2      */
651                            unsigned char OVF1 :1;       /*    OVF1      */
652                            unsigned char OVF0 :1;       /*    OVF0      */
653                            }      BIT;                  /*              */
654                     }           TISRC;                  /*              */
655 };                                                      /*              */
656 struct st_itu0 {                                        /* struct ITU0  */
657                union {                                  /* TCR          */
658                      unsigned char BYTE;                /*  Byte Access */
659                      struct {                           /*  Bit  Access */
660                             unsigned char     :1;       /*              */
661                             unsigned char CCLR:2;       /*    CCLR      */
662                             unsigned char CKEG:2;       /*    CKEG      */
663                             unsigned char TPSC:3;       /*    TPSC      */
664                             }      BIT;                 /*              */
665                      }          TCR;                    /*              */
666                union {                                  /* TIOR         */
667                      unsigned char BYTE;                /*  Byte Access */
668                      struct {                           /*  Bit  Access */
669                             unsigned char    :1;        /*              */
670                             unsigned char IOB:3;        /*    IOB       */
671                             unsigned char    :1;        /*              */
672                             unsigned char IOA:3;        /*    IOA       */
673                             }      BIT;                 /*              */
674                      }          TIOR;                   /*              */
675                unsigned int     TCNT;                   /* TCNT         */
676                unsigned int     GRA;                    /* GRA          */
677                unsigned int     GRB;                    /* GRB          */
678 };                                                      /*              */
679 union un_wdt {                                          /* union WDT    */
680              struct {                                   /* Read  Access */
681                     union {                             /* TCSR         */
682                           unsigned char BYTE;           /*  Byte Access */
683                           struct {                      /*  Bit  Access */
684                                  unsigned char OVF :1;  /*    OVF       */
685                                  unsigned char WTIT:1;  /*    WT/IT     */
686                                  unsigned char TME :1;  /*    TME       */
687                                  unsigned char     :2;  /*              */
688                                  unsigned char CKS :3;  /*    CKS       */
689                                  }      BIT;            /*              */
690                           }       TCSR;                 /*              */
691                     unsigned char TCNT;                 /* TCNT         */
692                     char          wk;                   /*              */
693                     union {                             /* RSTCSR       */
694                           unsigned char BYTE;           /*  Byte Access */
695                           struct {                      /*              */
696                                  unsigned char WRST:1;  /*    WSRT      */
697                                  }      BIT;            /*              */
698                           }       RSTCSR;               /*              */
699                     } READ;                             /*              */
700              struct {                                   /* Write Access */
701                     unsigned int  TCSR;                 /* TCSR/TCNT    */
702                     unsigned int  RSTCSR;               /* RSTCSR       */
703                     } WRITE;                            /*              */
704 };                                                      /*              */
705 struct st_tmr01 {                                       /* struct TMR01 */
706                 union {                                 /* TCR0         */
707                       unsigned char BYTE;               /*  Byte Access */
708                       struct {                          /*  Bit  Access */
709                              unsigned char CMIEB:1;     /*    CMIEB     */
710                              unsigned char CMIEA:1;     /*    CMIEA     */
711                              unsigned char OVIE :1;     /*    OVIE      */
712                              unsigned char CCLR :2;     /*    CCLR      */
713                              unsigned char CKS  :3;     /*    CKS       */
714                              }      BIT;                /*              */
715                       }         TCR0;                   /*              */
716                 union {                                 /* TCR1         */
717                       unsigned char BYTE;               /*  Byte Access */
718                       struct {                          /*  Bit  Access */
719                              unsigned char CMIEB:1;     /*    CMIEB     */
720                              unsigned char CMIEA:1;     /*    CMIEA     */
721                              unsigned char OVIE :1;     /*    OVIE      */
722                              unsigned char CCLR :2;     /*    CCLR      */
723                              unsigned char CKS  :3;     /*    CKS       */
724                              }      BIT;                /*              */
725                       }         TCR1;                   /*              */
726                 union {                                 /* TCSR0        */
727                       unsigned char BYTE;               /*  Byte Access */
728                       struct {                          /*  Bit  Access */
729                              unsigned char CMFB:1;      /*    CMFB      */
730                              unsigned char CMFA:1;      /*    CMFA      */
731                              unsigned char OVF :1;      /*    OVF       */
732                              unsigned char ADTE:1;      /*    ADTE      */
733                              unsigned char OS  :4;      /*    OS        */
734                              }      BIT;                /*              */
735                       }         TCSR0;                  /*              */
736                 union {                                 /* TCSR1        */
737                       unsigned char BYTE;               /*  Byte Access */
738                       struct {                          /*  Bit  Access */
739                              unsigned char CMFB:1;      /*    CMFB      */
740                              unsigned char CMFA:1;      /*    CMFA      */
741                              unsigned char OVF :1;      /*    OVF       */
742                              unsigned char ICE :1;      /*    ICE       */
743                              unsigned char OS  :4;      /*    OS        */
744                              }      BIT;                /*              */
745                       }         TCSR1;                  /*              */
746                 unsigned int    TCORA;                  /* TCORA        */
747                 unsigned int    TCORB;                  /* TCORB        */
748                 unsigned int    TCNT;                   /* TCNT         */
749 };                                                      /*              */
750 struct st_tmr23 {                                       /* struct TMR23 */
751                 union {                                 /* TCR2         */
752                       unsigned char BYTE;               /*  Byte Access */
753                       struct {                          /*  Bit  Access */
754                              unsigned char CMIEB:1;     /*    CMIEB     */
755                              unsigned char CMIEA:1;     /*    CMIEA     */
756                              unsigned char OVIE :1;     /*    OVIE      */
757                              unsigned char CCLR :2;     /*    CCLR      */
758                              unsigned char CKS  :3;     /*    CKS       */
759                              }      BIT;                /*              */
760                       }         TCR2;                   /*              */
761                 union {                                 /* TCR3         */
762                       unsigned char BYTE;               /*  Byte Access */
763                       struct {                          /*  Bit  Access */
764                              unsigned char CMIEB:1;     /*    CMIEB     */
765                              unsigned char CMIEA:1;     /*    CMIEA     */
766                              unsigned char OVIE :1;     /*    OVIE      */
767                              unsigned char CCLR :2;     /*    CCLR      */
768                              unsigned char CKS  :3;     /*    CKS       */
769                              }      BIT;                /*              */
770                       }         TCR3;                   /*              */
771                 union {                                 /* TCSR2        */
772                       unsigned char BYTE;               /*  Byte Access */
773                       struct {                          /*  Bit  Access */
774                              unsigned char CMFB:1;      /*    CMFB      */
775                              unsigned char CMFA:1;      /*    CMFA      */
776                              unsigned char OVF :1;      /*    OVF       */
777                              unsigned char     :1;      /*              */
778                              unsigned char OS  :4;      /*    OS        */
779                              }      BIT;                /*              */
780                       }         TCSR2;                  /*              */
781                 union {                                 /* TCSR3        */
782                       unsigned char BYTE;               /*  Byte Access */
783                       struct {                          /*  Bit  Access */
784                              unsigned char CMFB:1;      /*    CMFB      */
785                              unsigned char CMFA:1;      /*    CMFA      */
786                              unsigned char OVF :1;      /*    OVF       */
787                              unsigned char ICE :1;      /*    ICE       */
788                              unsigned char OS  :4;      /*    OS        */
789                              }      BIT;                /*              */
790                       }         TCSR3;                  /*              */
791                 unsigned int    TCORA;                  /* TCORA        */
792                 unsigned int    TCORB;                  /* TCORB        */
793                 unsigned int    TCNT;                   /* TCNT         */
794 };                                                      /*              */
795 struct st_tmr0 {                                        /* struct TMR0  */
796                union {                                  /* TCR          */
797                      unsigned char BYTE;                /*  Byte Access */
798                      struct {                           /*  Bit  Access */
799                             unsigned char CMIEB:1;      /*    CMIEB     */
800                             unsigned char CMIEA:1;      /*    CMIEA     */
801                             unsigned char OVIE :1;      /*    OVIE      */
802                             unsigned char CCLR :2;      /*    CCLR      */
803                             unsigned char CKS  :3;      /*    CKS       */
804                             }      BIT;                 /*              */
805                      }          TCR;                    /*              */
806                char             wk1;                    /*              */
807                union {                                  /* TCSR         */
808                      unsigned char BYTE;                /*  Byte Access */
809                      struct {                           /*  Bit  Access */
810                             unsigned char CMFB:1;       /*    CMFB      */
811                             unsigned char CMFA:1;       /*    CMFA      */
812                             unsigned char OVF :1;       /*    OVF       */
813                             unsigned char ADTE:1;       /*    ADTE      */
814                             unsigned char OS  :4;       /*    OS        */
815                             }      BIT;                 /*              */
816                      }          TCSR;                   /*              */
817                char             wk2;                    /*              */
818                unsigned char    TCORA;                  /* TCORA        */
819                char             wk3;                    /*              */
820                unsigned char    TCORB;                  /* TCORB        */
821                char             wk4;                    /*              */
822                unsigned char    TCNT;                   /* TCNT         */
823 };                                                      /*              */
824 struct st_tmr1 {                                        /* struct TMR1  */
825                union {                                  /* TCR          */
826                      unsigned char BYTE;                /*  Byte Access */
827                      struct {                           /*  Bit  Access */
828                             unsigned char CMIEB:1;      /*    CMIEB     */
829                             unsigned char CMIEA:1;      /*    CMIEA     */
830                             unsigned char OVIE :1;      /*    OVIE      */
831                             unsigned char CCLR :2;      /*    CCLR      */
832                             unsigned char CKS  :3;      /*    CKS       */
833                             }      BIT;                 /*              */
834                      }          TCR;                    /*              */
835                char             wk1;                    /*              */
836                union {                                  /* TCSR         */
837                      unsigned char BYTE;                /*  Byte Access */
838                      struct {                           /*  Bit  Access */
839                             unsigned char CMFB:1;       /*    CMFB      */
840                             unsigned char CMFA:1;       /*    CMFA      */
841                             unsigned char OVF :1;       /*    OVF       */
842                             unsigned char ICE :1;       /*    ICE       */
843                             unsigned char OS  :4;       /*    OS        */
844                             }      BIT;                 /*              */
845                      }          TCSR;                   /*              */
846                char             wk2;                    /*              */
847                unsigned char    TCORA;                  /* TCORA        */
848                char             wk3;                    /*              */
849                unsigned char    TCORB;                  /* TCORB        */
850                char             wk4;                    /*              */
851                unsigned char    TCNT;                   /* TCNT         */
852 };                                                      /*              */
853 struct st_tmr2 {                                        /* struct TMR2  */
854                union {                                  /* TCR          */
855                      unsigned char BYTE;                /*  Byte Access */
856                      struct {                           /*  Bit  Access */
857                             unsigned char CMIEB:1;      /*    CMIEB     */
858                             unsigned char CMIEA:1;      /*    CMIEA     */
859                             unsigned char OVIE :1;      /*    OVIE      */
860                             unsigned char CCLR :2;      /*    CCLR      */
861                             unsigned char CKS  :3;      /*    CKS       */
862                             }      BIT;                 /*              */
863                      }          TCR;                    /*              */
864                char             wk1;                    /*              */
865                union {                                  /* TCSR         */
866                      unsigned char BYTE;                /*  Byte Access */
867                      struct {                           /*  Bit  Access */
868                             unsigned char CMFB:1;       /*    CMFB      */
869                             unsigned char CMFA:1;       /*    CMFA      */
870                             unsigned char OVF :1;       /*    OVF       */
871                             unsigned char     :1;       /*              */
872                             unsigned char OS  :4;       /*    OS        */
873                             }      BIT;                 /*              */
874                      }          TCSR;                   /*              */
875                char             wk2;                    /*              */
876                unsigned char    TCORA;                  /* TCORA        */
877                char             wk3;                    /*              */
878                unsigned char    TCORB;                  /* TCORB        */
879                char             wk4;                    /*              */
880                unsigned char    TCNT;                   /* TCNT         */
881 };                                                      /*              */
882 union un_dastcr {                                       /* DASTCR       */
883                 unsigned char BYTE;                     /*  Byte Access */
884                 struct {                                /*  Bit  Access */
885                        unsigned char      :7;           /*              */
886                        unsigned char DASTE:1;           /*    DASTE     */
887                        }      BIT;                      /*              */
888 };                                                      /*              */
889 struct st_da {                                          /* struct D/A   */
890              unsigned char      DADR0;                  /* DADR0        */
891              unsigned char      DADR1;                  /* DADR1        */
892              union {                                    /* DACR         */
893                    unsigned char BYTE;                  /*  Byte Access */
894                    struct {                             /*  Bit  Access */
895                           unsigned char DAOE1:1;        /*    DAOE1     */
896                           unsigned char DAOE0:1;        /*    DAOE0     */
897                           unsigned char DAE  :1;        /*    DAE       */
898                           }      BIT;                   /*              */
899                    }            DACR;                   /*              */
900 };                                                      /*              */
901 struct st_tpc {                                         /* struct TPC   */
902               union {                                   /* TPMR         */
903                     unsigned char BYTE;                 /*  Byte Access */
904                     struct {                            /*  Bit  Access */
905                            unsigned char      :4;       /*              */
906                            unsigned char G3NOV:1;       /*    G3NOV     */
907                            unsigned char G2NOV:1;       /*    G2NOV     */
908                            unsigned char G1NOV:1;       /*    G1NOV     */
909                            unsigned char G0NOV:1;       /*    G0NOV     */
910                            }      BIT;                  /*              */
911                     }           TPMR;                   /*              */
912               union {                                   /* TPCR         */
913                     unsigned char BYTE;                 /*  Byte Access */
914                     struct {                            /*  Bit  Access */
915                            unsigned char G3CMS:2;       /*    G3CMS     */
916                            unsigned char G2CMS:2;       /*    G2CMS     */
917                            unsigned char G1CMS:2;       /*    G1CMS     */
918                            unsigned char G0CMS:2;       /*    G0CMS     */
919                            }      BIT;                  /*              */
920                     }           TPCR;                   /*              */
921               union {                                   /* NDERB        */
922                     unsigned char BYTE;                 /*  Byte Access */
923                     struct {                            /*  Bit  Access */
924                            unsigned char B15:1;         /*    NDER15    */
925                            unsigned char B14:1;         /*    NDER14    */
926                            unsigned char B13:1;         /*    NDER13    */
927                            unsigned char B12:1;         /*    NDER12    */
928                            unsigned char B11:1;         /*    NDER11    */
929                            unsigned char B10:1;         /*    NDER10    */
930                            unsigned char B9 :1;         /*    NDER9     */
931                            unsigned char B8 :1;         /*    NDER8     */
932                            }      BIT;                  /*              */
933                     }           NDERB;                  /*              */
934               union {                                   /* NDERA        */
935                     unsigned char BYTE;                 /*  Byte Access */
936                     struct {                            /*  Bit  Access */
937                            unsigned char B7:1;          /*    NDER7     */
938                            unsigned char B6:1;          /*    NDER6     */
939                            unsigned char B5:1;          /*    NDER5     */
940                            unsigned char B4:1;          /*    NDER4     */
941                            unsigned char B3:1;          /*    NDER3     */
942                            unsigned char B2:1;          /*    NDER2     */
943                            unsigned char B1:1;          /*    NDER1     */
944                            unsigned char B0:1;          /*    NDER0     */
945                            }      BIT;                  /*              */
946                     }           NDERA;                  /*              */
947               union {                                   /* NDRB (H'A4)  */
948                     unsigned char BYTE;                 /*  Byte Access */
949                     struct {                            /*  Bit  Access */
950                            unsigned char B15:1;         /*    NDR15     */
951                            unsigned char B14:1;         /*    NDR14     */
952                            unsigned char B13:1;         /*    NDR13     */
953                            unsigned char B12:1;         /*    NDR12     */
954                            unsigned char B11:1;         /*    NDR11     */
955                            unsigned char B10:1;         /*    NDR10     */
956                            unsigned char B9 :1;         /*    NDR9      */
957                            unsigned char B8 :1;         /*    NDR8      */
958                            }      BIT;                  /*              */
959                     }           NDRB1;                  /*              */
960               union {                                   /* NDRA (H'A5)  */
961                     unsigned char BYTE;                 /*  Byte Access */
962                     struct {                            /*  Bit  Access */
963                            unsigned char B7:1;          /*    NDR7      */
964                            unsigned char B6:1;          /*    NDR6      */
965                            unsigned char B5:1;          /*    NDR5      */
966                            unsigned char B4:1;          /*    NDR4      */
967                            unsigned char B3:1;          /*    NDR3      */
968                            unsigned char B2:1;          /*    NDR2      */
969                            unsigned char B1:1;          /*    NDR1      */
970                            unsigned char B0:1;          /*    NDR0      */
971                            }      BIT;                  /*              */
972                     }           NDRA1;                  /*              */
973               union {                                   /* NDRB (H'A6)  */
974                     unsigned char BYTE;                 /*  Byte Access */
975                     struct {                            /*  Bit  Access */
976                            unsigned char    :4;         /*              */
977                            unsigned char B11:1;         /*    NDR11     */
978                            unsigned char B10:1;         /*    NDR10     */
979                            unsigned char B9 :1;         /*    NDR9      */
980                            unsigned char B8 :1;         /*    NDR8      */
981                            }      BIT;                  /*              */
982                     }           NDRB2;                  /*              */
983               union {                                   /* NDRA (H'A7)  */
984                     unsigned char BYTE;                 /*  Byte Access */
985                     struct {                            /*  Bit  Access */
986                            unsigned char   :4;          /*              */
987                            unsigned char B3:1;          /*    NDR3      */
988                            unsigned char B2:1;          /*    NDR2      */
989                            unsigned char B1:1;          /*    NDR1      */
990                            unsigned char B0:1;          /*    NDR0      */
991                            }      BIT;                  /*              */
992                     }           NDRA2;                  /*              */
993 };                                                      /*              */
994 struct st_sci {                                         /* struct SCI   */
995               union {                                   /* SMR          */
996                     unsigned char BYTE;                 /*  Byte Access */
997                     struct {                            /*  Bit  Access */
998                            unsigned char CA  :1;        /*    C/A       */
999                            unsigned char CHR :1;        /*    CHR       */
1000                            unsigned char PE  :1;        /*    PE        */
1001                            unsigned char OE  :1;        /*    O/E       */
1002                            unsigned char STOP:1;        /*    STOP      */
1003                            unsigned char MP  :1;        /*    MP        */
1004                            unsigned char CKS :2;        /*    CKS       */
1005                            }      BIT;                  /*              */
1006                     }           SMR;                    /*              */
1007               unsigned char     BRR;                    /* BRR          */
1008               union {                                   /* SCR          */
1009                     unsigned char BYTE;                 /*  Byte Access */
1010                     struct {                            /*  Bit  Access */
1011                            unsigned char TIE :1;        /*    TIE       */
1012                            unsigned char RIE :1;        /*    RIE       */
1013                            unsigned char TE  :1;        /*    TE        */
1014                            unsigned char RE  :1;        /*    RE        */
1015                            unsigned char MPIE:1;        /*    MPIE      */
1016                            unsigned char TEIE:1;        /*    TEIE      */
1017                            unsigned char CKE :2;        /*    CKE       */
1018                            }      BIT;                  /*              */
1019                     }           SCR;                    /*              */
1020               unsigned char     TDR;                    /* TDR          */
1021               union {                                   /* SSR          */
1022                     unsigned char BYTE;                 /*  Byte Access */
1023                     struct {                            /*  Bit  Access */
1024                            unsigned char TDRE:1;        /*    TDRE      */
1025                            unsigned char RDRF:1;        /*    RDRF      */
1026                            unsigned char ORER:1;        /*    ORER      */
1027                            unsigned char FER :1;        /*    FER       */
1028                            unsigned char PER :1;        /*    PER       */
1029                            unsigned char TEND:1;        /*    TEND      */
1030                            unsigned char MPB :1;        /*    MPB       */
1031                            unsigned char MPBT:1;        /*    MPBT      */
1032                            }      BIT;                  /*              */
1033                     }           SSR;                    /*              */
1034               unsigned char     RDR;                    /* RDR          */
1035               union {                                   /* SCMR         */
1036                     unsigned char BYTE;                 /*  Byte Access */
1037                     struct {                            /*  Bit  Access */
1038                            unsigned char     :4;        /*              */
1039                            unsigned char SDIR:1;        /*    SDIR      */
1040                            unsigned char SINV:1;        /*    SINV      */
1041                            unsigned char     :1;        /*              */
1042                            unsigned char SMIF:1;        /*    SMIF      */
1043                            }      BIT;                  /*              */
1044                     }           SCMR;                   /*              */
1045 };                                                      /*              */
1046 struct st_smci {                                        /* struct SMCI  */
1047                union {                                  /* SMR          */
1048                      unsigned char BYTE;                /*  Byte Access */
1049                      struct {                           /*  Bit  Access */
1050                             unsigned char GM  :1;       /*    GM        */
1051                             unsigned char CHR :1;       /*    CHR       */
1052                             unsigned char PE  :1;       /*    PE        */
1053                             unsigned char OE  :1;       /*    O/E       */
1054                             unsigned char STOP:1;       /*    STOP      */
1055                             unsigned char MP  :1;       /*    MP        */
1056                             unsigned char CKS :2;       /*    CKS       */
1057                             }      BIT;                 /*              */
1058                      }          SMR;                    /*              */
1059                unsigned char    BRR;                    /* BRR          */
1060                union {                                  /* SCR          */
1061                      unsigned char BYTE;                /*  Byte Access */
1062                      struct {                           /*  Bit  Access */
1063                             unsigned char TIE :1;       /*    TIE       */
1064                             unsigned char RIE :1;       /*    RIE       */
1065                             unsigned char TE  :1;       /*    TE        */
1066                             unsigned char RE  :1;       /*    RE        */
1067                             unsigned char MPIE:1;       /*    MPIE      */
1068                             unsigned char TEIE:1;       /*    TEIE      */
1069                             unsigned char CKE :2;       /*    CKE       */
1070                             }      BIT;                 /*              */
1071                      }          SCR;                    /*              */
1072                unsigned char    TDR;                    /* TDR          */
1073                union {                                  /* SSR          */
1074                      unsigned char BYTE;                /*  Byte Access */
1075                      struct {                           /*  Bit  Access */
1076                             unsigned char TDRE:1;       /*    TDRE      */
1077                             unsigned char RDRF:1;       /*    RDRF      */
1078                             unsigned char ORER:1;       /*    ORER      */
1079                             unsigned char ERS :1;       /*    ERS       */
1080                             unsigned char PER :1;       /*    PER       */
1081                             unsigned char TEND:1;       /*    TEND      */
1082                             unsigned char MPB :1;       /*    MPB       */
1083                             unsigned char MPBT:1;       /*    MPBT      */
1084                             }      BIT;                 /*              */
1085                      }          SSR;                    /*              */
1086                unsigned char    RDR;                    /* RDR          */
1087                union {                                  /* SCMR         */
1088                      unsigned char BYTE;                /*  Byte Access */
1089                      struct {                           /*  Bit  Access */
1090                             unsigned char     :4;       /*              */
1091                             unsigned char SDIR:1;       /*    SDIR      */
1092                             unsigned char SINV:1;       /*    SINV      */
1093                             unsigned char     :1;       /*              */
1094                             unsigned char SMIF:1;       /*    SMIF      */
1095                             }      BIT;                 /*              */
1096                      }          SCMR;                   /*              */
1097 };                                                      /*              */
1098 struct st_ad {                                          /* struct A/D   */
1099              unsigned int       ADDRA;                  /* ADDRA        */
1100              unsigned int       ADDRB;                  /* ADDRB        */
1101              unsigned int       ADDRC;                  /* ADDRC        */
1102              unsigned int       ADDRD;                  /* ADDRD        */
1103              union {                                    /* ADCSR        */
1104                    unsigned char BYTE;                  /*  Byte Access */
1105                    struct {                             /*  Bit  Access */
1106                           unsigned char ADF :1;         /*    ADF       */
1107                           unsigned char ADIE:1;         /*    ADIE      */
1108                           unsigned char ADST:1;         /*    ADST      */
1109                           unsigned char SCAN:1;         /*    SCAN      */
1110                           unsigned char CKS :1;         /*    CKS       */
1111                           unsigned char CH  :3;         /*    CH        */
1112                           }      BIT;                   /*              */
1113                    }            ADCSR;                  /*              */
1114              union {                                    /* ADCR         */
1115                    unsigned char BYTE;                  /*  Byte Access */
1116                    struct {                             /*  Bit  Access */
1117                           unsigned char TRGE:1;         /*    TRGE      */
1118                           }      BIT;                   /*              */
1119                    }            ADCR;                   /*              */
1120 };                                                      /*              */
1121 #define P1DDR   (*(volatile unsigned char   *)0xFEE000) /* P1DDR Address*/
1122 #define P2DDR   (*(volatile unsigned char   *)0xFEE001) /* P2DDR Address*/
1123 #define P3DDR   (*(volatile unsigned char   *)0xFEE002) /* P3DDR Address*/
1124 #define P4DDR   (*(volatile unsigned char   *)0xFEE003) /* P4DDR Address*/
1125 #define P5DDR   (*(volatile unsigned char   *)0xFEE004) /* P5DDR Address*/
1126 #define P6DDR   (*(volatile unsigned char   *)0xFEE005) /* P6DDR Address*/
1127 #define P8DDR   (*(volatile unsigned char   *)0xFEE007) /* P8DDR Address*/
1128 #define P9DDR   (*(volatile unsigned char   *)0xFEE008) /* P9DDR Address*/
1129 #define PADDR   (*(volatile unsigned char   *)0xFEE009) /* PADDR Address*/
1130 #define PBDDR   (*(volatile unsigned char   *)0xFEE00A) /* PBDDR Address*/
1131 #define P2PCR   (*(volatile union  un_p2pcr *)0xFEE03C) /* P2PCR Address*/
1132 #define P4PCR   (*(volatile union  un_p4pcr *)0xFEE03E) /* P4PCR Address*/
1133 #define P5PCR   (*(volatile union  un_p5pcr *)0xFEE03F) /* P5PCR Address*/
1134 #define P1DR    (*(volatile union  un_p1dr  *)0xFFFFD0) /* P1DR  Address*/
1135 #define P2DR    (*(volatile union  un_p2dr  *)0xFFFFD1) /* P2DR  Address*/
1136 #define P3DR    (*(volatile union  un_p3dr  *)0xFFFFD2) /* P3DR  Address*/
1137 #define P4DR    (*(volatile union  un_p4dr  *)0xFFFFD3) /* P4DR  Address*/
1138 #define P5DR    (*(volatile union  un_p5dr  *)0xFFFFD4) /* P5DR  Address*/
1139 #define P6DR    (*(volatile union  un_p6dr  *)0xFFFFD5) /* P6DR  Address*/
1140 #define P7DR    (*(volatile union  un_p7dr  *)0xFFFFD6) /* P7DR  Address*/
1141 #define P8DR    (*(volatile union  un_p8dr  *)0xFFFFD7) /* P8DR  Address*/
1142 #define P9DR    (*(volatile union  un_p9dr  *)0xFFFFD8) /* P9DR  Address*/
1143 #define PADR    (*(volatile union  un_padr  *)0xFFFFD9) /* PADR  Address*/
1144 #define PBDR    (*(volatile union  un_pbdr  *)0xFFFFDA) /* PBDR  Address*/
1145 #define MDCR    (*(volatile union  un_mdcr  *)0xFEE011) /* MDCR  Address*/
1146 #define SYSCR   (*(volatile union  un_syscr *)0xFEE012) /* SYSCR Address*/
1147 #define DIVCR   (*(volatile union  un_divcr *)0xFEE01B) /* DIVCR Address*/
1148 #define MSTCR   (*(volatile union  un_mstcr *)0xFEE01C) /* MSTCR Address*/
1149 #define BSC     (*(volatile struct st_bsc   *)0xFEE012) /* BSC   Address*/
1150 #define INTC    (*(volatile struct st_intc  *)0xFEE014) /* INTC  Address*/
1151 #define DMAC0A  (*(volatile struct st_sam   *)0xFFFF20) /* DMAC 0A Addr */
1152 #define DMAC0B  (*(volatile struct st_sam   *)0xFFFF28) /* DMAC 0B Addr */
1153 #define DMAC1A  (*(volatile struct st_sam   *)0xFFFF30) /* DMAC 1A Addr */
1154 #define DMAC1B  (*(volatile struct st_sam   *)0xFFFF38) /* DMAC 1B Addr */
1155 #define DMAC0   (*(volatile struct st_fam   *)0xFFFF20) /* DMAC 0  Addr */
1156 #define DMAC1   (*(volatile struct st_fam   *)0xFFFF30) /* DMAC 1  Addr */
1157 #define FLASH   (*(volatile struct st_flash *)0xFEE076) /* FLASH Address*/
1158 #define ITU     (*(volatile struct st_itu   *)0xFFFF60) /* ITU   Address*/
1159 #define ITU0    (*(volatile struct st_itu0  *)0xFFFF68) /* ITU0  Address*/
1160 #define ITU1    (*(volatile struct st_itu0  *)0xFFFF70) /* ITU1  Address*/
1161 #define ITU2    (*(volatile struct st_itu0  *)0xFFFF78) /* ITU2  Address*/
1162 #define WDT     (*(volatile union  un_wdt   *)0xFFFF8C) /* WDT   Address*/
1163 #define TMR01   (*(volatile struct st_tmr01 *)0xFFFF80) /* TMR01 Address*/
1164 #define TMR23   (*(volatile struct st_tmr23 *)0xFFFF90) /* TMR23 Address*/
1165 #define TMR0    (*(volatile struct st_tmr0  *)0xFFFF80) /* TMR0  Address*/
1166 #define TMR1    (*(volatile struct st_tmr1  *)0xFFFF81) /* TMR1  Address*/
1167 #define TMR2    (*(volatile struct st_tmr2  *)0xFFFF90) /* TMR2  Address*/
1168 #define TMR3    (*(volatile struct st_tmr1  *)0xFFFF91) /* TMR3  Address*/
1169 #define DASTCR  (*(volatile union  un_dastcr*)0xFEE01A) /* DASTCRAddress*/
1170 #define DA      (*(volatile struct st_da    *)0xFFFF9C) /* D/A   Address*/
1171 #define TPC     (*(volatile struct st_tpc   *)0xFFFFA0) /* TPC   Address*/
1172 #define SCI0    (*(volatile struct st_sci   *)0xFFFFB0) /* SCI0  Address*/
1173 #define SCI1    (*(volatile struct st_sci   *)0xFFFFB8) /* SCI1  Address*/
1174 #define SCI2    (*(volatile struct st_sci   *)0xFFFFC0) /* SCI2  Address*/
1175 #define SMCI0   (*(volatile struct st_smci  *)0xFFFFB0) /* SMCI0 Address*/
1176 #define SMCI1   (*(volatile struct st_smci  *)0xFFFFB8) /* SMCI1 Address*/
1177 #define SMCI2   (*(volatile struct st_smci  *)0xFFFFC0) /* SMCI2 Address*/
1178 #define AD      (*(volatile struct st_ad    *)0xFFFFE0) /* A/D   Address*/