1 /*-------------------------------------------------------------------------
2 Register Declarations for the DALLAS DS80C390 Processor
3 far from complete, e.g. no CAN
5 Written By - Johan Knol, johan.knol@iduna.nl
7 This program is free software; you can redistribute it and/or modify it
8 under the terms of the GNU General Public License as published by the
9 Free Software Foundation; either version 2, or (at your option) any
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program; if not, write to the Free Software
19 Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
21 In other words, you are welcome to use, share and improve this program.
22 You are forbidden to forbid anyone else to use, share and improve
23 what you give them. Help stamp out software-hoarding!
24 -------------------------------------------------------------------------*/
29 sfr at 0x80 P4; // ce3..ce0, a19..a16
30 sfr at 0x81 SP; // stack pointer
31 sfr at 0x82 DPL; // data pointer 0 lsb
32 sfr at 0x83 DPH; // data pointer 0 msb
33 sfr at 0x84 DPL1; // data pointer 1 lsb
34 sfr at 0x85 DPH1; // data pointer 1 msb
35 sfr at 0x86 DPS; // data pointer select
36 sfr at 0x87 PCON; // power control
37 sfr at 0x88 TCON; // timer/counter control
46 sfr at 0x89 TMOD; // timer mode control
47 sfr at 0x8a TL0; // timer 0 lsb
48 sfr at 0x8b TL1; // timer 1 msb
49 sfr at 0x8c TH0; // timer 0 msb
50 sfr at 0x8d TH1; // timer 1 msb
51 sfr at 0x8e CKCON; // clock control
61 sfr at 0x91 EXIF; // external interrupt flag
63 sfr at 0x93 DPX; // extended datapointer 0
64 sfr at 0x95 DPX1; // extended datapointer 1
65 sfr at 0x98 SCON0; // serial 0 control
74 sbit at 0x9f FE_0; // depending on SMOD0
75 sfr at 0x99 SBUF0; // serial 0 data buffer
76 sfr at 0x9b ESP; // extended stack pointer
77 sfr at 0x9c AP; // address page
78 sfr at 0x9d ACON; // address control
79 sfr at 0xa0 P2; // never mind the sbits
82 sfr at 0xa8 IE; // interrupt enable
100 sfr at 0xb8 IP; // interupt priority
101 sbit at 0xb8 PX0; // external 0
102 sbit at 0xb9 PT0; // timer 0
103 sbit at 0xba PX1; // external 1
104 sbit at 0xbb PT1; // timer 1
105 sbit at 0xbc PS0; // serial port 0
106 sbit at 0xbd PT2; // timer 2
107 sbit at 0xbe PS1; // serial port 1
108 sfr at 0xc0 SCON1; // serial 1 control
117 sbit at 0xc7 FE_1; // depending on SMOD0
118 sfr at 0xc1 SBUF1; // serial 1 data buffer
119 sfr at 0xc4 PMR; // power managment
120 sfr at 0xc6 MCON; // memory control register
121 sfr at 0xc7 TA; // timed access register
122 sfr at 0xc8 T2CON; // timer 2 control
123 sbit at 0xc8 CP_RL; // capture/reload
124 sbit at 0xc9 C_T; // count/timer
125 sbit at 0xca TR2; // stop/run
130 sbit at 0xcf TF2; // overflow flag
131 sfr at 0xc9 T2MOD; // timer 2 mode
132 sfr at 0xca RCAP2L; // timer 2 capture/reload
133 sfr at 0xca RTL2; // depends on CP_RL
136 sfr at 0xcc TL2; // timer 2 lsb
137 sfr at 0xcd TH2; // timer 2 msb
138 sfr at 0xd0 PSW; // program status word (byte actually)
139 sbit at 0xd0 P; // parity
140 sbit at 0xd1 F1; // user flag 1
141 sbit at 0xd2 OV; // overflow flag
142 sbit at 0xd3 RS0; // register select l
143 sbit at 0xd4 RS1; // register select h
144 sbit at 0xd5 F0; // user flag 0
145 sbit at 0xd6 AC; // auxiliary carry flag
146 sbit at 0xd7 CY; // carry flag
147 sfr at 0xd1 MCNT0; // arithmetic accellerator
152 sfr at 0xd8 WDCON; // watch dog
161 sfr at 0xe0 ACC; // accumulator
162 sfr at 0xe8 EIE; // extended interrupt enable
171 sfr at 0xea MXAX; // extended address register
172 sfr at 0xf0 B; // aux accumulator
173 sfr at 0xf8 EIP; // extended interrupt priority
183 #endif /* DS80C390_H */