📄 os_mbox.ls1
字号:
*/
526 ; OS_EXIT_CRITICAL();
527 ; return (OS_NO_ERR);
528 ; }
529 ; #endif
530 ;
531 ; /*$PAGE*/
532 ; /*
533 ; *****************************************************************************************
****************
534 ; * QUERY A MESSAGE MAILBOX
535 ; *
536 ; * Description: This function obtains information about a message mailbox.
537 ; *
538 ; * Arguments : pevent is a pointer to the event control block associated with the
desired mailbox
539 ; *
540 ; * pdata is a pointer to a structure that will contain information ab
out the message
541 ; * mailbox.
542 ; *
543 ; * Returns : OS_NO_ERR The call was successful and the message was sent
544 ; * OS_ERR_EVENT_TYPE If you are attempting to obtain data from a non mailbo
x.
545 ; * OS_ERR_PEVENT_NULL If 'pevent' is a NULL pointer
546 ; *****************************************************************************************
****************
547 ; */
548 ;
549 ; #if OS_MBOX_QUERY_EN > 0
550 ; INT8U OSMboxQuery (OS_EVENT *pevent, OS_MBOX_DATA *os_pdata)LG_REENTRANT
551 ; {
552 ; #if OS_CRITICAL_METHOD == 3 /* Allocate storage for CPU status regis
ter */
553 ; OS_CPU_SR cpu_sr;
554 ; #endif
555 ; INT8U *psrc;
556 ; INT8U *pdest;
557 ;
558 ;
559 ; #if OS_ARG_CHK_EN > 0
560 ; if (pevent == (OS_EVENT *)0) { /* Validate 'pevent'
*/
561 ; return (OS_ERR_PEVENT_NULL);
562 ; }
563 ; if (pevent->OSEventType != OS_EVENT_TYPE_MBOX) { /* Validate event block type
*/
564 ; return (OS_ERR_EVENT_TYPE);
565 ; }
566 ; #endif
567 ; OS_ENTER_CRITICAL();
568 ; os_pdata->OSEventGrp = pevent->OSEventGrp; /* Copy message mailbox wai
t list */
569 ; psrc = &pevent->OSEventTbl[0];
570 ; pdest = &os_pdata->OSEventTbl[0];
571 ;
572 ; #if OS_EVENT_TBL_SIZE > 0
573 ; *pdest++ = *psrc++;
574 ; #endif
575 ;
576 ; #if OS_EVENT_TBL_SIZE > 1
577 ; *pdest++ = *psrc++;
578 ; #endif
A51 MACRO ASSEMBLER OS_MBOX 05/17/2005 11:19:54 PAGE 12
579 ;
580 ; #if OS_EVENT_TBL_SIZE > 2
581 ; *pdest++ = *psrc++;
582 ; #endif
583 ;
584 ; #if OS_EVENT_TBL_SIZE > 3
585 ; *pdest++ = *psrc++;
586 ; #endif
587 ;
588 ; #if OS_EVENT_TBL_SIZE > 4
589 ; *pdest++ = *psrc++;
590 ; #endif
591 ;
592 ; #if OS_EVENT_TBL_SIZE > 5
593 ; *pdest++ = *psrc++;
594 ; #endif
595 ;
596 ; #if OS_EVENT_TBL_SIZE > 6
597 ; *pdest++ = *psrc++;
598 ; #endif
599 ;
600 ; #if OS_EVENT_TBL_SIZE > 7
601 ; *pdest = *psrc;
602 ; #endif
603 ; os_pdata->OSMsg = pevent->OSEventPtr; /* Get message from mailbox
*/
604 ; OS_EXIT_CRITICAL();
605 ; return (OS_NO_ERR);
606 ; }
607 ; #endif /* OS_MBOX_QUERY_EN
*/
608 ; #endif /* OS_MBOX_EN
*/
609 ; *** sync lost ***
610 ; *** sync lost ***
611 ; *** sync lost ***
612 END
A51 MACRO ASSEMBLER OS_MBOX 05/17/2005 11:19:54 PAGE 13
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
AC . . . . . . . . B ADDR 00D0H.6 A
ACC. . . . . . . . D ADDR 00E0H A
B. . . . . . . . . D ADDR 00F0H A
CP_RL2 . . . . . . B ADDR 00C8H.0 A
CY . . . . . . . . B ADDR 00D0H.7 A
C_T2 . . . . . . . B ADDR 00C8H.1 A
DPH. . . . . . . . D ADDR 0083H A
DPL. . . . . . . . D ADDR 0082H A
DPS. . . . . . . . D ADDR 00A2H A
EA . . . . . . . . B ADDR 00A8H.7 A
ES . . . . . . . . B ADDR 00A8H.4 A
ET0. . . . . . . . B ADDR 00A8H.1 A
ET1. . . . . . . . B ADDR 00A8H.3 A
ET2. . . . . . . . B ADDR 00A8H.5 A
EX0. . . . . . . . B ADDR 00A8H.0 A
EX1. . . . . . . . B ADDR 00A8H.2 A
EXEN2. . . . . . . B ADDR 00C8H.3 A
EXF2 . . . . . . . B ADDR 00C8H.6 A
F0 . . . . . . . . B ADDR 00D0H.5 A
F1 . . . . . . . . B ADDR 00D0H.1 A
IE . . . . . . . . D ADDR 00A8H A
IE0. . . . . . . . B ADDR 0088H.1 A
IE1. . . . . . . . B ADDR 0088H.3 A
INT0 . . . . . . . B ADDR 00B0H.2 A
INT1 . . . . . . . B ADDR 00B0H.3 A
IP . . . . . . . . D ADDR 00B8H A
IT0. . . . . . . . B ADDR 0088H.0 A
IT1. . . . . . . . B ADDR 0088H.2 A
OS_MBOX. . . . . . N NUMB -----
OV . . . . . . . . B ADDR 00D0H.2 A
P. . . . . . . . . B ADDR 00D0H.0 A
P0 . . . . . . . . D ADDR 0080H A
P0_0 . . . . . . . B ADDR 0080H.0 A
P0_1 . . . . . . . B ADDR 0080H.1 A
P0_2 . . . . . . . B ADDR 0080H.2 A
P0_3 . . . . . . . B ADDR 0080H.3 A
P0_4 . . . . . . . B ADDR 0080H.4 A
P0_5 . . . . . . . B ADDR 0080H.5 A
P0_6 . . . . . . . B ADDR 0080H.6 A
P0_7 . . . . . . . B ADDR 0080H.7 A
P1 . . . . . . . . D ADDR 0090H A
P1_0 . . . . . . . B ADDR 0090H.0 A
P1_1 . . . . . . . B ADDR 0090H.1 A
P1_2 . . . . . . . B ADDR 0090H.2 A
P1_3 . . . . . . . B ADDR 0090H.3 A
P1_4 . . . . . . . B ADDR 0090H.4 A
P1_5 . . . . . . . B ADDR 0090H.5 A
P1_6 . . . . . . . B ADDR 0090H.6 A
P1_7 . . . . . . . B ADDR 0090H.7 A
P2 . . . . . . . . D ADDR 00A0H A
P2_0 . . . . . . . B ADDR 00A0H.0 A
P2_1 . . . . . . . B ADDR 00A0H.1 A
P2_2 . . . . . . . B ADDR 00A0H.2 A
P2_3 . . . . . . . B ADDR 00A0H.3 A
P2_4 . . . . . . . B ADDR 00A0H.4 A
P2_5 . . . . . . . B ADDR 00A0H.5 A
P2_6 . . . . . . . B ADDR 00A0H.6 A
P2_7 . . . . . . . B ADDR 00A0H.7 A
P3 . . . . . . . . D ADDR 00B0H A
PCON . . . . . . . D ADDR 0087H A
A51 MACRO ASSEMBLER OS_MBOX 05/17/2005 11:19:54 PAGE 14
PS . . . . . . . . B ADDR 00B8H.4 A
PSW. . . . . . . . D ADDR 00D0H A
PT0. . . . . . . . B ADDR 00B8H.1 A
PT1. . . . . . . . B ADDR 00B8H.3 A
PT2. . . . . . . . B ADDR 00B8H.5 A
PX0. . . . . . . . B ADDR 00B8H.0 A
PX1. . . . . . . . B ADDR 00B8H.2 A
RB8. . . . . . . . B ADDR 0098H.2 A
RCAP2H . . . . . . D ADDR 00CBH A
RCAP2L . . . . . . D ADDR 00CAH A
RCLK . . . . . . . B ADDR 00C8H.5 A
RD . . . . . . . . B ADDR 00B0H.7 A
REN. . . . . . . . B ADDR 0098H.4 A
RI . . . . . . . . B ADDR 0098H.0 A
RS0. . . . . . . . B ADDR 00D0H.3 A
RS1. . . . . . . . B ADDR 00D0H.4 A
RXD. . . . . . . . B ADDR 00B0H.0 A
SBUF . . . . . . . D ADDR 0099H A
SCON . . . . . . . D ADDR 0098H A
SM0. . . . . . . . B ADDR 0098H.7 A
SM1. . . . . . . . B ADDR 0098H.6 A
SM2. . . . . . . . B ADDR 0098H.5 A
SP . . . . . . . . D ADDR 0081H A
T0 . . . . . . . . B ADDR 00B0H.4 A
T1 . . . . . . . . B ADDR 00B0H.5 A
T2 . . . . . . . . B ADDR 0090H.0 A
T2CON. . . . . . . D ADDR 00C8H A
T2MOD. . . . . . . D ADDR 00C9H A
T2_EX. . . . . . . B ADDR 0090H.1 A
TB8. . . . . . . . B ADDR 0098H.3 A
TCLK . . . . . . . B ADDR 00C8H.4 A
TCON . . . . . . . D ADDR 0088H A
TF0. . . . . . . . B ADDR 0088H.5 A
TF1. . . . . . . . B ADDR 0088H.7 A
TF2. . . . . . . . B ADDR 00C8H.7 A
TH0. . . . . . . . D ADDR 008CH A
TH1. . . . . . . . D ADDR 008DH A
TH2. . . . . . . . D ADDR 00CDH A
TI . . . . . . . . B ADDR 0098H.1 A
TL0. . . . . . . . D ADDR 008AH A
TL1. . . . . . . . D ADDR 008BH A
TL2. . . . . . . . D ADDR 00CCH A
TMOD . . . . . . . D ADDR 0089H A
TR0. . . . . . . . B ADDR 0088H.4 A
TR1. . . . . . . . B ADDR 0088H.6 A
TR2. . . . . . . . B ADDR 00C8H.2 A
TXD. . . . . . . . B ADDR 00B0H.1 A
WR . . . . . . . . B ADDR 00B0H.6 A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -