📄 af.lst
字号:
\ 000138 602B JZ ??CrossCallReturnLabel_8
380 {
381 epProfileID = *pID;
\ 00013A 12.... LCALL ?Subroutine20 & 0xFFFF
\ ??CrossCallReturnLabel_57:
\ 00013D 7404 MOV A,#0x4
\ 00013F 12.... LCALL ?XSTACK_DISP0_8
\ 000142 12.... LCALL ?Subroutine3 & 0xFFFF
382 osal_mem_free( pID );
\ ??CrossCallReturnLabel_5:
\ 000145 12.... LCALL ?BCALL ; Banked call to: DPTR()
\ 000148 801B SJMP ??CrossCallReturnLabel_8
383 }
384 }
385 else if ( epDesc->simpleDesc )
\ ??afIncomingData_11:
\ 00014A A3 INC DPTR
\ 00014B A3 INC DPTR
\ 00014C A3 INC DPTR
\ 00014D E0 MOVX A,@DPTR
\ 00014E 7002 JNZ ??afIncomingData_13
\ 000150 A3 INC DPTR
\ 000151 E0 MOVX A,@DPTR
\ ??afIncomingData_13:
\ 000152 6011 JZ ??CrossCallReturnLabel_8
386 {
387 epProfileID = epDesc->simpleDesc->AppProfId;
\ 000154 85..82 MOV DPL,?V0 + 6
\ 000157 85..83 MOV DPH,?V0 + 7
\ 00015A 12.... LCALL ?Subroutine9 & 0xFFFF
\ ??CrossCallReturnLabel_32:
\ 00015D 7404 MOV A,#0x4
\ 00015F 12.... LCALL ?XSTACK_DISP0_8
\ 000162 12.... LCALL ??Subroutine4_0 & 0xFFFF
388 }
389
390 if ( (aff->ProfileID == epProfileID) ||
391 ((epDesc->endPoint == ZDO_EP) && (aff->ProfileID == ZDO_PROFILE_ID)) )
\ ??CrossCallReturnLabel_8:
\ 000165 85..82 MOV DPL,?XSP + 0
\ 000168 85..83 MOV DPH,?XSP + 1
\ 00016B 12.... LCALL ?Subroutine5 & 0xFFFF
\ ??CrossCallReturnLabel_18:
\ 00016E 7404 MOV A,#0x4
\ 000170 12.... LCALL ?XSTACK_DISP0_8
\ 000173 E0 MOVX A,@DPTR
\ 000174 68 XRL A,R0
\ 000175 7003 JNZ ??afIncomingData_14
\ 000177 A3 INC DPTR
\ 000178 E0 MOVX A,@DPTR
\ 000179 69 XRL A,R1
\ ??afIncomingData_14:
\ 00017A 601C JZ ??afIncomingData_15
\ 00017C 85..82 MOV DPL,?V0 + 6
\ 00017F 85..83 MOV DPH,?V0 + 7
\ 000182 E0 MOVX A,@DPTR
\ 000183 704D JNZ ??afIncomingData_16
\ 000185 85..82 MOV DPL,?XSP + 0
\ 000188 85..83 MOV DPH,?XSP + 1
\ 00018B 12.... LCALL ?Subroutine14 & 0xFFFF
\ ??CrossCallReturnLabel_44:
\ 00018E A3 INC DPTR
\ 00018F A3 INC DPTR
\ 000190 A3 INC DPTR
\ 000191 E0 MOVX A,@DPTR
\ 000192 7002 JNZ ??afIncomingData_17
\ 000194 A3 INC DPTR
\ 000195 E0 MOVX A,@DPTR
\ ??afIncomingData_17:
\ 000196 703A JNZ ??afIncomingData_16
392 {
393 #if ( AF_KVP_SUPPORT )
394 if ( (FRAMETYPE_KVP == HI_UINT8(aff->asdu[0])) &&
395 (pList->flags & eEP_UsesKVP) )
396 {
397 afBuildKVPIncoming( aff, epDesc, SrcAddress, LinkQuality, SecurityUse );
398 }
399 else
400 #endif
401 {
402 afBuildMSGIncoming( aff, epDesc, SrcAddress, LinkQuality, SecurityUse, timestamp );
\ ??afIncomingData_15:
\ 000198 ; Setup parameters for call to function afBuildMSGIncoming
\ 000198 78.. MOV R0,#?V0 + 0
\ 00019A 12.... LCALL ?PUSH_XSTACK_I_FOUR
\ 00019D 741D MOV A,#0x1d
\ 00019F 12.... LCALL ?XSTACK_DISP0_8
\ 0001A2 E0 MOVX A,@DPTR
\ 0001A3 F5.. MOV ?V0 + 4,A
\ 0001A5 78.. MOV R0,#?V0 + 4
\ 0001A7 12.... LCALL ?PUSH_XSTACK_I_ONE
\ 0001AA 740C MOV A,#0xc
\ 0001AC 12.... LCALL ?XSTACK_DISP0_8
\ 0001AF 12.... LCALL ?PUSH_XSTACK8_X_TWO
\ 0001B2 740D MOV A,#0xd
\ 0001B4 12.... LCALL ?XSTACK_DISP0_8
\ 0001B7 E0 MOVX A,@DPTR
\ 0001B8 F9 MOV R1,A
\ 0001B9 AC.. MOV R4,?V0 + 6
\ 0001BB AD.. MOV R5,?V0 + 7
\ 0001BD 7407 MOV A,#0x7
\ 0001BF 12.... LCALL ?XSTACK_DISP0_8
\ 0001C2 12.... LCALL ??Subroutine7_0 & 0xFFFF
\ ??CrossCallReturnLabel_22:
\ 0001C5 90.... MOV DPTR,#(??afBuildMSGIncoming & 0xffff)
\ 0001C8 74.. MOV A,#((??afBuildMSGIncoming >> 16) & 0xff)
\ 0001CA 12.... LCALL ?BCALL ; Banked call to: DPTR()
\ 0001CD 7407 MOV A,#0x7
\ 0001CF 12.... LCALL ?DEALLOC_XSTACK8
403 }
404 }
405
406 if ( (NLME_GetProtocolVersion() != ZB_PROT_V1_0)
407 && ((aff->FrmCtrl & APS_DELIVERYMODE_MASK) == APS_FC_DM_GROUP) )
\ ??afIncomingData_16:
\ 0001D2 ; Setup parameters for call to function NLME_GetProtocolVersion
\ 0001D2 90.... MOV DPTR,#(NLME_GetProtocolVersion & 0xffff)
\ 0001D5 74.. MOV A,#((NLME_GetProtocolVersion >> 16) & 0xff)
\ 0001D7 12.... LCALL ?BCALL ; Banked call to: DPTR()
\ 0001DA E9 MOV A,R1
\ 0001DB 6401 XRL A,#0x1
\ 0001DD 6019 JZ ??afIncomingData_18
\ 0001DF 12.... LCALL ?Subroutine11 & 0xFFFF
\ ??CrossCallReturnLabel_35:
\ 0001E2 7014 JNZ ??afIncomingData_18
408 {
409 // Find the next endpoint for this group
410 grpEp = aps_FindGroupForEndpoint( aff->GroupID, grpEp );
\ 0001E4 ; Setup parameters for call to function aps_FindGroupForEndpoint
\ 0001E4 EF MOV A,R7
\ 0001E5 F9 MOV R1,A
\ 0001E6 12.... LCALL ?Subroutine6 & 0xFFFF
\ ??CrossCallReturnLabel_21:
\ 0001E9 12.... LCALL ?BCALL ; Banked call to: DPTR()
\ 0001EC E9 MOV A,R1
\ 0001ED FF MOV R7,A
411 if ( grpEp == APS_GROUPS_EP_NOT_FOUND )
\ 0001EE 74FE MOV A,#-0x2
\ 0001F0 6F XRL A,R7
\ 0001F1 6003 JZ $+5
\ 0001F3 02.... LJMP ??afIncomingData_2 & 0xFFFF
\ 0001F6 8024 SJMP ??afIncomingData_1
412 return; // No endpoint found
413
414 epDesc = afFindEndPointDesc( grpEp );
415 if ( epDesc == NULL )
416 return; // Endpoint descriptor not found
417
418 pList = afFindEndPointDescList( epDesc->endPoint );
419 }
420 else if ( aff->DstEndPoint == AF_BROADCAST_ENDPOINT )
\ ??afIncomingData_18:
\ 0001F8 12.... LCALL ?Subroutine13 & 0xFFFF
\ ??CrossCallReturnLabel_42:
\ 0001FB 701F JNZ ??afIncomingData_1
421 {
422 pList = pList->nextDesc;
\ 0001FD 7402 MOV A,#0x2
\ 0001FF 12.... LCALL ?XSTACK_DISP0_8
\ 000202 12.... LCALL ?Subroutine5 & 0xFFFF
\ ??CrossCallReturnLabel_19:
\ 000205 7402 MOV A,#0x2
\ 000207 12.... LCALL ?XSTACK_DISP0_8
\ 00020A 12.... LCALL ??Subroutine4_0 & 0xFFFF
423 if ( pList )
\ ??CrossCallReturnLabel_9:
\ 00020D 7402 MOV A,#0x2
\ 00020F 12.... LCALL ?XSTACK_DISP0_8
\ 000212 E0 MOVX A,@DPTR
\ 000213 7002 JNZ ??afIncomingData_19
\ 000215 A3 INC DPTR
\ 000216 E0 MOVX A,@DPTR
\ ??afIncomingData_19:
\ 000217 6003 JZ $+5
\ 000219 02.... LJMP ??afIncomingData_8 & 0xFFFF
\ ??afIncomingData_1:
\ 00021C 7409 MOV A,#0x9
\ 00021E REQUIRE ?Subroutine33
\ 00021E ; // Fall through to label ?Subroutine33
424 epDesc = pList->epDesc;
425 else
426 epDesc = NULL;
427 }
428 else
429 epDesc = NULL;
430 }
431 }
\ In segment BANKED_CODE, align 1, keep-with-next
\ ?Subroutine33:
\ 000000 12.... LCALL ?DEALLOC_XSTACK8
\ 000003 7F08 MOV R7,#0x8
\ 000005 02.... LJMP ?BANKED_LEAVE_XDATA
\ In segment BANKED_CODE, align 1, keep-with-next
\ ?Subroutine14:
\ 000000 12.... LCALL ?Subroutine24 & 0xFFFF
\ ??CrossCallReturnLabel_106:
\ 000003 22 RET
\ In segment BANKED_CODE, align 1, keep-with-next
\ ?Subroutine24:
\ 000000 12.... LCALL ?Subroutine28 & 0xFFFF
\ ??CrossCallReturnLabel_93:
\ 000003 02.... LJMP ?Subroutine32 & 0xFFFF
\ In segment BANKED_CODE, align 1, keep-with-next
\ ?Subroutine13:
\ 000000 85..82 MOV DPL,?XSP + 0
\ 000003 85..83 MOV DPH,?XSP + 1
\ 000006 12.... LCALL ?Subroutine26 & 0xFFFF
\ ??CrossCallReturnLabel_88:
\ 000009 A3 INC DPTR
\ 00000A A3 INC DPTR
\ 00000B E0 MOVX A,@DPTR
\ 00000C 64FF XRL A,#0xff
\ 00000E 22 RET
\ In segment BANKED_CODE, align 1, keep-with-next
\ ?Subroutine11:
\ 000000 85..82 MOV DPL,?XSP + 0
\ 000003 85..83 MOV DPH,?XSP + 1
\ 000006 12.... LCALL ?Subroutine23 & 0xFFFF
\ ??CrossCallReturnLabel_80:
\ 000009 540C ANL A,#0xc
\ 00000B 640C XRL A,#0xc
\ 00000D 22 RET
\ In segment BANKED_CODE, align 1, keep-with-next
\ ?Subroutine6:
\ 000000 85..82 MOV DPL,?XSP + 0
\ 000003 85..83 MOV DPH,?XSP + 1
\ 000006 A3 INC DPTR
\ 000007 E0 MOVX A,@DPTR
\ 000008 F583 MOV DPH,A
\ 00000A 8882 MOV DPL,R0
\ 00000C A3 INC DPTR
\ 00000D A3 INC DPTR
\ 00000E A3 INC DPTR
\ 00000F A3 INC DPTR
\ 000010 E0 MOVX A,@DPTR
\ 000011 FA MOV R2,A
\ 000012 A3 INC DPTR
\ 000013 E0 MOVX A,@DPTR
\ 000014 FB MOV R3,A
\ 000015 90.... MOV DPTR,#(aps_FindGroupForEndpoint & 0xffff)
\ 000018 74.. MOV A,#((aps_FindGroupForEndpoint >> 16) & 0xff)
\ 00001A 22 RET
\
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -