📄 os_cpu_c.ls1
字号:
0040 08 210 INC R0
0041 E6 211 MOV A,@R0
0042 FF 212 MOV R7,A
0043 E500 F 213 MOV A,?C_IBP
0045 2408 214 ADD A,#08H
0047 F8 215 MOV R0,A
0048 A606 216 MOV @R0,AR6
004A 08 217 INC R0
004B A607 218 MOV @R0,AR7
219 ;
220 ; stk = (OS_STK DT_XDATA *)ptos; /* bottom of stack
*/
221 ; SOURCE LINE # 76
004D E500 F 222 MOV A,?C_IBP
004F 2406 223 ADD A,#06H
0051 F8 224 MOV R0,A
0052 E6 225 MOV A,@R0
0053 FC 226 MOV R4,A
0054 08 227 INC R0
0055 E6 228 MOV A,@R0
0056 FD 229 MOV R5,A
0057 A800 F 230 MOV R0,?C_IBP
0059 A604 231 MOV @R0,AR4
005B 08 232 INC R0
005C A605 233 MOV @R0,AR5
234 ; *stk++ = (0xFF + 1); /* C_IBP
*/
235 ; SOURCE LINE # 77
A51 MACRO ASSEMBLER OS_CPU_C 03/19/2009 12:41:50 PAGE 5
005E A800 F 236 MOV R0,?C_IBP
0060 08 237 INC R0
0061 06 238 INC @R0
0062 E6 239 MOV A,@R0
0063 18 240 DEC R0
0064 8606 241 MOV AR6,@R0
0066 7001 242 JNZ ?C0008
0068 06 243 INC @R0
0069 244 ?C0008:
0069 14 245 DEC A
006A F582 246 MOV DPL,A
006C 8E83 247 MOV DPH,R6
006E E4 248 CLR A
006F F0 249 MOVX @DPTR,A
250 ;
/* simulated stack size == 0 */
251 ; *stk++ = 2 + 13; /* tow byte
s of return address and 13 byte registers */
252 ; SOURCE LINE # 79
0070 A800 F 253 MOV R0,?C_IBP
0072 08 254 INC R0
0073 06 255 INC @R0
0074 E6 256 MOV A,@R0
0075 18 257 DEC R0
0076 8606 258 MOV AR6,@R0
0078 7001 259 JNZ ?C0009
007A 06 260 INC @R0
007B 261 ?C0009:
007B 14 262 DEC A
007C F582 263 MOV DPL,A
007E 8E83 264 MOV DPH,R6
0080 740F 265 MOV A,#0FH
0082 F0 266 MOVX @DPTR,A
267 ; *stk++ = (INT16U)task & 0xFF; /* low byte of return address */
268 ; SOURCE LINE # 80
0083 A800 F 269 MOV R0,?C_IBP
0085 08 270 INC R0
0086 08 271 INC R0
0087 08 272 INC R0
0088 E6 273 MOV A,@R0
0089 FF 274 MOV R7,A
008A A800 F 275 MOV R0,?C_IBP
008C 08 276 INC R0
008D 06 277 INC @R0
008E E6 278 MOV A,@R0
008F 18 279 DEC R0
0090 8602 280 MOV AR2,@R0
0092 7001 281 JNZ ?C0010
0094 06 282 INC @R0
0095 283 ?C0010:
0095 14 284 DEC A
0096 F582 285 MOV DPL,A
0098 8A83 286 MOV DPH,R2
009A EF 287 MOV A,R7
009B F0 288 MOVX @DPTR,A
289 ; *stk++ = (INT16U)task >> 8; /* high byte of return address */
290 ; SOURCE LINE # 81
009C A800 F 291 MOV R0,?C_IBP
009E 08 292 INC R0
009F 08 293 INC R0
00A0 E6 294 MOV A,@R0
00A1 FE 295 MOV R6,A
00A2 EE 296 MOV A,R6
00A3 FF 297 MOV R7,A
00A4 A800 F 298 MOV R0,?C_IBP
00A6 08 299 INC R0
A51 MACRO ASSEMBLER OS_CPU_C 03/19/2009 12:41:50 PAGE 6
00A7 06 300 INC @R0
00A8 E6 301 MOV A,@R0
00A9 18 302 DEC R0
00AA 8602 303 MOV AR2,@R0
00AC 7001 304 JNZ ?C0011
00AE 06 305 INC @R0
00AF 306 ?C0011:
00AF 14 307 DEC A
00B0 F582 308 MOV DPL,A
00B2 8A83 309 MOV DPH,R2
00B4 EF 310 MOV A,R7
00B5 F0 311 MOVX @DPTR,A
312 ; *stk++ = 0x0A; /* ACC */
313 ; SOURCE LINE # 82
00B6 A800 F 314 MOV R0,?C_IBP
00B8 08 315 INC R0
00B9 06 316 INC @R0
00BA E6 317 MOV A,@R0
00BB 18 318 DEC R0
00BC 8606 319 MOV AR6,@R0
00BE 7001 320 JNZ ?C0012
00C0 06 321 INC @R0
00C1 322 ?C0012:
00C1 14 323 DEC A
00C2 F582 324 MOV DPL,A
00C4 8E83 325 MOV DPH,R6
00C6 740A 326 MOV A,#0AH
00C8 F0 327 MOVX @DPTR,A
328 ; *stk++ = 0x0B; /* B */
329 ; SOURCE LINE # 83
00C9 A800 F 330 MOV R0,?C_IBP
00CB 08 331 INC R0
00CC 06 332 INC @R0
00CD E6 333 MOV A,@R0
00CE 18 334 DEC R0
00CF 8606 335 MOV AR6,@R0
00D1 7001 336 JNZ ?C0013
00D3 06 337 INC @R0
00D4 338 ?C0013:
00D4 14 339 DEC A
00D5 F582 340 MOV DPL,A
00D7 8E83 341 MOV DPH,R6
00D9 740B 342 MOV A,#0BH
00DB F0 343 MOVX @DPTR,A
344 ; *stk++ = 0xD1; /* DPH */
345 ; SOURCE LINE # 84
00DC A800 F 346 MOV R0,?C_IBP
00DE 08 347 INC R0
00DF 06 348 INC @R0
00E0 E6 349 MOV A,@R0
00E1 18 350 DEC R0
00E2 8606 351 MOV AR6,@R0
00E4 7001 352 JNZ ?C0014
00E6 06 353 INC @R0
00E7 354 ?C0014:
00E7 14 355 DEC A
00E8 F582 356 MOV DPL,A
00EA 8E83 357 MOV DPH,R6
00EC 74D1 358 MOV A,#0D1H
00EE F0 359 MOVX @DPTR,A
360 ; *stk++ = 0xD0; /* DPL */
361 ; SOURCE LINE # 85
00EF A800 F 362 MOV R0,?C_IBP
00F1 08 363 INC R0
00F2 06 364 INC @R0
00F3 E6 365 MOV A,@R0
A51 MACRO ASSEMBLER OS_CPU_C 03/19/2009 12:41:50 PAGE 7
00F4 18 366 DEC R0
00F5 8606 367 MOV AR6,@R0
00F7 7001 368 JNZ ?C0015
00F9 06 369 INC @R0
00FA 370 ?C0015:
00FA 14 371 DEC A
00FB F582 372 MOV DPL,A
00FD 8E83 373 MOV DPH,R6
00FF 74D0 374 MOV A,#0D0H
0101 F0 375 MOVX @DPTR,A
376 ; *stk++ = 0x00; /* PSW */
377 ; SOURCE LINE # 86
0102 A800 F 378 MOV R0,?C_IBP
0104 08 379 INC R0
0105 06 380 INC @R0
0106 E6 381 MOV A,@R0
0107 18 382 DEC R0
0108 8606 383 MOV AR6,@R0
010A 7001 384 JNZ ?C0016
010C 06 385 INC @R0
010D 386 ?C0016:
010D 14 387 DEC A
010E F582 388 MOV DPL,A
0110 8E83 389 MOV DPH,R6
0112 E4 390 CLR A
0113 F0 391 MOVX @DPTR,A
392 ; *stk++ = 0x00; /* R0 */
393 ; SOURCE LINE # 87
0114 A800 F 394 MOV R0,?C_IBP
0116 08 395 INC R0
0117 06 396 INC @R0
0118 E6 397 MOV A,@R0
0119 18 398 DEC R0
011A 8606 399 MOV AR6,@R0
011C 7001 400 JNZ ?C0017
011E 06 401 INC @R0
011F 402 ?C0017:
011F 14 403 DEC A
0120 F582 404 MOV DPL,A
0122 8E83 405 MOV DPH,R6
0124 E4 406 CLR A
0125 F0 407 MOVX @DPTR,A
408 ; *stk++ = 0x01; /* R1 */
409 ; SOURCE LINE # 88
0126 A800 F 410 MOV R0,?C_IBP
0128 08 411 INC R0
0129 06 412 INC @R0
012A E6 413 MOV A,@R0
012B 18 414 DEC R0
012C 8606 415 MOV AR6,@R0
012E 7001 416 JNZ ?C0018
0130 06 417 INC @R0
0131 418 ?C0018:
0131 14 419 DEC A
0132 F582 420 MOV DPL,A
0134 8E83 421 MOV DPH,R6
0136 7401 422 MOV A,#01H
0138 F0 423 MOVX @DPTR,A
424 ; *stk++ = 0x02; /* R2 */
425 ; SOURCE LINE # 89
0139 A800 F 426 MOV R0,?C_IBP
013B 08 427 INC R0
013C 06 428 INC @R0
013D E6 429 MOV A,@R0
013E 18 430 DEC R0
013F 8606 431 MOV AR6,@R0
A51 MACRO ASSEMBLER OS_CPU_C 03/19/2009 12:41:50 PAGE 8
0141 7001 432 JNZ ?C0019
0143 06 433 INC @R0
0144 434 ?C0019:
0144 14 435 DEC A
0145 F582 436 MOV DPL,A
0147 8E83 437 MOV DPH,R6
0149 7402 438 MOV A,#02H
014B F0 439 MOVX @DPTR,A
440 ; *stk++ = 0x03; /* R3 */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -