-
Notifications
You must be signed in to change notification settings - Fork 0
/
DSK_vectors_AIC23.ASM
204 lines (186 loc) · 2.53 KB
/
DSK_vectors_AIC23.ASM
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
;------------------------------------------
; DSK_vectors_AIC23.asm (INT5 only on McBSP0)
; US 5-Feb-07; KUP 11.08
;-------------------------------------------
.title "C6x Interrupt Vectors "
.sect ".vectors" ; Declare a section name which is used in the link-CMD file
.ref _c_int00 ; program reset address
.ref _intser_McBSP1 ; User-ISR declaration
SP .set B15 ; rts6700.lib uses B15 as stack pointer
.def RESET_V
RESET_V: ; Reset
MVKL _c_int00, B3
MVKH _c_int00, B3
B B3
MVC PCE1, B0 ; get address of interrupt vectors
MVC B0, ISTP ; set table to point here
NOP
NOP
NOP
.align 32
.def NMI_V
NMI_V: ; Non-maskable interrupt Vector
B $
NOP
NOP
NOP
NOP
NOP
NOP
NOP
.align 32
.def AINT_V
AINT_V: ; Analysis Interrupt Vector (reserved)
B $
NOP
NOP
NOP
NOP
NOP
NOP
NOP
.align 32
.def INT3_V
INT3_V: ; Maskable Interrupt #6
B $
NOP
NOP
NOP
NOP
NOP
NOP
NOP
.align 32
.def INT4_V
INT4_V:
B $
NOP
NOP
NOP
NOP
NOP
NOP
NOP
.align 32
.def INT5_V
INT5_V: ; Maskable Interrupt #5
STW B0,*SP--[2] ; save B0 temporarily
|| MVKL _intser_McBSP1, B0 ; load ISR address
MVKH _intser_McBSP1, B0
B B0 ; execute ISR
LDW *++SP[2],B0 ; restore B0
NOP 2
NOP
NOP
.align 32
.def INT6_V
INT6_V: ; Maskable Interrupt #6
B $
NOP
NOP
NOP
NOP
NOP
NOP
NOP
.align 32
.def INT7_V
INT7_V: ; Maskable Interrupt #7
B $
NOP
NOP
NOP
NOP
NOP
NOP
NOP
.align 32
.def INT8_V
INT8_V: ; Maskable Interrupt #8
B $
NOP
NOP
NOP
NOP
NOP
NOP
NOP
.align 32
.def INT9_V
INT9_V: ; Maskable Interrupt #9
B $
NOP
NOP
NOP
NOP
NOP
NOP
NOP
.align 32
.def INT10_V
INT10_V: ; Maskable Interrupt #10
B $
NOP
NOP
NOP
NOP
NOP
NOP
NOP
.align 32
.def INT11_V
INT11_V: ; Maskable Interrupt #11
B $
NOP
NOP
NOP
NOP
NOP
NOP
NOP
.align 32
.def INT12_V
INT12_V: ; Maskable Interrupt #12
B $
NOP
NOP
NOP
NOP
NOP
NOP
NOP
.align 32
.def INT13_V
INT13_V: ; Maskable Interrupt #13
B $
NOP
NOP
NOP
NOP
NOP
NOP
NOP
.align 32
.def INT14_V
INT14_V: ; Maskable Interrupt #14
B $
NOP
NOP
NOP
NOP
NOP
NOP
NOP
.align 32
.def INT15_V
INT15_V: ; Maskable Interrupt #15
B $
NOP
NOP
NOP
NOP
NOP
NOP
NOP
; the remainder of the vector table is reserved
.end