Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
1186 | savelij | 1 | ifndef __regz8inc ; avoid multiple inclusion |
2 | __regz8inc equ 1 |
||
3 | |||
4 | save |
||
5 | listing off ; kein Listing ueber diesen File |
||
6 | |||
7 | ;**************************************************************************** |
||
8 | ;* * |
||
9 | ;* AS 1.42 - File REGZ8.INC * |
||
10 | ;* * |
||
11 | ;* Sinn : contains SFR and Bit Definitionen for Zilog Z8 Processors * |
||
12 | ;* * |
||
13 | ;**************************************************************************** |
||
14 | |||
15 | ;---------------------------------------------------------------------------- |
||
16 | ; Helper Macros |
||
17 | |||
18 | __z8bit macro {intlabel},reg,bitpos |
||
19 | __label__ defbit reg,bitpos |
||
20 | endm |
||
21 | __z8cbit macro {intlabel},reg,bitpos |
||
22 | __label__ equ 1 << bitpos |
||
23 | endm |
||
24 | |||
25 | __z8bfield macro {intlabel},reg,start,count |
||
26 | __label__ equ ((1 << count) - 1) << start |
||
27 | endm |
||
28 | __z8cbfield macro {intlabel},reg,start,count |
||
29 | __label__ equ ((1 << count) - 1) << start |
||
30 | endm |
||
31 | |||
32 | |||
33 | ;---------------------------------------------------------------------------- |
||
34 | ; Include proper CPU-specific register definitions |
||
35 | |||
36 | switch MOMCPUNAME |
||
37 | case "Z8601" |
||
38 | RAMEND sfr 7fh |
||
39 | ROMEND label 7ffh |
||
40 | __hastimer1 equ 1 |
||
41 | include "z8/z86xx.inc" |
||
42 | |||
43 | case "Z8603" |
||
44 | RAMEND sfr 7fh |
||
45 | __hastimer1 equ 1 |
||
46 | include "z8/z86xx.inc" |
||
47 | |||
48 | case "Z86C03","Z86E03" |
||
49 | RAMEND sfr 3fh |
||
50 | ROMEND label 1ffh |
||
51 | __hastimer1 equ 0 |
||
52 | __haswdt equ 0 |
||
53 | __hasspi equ 1 |
||
54 | include "z8/z86cxx.inc" |
||
55 | |||
56 | ;case "Z8604" |
||
57 | case "Z86C06","Z86E06" |
||
58 | RAMEND sfr 7fh |
||
59 | ROMEND label 0fffh |
||
60 | __hastimer1 equ 1 |
||
61 | __haswdt equ 1 |
||
62 | __hasspi equ 1 |
||
63 | include "z8/z86cxx.inc" |
||
64 | |||
65 | case "Z86C08" |
||
66 | RAMEND sfr 7fh |
||
67 | ROMEND label 7ffh |
||
68 | __hastimer1 equ 1 |
||
69 | __haswdt equ 0 |
||
70 | __hasspi equ 0 |
||
71 | include "z8/z86cxx.inc" |
||
72 | |||
73 | case "Z86C21" |
||
74 | RAMEND sfr 0efh |
||
75 | ROMEND label 1fffh |
||
76 | __hastimer1 equ 1 |
||
77 | include "z8/z86xx.inc" |
||
78 | |||
79 | case "Z86E21" |
||
80 | RAMEND sfr 0efh |
||
81 | ROMEND label 1fffh |
||
82 | __hastimer1 equ 1 |
||
83 | include "z8/z86xx.inc" |
||
84 | |||
85 | case "Z86C30" |
||
86 | RAMEND sfr 0efh |
||
87 | ROMEND label 0fffh |
||
88 | __hastimer1 equ 1 |
||
89 | __haswdt equ 0 |
||
90 | __hasspi equ 0 |
||
91 | include "z8/z86cxx.inc" |
||
92 | |||
93 | case "Z86C31" |
||
94 | RAMEND sfr 7fh |
||
95 | ROMEND label 7ffh |
||
96 | __hastimer1 equ 1 |
||
97 | __haswdt equ 0 |
||
98 | __hasspi equ 0 |
||
99 | include "z8/z86cxx.inc" |
||
100 | |||
101 | case "Z86C32" |
||
102 | RAMEND sfr 0efh |
||
103 | ROMEND label 7ffh |
||
104 | __hastimer1 equ 1 |
||
105 | __haswdt equ 0 |
||
106 | __hasspi equ 0 |
||
107 | include "z8/z86cxx.inc" |
||
108 | |||
109 | case "Z86C40" |
||
110 | RAMEND sfr 0efh |
||
111 | ROMEND label 0fffh |
||
112 | __hastimer1 equ 1 |
||
113 | __haswdt equ 0 |
||
114 | __hasspi equ 0 |
||
115 | include "z8/z86cxx.inc" |
||
116 | |||
117 | case "Z88C00","Z88C01" |
||
118 | RAMEND sfr 0bfh |
||
119 | include "z8/z88c0x.inc" |
||
120 | |||
121 | case "Z8F0130" |
||
122 | RAMEND sfr 0ffh |
||
123 | ROMEND label 03ffh |
||
124 | __hasadc equ 0 |
||
125 | include "z8/f0830.inc" |
||
126 | |||
127 | case "Z8F0131" |
||
128 | RAMEND sfr 0ffh |
||
129 | ROMEND label 03ffh |
||
130 | __hasadc equ 1 |
||
131 | include "z8/f0830.inc" |
||
132 | |||
133 | case "Z8F0230" |
||
134 | RAMEND sfr 0ffh |
||
135 | ROMEND label 07ffh |
||
136 | __hasadc equ 0 |
||
137 | include "z8/f0830.inc" |
||
138 | |||
139 | case "Z8F0231" |
||
140 | RAMEND sfr 0ffh |
||
141 | ROMEND label 07ffh |
||
142 | __hasadc equ 1 |
||
143 | include "z8/f0830.inc" |
||
144 | |||
145 | case "Z8F0430" |
||
146 | RAMEND sfr 0ffh |
||
147 | ROMEND label 0fffh |
||
148 | __hasadc equ 0 |
||
149 | include "z8/f0830.inc" |
||
150 | |||
151 | case "Z8F0431" |
||
152 | RAMEND sfr 0ffh |
||
153 | ROMEND label 0fffh |
||
154 | __hasadc equ 1 |
||
155 | include "z8/f0830.inc" |
||
156 | |||
157 | case "Z8F0830" |
||
158 | RAMEND sfr 0ffh |
||
159 | ROMEND label 1fffh |
||
160 | __hasadc equ 0 |
||
161 | include "z8/f0830.inc" |
||
162 | |||
163 | case "Z8F0831" |
||
164 | RAMEND sfr 0ffh |
||
165 | ROMEND label 1fffh |
||
166 | __hasadc equ 1 |
||
167 | include "z8/f0830.inc" |
||
168 | |||
169 | case "Z8F1232" |
||
170 | RAMEND sfr 0ffh |
||
171 | ROMEND label 2fffh |
||
172 | __hasadc equ 0 |
||
173 | include "z8/f0830.inc" |
||
174 | |||
175 | case "Z8F1233" |
||
176 | RAMEND sfr 0ffh |
||
177 | ROMEND label 2fffh |
||
178 | __hasadc equ 1 |
||
179 | include "z8/f0830.inc" |
||
180 | |||
181 | case "Z8F0113" |
||
182 | RAMEND sfr 0ffh |
||
183 | ROMEND label 3ffh |
||
184 | __hasadc equ 0 |
||
185 | include "z8/f0823.inc" |
||
186 | |||
187 | case "Z8F0123" |
||
188 | RAMEND sfr 0ffh |
||
189 | ROMEND label 3ffh |
||
190 | __hasadc equ 1 |
||
191 | include "z8/f0823.inc" |
||
192 | |||
193 | case "Z8F0213" |
||
194 | RAMEND sfr 1ffh |
||
195 | ROMEND label 7ffh |
||
196 | __hasadc equ 0 |
||
197 | include "z8/f0823.inc" |
||
198 | |||
199 | case "Z8F0223" |
||
200 | RAMEND sfr 1ffh |
||
201 | ROMEND label 7ffh |
||
202 | __hasadc equ 1 |
||
203 | include "z8/f0823.inc" |
||
204 | |||
205 | case "Z8F0413" |
||
206 | RAMEND sfr 3ffh |
||
207 | ROMEND label 0fffh |
||
208 | __hasadc equ 0 |
||
209 | include "z8/f0823.inc" |
||
210 | |||
211 | case "Z8F0423" |
||
212 | RAMEND sfr 3ffh |
||
213 | ROMEND label 0fffh |
||
214 | __hasadc equ 1 |
||
215 | include "z8/f0823.inc" |
||
216 | |||
217 | case "Z8F0813" |
||
218 | RAMEND sfr 3ffh |
||
219 | ROMEND label 1fffh |
||
220 | __hasadc equ 0 |
||
221 | include "z8/f0823.inc" |
||
222 | |||
223 | case "Z8F0823" |
||
224 | RAMEND sfr 3ffh |
||
225 | ROMEND label 1fffh |
||
226 | __hasadc equ 1 |
||
227 | include "z8/f0823.inc" |
||
228 | |||
229 | case "Z8F011A" |
||
230 | RAMEND sfr 0ffh |
||
231 | ROMEND label 3ffh |
||
232 | __hasadc equ 0 |
||
233 | include "z8/f082a.inc" |
||
234 | |||
235 | case "Z8F012A" |
||
236 | RAMEND sfr 0ffh |
||
237 | ROMEND label 3ffh |
||
238 | __hasadc equ 1 |
||
239 | include "z8/f082a.inc" |
||
240 | |||
241 | case "Z8F021A" |
||
242 | RAMEND sfr 1ffh |
||
243 | ROMEND label 7ffh |
||
244 | __hasadc equ 0 |
||
245 | include "z8/f082a.inc" |
||
246 | |||
247 | case "Z8F022A" |
||
248 | RAMEND sfr 1ffh |
||
249 | ROMEND label 7ffh |
||
250 | __hasadc equ 1 |
||
251 | include "z8/f082a.inc" |
||
252 | |||
253 | case "Z8F041A" |
||
254 | RAMEND sfr 3ffh |
||
255 | ROMEND label 0fffh |
||
256 | __hasadc equ 0 |
||
257 | include "z8/f082a.inc" |
||
258 | |||
259 | case "Z8F042A" |
||
260 | RAMEND sfr 3ffh |
||
261 | ROMEND label 0fffh |
||
262 | __hasadc equ 1 |
||
263 | include "z8/f082a.inc" |
||
264 | |||
265 | case "Z8F081A" |
||
266 | RAMEND sfr 3ffh |
||
267 | ROMEND label 1fffh |
||
268 | __hasadc equ 0 |
||
269 | include "z8/f082a.inc" |
||
270 | |||
271 | case "Z8F082A" |
||
272 | RAMEND sfr 3ffh |
||
273 | ROMEND label 1fffh |
||
274 | __hasadc equ 1 |
||
275 | include "z8/f082a.inc" |
||
276 | |||
277 | case "Z8F0411" |
||
278 | RAMEND sfr 3ffh |
||
279 | ROMEND label 0fffh |
||
280 | __hasadc equ 0 |
||
281 | __hasspi equ 0 |
||
282 | include "z8/f0822.inc" |
||
283 | |||
284 | case "Z8F0412" |
||
285 | RAMEND sfr 3ffh |
||
286 | ROMEND label 0fffh |
||
287 | __hasadc equ 0 |
||
288 | __hasspi equ 1 |
||
289 | include "z8/f0822.inc" |
||
290 | |||
291 | case "Z8F0421" |
||
292 | RAMEND sfr 3ffh |
||
293 | ROMEND label 0fffh |
||
294 | __hasadc equ 1 |
||
295 | __hasspi equ 0 |
||
296 | include "z8/f0822.inc" |
||
297 | |||
298 | case "Z8F0422" |
||
299 | RAMEND sfr 3ffh |
||
300 | ROMEND label 0fffh |
||
301 | __hasadc equ 1 |
||
302 | __hasspi equ 1 |
||
303 | include "z8/f0822.inc" |
||
304 | |||
305 | case "Z8F0811" |
||
306 | RAMEND sfr 3ffh |
||
307 | ROMEND label 1fffh |
||
308 | __hasadc equ 0 |
||
309 | __hasspi equ 0 |
||
310 | include "z8/f0822.inc" |
||
311 | |||
312 | case "Z8F0812" |
||
313 | RAMEND sfr 3ffh |
||
314 | ROMEND label 1fffh |
||
315 | __hasadc equ 0 |
||
316 | __hasspi equ 1 |
||
317 | include "z8/f0822.inc" |
||
318 | |||
319 | case "Z8F0821" |
||
320 | RAMEND sfr 3ffh |
||
321 | ROMEND label 1fffh |
||
322 | __hasadc equ 1 |
||
323 | __hasspi equ 0 |
||
324 | include "z8/f0822.inc" |
||
325 | |||
326 | case "Z8F0822" |
||
327 | RAMEND sfr 3ffh |
||
328 | ROMEND label 1fffh |
||
329 | __hasadc equ 1 |
||
330 | __hasspi equ 1 |
||
331 | include "z8/f0822.inc" |
||
332 | |||
333 | case "Z8F0880" |
||
334 | RAMEND sfr 3ffh |
||
335 | ROMEND label 1fffh |
||
336 | include "z8/f1680.inc" |
||
337 | |||
338 | case "Z8F1680" |
||
339 | RAMEND sfr 7ffh |
||
340 | ROMEND label 3fffh |
||
341 | include "z8/f1680.inc" |
||
342 | |||
343 | case "Z8F2480" |
||
344 | RAMEND sfr 7ffh |
||
345 | ROMEND label 5fffh |
||
346 | include "z8/f1680.inc" |
||
347 | |||
348 | case "Z8F1621" |
||
349 | RAMEND sfr 7ffh |
||
350 | ROMEND label 3fffh |
||
351 | __hastimer3 equ 0 |
||
352 | include "z8/f64xx.inc" |
||
353 | |||
354 | case "Z8F1622" |
||
355 | RAMEND sfr 7ffh |
||
356 | ROMEND label 3fffh |
||
357 | __hastimer3 equ 1 |
||
358 | include "z8/f64xx.inc" |
||
359 | |||
360 | case "Z8F2421" |
||
361 | RAMEND sfr 7ffh |
||
362 | ROMEND label 5fffh |
||
363 | __hastimer3 equ 0 |
||
364 | include "z8/f64xx.inc" |
||
365 | |||
366 | case "Z8F2422" |
||
367 | RAMEND sfr 7ffh |
||
368 | ROMEND label 5fffh |
||
369 | __hastimer3 equ 1 |
||
370 | include "z8/f64xx.inc" |
||
371 | |||
372 | case "Z8F3221" |
||
373 | RAMEND sfr 7ffh |
||
374 | ROMEND label 7fffh |
||
375 | __hastimer3 equ 0 |
||
376 | include "z8/f64xx.inc" |
||
377 | |||
378 | case "Z8F3222" |
||
379 | RAMEND sfr 7ffh |
||
380 | ROMEND label 7fffh |
||
381 | __hastimer3 equ 1 |
||
382 | include "z8/f64xx.inc" |
||
383 | |||
384 | case "Z8F4821" |
||
385 | RAMEND sfr 0effh |
||
386 | ROMEND label 0bfffh |
||
387 | __hastimer3 equ 0 |
||
388 | include "z8/f64xx.inc" |
||
389 | |||
390 | case "Z8F4822" |
||
391 | RAMEND sfr 0effh |
||
392 | ROMEND label 0bfffh |
||
393 | __hastimer3 equ 1 |
||
394 | include "z8/f64xx.inc" |
||
395 | |||
396 | case "Z8F4823" |
||
397 | RAMEND sfr 0effh |
||
398 | ROMEND label 0bfffh |
||
399 | __hastimer3 equ 1 |
||
400 | include "z8/f64xx.inc" |
||
401 | |||
402 | case "Z8F6421" |
||
403 | RAMEND sfr 0effh |
||
404 | ROMEND label 0ffffh |
||
405 | __hastimer3 equ 0 |
||
406 | include "z8/f64xx.inc" |
||
407 | |||
408 | case "Z8F6422" |
||
409 | RAMEND sfr 0effh |
||
410 | ROMEND label 0ffffh |
||
411 | __hastimer3 equ 1 |
||
412 | include "z8/f64xx.inc" |
||
413 | |||
414 | case "Z8F6423" |
||
415 | RAMEND sfr 0effh |
||
416 | ROMEND label 0ffffh |
||
417 | __hastimer3 equ 1 |
||
418 | include "z8/f64xx.inc" |
||
419 | |||
420 | case "Z8F1681" |
||
421 | RAMEND sfr 7ffh |
||
422 | ROMEND label 3fffh |
||
423 | __haslcd equ 0 |
||
424 | include "z8/f6482.inc" |
||
425 | |||
426 | case "Z8F1682" |
||
427 | RAMEND sfr 7ffh |
||
428 | ROMEND label 3fffh |
||
429 | __haslcd equ 1 |
||
430 | include "z8/f6482.inc" |
||
431 | |||
432 | case "Z8F3281" |
||
433 | RAMEND sfr 0effh |
||
434 | ROMEND label 7fffh |
||
435 | __haslcd equ 0 |
||
436 | include "z8/f6482.inc" |
||
437 | |||
438 | case "Z8F3282" |
||
439 | RAMEND sfr 0effh |
||
440 | ROMEND label 7fffh |
||
441 | __haslcd equ 1 |
||
442 | include "z8/f6482.inc" |
||
443 | |||
444 | case "Z8F6081" |
||
445 | RAMEND sfr 0effh |
||
446 | ROMEND label 0efffh |
||
447 | __haslcd equ 0 |
||
448 | include "z8/f6482.inc" |
||
449 | |||
450 | case "Z8F6082" |
||
451 | RAMEND sfr 0effh |
||
452 | ROMEND label 0efffh |
||
453 | __haslcd equ 1 |
||
454 | include "z8/f6482.inc" |
||
455 | |||
456 | case "Z8F6481" |
||
457 | RAMEND sfr 0effh |
||
458 | ROMEND label 0ffffh |
||
459 | __haslcd equ 0 |
||
460 | include "z8/f6482.inc" |
||
461 | |||
462 | case "Z8F6482" |
||
463 | RAMEND sfr 0effh |
||
464 | ROMEND label 0ffffh |
||
465 | __haslcd equ 1 |
||
466 | include "z8/f6482.inc" |
||
467 | |||
468 | |||
469 | elsecase |
||
470 | error "wrong processor type set: only Z8601, Z86[C,E]03, Z8604, Z86(C,E)06, Z8608, Z86C30, Z86C31, Z86C32, Z86C40, Z88C0000, Z88C0020, Z8F0130, Z8F0131, Z8F0230, Z8F0231, Z8F0430, Z8F0431, Z8F0830, Z8F0831, Z8F1232, Z8F1233" |
||
471 | error "Z8F0113, Z8F0123, Z8F0213, Z8F0223, Z8F0413, Z8F0423, Z8F0813, Z8F0823, Z8F011A, Z8F012A, Z8F021A, Z8F022A, Z8F041A, Z8F042A, Z8F081A, Z8F081A, Z8F0411, Z8F0412, Z8F0421, Z8F0422, Z8F0811, Z8F0812, Z8F0821, Z8F0822" |
||
472 | error "Z8F0880, Z8F1680, Z8F2480" |
||
473 | fatal "allowed!" |
||
474 | endcase |
||
475 | |||
476 | if MOMPASS=1 |
||
477 | message "Zilog-Z8-SFR-Definitionen (C) 2020 Alfred Arnold" |
||
478 | endif |
||
479 | |||
480 | ;---------------------------------------------------------------------------- |
||
481 | ; Constant Memory Addresses |
||
482 | |||
483 | ifdef ROMEND ; Device without internal ROM? |
||
484 | ROMSTART label 0 ; Start Address Internal ROM |
||
485 | endif |
||
486 | |||
487 | ;---------------------------------------------------------------------------- |
||
488 | |||
489 | restore ; wieder erlauben |
||
490 | |||
491 | endif ; __regz8inc |