1 ;-------------------------------------------------------- 2 ; File Created by SDCC : free open source ANSI-C Compiler 3 ; Version 2.9.0 #5416 (Feb 3 2010) (UNIX) 4 ; This file was generated Mon Jul 30 11:40:52 2012 5 ;-------------------------------------------------------- 6 .module fx2utils 7 .optsdcc -mmcs51 --model-small 8 9 ;-------------------------------------------------------- 10 ; Public variables in this module 11 ;-------------------------------------------------------- 12 .globl _EIPX6 13 .globl _EIPX5 14 .globl _EIPX4 15 .globl _PI2C 16 .globl _PUSB 17 .globl _EIEX6 18 .globl _EIEX5 19 .globl _EIEX4 20 .globl _EI2C 21 .globl _EIUSB 22 .globl _SMOD1 23 .globl _ERESI 24 .globl _RESI 25 .globl _INT6 26 .globl _CY 27 .globl _AC 28 .globl _F0 29 .globl _RS1 30 .globl _RS0 31 .globl _OV 32 .globl _FL 33 .globl _P 34 .globl _TF2 35 .globl _EXF2 36 .globl _RCLK 37 .globl _TCLK 38 .globl _EXEN2 39 .globl _TR2 40 .globl _C_T2 41 .globl _CP_RL2 42 .globl _SM01 43 .globl _SM11 44 .globl _SM21 45 .globl _REN1 46 .globl _TB81 47 .globl _RB81 48 .globl _TI1 49 .globl _RI1 50 .globl _PS1 51 .globl _PT2 52 .globl _PS0 53 .globl _PT1 54 .globl _PX1 55 .globl _PT0 56 .globl _PX0 57 .globl _D7 58 .globl _D6 59 .globl _D5 60 .globl _D4 61 .globl _D3 62 .globl _D2 63 .globl _D1 64 .globl _D0 65 .globl _EA 66 .globl _ES1 67 .globl _ET2 68 .globl _ES0 69 .globl _ET1 70 .globl _EX1 71 .globl _ET0 72 .globl _EX0 73 .globl _SM0 74 .globl _SM1 75 .globl _SM2 76 .globl _REN 77 .globl _TB8 78 .globl _RB8 79 .globl _TI 80 .globl _RI 81 .globl _TF1 82 .globl _TR1 83 .globl _TF0 84 .globl _TR0 85 .globl _IE1 86 .globl _IT1 87 .globl _IE0 88 .globl _IT0 89 .globl _SEL 90 .globl _A7 91 .globl _A6 92 .globl _A5 93 .globl _A4 94 .globl _A3 95 .globl _A2 96 .globl _A1 97 .globl _A0 98 .globl _EIP 99 .globl _B 100 .globl _EIE 101 .globl _ACC 102 .globl _EICON 103 .globl _PSW 104 .globl _TH2 105 .globl _TL2 106 .globl _RCAP2H 107 .globl _RCAP2L 108 .globl _T2CON 109 .globl _SBUF1 110 .globl _SCON1 111 .globl _GPIFSGLDATLNOX 112 .globl _GPIFSGLDATLX 113 .globl _GPIFSGLDATH 114 .globl _GPIFTRIG 115 .globl _EP01STAT 116 .globl _IP 117 .globl _OEE 118 .globl _OED 119 .globl _OEC 120 .globl _OEB 121 .globl _OEA 122 .globl _IOE 123 .globl _IOD 124 .globl _AUTOPTRSETUP 125 .globl _EP68FIFOFLGS 126 .globl _EP24FIFOFLGS 127 .globl _EP2468STAT 128 .globl _IE 129 .globl _INT4CLR 130 .globl _INT2CLR 131 .globl _IOC 132 .globl _AUTODAT2 133 .globl _AUTOPTRL2 134 .globl _AUTOPTRH2 135 .globl _AUTODAT1 136 .globl _APTR1L 137 .globl _APTR1H 138 .globl _SBUF0 139 .globl _SCON0 140 .globl _MPAGE 141 .globl _EXIF 142 .globl _IOB 143 .globl _CKCON 144 .globl _TH1 145 .globl _TH0 146 .globl _TL1 147 .globl _TL0 148 .globl _TMOD 149 .globl _TCON 150 .globl _PCON 151 .globl _DPS 152 .globl _DPH1 153 .globl _DPL1 154 .globl _DPH 155 .globl _DPL 156 .globl _SP 157 .globl _IOA 158 .globl _EP8FIFOBUF 159 .globl _EP6FIFOBUF 160 .globl _EP4FIFOBUF 161 .globl _EP2FIFOBUF 162 .globl _EP1INBUF 163 .globl _EP1OUTBUF 164 .globl _EP0BUF 165 .globl _CT4 166 .globl _CT3 167 .globl _CT2 168 .globl _CT1 169 .globl _USBTEST 170 .globl _TESTCFG 171 .globl _DBUG 172 .globl _UDMACRCQUAL 173 .globl _UDMACRCL 174 .globl _UDMACRCH 175 .globl _GPIFHOLDAMOUNT 176 .globl _FLOWSTBHPERIOD 177 .globl _FLOWSTBEDGE 178 .globl _FLOWSTB 179 .globl _FLOWHOLDOFF 180 .globl _FLOWEQ1CTL 181 .globl _FLOWEQ0CTL 182 .globl _FLOWLOGIC 183 .globl _FLOWSTATE 184 .globl _GPIFABORT 185 .globl _GPIFREADYSTAT 186 .globl _GPIFREADYCFG 187 .globl _XGPIFSGLDATLNOX 188 .globl _XGPIFSGLDATLX 189 .globl _XGPIFSGLDATH 190 .globl _EP8GPIFTRIG 191 .globl _EP8GPIFPFSTOP 192 .globl _EP8GPIFFLGSEL 193 .globl _EP6GPIFTRIG 194 .globl _EP6GPIFPFSTOP 195 .globl _EP6GPIFFLGSEL 196 .globl _EP4GPIFTRIG 197 .globl _EP4GPIFPFSTOP 198 .globl _EP4GPIFFLGSEL 199 .globl _EP2GPIFTRIG 200 .globl _EP2GPIFPFSTOP 201 .globl _EP2GPIFFLGSEL 202 .globl _GPIFTCB0 203 .globl _GPIFTCB1 204 .globl _GPIFTCB2 205 .globl _GPIFTCB3 206 .globl _GPIFADRL 207 .globl _GPIFADRH 208 .globl _GPIFCTLCFG 209 .globl _GPIFIDLECTL 210 .globl _GPIFIDLECS 211 .globl _GPIFWFSELECT 212 .globl _SETUPDAT 213 .globl _SUDPTRCTL 214 .globl _SUDPTRL 215 .globl _SUDPTRH 216 .globl _EP8FIFOBCL 217 .globl _EP8FIFOBCH 218 .globl _EP6FIFOBCL 219 .globl _EP6FIFOBCH 220 .globl _EP4FIFOBCL 221 .globl _EP4FIFOBCH 222 .globl _EP2FIFOBCL 223 .globl _EP2FIFOBCH 224 .globl _EP8FIFOFLGS 225 .globl _EP6FIFOFLGS 226 .globl _EP4FIFOFLGS 227 .globl _EP2FIFOFLGS 228 .globl _EP8CS 229 .globl _EP6CS 230 .globl _EP4CS 231 .globl _EP2CS 232 .globl _EP1INCS 233 .globl _EP1OUTCS 234 .globl _EP0CS 235 .globl _EP8BCL 236 .globl _EP8BCH 237 .globl _EP6BCL 238 .globl _EP6BCH 239 .globl _EP4BCL 240 .globl _EP4BCH 241 .globl _EP2BCL 242 .globl _EP2BCH 243 .globl _EP1INBC 244 .globl _EP1OUTBC 245 .globl _EP0BCL 246 .globl _EP0BCH 247 .globl _FNADDR 248 .globl _MICROFRAME 249 .globl _USBFRAMEL 250 .globl _USBFRAMEH 251 .globl _TOGCTL 252 .globl _WAKEUPCS 253 .globl _SUSPEND 254 .globl _USBCS 255 .globl _XAUTODAT2 256 .globl _XAUTODAT1 257 .globl _I2CTL 258 .globl _I2DAT 259 .globl _I2CS 260 .globl _PORTECFG 261 .globl _PORTCCFG 262 .globl _PORTACFG 263 .globl _INTSETUP 264 .globl _INT4IVEC 265 .globl _INT2IVEC 266 .globl _CLRERRCNT 267 .globl _ERRCNTLIM 268 .globl _USBERRIRQ 269 .globl _USBERRIE 270 .globl _GPIFIRQ 271 .globl _GPIFIE 272 .globl _EPIRQ 273 .globl _EPIE 274 .globl _USBIRQ 275 .globl _USBIE 276 .globl _NAKIRQ 277 .globl _NAKIE 278 .globl _IBNIRQ 279 .globl _IBNIE 280 .globl _EP8FIFOIRQ 281 .globl _EP8FIFOIE 282 .globl _EP6FIFOIRQ 283 .globl _EP6FIFOIE 284 .globl _EP4FIFOIRQ 285 .globl _EP4FIFOIE 286 .globl _EP2FIFOIRQ 287 .globl _EP2FIFOIE 288 .globl _OUTPKTEND 289 .globl _INPKTEND 290 .globl _EP8ISOINPKTS 291 .globl _EP6ISOINPKTS 292 .globl _EP4ISOINPKTS 293 .globl _EP2ISOINPKTS 294 .globl _EP8FIFOPFL 295 .globl _EP8FIFOPFH 296 .globl _EP6FIFOPFL 297 .globl _EP6FIFOPFH 298 .globl _EP4FIFOPFL 299 .globl _EP4FIFOPFH 300 .globl _EP2FIFOPFL 301 .globl _EP2FIFOPFH 302 .globl _EP8AUTOINLENL 303 .globl _EP8AUTOINLENH 304 .globl _EP6AUTOINLENL 305 .globl _EP6AUTOINLENH 306 .globl _EP4AUTOINLENL 307 .globl _EP4AUTOINLENH 308 .globl _EP2AUTOINLENL 309 .globl _EP2AUTOINLENH 310 .globl _EP8FIFOCFG 311 .globl _EP6FIFOCFG 312 .globl _EP4FIFOCFG 313 .globl _EP2FIFOCFG 314 .globl _EP8CFG 315 .globl _EP6CFG 316 .globl _EP4CFG 317 .globl _EP2CFG 318 .globl _EP1INCFG 319 .globl _EP1OUTCFG 320 .globl _REVCTL 321 .globl _REVID 322 .globl _FIFOPINPOLAR 323 .globl _UART230 324 .globl _BPADDRL 325 .globl _BPADDRH 326 .globl _BREAKPT 327 .globl _FIFORESET 328 .globl _PINFLAGSCD 329 .globl _PINFLAGSAB 330 .globl _IFCONFIG 331 .globl _CPUCS 332 .globl _RES_WAVEDATA_END 333 .globl _GPIF_WAVE_DATA 334 .globl _fx2_stall_ep0 335 .globl _fx2_reset_data_toggle 336 .globl _fx2_renumerate 337 ;-------------------------------------------------------- 338 ; special function registers 339 ;-------------------------------------------------------- 340 .area RSEG (DATA) 0080 341 _IOA = 0x0080 0081 342 _SP = 0x0081 0082 343 _DPL = 0x0082 0083 344 _DPH = 0x0083 0084 345 _DPL1 = 0x0084 0085 346 _DPH1 = 0x0085 0086 347 _DPS = 0x0086 0087 348 _PCON = 0x0087 0088 349 _TCON = 0x0088 0089 350 _TMOD = 0x0089 008A 351 _TL0 = 0x008a 008B 352 _TL1 = 0x008b 008C 353 _TH0 = 0x008c 008D 354 _TH1 = 0x008d 008E 355 _CKCON = 0x008e 0090 356 _IOB = 0x0090 0091 357 _EXIF = 0x0091 0092 358 _MPAGE = 0x0092 0098 359 _SCON0 = 0x0098 0099 360 _SBUF0 = 0x0099 009A 361 _APTR1H = 0x009a 009B 362 _APTR1L = 0x009b 009C 363 _AUTODAT1 = 0x009c 009D 364 _AUTOPTRH2 = 0x009d 009E 365 _AUTOPTRL2 = 0x009e 009F 366 _AUTODAT2 = 0x009f 00A0 367 _IOC = 0x00a0 00A1 368 _INT2CLR = 0x00a1 00A2 369 _INT4CLR = 0x00a2 00A8 370 _IE = 0x00a8 00AA 371 _EP2468STAT = 0x00aa 00AB 372 _EP24FIFOFLGS = 0x00ab 00AC 373 _EP68FIFOFLGS = 0x00ac 00AF 374 _AUTOPTRSETUP = 0x00af 00B0 375 _IOD = 0x00b0 00B1 376 _IOE = 0x00b1 00B2 377 _OEA = 0x00b2 00B3 378 _OEB = 0x00b3 00B4 379 _OEC = 0x00b4 00B5 380 _OED = 0x00b5 00B6 381 _OEE = 0x00b6 00B8 382 _IP = 0x00b8 00BA 383 _EP01STAT = 0x00ba 00BB 384 _GPIFTRIG = 0x00bb 00BD 385 _GPIFSGLDATH = 0x00bd 00BE 386 _GPIFSGLDATLX = 0x00be 00BF 387 _GPIFSGLDATLNOX = 0x00bf 00C0 388 _SCON1 = 0x00c0 00C1 389 _SBUF1 = 0x00c1 00C8 390 _T2CON = 0x00c8 00CA 391 _RCAP2L = 0x00ca 00CB 392 _RCAP2H = 0x00cb 00CC 393 _TL2 = 0x00cc 00CD 394 _TH2 = 0x00cd 00D0 395 _PSW = 0x00d0 00D8 396 _EICON = 0x00d8 00E0 397 _ACC = 0x00e0 00E8 398 _EIE = 0x00e8 00F0 399 _B = 0x00f0 00F8 400 _EIP = 0x00f8 401 ;-------------------------------------------------------- 402 ; special function bits 403 ;-------------------------------------------------------- 404 .area RSEG (DATA) 0080 405 _A0 = 0x0080 0081 406 _A1 = 0x0081 0082 407 _A2 = 0x0082 0083 408 _A3 = 0x0083 0084 409 _A4 = 0x0084 0085 410 _A5 = 0x0085 0086 411 _A6 = 0x0086 0087 412 _A7 = 0x0087 0086 413 _SEL = 0x0086 0088 414 _IT0 = 0x0088 0089 415 _IE0 = 0x0089 008A 416 _IT1 = 0x008a 008B 417 _IE1 = 0x008b 008C 418 _TR0 = 0x008c 008D 419 _TF0 = 0x008d 008E 420 _TR1 = 0x008e 008F 421 _TF1 = 0x008f 0098 422 _RI = 0x0098 0099 423 _TI = 0x0099 009A 424 _RB8 = 0x009a 009B 425 _TB8 = 0x009b 009C 426 _REN = 0x009c 009D 427 _SM2 = 0x009d 009E 428 _SM1 = 0x009e 009F 429 _SM0 = 0x009f 00A8 430 _EX0 = 0x00a8 00A9 431 _ET0 = 0x00a9 00AA 432 _EX1 = 0x00aa 00AB 433 _ET1 = 0x00ab 00AC 434 _ES0 = 0x00ac 00AD 435 _ET2 = 0x00ad 00AE 436 _ES1 = 0x00ae 00AF 437 _EA = 0x00af 00B0 438 _D0 = 0x00b0 00B1 439 _D1 = 0x00b1 00B2 440 _D2 = 0x00b2 00B3 441 _D3 = 0x00b3 00B4 442 _D4 = 0x00b4 00B5 443 _D5 = 0x00b5 00B6 444 _D6 = 0x00b6 00B7 445 _D7 = 0x00b7 00B8 446 _PX0 = 0x00b8 00B9 447 _PT0 = 0x00b9 00BA 448 _PX1 = 0x00ba 00BB 449 _PT1 = 0x00bb 00BC 450 _PS0 = 0x00bc 00BD 451 _PT2 = 0x00bd 00BE 452 _PS1 = 0x00be 00C0 453 _RI1 = 0x00c0 00C1 454 _TI1 = 0x00c1 00C2 455 _RB81 = 0x00c2 00C3 456 _TB81 = 0x00c3 00C4 457 _REN1 = 0x00c4 00C5 458 _SM21 = 0x00c5 00C6 459 _SM11 = 0x00c6 00C7 460 _SM01 = 0x00c7 00C8 461 _CP_RL2 = 0x00c8 00C9 462 _C_T2 = 0x00c9 00CA 463 _TR2 = 0x00ca 00CB 464 _EXEN2 = 0x00cb 00CC 465 _TCLK = 0x00cc 00CD 466 _RCLK = 0x00cd 00CE 467 _EXF2 = 0x00ce 00CF 468 _TF2 = 0x00cf 00D0 469 _P = 0x00d0 00D1 470 _FL = 0x00d1 00D2 471 _OV = 0x00d2 00D3 472 _RS0 = 0x00d3 00D4 473 _RS1 = 0x00d4 00D5 474 _F0 = 0x00d5 00D6 475 _AC = 0x00d6 00D7 476 _CY = 0x00d7 00DB 477 _INT6 = 0x00db 00DC 478 _RESI = 0x00dc 00DD 479 _ERESI = 0x00dd 00DF 480 _SMOD1 = 0x00df 00E8 481 _EIUSB = 0x00e8 00E9 482 _EI2C = 0x00e9 00EA 483 _EIEX4 = 0x00ea 00EB 484 _EIEX5 = 0x00eb 00EC 485 _EIEX6 = 0x00ec 00F8 486 _PUSB = 0x00f8 00F9 487 _PI2C = 0x00f9 00FA 488 _EIPX4 = 0x00fa 00FB 489 _EIPX5 = 0x00fb 00FC 490 _EIPX6 = 0x00fc 491 ;-------------------------------------------------------- 492 ; overlayable register banks 493 ;-------------------------------------------------------- 494 .area REG_BANK_0 (REL,OVR,DATA) 0000 495 .ds 8 496 ;-------------------------------------------------------- 497 ; internal ram data 498 ;-------------------------------------------------------- 499 .area DSEG (DATA) 500 ;-------------------------------------------------------- 501 ; overlayable items in internal ram 502 ;-------------------------------------------------------- 503 .area OSEG (OVR,DATA) 504 ;-------------------------------------------------------- 505 ; indirectly addressable internal ram data 506 ;-------------------------------------------------------- 507 .area ISEG (DATA) 508 ;-------------------------------------------------------- 509 ; absolute internal ram data 510 ;-------------------------------------------------------- 511 .area IABS (ABS,DATA) 512 .area IABS (ABS,DATA) 513 ;-------------------------------------------------------- 514 ; bit data 515 ;-------------------------------------------------------- 516 .area BSEG (BIT) 517 ;-------------------------------------------------------- 518 ; paged external ram data 519 ;-------------------------------------------------------- 520 .area PSEG (PAG,XDATA) 521 ;-------------------------------------------------------- 522 ; external ram data 523 ;-------------------------------------------------------- 524 .area XSEG (XDATA) E400 525 _GPIF_WAVE_DATA = 0xe400 E480 526 _RES_WAVEDATA_END = 0xe480 E600 527 _CPUCS = 0xe600 E601 528 _IFCONFIG = 0xe601 E602 529 _PINFLAGSAB = 0xe602 E603 530 _PINFLAGSCD = 0xe603 E604 531 _FIFORESET = 0xe604 E605 532 _BREAKPT = 0xe605 E606 533 _BPADDRH = 0xe606 E607 534 _BPADDRL = 0xe607 E608 535 _UART230 = 0xe608 E609 536 _FIFOPINPOLAR = 0xe609 E60A 537 _REVID = 0xe60a E60B 538 _REVCTL = 0xe60b E610 539 _EP1OUTCFG = 0xe610 E611 540 _EP1INCFG = 0xe611 E612 541 _EP2CFG = 0xe612 E613 542 _EP4CFG = 0xe613 E614 543 _EP6CFG = 0xe614 E615 544 _EP8CFG = 0xe615 E618 545 _EP2FIFOCFG = 0xe618 E619 546 _EP4FIFOCFG = 0xe619 E61A 547 _EP6FIFOCFG = 0xe61a E61B 548 _EP8FIFOCFG = 0xe61b E620 549 _EP2AUTOINLENH = 0xe620 E621 550 _EP2AUTOINLENL = 0xe621 E622 551 _EP4AUTOINLENH = 0xe622 E623 552 _EP4AUTOINLENL = 0xe623 E624 553 _EP6AUTOINLENH = 0xe624 E625 554 _EP6AUTOINLENL = 0xe625 E626 555 _EP8AUTOINLENH = 0xe626 E627 556 _EP8AUTOINLENL = 0xe627 E630 557 _EP2FIFOPFH = 0xe630 E631 558 _EP2FIFOPFL = 0xe631 E632 559 _EP4FIFOPFH = 0xe632 E633 560 _EP4FIFOPFL = 0xe633 E634 561 _EP6FIFOPFH = 0xe634 E635 562 _EP6FIFOPFL = 0xe635 E636 563 _EP8FIFOPFH = 0xe636 E637 564 _EP8FIFOPFL = 0xe637 E640 565 _EP2ISOINPKTS = 0xe640 E641 566 _EP4ISOINPKTS = 0xe641 E642 567 _EP6ISOINPKTS = 0xe642 E643 568 _EP8ISOINPKTS = 0xe643 E648 569 _INPKTEND = 0xe648 E649 570 _OUTPKTEND = 0xe649 E650 571 _EP2FIFOIE = 0xe650 E651 572 _EP2FIFOIRQ = 0xe651 E652 573 _EP4FIFOIE = 0xe652 E653 574 _EP4FIFOIRQ = 0xe653 E654 575 _EP6FIFOIE = 0xe654 E655 576 _EP6FIFOIRQ = 0xe655 E656 577 _EP8FIFOIE = 0xe656 E657 578 _EP8FIFOIRQ = 0xe657 E658 579 _IBNIE = 0xe658 E659 580 _IBNIRQ = 0xe659 E65A 581 _NAKIE = 0xe65a E65B 582 _NAKIRQ = 0xe65b E65C 583 _USBIE = 0xe65c E65D 584 _USBIRQ = 0xe65d E65E 585 _EPIE = 0xe65e E65F 586 _EPIRQ = 0xe65f E660 587 _GPIFIE = 0xe660 E661 588 _GPIFIRQ = 0xe661 E662 589 _USBERRIE = 0xe662 E663 590 _USBERRIRQ = 0xe663 E664 591 _ERRCNTLIM = 0xe664 E665 592 _CLRERRCNT = 0xe665 E666 593 _INT2IVEC = 0xe666 E667 594 _INT4IVEC = 0xe667 E668 595 _INTSETUP = 0xe668 E670 596 _PORTACFG = 0xe670 E671 597 _PORTCCFG = 0xe671 E672 598 _PORTECFG = 0xe672 E678 599 _I2CS = 0xe678 E679 600 _I2DAT = 0xe679 E67A 601 _I2CTL = 0xe67a E67B 602 _XAUTODAT1 = 0xe67b E67C 603 _XAUTODAT2 = 0xe67c E680 604 _USBCS = 0xe680 E681 605 _SUSPEND = 0xe681 E682 606 _WAKEUPCS = 0xe682 E683 607 _TOGCTL = 0xe683 E684 608 _USBFRAMEH = 0xe684 E685 609 _USBFRAMEL = 0xe685 E686 610 _MICROFRAME = 0xe686 E687 611 _FNADDR = 0xe687 E68A 612 _EP0BCH = 0xe68a E68B 613 _EP0BCL = 0xe68b E68D 614 _EP1OUTBC = 0xe68d E68F 615 _EP1INBC = 0xe68f E690 616 _EP2BCH = 0xe690 E691 617 _EP2BCL = 0xe691 E694 618 _EP4BCH = 0xe694 E695 619 _EP4BCL = 0xe695 E698 620 _EP6BCH = 0xe698 E699 621 _EP6BCL = 0xe699 E69C 622 _EP8BCH = 0xe69c E69D 623 _EP8BCL = 0xe69d E6A0 624 _EP0CS = 0xe6a0 E6A1 625 _EP1OUTCS = 0xe6a1 E6A2 626 _EP1INCS = 0xe6a2 E6A3 627 _EP2CS = 0xe6a3 E6A4 628 _EP4CS = 0xe6a4 E6A5 629 _EP6CS = 0xe6a5 E6A6 630 _EP8CS = 0xe6a6 E6A7 631 _EP2FIFOFLGS = 0xe6a7 E6A8 632 _EP4FIFOFLGS = 0xe6a8 E6A9 633 _EP6FIFOFLGS = 0xe6a9 E6AA 634 _EP8FIFOFLGS = 0xe6aa E6AB 635 _EP2FIFOBCH = 0xe6ab E6AC 636 _EP2FIFOBCL = 0xe6ac E6AD 637 _EP4FIFOBCH = 0xe6ad E6AE 638 _EP4FIFOBCL = 0xe6ae E6AF 639 _EP6FIFOBCH = 0xe6af E6B0 640 _EP6FIFOBCL = 0xe6b0 E6B1 641 _EP8FIFOBCH = 0xe6b1 E6B2 642 _EP8FIFOBCL = 0xe6b2 E6B3 643 _SUDPTRH = 0xe6b3 E6B4 644 _SUDPTRL = 0xe6b4 E6B5 645 _SUDPTRCTL = 0xe6b5 E6B8 646 _SETUPDAT = 0xe6b8 E6C0 647 _GPIFWFSELECT = 0xe6c0 E6C1 648 _GPIFIDLECS = 0xe6c1 E6C2 649 _GPIFIDLECTL = 0xe6c2 E6C3 650 _GPIFCTLCFG = 0xe6c3 E6C4 651 _GPIFADRH = 0xe6c4 E6C5 652 _GPIFADRL = 0xe6c5 E6CE 653 _GPIFTCB3 = 0xe6ce E6CF 654 _GPIFTCB2 = 0xe6cf E6D0 655 _GPIFTCB1 = 0xe6d0 E6D1 656 _GPIFTCB0 = 0xe6d1 E6D2 657 _EP2GPIFFLGSEL = 0xe6d2 E6D3 658 _EP2GPIFPFSTOP = 0xe6d3 E6D4 659 _EP2GPIFTRIG = 0xe6d4 E6DA 660 _EP4GPIFFLGSEL = 0xe6da E6DB 661 _EP4GPIFPFSTOP = 0xe6db E6DC 662 _EP4GPIFTRIG = 0xe6dc E6E2 663 _EP6GPIFFLGSEL = 0xe6e2 E6E3 664 _EP6GPIFPFSTOP = 0xe6e3 E6E4 665 _EP6GPIFTRIG = 0xe6e4 E6EA 666 _EP8GPIFFLGSEL = 0xe6ea E6EB 667 _EP8GPIFPFSTOP = 0xe6eb E6EC 668 _EP8GPIFTRIG = 0xe6ec E6F0 669 _XGPIFSGLDATH = 0xe6f0 E6F1 670 _XGPIFSGLDATLX = 0xe6f1 E6F2 671 _XGPIFSGLDATLNOX = 0xe6f2 E6F3 672 _GPIFREADYCFG = 0xe6f3 E6F4 673 _GPIFREADYSTAT = 0xe6f4 E6F5 674 _GPIFABORT = 0xe6f5 E6C6 675 _FLOWSTATE = 0xe6c6 E6C7 676 _FLOWLOGIC = 0xe6c7 E6C8 677 _FLOWEQ0CTL = 0xe6c8 E6C9 678 _FLOWEQ1CTL = 0xe6c9 E6CA 679 _FLOWHOLDOFF = 0xe6ca E6CB 680 _FLOWSTB = 0xe6cb E6CC 681 _FLOWSTBEDGE = 0xe6cc E6CD 682 _FLOWSTBHPERIOD = 0xe6cd E60C 683 _GPIFHOLDAMOUNT = 0xe60c E67D 684 _UDMACRCH = 0xe67d E67E 685 _UDMACRCL = 0xe67e E67F 686 _UDMACRCQUAL = 0xe67f E6F8 687 _DBUG = 0xe6f8 E6F9 688 _TESTCFG = 0xe6f9 E6FA 689 _USBTEST = 0xe6fa E6FB 690 _CT1 = 0xe6fb E6FC 691 _CT2 = 0xe6fc E6FD 692 _CT3 = 0xe6fd E6FE 693 _CT4 = 0xe6fe E740 694 _EP0BUF = 0xe740 E780 695 _EP1OUTBUF = 0xe780 E7C0 696 _EP1INBUF = 0xe7c0 F000 697 _EP2FIFOBUF = 0xf000 F400 698 _EP4FIFOBUF = 0xf400 F800 699 _EP6FIFOBUF = 0xf800 FC00 700 _EP8FIFOBUF = 0xfc00 701 ;-------------------------------------------------------- 702 ; absolute external ram data 703 ;-------------------------------------------------------- 704 .area XABS (ABS,XDATA) 705 ;-------------------------------------------------------- 706 ; external initialized ram data 707 ;-------------------------------------------------------- 708 .area HOME (CODE) 709 .area GSINIT0 (CODE) 710 .area GSINIT1 (CODE) 711 .area GSINIT2 (CODE) 712 .area GSINIT3 (CODE) 713 .area GSINIT4 (CODE) 714 .area GSINIT5 (CODE) 715 .area GSINIT (CODE) 716 .area GSFINAL (CODE) 717 .area CSEG (CODE) 718 ;-------------------------------------------------------- 719 ; global & static initialisations 720 ;-------------------------------------------------------- 721 .area HOME (CODE) 722 .area GSINIT (CODE) 723 .area GSFINAL (CODE) 724 .area GSINIT (CODE) 725 ;-------------------------------------------------------- 726 ; Home 727 ;-------------------------------------------------------- 728 .area HOME (CODE) 729 .area HOME (CODE) 730 ;-------------------------------------------------------- 731 ; code 732 ;-------------------------------------------------------- 733 .area CSEG (CODE) 734 ;------------------------------------------------------------ 735 ;Allocation info for local variables in function 'fx2_stall_ep0' 736 ;------------------------------------------------------------ 737 ;------------------------------------------------------------ 738 ; fx2utils.c:28: fx2_stall_ep0 (void) 739 ; ----------------------------------------- 740 ; function fx2_stall_ep0 741 ; ----------------------------------------- 0000 742 _fx2_stall_ep0: 0002 743 ar2 = 0x02 0003 744 ar3 = 0x03 0004 745 ar4 = 0x04 0005 746 ar5 = 0x05 0006 747 ar6 = 0x06 0007 748 ar7 = 0x07 0000 749 ar0 = 0x00 0001 750 ar1 = 0x01 751 ; fx2utils.c:30: EP0CS |= bmEPSTALL; 0000 90 E6 A0 752 mov dptr,#_EP0CS 0003 E0 753 movx a,@dptr 0004 44 01 754 orl a,#0x01 0006 F0 755 movx @dptr,a 0007 22 756 ret 757 ;------------------------------------------------------------ 758 ;Allocation info for local variables in function 'fx2_reset_data_toggle' 759 ;------------------------------------------------------------ 760 ;ep Allocated to registers r2 761 ;------------------------------------------------------------ 762 ; fx2utils.c:34: fx2_reset_data_toggle (unsigned char ep) 763 ; ----------------------------------------- 764 ; function fx2_reset_data_toggle 765 ; ----------------------------------------- 0008 766 _fx2_reset_data_toggle: 0008 AA 82 767 mov r2,dpl 768 ; fx2utils.c:36: TOGCTL = ((ep & 0x80) >> 3 | (ep & 0x0f)); 000A 74 80 769 mov a,#0x80 000C 5A 770 anl a,r2 000D C4 771 swap a 000E 23 772 rl a 000F 54 1F 773 anl a,#0x1f 0011 FB 774 mov r3,a 0012 74 0F 775 mov a,#0x0F 0014 5A 776 anl a,r2 0015 90 E6 83 777 mov dptr,#_TOGCTL 0018 4B 778 orl a,r3 0019 F0 779 movx @dptr,a 780 ; fx2utils.c:37: TOGCTL |= bmRESETTOGGLE; 001A 90 E6 83 781 mov dptr,#_TOGCTL 001D E0 782 movx a,@dptr 001E 44 20 783 orl a,#0x20 0020 F0 784 movx @dptr,a 0021 22 785 ret 786 ;------------------------------------------------------------ 787 ;Allocation info for local variables in function 'fx2_renumerate' 788 ;------------------------------------------------------------ 789 ;------------------------------------------------------------ 790 ; fx2utils.c:41: fx2_renumerate (void) 791 ; ----------------------------------------- 792 ; function fx2_renumerate 793 ; ----------------------------------------- 0022 794 _fx2_renumerate: 795 ; fx2utils.c:43: USBCS |= bmDISCON | bmRENUM; 0022 90 E6 80 796 mov dptr,#_USBCS 0025 E0 797 movx a,@dptr 0026 44 0A 798 orl a,#0x0A 0028 F0 799 movx @dptr,a 800 ; fx2utils.c:45: mdelay (250); 0029 90 00 FA 801 mov dptr,#0x00FA 002C 12s00r00 802 lcall _mdelay 803 ; fx2utils.c:47: USBIRQ = 0xff; // clear any pending USB irqs... 002F 90 E6 5D 804 mov dptr,#_USBIRQ 0032 74 FF 805 mov a,#0xFF 0034 F0 806 movx @dptr,a 807 ; fx2utils.c:48: EPIRQ = 0xff; // they're from before the renumeration 0035 90 E6 5F 808 mov dptr,#_EPIRQ 0038 74 FF 809 mov a,#0xFF 003A F0 810 movx @dptr,a 811 ; fx2utils.c:50: EXIF &= ~bmEXIF_USBINT; 003B 53 91 EF 812 anl _EXIF,#0xEF 813 ; fx2utils.c:52: USBCS &= ~bmDISCON; // reconnect USB 003E 90 E6 80 814 mov dptr,#_USBCS 0041 E0 815 movx a,@dptr 0042 54 F7 816 anl a,#0xF7 0044 F0 817 movx @dptr,a 0045 22 818 ret 819 .area CSEG (CODE) 820 .area CONST (CODE) 821 .area CABS (ABS,CODE)