📄 rmp2cntl.lst
字号:
111 0010 1080 LACC * ; Accumulator = Delay_cntr.
112 ; ARP = AR3. AR3-> Delay_cntr. AR4-> Out.
113 ;--------------------------------------------------------------------------------
114 0011 b801 ADD #1 ; Accumulator = Delay_cntr+1.
115 ; ARP = AR3.
116 ; AR3-> Delay_cntr.
117 ; AR4-> Out
118 ;--------------------------------------------------------------------------------
119 0012 9090 SACL *- ; Delay_cntr =Delay_cntr+1.
120 ; ARP = AR3. AR3-> Dly. AR4-> Out.
121 ;--------------------------------------------------------------------------------
122 0013 30a0 SUB *+ ; Accumulator = Delay_cntr - Dly.
123 ; ARP = AR3. AR3 -> Delay_cntr.
124 ; AR4-> Out.
125 ;--------------------------------------------------------------------------------
126 0014 e344 BCND rmp2_calc_exit,LT
0015 0030'
127 ; ARP = AR3. AR3 -> Delay_cntr. AR4-> Out.
128 ; If (Delay_cntr < Dly),goto RMP2_calc_exit.
129 ;--------------------------------------------------------------------------------
130 0016 ae8c SPLK #0, * ,AR4
0017 0000
131 ; Reset Delay_cntr.
132 ; ARP = AR4. AR3 -> Delay_cntr. AR4-> Out.
133 ;--------------------------------------------------------------------------------
134 0018 RMP2_Chng_Rmp2:
135
136 0018 1090 LACC *- ; Accumulator = Out.
137 ; ARP = AR4. AR3-> Delay_cntr. AR4-> Desired.
138 ;--------------------------------------------------------------------------------
139 0019 30a0 SUB *+ ; Accumulator = Out - Desired.
140 ; ARP = AR4. AR3-> Delay_cntr. AR4-> Out.
141 ;--------------------------------------------------------------------------------
142 001a e344 BCND RMP2_Inc_Rmp2, LT
001b 0027'
143 ; If (Out < Desired) goto INC_RMP2.
144 ; ARP = AR4. AR3-> Delay_cntr. AR4-> Out.
145 ;--------------------------------------------------------------------------------
146 001c RMP2_Dec_Rmp2:
147
148 001c 1080 LACC * ; Accumulator = Out. AR4-> Out.
149 ; ARP = AR4. AR3-> Delay_cntr. AR4-> Out.
150 ;--------------------------------------------------------------------------------
151 001d ba01 SUB #1 ; Decrement the contents of Accumulator by one.
152 ; ARP = AR4. AR3-> Delay_cntr. AR4-> Out.
153 ;--------------------------------------------------------------------------------
154 001e 908b SACL * ,AR3 ; Decrement Out by one
155 ; ARP = AR3. AR3-> Delay_cntr. AR4-> Out.
156 ;--------------------------------------------------------------------------------
157 001f 7c02 SBRK #2 ; ARP = AR3. AR3-> Min. AR4-> Out.
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00 Tue May 6 12:41:19 2003
Copyright (c) 1987-1999 Texas Instruments Incorporated
rmp2cntl.asm PAGE 4
158 ;--------------------------------------------------------------------------------
159 0020 3080 SUB * ; Accumulator = Out- Min.
160 ; ARP = AR3. AR3-> Min. AR4-> Out.
161 ;--------------------------------------------------------------------------------
162 0021 e38c BCND rmp2_calc_exit ,GEQ
0022 0030'
163 ; If(Out >= Min) goto RMP2_calc_exit.
164 ; ARP = AR3. AR3-> Min. AR4-> Out.
165 ;--------------------------------------------------------------------------------
166 0023 108c LACC * ,AR4 ; Accumulator = Min.
167 ; ARP = AR4. AR3-> Min. AR4-> Out.
168 ;--------------------------------------------------------------------------------
169 0024 9080 SACL * ; Out = Min.
170 ; ARP = AR4. AR3-> Min. AR4-> Out.
171 ;--------------------------------------------------------------------------------
172 0025 7980 B rmp2_calc_exit
0026 0030'
173 ; Goto RMP2_calc_exit.
174 ; ARP = AR4. AR3-> Min. AR4-> Out.
175 ;--------------------------------------------------------------------------------
176 ; ARP = AR4. AR3-> Delay_cntr. AR4-> Out.
177 0027 RMP2_Inc_Rmp2:
178 0027 1080 LACC * ; Accumulator= Out.
179 ; ARP = AR4. AR3->Delay_cntr. AR4-> Out.
180 ;--------------------------------------------------------------------------------
181 0028 b801 ADD #1 ; Contents of Accumulator is incremented by one.
182 ; ARP = AR4. AR3->Delay_cntr. AR4-> Out.
183 ;--------------------------------------------------------------------------------
184 0029 908b SACL * ,AR3 ; Increment Out by one.
185 ; ARP = AR3. AR3-> Delay_cntr. AR4-> Out.
186 ;--------------------------------------------------------------------------------
187 002a 7c03 SBRK #3 ; ARP = AR3. AR3-> Max. AR4-> Out.
188 ;--------------------------------------------------------------------------------
189 002b 3080 SUB * ; Accumulator = Out - Max.
190 ; ARP = AR3. AR3-> Max. AR4-> Out.
191 ;--------------------------------------------------------------------------------
192 002c e3cc BCND rmp2_calc_exit ,LEQ
002d 0030'
193 ; If(Out <= Max) goto RMP2_calc_exit.
194 ; ARP = AR3. AR3-> Max. AR4-> Out.
195 ;--------------------------------------------------------------------------------
196 002e 108c LACC *,AR4 ; Accumulator = Max.
197 ; ARP = AR4. AR3-> Max. AR4-> Out.
198 ;--------------------------------------------------------------------------------
199 002f 9080 SACL * ; Max = Out. ARP = AR4. AR3-> Max. AR4-> Out.
200 ;--------------------------------------------------------------------------------
201 0030 rmp2_calc_exit:
202 ; Retrieve FP and SP of parent function.
203 0030 8b89 MAR * , AR1 ; set ARP = SP before you exit.
204 0031 7c02 SBRK #(__RMP2_framesize+1)
205 ; Deallocate frame, point to saved FP.
206
207 .if (RETURN_ADDRESS_SAVE = ON)
208 0032 0090 LAR AR0, *- ; Restore frame pointer.
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00 Tue May 6 12:41:19 2003
Copyright (c) 1987-1999 Texas Instruments Incorporated
rmp2cntl.asm PAGE 5
209 0033 7680 PSHD * ; Push return address on Hardware stack.
210 .endif
211
212 .if (RETURN_ADDRESS_SAVE = OFF)
213 LAR AR0, * ; Restore frame pointer.
214 .endif
215
216 0034 ef00 RET ; Return to the Parent Function
217
218 .end
No Errors, No Warnings
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -