89929a4a10673da7d2f8ef67b022fb0c48466505
[fw/sdcc] / as / hc08 / m6808.h
1 /* m6808.h */
2
3 /*
4  * (C) Copyright 1993-2002
5  * All Rights Reserved
6  *
7  * Alan R. Baldwin
8  * 721 Berkeley St.
9  * Kent, Ohio  44240
10  */
11
12 /*)BUILD
13         $(PROGRAM) =    AS6808
14         $(INCLUDE) = {
15                 ASM.H
16                 M6808.H
17         }
18         $(FILES) = {
19                 M08EXT.C
20                 M08MCH.C
21                 M08ADR.C
22                 M08PST.C
23                 ASMAIN.C
24                 ASLEX.C
25                 ASSYM.C
26                 ASSUBR.C
27                 ASEXPR.C
28                 ASDATA.C
29                 ASLIST.C
30                 ASOUT.C
31         }
32         $(STACK) = 3000
33 */
34
35 struct adsym
36 {
37         char    a_str[4];       /* addressing string */
38         int     a_val;          /* addressing mode value */
39 };
40
41 /*
42  * Addressing types
43  */
44 #define S_IMMED 30
45 #define S_DIR   31
46 #define S_EXT   32
47 #define S_IX    33
48 #define S_IXP   34
49 #define S_IX1   35
50 #define S_IX1P  36
51 #define S_IX2   37
52 #define S_IX2P  38
53 #define S_IS    39
54 #define S_SP1   40
55 #define S_SP2   41
56 #define S_A     42
57 #define S_X     43
58 #define S_S     44
59 #define S_XP    45
60
61 /*
62  * Instruction types
63  */
64 #define S_INH   60
65 #define S_BRA   61
66 #define S_TYP1  62
67 #define S_TYP2  63
68 #define S_TYP3  64
69 #define S_TYP4  65
70 #define S_TYPAI 66
71 #define S_TYPHX 67
72 #define S_CBEQ  68
73 #define S_CQAX  69
74 #define S_DBNZ  70
75 #define S_DZAX  71
76 #define S_MOV   72
77
78 /*
79  * Set Direct Pointer
80  */
81 #define S_SDP   80
82
83
84         /* machine dependent functions */
85
86 #ifdef  OTHERSYSTEM
87         
88         /* m08adr.c */
89 extern  struct  adsym   axs[];
90 extern  int             addr(struct expr *esp);
91 extern  int             admode(struct adsym *sp);
92 extern  int             any(int c, char *str);
93 extern  int             srch(char *str);
94
95         /* m08mch.c */
96 extern  VOID            machine(struct mne *mp);
97 extern  int             chkindx(struct expr *exp);
98 extern  int             mchpcr(struct expr *esp);
99 extern  VOID            minit(void);
100 extern  int             comma(void);
101
102 #else
103
104         /* m08adr.c */
105 extern  struct  adsym   axs[];
106 extern  int             addr();
107 extern  int             admode();
108 extern  int             any();
109 extern  int             srch();
110
111         /* m08mch.c */
112 extern  VOID            machine();
113 extern  int             chkindx();
114 extern  int             mchpcr();
115 extern  VOID            minit();
116 extern  int             comma();
117
118 #endif
119