PICSim 0.8.1
PICsim - PIC Simulator
All Data Structures Files Functions Variables Typedefs Macros Modules Pages
p18fxxx_defs.h
1/* //########################################################################
2
3 PICsim - PIC simulator
4
5 //########################################################################
6
7 Copyright (c) : 2008-2022 Luis Claudio Gamboa Lopes
8
9 This program is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 2, or (at your option)
12 any later version.
13
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
18
19 You should have received a copy of the GNU General Public License
20 along with this program; if not, write to the Free Software
21 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
22
23 For e-mail suggestions : lcgamboa@yahoo.com
24 //######################################################################## */
25
26#ifdef __cplusplus
27extern "C"
28{
29#endif
30
36 typedef struct
37 {
38 // shadow stack
39 unsigned char WS;
40 unsigned char STATUSS;
41 unsigned char BSRS;
42
43 // not mapped
44#ifdef ICSPDBG
45 unsigned char *DEBUG;
46 unsigned char *BDMSR2;
47 unsigned char *BDMSR1;
48 unsigned char *BDMSR0;
49#endif
50
51 // maped
52 unsigned char *STATUS;
53 unsigned char *PLUSW2;
54 unsigned char *PREINC2;
55 unsigned char *POSTDEC2;
56 unsigned char *POSTINC2;
57 unsigned char *INDF2;
58 unsigned char *BSR;
59 unsigned char *PLUSW1;
60 unsigned char *PREINC1;
61 unsigned char *POSTDEC1;
62 unsigned char *POSTINC1;
63 unsigned char *INDF1;
64 unsigned char *WREG;
65 unsigned char *PLUSW0;
66 unsigned char *PREINC0;
67 unsigned char *POSTDEC0;
68 unsigned char *POSTINC0;
69 unsigned char *INDF0;
70 unsigned char *INTCON3;
71 unsigned char *INTCON2;
72 unsigned char *INTCON;
73 unsigned char *TABLAT;
74 unsigned char *STKPTR;
75 unsigned char *FSR2L;
76 unsigned char *FSR2H;
77 unsigned char *FSR1L;
78 unsigned char *FSR1H;
79 unsigned char *FSR0L;
80 unsigned char *FSR0H;
81 unsigned char *PRODL;
82 unsigned char *PRODH;
83 unsigned char *TBLPTRL;
84 unsigned char *TBLPTRH;
85 unsigned char *TBLPTRU;
86 unsigned char *PCL;
87 unsigned char *PCLATH;
88 unsigned char *PCLATU;
89 unsigned char *TOSL;
90 unsigned char *TOSH;
91 unsigned char *TOSU;
92 unsigned char *RCON;
93
94 unsigned char *PIE0;
95 unsigned char *PIR0;
96 unsigned char *IPR0;
97 unsigned char *PIE1;
98 unsigned char *PIR1;
99 unsigned char *IPR1;
100 unsigned char *PIE2;
101 unsigned char *PIR2;
102 unsigned char *IPR2;
103 unsigned char *PIE3;
104 unsigned char *PIR3;
105 unsigned char *IPR3;
106 unsigned char *PIE4;
107 unsigned char *PIR4;
108 unsigned char *IPR4;
109 unsigned char *PIE5;
110 unsigned char *PIR5;
111 unsigned char *IPR5;
112 unsigned char *PIE6;
113 unsigned char *PIR6;
114 unsigned char *IPR6;
115
116 unsigned char *PORTA;
117 unsigned char *PORTB;
118 unsigned char *PORTC;
119 unsigned char *PORTD;
120 unsigned char *PORTE;
121 unsigned char *PORTF;
122 unsigned char *PORTG;
123 unsigned char *LATA;
124 unsigned char *LATB;
125 unsigned char *LATC;
126 unsigned char *LATD;
127 unsigned char *LATE;
128 unsigned char *LATF;
129 unsigned char *LATG;
130 unsigned char *TRISA;
131 unsigned char *TRISB;
132 unsigned char *TRISC;
133 unsigned char *TRISD;
134 unsigned char *TRISE;
135 unsigned char *TRISF;
136 unsigned char *TRISG;
137
138 unsigned char *ANSELA;
139 unsigned char *ANSELB;
140 unsigned char *ANSELC;
141 unsigned char *ANSELD;
142 unsigned char *ANSELE;
143
144 unsigned char *IOCBF;
145 unsigned char *IOCBN;
146 unsigned char *IOCBP;
147
148 unsigned char *ADCON2;
149 unsigned char *ADCON1;
150 unsigned char *ADCON0;
151 unsigned char *ADRESL;
152 unsigned char *ADRESH;
153 unsigned char *ADCON3;
154 unsigned char *ADPCH;
155
156 unsigned char *T0CON;
157 unsigned char *TMR0L;
158 unsigned char *TMR0H;
159 unsigned char *T0CON0;
160 unsigned char *T0CON1;
161
162 unsigned char *T1CON;
163 unsigned char *TMR1L;
164 unsigned char *TMR1H;
165 unsigned char *T1CLK;
166
167 unsigned char *T3CON;
168 unsigned char *TMR3L;
169 unsigned char *TMR3H;
170
171 unsigned char *CCP2CON;
172 unsigned char *CCP1CON;
173 unsigned char *CCPR2L;
174 unsigned char *CCPR2H;
175 unsigned char *CCPR1L;
176 unsigned char *CCPR1H;
177
178 unsigned char *SSPCON1;
179 unsigned char *SSPCON2;
180 unsigned char *SSPSTAT;
181 unsigned char *SSPADD;
182 unsigned char *SSPBUF;
183
184 unsigned char *SSP1CON1;
185 unsigned char *SSP1CON2;
186 unsigned char *SSP1STAT;
187 unsigned char *SSP1ADD;
188 unsigned char *SSP1BUF;
189
190 unsigned char *EECON1;
191 unsigned char *EECON2;
192 unsigned char *EEDATA;
193 unsigned char *EEADR;
194 unsigned char *EEADRH;
195
196 unsigned char *NVMCON1;
197 unsigned char *NVMCON2;
198 unsigned char *NVMDAT;
199 unsigned char *NVMADRL;
200 unsigned char *NVMADRH;
201
202 unsigned char *RCREG;
203 unsigned char *TXREG;
204 unsigned char *SPBRG;
205 unsigned char *SPBRGH;
206 unsigned char *RCSTA;
207 unsigned char *TXSTA;
208 unsigned char *BAUDCON;
209
210 unsigned char *RCREG1;
211 unsigned char *TXREG1;
212 unsigned char *SPBRG1;
213 unsigned char *SPBRGH1;
214 unsigned char *RCSTA1;
215 unsigned char *TXSTA1;
216
217 unsigned char *RCREG2;
218 unsigned char *TXREG2;
219 unsigned char *SPBRG2;
220 unsigned char *SPBRGH2;
221 unsigned char *RCSTA2;
222 unsigned char *TXSTA2;
223
224 unsigned char *RC1REG;
225 unsigned char *TX1REG;
226 unsigned char *SP1BRGL;
227 unsigned char *SP1BRGH;
228 unsigned char *RC1STA;
229 unsigned char *TX1STA;
230 unsigned char *BAUDCON1;
231
232 unsigned char *RC2REG;
233 unsigned char *TX2REG;
234 unsigned char *SP2BRGL;
235 unsigned char *SP2BRGH;
236 unsigned char *RC2STA;
237 unsigned char *TX2STA;
238 unsigned char *BAUDCON2;
239
240 unsigned char *T2CON;
241 unsigned char *PR2;
242 unsigned char *TMR2;
243
244 unsigned char *T2TMR;
245 unsigned char *T2PR;
246
247 unsigned char *WDTCON;
248
249 unsigned char *WDTCON0;
250
251 // PPS OUT
252 unsigned char *RA0PPS;
253 unsigned char *RA1PPS;
254 unsigned char *RA2PPS;
255 unsigned char *RA3PPS;
256 unsigned char *RA4PPS;
257 unsigned char *RA5PPS;
258 unsigned char *RA6PPS;
259 unsigned char *RA7PPS;
260 unsigned char *RB0PPS;
261 unsigned char *RB1PPS;
262 unsigned char *RB2PPS;
263 unsigned char *RB3PPS;
264 unsigned char *RB4PPS;
265 unsigned char *RB5PPS;
266 unsigned char *RB6PPS;
267 unsigned char *RB7PPS;
268 unsigned char *RC0PPS;
269 unsigned char *RC1PPS;
270 unsigned char *RC2PPS;
271 unsigned char *RC3PPS;
272 unsigned char *RC4PPS;
273 unsigned char *RC5PPS;
274 unsigned char *RC6PPS;
275 unsigned char *RC7PPS;
276 unsigned char *RD0PPS;
277 unsigned char *RD1PPS;
278 unsigned char *RD2PPS;
279 unsigned char *RD3PPS;
280 unsigned char *RD4PPS;
281 unsigned char *RD5PPS;
282 unsigned char *RD6PPS;
283 unsigned char *RD7PPS;
284 unsigned char *RE0PPS;
285 unsigned char *RE1PPS;
286 unsigned char *RE2PPS;
287
288 /*
289 unsigned char * TXREG1;
290 unsigned char * RCREG1;
291 unsigned char * SPBRG1;
292 unsigned char * SPBRGH1;
293 unsigned char * RCSTA1;
294 unsigned char * TXSTA1;
295
296 unsigned char * UFRML;
297 unsigned char * UFRMH;
298 *
299 unsigned char * SPPCON;
300 unsigned char * SPPDATA;
301 unsigned char * SPPCFG;
302 unsigned char * SPPEPS;
303 unsigned char * SRCON1;
304 unsigned char * SRCON0;
305 unsigned char * CCPTMRS;
306 unsigned char * VREGCON;
307 unsigned char * UIR;
308 unsigned char * UIE;
309 unsigned char * UEIR;
310 unsigned char * UEIE;
311 unsigned char * USTAT;
312 unsigned char * UCON;
313 unsigned char * UADDR;
314 unsigned char * UCFG;
315 unsigned char * UEP0;
316 unsigned char * UEP1;
317 unsigned char * UEP2;
318 unsigned char * UEP3;
319 unsigned char * UEP4;
320 unsigned char * UEP5;
321 unsigned char * UEP6;
322 unsigned char * UEP7;
323 unsigned char * UEP8;
324 unsigned char * UEP9;
325 unsigned char * UEP10;
326 unsigned char * UEP11;
327 unsigned char * UEP12;
328 unsigned char * UEP13;
329 unsigned char * UEP14;
330 unsigned char * UEP15;
331 unsigned char * SLRCON;
332 unsigned char * VREFCON2;
333 unsigned char * VREFCON1;
334 unsigned char * VREFCON0;
335 unsigned char * PMD0;
336 unsigned char * PMD1;
337 unsigned char * WPUB;
338 unsigned char * IOCB;
339 unsigned char * IOCC;
340 unsigned char * CTMUICON;
341 unsigned char * CTMUCONL;
342 unsigned char * CTMUCONH;
343 unsigned char * CM1CON0;
344 unsigned char * CM2CON0;
345 unsigned char * CM2CON1;
346 unsigned char * OSCTUNE;
347 unsigned char * T3GCON;
348 unsigned char * ACTCON;
349 unsigned char * CMCON;
350 unsigned char * CVRCON;
351 unsigned char * ECCP1AS;
352 unsigned char * ECCP1DEL;
353 unsigned char * BAUDCON;
354 unsigned char * PWM1CON;
355 unsigned char * BAUDCON1;
356 unsigned char * PSTR1CON;
357 unsigned char * SSP1CON2;
358 unsigned char * SSP1CON1;
359 unsigned char * SSP1STAT;
360 unsigned char * SSP1ADD;
361 unsigned char * SSP1BUF;
362 unsigned char * SSP1MSK;
363 unsigned char * SSP1CON3;
364 unsigned char * T1GCON;
365 unsigned char * LVDCON;
366 unsigned char * HLVDCON;
367 unsigned char * OSCCON2;
368 unsigned char * OSCCON;
369 */
370 } P18map_t;
371
372#ifdef __cplusplus
373}
374#endif
PICsim P18 memory map structure.
Definition p18fxxx_defs.h:37