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 Sun Feb 26 03:56:10 2012 5 ;-------------------------------------------------------- 6 .module usb_cdc_acm 7 .optsdcc -mmcs51 --model-medium 8 9 ;-------------------------------------------------------- 10 ; Public variables in this module 11 ;-------------------------------------------------------- 12 .globl _usbStringDescriptors 13 .globl _usbStringDescriptorCount 14 .globl _usbConfigurationDescriptor 15 .globl _usbDeviceDescriptor 16 .globl _usbComLineCoding 17 .globl _usbComTxSend_PARM_2 18 .globl _usbComRxReceive_PARM_2 19 .globl _usbComLineCodingChangeHandler 20 .globl _usbComSerialState 21 .globl _usbComControlLineState 22 .globl _usbCallbackInitEndpoints 23 .globl _usbCallbackSetupHandler 24 .globl _usbCallbackClassDescriptorHandler 25 .globl _usbCallbackControlWriteHandler 26 .globl _usbComRxAvailable 27 .globl _usbComRxReceiveByte 28 .globl _usbComRxReceive 29 .globl _usbComService 30 .globl _usbComTxAvailable 31 .globl _usbComTxSend 32 .globl _usbComTxSendByte 33 .globl _usbComRxControlSignals 34 .globl _usbComTxControlSignals 35 .globl _usbComTxControlSignalEvents 36 ;-------------------------------------------------------- 37 ; special function registers 38 ;-------------------------------------------------------- 39 .area RSEG (ABS,DATA) 0000 40 .org 0x0000 0080 41 Fusb_cdc_acm$P0$0$0 == 0x0080 0080 42 _P0 = 0x0080 0081 43 Fusb_cdc_acm$SP$0$0 == 0x0081 0081 44 _SP = 0x0081 0082 45 Fusb_cdc_acm$DPL0$0$0 == 0x0082 0082 46 _DPL0 = 0x0082 0083 47 Fusb_cdc_acm$DPH0$0$0 == 0x0083 0083 48 _DPH0 = 0x0083 0084 49 Fusb_cdc_acm$DPL1$0$0 == 0x0084 0084 50 _DPL1 = 0x0084 0085 51 Fusb_cdc_acm$DPH1$0$0 == 0x0085 0085 52 _DPH1 = 0x0085 0086 53 Fusb_cdc_acm$U0CSR$0$0 == 0x0086 0086 54 _U0CSR = 0x0086 0087 55 Fusb_cdc_acm$PCON$0$0 == 0x0087 0087 56 _PCON = 0x0087 0088 57 Fusb_cdc_acm$TCON$0$0 == 0x0088 0088 58 _TCON = 0x0088 0089 59 Fusb_cdc_acm$P0IFG$0$0 == 0x0089 0089 60 _P0IFG = 0x0089 008A 61 Fusb_cdc_acm$P1IFG$0$0 == 0x008a 008A 62 _P1IFG = 0x008a 008B 63 Fusb_cdc_acm$P2IFG$0$0 == 0x008b 008B 64 _P2IFG = 0x008b 008C 65 Fusb_cdc_acm$PICTL$0$0 == 0x008c 008C 66 _PICTL = 0x008c 008D 67 Fusb_cdc_acm$P1IEN$0$0 == 0x008d 008D 68 _P1IEN = 0x008d 008F 69 Fusb_cdc_acm$P0INP$0$0 == 0x008f 008F 70 _P0INP = 0x008f 0090 71 Fusb_cdc_acm$P1$0$0 == 0x0090 0090 72 _P1 = 0x0090 0091 73 Fusb_cdc_acm$RFIM$0$0 == 0x0091 0091 74 _RFIM = 0x0091 0092 75 Fusb_cdc_acm$DPS$0$0 == 0x0092 0092 76 _DPS = 0x0092 0093 77 Fusb_cdc_acm$MPAGE$0$0 == 0x0093 0093 78 _MPAGE = 0x0093 0095 79 Fusb_cdc_acm$ENDIAN$0$0 == 0x0095 0095 80 _ENDIAN = 0x0095 0098 81 Fusb_cdc_acm$S0CON$0$0 == 0x0098 0098 82 _S0CON = 0x0098 009A 83 Fusb_cdc_acm$IEN2$0$0 == 0x009a 009A 84 _IEN2 = 0x009a 009B 85 Fusb_cdc_acm$S1CON$0$0 == 0x009b 009B 86 _S1CON = 0x009b 009C 87 Fusb_cdc_acm$T2CT$0$0 == 0x009c 009C 88 _T2CT = 0x009c 009D 89 Fusb_cdc_acm$T2PR$0$0 == 0x009d 009D 90 _T2PR = 0x009d 009E 91 Fusb_cdc_acm$T2CTL$0$0 == 0x009e 009E 92 _T2CTL = 0x009e 00A0 93 Fusb_cdc_acm$P2$0$0 == 0x00a0 00A0 94 _P2 = 0x00a0 00A1 95 Fusb_cdc_acm$WORIRQ$0$0 == 0x00a1 00A1 96 _WORIRQ = 0x00a1 00A2 97 Fusb_cdc_acm$WORCTRL$0$0 == 0x00a2 00A2 98 _WORCTRL = 0x00a2 00A3 99 Fusb_cdc_acm$WOREVT0$0$0 == 0x00a3 00A3 100 _WOREVT0 = 0x00a3 00A4 101 Fusb_cdc_acm$WOREVT1$0$0 == 0x00a4 00A4 102 _WOREVT1 = 0x00a4 00A5 103 Fusb_cdc_acm$WORTIME0$0$0 == 0x00a5 00A5 104 _WORTIME0 = 0x00a5 00A6 105 Fusb_cdc_acm$WORTIME1$0$0 == 0x00a6 00A6 106 _WORTIME1 = 0x00a6 00A8 107 Fusb_cdc_acm$IEN0$0$0 == 0x00a8 00A8 108 _IEN0 = 0x00a8 00A9 109 Fusb_cdc_acm$IP0$0$0 == 0x00a9 00A9 110 _IP0 = 0x00a9 00AB 111 Fusb_cdc_acm$FWT$0$0 == 0x00ab 00AB 112 _FWT = 0x00ab 00AC 113 Fusb_cdc_acm$FADDRL$0$0 == 0x00ac 00AC 114 _FADDRL = 0x00ac 00AD 115 Fusb_cdc_acm$FADDRH$0$0 == 0x00ad 00AD 116 _FADDRH = 0x00ad 00AE 117 Fusb_cdc_acm$FCTL$0$0 == 0x00ae 00AE 118 _FCTL = 0x00ae 00AF 119 Fusb_cdc_acm$FWDATA$0$0 == 0x00af 00AF 120 _FWDATA = 0x00af 00B1 121 Fusb_cdc_acm$ENCDI$0$0 == 0x00b1 00B1 122 _ENCDI = 0x00b1 00B2 123 Fusb_cdc_acm$ENCDO$0$0 == 0x00b2 00B2 124 _ENCDO = 0x00b2 00B3 125 Fusb_cdc_acm$ENCCS$0$0 == 0x00b3 00B3 126 _ENCCS = 0x00b3 00B4 127 Fusb_cdc_acm$ADCCON1$0$0 == 0x00b4 00B4 128 _ADCCON1 = 0x00b4 00B5 129 Fusb_cdc_acm$ADCCON2$0$0 == 0x00b5 00B5 130 _ADCCON2 = 0x00b5 00B6 131 Fusb_cdc_acm$ADCCON3$0$0 == 0x00b6 00B6 132 _ADCCON3 = 0x00b6 00B8 133 Fusb_cdc_acm$IEN1$0$0 == 0x00b8 00B8 134 _IEN1 = 0x00b8 00B9 135 Fusb_cdc_acm$IP1$0$0 == 0x00b9 00B9 136 _IP1 = 0x00b9 00BA 137 Fusb_cdc_acm$ADCL$0$0 == 0x00ba 00BA 138 _ADCL = 0x00ba 00BB 139 Fusb_cdc_acm$ADCH$0$0 == 0x00bb 00BB 140 _ADCH = 0x00bb 00BC 141 Fusb_cdc_acm$RNDL$0$0 == 0x00bc 00BC 142 _RNDL = 0x00bc 00BD 143 Fusb_cdc_acm$RNDH$0$0 == 0x00bd 00BD 144 _RNDH = 0x00bd 00BE 145 Fusb_cdc_acm$SLEEP$0$0 == 0x00be 00BE 146 _SLEEP = 0x00be 00C0 147 Fusb_cdc_acm$IRCON$0$0 == 0x00c0 00C0 148 _IRCON = 0x00c0 00C1 149 Fusb_cdc_acm$U0DBUF$0$0 == 0x00c1 00C1 150 _U0DBUF = 0x00c1 00C2 151 Fusb_cdc_acm$U0BAUD$0$0 == 0x00c2 00C2 152 _U0BAUD = 0x00c2 00C4 153 Fusb_cdc_acm$U0UCR$0$0 == 0x00c4 00C4 154 _U0UCR = 0x00c4 00C5 155 Fusb_cdc_acm$U0GCR$0$0 == 0x00c5 00C5 156 _U0GCR = 0x00c5 00C6 157 Fusb_cdc_acm$CLKCON$0$0 == 0x00c6 00C6 158 _CLKCON = 0x00c6 00C7 159 Fusb_cdc_acm$MEMCTR$0$0 == 0x00c7 00C7 160 _MEMCTR = 0x00c7 00C9 161 Fusb_cdc_acm$WDCTL$0$0 == 0x00c9 00C9 162 _WDCTL = 0x00c9 00CA 163 Fusb_cdc_acm$T3CNT$0$0 == 0x00ca 00CA 164 _T3CNT = 0x00ca 00CB 165 Fusb_cdc_acm$T3CTL$0$0 == 0x00cb 00CB 166 _T3CTL = 0x00cb 00CC 167 Fusb_cdc_acm$T3CCTL0$0$0 == 0x00cc 00CC 168 _T3CCTL0 = 0x00cc 00CD 169 Fusb_cdc_acm$T3CC0$0$0 == 0x00cd 00CD 170 _T3CC0 = 0x00cd 00CE 171 Fusb_cdc_acm$T3CCTL1$0$0 == 0x00ce 00CE 172 _T3CCTL1 = 0x00ce 00CF 173 Fusb_cdc_acm$T3CC1$0$0 == 0x00cf 00CF 174 _T3CC1 = 0x00cf 00D0 175 Fusb_cdc_acm$PSW$0$0 == 0x00d0 00D0 176 _PSW = 0x00d0 00D1 177 Fusb_cdc_acm$DMAIRQ$0$0 == 0x00d1 00D1 178 _DMAIRQ = 0x00d1 00D2 179 Fusb_cdc_acm$DMA1CFGL$0$0 == 0x00d2 00D2 180 _DMA1CFGL = 0x00d2 00D3 181 Fusb_cdc_acm$DMA1CFGH$0$0 == 0x00d3 00D3 182 _DMA1CFGH = 0x00d3 00D4 183 Fusb_cdc_acm$DMA0CFGL$0$0 == 0x00d4 00D4 184 _DMA0CFGL = 0x00d4 00D5 185 Fusb_cdc_acm$DMA0CFGH$0$0 == 0x00d5 00D5 186 _DMA0CFGH = 0x00d5 00D6 187 Fusb_cdc_acm$DMAARM$0$0 == 0x00d6 00D6 188 _DMAARM = 0x00d6 00D7 189 Fusb_cdc_acm$DMAREQ$0$0 == 0x00d7 00D7 190 _DMAREQ = 0x00d7 00D8 191 Fusb_cdc_acm$TIMIF$0$0 == 0x00d8 00D8 192 _TIMIF = 0x00d8 00D9 193 Fusb_cdc_acm$RFD$0$0 == 0x00d9 00D9 194 _RFD = 0x00d9 00DA 195 Fusb_cdc_acm$T1CC0L$0$0 == 0x00da 00DA 196 _T1CC0L = 0x00da 00DB 197 Fusb_cdc_acm$T1CC0H$0$0 == 0x00db 00DB 198 _T1CC0H = 0x00db 00DC 199 Fusb_cdc_acm$T1CC1L$0$0 == 0x00dc 00DC 200 _T1CC1L = 0x00dc 00DD 201 Fusb_cdc_acm$T1CC1H$0$0 == 0x00dd 00DD 202 _T1CC1H = 0x00dd 00DE 203 Fusb_cdc_acm$T1CC2L$0$0 == 0x00de 00DE 204 _T1CC2L = 0x00de 00DF 205 Fusb_cdc_acm$T1CC2H$0$0 == 0x00df 00DF 206 _T1CC2H = 0x00df 00E0 207 Fusb_cdc_acm$ACC$0$0 == 0x00e0 00E0 208 _ACC = 0x00e0 00E1 209 Fusb_cdc_acm$RFST$0$0 == 0x00e1 00E1 210 _RFST = 0x00e1 00E2 211 Fusb_cdc_acm$T1CNTL$0$0 == 0x00e2 00E2 212 _T1CNTL = 0x00e2 00E3 213 Fusb_cdc_acm$T1CNTH$0$0 == 0x00e3 00E3 214 _T1CNTH = 0x00e3 00E4 215 Fusb_cdc_acm$T1CTL$0$0 == 0x00e4 00E4 216 _T1CTL = 0x00e4 00E5 217 Fusb_cdc_acm$T1CCTL0$0$0 == 0x00e5 00E5 218 _T1CCTL0 = 0x00e5 00E6 219 Fusb_cdc_acm$T1CCTL1$0$0 == 0x00e6 00E6 220 _T1CCTL1 = 0x00e6 00E7 221 Fusb_cdc_acm$T1CCTL2$0$0 == 0x00e7 00E7 222 _T1CCTL2 = 0x00e7 00E8 223 Fusb_cdc_acm$IRCON2$0$0 == 0x00e8 00E8 224 _IRCON2 = 0x00e8 00E9 225 Fusb_cdc_acm$RFIF$0$0 == 0x00e9 00E9 226 _RFIF = 0x00e9 00EA 227 Fusb_cdc_acm$T4CNT$0$0 == 0x00ea 00EA 228 _T4CNT = 0x00ea 00EB 229 Fusb_cdc_acm$T4CTL$0$0 == 0x00eb 00EB 230 _T4CTL = 0x00eb 00EC 231 Fusb_cdc_acm$T4CCTL0$0$0 == 0x00ec 00EC 232 _T4CCTL0 = 0x00ec 00ED 233 Fusb_cdc_acm$T4CC0$0$0 == 0x00ed 00ED 234 _T4CC0 = 0x00ed 00EE 235 Fusb_cdc_acm$T4CCTL1$0$0 == 0x00ee 00EE 236 _T4CCTL1 = 0x00ee 00EF 237 Fusb_cdc_acm$T4CC1$0$0 == 0x00ef 00EF 238 _T4CC1 = 0x00ef 00F0 239 Fusb_cdc_acm$B$0$0 == 0x00f0 00F0 240 _B = 0x00f0 00F1 241 Fusb_cdc_acm$PERCFG$0$0 == 0x00f1 00F1 242 _PERCFG = 0x00f1 00F2 243 Fusb_cdc_acm$ADCCFG$0$0 == 0x00f2 00F2 244 _ADCCFG = 0x00f2 00F3 245 Fusb_cdc_acm$P0SEL$0$0 == 0x00f3 00F3 246 _P0SEL = 0x00f3 00F4 247 Fusb_cdc_acm$P1SEL$0$0 == 0x00f4 00F4 248 _P1SEL = 0x00f4 00F5 249 Fusb_cdc_acm$P2SEL$0$0 == 0x00f5 00F5 250 _P2SEL = 0x00f5 00F6 251 Fusb_cdc_acm$P1INP$0$0 == 0x00f6 00F6 252 _P1INP = 0x00f6 00F7 253 Fusb_cdc_acm$P2INP$0$0 == 0x00f7 00F7 254 _P2INP = 0x00f7 00F8 255 Fusb_cdc_acm$U1CSR$0$0 == 0x00f8 00F8 256 _U1CSR = 0x00f8 00F9 257 Fusb_cdc_acm$U1DBUF$0$0 == 0x00f9 00F9 258 _U1DBUF = 0x00f9 00FA 259 Fusb_cdc_acm$U1BAUD$0$0 == 0x00fa 00FA 260 _U1BAUD = 0x00fa 00FB 261 Fusb_cdc_acm$U1UCR$0$0 == 0x00fb 00FB 262 _U1UCR = 0x00fb 00FC 263 Fusb_cdc_acm$U1GCR$0$0 == 0x00fc 00FC 264 _U1GCR = 0x00fc 00FD 265 Fusb_cdc_acm$P0DIR$0$0 == 0x00fd 00FD 266 _P0DIR = 0x00fd 00FE 267 Fusb_cdc_acm$P1DIR$0$0 == 0x00fe 00FE 268 _P1DIR = 0x00fe 00FF 269 Fusb_cdc_acm$P2DIR$0$0 == 0x00ff 00FF 270 _P2DIR = 0x00ff FFFFD5D4 271 Fusb_cdc_acm$DMA0CFG$0$0 == 0xffffd5d4 FFFFD5D4 272 _DMA0CFG = 0xffffd5d4 FFFFD3D2 273 Fusb_cdc_acm$DMA1CFG$0$0 == 0xffffd3d2 FFFFD3D2 274 _DMA1CFG = 0xffffd3d2 FFFFADAC 275 Fusb_cdc_acm$FADDR$0$0 == 0xffffadac FFFFADAC 276 _FADDR = 0xffffadac FFFFBBBA 277 Fusb_cdc_acm$ADC$0$0 == 0xffffbbba FFFFBBBA 278 _ADC = 0xffffbbba FFFFDBDA 279 Fusb_cdc_acm$T1CC0$0$0 == 0xffffdbda FFFFDBDA 280 _T1CC0 = 0xffffdbda FFFFDDDC 281 Fusb_cdc_acm$T1CC1$0$0 == 0xffffdddc FFFFDDDC 282 _T1CC1 = 0xffffdddc FFFFDFDE 283 Fusb_cdc_acm$T1CC2$0$0 == 0xffffdfde FFFFDFDE 284 _T1CC2 = 0xffffdfde 285 ;-------------------------------------------------------- 286 ; special function bits 287 ;-------------------------------------------------------- 288 .area RSEG (ABS,DATA) 0000 289 .org 0x0000 0080 290 Fusb_cdc_acm$P0_0$0$0 == 0x0080 0080 291 _P0_0 = 0x0080 0081 292 Fusb_cdc_acm$P0_1$0$0 == 0x0081 0081 293 _P0_1 = 0x0081 0082 294 Fusb_cdc_acm$P0_2$0$0 == 0x0082 0082 295 _P0_2 = 0x0082 0083 296 Fusb_cdc_acm$P0_3$0$0 == 0x0083 0083 297 _P0_3 = 0x0083 0084 298 Fusb_cdc_acm$P0_4$0$0 == 0x0084 0084 299 _P0_4 = 0x0084 0085 300 Fusb_cdc_acm$P0_5$0$0 == 0x0085 0085 301 _P0_5 = 0x0085 0086 302 Fusb_cdc_acm$P0_6$0$0 == 0x0086 0086 303 _P0_6 = 0x0086 0087 304 Fusb_cdc_acm$P0_7$0$0 == 0x0087 0087 305 _P0_7 = 0x0087 0088 306 Fusb_cdc_acm$_TCON_0$0$0 == 0x0088 0088 307 __TCON_0 = 0x0088 0089 308 Fusb_cdc_acm$RFTXRXIF$0$0 == 0x0089 0089 309 _RFTXRXIF = 0x0089 008A 310 Fusb_cdc_acm$_TCON_2$0$0 == 0x008a 008A 311 __TCON_2 = 0x008a 008B 312 Fusb_cdc_acm$URX0IF$0$0 == 0x008b 008B 313 _URX0IF = 0x008b 008C 314 Fusb_cdc_acm$_TCON_4$0$0 == 0x008c 008C 315 __TCON_4 = 0x008c 008D 316 Fusb_cdc_acm$ADCIF$0$0 == 0x008d 008D 317 _ADCIF = 0x008d 008E 318 Fusb_cdc_acm$_TCON_6$0$0 == 0x008e 008E 319 __TCON_6 = 0x008e 008F 320 Fusb_cdc_acm$URX1IF$0$0 == 0x008f 008F 321 _URX1IF = 0x008f 0090 322 Fusb_cdc_acm$P1_0$0$0 == 0x0090 0090 323 _P1_0 = 0x0090 0091 324 Fusb_cdc_acm$P1_1$0$0 == 0x0091 0091 325 _P1_1 = 0x0091 0092 326 Fusb_cdc_acm$P1_2$0$0 == 0x0092 0092 327 _P1_2 = 0x0092 0093 328 Fusb_cdc_acm$P1_3$0$0 == 0x0093 0093 329 _P1_3 = 0x0093 0094 330 Fusb_cdc_acm$P1_4$0$0 == 0x0094 0094 331 _P1_4 = 0x0094 0095 332 Fusb_cdc_acm$P1_5$0$0 == 0x0095 0095 333 _P1_5 = 0x0095 0096 334 Fusb_cdc_acm$P1_6$0$0 == 0x0096 0096 335 _P1_6 = 0x0096 0097 336 Fusb_cdc_acm$P1_7$0$0 == 0x0097 0097 337 _P1_7 = 0x0097 0098 338 Fusb_cdc_acm$ENCIF_0$0$0 == 0x0098 0098 339 _ENCIF_0 = 0x0098 0099 340 Fusb_cdc_acm$ENCIF_1$0$0 == 0x0099 0099 341 _ENCIF_1 = 0x0099 009A 342 Fusb_cdc_acm$_SOCON2$0$0 == 0x009a 009A 343 __SOCON2 = 0x009a 009B 344 Fusb_cdc_acm$_SOCON3$0$0 == 0x009b 009B 345 __SOCON3 = 0x009b 009C 346 Fusb_cdc_acm$_SOCON4$0$0 == 0x009c 009C 347 __SOCON4 = 0x009c 009D 348 Fusb_cdc_acm$_SOCON5$0$0 == 0x009d 009D 349 __SOCON5 = 0x009d 009E 350 Fusb_cdc_acm$_SOCON6$0$0 == 0x009e 009E 351 __SOCON6 = 0x009e 009F 352 Fusb_cdc_acm$_SOCON7$0$0 == 0x009f 009F 353 __SOCON7 = 0x009f 00A0 354 Fusb_cdc_acm$P2_0$0$0 == 0x00a0 00A0 355 _P2_0 = 0x00a0 00A1 356 Fusb_cdc_acm$P2_1$0$0 == 0x00a1 00A1 357 _P2_1 = 0x00a1 00A2 358 Fusb_cdc_acm$P2_2$0$0 == 0x00a2 00A2 359 _P2_2 = 0x00a2 00A3 360 Fusb_cdc_acm$P2_3$0$0 == 0x00a3 00A3 361 _P2_3 = 0x00a3 00A4 362 Fusb_cdc_acm$P2_4$0$0 == 0x00a4 00A4 363 _P2_4 = 0x00a4 00A5 364 Fusb_cdc_acm$P2_5$0$0 == 0x00a5 00A5 365 _P2_5 = 0x00a5 00A6 366 Fusb_cdc_acm$P2_6$0$0 == 0x00a6 00A6 367 _P2_6 = 0x00a6 00A7 368 Fusb_cdc_acm$P2_7$0$0 == 0x00a7 00A7 369 _P2_7 = 0x00a7 00A8 370 Fusb_cdc_acm$RFTXRXIE$0$0 == 0x00a8 00A8 371 _RFTXRXIE = 0x00a8 00A9 372 Fusb_cdc_acm$ADCIE$0$0 == 0x00a9 00A9 373 _ADCIE = 0x00a9 00AA 374 Fusb_cdc_acm$URX0IE$0$0 == 0x00aa 00AA 375 _URX0IE = 0x00aa 00AB 376 Fusb_cdc_acm$URX1IE$0$0 == 0x00ab 00AB 377 _URX1IE = 0x00ab 00AC 378 Fusb_cdc_acm$ENCIE$0$0 == 0x00ac 00AC 379 _ENCIE = 0x00ac 00AD 380 Fusb_cdc_acm$STIE$0$0 == 0x00ad 00AD 381 _STIE = 0x00ad 00AE 382 Fusb_cdc_acm$_IEN06$0$0 == 0x00ae 00AE 383 __IEN06 = 0x00ae 00AF 384 Fusb_cdc_acm$EA$0$0 == 0x00af 00AF 385 _EA = 0x00af 00B8 386 Fusb_cdc_acm$DMAIE$0$0 == 0x00b8 00B8 387 _DMAIE = 0x00b8 00B9 388 Fusb_cdc_acm$T1IE$0$0 == 0x00b9 00B9 389 _T1IE = 0x00b9 00BA 390 Fusb_cdc_acm$T2IE$0$0 == 0x00ba 00BA 391 _T2IE = 0x00ba 00BB 392 Fusb_cdc_acm$T3IE$0$0 == 0x00bb 00BB 393 _T3IE = 0x00bb 00BC 394 Fusb_cdc_acm$T4IE$0$0 == 0x00bc 00BC 395 _T4IE = 0x00bc 00BD 396 Fusb_cdc_acm$P0IE$0$0 == 0x00bd 00BD 397 _P0IE = 0x00bd 00BE 398 Fusb_cdc_acm$_IEN16$0$0 == 0x00be 00BE 399 __IEN16 = 0x00be 00BF 400 Fusb_cdc_acm$_IEN17$0$0 == 0x00bf 00BF 401 __IEN17 = 0x00bf 00C0 402 Fusb_cdc_acm$DMAIF$0$0 == 0x00c0 00C0 403 _DMAIF = 0x00c0 00C1 404 Fusb_cdc_acm$T1IF$0$0 == 0x00c1 00C1 405 _T1IF = 0x00c1 00C2 406 Fusb_cdc_acm$T2IF$0$0 == 0x00c2 00C2 407 _T2IF = 0x00c2 00C3 408 Fusb_cdc_acm$T3IF$0$0 == 0x00c3 00C3 409 _T3IF = 0x00c3 00C4 410 Fusb_cdc_acm$T4IF$0$0 == 0x00c4 00C4 411 _T4IF = 0x00c4 00C5 412 Fusb_cdc_acm$P0IF$0$0 == 0x00c5 00C5 413 _P0IF = 0x00c5 00C6 414 Fusb_cdc_acm$_IRCON6$0$0 == 0x00c6 00C6 415 __IRCON6 = 0x00c6 00C7 416 Fusb_cdc_acm$STIF$0$0 == 0x00c7 00C7 417 _STIF = 0x00c7 00D0 418 Fusb_cdc_acm$P$0$0 == 0x00d0 00D0 419 _P = 0x00d0 00D1 420 Fusb_cdc_acm$F1$0$0 == 0x00d1 00D1 421 _F1 = 0x00d1 00D2 422 Fusb_cdc_acm$OV$0$0 == 0x00d2 00D2 423 _OV = 0x00d2 00D3 424 Fusb_cdc_acm$RS0$0$0 == 0x00d3 00D3 425 _RS0 = 0x00d3 00D4 426 Fusb_cdc_acm$RS1$0$0 == 0x00d4 00D4 427 _RS1 = 0x00d4 00D5 428 Fusb_cdc_acm$F0$0$0 == 0x00d5 00D5 429 _F0 = 0x00d5 00D6 430 Fusb_cdc_acm$AC$0$0 == 0x00d6 00D6 431 _AC = 0x00d6 00D7 432 Fusb_cdc_acm$CY$0$0 == 0x00d7 00D7 433 _CY = 0x00d7 00D8 434 Fusb_cdc_acm$T3OVFIF$0$0 == 0x00d8 00D8 435 _T3OVFIF = 0x00d8 00D9 436 Fusb_cdc_acm$T3CH0IF$0$0 == 0x00d9 00D9 437 _T3CH0IF = 0x00d9 00DA 438 Fusb_cdc_acm$T3CH1IF$0$0 == 0x00da 00DA 439 _T3CH1IF = 0x00da 00DB 440 Fusb_cdc_acm$T4OVFIF$0$0 == 0x00db 00DB 441 _T4OVFIF = 0x00db 00DC 442 Fusb_cdc_acm$T4CH0IF$0$0 == 0x00dc 00DC 443 _T4CH0IF = 0x00dc 00DD 444 Fusb_cdc_acm$T4CH1IF$0$0 == 0x00dd 00DD 445 _T4CH1IF = 0x00dd 00DE 446 Fusb_cdc_acm$OVFIM$0$0 == 0x00de 00DE 447 _OVFIM = 0x00de 00DF 448 Fusb_cdc_acm$_TIMIF7$0$0 == 0x00df 00DF 449 __TIMIF7 = 0x00df 00E0 450 Fusb_cdc_acm$ACC_0$0$0 == 0x00e0 00E0 451 _ACC_0 = 0x00e0 00E1 452 Fusb_cdc_acm$ACC_1$0$0 == 0x00e1 00E1 453 _ACC_1 = 0x00e1 00E2 454 Fusb_cdc_acm$ACC_2$0$0 == 0x00e2 00E2 455 _ACC_2 = 0x00e2 00E3 456 Fusb_cdc_acm$ACC_3$0$0 == 0x00e3 00E3 457 _ACC_3 = 0x00e3 00E4 458 Fusb_cdc_acm$ACC_4$0$0 == 0x00e4 00E4 459 _ACC_4 = 0x00e4 00E5 460 Fusb_cdc_acm$ACC_5$0$0 == 0x00e5 00E5 461 _ACC_5 = 0x00e5 00E6 462 Fusb_cdc_acm$ACC_6$0$0 == 0x00e6 00E6 463 _ACC_6 = 0x00e6 00E7 464 Fusb_cdc_acm$ACC_7$0$0 == 0x00e7 00E7 465 _ACC_7 = 0x00e7 00E8 466 Fusb_cdc_acm$P2IF$0$0 == 0x00e8 00E8 467 _P2IF = 0x00e8 00E9 468 Fusb_cdc_acm$UTX0IF$0$0 == 0x00e9 00E9 469 _UTX0IF = 0x00e9 00EA 470 Fusb_cdc_acm$UTX1IF$0$0 == 0x00ea 00EA 471 _UTX1IF = 0x00ea 00EB 472 Fusb_cdc_acm$P1IF$0$0 == 0x00eb 00EB 473 _P1IF = 0x00eb 00EC 474 Fusb_cdc_acm$WDTIF$0$0 == 0x00ec 00EC 475 _WDTIF = 0x00ec 00ED 476 Fusb_cdc_acm$_IRCON25$0$0 == 0x00ed 00ED 477 __IRCON25 = 0x00ed 00EE 478 Fusb_cdc_acm$_IRCON26$0$0 == 0x00ee 00EE 479 __IRCON26 = 0x00ee 00EF 480 Fusb_cdc_acm$_IRCON27$0$0 == 0x00ef 00EF 481 __IRCON27 = 0x00ef 00F0 482 Fusb_cdc_acm$B_0$0$0 == 0x00f0 00F0 483 _B_0 = 0x00f0 00F1 484 Fusb_cdc_acm$B_1$0$0 == 0x00f1 00F1 485 _B_1 = 0x00f1 00F2 486 Fusb_cdc_acm$B_2$0$0 == 0x00f2 00F2 487 _B_2 = 0x00f2 00F3 488 Fusb_cdc_acm$B_3$0$0 == 0x00f3 00F3 489 _B_3 = 0x00f3 00F4 490 Fusb_cdc_acm$B_4$0$0 == 0x00f4 00F4 491 _B_4 = 0x00f4 00F5 492 Fusb_cdc_acm$B_5$0$0 == 0x00f5 00F5 493 _B_5 = 0x00f5 00F6 494 Fusb_cdc_acm$B_6$0$0 == 0x00f6 00F6 495 _B_6 = 0x00f6 00F7 496 Fusb_cdc_acm$B_7$0$0 == 0x00f7 00F7 497 _B_7 = 0x00f7 00F8 498 Fusb_cdc_acm$U1ACTIVE$0$0 == 0x00f8 00F8 499 _U1ACTIVE = 0x00f8 00F9 500 Fusb_cdc_acm$U1TX_BYTE$0$0 == 0x00f9 00F9 501 _U1TX_BYTE = 0x00f9 00FA 502 Fusb_cdc_acm$U1RX_BYTE$0$0 == 0x00fa 00FA 503 _U1RX_BYTE = 0x00fa 00FB 504 Fusb_cdc_acm$U1ERR$0$0 == 0x00fb 00FB 505 _U1ERR = 0x00fb 00FC 506 Fusb_cdc_acm$U1FE$0$0 == 0x00fc 00FC 507 _U1FE = 0x00fc 00FD 508 Fusb_cdc_acm$U1SLAVE$0$0 == 0x00fd 00FD 509 _U1SLAVE = 0x00fd 00FE 510 Fusb_cdc_acm$U1RE$0$0 == 0x00fe 00FE 511 _U1RE = 0x00fe 00FF 512 Fusb_cdc_acm$U1MODE$0$0 == 0x00ff 00FF 513 _U1MODE = 0x00ff 514 ;-------------------------------------------------------- 515 ; overlayable register banks 516 ;-------------------------------------------------------- 517 .area REG_BANK_0 (REL,OVR,DATA) 0000 518 .ds 8 519 ;-------------------------------------------------------- 520 ; internal ram data 521 ;-------------------------------------------------------- 522 .area DSEG (DATA) 0000 523 Fusb_cdc_acm$inFifoBytesLoaded$0$0==. 0000 524 _inFifoBytesLoaded: 0000 525 .ds 1 526 ;-------------------------------------------------------- 527 ; overlayable items in internal ram 528 ;-------------------------------------------------------- 529 .area OSEG (OVR,DATA) 530 ;-------------------------------------------------------- 531 ; indirectly addressable internal ram data 532 ;-------------------------------------------------------- 533 .area ISEG (DATA) 534 ;-------------------------------------------------------- 535 ; absolute internal ram data 536 ;-------------------------------------------------------- 537 .area IABS (ABS,DATA) 538 .area IABS (ABS,DATA) 539 ;-------------------------------------------------------- 540 ; bit data 541 ;-------------------------------------------------------- 542 .area BSEG (BIT) 0000 543 Fusb_cdc_acm$sendEmptyPacketSoon$0$0==. 0000 544 _sendEmptyPacketSoon: 0000 545 .ds 1 0001 546 Fusb_cdc_acm$startBootloaderSoon$0$0==. 0001 547 _startBootloaderSoon: 0001 548 .ds 1 549 ;-------------------------------------------------------- 550 ; paged external ram data 551 ;-------------------------------------------------------- 552 .area PSEG (PAG,XDATA) 0000 553 G$usbComControlLineState$0$0==. 0000 554 _usbComControlLineState:: 0000 555 .ds 1 0001 556 G$usbComSerialState$0$0==. 0001 557 _usbComSerialState:: 0001 558 .ds 1 0002 559 Fusb_cdc_acm$lastReportedSerialState$0$0==. 0002 560 _lastReportedSerialState: 0002 561 .ds 1 0003 562 G$usbComLineCodingChangeHandler$0$0==. 0003 563 _usbComLineCodingChangeHandler:: 0003 564 .ds 2 0005 565 LusbComRxReceive$size$1$1==. 0005 566 _usbComRxReceive_PARM_2: 0005 567 .ds 1 0006 568 LusbComTxSend$size$1$1==. 0006 569 _usbComTxSend_PARM_2: 0006 570 .ds 1 571 ;-------------------------------------------------------- 572 ; external ram data 573 ;-------------------------------------------------------- 574 .area XSEG (XDATA) DF00 575 Fusb_cdc_acm$SYNC1$0$0 == 0xdf00 DF00 576 _SYNC1 = 0xdf00 DF01 577 Fusb_cdc_acm$SYNC0$0$0 == 0xdf01 DF01 578 _SYNC0 = 0xdf01 DF02 579 Fusb_cdc_acm$PKTLEN$0$0 == 0xdf02 DF02 580 _PKTLEN = 0xdf02 DF03 581 Fusb_cdc_acm$PKTCTRL1$0$0 == 0xdf03 DF03 582 _PKTCTRL1 = 0xdf03 DF04 583 Fusb_cdc_acm$PKTCTRL0$0$0 == 0xdf04 DF04 584 _PKTCTRL0 = 0xdf04 DF05 585 Fusb_cdc_acm$ADDR$0$0 == 0xdf05 DF05 586 _ADDR = 0xdf05 DF06 587 Fusb_cdc_acm$CHANNR$0$0 == 0xdf06 DF06 588 _CHANNR = 0xdf06 DF07 589 Fusb_cdc_acm$FSCTRL1$0$0 == 0xdf07 DF07 590 _FSCTRL1 = 0xdf07 DF08 591 Fusb_cdc_acm$FSCTRL0$0$0 == 0xdf08 DF08 592 _FSCTRL0 = 0xdf08 DF09 593 Fusb_cdc_acm$FREQ2$0$0 == 0xdf09 DF09 594 _FREQ2 = 0xdf09 DF0A 595 Fusb_cdc_acm$FREQ1$0$0 == 0xdf0a DF0A 596 _FREQ1 = 0xdf0a DF0B 597 Fusb_cdc_acm$FREQ0$0$0 == 0xdf0b DF0B 598 _FREQ0 = 0xdf0b DF0C 599 Fusb_cdc_acm$MDMCFG4$0$0 == 0xdf0c DF0C 600 _MDMCFG4 = 0xdf0c DF0D 601 Fusb_cdc_acm$MDMCFG3$0$0 == 0xdf0d DF0D 602 _MDMCFG3 = 0xdf0d DF0E 603 Fusb_cdc_acm$MDMCFG2$0$0 == 0xdf0e DF0E 604 _MDMCFG2 = 0xdf0e DF0F 605 Fusb_cdc_acm$MDMCFG1$0$0 == 0xdf0f DF0F 606 _MDMCFG1 = 0xdf0f DF10 607 Fusb_cdc_acm$MDMCFG0$0$0 == 0xdf10 DF10 608 _MDMCFG0 = 0xdf10 DF11 609 Fusb_cdc_acm$DEVIATN$0$0 == 0xdf11 DF11 610 _DEVIATN = 0xdf11 DF12 611 Fusb_cdc_acm$MCSM2$0$0 == 0xdf12 DF12 612 _MCSM2 = 0xdf12 DF13 613 Fusb_cdc_acm$MCSM1$0$0 == 0xdf13 DF13 614 _MCSM1 = 0xdf13 DF14 615 Fusb_cdc_acm$MCSM0$0$0 == 0xdf14 DF14 616 _MCSM0 = 0xdf14 DF15 617 Fusb_cdc_acm$FOCCFG$0$0 == 0xdf15 DF15 618 _FOCCFG = 0xdf15 DF16 619 Fusb_cdc_acm$BSCFG$0$0 == 0xdf16 DF16 620 _BSCFG = 0xdf16 DF17 621 Fusb_cdc_acm$AGCCTRL2$0$0 == 0xdf17 DF17 622 _AGCCTRL2 = 0xdf17 DF18 623 Fusb_cdc_acm$AGCCTRL1$0$0 == 0xdf18 DF18 624 _AGCCTRL1 = 0xdf18 DF19 625 Fusb_cdc_acm$AGCCTRL0$0$0 == 0xdf19 DF19 626 _AGCCTRL0 = 0xdf19 DF1A 627 Fusb_cdc_acm$FREND1$0$0 == 0xdf1a DF1A 628 _FREND1 = 0xdf1a DF1B 629 Fusb_cdc_acm$FREND0$0$0 == 0xdf1b DF1B 630 _FREND0 = 0xdf1b DF1C 631 Fusb_cdc_acm$FSCAL3$0$0 == 0xdf1c DF1C 632 _FSCAL3 = 0xdf1c DF1D 633 Fusb_cdc_acm$FSCAL2$0$0 == 0xdf1d DF1D 634 _FSCAL2 = 0xdf1d DF1E 635 Fusb_cdc_acm$FSCAL1$0$0 == 0xdf1e DF1E 636 _FSCAL1 = 0xdf1e DF1F 637 Fusb_cdc_acm$FSCAL0$0$0 == 0xdf1f DF1F 638 _FSCAL0 = 0xdf1f DF23 639 Fusb_cdc_acm$TEST2$0$0 == 0xdf23 DF23 640 _TEST2 = 0xdf23 DF24 641 Fusb_cdc_acm$TEST1$0$0 == 0xdf24 DF24 642 _TEST1 = 0xdf24 DF25 643 Fusb_cdc_acm$TEST0$0$0 == 0xdf25 DF25 644 _TEST0 = 0xdf25 DF2E 645 Fusb_cdc_acm$PA_TABLE0$0$0 == 0xdf2e DF2E 646 _PA_TABLE0 = 0xdf2e DF2F 647 Fusb_cdc_acm$IOCFG2$0$0 == 0xdf2f DF2F 648 _IOCFG2 = 0xdf2f DF30 649 Fusb_cdc_acm$IOCFG1$0$0 == 0xdf30 DF30 650 _IOCFG1 = 0xdf30 DF31 651 Fusb_cdc_acm$IOCFG0$0$0 == 0xdf31 DF31 652 _IOCFG0 = 0xdf31 DF36 653 Fusb_cdc_acm$PARTNUM$0$0 == 0xdf36 DF36 654 _PARTNUM = 0xdf36 DF37 655 Fusb_cdc_acm$VERSION$0$0 == 0xdf37 DF37 656 _VERSION = 0xdf37 DF38 657 Fusb_cdc_acm$FREQEST$0$0 == 0xdf38 DF38 658 _FREQEST = 0xdf38 DF39 659 Fusb_cdc_acm$LQI$0$0 == 0xdf39 DF39 660 _LQI = 0xdf39 DF3A 661 Fusb_cdc_acm$RSSI$0$0 == 0xdf3a DF3A 662 _RSSI = 0xdf3a DF3B 663 Fusb_cdc_acm$MARCSTATE$0$0 == 0xdf3b DF3B 664 _MARCSTATE = 0xdf3b DF3C 665 Fusb_cdc_acm$PKTSTATUS$0$0 == 0xdf3c DF3C 666 _PKTSTATUS = 0xdf3c DF3D 667 Fusb_cdc_acm$VCO_VC_DAC$0$0 == 0xdf3d DF3D 668 _VCO_VC_DAC = 0xdf3d DF40 669 Fusb_cdc_acm$I2SCFG0$0$0 == 0xdf40 DF40 670 _I2SCFG0 = 0xdf40 DF41 671 Fusb_cdc_acm$I2SCFG1$0$0 == 0xdf41 DF41 672 _I2SCFG1 = 0xdf41 DF42 673 Fusb_cdc_acm$I2SDATL$0$0 == 0xdf42 DF42 674 _I2SDATL = 0xdf42 DF43 675 Fusb_cdc_acm$I2SDATH$0$0 == 0xdf43 DF43 676 _I2SDATH = 0xdf43 DF44 677 Fusb_cdc_acm$I2SWCNT$0$0 == 0xdf44 DF44 678 _I2SWCNT = 0xdf44 DF45 679 Fusb_cdc_acm$I2SSTAT$0$0 == 0xdf45 DF45 680 _I2SSTAT = 0xdf45 DF46 681 Fusb_cdc_acm$I2SCLKF0$0$0 == 0xdf46 DF46 682 _I2SCLKF0 = 0xdf46 DF47 683 Fusb_cdc_acm$I2SCLKF1$0$0 == 0xdf47 DF47 684 _I2SCLKF1 = 0xdf47 DF48 685 Fusb_cdc_acm$I2SCLKF2$0$0 == 0xdf48 DF48 686 _I2SCLKF2 = 0xdf48 DE00 687 Fusb_cdc_acm$USBADDR$0$0 == 0xde00 DE00 688 _USBADDR = 0xde00 DE01 689 Fusb_cdc_acm$USBPOW$0$0 == 0xde01 DE01 690 _USBPOW = 0xde01 DE02 691 Fusb_cdc_acm$USBIIF$0$0 == 0xde02 DE02 692 _USBIIF = 0xde02 DE04 693 Fusb_cdc_acm$USBOIF$0$0 == 0xde04 DE04 694 _USBOIF = 0xde04 DE06 695 Fusb_cdc_acm$USBCIF$0$0 == 0xde06 DE06 696 _USBCIF = 0xde06 DE07 697 Fusb_cdc_acm$USBIIE$0$0 == 0xde07 DE07 698 _USBIIE = 0xde07 DE09 699 Fusb_cdc_acm$USBOIE$0$0 == 0xde09 DE09 700 _USBOIE = 0xde09 DE0B 701 Fusb_cdc_acm$USBCIE$0$0 == 0xde0b DE0B 702 _USBCIE = 0xde0b DE0C 703 Fusb_cdc_acm$USBFRML$0$0 == 0xde0c DE0C 704 _USBFRML = 0xde0c DE0D 705 Fusb_cdc_acm$USBFRMH$0$0 == 0xde0d DE0D 706 _USBFRMH = 0xde0d DE0E 707 Fusb_cdc_acm$USBINDEX$0$0 == 0xde0e DE0E 708 _USBINDEX = 0xde0e DE10 709 Fusb_cdc_acm$USBMAXI$0$0 == 0xde10 DE10 710 _USBMAXI = 0xde10 DE11 711 Fusb_cdc_acm$USBCSIL$0$0 == 0xde11 DE11 712 _USBCSIL = 0xde11 DE12 713 Fusb_cdc_acm$USBCSIH$0$0 == 0xde12 DE12 714 _USBCSIH = 0xde12 DE13 715 Fusb_cdc_acm$USBMAXO$0$0 == 0xde13 DE13 716 _USBMAXO = 0xde13 DE14 717 Fusb_cdc_acm$USBCSOL$0$0 == 0xde14 DE14 718 _USBCSOL = 0xde14 DE15 719 Fusb_cdc_acm$USBCSOH$0$0 == 0xde15 DE15 720 _USBCSOH = 0xde15 DE16 721 Fusb_cdc_acm$USBCNTL$0$0 == 0xde16 DE16 722 _USBCNTL = 0xde16 DE17 723 Fusb_cdc_acm$USBCNTH$0$0 == 0xde17 DE17 724 _USBCNTH = 0xde17 DE20 725 Fusb_cdc_acm$USBF0$0$0 == 0xde20 DE20 726 _USBF0 = 0xde20 DE22 727 Fusb_cdc_acm$USBF1$0$0 == 0xde22 DE22 728 _USBF1 = 0xde22 DE24 729 Fusb_cdc_acm$USBF2$0$0 == 0xde24 DE24 730 _USBF2 = 0xde24 DE26 731 Fusb_cdc_acm$USBF3$0$0 == 0xde26 DE26 732 _USBF3 = 0xde26 DE28 733 Fusb_cdc_acm$USBF4$0$0 == 0xde28 DE28 734 _USBF4 = 0xde28 DE2A 735 Fusb_cdc_acm$USBF5$0$0 == 0xde2a DE2A 736 _USBF5 = 0xde2a 0000 737 Fusb_cdc_acm$startBootloaderRequestTime$0$0==. 0000 738 _startBootloaderRequestTime: 0000 739 .ds 1 740 ;-------------------------------------------------------- 741 ; absolute external ram data 742 ;-------------------------------------------------------- 743 .area XABS (ABS,XDATA) 744 ;-------------------------------------------------------- 745 ; external initialized ram data 746 ;-------------------------------------------------------- 747 .area XISEG (XDATA) 0000 748 G$usbComLineCoding$0$0==. 0000 749 _usbComLineCoding:: 0000 750 .ds 7 751 .area HOME (CODE) 752 .area GSINIT0 (CODE) 753 .area GSINIT1 (CODE) 754 .area GSINIT2 (CODE) 755 .area GSINIT3 (CODE) 756 .area GSINIT4 (CODE) 757 .area GSINIT5 (CODE) 758 .area GSINIT (CODE) 759 .area GSFINAL (CODE) 760 .area CSEG (CODE) 761 ;-------------------------------------------------------- 762 ; global & static initialisations 763 ;-------------------------------------------------------- 764 .area HOME (CODE) 765 .area GSINIT (CODE) 766 .area GSFINAL (CODE) 767 .area GSINIT (CODE) 0000 768 G$usbComTxControlSignalEvents$0$0 ==. 0000 769 C$usb_cdc_acm.c$97$1$1 ==. 770 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:97: static uint8 DATA inFifoBytesLoaded = 0; 0000 75*00 00 771 mov _inFifoBytesLoaded,#0x00 0003 772 G$usbComTxControlSignalEvents$0$0 ==. 0003 773 C$usb_cdc_acm.c$92$1$1 ==. 774 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:92: static BIT sendEmptyPacketSoon = 0; 0003 C2*00 775 clr _sendEmptyPacketSoon 0005 776 G$usbComTxControlSignalEvents$0$0 ==. 0005 777 C$usb_cdc_acm.c$100$1$1 ==. 778 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:100: static BIT startBootloaderSoon = 0; 0005 C2*01 779 clr _startBootloaderSoon 0007 780 G$usbComTxControlSignalEvents$0$0 ==. 0007 781 C$usb_cdc_acm.c$71$1$1 ==. 782 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:71: uint8 usbComControlLineState = 0; 0007 78r00 783 mov r0,#_usbComControlLineState 0009 E4 784 clr a 000A F2 785 movx @r0,a 000B 786 G$usbComTxControlSignalEvents$0$0 ==. 000B 787 C$usb_cdc_acm.c$73$1$1 ==. 788 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:73: uint8 usbComSerialState = 0; 000B 78r01 789 mov r0,#_usbComSerialState 000D E4 790 clr a 000E F2 791 movx @r0,a 000F 792 G$usbComTxControlSignalEvents$0$0 ==. 000F 793 C$usb_cdc_acm.c$77$1$1 ==. 794 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:77: static uint8 lastReportedSerialState = 0xFF; 000F 78r02 795 mov r0,#_lastReportedSerialState 0011 74 FF 796 mov a,#0xFF 0013 F2 797 movx @r0,a 0014 798 G$usbComTxControlSignalEvents$0$0 ==. 0014 799 C$usb_cdc_acm.c$87$1$1 ==. 800 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:87: HandlerFunction * usbComLineCodingChangeHandler = doNothing; 0014 7Ar85 801 mov r2,#_doNothing 0016 7Bs00 802 mov r3,#(_doNothing >> 8) 0018 78r03 803 mov r0,#_usbComLineCodingChangeHandler 001A EA 804 mov a,r2 001B F2 805 movx @r0,a 001C 08 806 inc r0 001D EB 807 mov a,r3 001E F2 808 movx @r0,a 809 ;-------------------------------------------------------- 810 ; Home 811 ;-------------------------------------------------------- 812 .area HOME (CODE) 813 .area HOME (CODE) 814 ;-------------------------------------------------------- 815 ; code 816 ;-------------------------------------------------------- 817 .area CSEG (CODE) 818 ;------------------------------------------------------------ 819 ;Allocation info for local variables in function 'usbCallbackInitEndpoints' 820 ;------------------------------------------------------------ 821 ;------------------------------------------------------------ 0000 822 G$usbCallbackInitEndpoints$0$0 ==. 0000 823 C$usb_cdc_acm.c$234$0$0 ==. 824 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:234: void usbCallbackInitEndpoints() 825 ; ----------------------------------------- 826 ; function usbCallbackInitEndpoints 827 ; ----------------------------------------- 0000 828 _usbCallbackInitEndpoints: 0002 829 ar2 = 0x02 0003 830 ar3 = 0x03 0004 831 ar4 = 0x04 0005 832 ar5 = 0x05 0006 833 ar6 = 0x06 0007 834 ar7 = 0x07 0000 835 ar0 = 0x00 0001 836 ar1 = 0x01 0000 837 C$usb_cdc_acm.c$236$1$1 ==. 838 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:236: usbInitEndpointIn(CDC_NOTIFICATION_ENDPOINT, 10); 0000 78r00 839 mov r0,#_usbInitEndpointIn_PARM_2 0002 74 0A 840 mov a,#0x0A 0004 F2 841 movx @r0,a 0005 75 82 01 842 mov dpl,#0x01 0008 12s00r00 843 lcall _usbInitEndpointIn 000B 844 C$usb_cdc_acm.c$237$1$1 ==. 845 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:237: usbInitEndpointOut(CDC_DATA_ENDPOINT, CDC_OUT_PACKET_SIZE); 000B 78r00 846 mov r0,#_usbInitEndpointOut_PARM_2 000D 74 40 847 mov a,#0x40 000F F2 848 movx @r0,a 0010 75 82 04 849 mov dpl,#0x04 0013 12s00r00 850 lcall _usbInitEndpointOut 0016 851 C$usb_cdc_acm.c$238$1$1 ==. 852 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:238: usbInitEndpointIn(CDC_DATA_ENDPOINT, CDC_IN_PACKET_SIZE); 0016 78r00 853 mov r0,#_usbInitEndpointIn_PARM_2 0018 74 40 854 mov a,#0x40 001A F2 855 movx @r0,a 001B 75 82 04 856 mov dpl,#0x04 001E 12s00r00 857 lcall _usbInitEndpointIn 0021 858 C$usb_cdc_acm.c$241$1$1 ==. 859 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:241: lastReportedSerialState = 0xFF; 0021 78r02 860 mov r0,#_lastReportedSerialState 0023 74 FF 861 mov a,#0xFF 0025 F2 862 movx @r0,a 0026 863 C$usb_cdc_acm.c$242$1$1 ==. 0026 864 XG$usbCallbackInitEndpoints$0$0 ==. 0026 22 865 ret 866 ;------------------------------------------------------------ 867 ;Allocation info for local variables in function 'usbCallbackSetupHandler' 868 ;------------------------------------------------------------ 869 ;------------------------------------------------------------ 0027 870 G$usbCallbackSetupHandler$0$0 ==. 0027 871 C$usb_cdc_acm.c$246$1$1 ==. 872 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:246: void usbCallbackSetupHandler() 873 ; ----------------------------------------- 874 ; function usbCallbackSetupHandler 875 ; ----------------------------------------- 0027 876 _usbCallbackSetupHandler: 0027 877 C$usb_cdc_acm.c$248$1$1 ==. 878 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:248: if ((usbSetupPacket.bmRequestType & 0x7F) != 0x21) // Require Type==Class and Recipient==Interface. 0027 90s00r00 879 mov dptr,#_usbSetupPacket 002A E0 880 movx a,@dptr 002B FA 881 mov r2,a 002C 53 02 7F 882 anl ar2,#0x7F 002F 883 C$usb_cdc_acm.c$249$1$1 ==. 884 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:249: return; 002F BA 21 51 885 cjne r2,#0x21,00110$ 0032 886 C$usb_cdc_acm.c$251$1$1 ==. 887 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:251: if (!(usbSetupPacket.wIndex == CDC_CONTROL_INTERFACE_NUMBER || usbSetupPacket.wIndex == CDC_DATA_INTERFACE_NUMBER)) 0032 90s00r04 888 mov dptr,#(_usbSetupPacket + 0x0004) 0035 E0 889 movx a,@dptr 0036 FA 890 mov r2,a 0037 A3 891 inc dptr 0038 E0 892 movx a,@dptr 0039 FB 893 mov r3,a 003A 4A 894 orl a,r2 003B 60 06 895 jz 00104$ 003D 896 C$usb_cdc_acm.c$252$1$1 ==. 897 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:252: return; 003D BA 01 43 898 cjne r2,#0x01,00110$ 0040 BB 00 40 899 cjne r3,#0x00,00110$ 0043 900 00104$: 0043 901 C$usb_cdc_acm.c$254$1$1 ==. 902 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:254: switch(usbSetupPacket.bRequest) 0043 90s00r01 903 mov dptr,#(_usbSetupPacket + 0x0001) 0046 E0 904 movx a,@dptr 0047 FA 905 mov r2,a 0048 BA 20 02 906 cjne r2,#0x20,00121$ 004B 80 0A 907 sjmp 00106$ 004D 908 00121$: 004D BA 21 02 909 cjne r2,#0x21,00122$ 0050 80 14 910 sjmp 00107$ 0052 911 00122$: 0052 912 C$usb_cdc_acm.c$256$2$2 ==. 913 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:256: case ACM_REQUEST_SET_LINE_CODING: // SetLineCoding (USBPSTN1.20 Section 6.3.10 SetLineCoding) 0052 BA 22 2E 914 cjne r2,#0x22,00110$ 0055 80 1E 915 sjmp 00108$ 0057 916 00106$: 0057 917 C$usb_cdc_acm.c$257$2$2 ==. 918 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:257: usbControlWrite(sizeof(usbComLineCoding), (uint8 XDATA *)&usbComLineCoding); 0057 78r00 919 mov r0,#_usbControlWrite_PARM_2 0059 74r00 920 mov a,#_usbComLineCoding 005B F2 921 movx @r0,a 005C 08 922 inc r0 005D 74s00 923 mov a,#(_usbComLineCoding >> 8) 005F F2 924 movx @r0,a 0060 90 00 07 925 mov dptr,#0x0007 0063 926 C$usb_cdc_acm.c$258$2$2 ==. 927 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:258: break; 0063 928 C$usb_cdc_acm.c$260$2$2 ==. 929 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:260: case ACM_REQUEST_GET_LINE_CODING: // GetLineCoding (USBPSTN1.20 Section 6.3.11 GetLineCoding) 0063 02s00r00 930 ljmp _usbControlWrite 0066 931 00107$: 0066 932 C$usb_cdc_acm.c$261$2$2 ==. 933 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:261: usbControlRead(sizeof(usbComLineCoding), (uint8 XDATA *)&usbComLineCoding); 0066 78r00 934 mov r0,#_usbControlRead_PARM_2 0068 74r00 935 mov a,#_usbComLineCoding 006A F2 936 movx @r0,a 006B 08 937 inc r0 006C 74s00 938 mov a,#(_usbComLineCoding >> 8) 006E F2 939 movx @r0,a 006F 90 00 07 940 mov dptr,#0x0007 0072 941 C$usb_cdc_acm.c$262$2$2 ==. 942 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:262: break; 0072 943 C$usb_cdc_acm.c$264$2$2 ==. 944 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:264: case ACM_REQUEST_SET_CONTROL_LINE_STATE: // SetControlLineState (USBPSTN1.20 Section 6.3.12 SetControlLineState) 0072 02s00r00 945 ljmp _usbControlRead 0075 946 00108$: 0075 947 C$usb_cdc_acm.c$265$2$2 ==. 948 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:265: usbComControlLineState = usbSetupPacket.wValue; 0075 90s00r02 949 mov dptr,#(_usbSetupPacket + 0x0002) 0078 E0 950 movx a,@dptr 0079 FA 951 mov r2,a 007A A3 952 inc dptr 007B E0 953 movx a,@dptr 007C 78r00 954 mov r0,#_usbComControlLineState 007E EA 955 mov a,r2 007F F2 956 movx @r0,a 0080 957 C$usb_cdc_acm.c$266$2$2 ==. 958 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:266: usbControlAcknowledge(); 0080 959 C$usb_cdc_acm.c$268$1$1 ==. 960 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:268: } 0080 961 C$usb_cdc_acm.c$269$1$1 ==. 0080 962 XG$usbCallbackSetupHandler$0$0 ==. 0080 02s00r00 963 ljmp _usbControlAcknowledge 0083 964 00110$: 0083 22 965 ret 966 ;------------------------------------------------------------ 967 ;Allocation info for local variables in function 'usbCallbackClassDescriptorHandler' 968 ;------------------------------------------------------------ 969 ;------------------------------------------------------------ 0084 970 G$usbCallbackClassDescriptorHandler$0$0 ==. 0084 971 C$usb_cdc_acm.c$271$1$1 ==. 972 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:271: void usbCallbackClassDescriptorHandler(void) 973 ; ----------------------------------------- 974 ; function usbCallbackClassDescriptorHandler 975 ; ----------------------------------------- 0084 976 _usbCallbackClassDescriptorHandler: 0084 977 C$usb_cdc_acm.c$274$1$1 ==. 978 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:274: } 0084 979 C$usb_cdc_acm.c$274$1$1 ==. 0084 980 XG$usbCallbackClassDescriptorHandler$0$0 ==. 0084 22 981 ret 982 ;------------------------------------------------------------ 983 ;Allocation info for local variables in function 'doNothing' 984 ;------------------------------------------------------------ 985 ;------------------------------------------------------------ 0085 986 Fusb_cdc_acm$doNothing$0$0 ==. 0085 987 C$usb_cdc_acm.c$276$1$1 ==. 988 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:276: static void doNothing(void) 989 ; ----------------------------------------- 990 ; function doNothing 991 ; ----------------------------------------- 0085 992 _doNothing: 0085 993 C$usb_cdc_acm.c$279$1$1 ==. 994 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:279: } 0085 995 C$usb_cdc_acm.c$279$1$1 ==. 0085 996 XFusb_cdc_acm$doNothing$0$0 ==. 0085 22 997 ret 998 ;------------------------------------------------------------ 999 ;Allocation info for local variables in function 'usbCallbackControlWriteHandler' 1000 ;------------------------------------------------------------ 1001 ;------------------------------------------------------------ 0086 1002 G$usbCallbackControlWriteHandler$0$0 ==. 0086 1003 C$usb_cdc_acm.c$281$1$1 ==. 1004 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:281: void usbCallbackControlWriteHandler() 1005 ; ----------------------------------------- 1006 ; function usbCallbackControlWriteHandler 1007 ; ----------------------------------------- 0086 1008 _usbCallbackControlWriteHandler: 0086 1009 C$usb_cdc_acm.c$283$1$1 ==. 1010 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:283: usbComLineCodingChangeHandler(); 0086 78r03 1011 mov r0,#_usbComLineCodingChangeHandler 0088 E2 1012 movx a,@r0 0089 F5 82 1013 mov dpl,a 008B 08 1014 inc r0 008C E2 1015 movx a,@r0 008D F5 83 1016 mov dph,a 008F 12s00r00 1017 lcall __sdcc_call_dptr 0092 1018 C$usb_cdc_acm.c$285$1$1 ==. 1019 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:285: if (usbComLineCoding.dwDTERate == 333 && !startBootloaderSoon) 0092 90s00r00 1020 mov dptr,#_usbComLineCoding 0095 E0 1021 movx a,@dptr 0096 FA 1022 mov r2,a 0097 A3 1023 inc dptr 0098 E0 1024 movx a,@dptr 0099 FB 1025 mov r3,a 009A A3 1026 inc dptr 009B E0 1027 movx a,@dptr 009C FC 1028 mov r4,a 009D A3 1029 inc dptr 009E E0 1030 movx a,@dptr 009F FD 1031 mov r5,a 00A0 BA 4D 1D 1032 cjne r2,#0x4D,00104$ 00A3 BB 01 1A 1033 cjne r3,#0x01,00104$ 00A6 BC 00 17 1034 cjne r4,#0x00,00104$ 00A9 BD 00 14 1035 cjne r5,#0x00,00104$ 00AC 20*01 11 1036 jb _startBootloaderSoon,00104$ 00AF 1037 C$usb_cdc_acm.c$290$2$2 ==. 1038 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:290: startBootloaderSoon = 1; 00AF D2*01 1039 setb _startBootloaderSoon 00B1 1040 C$usb_cdc_acm.c$291$2$2 ==. 1041 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:291: startBootloaderRequestTime = (uint8)getMs(); 00B1 12s00r00 1042 lcall _getMs 00B4 AA 82 1043 mov r2,dpl 00B6 AB 83 1044 mov r3,dph 00B8 AC F0 1045 mov r4,b 00BA FD 1046 mov r5,a 00BB 90s00r00 1047 mov dptr,#_startBootloaderRequestTime 00BE EA 1048 mov a,r2 00BF F0 1049 movx @dptr,a 00C0 1050 00104$: 00C0 1051 C$usb_cdc_acm.c$293$2$1 ==. 00C0 1052 XG$usbCallbackControlWriteHandler$0$0 ==. 00C0 22 1053 ret 1054 ;------------------------------------------------------------ 1055 ;Allocation info for local variables in function 'usbComRxAvailable' 1056 ;------------------------------------------------------------ 1057 ;------------------------------------------------------------ 00C1 1058 G$usbComRxAvailable$0$0 ==. 00C1 1059 C$usb_cdc_acm.c$299$2$1 ==. 1060 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:299: uint8 usbComRxAvailable() 1061 ; ----------------------------------------- 1062 ; function usbComRxAvailable 1063 ; ----------------------------------------- 00C1 1064 _usbComRxAvailable: 00C1 1065 C$usb_cdc_acm.c$301$1$1 ==. 1066 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:301: if (usbDeviceState != USB_STATE_CONFIGURED) 00C1 90s00r00 1067 mov dptr,#_usbDeviceState 00C4 E0 1068 movx a,@dptr 00C5 FA 1069 mov r2,a 00C6 BA 10 02 1070 cjne r2,#0x10,00110$ 00C9 80 04 1071 sjmp 00102$ 00CB 1072 00110$: 00CB 1073 C$usb_cdc_acm.c$304$2$2 ==. 1074 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:304: return 0; 00CB 75 82 00 1075 mov dpl,#0x00 00CE 22 1076 ret 00CF 1077 00102$: 00CF 1078 C$usb_cdc_acm.c$307$1$1 ==. 1079 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:307: USBINDEX = CDC_DATA_ENDPOINT; // Select the data endpoint. 00CF 90 DE 0E 1080 mov dptr,#_USBINDEX 00D2 74 04 1081 mov a,#0x04 00D4 F0 1082 movx @dptr,a 00D5 1083 C$usb_cdc_acm.c$308$1$1 ==. 1084 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:308: if (USBCSOL & USBCSOL_OUTPKT_RDY) // Check the OUTPKT_RDY flag because USBCNTL is only valid when it is 1. 00D5 90 DE 14 1085 mov dptr,#_USBCSOL 00D8 E0 1086 movx a,@dptr 00D9 FA 1087 mov r2,a 00DA 30 E0 07 1088 jnb acc.0,00104$ 00DD 1089 C$usb_cdc_acm.c$312$2$3 ==. 1090 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:312: return USBCNTL; 00DD 90 DE 16 1091 mov dptr,#_USBCNTL 00E0 E0 1092 movx a,@dptr 00E1 F5 82 1093 mov dpl,a 00E3 1094 C$usb_cdc_acm.c$316$2$4 ==. 1095 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:316: return 0; 00E3 1096 C$usb_cdc_acm.c$318$1$1 ==. 00E3 1097 XG$usbComRxAvailable$0$0 ==. 00E3 22 1098 ret 00E4 1099 00104$: 00E4 75 82 00 1100 mov dpl,#0x00 00E7 22 1101 ret 1102 ;------------------------------------------------------------ 1103 ;Allocation info for local variables in function 'usbComRxReceiveByte' 1104 ;------------------------------------------------------------ 1105 ;------------------------------------------------------------ 00E8 1106 G$usbComRxReceiveByte$0$0 ==. 00E8 1107 C$usb_cdc_acm.c$325$1$1 ==. 1108 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:325: uint8 usbComRxReceiveByte() 1109 ; ----------------------------------------- 1110 ; function usbComRxReceiveByte 1111 ; ----------------------------------------- 00E8 1112 _usbComRxReceiveByte: 00E8 1113 C$usb_cdc_acm.c$329$1$1 ==. 1114 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:329: USBINDEX = CDC_DATA_ENDPOINT; // Select the CDC data endpoint. 00E8 90 DE 0E 1115 mov dptr,#_USBINDEX 00EB 74 04 1116 mov a,#0x04 00ED F0 1117 movx @dptr,a 00EE 1118 C$usb_cdc_acm.c$330$1$1 ==. 1119 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:330: tmp = CDC_DATA_FIFO; // Read one byte from the FIFO. 00EE 90 DE 28 1120 mov dptr,#_USBF4 00F1 E0 1121 movx a,@dptr 00F2 FA 1122 mov r2,a 00F3 1123 C$usb_cdc_acm.c$332$1$1 ==. 1124 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:332: if (USBCNTL == 0) // If there are no bytes left in this packet... 00F3 90 DE 16 1125 mov dptr,#_USBCNTL 00F6 E0 1126 movx a,@dptr 00F7 FB 1127 mov r3,a 00F8 70 08 1128 jnz 00102$ 00FA 1129 C$usb_cdc_acm.c$334$2$2 ==. 1130 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:334: USBCSOL &= ~USBCSOL_OUTPKT_RDY; // Tell the USB module we are done reading this packet, so it can receive more. 00FA 90 DE 14 1131 mov dptr,#_USBCSOL 00FD E0 1132 movx a,@dptr 00FE FB 1133 mov r3,a 00FF 54 FE 1134 anl a,#0xFE 0101 F0 1135 movx @dptr,a 0102 1136 00102$: 0102 1137 C$usb_cdc_acm.c$337$1$1 ==. 1138 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:337: usbActivityFlag = 1; 0102 D2*00 1139 setb _usbActivityFlag 0104 1140 C$usb_cdc_acm.c$338$1$1 ==. 1141 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:338: return tmp; 0104 8A 82 1142 mov dpl,r2 0106 1143 C$usb_cdc_acm.c$339$1$1 ==. 0106 1144 XG$usbComRxReceiveByte$0$0 ==. 0106 22 1145 ret 1146 ;------------------------------------------------------------ 1147 ;Allocation info for local variables in function 'usbComRxReceive' 1148 ;------------------------------------------------------------ 1149 ;------------------------------------------------------------ 0107 1150 G$usbComRxReceive$0$0 ==. 0107 1151 C$usb_cdc_acm.c$343$1$1 ==. 1152 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:343: void usbComRxReceive(uint8 XDATA* buffer, uint8 size) 1153 ; ----------------------------------------- 1154 ; function usbComRxReceive 1155 ; ----------------------------------------- 0107 1156 _usbComRxReceive: 0107 AA 82 1157 mov r2,dpl 0109 AB 83 1158 mov r3,dph 010B 1159 C$usb_cdc_acm.c$345$1$1 ==. 1160 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:345: usbReadFifo(CDC_DATA_ENDPOINT, size, buffer); 010B 78r05 1161 mov r0,#_usbComRxReceive_PARM_2 010D 79r00 1162 mov r1,#_usbReadFifo_PARM_2 010F E2 1163 movx a,@r0 0110 F3 1164 movx @r1,a 0111 78r00 1165 mov r0,#_usbReadFifo_PARM_3 0113 EA 1166 mov a,r2 0114 F2 1167 movx @r0,a 0115 08 1168 inc r0 0116 EB 1169 mov a,r3 0117 F2 1170 movx @r0,a 0118 75 82 04 1171 mov dpl,#0x04 011B 12s00r00 1172 lcall _usbReadFifo 011E 1173 C$usb_cdc_acm.c$347$1$1 ==. 1174 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:347: if (USBCNTL == 0) 011E 90 DE 16 1175 mov dptr,#_USBCNTL 0121 E0 1176 movx a,@dptr 0122 FA 1177 mov r2,a 0123 70 08 1178 jnz 00103$ 0125 1179 C$usb_cdc_acm.c$349$2$2 ==. 1180 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:349: USBCSOL &= ~USBCSOL_OUTPKT_RDY; // Tell the USB module we are done reading this packet, so it can receive more. 0125 90 DE 14 1181 mov dptr,#_USBCSOL 0128 E0 1182 movx a,@dptr 0129 FA 1183 mov r2,a 012A 54 FE 1184 anl a,#0xFE 012C F0 1185 movx @dptr,a 012D 1186 00103$: 012D 1187 C$usb_cdc_acm.c$351$2$1 ==. 012D 1188 XG$usbComRxReceive$0$0 ==. 012D 22 1189 ret 1190 ;------------------------------------------------------------ 1191 ;Allocation info for local variables in function 'sendPacketNow' 1192 ;------------------------------------------------------------ 1193 ;------------------------------------------------------------ 012E 1194 Fusb_cdc_acm$sendPacketNow$0$0 ==. 012E 1195 C$usb_cdc_acm.c$358$2$1 ==. 1196 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:358: static void sendPacketNow() 1197 ; ----------------------------------------- 1198 ; function sendPacketNow 1199 ; ----------------------------------------- 012E 1200 _sendPacketNow: 012E 1201 C$usb_cdc_acm.c$360$1$1 ==. 1202 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:360: USBINDEX = CDC_DATA_ENDPOINT; 012E 90 DE 0E 1203 mov dptr,#_USBINDEX 0131 74 04 1204 mov a,#0x04 0133 F0 1205 movx @dptr,a 0134 1206 C$usb_cdc_acm.c$361$1$1 ==. 1207 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:361: USBCSIL |= USBCSIL_INPKT_RDY; // Send the packet. 0134 90 DE 11 1208 mov dptr,#_USBCSIL 0137 E0 1209 movx a,@dptr 0138 FA 1210 mov r2,a 0139 44 01 1211 orl a,#0x01 013B F0 1212 movx @dptr,a 013C 1213 C$usb_cdc_acm.c$364$1$1 ==. 1214 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:364: sendEmptyPacketSoon = (inFifoBytesLoaded == CDC_IN_PACKET_SIZE); 013C 74 40 1215 mov a,#0x40 013E B5*00 03 1216 cjne a,_inFifoBytesLoaded,00103$ 0141 D3 1217 setb c 0142 80 01 1218 sjmp 00104$ 0144 1219 00103$: 0144 C3 1220 clr c 0145 1221 00104$: 0145 92*00 1222 mov _sendEmptyPacketSoon,c 0147 1223 C$usb_cdc_acm.c$367$1$1 ==. 1224 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:367: inFifoBytesLoaded = 0; 0147 75*00 00 1225 mov _inFifoBytesLoaded,#0x00 014A 1226 C$usb_cdc_acm.c$370$1$1 ==. 1227 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:370: usbActivityFlag = 1; 014A D2*00 1228 setb _usbActivityFlag 014C 1229 C$usb_cdc_acm.c$371$1$1 ==. 014C 1230 XFusb_cdc_acm$sendPacketNow$0$0 ==. 014C 22 1231 ret 1232 ;------------------------------------------------------------ 1233 ;Allocation info for local variables in function 'usbComService' 1234 ;------------------------------------------------------------ 1235 ;------------------------------------------------------------ 014D 1236 G$usbComService$0$0 ==. 014D 1237 C$usb_cdc_acm.c$373$1$1 ==. 1238 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:373: void usbComService(void) 1239 ; ----------------------------------------- 1240 ; function usbComService 1241 ; ----------------------------------------- 014D 1242 _usbComService: 014D 1243 C$usb_cdc_acm.c$375$1$1 ==. 1244 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:375: usbPoll(); 014D 12s00r00 1245 lcall _usbPoll 0150 1246 C$usb_cdc_acm.c$378$1$1 ==. 1247 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:378: if (startBootloaderSoon && (uint8)(getMs() - startBootloaderRequestTime) > 70) 0150 30*01 1B 1248 jnb _startBootloaderSoon,00102$ 0153 12s00r00 1249 lcall _getMs 0156 AA 82 1250 mov r2,dpl 0158 AC F0 1251 mov r4,b 015A FD 1252 mov r5,a 015B 90s00r00 1253 mov dptr,#_startBootloaderRequestTime 015E E0 1254 movx a,@dptr 015F FB 1255 mov r3,a 0160 EA 1256 mov a,r2 0161 C3 1257 clr c 0162 9B 1258 subb a,r3 0163 FA 1259 mov r2,a 0164 74 46 1260 mov a,#0x46 0166 B5 02 00 1261 cjne a,ar2,00123$ 0169 1262 00123$: 0169 50 03 1263 jnc 00102$ 016B 1264 C$usb_cdc_acm.c$388$2$2 ==. 1265 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:388: boardStartBootloader(); 016B 12s00r00 1266 lcall _boardStartBootloader 016E 1267 00102$: 016E 1268 C$usb_cdc_acm.c$391$1$1 ==. 1269 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:391: if (usbDeviceState != USB_STATE_CONFIGURED) 016E 90s00r00 1270 mov dptr,#_usbDeviceState 0171 E0 1271 movx a,@dptr 0172 FA 1272 mov r2,a 0173 BA 10 02 1273 cjne r2,#0x10,00125$ 0176 80 01 1274 sjmp 00105$ 0178 1275 00125$: 0178 1276 C$usb_cdc_acm.c$394$2$3 ==. 1277 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:394: return; 0178 22 1278 ret 0179 1279 00105$: 0179 1280 C$usb_cdc_acm.c$402$1$1 ==. 1281 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:402: USBINDEX = CDC_DATA_ENDPOINT; 0179 90 DE 0E 1282 mov dptr,#_USBINDEX 017C 74 04 1283 mov a,#0x04 017E F0 1284 movx @dptr,a 017F 1285 C$usb_cdc_acm.c$403$1$1 ==. 1286 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:403: if (inFifoBytesLoaded || ( sendEmptyPacketSoon && !(USBCSIL & USBCSIL_PKT_PRESENT) ) ) 017F E5*00 1287 mov a,_inFifoBytesLoaded 0181 70 0B 1288 jnz 00106$ 0183 30*00 0B 1289 jnb _sendEmptyPacketSoon,00107$ 0186 90 DE 11 1290 mov dptr,#_USBCSIL 0189 E0 1291 movx a,@dptr 018A FA 1292 mov r2,a 018B 20 E1 03 1293 jb acc.1,00107$ 018E 1294 00106$: 018E 1295 C$usb_cdc_acm.c$405$2$4 ==. 1296 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:405: sendPacketNow(); 018E 12s01r2E 1297 lcall _sendPacketNow 0191 1298 00107$: 0191 1299 C$usb_cdc_acm.c$409$1$1 ==. 1300 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:409: USBINDEX = CDC_NOTIFICATION_ENDPOINT; 0191 90 DE 0E 1301 mov dptr,#_USBINDEX 0194 74 01 1302 mov a,#0x01 0196 F0 1303 movx @dptr,a 0197 1304 C$usb_cdc_acm.c$410$1$1 ==. 1305 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:410: if (usbComSerialState != lastReportedSerialState && !(USBCSIL & USBCSIL_INPKT_RDY)) 0197 78r01 1306 mov r0,#_usbComSerialState 0199 79r02 1307 mov r1,#_lastReportedSerialState 019B E2 1308 movx a,@r0 019C F5 F0 1309 mov b,a 019E E3 1310 movx a,@r1 019F B5 F0 01 1311 cjne a,b,00129$ 01A2 22 1312 ret 01A3 1313 00129$: 01A3 90 DE 11 1314 mov dptr,#_USBCSIL 01A6 E0 1315 movx a,@dptr 01A7 FA 1316 mov r2,a 01A8 20 E0 3A 1317 jb acc.0,00113$ 01AB 1318 C$usb_cdc_acm.c$416$2$5 ==. 1319 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:416: CDC_NOTIFICATION_FIFO = 0b10100001; // bRequestType: Direction=IN, Type=Class, Sender=Interface 01AB 1320 C$usb_cdc_acm.c$417$2$5 ==. 1321 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:417: CDC_NOTIFICATION_FIFO = ACM_NOTIFICATION_SERIAL_STATE; // bRequest 01AB 1322 C$usb_cdc_acm.c$420$2$5 ==. 1323 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:420: CDC_NOTIFICATION_FIFO = 0; 01AB 1324 C$usb_cdc_acm.c$421$2$5 ==. 1325 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:421: CDC_NOTIFICATION_FIFO = 0; 01AB 90 DE 22 1326 mov dptr,#_USBF1 01AE 74 A1 1327 mov a,#0xA1 01B0 F0 1328 movx @dptr,a 01B1 74 20 1329 mov a,#0x20 01B3 F0 1330 movx @dptr,a 01B4 E4 1331 clr a 01B5 F0 1332 movx @dptr,a 01B6 1333 C$usb_cdc_acm.c$424$2$5 ==. 1334 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:424: CDC_NOTIFICATION_FIFO = CDC_CONTROL_INTERFACE_NUMBER; 01B6 1335 C$usb_cdc_acm.c$425$2$5 ==. 1336 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:425: CDC_NOTIFICATION_FIFO = 0; 01B6 1337 C$usb_cdc_acm.c$428$2$5 ==. 1338 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:428: CDC_NOTIFICATION_FIFO = 2; 01B6 1339 C$usb_cdc_acm.c$429$2$5 ==. 1340 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:429: CDC_NOTIFICATION_FIFO = 0; 01B6 E4 1341 clr a 01B7 F0 1342 movx @dptr,a 01B8 90 DE 22 1343 mov dptr,#_USBF1 01BB F0 1344 movx @dptr,a 01BC E4 1345 clr a 01BD F0 1346 movx @dptr,a 01BE 74 02 1347 mov a,#0x02 01C0 F0 1348 movx @dptr,a 01C1 E4 1349 clr a 01C2 F0 1350 movx @dptr,a 01C3 1351 C$usb_cdc_acm.c$432$2$5 ==. 1352 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:432: CDC_NOTIFICATION_FIFO = usbComSerialState; 01C3 78r01 1353 mov r0,#_usbComSerialState 01C5 90 DE 22 1354 mov dptr,#_USBF1 01C8 E2 1355 movx a,@r0 01C9 F0 1356 movx @dptr,a 01CA 1357 C$usb_cdc_acm.c$433$2$5 ==. 1358 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:433: CDC_NOTIFICATION_FIFO = 0; 01CA 90 DE 22 1359 mov dptr,#_USBF1 01CD E4 1360 clr a 01CE F0 1361 movx @dptr,a 01CF 1362 C$usb_cdc_acm.c$435$2$5 ==. 1363 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:435: USBCSIL |= USBCSIL_INPKT_RDY; 01CF 90 DE 11 1364 mov dptr,#_USBCSIL 01D2 E0 1365 movx a,@dptr 01D3 44 01 1366 orl a,#0x01 01D5 F0 1367 movx @dptr,a 01D6 1368 C$usb_cdc_acm.c$438$2$5 ==. 1369 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:438: usbComSerialState &= ~ACM_IRREGULAR_SIGNAL_MASK; 01D6 78r01 1370 mov r0,#_usbComSerialState 01D8 E2 1371 movx a,@r0 01D9 54 83 1372 anl a,#0x83 01DB F2 1373 movx @r0,a 01DC 1374 C$usb_cdc_acm.c$440$2$5 ==. 1375 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:440: lastReportedSerialState = usbComSerialState; 01DC 78r01 1376 mov r0,#_usbComSerialState 01DE E2 1377 movx a,@r0 01DF FA 1378 mov r2,a 01E0 78r02 1379 mov r0,#_lastReportedSerialState 01E2 F2 1380 movx @r0,a 01E3 1381 C$usb_cdc_acm.c$443$2$5 ==. 1382 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:443: usbActivityFlag = 1; 01E3 D2*00 1383 setb _usbActivityFlag 01E5 1384 00113$: 01E5 1385 C$usb_cdc_acm.c$445$2$1 ==. 01E5 1386 XG$usbComService$0$0 ==. 01E5 22 1387 ret 1388 ;------------------------------------------------------------ 1389 ;Allocation info for local variables in function 'usbComTxAvailable' 1390 ;------------------------------------------------------------ 1391 ;------------------------------------------------------------ 01E6 1392 G$usbComTxAvailable$0$0 ==. 01E6 1393 C$usb_cdc_acm.c$449$2$1 ==. 1394 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:449: uint8 usbComTxAvailable() 1395 ; ----------------------------------------- 1396 ; function usbComTxAvailable 1397 ; ----------------------------------------- 01E6 1398 _usbComTxAvailable: 01E6 1399 C$usb_cdc_acm.c$453$1$1 ==. 1400 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:453: if (usbDeviceState != USB_STATE_CONFIGURED) 01E6 90s00r00 1401 mov dptr,#_usbDeviceState 01E9 E0 1402 movx a,@dptr 01EA FA 1403 mov r2,a 01EB BA 10 02 1404 cjne r2,#0x10,00113$ 01EE 80 04 1405 sjmp 00102$ 01F0 1406 00113$: 01F0 1407 C$usb_cdc_acm.c$456$2$2 ==. 1408 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:456: return 0; 01F0 75 82 00 1409 mov dpl,#0x00 01F3 22 1410 ret 01F4 1411 00102$: 01F4 1412 C$usb_cdc_acm.c$459$1$1 ==. 1413 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:459: USBINDEX = CDC_DATA_ENDPOINT; 01F4 90 DE 0E 1414 mov dptr,#_USBINDEX 01F7 74 04 1415 mov a,#0x04 01F9 F0 1416 movx @dptr,a 01FA 1417 C$usb_cdc_acm.c$460$1$1 ==. 1418 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:460: tmp = USBCSIL; 01FA 90 DE 11 1419 mov dptr,#_USBCSIL 01FD E0 1420 movx a,@dptr 01FE 1421 C$usb_cdc_acm.c$461$1$1 ==. 1422 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:461: if (tmp & USBCSIL_PKT_PRESENT) 01FE FA 1423 mov r2,a 01FF 30 E1 10 1424 jnb acc.1,00106$ 0202 1425 C$usb_cdc_acm.c$463$2$3 ==. 1426 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:463: if (tmp & USBCSIL_INPKT_RDY) 0202 EA 1427 mov a,r2 0203 30 E0 04 1428 jnb acc.0,00104$ 0206 1429 C$usb_cdc_acm.c$465$3$4 ==. 1430 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:465: return 0; // 2 packets are in the FIFO, so no room 0206 75 82 00 1431 mov dpl,#0x00 0209 22 1432 ret 020A 1433 00104$: 020A 1434 C$usb_cdc_acm.c$467$2$3 ==. 1435 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:467: return CDC_IN_PACKET_SIZE - inFifoBytesLoaded; // 1 packet is in the FIFO, so there is room for 1 more 020A 74 40 1436 mov a,#0x40 020C C3 1437 clr c 020D 95*00 1438 subb a,_inFifoBytesLoaded 020F F5 82 1439 mov dpl,a 0211 22 1440 ret 0212 1441 00106$: 0212 1442 C$usb_cdc_acm.c$471$2$5 ==. 1443 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:471: return (CDC_IN_PACKET_SIZE<<1) - inFifoBytesLoaded; // 0 packets are in the FIFO, so there is room for 2 more 0212 74 80 1444 mov a,#0x80 0214 C3 1445 clr c 0215 95*00 1446 subb a,_inFifoBytesLoaded 0217 F5 82 1447 mov dpl,a 0219 1448 C$usb_cdc_acm.c$473$1$1 ==. 0219 1449 XG$usbComTxAvailable$0$0 ==. 0219 22 1450 ret 1451 ;------------------------------------------------------------ 1452 ;Allocation info for local variables in function 'usbComTxSend' 1453 ;------------------------------------------------------------ 1454 ;------------------------------------------------------------ 021A 1455 G$usbComTxSend$0$0 ==. 021A 1456 C$usb_cdc_acm.c$477$1$1 ==. 1457 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:477: void usbComTxSend(const uint8 XDATA * buffer, uint8 size) 1458 ; ----------------------------------------- 1459 ; function usbComTxSend 1460 ; ----------------------------------------- 021A 1461 _usbComTxSend: 021A AA 82 1462 mov r2,dpl 021C AB 83 1463 mov r3,dph 021E 1464 C$usb_cdc_acm.c$480$1$1 ==. 1465 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:480: while(size) 021E 1466 00105$: 021E 78r06 1467 mov r0,#_usbComTxSend_PARM_2 0220 E2 1468 movx a,@r0 0221 60 52 1469 jz 00108$ 0223 1470 C$usb_cdc_acm.c$482$2$2 ==. 1471 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:482: packetSize = CDC_IN_PACKET_SIZE - inFifoBytesLoaded; // Decide how many bytes to send in this packet (packetSize). 0223 74 40 1472 mov a,#0x40 0225 C3 1473 clr c 0226 95*00 1474 subb a,_inFifoBytesLoaded 0228 FC 1475 mov r4,a 0229 1476 C$usb_cdc_acm.c$483$2$2 ==. 1477 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:483: if (packetSize > size){ packetSize = size; } 0229 78r06 1478 mov r0,#_usbComTxSend_PARM_2 022B E2 1479 movx a,@r0 022C B5 04 00 1480 cjne a,ar4,00115$ 022F 1481 00115$: 022F 50 04 1482 jnc 00102$ 0231 78r06 1483 mov r0,#_usbComTxSend_PARM_2 0233 E2 1484 movx a,@r0 0234 FC 1485 mov r4,a 0235 1486 00102$: 0235 1487 C$usb_cdc_acm.c$485$2$2 ==. 1488 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:485: usbWriteFifo(CDC_DATA_ENDPOINT, packetSize, buffer); // Write those bytes to the USB FIFO. 0235 78r00 1489 mov r0,#_usbWriteFifo_PARM_2 0237 EC 1490 mov a,r4 0238 F2 1491 movx @r0,a 0239 78r00 1492 mov r0,#_usbWriteFifo_PARM_3 023B EA 1493 mov a,r2 023C F2 1494 movx @r0,a 023D 08 1495 inc r0 023E EB 1496 mov a,r3 023F F2 1497 movx @r0,a 0240 75 82 04 1498 mov dpl,#0x04 0243 C0 02 1499 push ar2 0245 C0 03 1500 push ar3 0247 C0 04 1501 push ar4 0249 12s00r00 1502 lcall _usbWriteFifo 024C D0 04 1503 pop ar4 024E D0 03 1504 pop ar3 0250 D0 02 1505 pop ar2 0252 1506 C$usb_cdc_acm.c$487$2$2 ==. 1507 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:487: buffer += packetSize; // Update pointers. 0252 EC 1508 mov a,r4 0253 2A 1509 add a,r2 0254 FA 1510 mov r2,a 0255 E4 1511 clr a 0256 3B 1512 addc a,r3 0257 FB 1513 mov r3,a 0258 1514 C$usb_cdc_acm.c$488$2$2 ==. 1515 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:488: size -= packetSize; 0258 78r06 1516 mov r0,#_usbComTxSend_PARM_2 025A E2 1517 movx a,@r0 025B C3 1518 clr c 025C 9C 1519 subb a,r4 025D F2 1520 movx @r0,a 025E 1521 C$usb_cdc_acm.c$489$2$2 ==. 1522 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:489: inFifoBytesLoaded += packetSize; 025E EC 1523 mov a,r4 025F 25*00 1524 add a,_inFifoBytesLoaded 0261 F5*00 1525 mov _inFifoBytesLoaded,a 0263 1526 C$usb_cdc_acm.c$491$2$2 ==. 1527 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:491: if (inFifoBytesLoaded == CDC_IN_PACKET_SIZE) 0263 74 40 1528 mov a,#0x40 0265 B5*00 B6 1529 cjne a,_inFifoBytesLoaded,00105$ 0268 1530 C$usb_cdc_acm.c$493$3$4 ==. 1531 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:493: sendPacketNow(); 0268 C0 02 1532 push ar2 026A C0 03 1533 push ar3 026C 12s01r2E 1534 lcall _sendPacketNow 026F D0 03 1535 pop ar3 0271 D0 02 1536 pop ar2 0273 80 A9 1537 sjmp 00105$ 0275 1538 00108$: 0275 1539 C$usb_cdc_acm.c$496$1$1 ==. 0275 1540 XG$usbComTxSend$0$0 ==. 0275 22 1541 ret 1542 ;------------------------------------------------------------ 1543 ;Allocation info for local variables in function 'usbComTxSendByte' 1544 ;------------------------------------------------------------ 1545 ;------------------------------------------------------------ 0276 1546 G$usbComTxSendByte$0$0 ==. 0276 1547 C$usb_cdc_acm.c$498$1$1 ==. 1548 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:498: void usbComTxSendByte(uint8 byte) 1549 ; ----------------------------------------- 1550 ; function usbComTxSendByte 1551 ; ----------------------------------------- 0276 1552 _usbComTxSendByte: 0276 E5 82 1553 mov a,dpl 0278 90 DE 28 1554 mov dptr,#_USBF4 027B F0 1555 movx @dptr,a 027C 1556 C$usb_cdc_acm.c$503$1$1 ==. 1557 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:503: inFifoBytesLoaded++; 027C 05*00 1558 inc _inFifoBytesLoaded 027E 1559 C$usb_cdc_acm.c$505$1$1 ==. 1560 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:505: if (inFifoBytesLoaded == CDC_IN_PACKET_SIZE) 027E 74 40 1561 mov a,#0x40 0280 B5*00 03 1562 cjne a,_inFifoBytesLoaded,00103$ 0283 1563 C$usb_cdc_acm.c$507$2$2 ==. 1564 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:507: sendPacketNow(); 0283 1565 C$usb_cdc_acm.c$511$2$1 ==. 0283 1566 XG$usbComTxSendByte$0$0 ==. 0283 02s01r2E 1567 ljmp _sendPacketNow 0286 1568 00103$: 0286 22 1569 ret 1570 ;------------------------------------------------------------ 1571 ;Allocation info for local variables in function 'usbComRxControlSignals' 1572 ;------------------------------------------------------------ 1573 ;------------------------------------------------------------ 0287 1574 G$usbComRxControlSignals$0$0 ==. 0287 1575 C$usb_cdc_acm.c$515$2$1 ==. 1576 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:515: uint8 usbComRxControlSignals() 1577 ; ----------------------------------------- 1578 ; function usbComRxControlSignals 1579 ; ----------------------------------------- 0287 1580 _usbComRxControlSignals: 0287 1581 C$usb_cdc_acm.c$517$1$1 ==. 1582 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:517: return usbComControlLineState; 0287 78r00 1583 mov r0,#_usbComControlLineState 0289 E2 1584 movx a,@r0 028A F5 82 1585 mov dpl,a 028C 1586 C$usb_cdc_acm.c$518$1$1 ==. 028C 1587 XG$usbComRxControlSignals$0$0 ==. 028C 22 1588 ret 1589 ;------------------------------------------------------------ 1590 ;Allocation info for local variables in function 'usbComTxControlSignals' 1591 ;------------------------------------------------------------ 1592 ;------------------------------------------------------------ 028D 1593 G$usbComTxControlSignals$0$0 ==. 028D 1594 C$usb_cdc_acm.c$520$1$1 ==. 1595 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:520: void usbComTxControlSignals(uint8 signals) 1596 ; ----------------------------------------- 1597 ; function usbComTxControlSignals 1598 ; ----------------------------------------- 028D 1599 _usbComTxControlSignals: 028D AA 82 1600 mov r2,dpl 028F 1601 C$usb_cdc_acm.c$522$1$1 ==. 1602 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:522: usbComSerialState = (usbComSerialState & ACM_IRREGULAR_SIGNAL_MASK) | signals; 028F 78r01 1603 mov r0,#_usbComSerialState 0291 E2 1604 movx a,@r0 0292 54 7C 1605 anl a,#0x7C 0294 4A 1606 orl a,r2 0295 78r01 1607 mov r0,#_usbComSerialState 0297 F2 1608 movx @r0,a 0298 1609 C$usb_cdc_acm.c$523$1$1 ==. 0298 1610 XG$usbComTxControlSignals$0$0 ==. 0298 22 1611 ret 1612 ;------------------------------------------------------------ 1613 ;Allocation info for local variables in function 'usbComTxControlSignalEvents' 1614 ;------------------------------------------------------------ 1615 ;------------------------------------------------------------ 0299 1616 G$usbComTxControlSignalEvents$0$0 ==. 0299 1617 C$usb_cdc_acm.c$525$1$1 ==. 1618 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:525: void usbComTxControlSignalEvents(uint8 signalEvents) 1619 ; ----------------------------------------- 1620 ; function usbComTxControlSignalEvents 1621 ; ----------------------------------------- 0299 1622 _usbComTxControlSignalEvents: 0299 AA 82 1623 mov r2,dpl 029B 1624 C$usb_cdc_acm.c$527$1$1 ==. 1625 ; libraries/src/usb_cdc_acm/usb_cdc_acm.c:527: usbComSerialState |= signalEvents; 029B 78r01 1626 mov r0,#_usbComSerialState 029D E2 1627 movx a,@r0 029E 4A 1628 orl a,r2 029F F2 1629 movx @r0,a 02A0 1630 C$usb_cdc_acm.c$528$1$1 ==. 02A0 1631 XG$usbComTxControlSignalEvents$0$0 ==. 02A0 22 1632 ret 1633 .area CSEG (CODE) 1634 .area CONST (CODE) 0000 1635 G$usbDeviceDescriptor$0$0 == . 0000 1636 _usbDeviceDescriptor: 0000 12 1637 .db #0x12 ; 18 0001 01 1638 .db #0x01 ; 1 0002 00 02 1639 .byte #0x00,#0x02 ; 512 0004 02 1640 .db #0x02 ; 2 0005 00 1641 .db #0x00 ; 0 0006 00 1642 .db #0x00 ; 0 0007 20 1643 .db #0x20 ; 32 0008 FB 1F 1644 .byte #0xFB,#0x1F ; 8187 000A 00 22 1645 .byte #0x00,#0x22 ; 8704 000C 00 00 1646 .byte #0x00,#0x00 ; 0 000E 01 1647 .db #0x01 ; 1 000F 02 1648 .db #0x02 ; 2 0010 03 1649 .db #0x03 ; 3 0011 01 1650 .db #0x01 ; 1 0012 1651 G$usbConfigurationDescriptor$0$0 == . 0012 1652 _usbConfigurationDescriptor: 0012 09 1653 .db #0x09 ; 9 0013 02 1654 .db #0x02 ; 2 0014 43 00 1655 .byte #0x43,#0x00 ; 67 0016 02 1656 .db #0x02 ; 2 0017 01 1657 .db #0x01 ; 1 0018 00 1658 .db #0x00 ; 0 0019 C0 1659 .db #0xC0 ; 192 001A 32 1660 .db #0x32 ; 50 001B 09 1661 .db #0x09 ; 9 001C 04 1662 .db #0x04 ; 4 001D 00 1663 .db #0x00 ; 0 001E 00 1664 .db #0x00 ; 0 001F 01 1665 .db #0x01 ; 1 0020 02 1666 .db #0x02 ; 2 0021 02 1667 .db #0x02 ; 2 0022 01 1668 .db #0x01 ; 1 0023 00 1669 .db #0x00 ; 0 0024 05 1670 .db #0x05 ; 5 0025 24 1671 .db #0x24 ; 36 0026 00 1672 .db #0x00 ; 0 0027 20 1673 .db #0x20 ; 32 0028 01 1674 .db #0x01 ; 1 0029 04 1675 .db #0x04 ; 4 002A 24 1676 .db #0x24 ; 36 002B 02 1677 .db #0x02 ; 2 002C 02 1678 .db #0x02 ; 2 002D 05 1679 .db #0x05 ; 5 002E 24 1680 .db #0x24 ; 36 002F 06 1681 .db #0x06 ; 6 0030 00 1682 .db #0x00 ; 0 0031 01 1683 .db #0x01 ; 1 0032 05 1684 .db #0x05 ; 5 0033 24 1685 .db #0x24 ; 36 0034 01 1686 .db #0x01 ; 1 0035 00 1687 .db #0x00 ; 0 0036 01 1688 .db #0x01 ; 1 0037 07 1689 .db #0x07 ; 7 0038 05 1690 .db #0x05 ; 5 0039 81 1691 .db #0x81 ; 129 003A 03 1692 .db #0x03 ; 3 003B 0A 00 1693 .byte #0x0A,#0x00 ; 10 003D 01 1694 .db #0x01 ; 1 003E 09 1695 .db #0x09 ; 9 003F 04 1696 .db #0x04 ; 4 0040 01 1697 .db #0x01 ; 1 0041 00 1698 .db #0x00 ; 0 0042 02 1699 .db #0x02 ; 2 0043 0A 1700 .db #0x0A ; 10 0044 00 1701 .db #0x00 ; 0 0045 00 1702 .db #0x00 ; 0 0046 00 1703 .db #0x00 ; 0 0047 07 1704 .db #0x07 ; 7 0048 05 1705 .db #0x05 ; 5 0049 04 1706 .db #0x04 ; 4 004A 02 1707 .db #0x02 ; 2 004B 40 00 1708 .byte #0x40,#0x00 ; 64 004D 00 1709 .db #0x00 ; 0 004E 07 1710 .db #0x07 ; 7 004F 05 1711 .db #0x05 ; 5 0050 84 1712 .db #0x84 ; 132 0051 02 1713 .db #0x02 ; 2 0052 40 00 1714 .byte #0x40,#0x00 ; 64 0054 00 1715 .db #0x00 ; 0 0055 1716 G$usbStringDescriptorCount$0$0 == . 0055 1717 _usbStringDescriptorCount: 0055 04 1718 .db #0x04 ; 4 0056 1719 Fusb_cdc_acm$languages$0$0 == . 0056 1720 _languages: 0056 04 03 1721 .byte #0x04,#0x03 ; 772 0058 09 04 1722 .byte #0x09,#0x04 ; 1033 005A 1723 Fusb_cdc_acm$manufacturer$0$0 == . 005A 1724 _manufacturer: 005A 26 03 1725 .byte #0x26,#0x03 ; 806 005C 50 00 1726 .byte #0x50,#0x00 ; 80 005E 6F 00 1727 .byte #0x6F,#0x00 ; 111 0060 6C 00 1728 .byte #0x6C,#0x00 ; 108 0062 6F 00 1729 .byte #0x6F,#0x00 ; 111 0064 6C 00 1730 .byte #0x6C,#0x00 ; 108 0066 75 00 1731 .byte #0x75,#0x00 ; 117 0068 20 00 1732 .byte #0x20,#0x00 ; 32 006A 43 00 1733 .byte #0x43,#0x00 ; 67 006C 6F 00 1734 .byte #0x6F,#0x00 ; 111 006E 72 00 1735 .byte #0x72,#0x00 ; 114 0070 70 00 1736 .byte #0x70,#0x00 ; 112 0072 6F 00 1737 .byte #0x6F,#0x00 ; 111 0074 72 00 1738 .byte #0x72,#0x00 ; 114 0076 61 00 1739 .byte #0x61,#0x00 ; 97 0078 74 00 1740 .byte #0x74,#0x00 ; 116 007A 69 00 1741 .byte #0x69,#0x00 ; 105 007C 6F 00 1742 .byte #0x6F,#0x00 ; 111 007E 6E 00 1743 .byte #0x6E,#0x00 ; 110 0080 1744 Fusb_cdc_acm$product$0$0 == . 0080 1745 _product: 0080 0C 03 1746 .byte #0x0C,#0x03 ; 780 0082 57 00 1747 .byte #0x57,#0x00 ; 87 0084 69 00 1748 .byte #0x69,#0x00 ; 105 0086 78 00 1749 .byte #0x78,#0x00 ; 120 0088 65 00 1750 .byte #0x65,#0x00 ; 101 008A 6C 00 1751 .byte #0x6C,#0x00 ; 108 008C 1752 G$usbStringDescriptors$0$0 == . 008C 1753 _usbStringDescriptors: 008Cr56s00 1754 .byte _languages,(_languages >> 8) 008Er5As00 1755 .byte _manufacturer,(_manufacturer >> 8) 0090r80s00 1756 .byte _product,(_product >> 8) 0092r00s00 1757 .byte _serialNumberStringDescriptor,(_serialNumberStringDescriptor >> 8) 1758 .area XINIT (CODE) 0000 1759 Fusb_cdc_acm$__xinit_usbComLineCoding$0$0 == . 0000 1760 __xinit__usbComLineCoding: 0000 80 25 00 00 1761 .byte #0x80,#0x25,#0x00,#0x00 ; 9600 0004 00 1762 .db #0x00 ; 0 0005 00 1763 .db #0x00 ; 0 0006 08 1764 .db #0x08 ; 8 1765 .area CABS (ABS,CODE)