📄 zmac_cb.lst
字号:
\ 00009E 74.. MOV A,#((osal_memcpy >> 16) & 0xff)
\ 0000A0 12.... LCALL ?BCALL ; Banked call to: DPTR()
\ 0000A3 7403 MOV A,#0x3
\ 0000A5 12.... LCALL ?DEALLOC_XSTACK8
170
171 switch (macEvent) {
\ ??MAC_CbackEvent_6:
\ 0000A8 E5.. MOV A,?V0 + 6
\ 0000AA 12.... LCALL ?UC_SWITCH_SPARSE
\ `?<Jumptable for MAC_CbackEvent>_0`:
\ 0000AD 00 DB 0
\ 0000AE 04 DB 4
\ 0000AF 05 DB 5
\ 0000B0 .... DW ??MAC_CbackEvent_7
\ 0000B2 07 DB 7
\ 0000B3 .... DW ??MAC_CbackEvent_8
\ 0000B5 08 DB 8
\ 0000B6 .... DW ??MAC_CbackEvent_9
\ 0000B8 0D DB 13
\ 0000B9 .... DW ??MAC_CbackEvent_10
\ 0000BB .... DW ??MAC_CbackEvent_11
\ ??MAC_CbackEvent_7:
\ 0000BD 12.... LCALL ?Subroutine1 & 0xFFFF
\ ??CrossCallReturnLabel_3:
\ 0000C0 12.... LCALL ??Subroutine0_0 & 0xFFFF
\ ??CrossCallReturnLabel_2:
\ 0000C3 12.... LCALL ?PUSH_XSTACK_I_THREE
\ 0000C6 7C21 MOV R4,#0x21
\ 0000C8 7D00 MOV R5,#0x0
\ 0000CA AA.. MOV R2,?V0 + 4
\ 0000CC AB.. MOV R3,?V0 + 5
172 case MAC_MLME_BEACON_NOTIFY_IND:
173 {
174 macMlmeBeaconNotifyInd_t *pBeacon;
175
176 pBeacon = (macMlmeBeaconNotifyInd_t*)msgPtr;
177
178 osal_memcpy(pBeacon + 1, pBeacon->pPanDesc, sizeof(macPanDesc_t));
\ 0000CE 90.... MOV DPTR,#(osal_memcpy & 0xffff)
\ 0000D1 74.. MOV A,#((osal_memcpy >> 16) & 0xff)
\ 0000D3 12.... LCALL ?BCALL ; Banked call to: DPTR()
\ 0000D6 7403 MOV A,#0x3
\ 0000D8 12.... LCALL ?DEALLOC_XSTACK8
179 pBeacon->pPanDesc = (macPanDesc_t *) (pBeacon + 1);
\ 0000DB 8E82 MOV DPL,R6
\ 0000DD 8F83 MOV DPH,R7
\ 0000DF A3 INC DPTR
\ 0000E0 A3 INC DPTR
\ 0000E1 A3 INC DPTR
\ 0000E2 E5.. MOV A,?V0 + 4
\ 0000E4 F0 MOVX @DPTR,A
\ 0000E5 A3 INC DPTR
\ 0000E6 E5.. MOV A,?V0 + 5
\ 0000E8 F0 MOVX @DPTR,A
180 osal_memcpy(pBeacon->pPanDesc + 1, pBeacon->pSdu, pBeacon->sduLength);
\ 0000E9 12.... LCALL ?Subroutine5 & 0xFFFF
\ ??CrossCallReturnLabel_11:
\ 0000EC ; Setup parameters for call to function osal_memcpy
\ 0000EC 85..82 MOV DPL,?V0 + 4
\ 0000EF F583 MOV DPH,A
\ 0000F1 E0 MOVX A,@DPTR
\ 0000F2 F5.. MOV ?V0 + 0,A
\ 0000F4 A3 INC DPTR
\ 0000F5 E0 MOVX A,@DPTR
\ 0000F6 F5.. MOV ?V0 + 1,A
\ 0000F8 78.. MOV R0,#?V0 + 0
\ 0000FA 12.... LCALL ?PUSH_XSTACK_I_THREE
\ 0000FD 8E82 MOV DPL,R6
\ 0000FF 8F83 MOV DPH,R7
\ 000101 A3 INC DPTR
\ 000102 A3 INC DPTR
\ 000103 A3 INC DPTR
\ 000104 A3 INC DPTR
\ 000105 A3 INC DPTR
\ 000106 A3 INC DPTR
\ 000107 A3 INC DPTR
\ 000108 A3 INC DPTR
\ 000109 E0 MOVX A,@DPTR
\ 00010A FC MOV R4,A
\ 00010B 7D00 MOV R5,#0x0
\ 00010D 8E82 MOV DPL,R6
\ 00010F 8F83 MOV DPH,R7
\ 000111 A3 INC DPTR
\ 000112 A3 INC DPTR
\ 000113 A3 INC DPTR
\ 000114 E0 MOVX A,@DPTR
\ 000115 2421 ADD A,#0x21
\ 000117 FA MOV R2,A
\ 000118 A3 INC DPTR
\ 000119 E0 MOVX A,@DPTR
\ 00011A 12.... LCALL ?Subroutine6 & 0xFFFF
\ ??CrossCallReturnLabel_13:
\ 00011D 12.... LCALL ?BCALL ; Banked call to: DPTR()
\ 000120 7403 MOV A,#0x3
\ 000122 12.... LCALL ?DEALLOC_XSTACK8
181 pBeacon->pSdu = (uint8 *) (pBeacon->pPanDesc + 1);
\ 000125 8E82 MOV DPL,R6
\ 000127 8F83 MOV DPH,R7
\ 000129 A3 INC DPTR
\ 00012A A3 INC DPTR
\ 00012B A3 INC DPTR
\ 00012C E0 MOVX A,@DPTR
\ 00012D 2421 ADD A,#0x21
\ 00012F F8 MOV R0,A
\ 000130 A3 INC DPTR
\ 000131 E0 MOVX A,@DPTR
\ 000132 12.... LCALL ?Subroutine4 & 0xFFFF
\ ??CrossCallReturnLabel_9:
\ 000135 E8 MOV A,R0
\ 000136 F0 MOVX @DPTR,A
\ 000137 A3 INC DPTR
\ 000138 E9 MOV A,R1
\ 000139 02.... LJMP ??MAC_CbackEvent_12 & 0xFFFF
182 }
183 break;
184
185 case MAC_MLME_SCAN_CNF:
186 {
187 macMlmeScanCnf_t *pScan = (macMlmeScanCnf_t*)msgPtr;
188
189 if (ZMac_ScanBuf != NULL)
\ ??MAC_CbackEvent_8:
\ 00013C 90.... MOV DPTR,#ZMac_ScanBuf
\ 00013F E0 MOVX A,@DPTR
\ 000140 7002 JNZ ??MAC_CbackEvent_13
\ 000142 A3 INC DPTR
\ 000143 E0 MOVX A,@DPTR
\ ??MAC_CbackEvent_13:
\ 000144 7003 JNZ $+5
\ 000146 02.... LJMP ??MAC_CbackEvent_11 & 0xFFFF
190 {
191 if (pScan->scanType == ZMAC_ED_SCAN)
\ 000149 8E82 MOV DPL,R6
\ 00014B 8F83 MOV DPH,R7
\ 00014D A3 INC DPTR
\ 00014E A3 INC DPTR
\ 00014F E0 MOVX A,@DPTR
\ 000150 7026 JNZ ??MAC_CbackEvent_14
192 {
193 pScan->result.pEnergyDetect = (uint8*) (pScan + 1);
\ 000152 12.... LCALL ?Subroutine5 & 0xFFFF
\ ??CrossCallReturnLabel_12:
\ 000155 EE MOV A,R6
\ 000156 240B ADD A,#0xb
\ 000158 F8 MOV R0,A
\ 000159 EF MOV A,R7
\ 00015A 12.... LCALL ?Subroutine4 & 0xFFFF
\ ??CrossCallReturnLabel_10:
\ 00015D E8 MOV A,R0
\ 00015E F0 MOVX @DPTR,A
\ 00015F A3 INC DPTR
\ 000160 E9 MOV A,R1
\ 000161 12.... LCALL ?Subroutine0 & 0xFFFF
194 osal_memcpy(pScan->result.pEnergyDetect, ZMac_ScanBuf, ZMAC_ED_SCAN_MAXCHANNELS);
\ ??CrossCallReturnLabel_0:
\ 000164 12.... LCALL ?PUSH_XSTACK_I_THREE
\ 000167 7C1B MOV R4,#0x1b
\ 000169 7D00 MOV R5,#0x0
\ 00016B 85..82 MOV DPL,?V0 + 4
\ 00016E 85..83 MOV DPH,?V0 + 5
\ 000171 E0 MOVX A,@DPTR
\ 000172 FA MOV R2,A
\ 000173 A3 INC DPTR
\ 000174 E0 MOVX A,@DPTR
\ 000175 FB MOV R3,A
\ 000176 802D SJMP ??MAC_CbackEvent_15
195 }
196 else
197 {
198 pScan->result.pPanDescriptor = (macPanDesc_t*) (pScan + 1);
\ ??MAC_CbackEvent_14:
\ 000178 12.... LCALL ?Subroutine1 & 0xFFFF
\ ??CrossCallReturnLabel_4:
\ 00017B A3 INC DPTR
\ 00017C A3 INC DPTR
\ 00017D A3 INC DPTR
\ 00017E A3 INC DPTR
\ 00017F A3 INC DPTR
\ 000180 A3 INC DPTR
\ 000181 E5.. MOV A,?V0 + 4
\ 000183 F0 MOVX @DPTR,A
\ 000184 A3 INC DPTR
\ 000185 E5.. MOV A,?V0 + 5
\ 000187 12.... LCALL ?Subroutine0 & 0xFFFF
199 osal_memcpy(pScan + 1, ZMac_ScanBuf, sizeof( ZMacPanDesc_t ) * pScan->resultListSize);
\ ??CrossCallReturnLabel_1:
\ 00018A 12.... LCALL ?PUSH_XSTACK_I_THREE
\ 00018D 8E82 MOV DPL,R6
\ 00018F 8F83 MOV DPH,R7
\ 000191 A3 INC DPTR
\ 000192 A3 INC DPTR
\ 000193 A3 INC DPTR
\ 000194 A3 INC DPTR
\ 000195 A3 INC DPTR
\ 000196 A3 INC DPTR
\ 000197 A3 INC DPTR
\ 000198 A3 INC DPTR
\ 000199 E0 MOVX A,@DPTR
\ 00019A 75F021 MOV B,#0x21
\ 00019D A4 MUL AB
\ 00019E FC MOV R4,A
\ 00019F ADF0 MOV R5,B
\ 0001A1 AA.. MOV R2,?V0 + 4
\ 0001A3 AB.. MOV R3,?V0 + 5
\ ??MAC_CbackEvent_15:
\ 0001A5 90.... MOV DPTR,#(osal_memcpy & 0xffff)
\ 0001A8 74.. MOV A,#((osal_memcpy >> 16) & 0xff)
\ 0001AA 12.... LCALL ?BCALL ; Banked call to: DPTR()
\ 0001AD 7403 MOV A,#0x3
\ 0001AF 12.... LCALL ?DEALLOC_XSTACK8
200 }
201
202 osal_mem_free(ZMac_ScanBuf);
\ 0001B2 ; Setup parameters for call to function osal_mem_free
\ 0001B2 90.... MOV DPTR,#ZMac_ScanBuf
\ 0001B5 E0 MOVX A,@DPTR
\ 0001B6 FA MOV R2,A
\ 0001B7 A3 INC DPTR
\ 0001B8 E0 MOVX A,@DPTR
\ 0001B9 FB MOV R3,A
\ 0001BA 90.... MOV DPTR,#(osal_mem_free & 0xffff)
\ 0001BD 74.. MOV A,#((osal_mem_free >> 16) & 0xff)
\ 0001BF 12.... LCALL ?BCALL ; Banked call to: DPTR()
203 ZMac_ScanBuf = NULL;
\ 0001C2 90.... MOV DPTR,#ZMac_ScanBuf
\ 0001C5 02.... LJMP ??CrossCallReturnLabel_8 & 0xFFFF
204 }
205 }
206 break;
207
208 case MAC_MLME_START_CNF:
209 msgPtr->hdr.status = pData->startCnf.hdr.status;
\ ??MAC_CbackEvent_9:
\ 0001C8 85..82 MOV DPL,?V0 + 4
\ 0001CB 85..83 MOV DPH,?V0 + 5
\ 0001CE A3 INC DPTR
\ 0001CF E0 MOVX A,@DPTR
\ 0001D0 8E82 MOV DPL,R6
\ 0001D2 8F83 MOV DPH,R7
\ 0001D4 02.... LJMP ??MAC_CbackEvent_16 & 0xFFFF
210 break;
211
212 case MAC_MCPS_DATA_IND:
213 {
214 /* Data Ind is unconventional: to save an alloc/copy, reuse the MAC
215 buffer and re-organize the contents into ZMAC format. */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -