os_q.lst

来自「cs5460a做功率表用 cs5460a做功率表用 cs5460a做功率表」· LST 代码 · 共 439 行 · 第 1/2 页

LST
439
字号
 286 00bc 8093 0000 		sts Os_Enter_Sum,r24
  65:driver/OS_Q.c **** 		if (pEvent->OSQCnt > 0) 
 288               	.LM26:
 289 00c0 FD01      		movw r30,r26
 290 00c2 8185      		ldd r24,Z+9
 291 00c4 8823      		tst r24
 292 00c6 29F1      		breq .L10
  66:driver/OS_Q.c **** 		   {
  67:driver/OS_Q.c **** 			 *msg = *pEvent->OSQOut;
 294               	.LM27:
 295 00c8 8681      		ldd r24,Z+6
 296 00ca 9781      		ldd r25,Z+7
 297 00cc FC01      		movw r30,r24
 298 00ce 8081      		ld r24,Z
 299 00d0 8883      		st Y,r24
  68:driver/OS_Q.c **** 			 pEvent->OSQOut++;			
 301               	.LM28:
 302 00d2 FD01      		movw r30,r26
 303 00d4 2681      		ldd r18,Z+6
 304 00d6 3781      		ldd r19,Z+7
 305 00d8 2F5F      		subi r18,lo8(-(1))
 306 00da 3F4F      		sbci r19,hi8(-(1))
 307 00dc 3783      		std Z+7,r19
 308 00de 2683      		std Z+6,r18
  69:driver/OS_Q.c **** 			 pEvent->OSQCnt--;			
 310               	.LM29:
 311 00e0 8185      		ldd r24,Z+9
 312 00e2 8150      		subi r24,lo8(-(-1))
 313 00e4 8187      		std Z+9,r24
  70:driver/OS_Q.c **** 			 if (pEvent->OSQOut == pEvent->OSQEnd) 
 315               	.LM30:
 316 00e6 8281      		ldd r24,Z+2
 317 00e8 9381      		ldd r25,Z+3
 318 00ea 2817      		cp r18,r24
 319 00ec 3907      		cpc r19,r25
 320 00ee 21F4      		brne .L11
  71:driver/OS_Q.c **** 			    {
  72:driver/OS_Q.c ****                   pEvent->OSQOut = pEvent->OSQStart;
 322               	.LM31:
 323 00f0 8D91      		ld r24,X+
 324 00f2 9C91      		ld r25,X
 325 00f4 9783      		std Z+7,r25
 326 00f6 8683      		std Z+6,r24
 327               	.L11:
  73:driver/OS_Q.c **** 		        }
  74:driver/OS_Q.c **** 		     OS_OPEN_INT();
 329               	.LM32:
 330 00f8 8091 0000 		lds r24,Os_Enter_Sum
 331 00fc 8150      		subi r24,lo8(-(-1))
 332 00fe 8093 0000 		sts Os_Enter_Sum,r24
 333 0102 8091 0000 		lds r24,Os_Enter_Sum
 334 0106 8823      		tst r24
 335 0108 09F4      		brne .L12
 336               	/* #APP */
 337 010a 7894      		sei
 338               	/* #NOAPP */
 339               	.L12:
  75:driver/OS_Q.c **** 		     return OS_Q_OK;	
 341               	.LM33:
 342 010c 81E0      		ldi r24,lo8(1)
 343 010e 90E0      		ldi r25,hi8(1)
 344 0110 0CC0      		rjmp .L8
 345               	.L10:
  76:driver/OS_Q.c **** 		    }
  77:driver/OS_Q.c **** 	    OS_OPEN_INT();
 347               	.LM34:
 348 0112 8091 0000 		lds r24,Os_Enter_Sum
 349 0116 8150      		subi r24,lo8(-(-1))
 350 0118 8093 0000 		sts Os_Enter_Sum,r24
 351 011c 8091 0000 		lds r24,Os_Enter_Sum
 352 0120 8823      		tst r24
 353 0122 09F4      		brne .L13
 354               	/* #APP */
 355 0124 7894      		sei
 356               	/* #NOAPP */
 357               	.L13:
  78:driver/OS_Q.c **** 		return OS_Q_ERR;
 359               	.LM35:
 360 0126 8FEF      		ldi r24,lo8(255)
 361 0128 90E0      		ldi r25,hi8(255)
 362               	.L8:
 363               	/* epilogue: frame size=0 */
 364 012a DF91      		pop r29
 365 012c CF91      		pop r28
 366 012e 0895      		ret
 367               	/* epilogue end (size=3) */
 368               	/* function OSQAccept size 74 (69) */
 370               	.Lscope2:
 373               	.global	OSQQuery
 375               	OSQQuery:
  79:driver/OS_Q.c **** }
  80:driver/OS_Q.c **** //------------------------------------------------
  81:driver/OS_Q.c **** uint8 OSQQuery(OS_Q *pEvent)
  82:driver/OS_Q.c **** {
 377               	.LM36:
 378               	/* prologue: frame size=0 */
 379               	/* prologue end (size=0) */
 380 0130 FC01      		movw r30,r24
  83:driver/OS_Q.c **** 		
  84:driver/OS_Q.c **** 		if (pEvent == (OS_Q *)0) 
 382               	.LM37:
 383 0132 892B      		or r24,r25
 384 0134 19F4      		brne .L15
  85:driver/OS_Q.c **** 		   {			
  86:driver/OS_Q.c **** 			  return (OS_ERR_PEVENT_NULL);				
 386               	.LM38:
 387 0136 85E0      		ldi r24,lo8(5)
 388 0138 90E0      		ldi r25,hi8(5)
 389 013a 0895      		ret
 390               	.L15:
  87:driver/OS_Q.c **** 		    }
  88:driver/OS_Q.c **** 				
  89:driver/OS_Q.c **** 		OS_CLOSE_INT();
 392               	.LM39:
 393               	/* #APP */
 394 013c F894      		cli
 395               	/* #NOAPP */
 396 013e 8091 0000 		lds r24,Os_Enter_Sum
 397 0142 8F5F      		subi r24,lo8(-(1))
 398 0144 8093 0000 		sts Os_Enter_Sum,r24
  90:driver/OS_Q.c **** 		if (pEvent->OSQCnt != 0)
 400               	.LM40:
 401 0148 9185      		ldd r25,Z+9
 402 014a 9923      		tst r25
 403 014c 69F0      		breq .L16
  91:driver/OS_Q.c **** 		   {			
  92:driver/OS_Q.c **** 			  OS_OPEN_INT();
 405               	.LM41:
 406 014e 8091 0000 		lds r24,Os_Enter_Sum
 407 0152 8150      		subi r24,lo8(-(-1))
 408 0154 8093 0000 		sts Os_Enter_Sum,r24
 409 0158 8091 0000 		lds r24,Os_Enter_Sum
 410 015c 8823      		tst r24
 411 015e 09F4      		brne .L17
 412               	/* #APP */
 413 0160 7894      		sei
 414               	/* #NOAPP */
 415               	.L17:
  93:driver/OS_Q.c **** 			  return (OS_Q_NO_EMPTY);				
 417               	.LM42:
 418 0162 83E0      		ldi r24,lo8(3)
 419 0164 90E0      		ldi r25,hi8(3)
 420 0166 0895      		ret
 421               	.L16:
  94:driver/OS_Q.c **** 		   }
  95:driver/OS_Q.c **** 		 else if (pEvent->OSQCnt >= pEvent->OSQSize) 
 423               	.LM43:
 424 0168 8085      		ldd r24,Z+8
 425 016a 9817      		cp r25,r24
 426 016c 68F0      		brlo .L19
  96:driver/OS_Q.c **** 		   {			
  97:driver/OS_Q.c **** 			  OS_OPEN_INT();
 428               	.LM44:
 429 016e 8091 0000 		lds r24,Os_Enter_Sum
 430 0172 8150      		subi r24,lo8(-(-1))
 431 0174 8093 0000 		sts Os_Enter_Sum,r24
 432 0178 8091 0000 		lds r24,Os_Enter_Sum
 433 017c 8823      		tst r24
 434 017e 09F4      		brne .L20
 435               	/* #APP */
 436 0180 7894      		sei
 437               	/* #NOAPP */
 438               	.L20:
  98:driver/OS_Q.c **** 			  return (OS_Q_FULL);				
 440               	.LM45:
 441 0182 82E0      		ldi r24,lo8(2)
 442 0184 90E0      		ldi r25,hi8(2)
 443 0186 0895      		ret
 444               	.L19:
  99:driver/OS_Q.c **** 			} 
 100:driver/OS_Q.c **** 		  else 
 101:driver/OS_Q.c **** 		   {								
 102:driver/OS_Q.c ****               OS_OPEN_INT();
 446               	.LM46:
 447 0188 8091 0000 		lds r24,Os_Enter_Sum
 448 018c 8150      		subi r24,lo8(-(-1))
 449 018e 8093 0000 		sts Os_Enter_Sum,r24
 450 0192 8091 0000 		lds r24,Os_Enter_Sum
 451 0196 8823      		tst r24
 452 0198 09F4      		brne .L22
 453               	/* #APP */
 454 019a 7894      		sei
 455               	/* #NOAPP */
 456               	.L22:
 103:driver/OS_Q.c ****               return (OS_Q_EMPTY);	
 458               	.LM47:
 459 019c 84E0      		ldi r24,lo8(4)
 460 019e 90E0      		ldi r25,hi8(4)
 104:driver/OS_Q.c ****            }
 105:driver/OS_Q.c **** 						
 106:driver/OS_Q.c **** }
 462               	.LM48:
 463 01a0 0895      		ret
 464               	/* epilogue: frame size=0 */
 465               	/* epilogue: noreturn */
 466               	/* epilogue end (size=0) */
 467               	/* function OSQQuery size 61 (61) */
 469               	.Lscope3:
 470               		.text
 472               	Letext:
 473               	/* File "driver/OS_Q.c": code  219 = 0x00db ( 208), prologues   4, epilogues   7 */
DEFINED SYMBOLS
                            *ABS*:00000000 OS_Q.c
C:\DOCUME~1\zgh\LOCALS~1\Temp/ccmabaaa.s:3      *ABS*:0000003f __SREG__
C:\DOCUME~1\zgh\LOCALS~1\Temp/ccmabaaa.s:4      *ABS*:0000003e __SP_H__
C:\DOCUME~1\zgh\LOCALS~1\Temp/ccmabaaa.s:5      *ABS*:0000003d __SP_L__
C:\DOCUME~1\zgh\LOCALS~1\Temp/ccmabaaa.s:6      *ABS*:00000000 __tmp_reg__
C:\DOCUME~1\zgh\LOCALS~1\Temp/ccmabaaa.s:7      *ABS*:00000001 __zero_reg__
C:\DOCUME~1\zgh\LOCALS~1\Temp/ccmabaaa.s:107    .text:00000000 OSQCreat
C:\DOCUME~1\zgh\LOCALS~1\Temp/ccmabaaa.s:152    .text:00000020 OSQPost
C:\DOCUME~1\zgh\LOCALS~1\Temp/ccmabaaa.s:260    .text:000000a2 OSQAccept
C:\DOCUME~1\zgh\LOCALS~1\Temp/ccmabaaa.s:375    .text:00000130 OSQQuery
C:\DOCUME~1\zgh\LOCALS~1\Temp/ccmabaaa.s:472    .text:000001a2 Letext

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
Os_Enter_Sum

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?