Details | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 1126 | savelij | 1 | ifndef __regst6inc ; avoid multiple inclusion |
| 2 | __regst6inc equ 1 |
||
| 3 | |||
| 4 | save |
||
| 5 | listing off ; no listing over this file |
||
| 6 | |||
| 7 | ;**************************************************************************** |
||
| 8 | ;* * |
||
| 9 | ;* AS 1.42 - File REGST6.INC * |
||
| 10 | ;* * |
||
| 11 | ;* contains SFR and Bit Definitions for ST6 Processors * |
||
| 12 | ;* * |
||
| 13 | ;**************************************************************************** |
||
| 14 | |||
| 15 | ;---------------------------------------------------------------------------- |
||
| 16 | ; Until bit field symbols are introduced... |
||
| 17 | |||
| 18 | bfield macro {INTLABEL},reg,start,count |
||
| 19 | __LABEL__ equ ((1<<(count+start))-1)-((1<<start)-1) |
||
| 20 | endm |
||
| 21 | |||
| 22 | ;---------------------------------------------------------------------------- |
||
| 23 | ; Include proper CPU-specific register definitions |
||
| 24 | |||
| 25 | switch MOMCPUNAME |
||
| 26 | case "ST6200", "ST6201", "ST6203" |
||
| 27 | include "st6/reg6200.inc" |
||
| 28 | case "ST6208", "ST6209", "ST6210", "ST6220" |
||
| 29 | include "st6/reg6208.inc" |
||
| 30 | case "ST6215", "ST6225" |
||
| 31 | include "st6/reg6215.inc" |
||
| 32 | case "ST6218" |
||
| 33 | include "st6/reg6218.inc" |
||
| 34 | case "ST6228" |
||
| 35 | include "st6/reg6228.inc" |
||
| 36 | case "ST6230","ST6232" |
||
| 37 | include "st6/reg6230.inc" |
||
| 38 | case "ST6235" |
||
| 39 | include "st6/reg6235.inc" |
||
| 40 | case "ST6240" |
||
| 41 | include "st6/reg6240.inc" |
||
| 42 | case "ST6242" |
||
| 43 | include "st6/reg6242.inc" |
||
| 44 | case "ST6245" |
||
| 45 | include "st6/reg6245.inc" |
||
| 46 | case "ST6246" |
||
| 47 | include "st6/reg6246.inc" |
||
| 48 | case "ST6252","ST6262" |
||
| 49 | include "st6/reg6252.inc" |
||
| 50 | case "ST6253","ST6260","ST6263" |
||
| 51 | include "st6/reg6253.inc" |
||
| 52 | case "ST6255","ST6265" |
||
| 53 | include "st6/reg6255.inc" |
||
| 54 | case "ST6280" |
||
| 55 | include "st6/reg6280.inc" |
||
| 56 | case "ST6285" |
||
| 57 | include "st6/reg6285.inc" |
||
| 58 | elsecase |
||
| 59 | error "wrong processor type set: only ST6200, ST6201, ST6203, ST6208, ST6209, ST6210, ST6215, ST6218, ST6220, ST6225, ST6228, ST6230, ST6232, ST6235, ST6240, ST6242, ST6245, ST6246, ST6252, ST6253, ST6255, ST6260, ST6262, ST6263," |
||
| 60 | fatal "ST6265, ST6280, ST6285 allowed!" |
||
| 61 | endcase |
||
| 62 | |||
| 63 | if MOMPASS=1 |
||
| 64 | message "ST6 Register Definitions (C) 2019 Alfred Arnold" |
||
| 65 | endif |
||
| 66 | |||
| 67 | ;---------------------------------------------------------------------------- |
||
| 68 | ; CPU |
||
| 69 | |||
| 70 | RegX sfr 80h ; already known as internal symbols, just for completeness |
||
| 71 | RegY sfr 81h |
||
| 72 | RegV sfr 82h |
||
| 73 | RegW sfr 83h |
||
| 74 | RegA sfr 0ffh |
||
| 75 | |||
| 76 | DRWR sfr 0c9h ; Data ROM Window register |
||
| 77 | RomBase sfr 40h ; Data ROM Window |
||
| 78 | |||
| 79 | ;---------------------------------------------------------------------------- |
||
| 80 | ; Post Processing |
||
| 81 | |||
| 82 | ifndef ROMEND |
||
| 83 | ROMEND label 0fffh |
||
| 84 | endif |
||
| 85 | |||
| 86 | if ROMEND>0fffh |
||
| 87 | PRPR sfr 0cah ; Program ROM Page Register |
||
| 88 | endif |
||
| 89 | |||
| 90 | include "st6/instr.inc" |
||
| 91 | |||
| 92 | ;---------------------------------------------------------------------------- |
||
| 93 | |||
| 94 | restore ; allow again |
||
| 95 | |||
| 96 | endif ; __regst6inc |