Blame | Last modification | View Log | Download | RSS feed | ?url?
ifndef __regcoldinc ; avoid multiple inclusion
__regcoldinc equ 1
save
listing off ; no listing over this file
;****************************************************************************
;* *
;* AS 1.42 - File REGCOLD.INC *
;* *
;* Contains SFR and Bit Definitions for ColdFire Processors *
;* *
;****************************************************************************
;----------------------------------------------------------------------------
; Bits with the name as given in the datasheets contain the plain bit
; position within the register; with the prefix _bit_..., they hold
; register and bit position
cfbit macro {intlabel},reg,pos
reg.__LABEL__ equ pos
endm
cffield macro {intlabel},reg,start,width
reg.__LABEL__ equ start
endm
;----------------------------------------------------------------------------
; commonly used macros
__hexstr macro DEST,SRC
DEST set "\{SRC}"
endm
__decstr macro DEST,SRC
if (SRC)<10
DEST set "\{SRC}"
elseif
DEST set "\{(SRC)/10}\{(SRC)#10}"
endif
endm
__dec02str macro DEST,SRC
DEST set "\{(SRC)/10}\{(SRC)#10}"
endm
__enumregs macro ARG,START,END
__N set START
rept END-START+1
__decstr __NS,__N
ARG
__N set __N+1
endm
endm
__enumbits macro Reg,Prefix,Cnt,NameOffs=0
__N set 0
rept Cnt
__decstr __NS,__N+NameOffs
Prefix{"\{__NS}"} cfbit Reg,__N
__N set __N+1
endm
endm
__enumbits_o macro Reg,Prefix,Start,Cnt,NameOffs=0
__N set Start
rept Cnt
__decstr __NS,__N+(NameOffs)
Prefix{"\{__NS}"} cfbit Reg,__N
__N set __N+1
endm
endm
__enumbits2 macro Reg,Prefix,Postfix,Cnt,NameOffs=0
__N set 0
rept Cnt
__decstr __NS,__N+NameOffs
Prefix{"\{__NS}"}Postfix cfbit Reg,__N
__N set __N+1
endm
endm
;----------------------------------------------------------------------------
; include proper CPU-specific register definitions
if MOMPASS=1
message "ColdFire SFR Definitions (C) 2018 Alfred Arnold"
endif
switch MOMCPUNAME
case "MCF5202"
; tolerate 5202, but define no registers at all
case "MCF5204"
include "coldfire/mcf5204.inc"
case "MCF5206"
include "coldfire/mcf5206.inc"
case "MCF5208"
include "coldfire/mcf5208.inc"
case "MCF52274","MCF52277"
include "coldfire/mcf52277.inc"
case "MCF5307"
include "coldfire/mcf5307.inc"
case "MCF5329"
include "coldfire/mcf5329.inc"
case "MCF5373"
include "coldfire/mcf5373.inc"
case "MCF5407"
include "coldfire/mcf5407.inc"
case "MCF5470"
include "coldfire/mcf5470.inc"
case "MCF5471"
include "coldfire/mcf5471.inc"
case "MCF5472"
include "coldfire/mcf5472.inc"
case "MCF5473"
include "coldfire/mcf5473.inc"
case "MCF5474"
include "coldfire/mcf5474.inc"
case "MCF5475"
include "coldfire/mcf5475.inc"
case "MCF51QM"
include "coldfire/mcf51qm.inc"
elsecase
error "wrong processor type set: only MCF5204, MCF5206, MCF5208, MCF52274, MCF52277, MCF5307, MCF5329, MCF5373, MCF5407, MCF5470 to MCF5475, MCF51QM allowed!"
endcase
;----------------------------------------------------------------------------
restore ; re-enable listing
endif ; __regcoldinc