1 ;-------------------------------------------------------- 2 ; File Created by SDCC : free open source ANSI-C Compiler 3 ; Version 3.0.0 #6037 (Oct 31 2010) (Linux) 4 ; This file was generated Mon Jan 30 00:10:43 2012 5 ;-------------------------------------------------------- 6 .module radio_queue 7 .optsdcc -mmcs51 --model-medium 8 9 ;-------------------------------------------------------- 10 ; Public variables in this module 11 ;-------------------------------------------------------- 12 .globl _param_radio_channel 13 .globl _radioQueueAllowCrcErrors 14 .globl _radioQueueInit 15 .globl _radioQueueTxAvailable 16 .globl _radioQueueTxQueued 17 .globl _radioQueueTxCurrentPacket 18 .globl _radioQueueTxSendPacket 19 .globl _radioQueueRxCurrentPacket 20 .globl _radioQueueRxDoneWithPacket 21 .globl _radioMacEventHandler 22 ;-------------------------------------------------------- 23 ; special function registers 24 ;-------------------------------------------------------- 25 .area RSEG (ABS,DATA) 0000 26 .org 0x0000 0080 27 Fradio_queue$P0$0$0 == 0x0080 0080 28 _P0 = 0x0080 0081 29 Fradio_queue$SP$0$0 == 0x0081 0081 30 _SP = 0x0081 0082 31 Fradio_queue$DPL0$0$0 == 0x0082 0082 32 _DPL0 = 0x0082 0083 33 Fradio_queue$DPH0$0$0 == 0x0083 0083 34 _DPH0 = 0x0083 0084 35 Fradio_queue$DPL1$0$0 == 0x0084 0084 36 _DPL1 = 0x0084 0085 37 Fradio_queue$DPH1$0$0 == 0x0085 0085 38 _DPH1 = 0x0085 0086 39 Fradio_queue$U0CSR$0$0 == 0x0086 0086 40 _U0CSR = 0x0086 0087 41 Fradio_queue$PCON$0$0 == 0x0087 0087 42 _PCON = 0x0087 0088 43 Fradio_queue$TCON$0$0 == 0x0088 0088 44 _TCON = 0x0088 0089 45 Fradio_queue$P0IFG$0$0 == 0x0089 0089 46 _P0IFG = 0x0089 008A 47 Fradio_queue$P1IFG$0$0 == 0x008a 008A 48 _P1IFG = 0x008a 008B 49 Fradio_queue$P2IFG$0$0 == 0x008b 008B 50 _P2IFG = 0x008b 008C 51 Fradio_queue$PICTL$0$0 == 0x008c 008C 52 _PICTL = 0x008c 008D 53 Fradio_queue$P1IEN$0$0 == 0x008d 008D 54 _P1IEN = 0x008d 008F 55 Fradio_queue$P0INP$0$0 == 0x008f 008F 56 _P0INP = 0x008f 0090 57 Fradio_queue$P1$0$0 == 0x0090 0090 58 _P1 = 0x0090 0091 59 Fradio_queue$RFIM$0$0 == 0x0091 0091 60 _RFIM = 0x0091 0092 61 Fradio_queue$DPS$0$0 == 0x0092 0092 62 _DPS = 0x0092 0093 63 Fradio_queue$MPAGE$0$0 == 0x0093 0093 64 _MPAGE = 0x0093 0095 65 Fradio_queue$ENDIAN$0$0 == 0x0095 0095 66 _ENDIAN = 0x0095 0098 67 Fradio_queue$S0CON$0$0 == 0x0098 0098 68 _S0CON = 0x0098 009A 69 Fradio_queue$IEN2$0$0 == 0x009a 009A 70 _IEN2 = 0x009a 009B 71 Fradio_queue$S1CON$0$0 == 0x009b 009B 72 _S1CON = 0x009b 009C 73 Fradio_queue$T2CT$0$0 == 0x009c 009C 74 _T2CT = 0x009c 009D 75 Fradio_queue$T2PR$0$0 == 0x009d 009D 76 _T2PR = 0x009d 009E 77 Fradio_queue$T2CTL$0$0 == 0x009e 009E 78 _T2CTL = 0x009e 00A0 79 Fradio_queue$P2$0$0 == 0x00a0 00A0 80 _P2 = 0x00a0 00A1 81 Fradio_queue$WORIRQ$0$0 == 0x00a1 00A1 82 _WORIRQ = 0x00a1 00A2 83 Fradio_queue$WORCTRL$0$0 == 0x00a2 00A2 84 _WORCTRL = 0x00a2 00A3 85 Fradio_queue$WOREVT0$0$0 == 0x00a3 00A3 86 _WOREVT0 = 0x00a3 00A4 87 Fradio_queue$WOREVT1$0$0 == 0x00a4 00A4 88 _WOREVT1 = 0x00a4 00A5 89 Fradio_queue$WORTIME0$0$0 == 0x00a5 00A5 90 _WORTIME0 = 0x00a5 00A6 91 Fradio_queue$WORTIME1$0$0 == 0x00a6 00A6 92 _WORTIME1 = 0x00a6 00A8 93 Fradio_queue$IEN0$0$0 == 0x00a8 00A8 94 _IEN0 = 0x00a8 00A9 95 Fradio_queue$IP0$0$0 == 0x00a9 00A9 96 _IP0 = 0x00a9 00AB 97 Fradio_queue$FWT$0$0 == 0x00ab 00AB 98 _FWT = 0x00ab 00AC 99 Fradio_queue$FADDRL$0$0 == 0x00ac 00AC 100 _FADDRL = 0x00ac 00AD 101 Fradio_queue$FADDRH$0$0 == 0x00ad 00AD 102 _FADDRH = 0x00ad 00AE 103 Fradio_queue$FCTL$0$0 == 0x00ae 00AE 104 _FCTL = 0x00ae 00AF 105 Fradio_queue$FWDATA$0$0 == 0x00af 00AF 106 _FWDATA = 0x00af 00B1 107 Fradio_queue$ENCDI$0$0 == 0x00b1 00B1 108 _ENCDI = 0x00b1 00B2 109 Fradio_queue$ENCDO$0$0 == 0x00b2 00B2 110 _ENCDO = 0x00b2 00B3 111 Fradio_queue$ENCCS$0$0 == 0x00b3 00B3 112 _ENCCS = 0x00b3 00B4 113 Fradio_queue$ADCCON1$0$0 == 0x00b4 00B4 114 _ADCCON1 = 0x00b4 00B5 115 Fradio_queue$ADCCON2$0$0 == 0x00b5 00B5 116 _ADCCON2 = 0x00b5 00B6 117 Fradio_queue$ADCCON3$0$0 == 0x00b6 00B6 118 _ADCCON3 = 0x00b6 00B8 119 Fradio_queue$IEN1$0$0 == 0x00b8 00B8 120 _IEN1 = 0x00b8 00B9 121 Fradio_queue$IP1$0$0 == 0x00b9 00B9 122 _IP1 = 0x00b9 00BA 123 Fradio_queue$ADCL$0$0 == 0x00ba 00BA 124 _ADCL = 0x00ba 00BB 125 Fradio_queue$ADCH$0$0 == 0x00bb 00BB 126 _ADCH = 0x00bb 00BC 127 Fradio_queue$RNDL$0$0 == 0x00bc 00BC 128 _RNDL = 0x00bc 00BD 129 Fradio_queue$RNDH$0$0 == 0x00bd 00BD 130 _RNDH = 0x00bd 00BE 131 Fradio_queue$SLEEP$0$0 == 0x00be 00BE 132 _SLEEP = 0x00be 00C0 133 Fradio_queue$IRCON$0$0 == 0x00c0 00C0 134 _IRCON = 0x00c0 00C1 135 Fradio_queue$U0DBUF$0$0 == 0x00c1 00C1 136 _U0DBUF = 0x00c1 00C2 137 Fradio_queue$U0BAUD$0$0 == 0x00c2 00C2 138 _U0BAUD = 0x00c2 00C4 139 Fradio_queue$U0UCR$0$0 == 0x00c4 00C4 140 _U0UCR = 0x00c4 00C5 141 Fradio_queue$U0GCR$0$0 == 0x00c5 00C5 142 _U0GCR = 0x00c5 00C6 143 Fradio_queue$CLKCON$0$0 == 0x00c6 00C6 144 _CLKCON = 0x00c6 00C7 145 Fradio_queue$MEMCTR$0$0 == 0x00c7 00C7 146 _MEMCTR = 0x00c7 00C9 147 Fradio_queue$WDCTL$0$0 == 0x00c9 00C9 148 _WDCTL = 0x00c9 00CA 149 Fradio_queue$T3CNT$0$0 == 0x00ca 00CA 150 _T3CNT = 0x00ca 00CB 151 Fradio_queue$T3CTL$0$0 == 0x00cb 00CB 152 _T3CTL = 0x00cb 00CC 153 Fradio_queue$T3CCTL0$0$0 == 0x00cc 00CC 154 _T3CCTL0 = 0x00cc 00CD 155 Fradio_queue$T3CC0$0$0 == 0x00cd 00CD 156 _T3CC0 = 0x00cd 00CE 157 Fradio_queue$T3CCTL1$0$0 == 0x00ce 00CE 158 _T3CCTL1 = 0x00ce 00CF 159 Fradio_queue$T3CC1$0$0 == 0x00cf 00CF 160 _T3CC1 = 0x00cf 00D0 161 Fradio_queue$PSW$0$0 == 0x00d0 00D0 162 _PSW = 0x00d0 00D1 163 Fradio_queue$DMAIRQ$0$0 == 0x00d1 00D1 164 _DMAIRQ = 0x00d1 00D2 165 Fradio_queue$DMA1CFGL$0$0 == 0x00d2 00D2 166 _DMA1CFGL = 0x00d2 00D3 167 Fradio_queue$DMA1CFGH$0$0 == 0x00d3 00D3 168 _DMA1CFGH = 0x00d3 00D4 169 Fradio_queue$DMA0CFGL$0$0 == 0x00d4 00D4 170 _DMA0CFGL = 0x00d4 00D5 171 Fradio_queue$DMA0CFGH$0$0 == 0x00d5 00D5 172 _DMA0CFGH = 0x00d5 00D6 173 Fradio_queue$DMAARM$0$0 == 0x00d6 00D6 174 _DMAARM = 0x00d6 00D7 175 Fradio_queue$DMAREQ$0$0 == 0x00d7 00D7 176 _DMAREQ = 0x00d7 00D8 177 Fradio_queue$TIMIF$0$0 == 0x00d8 00D8 178 _TIMIF = 0x00d8 00D9 179 Fradio_queue$RFD$0$0 == 0x00d9 00D9 180 _RFD = 0x00d9 00DA 181 Fradio_queue$T1CC0L$0$0 == 0x00da 00DA 182 _T1CC0L = 0x00da 00DB 183 Fradio_queue$T1CC0H$0$0 == 0x00db 00DB 184 _T1CC0H = 0x00db 00DC 185 Fradio_queue$T1CC1L$0$0 == 0x00dc 00DC 186 _T1CC1L = 0x00dc 00DD 187 Fradio_queue$T1CC1H$0$0 == 0x00dd 00DD 188 _T1CC1H = 0x00dd 00DE 189 Fradio_queue$T1CC2L$0$0 == 0x00de 00DE 190 _T1CC2L = 0x00de 00DF 191 Fradio_queue$T1CC2H$0$0 == 0x00df 00DF 192 _T1CC2H = 0x00df 00E0 193 Fradio_queue$ACC$0$0 == 0x00e0 00E0 194 _ACC = 0x00e0 00E1 195 Fradio_queue$RFST$0$0 == 0x00e1 00E1 196 _RFST = 0x00e1 00E2 197 Fradio_queue$T1CNTL$0$0 == 0x00e2 00E2 198 _T1CNTL = 0x00e2 00E3 199 Fradio_queue$T1CNTH$0$0 == 0x00e3 00E3 200 _T1CNTH = 0x00e3 00E4 201 Fradio_queue$T1CTL$0$0 == 0x00e4 00E4 202 _T1CTL = 0x00e4 00E5 203 Fradio_queue$T1CCTL0$0$0 == 0x00e5 00E5 204 _T1CCTL0 = 0x00e5 00E6 205 Fradio_queue$T1CCTL1$0$0 == 0x00e6 00E6 206 _T1CCTL1 = 0x00e6 00E7 207 Fradio_queue$T1CCTL2$0$0 == 0x00e7 00E7 208 _T1CCTL2 = 0x00e7 00E8 209 Fradio_queue$IRCON2$0$0 == 0x00e8 00E8 210 _IRCON2 = 0x00e8 00E9 211 Fradio_queue$RFIF$0$0 == 0x00e9 00E9 212 _RFIF = 0x00e9 00EA 213 Fradio_queue$T4CNT$0$0 == 0x00ea 00EA 214 _T4CNT = 0x00ea 00EB 215 Fradio_queue$T4CTL$0$0 == 0x00eb 00EB 216 _T4CTL = 0x00eb 00EC 217 Fradio_queue$T4CCTL0$0$0 == 0x00ec 00EC 218 _T4CCTL0 = 0x00ec 00ED 219 Fradio_queue$T4CC0$0$0 == 0x00ed 00ED 220 _T4CC0 = 0x00ed 00EE 221 Fradio_queue$T4CCTL1$0$0 == 0x00ee 00EE 222 _T4CCTL1 = 0x00ee 00EF 223 Fradio_queue$T4CC1$0$0 == 0x00ef 00EF 224 _T4CC1 = 0x00ef 00F0 225 Fradio_queue$B$0$0 == 0x00f0 00F0 226 _B = 0x00f0 00F1 227 Fradio_queue$PERCFG$0$0 == 0x00f1 00F1 228 _PERCFG = 0x00f1 00F2 229 Fradio_queue$ADCCFG$0$0 == 0x00f2 00F2 230 _ADCCFG = 0x00f2 00F3 231 Fradio_queue$P0SEL$0$0 == 0x00f3 00F3 232 _P0SEL = 0x00f3 00F4 233 Fradio_queue$P1SEL$0$0 == 0x00f4 00F4 234 _P1SEL = 0x00f4 00F5 235 Fradio_queue$P2SEL$0$0 == 0x00f5 00F5 236 _P2SEL = 0x00f5 00F6 237 Fradio_queue$P1INP$0$0 == 0x00f6 00F6 238 _P1INP = 0x00f6 00F7 239 Fradio_queue$P2INP$0$0 == 0x00f7 00F7 240 _P2INP = 0x00f7 00F8 241 Fradio_queue$U1CSR$0$0 == 0x00f8 00F8 242 _U1CSR = 0x00f8 00F9 243 Fradio_queue$U1DBUF$0$0 == 0x00f9 00F9 244 _U1DBUF = 0x00f9 00FA 245 Fradio_queue$U1BAUD$0$0 == 0x00fa 00FA 246 _U1BAUD = 0x00fa 00FB 247 Fradio_queue$U1UCR$0$0 == 0x00fb 00FB 248 _U1UCR = 0x00fb 00FC 249 Fradio_queue$U1GCR$0$0 == 0x00fc 00FC 250 _U1GCR = 0x00fc 00FD 251 Fradio_queue$P0DIR$0$0 == 0x00fd 00FD 252 _P0DIR = 0x00fd 00FE 253 Fradio_queue$P1DIR$0$0 == 0x00fe 00FE 254 _P1DIR = 0x00fe 00FF 255 Fradio_queue$P2DIR$0$0 == 0x00ff 00FF 256 _P2DIR = 0x00ff FFFFD5D4 257 Fradio_queue$DMA0CFG$0$0 == 0xffffd5d4 FFFFD5D4 258 _DMA0CFG = 0xffffd5d4 FFFFD3D2 259 Fradio_queue$DMA1CFG$0$0 == 0xffffd3d2 FFFFD3D2 260 _DMA1CFG = 0xffffd3d2 FFFFADAC 261 Fradio_queue$FADDR$0$0 == 0xffffadac FFFFADAC 262 _FADDR = 0xffffadac FFFFBBBA 263 Fradio_queue$ADC$0$0 == 0xffffbbba FFFFBBBA 264 _ADC = 0xffffbbba FFFFDBDA 265 Fradio_queue$T1CC0$0$0 == 0xffffdbda FFFFDBDA 266 _T1CC0 = 0xffffdbda FFFFDDDC 267 Fradio_queue$T1CC1$0$0 == 0xffffdddc FFFFDDDC 268 _T1CC1 = 0xffffdddc FFFFDFDE 269 Fradio_queue$T1CC2$0$0 == 0xffffdfde FFFFDFDE 270 _T1CC2 = 0xffffdfde 271 ;-------------------------------------------------------- 272 ; special function bits 273 ;-------------------------------------------------------- 274 .area RSEG (ABS,DATA) 0000 275 .org 0x0000 0080 276 Fradio_queue$P0_0$0$0 == 0x0080 0080 277 _P0_0 = 0x0080 0081 278 Fradio_queue$P0_1$0$0 == 0x0081 0081 279 _P0_1 = 0x0081 0082 280 Fradio_queue$P0_2$0$0 == 0x0082 0082 281 _P0_2 = 0x0082 0083 282 Fradio_queue$P0_3$0$0 == 0x0083 0083 283 _P0_3 = 0x0083 0084 284 Fradio_queue$P0_4$0$0 == 0x0084 0084 285 _P0_4 = 0x0084 0085 286 Fradio_queue$P0_5$0$0 == 0x0085 0085 287 _P0_5 = 0x0085 0086 288 Fradio_queue$P0_6$0$0 == 0x0086 0086 289 _P0_6 = 0x0086 0087 290 Fradio_queue$P0_7$0$0 == 0x0087 0087 291 _P0_7 = 0x0087 0088 292 Fradio_queue$_TCON_0$0$0 == 0x0088 0088 293 __TCON_0 = 0x0088 0089 294 Fradio_queue$RFTXRXIF$0$0 == 0x0089 0089 295 _RFTXRXIF = 0x0089 008A 296 Fradio_queue$_TCON_2$0$0 == 0x008a 008A 297 __TCON_2 = 0x008a 008B 298 Fradio_queue$URX0IF$0$0 == 0x008b 008B 299 _URX0IF = 0x008b 008C 300 Fradio_queue$_TCON_4$0$0 == 0x008c 008C 301 __TCON_4 = 0x008c 008D 302 Fradio_queue$ADCIF$0$0 == 0x008d 008D 303 _ADCIF = 0x008d 008E 304 Fradio_queue$_TCON_6$0$0 == 0x008e 008E 305 __TCON_6 = 0x008e 008F 306 Fradio_queue$URX1IF$0$0 == 0x008f 008F 307 _URX1IF = 0x008f 0090 308 Fradio_queue$P1_0$0$0 == 0x0090 0090 309 _P1_0 = 0x0090 0091 310 Fradio_queue$P1_1$0$0 == 0x0091 0091 311 _P1_1 = 0x0091 0092 312 Fradio_queue$P1_2$0$0 == 0x0092 0092 313 _P1_2 = 0x0092 0093 314 Fradio_queue$P1_3$0$0 == 0x0093 0093 315 _P1_3 = 0x0093 0094 316 Fradio_queue$P1_4$0$0 == 0x0094 0094 317 _P1_4 = 0x0094 0095 318 Fradio_queue$P1_5$0$0 == 0x0095 0095 319 _P1_5 = 0x0095 0096 320 Fradio_queue$P1_6$0$0 == 0x0096 0096 321 _P1_6 = 0x0096 0097 322 Fradio_queue$P1_7$0$0 == 0x0097 0097 323 _P1_7 = 0x0097 0098 324 Fradio_queue$ENCIF_0$0$0 == 0x0098 0098 325 _ENCIF_0 = 0x0098 0099 326 Fradio_queue$ENCIF_1$0$0 == 0x0099 0099 327 _ENCIF_1 = 0x0099 009A 328 Fradio_queue$_SOCON2$0$0 == 0x009a 009A 329 __SOCON2 = 0x009a 009B 330 Fradio_queue$_SOCON3$0$0 == 0x009b 009B 331 __SOCON3 = 0x009b 009C 332 Fradio_queue$_SOCON4$0$0 == 0x009c 009C 333 __SOCON4 = 0x009c 009D 334 Fradio_queue$_SOCON5$0$0 == 0x009d 009D 335 __SOCON5 = 0x009d 009E 336 Fradio_queue$_SOCON6$0$0 == 0x009e 009E 337 __SOCON6 = 0x009e 009F 338 Fradio_queue$_SOCON7$0$0 == 0x009f 009F 339 __SOCON7 = 0x009f 00A0 340 Fradio_queue$P2_0$0$0 == 0x00a0 00A0 341 _P2_0 = 0x00a0 00A1 342 Fradio_queue$P2_1$0$0 == 0x00a1 00A1 343 _P2_1 = 0x00a1 00A2 344 Fradio_queue$P2_2$0$0 == 0x00a2 00A2 345 _P2_2 = 0x00a2 00A3 346 Fradio_queue$P2_3$0$0 == 0x00a3 00A3 347 _P2_3 = 0x00a3 00A4 348 Fradio_queue$P2_4$0$0 == 0x00a4 00A4 349 _P2_4 = 0x00a4 00A5 350 Fradio_queue$P2_5$0$0 == 0x00a5 00A5 351 _P2_5 = 0x00a5 00A6 352 Fradio_queue$P2_6$0$0 == 0x00a6 00A6 353 _P2_6 = 0x00a6 00A7 354 Fradio_queue$P2_7$0$0 == 0x00a7 00A7 355 _P2_7 = 0x00a7 00A8 356 Fradio_queue$RFTXRXIE$0$0 == 0x00a8 00A8 357 _RFTXRXIE = 0x00a8 00A9 358 Fradio_queue$ADCIE$0$0 == 0x00a9 00A9 359 _ADCIE = 0x00a9 00AA 360 Fradio_queue$URX0IE$0$0 == 0x00aa 00AA 361 _URX0IE = 0x00aa 00AB 362 Fradio_queue$URX1IE$0$0 == 0x00ab 00AB 363 _URX1IE = 0x00ab 00AC 364 Fradio_queue$ENCIE$0$0 == 0x00ac 00AC 365 _ENCIE = 0x00ac 00AD 366 Fradio_queue$STIE$0$0 == 0x00ad 00AD 367 _STIE = 0x00ad 00AE 368 Fradio_queue$_IEN06$0$0 == 0x00ae 00AE 369 __IEN06 = 0x00ae 00AF 370 Fradio_queue$EA$0$0 == 0x00af 00AF 371 _EA = 0x00af 00B8 372 Fradio_queue$DMAIE$0$0 == 0x00b8 00B8 373 _DMAIE = 0x00b8 00B9 374 Fradio_queue$T1IE$0$0 == 0x00b9 00B9 375 _T1IE = 0x00b9 00BA 376 Fradio_queue$T2IE$0$0 == 0x00ba 00BA 377 _T2IE = 0x00ba 00BB 378 Fradio_queue$T3IE$0$0 == 0x00bb 00BB 379 _T3IE = 0x00bb 00BC 380 Fradio_queue$T4IE$0$0 == 0x00bc 00BC 381 _T4IE = 0x00bc 00BD 382 Fradio_queue$P0IE$0$0 == 0x00bd 00BD 383 _P0IE = 0x00bd 00BE 384 Fradio_queue$_IEN16$0$0 == 0x00be 00BE 385 __IEN16 = 0x00be 00BF 386 Fradio_queue$_IEN17$0$0 == 0x00bf 00BF 387 __IEN17 = 0x00bf 00C0 388 Fradio_queue$DMAIF$0$0 == 0x00c0 00C0 389 _DMAIF = 0x00c0 00C1 390 Fradio_queue$T1IF$0$0 == 0x00c1 00C1 391 _T1IF = 0x00c1 00C2 392 Fradio_queue$T2IF$0$0 == 0x00c2 00C2 393 _T2IF = 0x00c2 00C3 394 Fradio_queue$T3IF$0$0 == 0x00c3 00C3 395 _T3IF = 0x00c3 00C4 396 Fradio_queue$T4IF$0$0 == 0x00c4 00C4 397 _T4IF = 0x00c4 00C5 398 Fradio_queue$P0IF$0$0 == 0x00c5 00C5 399 _P0IF = 0x00c5 00C6 400 Fradio_queue$_IRCON6$0$0 == 0x00c6 00C6 401 __IRCON6 = 0x00c6 00C7 402 Fradio_queue$STIF$0$0 == 0x00c7 00C7 403 _STIF = 0x00c7 00D0 404 Fradio_queue$P$0$0 == 0x00d0 00D0 405 _P = 0x00d0 00D1 406 Fradio_queue$F1$0$0 == 0x00d1 00D1 407 _F1 = 0x00d1 00D2 408 Fradio_queue$OV$0$0 == 0x00d2 00D2 409 _OV = 0x00d2 00D3 410 Fradio_queue$RS0$0$0 == 0x00d3 00D3 411 _RS0 = 0x00d3 00D4 412 Fradio_queue$RS1$0$0 == 0x00d4 00D4 413 _RS1 = 0x00d4 00D5 414 Fradio_queue$F0$0$0 == 0x00d5 00D5 415 _F0 = 0x00d5 00D6 416 Fradio_queue$AC$0$0 == 0x00d6 00D6 417 _AC = 0x00d6 00D7 418 Fradio_queue$CY$0$0 == 0x00d7 00D7 419 _CY = 0x00d7 00D8 420 Fradio_queue$T3OVFIF$0$0 == 0x00d8 00D8 421 _T3OVFIF = 0x00d8 00D9 422 Fradio_queue$T3CH0IF$0$0 == 0x00d9 00D9 423 _T3CH0IF = 0x00d9 00DA 424 Fradio_queue$T3CH1IF$0$0 == 0x00da 00DA 425 _T3CH1IF = 0x00da 00DB 426 Fradio_queue$T4OVFIF$0$0 == 0x00db 00DB 427 _T4OVFIF = 0x00db 00DC 428 Fradio_queue$T4CH0IF$0$0 == 0x00dc 00DC 429 _T4CH0IF = 0x00dc 00DD 430 Fradio_queue$T4CH1IF$0$0 == 0x00dd 00DD 431 _T4CH1IF = 0x00dd 00DE 432 Fradio_queue$OVFIM$0$0 == 0x00de 00DE 433 _OVFIM = 0x00de 00DF 434 Fradio_queue$_TIMIF7$0$0 == 0x00df 00DF 435 __TIMIF7 = 0x00df 00E0 436 Fradio_queue$ACC_0$0$0 == 0x00e0 00E0 437 _ACC_0 = 0x00e0 00E1 438 Fradio_queue$ACC_1$0$0 == 0x00e1 00E1 439 _ACC_1 = 0x00e1 00E2 440 Fradio_queue$ACC_2$0$0 == 0x00e2 00E2 441 _ACC_2 = 0x00e2 00E3 442 Fradio_queue$ACC_3$0$0 == 0x00e3 00E3 443 _ACC_3 = 0x00e3 00E4 444 Fradio_queue$ACC_4$0$0 == 0x00e4 00E4 445 _ACC_4 = 0x00e4 00E5 446 Fradio_queue$ACC_5$0$0 == 0x00e5 00E5 447 _ACC_5 = 0x00e5 00E6 448 Fradio_queue$ACC_6$0$0 == 0x00e6 00E6 449 _ACC_6 = 0x00e6 00E7 450 Fradio_queue$ACC_7$0$0 == 0x00e7 00E7 451 _ACC_7 = 0x00e7 00E8 452 Fradio_queue$P2IF$0$0 == 0x00e8 00E8 453 _P2IF = 0x00e8 00E9 454 Fradio_queue$UTX0IF$0$0 == 0x00e9 00E9 455 _UTX0IF = 0x00e9 00EA 456 Fradio_queue$UTX1IF$0$0 == 0x00ea 00EA 457 _UTX1IF = 0x00ea 00EB 458 Fradio_queue$P1IF$0$0 == 0x00eb 00EB 459 _P1IF = 0x00eb 00EC 460 Fradio_queue$WDTIF$0$0 == 0x00ec 00EC 461 _WDTIF = 0x00ec 00ED 462 Fradio_queue$_IRCON25$0$0 == 0x00ed 00ED 463 __IRCON25 = 0x00ed 00EE 464 Fradio_queue$_IRCON26$0$0 == 0x00ee 00EE 465 __IRCON26 = 0x00ee 00EF 466 Fradio_queue$_IRCON27$0$0 == 0x00ef 00EF 467 __IRCON27 = 0x00ef 00F0 468 Fradio_queue$B_0$0$0 == 0x00f0 00F0 469 _B_0 = 0x00f0 00F1 470 Fradio_queue$B_1$0$0 == 0x00f1 00F1 471 _B_1 = 0x00f1 00F2 472 Fradio_queue$B_2$0$0 == 0x00f2 00F2 473 _B_2 = 0x00f2 00F3 474 Fradio_queue$B_3$0$0 == 0x00f3 00F3 475 _B_3 = 0x00f3 00F4 476 Fradio_queue$B_4$0$0 == 0x00f4 00F4 477 _B_4 = 0x00f4 00F5 478 Fradio_queue$B_5$0$0 == 0x00f5 00F5 479 _B_5 = 0x00f5 00F6 480 Fradio_queue$B_6$0$0 == 0x00f6 00F6 481 _B_6 = 0x00f6 00F7 482 Fradio_queue$B_7$0$0 == 0x00f7 00F7 483 _B_7 = 0x00f7 00F8 484 Fradio_queue$U1ACTIVE$0$0 == 0x00f8 00F8 485 _U1ACTIVE = 0x00f8 00F9 486 Fradio_queue$U1TX_BYTE$0$0 == 0x00f9 00F9 487 _U1TX_BYTE = 0x00f9 00FA 488 Fradio_queue$U1RX_BYTE$0$0 == 0x00fa 00FA 489 _U1RX_BYTE = 0x00fa 00FB 490 Fradio_queue$U1ERR$0$0 == 0x00fb 00FB 491 _U1ERR = 0x00fb 00FC 492 Fradio_queue$U1FE$0$0 == 0x00fc 00FC 493 _U1FE = 0x00fc 00FD 494 Fradio_queue$U1SLAVE$0$0 == 0x00fd 00FD 495 _U1SLAVE = 0x00fd 00FE 496 Fradio_queue$U1RE$0$0 == 0x00fe 00FE 497 _U1RE = 0x00fe 00FF 498 Fradio_queue$U1MODE$0$0 == 0x00ff 00FF 499 _U1MODE = 0x00ff 500 ;-------------------------------------------------------- 501 ; overlayable register banks 502 ;-------------------------------------------------------- 503 .area REG_BANK_0 (REL,OVR,DATA) 0000 504 .ds 8 505 ;-------------------------------------------------------- 506 ; internal ram data 507 ;-------------------------------------------------------- 508 .area DSEG (DATA) 0000 509 Fradio_queue$radioQueueRxMainLoopIndex$0$0==. 0000 510 _radioQueueRxMainLoopIndex: 0000 511 .ds 1 0001 512 Fradio_queue$radioQueueRxInterruptIndex$0$0==. 0001 513 _radioQueueRxInterruptIndex: 0001 514 .ds 1 0002 515 Fradio_queue$radioQueueTxMainLoopIndex$0$0==. 0002 516 _radioQueueTxMainLoopIndex: 0002 517 .ds 1 0003 518 Fradio_queue$radioQueueTxInterruptIndex$0$0==. 0003 519 _radioQueueTxInterruptIndex: 0003 520 .ds 1 521 ;-------------------------------------------------------- 522 ; overlayable items in internal ram 523 ;-------------------------------------------------------- 524 .area OSEG (OVR,DATA) 525 ;-------------------------------------------------------- 526 ; indirectly addressable internal ram data 527 ;-------------------------------------------------------- 528 .area ISEG (DATA) 529 ;-------------------------------------------------------- 530 ; absolute internal ram data 531 ;-------------------------------------------------------- 532 .area IABS (ABS,DATA) 533 .area IABS (ABS,DATA) 534 ;-------------------------------------------------------- 535 ; bit data 536 ;-------------------------------------------------------- 537 .area BSEG (BIT) 0000 538 G$radioQueueAllowCrcErrors$0$0==. 0000 539 _radioQueueAllowCrcErrors:: 0000 540 .ds 1 541 ;-------------------------------------------------------- 542 ; paged external ram data 543 ;-------------------------------------------------------- 544 .area PSEG (PAG,XDATA) 545 ;-------------------------------------------------------- 546 ; external ram data 547 ;-------------------------------------------------------- 548 .area XSEG (XDATA) DF00 549 Fradio_queue$SYNC1$0$0 == 0xdf00 DF00 550 _SYNC1 = 0xdf00 DF01 551 Fradio_queue$SYNC0$0$0 == 0xdf01 DF01 552 _SYNC0 = 0xdf01 DF02 553 Fradio_queue$PKTLEN$0$0 == 0xdf02 DF02 554 _PKTLEN = 0xdf02 DF03 555 Fradio_queue$PKTCTRL1$0$0 == 0xdf03 DF03 556 _PKTCTRL1 = 0xdf03 DF04 557 Fradio_queue$PKTCTRL0$0$0 == 0xdf04 DF04 558 _PKTCTRL0 = 0xdf04 DF05 559 Fradio_queue$ADDR$0$0 == 0xdf05 DF05 560 _ADDR = 0xdf05 DF06 561 Fradio_queue$CHANNR$0$0 == 0xdf06 DF06 562 _CHANNR = 0xdf06 DF07 563 Fradio_queue$FSCTRL1$0$0 == 0xdf07 DF07 564 _FSCTRL1 = 0xdf07 DF08 565 Fradio_queue$FSCTRL0$0$0 == 0xdf08 DF08 566 _FSCTRL0 = 0xdf08 DF09 567 Fradio_queue$FREQ2$0$0 == 0xdf09 DF09 568 _FREQ2 = 0xdf09 DF0A 569 Fradio_queue$FREQ1$0$0 == 0xdf0a DF0A 570 _FREQ1 = 0xdf0a DF0B 571 Fradio_queue$FREQ0$0$0 == 0xdf0b DF0B 572 _FREQ0 = 0xdf0b DF0C 573 Fradio_queue$MDMCFG4$0$0 == 0xdf0c DF0C 574 _MDMCFG4 = 0xdf0c DF0D 575 Fradio_queue$MDMCFG3$0$0 == 0xdf0d DF0D 576 _MDMCFG3 = 0xdf0d DF0E 577 Fradio_queue$MDMCFG2$0$0 == 0xdf0e DF0E 578 _MDMCFG2 = 0xdf0e DF0F 579 Fradio_queue$MDMCFG1$0$0 == 0xdf0f DF0F 580 _MDMCFG1 = 0xdf0f DF10 581 Fradio_queue$MDMCFG0$0$0 == 0xdf10 DF10 582 _MDMCFG0 = 0xdf10 DF11 583 Fradio_queue$DEVIATN$0$0 == 0xdf11 DF11 584 _DEVIATN = 0xdf11 DF12 585 Fradio_queue$MCSM2$0$0 == 0xdf12 DF12 586 _MCSM2 = 0xdf12 DF13 587 Fradio_queue$MCSM1$0$0 == 0xdf13 DF13 588 _MCSM1 = 0xdf13 DF14 589 Fradio_queue$MCSM0$0$0 == 0xdf14 DF14 590 _MCSM0 = 0xdf14 DF15 591 Fradio_queue$FOCCFG$0$0 == 0xdf15 DF15 592 _FOCCFG = 0xdf15 DF16 593 Fradio_queue$BSCFG$0$0 == 0xdf16 DF16 594 _BSCFG = 0xdf16 DF17 595 Fradio_queue$AGCCTRL2$0$0 == 0xdf17 DF17 596 _AGCCTRL2 = 0xdf17 DF18 597 Fradio_queue$AGCCTRL1$0$0 == 0xdf18 DF18 598 _AGCCTRL1 = 0xdf18 DF19 599 Fradio_queue$AGCCTRL0$0$0 == 0xdf19 DF19 600 _AGCCTRL0 = 0xdf19 DF1A 601 Fradio_queue$FREND1$0$0 == 0xdf1a DF1A 602 _FREND1 = 0xdf1a DF1B 603 Fradio_queue$FREND0$0$0 == 0xdf1b DF1B 604 _FREND0 = 0xdf1b DF1C 605 Fradio_queue$FSCAL3$0$0 == 0xdf1c DF1C 606 _FSCAL3 = 0xdf1c DF1D 607 Fradio_queue$FSCAL2$0$0 == 0xdf1d DF1D 608 _FSCAL2 = 0xdf1d DF1E 609 Fradio_queue$FSCAL1$0$0 == 0xdf1e DF1E 610 _FSCAL1 = 0xdf1e DF1F 611 Fradio_queue$FSCAL0$0$0 == 0xdf1f DF1F 612 _FSCAL0 = 0xdf1f DF23 613 Fradio_queue$TEST2$0$0 == 0xdf23 DF23 614 _TEST2 = 0xdf23 DF24 615 Fradio_queue$TEST1$0$0 == 0xdf24 DF24 616 _TEST1 = 0xdf24 DF25 617 Fradio_queue$TEST0$0$0 == 0xdf25 DF25 618 _TEST0 = 0xdf25 DF2E 619 Fradio_queue$PA_TABLE0$0$0 == 0xdf2e DF2E 620 _PA_TABLE0 = 0xdf2e DF2F 621 Fradio_queue$IOCFG2$0$0 == 0xdf2f DF2F 622 _IOCFG2 = 0xdf2f DF30 623 Fradio_queue$IOCFG1$0$0 == 0xdf30 DF30 624 _IOCFG1 = 0xdf30 DF31 625 Fradio_queue$IOCFG0$0$0 == 0xdf31 DF31 626 _IOCFG0 = 0xdf31 DF36 627 Fradio_queue$PARTNUM$0$0 == 0xdf36 DF36 628 _PARTNUM = 0xdf36 DF37 629 Fradio_queue$VERSION$0$0 == 0xdf37 DF37 630 _VERSION = 0xdf37 DF38 631 Fradio_queue$FREQEST$0$0 == 0xdf38 DF38 632 _FREQEST = 0xdf38 DF39 633 Fradio_queue$LQI$0$0 == 0xdf39 DF39 634 _LQI = 0xdf39 DF3A 635 Fradio_queue$RSSI$0$0 == 0xdf3a DF3A 636 _RSSI = 0xdf3a DF3B 637 Fradio_queue$MARCSTATE$0$0 == 0xdf3b DF3B 638 _MARCSTATE = 0xdf3b DF3C 639 Fradio_queue$PKTSTATUS$0$0 == 0xdf3c DF3C 640 _PKTSTATUS = 0xdf3c DF3D 641 Fradio_queue$VCO_VC_DAC$0$0 == 0xdf3d DF3D 642 _VCO_VC_DAC = 0xdf3d DF40 643 Fradio_queue$I2SCFG0$0$0 == 0xdf40 DF40 644 _I2SCFG0 = 0xdf40 DF41 645 Fradio_queue$I2SCFG1$0$0 == 0xdf41 DF41 646 _I2SCFG1 = 0xdf41 DF42 647 Fradio_queue$I2SDATL$0$0 == 0xdf42 DF42 648 _I2SDATL = 0xdf42 DF43 649 Fradio_queue$I2SDATH$0$0 == 0xdf43 DF43 650 _I2SDATH = 0xdf43 DF44 651 Fradio_queue$I2SWCNT$0$0 == 0xdf44 DF44 652 _I2SWCNT = 0xdf44 DF45 653 Fradio_queue$I2SSTAT$0$0 == 0xdf45 DF45 654 _I2SSTAT = 0xdf45 DF46 655 Fradio_queue$I2SCLKF0$0$0 == 0xdf46 DF46 656 _I2SCLKF0 = 0xdf46 DF47 657 Fradio_queue$I2SCLKF1$0$0 == 0xdf47 DF47 658 _I2SCLKF1 = 0xdf47 DF48 659 Fradio_queue$I2SCLKF2$0$0 == 0xdf48 DF48 660 _I2SCLKF2 = 0xdf48 DE00 661 Fradio_queue$USBADDR$0$0 == 0xde00 DE00 662 _USBADDR = 0xde00 DE01 663 Fradio_queue$USBPOW$0$0 == 0xde01 DE01 664 _USBPOW = 0xde01 DE02 665 Fradio_queue$USBIIF$0$0 == 0xde02 DE02 666 _USBIIF = 0xde02 DE04 667 Fradio_queue$USBOIF$0$0 == 0xde04 DE04 668 _USBOIF = 0xde04 DE06 669 Fradio_queue$USBCIF$0$0 == 0xde06 DE06 670 _USBCIF = 0xde06 DE07 671 Fradio_queue$USBIIE$0$0 == 0xde07 DE07 672 _USBIIE = 0xde07 DE09 673 Fradio_queue$USBOIE$0$0 == 0xde09 DE09 674 _USBOIE = 0xde09 DE0B 675 Fradio_queue$USBCIE$0$0 == 0xde0b DE0B 676 _USBCIE = 0xde0b DE0C 677 Fradio_queue$USBFRML$0$0 == 0xde0c DE0C 678 _USBFRML = 0xde0c DE0D 679 Fradio_queue$USBFRMH$0$0 == 0xde0d DE0D 680 _USBFRMH = 0xde0d DE0E 681 Fradio_queue$USBINDEX$0$0 == 0xde0e DE0E 682 _USBINDEX = 0xde0e DE10 683 Fradio_queue$USBMAXI$0$0 == 0xde10 DE10 684 _USBMAXI = 0xde10 DE11 685 Fradio_queue$USBCSIL$0$0 == 0xde11 DE11 686 _USBCSIL = 0xde11 DE12 687 Fradio_queue$USBCSIH$0$0 == 0xde12 DE12 688 _USBCSIH = 0xde12 DE13 689 Fradio_queue$USBMAXO$0$0 == 0xde13 DE13 690 _USBMAXO = 0xde13 DE14 691 Fradio_queue$USBCSOL$0$0 == 0xde14 DE14 692 _USBCSOL = 0xde14 DE15 693 Fradio_queue$USBCSOH$0$0 == 0xde15 DE15 694 _USBCSOH = 0xde15 DE16 695 Fradio_queue$USBCNTL$0$0 == 0xde16 DE16 696 _USBCNTL = 0xde16 DE17 697 Fradio_queue$USBCNTH$0$0 == 0xde17 DE17 698 _USBCNTH = 0xde17 DE20 699 Fradio_queue$USBF0$0$0 == 0xde20 DE20 700 _USBF0 = 0xde20 DE22 701 Fradio_queue$USBF1$0$0 == 0xde22 DE22 702 _USBF1 = 0xde22 DE24 703 Fradio_queue$USBF2$0$0 == 0xde24 DE24 704 _USBF2 = 0xde24 DE26 705 Fradio_queue$USBF3$0$0 == 0xde26 DE26 706 _USBF3 = 0xde26 DE28 707 Fradio_queue$USBF4$0$0 == 0xde28 DE28 708 _USBF4 = 0xde28 DE2A 709 Fradio_queue$USBF5$0$0 == 0xde2a DE2A 710 _USBF5 = 0xde2a 0000 711 Fradio_queue$radioQueueRxPacket$0$0==. 0000 712 _radioQueueRxPacket: 0000 713 .ds 66 0042 714 Fradio_queue$radioQueueTxPacket$0$0==. 0042 715 _radioQueueTxPacket: 0042 716 .ds 320 717 ;-------------------------------------------------------- 718 ; absolute external ram data 719 ;-------------------------------------------------------- 720 .area XABS (ABS,XDATA) 721 ;-------------------------------------------------------- 722 ; external initialized ram data 723 ;-------------------------------------------------------- 724 .area XISEG (XDATA) 725 .area HOME (CODE) 726 .area GSINIT0 (CODE) 727 .area GSINIT1 (CODE) 728 .area GSINIT2 (CODE) 729 .area GSINIT3 (CODE) 730 .area GSINIT4 (CODE) 731 .area GSINIT5 (CODE) 732 .area GSINIT (CODE) 733 .area GSFINAL (CODE) 734 .area CSEG (CODE) 735 ;-------------------------------------------------------- 736 ; global & static initialisations 737 ;-------------------------------------------------------- 738 .area HOME (CODE) 739 .area GSINIT (CODE) 740 .area GSFINAL (CODE) 741 .area GSINIT (CODE) 0000 742 G$radioMacEventHandler$0$0 ==. 0000 743 C$radio_queue.c$54$2$1 ==. 744 ; libraries/src/radio_queue/radio_queue.c:54: static volatile uint8 DATA radioQueueRxMainLoopIndex = 0; // The index of the next rxBuffer to read from the main loop. 0000 75*00 00 745 mov _radioQueueRxMainLoopIndex,#0x00 0003 746 G$radioMacEventHandler$0$0 ==. 0003 747 C$radio_queue.c$55$2$1 ==. 748 ; libraries/src/radio_queue/radio_queue.c:55: static volatile uint8 DATA radioQueueRxInterruptIndex = 0; // The index of the next rxBuffer to write to when a packet comes from the radio. 0003 75*01 00 749 mov _radioQueueRxInterruptIndex,#0x00 0006 750 G$radioMacEventHandler$0$0 ==. 0006 751 C$radio_queue.c$60$2$1 ==. 752 ; libraries/src/radio_queue/radio_queue.c:60: static volatile uint8 DATA radioQueueTxMainLoopIndex = 0; // The index of the next txPacket to write to in the main loop. 0006 75*02 00 753 mov _radioQueueTxMainLoopIndex,#0x00 0009 754 G$radioMacEventHandler$0$0 ==. 0009 755 C$radio_queue.c$61$2$1 ==. 756 ; libraries/src/radio_queue/radio_queue.c:61: static volatile uint8 DATA radioQueueTxInterruptIndex = 0; // The index of the current txPacket we are trying to send on the radio. 0009 75*03 00 757 mov _radioQueueTxInterruptIndex,#0x00 000C 758 G$radioMacEventHandler$0$0 ==. 000C 759 C$radio_queue.c$63$2$1 ==. 760 ; libraries/src/radio_queue/radio_queue.c:63: BIT radioQueueAllowCrcErrors = 0; 000C C2*00 761 clr _radioQueueAllowCrcErrors 762 ;-------------------------------------------------------- 763 ; Home 764 ;-------------------------------------------------------- 765 .area HOME (CODE) 766 .area HOME (CODE) 767 ;-------------------------------------------------------- 768 ; code 769 ;-------------------------------------------------------- 770 .area CSEG (CODE) 771 ;------------------------------------------------------------ 772 ;Allocation info for local variables in function 'radioQueueInit' 773 ;------------------------------------------------------------ 774 ;------------------------------------------------------------ 0000 775 G$radioQueueInit$0$0 ==. 0000 776 C$radio_queue.c$67$0$0 ==. 777 ; libraries/src/radio_queue/radio_queue.c:67: void radioQueueInit() 778 ; ----------------------------------------- 779 ; function radioQueueInit 780 ; ----------------------------------------- 0000 781 _radioQueueInit: 0002 782 ar2 = 0x02 0003 783 ar3 = 0x03 0004 784 ar4 = 0x04 0005 785 ar5 = 0x05 0006 786 ar6 = 0x06 0007 787 ar7 = 0x07 0000 788 ar0 = 0x00 0001 789 ar1 = 0x01 0000 790 C$radio_queue.c$69$1$1 ==. 791 ; libraries/src/radio_queue/radio_queue.c:69: randomSeedFromSerialNumber(); 0000 12s00r00 792 lcall _randomSeedFromSerialNumber 0003 793 C$radio_queue.c$71$1$1 ==. 794 ; libraries/src/radio_queue/radio_queue.c:71: PKTLEN = RADIO_MAX_PACKET_SIZE; 0003 90 DF 02 795 mov dptr,#_PKTLEN 0006 74 13 796 mov a,#0x13 0008 F0 797 movx @dptr,a 0009 798 C$radio_queue.c$72$1$1 ==. 799 ; libraries/src/radio_queue/radio_queue.c:72: CHANNR = param_radio_channel; 0009 90s00r00 800 mov dptr,#_param_radio_channel 000C E4 801 clr a 000D 93 802 movc a,@a+dptr 000E FA 803 mov r2,a 000F 74 01 804 mov a,#0x01 0011 93 805 movc a,@a+dptr 0012 74 02 806 mov a,#0x02 0014 93 807 movc a,@a+dptr 0015 74 03 808 mov a,#0x03 0017 93 809 movc a,@a+dptr 0018 90 DF 06 810 mov dptr,#_CHANNR 001B EA 811 mov a,r2 001C F0 812 movx @dptr,a 001D 813 C$radio_queue.c$74$1$1 ==. 814 ; libraries/src/radio_queue/radio_queue.c:74: radioMacInit(); 001D 12s00r00 815 lcall _radioMacInit 0020 816 C$radio_queue.c$75$1$1 ==. 817 ; libraries/src/radio_queue/radio_queue.c:75: radioMacStrobe(); 0020 818 C$radio_queue.c$76$1$1 ==. 0020 819 XG$radioQueueInit$0$0 ==. 0020 02s00r00 820 ljmp _radioMacStrobe 821 ;------------------------------------------------------------ 822 ;Allocation info for local variables in function 'randomTxDelay' 823 ;------------------------------------------------------------ 824 ;------------------------------------------------------------ 0023 825 Fradio_queue$randomTxDelay$0$0 ==. 0023 826 C$radio_queue.c$80$1$1 ==. 827 ; libraries/src/radio_queue/radio_queue.c:80: static uint8 randomTxDelay() 828 ; ----------------------------------------- 829 ; function randomTxDelay 830 ; ----------------------------------------- 0023 831 _randomTxDelay: 0023 832 C$radio_queue.c$82$1$1 ==. 833 ; libraries/src/radio_queue/radio_queue.c:82: return 1 + (randomNumber() & 3); 0023 12s00r00 834 lcall _randomNumber 0026 E5 82 835 mov a,dpl 0028 54 03 836 anl a,#0x03 002A 04 837 inc a 002B F5 82 838 mov dpl,a 002D 839 C$radio_queue.c$83$1$1 ==. 002D 840 XFradio_queue$randomTxDelay$0$0 ==. 002D 22 841 ret 842 ;------------------------------------------------------------ 843 ;Allocation info for local variables in function 'radioQueueTxAvailable' 844 ;------------------------------------------------------------ 845 ;------------------------------------------------------------ 002E 846 G$radioQueueTxAvailable$0$0 ==. 002E 847 C$radio_queue.c$87$1$1 ==. 848 ; libraries/src/radio_queue/radio_queue.c:87: uint8 radioQueueTxAvailable(void) 849 ; ----------------------------------------- 850 ; function radioQueueTxAvailable 851 ; ----------------------------------------- 002E 852 _radioQueueTxAvailable: 002E 853 C$radio_queue.c$90$1$1 ==. 854 ; libraries/src/radio_queue/radio_queue.c:90: return (radioQueueTxInterruptIndex - radioQueueTxMainLoopIndex - 1) & (TX_PACKET_COUNT - 1); 002E E5*03 855 mov a,_radioQueueTxInterruptIndex 0030 C3 856 clr c 0031 95*02 857 subb a,_radioQueueTxMainLoopIndex 0033 14 858 dec a 0034 54 0F 859 anl a,#0x0F 0036 F5 82 860 mov dpl,a 0038 861 C$radio_queue.c$91$1$1 ==. 0038 862 XG$radioQueueTxAvailable$0$0 ==. 0038 22 863 ret 864 ;------------------------------------------------------------ 865 ;Allocation info for local variables in function 'radioQueueTxQueued' 866 ;------------------------------------------------------------ 867 ;------------------------------------------------------------ 0039 868 G$radioQueueTxQueued$0$0 ==. 0039 869 C$radio_queue.c$93$1$1 ==. 870 ; libraries/src/radio_queue/radio_queue.c:93: uint8 radioQueueTxQueued(void) 871 ; ----------------------------------------- 872 ; function radioQueueTxQueued 873 ; ----------------------------------------- 0039 874 _radioQueueTxQueued: 0039 875 C$radio_queue.c$95$1$1 ==. 876 ; libraries/src/radio_queue/radio_queue.c:95: return (radioQueueTxMainLoopIndex - radioQueueTxInterruptIndex) & (TX_PACKET_COUNT - 1); 0039 E5*02 877 mov a,_radioQueueTxMainLoopIndex 003B C3 878 clr c 003C 95*03 879 subb a,_radioQueueTxInterruptIndex 003E 54 0F 880 anl a,#0x0F 0040 F5 82 881 mov dpl,a 0042 882 C$radio_queue.c$96$1$1 ==. 0042 883 XG$radioQueueTxQueued$0$0 ==. 0042 22 884 ret 885 ;------------------------------------------------------------ 886 ;Allocation info for local variables in function 'radioQueueTxCurrentPacket' 887 ;------------------------------------------------------------ 888 ;------------------------------------------------------------ 0043 889 G$radioQueueTxCurrentPacket$0$0 ==. 0043 890 C$radio_queue.c$98$1$1 ==. 891 ; libraries/src/radio_queue/radio_queue.c:98: uint8 XDATA * radioQueueTxCurrentPacket() 892 ; ----------------------------------------- 893 ; function radioQueueTxCurrentPacket 894 ; ----------------------------------------- 0043 895 _radioQueueTxCurrentPacket: 0043 896 C$radio_queue.c$100$1$1 ==. 897 ; libraries/src/radio_queue/radio_queue.c:100: if (!radioQueueTxAvailable()) 0043 12s00r2E 898 lcall _radioQueueTxAvailable 0046 E5 82 899 mov a,dpl 0048 70 04 900 jnz 00102$ 004A 901 C$radio_queue.c$102$2$2 ==. 902 ; libraries/src/radio_queue/radio_queue.c:102: return 0; 004A 90 00 00 903 mov dptr,#0x0000 004D 22 904 ret 004E 905 00102$: 004E 906 C$radio_queue.c$105$1$1 ==. 907 ; libraries/src/radio_queue/radio_queue.c:105: return radioQueueTxPacket[radioQueueTxMainLoopIndex]; 004E E5*02 908 mov a,_radioQueueTxMainLoopIndex 0050 75 F0 14 909 mov b,#0x14 0053 A4 910 mul ab 0054 24r42 911 add a,#_radioQueueTxPacket 0056 FA 912 mov r2,a 0057 74s00 913 mov a,#(_radioQueueTxPacket >> 8) 0059 35 F0 914 addc a,b 005B 915 C$radio_queue.c$106$1$1 ==. 005B 916 XG$radioQueueTxCurrentPacket$0$0 ==. 005B 8A 82 917 mov dpl,r2 005D F5 83 918 mov dph,a 005F 22 919 ret 920 ;------------------------------------------------------------ 921 ;Allocation info for local variables in function 'radioQueueTxSendPacket' 922 ;------------------------------------------------------------ 923 ;------------------------------------------------------------ 0060 924 G$radioQueueTxSendPacket$0$0 ==. 0060 925 C$radio_queue.c$108$1$1 ==. 926 ; libraries/src/radio_queue/radio_queue.c:108: void radioQueueTxSendPacket(void) 927 ; ----------------------------------------- 928 ; function radioQueueTxSendPacket 929 ; ----------------------------------------- 0060 930 _radioQueueTxSendPacket: 0060 931 C$radio_queue.c$111$1$1 ==. 932 ; libraries/src/radio_queue/radio_queue.c:111: if (radioQueueTxMainLoopIndex == TX_PACKET_COUNT - 1) 0060 74 0F 933 mov a,#0x0F 0062 B5*02 05 934 cjne a,_radioQueueTxMainLoopIndex,00102$ 0065 935 C$radio_queue.c$113$2$2 ==. 936 ; libraries/src/radio_queue/radio_queue.c:113: radioQueueTxMainLoopIndex = 0; 0065 75*02 00 937 mov _radioQueueTxMainLoopIndex,#0x00 0068 80 02 938 sjmp 00103$ 006A 939 00102$: 006A 940 C$radio_queue.c$117$2$3 ==. 941 ; libraries/src/radio_queue/radio_queue.c:117: radioQueueTxMainLoopIndex++; 006A 05*02 942 inc _radioQueueTxMainLoopIndex 006C 943 00103$: 006C 944 C$radio_queue.c$122$1$1 ==. 945 ; libraries/src/radio_queue/radio_queue.c:122: radioMacStrobe(); 006C 946 C$radio_queue.c$123$1$1 ==. 006C 947 XG$radioQueueTxSendPacket$0$0 ==. 006C 02s00r00 948 ljmp _radioMacStrobe 949 ;------------------------------------------------------------ 950 ;Allocation info for local variables in function 'radioQueueRxCurrentPacket' 951 ;------------------------------------------------------------ 952 ;------------------------------------------------------------ 006F 953 G$radioQueueRxCurrentPacket$0$0 ==. 006F 954 C$radio_queue.c$127$1$1 ==. 955 ; libraries/src/radio_queue/radio_queue.c:127: uint8 XDATA * radioQueueRxCurrentPacket(void) 956 ; ----------------------------------------- 957 ; function radioQueueRxCurrentPacket 958 ; ----------------------------------------- 006F 959 _radioQueueRxCurrentPacket: 006F 960 C$radio_queue.c$129$1$1 ==. 961 ; libraries/src/radio_queue/radio_queue.c:129: if (radioQueueRxMainLoopIndex == radioQueueRxInterruptIndex) 006F E5*01 962 mov a,_radioQueueRxInterruptIndex 0071 B5*00 04 963 cjne a,_radioQueueRxMainLoopIndex,00102$ 0074 964 C$radio_queue.c$131$2$2 ==. 965 ; libraries/src/radio_queue/radio_queue.c:131: return 0; 0074 90 00 00 966 mov dptr,#0x0000 0077 22 967 ret 0078 968 00102$: 0078 969 C$radio_queue.c$133$1$1 ==. 970 ; libraries/src/radio_queue/radio_queue.c:133: return radioQueueRxPacket[radioQueueRxMainLoopIndex]; 0078 E5*00 971 mov a,_radioQueueRxMainLoopIndex 007A 75 F0 16 972 mov b,#0x16 007D A4 973 mul ab 007E 24r00 974 add a,#_radioQueueRxPacket 0080 FA 975 mov r2,a 0081 E4 976 clr a 0082 34s00 977 addc a,#(_radioQueueRxPacket >> 8) 0084 978 C$radio_queue.c$134$1$1 ==. 0084 979 XG$radioQueueRxCurrentPacket$0$0 ==. 0084 8A 82 980 mov dpl,r2 0086 F5 83 981 mov dph,a 0088 22 982 ret 983 ;------------------------------------------------------------ 984 ;Allocation info for local variables in function 'radioQueueRxDoneWithPacket' 985 ;------------------------------------------------------------ 986 ;------------------------------------------------------------ 0089 987 G$radioQueueRxDoneWithPacket$0$0 ==. 0089 988 C$radio_queue.c$136$1$1 ==. 989 ; libraries/src/radio_queue/radio_queue.c:136: void radioQueueRxDoneWithPacket(void) 990 ; ----------------------------------------- 991 ; function radioQueueRxDoneWithPacket 992 ; ----------------------------------------- 0089 993 _radioQueueRxDoneWithPacket: 0089 994 C$radio_queue.c$138$1$1 ==. 995 ; libraries/src/radio_queue/radio_queue.c:138: if (radioQueueRxMainLoopIndex == RX_PACKET_COUNT - 1) 0089 74 02 996 mov a,#0x02 008B B5*00 04 997 cjne a,_radioQueueRxMainLoopIndex,00102$ 008E 998 C$radio_queue.c$140$2$2 ==. 999 ; libraries/src/radio_queue/radio_queue.c:140: radioQueueRxMainLoopIndex = 0; 008E 75*00 00 1000 mov _radioQueueRxMainLoopIndex,#0x00 0091 22 1001 ret 0092 1002 00102$: 0092 1003 C$radio_queue.c$144$2$3 ==. 1004 ; libraries/src/radio_queue/radio_queue.c:144: radioQueueRxMainLoopIndex++; 0092 05*00 1005 inc _radioQueueRxMainLoopIndex 0094 1006 C$radio_queue.c$146$1$1 ==. 0094 1007 XG$radioQueueRxDoneWithPacket$0$0 ==. 0094 22 1008 ret 1009 ;------------------------------------------------------------ 1010 ;Allocation info for local variables in function 'takeInitiative' 1011 ;------------------------------------------------------------ 1012 ;------------------------------------------------------------ 0095 1013 Fradio_queue$takeInitiative$0$0 ==. 0095 1014 C$radio_queue.c$150$1$1 ==. 1015 ; libraries/src/radio_queue/radio_queue.c:150: static void takeInitiative() 1016 ; ----------------------------------------- 1017 ; function takeInitiative 1018 ; ----------------------------------------- 0095 1019 _takeInitiative: 0095 1020 C$radio_queue.c$152$1$1 ==. 1021 ; libraries/src/radio_queue/radio_queue.c:152: if (radioQueueTxInterruptIndex != radioQueueTxMainLoopIndex) 0095 E5*02 1022 mov a,_radioQueueTxMainLoopIndex 0097 B5*03 02 1023 cjne a,_radioQueueTxInterruptIndex,00107$ 009A 80 15 1024 sjmp 00102$ 009C 1025 00107$: 009C 1026 C$radio_queue.c$155$2$2 ==. 1027 ; libraries/src/radio_queue/radio_queue.c:155: radioMacTx(radioQueueTxPacket[radioQueueTxInterruptIndex]); 009C E5*03 1028 mov a,_radioQueueTxInterruptIndex 009E 75 F0 14 1029 mov b,#0x14 00A1 A4 1030 mul ab 00A2 24r42 1031 add a,#_radioQueueTxPacket 00A4 FA 1032 mov r2,a 00A5 74s00 1033 mov a,#(_radioQueueTxPacket >> 8) 00A7 35 F0 1034 addc a,b 00A9 FB 1035 mov r3,a 00AA 8A 82 1036 mov dpl,r2 00AC 8B 83 1037 mov dph,r3 00AE 02s00r00 1038 ljmp _radioMacTx 00B1 1039 00102$: 00B1 1040 C$radio_queue.c$159$2$3 ==. 1041 ; libraries/src/radio_queue/radio_queue.c:159: radioMacRx(radioQueueRxPacket[radioQueueRxInterruptIndex], 0); 00B1 E5*01 1042 mov a,_radioQueueRxInterruptIndex 00B3 75 F0 16 1043 mov b,#0x16 00B6 A4 1044 mul ab 00B7 24r00 1045 add a,#_radioQueueRxPacket 00B9 FA 1046 mov r2,a 00BA E4 1047 clr a 00BB 34s00 1048 addc a,#(_radioQueueRxPacket >> 8) 00BD FB 1049 mov r3,a 00BE 78r00 1050 mov r0,#_radioMacRx_PARM_2 00C0 E4 1051 clr a 00C1 F2 1052 movx @r0,a 00C2 8A 82 1053 mov dpl,r2 00C4 8B 83 1054 mov dph,r3 00C6 1055 C$radio_queue.c$161$1$1 ==. 00C6 1056 XFradio_queue$takeInitiative$0$0 ==. 00C6 02s00r00 1057 ljmp _radioMacRx 1058 ;------------------------------------------------------------ 1059 ;Allocation info for local variables in function 'radioMacEventHandler' 1060 ;------------------------------------------------------------ 1061 ;------------------------------------------------------------ 00C9 1062 G$radioMacEventHandler$0$0 ==. 00C9 1063 C$radio_queue.c$163$1$1 ==. 1064 ; libraries/src/radio_queue/radio_queue.c:163: void radioMacEventHandler(uint8 event) // called by the MAC in an ISR 1065 ; ----------------------------------------- 1066 ; function radioMacEventHandler 1067 ; ----------------------------------------- 00C9 1068 _radioMacEventHandler: 00C9 AA 82 1069 mov r2,dpl 00CB 1070 C$radio_queue.c$165$1$1 ==. 1071 ; libraries/src/radio_queue/radio_queue.c:165: if (event == RADIO_MAC_EVENT_STROBE) 00CB BA 21 03 1072 cjne r2,#0x21,00126$ 00CE 1073 C$radio_queue.c$167$2$2 ==. 1074 ; libraries/src/radio_queue/radio_queue.c:167: takeInitiative(); 00CE 1075 C$radio_queue.c$168$2$2 ==. 1076 ; libraries/src/radio_queue/radio_queue.c:168: return; 00CE 02s00r95 1077 ljmp _takeInitiative 00D1 1078 00126$: 00D1 1079 C$radio_queue.c$170$1$1 ==. 1080 ; libraries/src/radio_queue/radio_queue.c:170: else if (event == RADIO_MAC_EVENT_TX) 00D1 BA 1E 31 1081 cjne r2,#0x1E,00123$ 00D4 1082 C$radio_queue.c$173$2$3 ==. 1083 ; libraries/src/radio_queue/radio_queue.c:173: if (radioQueueTxInterruptIndex == TX_PACKET_COUNT - 1) 00D4 74 0F 1084 mov a,#0x0F 00D6 B5*03 05 1085 cjne a,_radioQueueTxInterruptIndex,00102$ 00D9 1086 C$radio_queue.c$175$3$4 ==. 1087 ; libraries/src/radio_queue/radio_queue.c:175: radioQueueTxInterruptIndex = 0; 00D9 75*03 00 1088 mov _radioQueueTxInterruptIndex,#0x00 00DC 80 02 1089 sjmp 00103$ 00DE 1090 00102$: 00DE 1091 C$radio_queue.c$179$3$5 ==. 1092 ; libraries/src/radio_queue/radio_queue.c:179: radioQueueTxInterruptIndex++; 00DE 05*03 1093 inc _radioQueueTxInterruptIndex 00E0 1094 00103$: 00E0 1095 C$radio_queue.c$183$2$3 ==. 1096 ; libraries/src/radio_queue/radio_queue.c:183: radioMacRx(radioQueueRxPacket[radioQueueRxInterruptIndex], randomTxDelay()); 00E0 E5*01 1097 mov a,_radioQueueRxInterruptIndex 00E2 75 F0 16 1098 mov b,#0x16 00E5 A4 1099 mul ab 00E6 24r00 1100 add a,#_radioQueueRxPacket 00E8 FB 1101 mov r3,a 00E9 E4 1102 clr a 00EA 34s00 1103 addc a,#(_radioQueueRxPacket >> 8) 00EC FC 1104 mov r4,a 00ED C0 03 1105 push ar3 00EF C0 04 1106 push ar4 00F1 12s00r23 1107 lcall _randomTxDelay 00F4 AD 82 1108 mov r5,dpl 00F6 D0 04 1109 pop ar4 00F8 D0 03 1110 pop ar3 00FA 78r00 1111 mov r0,#_radioMacRx_PARM_2 00FC ED 1112 mov a,r5 00FD F2 1113 movx @r0,a 00FE 8B 82 1114 mov dpl,r3 0100 8C 83 1115 mov dph,r4 0102 1116 C$radio_queue.c$184$2$3 ==. 1117 ; libraries/src/radio_queue/radio_queue.c:184: return; 0102 02s00r00 1118 ljmp _radioMacRx 0105 1119 00123$: 0105 1120 C$radio_queue.c$186$1$1 ==. 1121 ; libraries/src/radio_queue/radio_queue.c:186: else if (event == RADIO_MAC_EVENT_RX) 0105 BA 1F 66 1122 cjne r2,#0x1F,00120$ 0108 1123 C$radio_queue.c$188$2$6 ==. 1124 ; libraries/src/radio_queue/radio_queue.c:188: uint8 XDATA * currentRxPacket = radioQueueRxPacket[radioQueueRxInterruptIndex]; 0108 E5*01 1125 mov a,_radioQueueRxInterruptIndex 010A 75 F0 16 1126 mov b,#0x16 010D A4 1127 mul ab 010E 24r00 1128 add a,#_radioQueueRxPacket 0110 FB 1129 mov r3,a 0111 E4 1130 clr a 0112 34s00 1131 addc a,#(_radioQueueRxPacket >> 8) 0114 FC 1132 mov r4,a 0115 1133 C$radio_queue.c$190$2$6 ==. 1134 ; libraries/src/radio_queue/radio_queue.c:190: if (!radioQueueAllowCrcErrors && !radioCrcPassed()) 0115 20*00 37 1135 jb _radioQueueAllowCrcErrors,00108$ 0118 C0 03 1136 push ar3 011A C0 04 1137 push ar4 011C 12s00r00 1138 lcall _radioCrcPassed 011F D0 04 1139 pop ar4 0121 D0 03 1140 pop ar3 0123 40 2A 1141 jc 00108$ 0125 1142 C$radio_queue.c$192$3$7 ==. 1143 ; libraries/src/radio_queue/radio_queue.c:192: if (radioQueueTxInterruptIndex != radioQueueTxMainLoopIndex) 0125 E5*02 1144 mov a,_radioQueueTxMainLoopIndex 0127 B5*03 02 1145 cjne a,_radioQueueTxInterruptIndex,00151$ 012A 80 18 1146 sjmp 00105$ 012C 1147 00151$: 012C 1148 C$radio_queue.c$194$4$8 ==. 1149 ; libraries/src/radio_queue/radio_queue.c:194: radioMacRx(currentRxPacket, randomTxDelay()); 012C C0 03 1150 push ar3 012E C0 04 1151 push ar4 0130 12s00r23 1152 lcall _randomTxDelay 0133 AD 82 1153 mov r5,dpl 0135 D0 04 1154 pop ar4 0137 D0 03 1155 pop ar3 0139 78r00 1156 mov r0,#_radioMacRx_PARM_2 013B ED 1157 mov a,r5 013C F2 1158 movx @r0,a 013D 8B 82 1159 mov dpl,r3 013F 8C 83 1160 mov dph,r4 0141 02s00r00 1161 ljmp _radioMacRx 0144 1162 00105$: 0144 1163 C$radio_queue.c$198$4$9 ==. 1164 ; libraries/src/radio_queue/radio_queue.c:198: radioMacRx(currentRxPacket, 0); 0144 78r00 1165 mov r0,#_radioMacRx_PARM_2 0146 E4 1166 clr a 0147 F2 1167 movx @r0,a 0148 8B 82 1168 mov dpl,r3 014A 8C 83 1169 mov dph,r4 014C 1170 C$radio_queue.c$200$3$7 ==. 1171 ; libraries/src/radio_queue/radio_queue.c:200: return; 014C 02s00r00 1172 ljmp _radioMacRx 014F 1173 00108$: 014F 1174 C$radio_queue.c$203$2$6 ==. 1175 ; libraries/src/radio_queue/radio_queue.c:203: if (currentRxPacket[RADIO_QUEUE_PACKET_LENGTH_OFFSET] > 0) 014F 8B 82 1176 mov dpl,r3 0151 8C 83 1177 mov dph,r4 0153 E0 1178 movx a,@dptr 0154 60 15 1179 jz 00116$ 0156 1180 C$radio_queue.c$210$3$10 ==. 1181 ; libraries/src/radio_queue/radio_queue.c:210: if (radioQueueRxInterruptIndex == RX_PACKET_COUNT - 1) 0156 74 02 1182 mov a,#0x02 0158 B5*01 04 1183 cjne a,_radioQueueRxInterruptIndex,00111$ 015B 1184 C$radio_queue.c$212$4$11 ==. 1185 ; libraries/src/radio_queue/radio_queue.c:212: nextradioQueueRxInterruptIndex = 0; 015B 7B 00 1186 mov r3,#0x00 015D 80 04 1187 sjmp 00112$ 015F 1188 00111$: 015F 1189 C$radio_queue.c$216$4$12 ==. 1190 ; libraries/src/radio_queue/radio_queue.c:216: nextradioQueueRxInterruptIndex = radioQueueRxInterruptIndex + 1; 015F E5*01 1191 mov a,_radioQueueRxInterruptIndex 0161 04 1192 inc a 0162 FB 1193 mov r3,a 0163 1194 00112$: 0163 1195 C$radio_queue.c$219$3$10 ==. 1196 ; libraries/src/radio_queue/radio_queue.c:219: if (nextradioQueueRxInterruptIndex != radioQueueRxMainLoopIndex) 0163 EB 1197 mov a,r3 0164 B5*00 02 1198 cjne a,_radioQueueRxMainLoopIndex,00155$ 0167 80 02 1199 sjmp 00116$ 0169 1200 00155$: 0169 1201 C$radio_queue.c$222$4$13 ==. 1202 ; libraries/src/radio_queue/radio_queue.c:222: radioQueueRxInterruptIndex = nextradioQueueRxInterruptIndex; 0169 8B*01 1203 mov _radioQueueRxInterruptIndex,r3 016B 1204 00116$: 016B 1205 C$radio_queue.c$226$2$6 ==. 1206 ; libraries/src/radio_queue/radio_queue.c:226: takeInitiative(); 016B 1207 C$radio_queue.c$227$2$6 ==. 1208 ; libraries/src/radio_queue/radio_queue.c:227: return; 016B 02s00r95 1209 ljmp _takeInitiative 016E 1210 00120$: 016E 1211 C$radio_queue.c$229$1$1 ==. 1212 ; libraries/src/radio_queue/radio_queue.c:229: else if (event == RADIO_MAC_EVENT_RX_TIMEOUT) 016E BA 20 03 1213 cjne r2,#0x20,00128$ 0171 1214 C$radio_queue.c$231$2$14 ==. 1215 ; libraries/src/radio_queue/radio_queue.c:231: takeInitiative(); 0171 1216 C$radio_queue.c$232$2$14 ==. 1217 ; libraries/src/radio_queue/radio_queue.c:232: return; 0171 1218 C$radio_queue.c$234$2$1 ==. 0171 1219 XG$radioMacEventHandler$0$0 ==. 0171 02s00r95 1220 ljmp _takeInitiative 0174 1221 00128$: 0174 22 1222 ret 1223 .area CSEG (CODE) 1224 .area CONST (CODE) 0000 1225 G$param_radio_channel$0$0 == . 0000 1226 _param_radio_channel: 0000 80 00 00 00 1227 .byte #0x80,#0x00,#0x00,#0x00 ; 128 1228 .area XINIT (CODE) 1229 .area CABS (ABS,CODE)