URL
https://opencores.org/ocsvn/usb_fpga_1_11/usb_fpga_1_11/trunk
Subversion Repositories usb_fpga_1_11
Compare Revisions
- This comparison shows the changes necessary to convert path
/usb_fpga_1_11/trunk/examples/all
- from Rev 6 to Rev 7
- ↔ Reverse comparison
Rev 6 → Rev 7
/debug/debug.rel
File deleted
/debug/debug.map
File deleted
\ No newline at end of file
/debug/debug.sym
File deleted
/debug/Debug.jar
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
debug/Debug.jar
Property changes :
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: debug/debug.lst
===================================================================
--- debug/debug.lst (revision 6)
+++ debug/debug.lst (nonexistent)
@@ -1,4497 +0,0 @@
- 1 ;--------------------------------------------------------
- 2 ; File Created by SDCC : free open source ANSI-C Compiler
- 3 ; Version 2.8.0 #5117 (May 15 2008) (UNIX)
- 4 ; This file was generated Wed Sep 8 20:23:26 2010
- 5 ;--------------------------------------------------------
- 6 .module debug_tmp
- 7 .optsdcc -mmcs51 --model-small
- 8
- 9 ;--------------------------------------------------------
- 10 ; Public variables in this module
- 11 ;--------------------------------------------------------
- 12 .globl _sendStringDescriptor_PARM_3
- 13 .globl _sendStringDescriptor_PARM_2
- 14 .globl _EmptyStringDescriptor
- 15 .globl _FullSpeedConfigDescriptor_PadByte
- 16 .globl _FullSpeedConfigDescriptor
- 17 .globl _HighSpeedConfigDescriptor_PadByte
- 18 .globl _HighSpeedConfigDescriptor
- 19 .globl _DeviceQualifierDescriptor
- 20 .globl _DeviceDescriptor
- 21 .globl _PadByte
- 22 .globl _configurationString
- 23 .globl _productString
- 24 .globl _manufacturerString
- 25 .globl _main
- 26 .globl _init_USB
- 27 .globl _EP8_ISR
- 28 .globl _EP6_ISR
- 29 .globl _EP4_ISR
- 30 .globl _EP2_ISR
- 31 .globl _EP1OUT_ISR
- 32 .globl _EP1IN_ISR
- 33 .globl _EP0ACK_ISR
- 34 .globl _HSGRANT_ISR
- 35 .globl _URES_ISR
- 36 .globl _SUSP_ISR
- 37 .globl _SUTOK_ISR
- 38 .globl _SOF_ISR
- 39 .globl _abscode_identity
- 40 .globl _debug_read_ep0
- 41 .globl _debug_init
- 42 .globl _debug_add_msg
- 43 .globl _eeprom_write_ep0
- 44 .globl _eeprom_read_ep0
- 45 .globl _eeprom_write
- 46 .globl _eeprom_read
- 47 .globl _eeprom_select
- 48 .globl _i2c_waitStop
- 49 .globl _i2c_waitStart
- 50 .globl _i2c_waitRead
- 51 .globl _i2c_waitWrite
- 52 .globl _MEM_COPY1_int
- 53 .globl _uwait
- 54 .globl _wait
- 55 .globl _abscode_intvec
- 56 .globl _EIPX6
- 57 .globl _EIPX5
- 58 .globl _EIPX4
- 59 .globl _PI2C
- 60 .globl _PUSB
- 61 .globl _BREG7
- 62 .globl _BREG6
- 63 .globl _BREG5
- 64 .globl _BREG4
- 65 .globl _BREG3
- 66 .globl _BREG2
- 67 .globl _BREG1
- 68 .globl _BREG0
- 69 .globl _EIEX6
- 70 .globl _EIEX5
- 71 .globl _EIEX4
- 72 .globl _EI2C
- 73 .globl _EUSB
- 74 .globl _ACC7
- 75 .globl _ACC6
- 76 .globl _ACC5
- 77 .globl _ACC4
- 78 .globl _ACC3
- 79 .globl _ACC2
- 80 .globl _ACC1
- 81 .globl _ACC0
- 82 .globl _SMOD1
- 83 .globl _ERESI
- 84 .globl _RESI
- 85 .globl _INT6
- 86 .globl _CY
- 87 .globl _AC
- 88 .globl _F0
- 89 .globl _RS1
- 90 .globl _RS0
- 91 .globl _OV
- 92 .globl _F1
- 93 .globl _PF
- 94 .globl _TF2
- 95 .globl _EXF2
- 96 .globl _RCLK
- 97 .globl _TCLK
- 98 .globl _EXEN2
- 99 .globl _TR2
- 100 .globl _CT2
- 101 .globl _CPRL2
- 102 .globl _SM0_1
- 103 .globl _SM1_1
- 104 .globl _SM2_1
- 105 .globl _REN_1
- 106 .globl _TB8_1
- 107 .globl _RB8_1
- 108 .globl _TI_1
- 109 .globl _RI_1
- 110 .globl _PS1
- 111 .globl _PT2
- 112 .globl _PS0
- 113 .globl _PT1
- 114 .globl _PX1
- 115 .globl _PT0
- 116 .globl _PX0
- 117 .globl _IOD7
- 118 .globl _IOD6
- 119 .globl _IOD5
- 120 .globl _IOD4
- 121 .globl _IOD3
- 122 .globl _IOD2
- 123 .globl _IOD1
- 124 .globl _IOD0
- 125 .globl _EA
- 126 .globl _ES1
- 127 .globl _ET2
- 128 .globl _ES0
- 129 .globl _ET1
- 130 .globl _EX1
- 131 .globl _ET0
- 132 .globl _EX0
- 133 .globl _IOC7
- 134 .globl _IOC6
- 135 .globl _IOC5
- 136 .globl _IOC4
- 137 .globl _IOC3
- 138 .globl _IOC2
- 139 .globl _IOC1
- 140 .globl _IOC0
- 141 .globl _SM0_0
- 142 .globl _SM1_0
- 143 .globl _SM2_0
- 144 .globl _REN_0
- 145 .globl _TB8_0
- 146 .globl _RB8_0
- 147 .globl _TI_0
- 148 .globl _RI_0
- 149 .globl _IOB7
- 150 .globl _IOB6
- 151 .globl _IOB5
- 152 .globl _IOB4
- 153 .globl _IOB3
- 154 .globl _IOB2
- 155 .globl _IOB1
- 156 .globl _IOB0
- 157 .globl _TF1
- 158 .globl _TR1
- 159 .globl _TF0
- 160 .globl _TR0
- 161 .globl _IE1
- 162 .globl _IT1
- 163 .globl _IE0
- 164 .globl _IT0
- 165 .globl _IOA7
- 166 .globl _IOA6
- 167 .globl _IOA5
- 168 .globl _IOA4
- 169 .globl _IOA3
- 170 .globl _IOA2
- 171 .globl _IOA1
- 172 .globl _IOA0
- 173 .globl _EIP
- 174 .globl _BREG
- 175 .globl _EIE
- 176 .globl _ACC
- 177 .globl _EICON
- 178 .globl _PSW
- 179 .globl _TH2
- 180 .globl _TL2
- 181 .globl _RCAP2H
- 182 .globl _RCAP2L
- 183 .globl _T2CON
- 184 .globl _SBUF1
- 185 .globl _SCON1
- 186 .globl _GPIFSGLDATLNOX
- 187 .globl _GPIFSGLDATLX
- 188 .globl _GPIFSGLDATH
- 189 .globl _GPIFTRIG
- 190 .globl _EP01STAT
- 191 .globl _IP
- 192 .globl _OEE
- 193 .globl _OED
- 194 .globl _OEC
- 195 .globl _OEB
- 196 .globl _OEA
- 197 .globl _IOE
- 198 .globl _IOD
- 199 .globl _AUTOPTRSETUP
- 200 .globl _EP68FIFOFLGS
- 201 .globl _EP24FIFOFLGS
- 202 .globl _EP2468STAT
- 203 .globl _IE
- 204 .globl _INT4CLR
- 205 .globl _INT2CLR
- 206 .globl _IOC
- 207 .globl _AUTOPTRL2
- 208 .globl _AUTOPTRH2
- 209 .globl _AUTOPTRL1
- 210 .globl _AUTOPTRH1
- 211 .globl _SBUF0
- 212 .globl _SCON0
- 213 .globl __XPAGE
- 214 .globl _MPAGE
- 215 .globl _EXIF
- 216 .globl _IOB
- 217 .globl _CKCON
- 218 .globl _TH1
- 219 .globl _TH0
- 220 .globl _TL1
- 221 .globl _TL0
- 222 .globl _TMOD
- 223 .globl _TCON
- 224 .globl _PCON
- 225 .globl _DPS
- 226 .globl _DPH1
- 227 .globl _DPL1
- 228 .globl _DPH0
- 229 .globl _DPL0
- 230 .globl _SP
- 231 .globl _IOA
- 232 .globl _ISOFRAME_COUNTER
- 233 .globl _ep0_vendor_cmd_setup
- 234 .globl _ep0_prev_setup_request
- 235 .globl _ep0_payload_transfer
- 236 .globl _ep0_payload_remaining
- 237 .globl _SN_STRING
- 238 .globl _MODULE_RESERVED
- 239 .globl _INTERFACE_CAPABILITIES
- 240 .globl _INTERFACE_VERSION
- 241 .globl _FW_VERSION
- 242 .globl _PRODUCT_ID
- 243 .globl _ZTEXID
- 244 .globl _ZTEX_DESCRIPTOR_VERSION
- 245 .globl _ZTEX_DESCRIPTOR
- 246 .globl _debug_read_addr
- 247 .globl _debug_msg_buf
- 248 .globl _debug_stack_ptr
- 249 .globl _debug_stack
- 250 .globl _debug_msg_size
- 251 .globl _debug_stack_size
- 252 .globl _debug_counter
- 253 .globl _eeprom_write_checksum
- 254 .globl _eeprom_write_bytes
- 255 .globl _eeprom_addr
- 256 .globl _INTVEC_GPIFWF
- 257 .globl _INTVEC_GPIFDONE
- 258 .globl _INTVEC_EP8FF
- 259 .globl _INTVEC_EP6FF
- 260 .globl _INTVEC_EP2FF
- 261 .globl _INTVEC_EP8EF
- 262 .globl _INTVEC_EP6EF
- 263 .globl _INTVEC_EP4EF
- 264 .globl _INTVEC_EP2EF
- 265 .globl _INTVEC_EP8PF
- 266 .globl _INTVEC_EP6PF
- 267 .globl _INTVEC_EP4PF
- 268 .globl _INTVEC_EP2PF
- 269 .globl _INTVEC_EP8ISOERR
- 270 .globl _INTVEC_EP6ISOERR
- 271 .globl _INTVEC_EP4ISOERR
- 272 .globl _INTVEC_EP2ISOERR
- 273 .globl _INTVEC_ERRLIMIT
- 274 .globl _INTVEC_EP8PING
- 275 .globl _INTVEC_EP6PING
- 276 .globl _INTVEC_EP4PING
- 277 .globl _INTVEC_EP2PING
- 278 .globl _INTVEC_EP1PING
- 279 .globl _INTVEC_EP0PING
- 280 .globl _INTVEC_IBN
- 281 .globl _INTVEC_EP8
- 282 .globl _INTVEC_EP6
- 283 .globl _INTVEC_EP4
- 284 .globl _INTVEC_EP2
- 285 .globl _INTVEC_EP1OUT
- 286 .globl _INTVEC_EP1IN
- 287 .globl _INTVEC_EP0OUT
- 288 .globl _INTVEC_EP0IN
- 289 .globl _INTVEC_EP0ACK
- 290 .globl _INTVEC_HISPEED
- 291 .globl _INTVEC_USBRESET
- 292 .globl _INTVEC_SUSPEND
- 293 .globl _INTVEC_SUTOK
- 294 .globl _INTVEC_SOF
- 295 .globl _INTVEC_SUDAV
- 296 .globl _INT12VEC_IE6
- 297 .globl _INT11VEC_IE5
- 298 .globl _INT10VEC_GPIF
- 299 .globl _INT9VEC_I2C
- 300 .globl _INT8VEC_USB
- 301 .globl _INT7VEC_USART1
- 302 .globl _INT6VEC_RESUME
- 303 .globl _INT5VEC_T2
- 304 .globl _INT4VEC_USART0
- 305 .globl _INT3VEC_T1
- 306 .globl _INT2VEC_IE1
- 307 .globl _INT1VEC_T0
- 308 .globl _INT0VEC_IE0
- 309 .globl _EP8FIFOBUF
- 310 .globl _EP6FIFOBUF
- 311 .globl _EP4FIFOBUF
- 312 .globl _EP2FIFOBUF
- 313 .globl _EP1INBUF
- 314 .globl _EP1OUTBUF
- 315 .globl _EP0BUF
- 316 .globl _GPIFABORT
- 317 .globl _GPIFREADYSTAT
- 318 .globl _GPIFREADYCFG
- 319 .globl _XGPIFSGLDATLNOX
- 320 .globl _XGPIFSGLDATLX
- 321 .globl _XGPIFSGLDATH
- 322 .globl _EP8GPIFTRIG
- 323 .globl _EP8GPIFPFSTOP
- 324 .globl _EP8GPIFFLGSEL
- 325 .globl _EP6GPIFTRIG
- 326 .globl _EP6GPIFPFSTOP
- 327 .globl _EP6GPIFFLGSEL
- 328 .globl _EP4GPIFTRIG
- 329 .globl _EP4GPIFPFSTOP
- 330 .globl _EP4GPIFFLGSEL
- 331 .globl _EP2GPIFTRIG
- 332 .globl _EP2GPIFPFSTOP
- 333 .globl _EP2GPIFFLGSEL
- 334 .globl _GPIFTCB0
- 335 .globl _GPIFTCB1
- 336 .globl _GPIFTCB2
- 337 .globl _GPIFTCB3
- 338 .globl _FLOWSTBHPERIOD
- 339 .globl _FLOWSTBEDGE
- 340 .globl _FLOWSTB
- 341 .globl _FLOWHOLDOFF
- 342 .globl _FLOWEQ1CTL
- 343 .globl _FLOWEQ0CTL
- 344 .globl _FLOWLOGIC
- 345 .globl _FLOWSTATE
- 346 .globl _GPIFADRL
- 347 .globl _GPIFADRH
- 348 .globl _GPIFCTLCFG
- 349 .globl _GPIFIDLECTL
- 350 .globl _GPIFIDLECS
- 351 .globl _GPIFWFSELECT
- 352 .globl _wLengthH
- 353 .globl _wLengthL
- 354 .globl _wIndexH
- 355 .globl _wIndexL
- 356 .globl _wValueH
- 357 .globl _wValueL
- 358 .globl _bRequest
- 359 .globl _bmRequestType
- 360 .globl _SETUPDAT
- 361 .globl _SUDPTRCTL
- 362 .globl _SUDPTRL
- 363 .globl _SUDPTRH
- 364 .globl _EP8FIFOBCL
- 365 .globl _EP8FIFOBCH
- 366 .globl _EP6FIFOBCL
- 367 .globl _EP6FIFOBCH
- 368 .globl _EP4FIFOBCL
- 369 .globl _EP4FIFOBCH
- 370 .globl _EP2FIFOBCL
- 371 .globl _EP2FIFOBCH
- 372 .globl _EP8FIFOFLGS
- 373 .globl _EP6FIFOFLGS
- 374 .globl _EP4FIFOFLGS
- 375 .globl _EP2FIFOFLGS
- 376 .globl _EP8CS
- 377 .globl _EP6CS
- 378 .globl _EP4CS
- 379 .globl _EP2CS
- 380 .globl _EPXCS
- 381 .globl _EP1INCS
- 382 .globl _EP1OUTCS
- 383 .globl _EP0CS
- 384 .globl _EP8BCL
- 385 .globl _EP8BCH
- 386 .globl _EP6BCL
- 387 .globl _EP6BCH
- 388 .globl _EP4BCL
- 389 .globl _EP4BCH
- 390 .globl _EP2BCL
- 391 .globl _EP2BCH
- 392 .globl _EP1INBC
- 393 .globl _EP1OUTBC
- 394 .globl _EP0BCL
- 395 .globl _EP0BCH
- 396 .globl _FNADDR
- 397 .globl _MICROFRAME
- 398 .globl _USBFRAMEL
- 399 .globl _USBFRAMEH
- 400 .globl _TOGCTL
- 401 .globl _WAKEUPCS
- 402 .globl _SUSPEND
- 403 .globl _USBCS
- 404 .globl _UDMACRCQUALIFIER
- 405 .globl _UDMACRCL
- 406 .globl _UDMACRCH
- 407 .globl _EXTAUTODAT2
- 408 .globl _XAUTODAT2
- 409 .globl _EXTAUTODAT1
- 410 .globl _XAUTODAT1
- 411 .globl _I2CTL
- 412 .globl _I2DAT
- 413 .globl _I2CS
- 414 .globl _PORTECFG
- 415 .globl _PORTCCFG
- 416 .globl _PORTACFG
- 417 .globl _INTSETUP
- 418 .globl _INT4IVEC
- 419 .globl _INT2IVEC
- 420 .globl _CLRERRCNT
- 421 .globl _ERRCNTLIM
- 422 .globl _USBERRIRQ
- 423 .globl _USBERRIE
- 424 .globl _GPIFIRQ
- 425 .globl _GPIFIE
- 426 .globl _EPIRQ
- 427 .globl _EPIE
- 428 .globl _USBIRQ
- 429 .globl _USBIE
- 430 .globl _NAKIRQ
- 431 .globl _NAKIE
- 432 .globl _IBNIRQ
- 433 .globl _IBNIE
- 434 .globl _EP8FIFOIRQ
- 435 .globl _EP8FIFOIE
- 436 .globl _EP6FIFOIRQ
- 437 .globl _EP6FIFOIE
- 438 .globl _EP4FIFOIRQ
- 439 .globl _EP4FIFOIE
- 440 .globl _EP2FIFOIRQ
- 441 .globl _EP2FIFOIE
- 442 .globl _OUTPKTEND
- 443 .globl _INPKTEND
- 444 .globl _EP8ISOINPKTS
- 445 .globl _EP6ISOINPKTS
- 446 .globl _EP4ISOINPKTS
- 447 .globl _EP2ISOINPKTS
- 448 .globl _EP8FIFOPFL
- 449 .globl _EP8FIFOPFH
- 450 .globl _EP6FIFOPFL
- 451 .globl _EP6FIFOPFH
- 452 .globl _EP4FIFOPFL
- 453 .globl _EP4FIFOPFH
- 454 .globl _EP2FIFOPFL
- 455 .globl _EP2FIFOPFH
- 456 .globl _ECC2B2
- 457 .globl _ECC2B1
- 458 .globl _ECC2B0
- 459 .globl _ECC1B2
- 460 .globl _ECC1B1
- 461 .globl _ECC1B0
- 462 .globl _ECCRESET
- 463 .globl _ECCCFG
- 464 .globl _EP8AUTOINLENL
- 465 .globl _EP8AUTOINLENH
- 466 .globl _EP6AUTOINLENL
- 467 .globl _EP6AUTOINLENH
- 468 .globl _EP4AUTOINLENL
- 469 .globl _EP4AUTOINLENH
- 470 .globl _EP2AUTOINLENL
- 471 .globl _EP2AUTOINLENH
- 472 .globl _EP8FIFOCFG
- 473 .globl _EP6FIFOCFG
- 474 .globl _EP4FIFOCFG
- 475 .globl _EP2FIFOCFG
- 476 .globl _EP8CFG
- 477 .globl _EP6CFG
- 478 .globl _EP4CFG
- 479 .globl _EP2CFG
- 480 .globl _EP1INCFG
- 481 .globl _EP1OUTCFG
- 482 .globl _GPIFHOLDAMOUNT
- 483 .globl _REVCTL
- 484 .globl _REVID
- 485 .globl _FIFOPINPOLAR
- 486 .globl _UART230
- 487 .globl _BPADDRL
- 488 .globl _BPADDRH
- 489 .globl _BREAKPT
- 490 .globl _FIFORESET
- 491 .globl _PINFLAGSCD
- 492 .globl _PINFLAGSAB
- 493 .globl _IFCONFIG
- 494 .globl _CPUCS
- 495 .globl _GPCR2
- 496 .globl _GPIF_WAVE3_DATA
- 497 .globl _GPIF_WAVE2_DATA
- 498 .globl _GPIF_WAVE1_DATA
- 499 .globl _GPIF_WAVE0_DATA
- 500 .globl _GPIF_WAVE_DATA
- 501 .globl _eeprom_write_PARM_3
- 502 .globl _eeprom_write_PARM_2
- 503 .globl _eeprom_read_PARM_3
- 504 .globl _eeprom_read_PARM_2
- 505 .globl _eeprom_select_PARM_2
- 506 ;--------------------------------------------------------
- 507 ; special function registers
- 508 ;--------------------------------------------------------
- 509 .area RSEG (DATA)
- 0080 510 _IOA = 0x0080
- 0081 511 _SP = 0x0081
- 0082 512 _DPL0 = 0x0082
- 0083 513 _DPH0 = 0x0083
- 0084 514 _DPL1 = 0x0084
- 0085 515 _DPH1 = 0x0085
- 0086 516 _DPS = 0x0086
- 0087 517 _PCON = 0x0087
- 0088 518 _TCON = 0x0088
- 0089 519 _TMOD = 0x0089
- 008A 520 _TL0 = 0x008a
- 008B 521 _TL1 = 0x008b
- 008C 522 _TH0 = 0x008c
- 008D 523 _TH1 = 0x008d
- 008E 524 _CKCON = 0x008e
- 0090 525 _IOB = 0x0090
- 0091 526 _EXIF = 0x0091
- 0092 527 _MPAGE = 0x0092
- 0092 528 __XPAGE = 0x0092
- 0098 529 _SCON0 = 0x0098
- 0099 530 _SBUF0 = 0x0099
- 009A 531 _AUTOPTRH1 = 0x009a
- 009B 532 _AUTOPTRL1 = 0x009b
- 009D 533 _AUTOPTRH2 = 0x009d
- 009E 534 _AUTOPTRL2 = 0x009e
- 00A0 535 _IOC = 0x00a0
- 00A1 536 _INT2CLR = 0x00a1
- 00A2 537 _INT4CLR = 0x00a2
- 00A8 538 _IE = 0x00a8
- 00AA 539 _EP2468STAT = 0x00aa
- 00AB 540 _EP24FIFOFLGS = 0x00ab
- 00AC 541 _EP68FIFOFLGS = 0x00ac
- 00AF 542 _AUTOPTRSETUP = 0x00af
- 00B0 543 _IOD = 0x00b0
- 00B1 544 _IOE = 0x00b1
- 00B2 545 _OEA = 0x00b2
- 00B3 546 _OEB = 0x00b3
- 00B4 547 _OEC = 0x00b4
- 00B5 548 _OED = 0x00b5
- 00B6 549 _OEE = 0x00b6
- 00B8 550 _IP = 0x00b8
- 00BA 551 _EP01STAT = 0x00ba
- 00BB 552 _GPIFTRIG = 0x00bb
- 00BD 553 _GPIFSGLDATH = 0x00bd
- 00BE 554 _GPIFSGLDATLX = 0x00be
- 00BF 555 _GPIFSGLDATLNOX = 0x00bf
- 00C0 556 _SCON1 = 0x00c0
- 00C1 557 _SBUF1 = 0x00c1
- 00C8 558 _T2CON = 0x00c8
- 00CA 559 _RCAP2L = 0x00ca
- 00CB 560 _RCAP2H = 0x00cb
- 00CC 561 _TL2 = 0x00cc
- 00CD 562 _TH2 = 0x00cd
- 00D0 563 _PSW = 0x00d0
- 00D8 564 _EICON = 0x00d8
- 00E0 565 _ACC = 0x00e0
- 00E8 566 _EIE = 0x00e8
- 00F0 567 _BREG = 0x00f0
- 00F8 568 _EIP = 0x00f8
- 569 ;--------------------------------------------------------
- 570 ; special function bits
- 571 ;--------------------------------------------------------
- 572 .area RSEG (DATA)
- 0080 573 _IOA0 = 0x0080
- 0081 574 _IOA1 = 0x0081
- 0082 575 _IOA2 = 0x0082
- 0083 576 _IOA3 = 0x0083
- 0084 577 _IOA4 = 0x0084
- 0085 578 _IOA5 = 0x0085
- 0086 579 _IOA6 = 0x0086
- 0087 580 _IOA7 = 0x0087
- 0088 581 _IT0 = 0x0088
- 0089 582 _IE0 = 0x0089
- 008A 583 _IT1 = 0x008a
- 008B 584 _IE1 = 0x008b
- 008C 585 _TR0 = 0x008c
- 008D 586 _TF0 = 0x008d
- 008E 587 _TR1 = 0x008e
- 008F 588 _TF1 = 0x008f
- 0090 589 _IOB0 = 0x0090
- 0091 590 _IOB1 = 0x0091
- 0092 591 _IOB2 = 0x0092
- 0093 592 _IOB3 = 0x0093
- 0094 593 _IOB4 = 0x0094
- 0095 594 _IOB5 = 0x0095
- 0096 595 _IOB6 = 0x0096
- 0097 596 _IOB7 = 0x0097
- 0098 597 _RI_0 = 0x0098
- 0099 598 _TI_0 = 0x0099
- 009A 599 _RB8_0 = 0x009a
- 009B 600 _TB8_0 = 0x009b
- 009C 601 _REN_0 = 0x009c
- 009D 602 _SM2_0 = 0x009d
- 009E 603 _SM1_0 = 0x009e
- 009F 604 _SM0_0 = 0x009f
- 00A0 605 _IOC0 = 0x00a0
- 00A1 606 _IOC1 = 0x00a1
- 00A2 607 _IOC2 = 0x00a2
- 00A3 608 _IOC3 = 0x00a3
- 00A4 609 _IOC4 = 0x00a4
- 00A5 610 _IOC5 = 0x00a5
- 00A6 611 _IOC6 = 0x00a6
- 00A7 612 _IOC7 = 0x00a7
- 00A8 613 _EX0 = 0x00a8
- 00A9 614 _ET0 = 0x00a9
- 00AA 615 _EX1 = 0x00aa
- 00AB 616 _ET1 = 0x00ab
- 00AC 617 _ES0 = 0x00ac
- 00AD 618 _ET2 = 0x00ad
- 00AE 619 _ES1 = 0x00ae
- 00AF 620 _EA = 0x00af
- 00B0 621 _IOD0 = 0x00b0
- 00B1 622 _IOD1 = 0x00b1
- 00B2 623 _IOD2 = 0x00b2
- 00B3 624 _IOD3 = 0x00b3
- 00B4 625 _IOD4 = 0x00b4
- 00B5 626 _IOD5 = 0x00b5
- 00B6 627 _IOD6 = 0x00b6
- 00B7 628 _IOD7 = 0x00b7
- 00B8 629 _PX0 = 0x00b8
- 00B9 630 _PT0 = 0x00b9
- 00BA 631 _PX1 = 0x00ba
- 00BB 632 _PT1 = 0x00bb
- 00BC 633 _PS0 = 0x00bc
- 00BD 634 _PT2 = 0x00bd
- 00BE 635 _PS1 = 0x00be
- 00C0 636 _RI_1 = 0x00c0
- 00C1 637 _TI_1 = 0x00c1
- 00C2 638 _RB8_1 = 0x00c2
- 00C3 639 _TB8_1 = 0x00c3
- 00C4 640 _REN_1 = 0x00c4
- 00C5 641 _SM2_1 = 0x00c5
- 00C6 642 _SM1_1 = 0x00c6
- 00C7 643 _SM0_1 = 0x00c7
- 00C8 644 _CPRL2 = 0x00c8
- 00C9 645 _CT2 = 0x00c9
- 00CA 646 _TR2 = 0x00ca
- 00CB 647 _EXEN2 = 0x00cb
- 00CC 648 _TCLK = 0x00cc
- 00CD 649 _RCLK = 0x00cd
- 00CE 650 _EXF2 = 0x00ce
- 00CF 651 _TF2 = 0x00cf
- 00D0 652 _PF = 0x00d0
- 00D1 653 _F1 = 0x00d1
- 00D2 654 _OV = 0x00d2
- 00D3 655 _RS0 = 0x00d3
- 00D4 656 _RS1 = 0x00d4
- 00D5 657 _F0 = 0x00d5
- 00D6 658 _AC = 0x00d6
- 00D7 659 _CY = 0x00d7
- 00DB 660 _INT6 = 0x00db
- 00DC 661 _RESI = 0x00dc
- 00DD 662 _ERESI = 0x00dd
- 00DF 663 _SMOD1 = 0x00df
- 00E0 664 _ACC0 = 0x00e0
- 00E1 665 _ACC1 = 0x00e1
- 00E2 666 _ACC2 = 0x00e2
- 00E3 667 _ACC3 = 0x00e3
- 00E4 668 _ACC4 = 0x00e4
- 00E5 669 _ACC5 = 0x00e5
- 00E6 670 _ACC6 = 0x00e6
- 00E7 671 _ACC7 = 0x00e7
- 00E8 672 _EUSB = 0x00e8
- 00E9 673 _EI2C = 0x00e9
- 00EA 674 _EIEX4 = 0x00ea
- 00EB 675 _EIEX5 = 0x00eb
- 00EC 676 _EIEX6 = 0x00ec
- 00F0 677 _BREG0 = 0x00f0
- 00F1 678 _BREG1 = 0x00f1
- 00F2 679 _BREG2 = 0x00f2
- 00F3 680 _BREG3 = 0x00f3
- 00F4 681 _BREG4 = 0x00f4
- 00F5 682 _BREG5 = 0x00f5
- 00F6 683 _BREG6 = 0x00f6
- 00F7 684 _BREG7 = 0x00f7
- 00F8 685 _PUSB = 0x00f8
- 00F9 686 _PI2C = 0x00f9
- 00FA 687 _EIPX4 = 0x00fa
- 00FB 688 _EIPX5 = 0x00fb
- 00FC 689 _EIPX6 = 0x00fc
- 690 ;--------------------------------------------------------
- 691 ; overlayable register banks
- 692 ;--------------------------------------------------------
- 693 .area REG_BANK_0 (REL,OVR,DATA)
- 0000 694 .ds 8
- 695 ;--------------------------------------------------------
- 696 ; overlayable bit register bank
- 697 ;--------------------------------------------------------
- 698 .area BIT_BANK (REL,OVR,DATA)
- 0000 699 bits:
- 0000 700 .ds 1
- 8000 701 b0 = bits[0]
- 8100 702 b1 = bits[1]
- 8200 703 b2 = bits[2]
- 8300 704 b3 = bits[3]
- 8400 705 b4 = bits[4]
- 8500 706 b5 = bits[5]
- 8600 707 b6 = bits[6]
- 8700 708 b7 = bits[7]
- 709 ;--------------------------------------------------------
- 710 ; internal ram data
- 711 ;--------------------------------------------------------
- 712 .area DSEG (DATA)
- 0000 713 _eeprom_select_PARM_2:
- 0000 714 .ds 1
- 0001 715 _eeprom_read_PARM_2:
- 0001 716 .ds 2
- 0003 717 _eeprom_read_PARM_3:
- 0003 718 .ds 1
- 0004 719 _eeprom_write_PARM_2:
- 0004 720 .ds 2
- 0006 721 _eeprom_write_PARM_3:
- 0006 722 .ds 1
- 723 ;--------------------------------------------------------
- 724 ; overlayable items in internal ram
- 725 ;--------------------------------------------------------
- 726 .area OSEG (OVR,DATA)
- 727 .area OSEG (OVR,DATA)
- 728 .area OSEG (OVR,DATA)
- 729 .area OSEG (OVR,DATA)
- 730 .area OSEG (OVR,DATA)
- 731 .area OSEG (OVR,DATA)
- 732 .area OSEG (OVR,DATA)
- 733 .area OSEG (OVR,DATA)
- 734 .area OSEG (OVR,DATA)
- 0000 735 _sendStringDescriptor_PARM_2::
- 0000 736 .ds 1
- 0001 737 _sendStringDescriptor_PARM_3::
- 0001 738 .ds 1
- 739 ;--------------------------------------------------------
- 740 ; Stack segment in internal ram
- 741 ;--------------------------------------------------------
- 742 .area SSEG (DATA)
- 0000 743 __start__stack:
- 0000 744 .ds 1
- 745
- 746 ;--------------------------------------------------------
- 747 ; indirectly addressable internal ram data
- 748 ;--------------------------------------------------------
- 749 .area ISEG (DATA)
- 750 ;--------------------------------------------------------
- 751 ; absolute internal ram data
- 752 ;--------------------------------------------------------
- 753 .area IABS (ABS,DATA)
- 754 .area IABS (ABS,DATA)
- 755 ;--------------------------------------------------------
- 756 ; bit data
- 757 ;--------------------------------------------------------
- 758 .area BSEG (BIT)
- 759 ;--------------------------------------------------------
- 760 ; paged external ram data
- 761 ;--------------------------------------------------------
- 762 .area PSEG (PAG,XDATA)
- 763 ;--------------------------------------------------------
- 764 ; external ram data
- 765 ;--------------------------------------------------------
- 766 .area XSEG (XDATA)
- E400 767 _GPIF_WAVE_DATA = 0xe400
- E400 768 _GPIF_WAVE0_DATA = 0xe400
- E420 769 _GPIF_WAVE1_DATA = 0xe420
- E440 770 _GPIF_WAVE2_DATA = 0xe440
- E460 771 _GPIF_WAVE3_DATA = 0xe460
- E50D 772 _GPCR2 = 0xe50d
- E600 773 _CPUCS = 0xe600
- E601 774 _IFCONFIG = 0xe601
- E602 775 _PINFLAGSAB = 0xe602
- E603 776 _PINFLAGSCD = 0xe603
- E604 777 _FIFORESET = 0xe604
- E605 778 _BREAKPT = 0xe605
- E606 779 _BPADDRH = 0xe606
- E607 780 _BPADDRL = 0xe607
- E608 781 _UART230 = 0xe608
- E609 782 _FIFOPINPOLAR = 0xe609
- E60A 783 _REVID = 0xe60a
- E60B 784 _REVCTL = 0xe60b
- E60C 785 _GPIFHOLDAMOUNT = 0xe60c
- E610 786 _EP1OUTCFG = 0xe610
- E611 787 _EP1INCFG = 0xe611
- E612 788 _EP2CFG = 0xe612
- E613 789 _EP4CFG = 0xe613
- E614 790 _EP6CFG = 0xe614
- E615 791 _EP8CFG = 0xe615
- E618 792 _EP2FIFOCFG = 0xe618
- E619 793 _EP4FIFOCFG = 0xe619
- E61A 794 _EP6FIFOCFG = 0xe61a
- E61B 795 _EP8FIFOCFG = 0xe61b
- E620 796 _EP2AUTOINLENH = 0xe620
- E621 797 _EP2AUTOINLENL = 0xe621
- E622 798 _EP4AUTOINLENH = 0xe622
- E623 799 _EP4AUTOINLENL = 0xe623
- E624 800 _EP6AUTOINLENH = 0xe624
- E625 801 _EP6AUTOINLENL = 0xe625
- E626 802 _EP8AUTOINLENH = 0xe626
- E627 803 _EP8AUTOINLENL = 0xe627
- E628 804 _ECCCFG = 0xe628
- E629 805 _ECCRESET = 0xe629
- E62A 806 _ECC1B0 = 0xe62a
- E62B 807 _ECC1B1 = 0xe62b
- E62C 808 _ECC1B2 = 0xe62c
- E62D 809 _ECC2B0 = 0xe62d
- E62E 810 _ECC2B1 = 0xe62e
- E62F 811 _ECC2B2 = 0xe62f
- E630 812 _EP2FIFOPFH = 0xe630
- E631 813 _EP2FIFOPFL = 0xe631
- E632 814 _EP4FIFOPFH = 0xe632
- E633 815 _EP4FIFOPFL = 0xe633
- E634 816 _EP6FIFOPFH = 0xe634
- E635 817 _EP6FIFOPFL = 0xe635
- E636 818 _EP8FIFOPFH = 0xe636
- E637 819 _EP8FIFOPFL = 0xe637
- E640 820 _EP2ISOINPKTS = 0xe640
- E641 821 _EP4ISOINPKTS = 0xe641
- E642 822 _EP6ISOINPKTS = 0xe642
- E643 823 _EP8ISOINPKTS = 0xe643
- E648 824 _INPKTEND = 0xe648
- E649 825 _OUTPKTEND = 0xe649
- E650 826 _EP2FIFOIE = 0xe650
- E651 827 _EP2FIFOIRQ = 0xe651
- E652 828 _EP4FIFOIE = 0xe652
- E653 829 _EP4FIFOIRQ = 0xe653
- E654 830 _EP6FIFOIE = 0xe654
- E655 831 _EP6FIFOIRQ = 0xe655
- E656 832 _EP8FIFOIE = 0xe656
- E657 833 _EP8FIFOIRQ = 0xe657
- E658 834 _IBNIE = 0xe658
- E659 835 _IBNIRQ = 0xe659
- E65A 836 _NAKIE = 0xe65a
- E65B 837 _NAKIRQ = 0xe65b
- E65C 838 _USBIE = 0xe65c
- E65D 839 _USBIRQ = 0xe65d
- E65E 840 _EPIE = 0xe65e
- E65F 841 _EPIRQ = 0xe65f
- E660 842 _GPIFIE = 0xe660
- E661 843 _GPIFIRQ = 0xe661
- E662 844 _USBERRIE = 0xe662
- E663 845 _USBERRIRQ = 0xe663
- E664 846 _ERRCNTLIM = 0xe664
- E665 847 _CLRERRCNT = 0xe665
- E666 848 _INT2IVEC = 0xe666
- E667 849 _INT4IVEC = 0xe667
- E668 850 _INTSETUP = 0xe668
- E670 851 _PORTACFG = 0xe670
- E671 852 _PORTCCFG = 0xe671
- E672 853 _PORTECFG = 0xe672
- E678 854 _I2CS = 0xe678
- E679 855 _I2DAT = 0xe679
- E67A 856 _I2CTL = 0xe67a
- E67B 857 _XAUTODAT1 = 0xe67b
- E67B 858 _EXTAUTODAT1 = 0xe67b
- E67C 859 _XAUTODAT2 = 0xe67c
- E67C 860 _EXTAUTODAT2 = 0xe67c
- E67D 861 _UDMACRCH = 0xe67d
- E67E 862 _UDMACRCL = 0xe67e
- E67F 863 _UDMACRCQUALIFIER = 0xe67f
- E680 864 _USBCS = 0xe680
- E681 865 _SUSPEND = 0xe681
- E682 866 _WAKEUPCS = 0xe682
- E683 867 _TOGCTL = 0xe683
- E684 868 _USBFRAMEH = 0xe684
- E685 869 _USBFRAMEL = 0xe685
- E686 870 _MICROFRAME = 0xe686
- E687 871 _FNADDR = 0xe687
- E68A 872 _EP0BCH = 0xe68a
- E68B 873 _EP0BCL = 0xe68b
- E68D 874 _EP1OUTBC = 0xe68d
- E68F 875 _EP1INBC = 0xe68f
- E690 876 _EP2BCH = 0xe690
- E691 877 _EP2BCL = 0xe691
- E694 878 _EP4BCH = 0xe694
- E695 879 _EP4BCL = 0xe695
- E698 880 _EP6BCH = 0xe698
- E699 881 _EP6BCL = 0xe699
- E69C 882 _EP8BCH = 0xe69c
- E69D 883 _EP8BCL = 0xe69d
- E6A0 884 _EP0CS = 0xe6a0
- E6A1 885 _EP1OUTCS = 0xe6a1
- E6A2 886 _EP1INCS = 0xe6a2
- E6A3 887 _EPXCS = 0xe6a3
- E6A3 888 _EP2CS = 0xe6a3
- E6A4 889 _EP4CS = 0xe6a4
- E6A5 890 _EP6CS = 0xe6a5
- E6A6 891 _EP8CS = 0xe6a6
- E6A7 892 _EP2FIFOFLGS = 0xe6a7
- E6A8 893 _EP4FIFOFLGS = 0xe6a8
- E6A9 894 _EP6FIFOFLGS = 0xe6a9
- E6AA 895 _EP8FIFOFLGS = 0xe6aa
- E6AB 896 _EP2FIFOBCH = 0xe6ab
- E6AC 897 _EP2FIFOBCL = 0xe6ac
- E6AD 898 _EP4FIFOBCH = 0xe6ad
- E6AE 899 _EP4FIFOBCL = 0xe6ae
- E6AF 900 _EP6FIFOBCH = 0xe6af
- E6B0 901 _EP6FIFOBCL = 0xe6b0
- E6B1 902 _EP8FIFOBCH = 0xe6b1
- E6B2 903 _EP8FIFOBCL = 0xe6b2
- E6B3 904 _SUDPTRH = 0xe6b3
- E6B4 905 _SUDPTRL = 0xe6b4
- E6B5 906 _SUDPTRCTL = 0xe6b5
- E6B8 907 _SETUPDAT = 0xe6b8
- E6B8 908 _bmRequestType = 0xe6b8
- E6B9 909 _bRequest = 0xe6b9
- E6BA 910 _wValueL = 0xe6ba
- E6BB 911 _wValueH = 0xe6bb
- E6BC 912 _wIndexL = 0xe6bc
- E6BD 913 _wIndexH = 0xe6bd
- E6BE 914 _wLengthL = 0xe6be
- E6BF 915 _wLengthH = 0xe6bf
- E6C0 916 _GPIFWFSELECT = 0xe6c0
- E6C1 917 _GPIFIDLECS = 0xe6c1
- E6C2 918 _GPIFIDLECTL = 0xe6c2
- E6C3 919 _GPIFCTLCFG = 0xe6c3
- E6C4 920 _GPIFADRH = 0xe6c4
- E6C5 921 _GPIFADRL = 0xe6c5
- E6C6 922 _FLOWSTATE = 0xe6c6
- E6C7 923 _FLOWLOGIC = 0xe6c7
- E6C8 924 _FLOWEQ0CTL = 0xe6c8
- E6C9 925 _FLOWEQ1CTL = 0xe6c9
- E6CA 926 _FLOWHOLDOFF = 0xe6ca
- E6CB 927 _FLOWSTB = 0xe6cb
- E6CC 928 _FLOWSTBEDGE = 0xe6cc
- E6CD 929 _FLOWSTBHPERIOD = 0xe6cd
- E6CE 930 _GPIFTCB3 = 0xe6ce
- E6CF 931 _GPIFTCB2 = 0xe6cf
- E6D0 932 _GPIFTCB1 = 0xe6d0
- E6D1 933 _GPIFTCB0 = 0xe6d1
- E6D2 934 _EP2GPIFFLGSEL = 0xe6d2
- E6D3 935 _EP2GPIFPFSTOP = 0xe6d3
- E6D4 936 _EP2GPIFTRIG = 0xe6d4
- E6DA 937 _EP4GPIFFLGSEL = 0xe6da
- E6DB 938 _EP4GPIFPFSTOP = 0xe6db
- E6DC 939 _EP4GPIFTRIG = 0xe6dc
- E6E2 940 _EP6GPIFFLGSEL = 0xe6e2
- E6E3 941 _EP6GPIFPFSTOP = 0xe6e3
- E6E4 942 _EP6GPIFTRIG = 0xe6e4
- E6EA 943 _EP8GPIFFLGSEL = 0xe6ea
- E6EB 944 _EP8GPIFPFSTOP = 0xe6eb
- E6EC 945 _EP8GPIFTRIG = 0xe6ec
- E6F0 946 _XGPIFSGLDATH = 0xe6f0
- E6F1 947 _XGPIFSGLDATLX = 0xe6f1
- E6F2 948 _XGPIFSGLDATLNOX = 0xe6f2
- E6F3 949 _GPIFREADYCFG = 0xe6f3
- E6F4 950 _GPIFREADYSTAT = 0xe6f4
- E6F5 951 _GPIFABORT = 0xe6f5
- E740 952 _EP0BUF = 0xe740
- E780 953 _EP1OUTBUF = 0xe780
- E7C0 954 _EP1INBUF = 0xe7c0
- F000 955 _EP2FIFOBUF = 0xf000
- F400 956 _EP4FIFOBUF = 0xf400
- F800 957 _EP6FIFOBUF = 0xf800
- FC00 958 _EP8FIFOBUF = 0xfc00
- 0003 959 _INT0VEC_IE0 = 0x0003
- 000B 960 _INT1VEC_T0 = 0x000b
- 0013 961 _INT2VEC_IE1 = 0x0013
- 001B 962 _INT3VEC_T1 = 0x001b
- 0023 963 _INT4VEC_USART0 = 0x0023
- 002B 964 _INT5VEC_T2 = 0x002b
- 0033 965 _INT6VEC_RESUME = 0x0033
- 003B 966 _INT7VEC_USART1 = 0x003b
- 0043 967 _INT8VEC_USB = 0x0043
- 004B 968 _INT9VEC_I2C = 0x004b
- 0053 969 _INT10VEC_GPIF = 0x0053
- 005B 970 _INT11VEC_IE5 = 0x005b
- 0063 971 _INT12VEC_IE6 = 0x0063
- 0100 972 _INTVEC_SUDAV = 0x0100
- 0104 973 _INTVEC_SOF = 0x0104
- 0108 974 _INTVEC_SUTOK = 0x0108
- 010C 975 _INTVEC_SUSPEND = 0x010c
- 0110 976 _INTVEC_USBRESET = 0x0110
- 0114 977 _INTVEC_HISPEED = 0x0114
- 0118 978 _INTVEC_EP0ACK = 0x0118
- 0120 979 _INTVEC_EP0IN = 0x0120
- 0124 980 _INTVEC_EP0OUT = 0x0124
- 0128 981 _INTVEC_EP1IN = 0x0128
- 012C 982 _INTVEC_EP1OUT = 0x012c
- 0130 983 _INTVEC_EP2 = 0x0130
- 0134 984 _INTVEC_EP4 = 0x0134
- 0138 985 _INTVEC_EP6 = 0x0138
- 013C 986 _INTVEC_EP8 = 0x013c
- 0140 987 _INTVEC_IBN = 0x0140
- 0148 988 _INTVEC_EP0PING = 0x0148
- 014C 989 _INTVEC_EP1PING = 0x014c
- 0150 990 _INTVEC_EP2PING = 0x0150
- 0154 991 _INTVEC_EP4PING = 0x0154
- 0158 992 _INTVEC_EP6PING = 0x0158
- 015C 993 _INTVEC_EP8PING = 0x015c
- 0160 994 _INTVEC_ERRLIMIT = 0x0160
- 0170 995 _INTVEC_EP2ISOERR = 0x0170
- 0174 996 _INTVEC_EP4ISOERR = 0x0174
- 0178 997 _INTVEC_EP6ISOERR = 0x0178
- 017C 998 _INTVEC_EP8ISOERR = 0x017c
- 0180 999 _INTVEC_EP2PF = 0x0180
- 0184 1000 _INTVEC_EP4PF = 0x0184
- 0188 1001 _INTVEC_EP6PF = 0x0188
- 018C 1002 _INTVEC_EP8PF = 0x018c
- 0190 1003 _INTVEC_EP2EF = 0x0190
- 0194 1004 _INTVEC_EP4EF = 0x0194
- 0198 1005 _INTVEC_EP6EF = 0x0198
- 019C 1006 _INTVEC_EP8EF = 0x019c
- 01A0 1007 _INTVEC_EP2FF = 0x01a0
- 01A8 1008 _INTVEC_EP6FF = 0x01a8
- 01AC 1009 _INTVEC_EP8FF = 0x01ac
- 01B0 1010 _INTVEC_GPIFDONE = 0x01b0
- 01B4 1011 _INTVEC_GPIFWF = 0x01b4
- 0000 1012 _eeprom_addr::
- 0000 1013 .ds 2
- 0002 1014 _eeprom_write_bytes::
- 0002 1015 .ds 2
- 0004 1016 _eeprom_write_checksum::
- 0004 1017 .ds 1
- 0005 1018 _debug_counter::
- 0005 1019 .ds 2
- 0007 1020 _debug_stack_size::
- 0007 1021 .ds 1
- 0008 1022 _debug_msg_size::
- 0008 1023 .ds 1
- 0009 1024 _debug_stack::
- 0009 1025 .ds 96
- 0069 1026 _debug_stack_ptr::
- 0069 1027 .ds 2
- 006B 1028 _debug_msg_buf::
- 006B 1029 .ds 3
- 006E 1030 _debug_read_addr::
- 006E 1031 .ds 2
- 006C 1032 _ZTEX_DESCRIPTOR = 0x006c
- 006D 1033 _ZTEX_DESCRIPTOR_VERSION = 0x006d
- 006E 1034 _ZTEXID = 0x006e
- 0072 1035 _PRODUCT_ID = 0x0072
- 0076 1036 _FW_VERSION = 0x0076
- 0077 1037 _INTERFACE_VERSION = 0x0077
- 0078 1038 _INTERFACE_CAPABILITIES = 0x0078
- 007E 1039 _MODULE_RESERVED = 0x007e
- 008A 1040 _SN_STRING = 0x008a
- 1041 ;--------------------------------------------------------
- 1042 ; absolute external ram data
- 1043 ;--------------------------------------------------------
- 1044 .area XABS (ABS,XDATA)
- 1045 ;--------------------------------------------------------
- 1046 ; external initialized ram data
- 1047 ;--------------------------------------------------------
- 1048 .area XISEG (XDATA)
- 0000 1049 _ep0_payload_remaining::
- 0000 1050 .ds 2
- 0002 1051 _ep0_payload_transfer::
- 0002 1052 .ds 1
- 0003 1053 _ep0_prev_setup_request::
- 0003 1054 .ds 1
- 0004 1055 _ep0_vendor_cmd_setup::
- 0004 1056 .ds 1
- 0005 1057 _ISOFRAME_COUNTER::
- 0005 1058 .ds 8
- 1059 .area HOME (CODE)
- 1060 .area GSINIT0 (CODE)
- 1061 .area GSINIT1 (CODE)
- 1062 .area GSINIT2 (CODE)
- 1063 .area GSINIT3 (CODE)
- 1064 .area GSINIT4 (CODE)
- 1065 .area GSINIT5 (CODE)
- 1066 .area GSINIT (CODE)
- 1067 .area GSFINAL (CODE)
- 1068 .area CSEG (CODE)
- 1069 ;--------------------------------------------------------
- 1070 ; interrupt vector
- 1071 ;--------------------------------------------------------
- 1072 .area HOME (CODE)
- 0000 1073 __interrupt_vect:
- 0000 02s00r00 1074 ljmp __sdcc_gsinit_startup
- 1075 ;--------------------------------------------------------
- 1076 ; global & static initialisations
- 1077 ;--------------------------------------------------------
- 1078 .area HOME (CODE)
- 1079 .area GSINIT (CODE)
- 1080 .area GSFINAL (CODE)
- 1081 .area GSINIT (CODE)
- 1082 .globl __sdcc_gsinit_startup
- 1083 .globl __sdcc_program_startup
- 1084 .globl __start__stack
- 1085 .globl __mcs51_genXINIT
- 1086 .globl __mcs51_genXRAMCLEAR
- 1087 .globl __mcs51_genRAMCLEAR
- 1088 .area GSFINAL (CODE)
- 0000 02s00r03 1089 ljmp __sdcc_program_startup
- 1090 ;--------------------------------------------------------
- 1091 ; Home
- 1092 ;--------------------------------------------------------
- 1093 .area HOME (CODE)
- 1094 .area HOME (CODE)
- 0003 1095 __sdcc_program_startup:
- 0003 12s0DrD2 1096 lcall _main
- 1097 ; return from main will lock up
- 0006 80 FE 1098 sjmp .
- 1099 ;--------------------------------------------------------
- 1100 ; code
- 1101 ;--------------------------------------------------------
- 1102 .area CSEG (CODE)
- 1103 ;------------------------------------------------------------
- 1104 ;Allocation info for local variables in function 'abscode_intvec'
- 1105 ;------------------------------------------------------------
- 1106 ;------------------------------------------------------------
- 1107 ; ../../../include/ezintavecs.h:92: void abscode_intvec() _naked
- 1108 ; -----------------------------------------
- 1109 ; function abscode_intvec
- 1110 ; -----------------------------------------
- 0000 1111 _abscode_intvec:
- 1112 ; naked function: no prologue.
- 1113 ; ../../../include/ezintavecs.h:317: ERROR: no line number 317 in file ../../../include/ezintavecs.h
- 1114
- 1115 .area ABSCODE (ABS,CODE)
- 0000 1116 .org 0x0000
- 0000 1117 ENTRY:
- 0000 02 02 00 1118 ljmp #0x0200
- 1119 ; # 94 "../../../include/ezintavecs.h"
- 0003 1120 .org 0x0003
- 1121 ; # 34 "../../../include/ezintavecs.h"
- 0003 32 1122 reti
- 1123 ; # 94 "../../../include/ezintavecs.h"
- 000B 1124 .org 0x000b
- 1125 ; # 35 "../../../include/ezintavecs.h"
- 000B 32 1126 reti
- 1127 ; # 94 "../../../include/ezintavecs.h"
- 0013 1128 .org 0x0013
- 1129 ; # 36 "../../../include/ezintavecs.h"
- 0013 32 1130 reti
- 1131 ; # 94 "../../../include/ezintavecs.h"
- 001B 1132 .org 0x001b
- 1133 ; # 37 "../../../include/ezintavecs.h"
- 001B 32 1134 reti
- 1135 ; # 94 "../../../include/ezintavecs.h"
- 0023 1136 .org 0x0023
- 1137 ; # 38 "../../../include/ezintavecs.h"
- 0023 32 1138 reti
- 1139 ; # 94 "../../../include/ezintavecs.h"
- 002B 1140 .org 0x002b
- 1141 ; # 39 "../../../include/ezintavecs.h"
- 002B 32 1142 reti
- 1143 ; # 94 "../../../include/ezintavecs.h"
- 0033 1144 .org 0x0033
- 1145 ; # 40 "../../../include/ezintavecs.h"
- 0033 32 1146 reti
- 1147 ; # 94 "../../../include/ezintavecs.h"
- 003B 1148 .org 0x003b
- 1149 ; # 41 "../../../include/ezintavecs.h"
- 003B 32 1150 reti
- 1151 ; # 94 "../../../include/ezintavecs.h"
- 0043 1152 .org 0x0043
- 1153 ; # 42 "../../../include/ezintavecs.h"
- 0043 32 1154 reti
- 1155 ; # 94 "../../../include/ezintavecs.h"
- 004B 1156 .org 0x004b
- 1157 ; # 43 "../../../include/ezintavecs.h"
- 004B 32 1158 reti
- 1159 ; # 94 "../../../include/ezintavecs.h"
- 0053 1160 .org 0x0053
- 1161 ; # 44 "../../../include/ezintavecs.h"
- 0053 32 1162 reti
- 1163 ; # 94 "../../../include/ezintavecs.h"
- 005B 1164 .org 0x005b
- 1165 ; # 45 "../../../include/ezintavecs.h"
- 005B 32 1166 reti
- 1167 ; # 94 "../../../include/ezintavecs.h"
- 0063 1168 .org 0x0063
- 1169 ; # 46 "../../../include/ezintavecs.h"
- 0063 32 1170 reti
- 1171 ; # 94 "../../../include/ezintavecs.h"
- 0100 1172 .org 0x0100
- 1173 ; # 47 "../../../include/ezintavecs.h"
- 0100 32 1174 reti
- 1175 ; # 94 "../../../include/ezintavecs.h"
- 0104 1176 .org 0x0104
- 1177 ; # 48 "../../../include/ezintavecs.h"
- 0104 32 1178 reti
- 1179 ; # 94 "../../../include/ezintavecs.h"
- 0108 1180 .org 0x0108
- 1181 ; # 49 "../../../include/ezintavecs.h"
- 0108 32 1182 reti
- 1183 ; # 94 "../../../include/ezintavecs.h"
- 010C 1184 .org 0x010C
- 1185 ; # 50 "../../../include/ezintavecs.h"
- 010C 32 1186 reti
- 1187 ; # 94 "../../../include/ezintavecs.h"
- 0110 1188 .org 0x0110
- 1189 ; # 51 "../../../include/ezintavecs.h"
- 0110 32 1190 reti
- 1191 ; # 94 "../../../include/ezintavecs.h"
- 0114 1192 .org 0x0114
- 1193 ; # 52 "../../../include/ezintavecs.h"
- 0114 32 1194 reti
- 1195 ; # 94 "../../../include/ezintavecs.h"
- 0118 1196 .org 0x0118
- 1197 ; # 53 "../../../include/ezintavecs.h"
- 0118 32 1198 reti
- 1199 ; # 94 "../../../include/ezintavecs.h"
- 0120 1200 .org 0x0120
- 1201 ; # 54 "../../../include/ezintavecs.h"
- 0120 32 1202 reti
- 1203 ; # 94 "../../../include/ezintavecs.h"
- 0124 1204 .org 0x0124
- 1205 ; # 55 "../../../include/ezintavecs.h"
- 0124 32 1206 reti
- 1207 ; # 94 "../../../include/ezintavecs.h"
- 0128 1208 .org 0x0128
- 1209 ; # 56 "../../../include/ezintavecs.h"
- 0128 32 1210 reti
- 1211 ; # 94 "../../../include/ezintavecs.h"
- 012C 1212 .org 0x012C
- 1213 ; # 57 "../../../include/ezintavecs.h"
- 012C 32 1214 reti
- 1215 ; # 94 "../../../include/ezintavecs.h"
- 0130 1216 .org 0x0130
- 1217 ; # 58 "../../../include/ezintavecs.h"
- 0130 32 1218 reti
- 1219 ; # 94 "../../../include/ezintavecs.h"
- 0134 1220 .org 0x0134
- 1221 ; # 59 "../../../include/ezintavecs.h"
- 0134 32 1222 reti
- 1223 ; # 94 "../../../include/ezintavecs.h"
- 0138 1224 .org 0x0138
- 1225 ; # 60 "../../../include/ezintavecs.h"
- 0138 32 1226 reti
- 1227 ; # 94 "../../../include/ezintavecs.h"
- 013C 1228 .org 0x013C
- 1229 ; # 61 "../../../include/ezintavecs.h"
- 013C 32 1230 reti
- 1231 ; # 94 "../../../include/ezintavecs.h"
- 0140 1232 .org 0x0140
- 1233 ; # 62 "../../../include/ezintavecs.h"
- 0140 32 1234 reti
- 1235 ; # 94 "../../../include/ezintavecs.h"
- 0148 1236 .org 0x0148
- 1237 ; # 63 "../../../include/ezintavecs.h"
- 0148 32 1238 reti
- 1239 ; # 94 "../../../include/ezintavecs.h"
- 014C 1240 .org 0x014C
- 1241 ; # 64 "../../../include/ezintavecs.h"
- 014C 32 1242 reti
- 1243 ; # 94 "../../../include/ezintavecs.h"
- 0150 1244 .org 0x0150
- 1245 ; # 65 "../../../include/ezintavecs.h"
- 0150 32 1246 reti
- 1247 ; # 94 "../../../include/ezintavecs.h"
- 0154 1248 .org 0x0154
- 1249 ; # 66 "../../../include/ezintavecs.h"
- 0154 32 1250 reti
- 1251 ; # 94 "../../../include/ezintavecs.h"
- 0158 1252 .org 0x0158
- 1253 ; # 67 "../../../include/ezintavecs.h"
- 0158 32 1254 reti
- 1255 ; # 94 "../../../include/ezintavecs.h"
- 015C 1256 .org 0x015C
- 1257 ; # 68 "../../../include/ezintavecs.h"
- 015C 32 1258 reti
- 1259 ; # 94 "../../../include/ezintavecs.h"
- 0160 1260 .org 0x0160
- 1261 ; # 69 "../../../include/ezintavecs.h"
- 0160 32 1262 reti
- 1263 ; # 94 "../../../include/ezintavecs.h"
- 0170 1264 .org 0x0170
- 1265 ; # 70 "../../../include/ezintavecs.h"
- 0170 32 1266 reti
- 1267 ; # 94 "../../../include/ezintavecs.h"
- 0174 1268 .org 0x0174
- 1269 ; # 71 "../../../include/ezintavecs.h"
- 0174 32 1270 reti
- 1271 ; # 94 "../../../include/ezintavecs.h"
- 0178 1272 .org 0x0178
- 1273 ; # 72 "../../../include/ezintavecs.h"
- 0178 32 1274 reti
- 1275 ; # 94 "../../../include/ezintavecs.h"
- 017C 1276 .org 0x017C
- 1277 ; # 73 "../../../include/ezintavecs.h"
- 017C 32 1278 reti
- 1279 ; # 94 "../../../include/ezintavecs.h"
- 0180 1280 .org 0x0180
- 1281 ; # 74 "../../../include/ezintavecs.h"
- 0180 32 1282 reti
- 1283 ; # 94 "../../../include/ezintavecs.h"
- 0184 1284 .org 0x0184
- 1285 ; # 75 "../../../include/ezintavecs.h"
- 0184 32 1286 reti
- 1287 ; # 94 "../../../include/ezintavecs.h"
- 0188 1288 .org 0x0188
- 1289 ; # 76 "../../../include/ezintavecs.h"
- 0188 32 1290 reti
- 1291 ; # 94 "../../../include/ezintavecs.h"
- 018C 1292 .org 0x018C
- 1293 ; # 77 "../../../include/ezintavecs.h"
- 018C 32 1294 reti
- 1295 ; # 94 "../../../include/ezintavecs.h"
- 0190 1296 .org 0x0190
- 1297 ; # 78 "../../../include/ezintavecs.h"
- 0190 32 1298 reti
- 1299 ; # 94 "../../../include/ezintavecs.h"
- 0194 1300 .org 0x0194
- 1301 ; # 79 "../../../include/ezintavecs.h"
- 0194 32 1302 reti
- 1303 ; # 94 "../../../include/ezintavecs.h"
- 0198 1304 .org 0x0198
- 1305 ; # 80 "../../../include/ezintavecs.h"
- 0198 32 1306 reti
- 1307 ; # 94 "../../../include/ezintavecs.h"
- 019C 1308 .org 0x019C
- 1309 ; # 81 "../../../include/ezintavecs.h"
- 019C 32 1310 reti
- 1311 ; # 94 "../../../include/ezintavecs.h"
- 01A0 1312 .org 0x01A0
- 1313 ; # 82 "../../../include/ezintavecs.h"
- 01A0 32 1314 reti
- 1315 ; # 94 "../../../include/ezintavecs.h"
- 01A8 1316 .org 0x01A8
- 1317 ; # 83 "../../../include/ezintavecs.h"
- 01A8 32 1318 reti
- 1319 ; # 94 "../../../include/ezintavecs.h"
- 01AC 1320 .org 0x01AC
- 1321 ; # 84 "../../../include/ezintavecs.h"
- 01AC 32 1322 reti
- 1323 ; # 94 "../../../include/ezintavecs.h"
- 01B0 1324 .org 0x01B0
- 1325 ; # 85 "../../../include/ezintavecs.h"
- 01B0 32 1326 reti
- 1327 ; # 94 "../../../include/ezintavecs.h"
- 01B4 1328 .org 0x01B4
- 1329 ; # 101 "../../../include/ezintavecs.h"
- 01B4 32 1330 reti
- 01B8 1331 .org 0x01b8
- 01B8 1332 INTVEC_DUMMY:
- 01B8 32 1333 reti
- 1334 .area CSEG (CODE)
- 1335
- 1336 ; naked function: no epilogue.
- 1337 ;------------------------------------------------------------
- 1338 ;Allocation info for local variables in function 'wait'
- 1339 ;------------------------------------------------------------
- 1340 ;ms Allocated to registers r2 r3
- 1341 ;i Allocated to registers r6 r7
- 1342 ;j Allocated to registers r4 r5
- 1343 ;------------------------------------------------------------
- 1344 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 1345 ; -----------------------------------------
- 1346 ; function wait
- 1347 ; -----------------------------------------
- 0000 1348 _wait:
- 0002 1349 ar2 = 0x02
- 0003 1350 ar3 = 0x03
- 0004 1351 ar4 = 0x04
- 0005 1352 ar5 = 0x05
- 0006 1353 ar6 = 0x06
- 0007 1354 ar7 = 0x07
- 0000 1355 ar0 = 0x00
- 0001 1356 ar1 = 0x01
- 0000 AA 82 1357 mov r2,dpl
- 0002 AB 83 1358 mov r3,dph
- 1359 ; ../../../include/ztex-utils.h:80: for (j=0; j> 8)
- 0366 FD 2103 mov r5,a
- 0367 90s00r69 2104 mov dptr,#_debug_stack_ptr
- 036A EC 2105 mov a,r4
- 036B F0 2106 movx @dptr,a
- 036C A3 2107 inc dptr
- 036D ED 2108 mov a,r5
- 036E F0 2109 movx @dptr,a
- 2110 ; ../../../include/ztex-utils.h:120: AUTOPTRL1=LO(&($0));
- 036F 75 9Br6B 2111 mov _AUTOPTRL1,#_debug_msg_buf
- 2112 ; ../../../include/ztex-utils.h:121: AUTOPTRH1=HI(&($0));
- 0372 7Er6B 2113 mov r6,#_debug_msg_buf
- 0374 7Fs00 2114 mov r7,#(_debug_msg_buf >> 8)
- 0376 8F 9A 2115 mov _AUTOPTRH1,r7
- 2116 ; ../../../include/ztex-utils.h:122: AUTOPTRL2=LO(&($1));
- 0378 8C 06 2117 mov ar6,r4
- 037A 8D 07 2118 mov ar7,r5
- 037C 8E 9E 2119 mov _AUTOPTRL2,r6
- 2120 ; ../../../include/ztex-utils.h:123: AUTOPTRH2=HI(&($1));
- 037E 8D 9D 2121 mov _AUTOPTRH2,r5
- 2122 ; ../../../include/ztex-utils.h:129: _endasm;
- 2123
- 0380 C0 02 2124 push ar2
- 0382 7A 03 2125 mov r2,#(3);
- 0384 12s00r48 2126 lcall _MEM_COPY1_int
- 0387 D0 02 2127 pop ar2
- 2128
- 2129 ; ../../../include/ztex-debug.h:53: debug_counter += 1;
- 0389 90s00r05 2130 mov dptr,#_debug_counter
- 038C 74 01 2131 mov a,#0x01
- 038E 2A 2132 add a,r2
- 038F F0 2133 movx @dptr,a
- 0390 E4 2134 clr a
- 0391 3B 2135 addc a,r3
- 0392 A3 2136 inc dptr
- 0393 F0 2137 movx @dptr,a
- 0394 22 2138 ret
- 2139 ;------------------------------------------------------------
- 2140 ;Allocation info for local variables in function 'debug_init'
- 2141 ;------------------------------------------------------------
- 2142 ;------------------------------------------------------------
- 2143 ; ../../../include/ztex-debug.h:60: void debug_init () {
- 2144 ; -----------------------------------------
- 2145 ; function debug_init
- 2146 ; -----------------------------------------
- 0395 2147 _debug_init:
- 2148 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0395 90s00r05 2149 mov dptr,#_debug_counter
- 0398 E4 2150 clr a
- 0399 F0 2151 movx @dptr,a
- 039A A3 2152 inc dptr
- 039B F0 2153 movx @dptr,a
- 2154 ; ../../../include/ztex-debug.h:62: debug_stack_size = DEBUG_STACK_SIZE;
- 039C 90s00r07 2155 mov dptr,#_debug_stack_size
- 039F 74 20 2156 mov a,#0x20
- 03A1 F0 2157 movx @dptr,a
- 2158 ; ../../../include/ztex-debug.h:63: debug_msg_size = DEBUG_MSG_SIZE;
- 03A2 90s00r08 2159 mov dptr,#_debug_msg_size
- 03A5 74 03 2160 mov a,#0x03
- 03A7 F0 2161 movx @dptr,a
- 2162 ; ../../../include/ztex-debug.h:64: debug_stack_ptr = debug_stack;
- 03A8 90s00r69 2163 mov dptr,#_debug_stack_ptr
- 03AB 74r09 2164 mov a,#_debug_stack
- 03AD F0 2165 movx @dptr,a
- 03AE A3 2166 inc dptr
- 03AF 74s00 2167 mov a,#(_debug_stack >> 8)
- 03B1 F0 2168 movx @dptr,a
- 03B2 22 2169 ret
- 2170 ;------------------------------------------------------------
- 2171 ;Allocation info for local variables in function 'debug_read_ep0'
- 2172 ;------------------------------------------------------------
- 2173 ;b Allocated to registers r2
- 2174 ;------------------------------------------------------------
- 2175 ; ../../../include/ztex-debug.h:71: BYTE debug_read_ep0 () {
- 2176 ; -----------------------------------------
- 2177 ; function debug_read_ep0
- 2178 ; -----------------------------------------
- 03B3 2179 _debug_read_ep0:
- 2180 ; ../../../include/ztex-debug.h:73: b = ep0_payload_transfer;
- 03B3 90s00r02 2181 mov dptr,#_ep0_payload_transfer
- 03B6 E0 2182 movx a,@dptr
- 2183 ; ../../../include/ztex-debug.h:74: if ( b != 0) {
- 03B7 FA 2184 mov r2,a
- 03B8 70 03 2185 jnz 00106$
- 03BA 02s03rD8 2186 ljmp 00102$
- 03BD 2187 00106$:
- 2188 ; ../../../include/ztex-utils.h:120: AUTOPTRL1=LO(&($0));
- 03BD 90s00r6E 2189 mov dptr,#_debug_read_addr
- 03C0 E0 2190 movx a,@dptr
- 03C1 FB 2191 mov r3,a
- 03C2 A3 2192 inc dptr
- 03C3 E0 2193 movx a,@dptr
- 03C4 FC 2194 mov r4,a
- 03C5 8B 9B 2195 mov _AUTOPTRL1,r3
- 2196 ; ../../../include/ztex-utils.h:121: AUTOPTRH1=HI(&($0));
- 03C7 8C 9A 2197 mov _AUTOPTRH1,r4
- 2198 ; ../../../include/ztex-utils.h:122: AUTOPTRL2=LO(&($1));
- 03C9 75 9E 40 2199 mov _AUTOPTRL2,#0x40
- 2200 ; ../../../include/ztex-utils.h:123: AUTOPTRH2=HI(&($1));
- 03CC 75 9D E7 2201 mov _AUTOPTRH2,#0xE7
- 2202 ; ../../../include/ztex-utils.h:129: _endasm;
- 2203
- 03CF C0 02 2204 push ar2
- 03D1 7A F0 2205 mov r2,#(b);
- 03D3 12s00r48 2206 lcall _MEM_COPY1_int
- 03D6 D0 02 2207 pop ar2
- 2208
- 03D8 2209 00102$:
- 2210 ; ../../../include/ztex-debug.h:77: debug_read_addr += b;
- 03D8 90s00r6E 2211 mov dptr,#_debug_read_addr
- 03DB E0 2212 movx a,@dptr
- 03DC FB 2213 mov r3,a
- 03DD A3 2214 inc dptr
- 03DE E0 2215 movx a,@dptr
- 03DF FC 2216 mov r4,a
- 03E0 90s00r6E 2217 mov dptr,#_debug_read_addr
- 03E3 EA 2218 mov a,r2
- 03E4 2B 2219 add a,r3
- 03E5 F0 2220 movx @dptr,a
- 03E6 E4 2221 clr a
- 03E7 3C 2222 addc a,r4
- 03E8 A3 2223 inc dptr
- 03E9 F0 2224 movx @dptr,a
- 2225 ; ../../../include/ztex-debug.h:78: return b;
- 03EA 8A 82 2226 mov dpl,r2
- 03EC 22 2227 ret
- 2228 ;------------------------------------------------------------
- 2229 ;Allocation info for local variables in function 'abscode_identity'
- 2230 ;------------------------------------------------------------
- 2231 ;------------------------------------------------------------
- 2232 ; ../../../include/ztex-descriptors.h:116: void abscode_identity() _naked
- 2233 ; -----------------------------------------
- 2234 ; function abscode_identity
- 2235 ; -----------------------------------------
- 03ED 2236 _abscode_identity:
- 2237 ; naked function: no prologue.
- 2238 ; ../../../include/ztex-descriptors.h:170: .db MODULE_RESERVED_03
- 2239
- 2240 .area ABSCODE (ABS,CODE)
- 2241
- 006C 2242 .org 0x06c
- 006C 28 2243 .db 40
- 2244
- 006D 2245 .org _ZTEX_DESCRIPTOR_VERSION
- 006D 01 2246 .db 1
- 2247
- 006E 2248 .org _ZTEXID
- 006E 5A 54 45 58 2249 .ascii "ZTEX"
- 2250
- 0072 2251 .org _PRODUCT_ID
- 0072 00 2252 .db 0
- 0073 00 2253 .db 0
- 0074 00 2254 .db 0
- 0075 00 2255 .db 0
- 2256
- 0076 2257 .org _FW_VERSION
- 0076 00 2258 .db 0
- 2259
- 0077 2260 .org _INTERFACE_VERSION
- 0077 01 2261 .db 1
- 2262
- 0078 2263 .org _INTERFACE_CAPABILITIES
- 2264 ; # 158 "../../../include/ztex-descriptors.h"
- 0078 09 2265 .db 0 + 1 + 8
- 2266 ; # 160 "../../../include/ztex-descriptors.h"
- 0079 00 2267 .db 0
- 007A 00 2268 .db 0
- 007B 00 2269 .db 0
- 007C 00 2270 .db 0
- 007D 00 2271 .db 0
- 2272
- 007E 2273 .org _MODULE_RESERVED
- 007E 00 2274 .db 0
- 007F 00 2275 .db 0
- 0080 00 2276 .db 0
- 0081 00 2277 .db 0
- 0082 00 2278 .db 0
- 0083 00 2279 .db 0
- 0084 00 2280 .db 0
- 0085 00 2281 .db 0
- 0086 00 2282 .db 0
- 0087 00 2283 .db 0
- 0088 00 2284 .db 0
- 0089 00 2285 .db 0
- 2286
- 008A 2287 .org _SN_STRING
- 008A 30 30 30 30 30 30 2288 .ascii "0000000000"
- 30 30 30 30
- 2289
- 2290 .area CSEG (CODE)
- 2291
- 2292 ; naked function: no epilogue.
- 2293 ;------------------------------------------------------------
- 2294 ;Allocation info for local variables in function 'resetToggleData'
- 2295 ;------------------------------------------------------------
- 2296 ;------------------------------------------------------------
- 2297 ; ../../../include/ztex-isr.h:34: static void resetToggleData () {
- 2298 ; -----------------------------------------
- 2299 ; function resetToggleData
- 2300 ; -----------------------------------------
- 03ED 2301 _resetToggleData:
- 2302 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 2303 ; ../../../include/ztex-isr.h:46: TOGCTL = 0 | bmBIT5;
- 2304 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 2305 ; ../../../include/ztex-isr.h:48: TOGCTL = 0x10 | bmBIT5;
- 03ED 90 E6 83 2306 mov dptr,#_TOGCTL
- 03F0 E4 2307 clr a
- 03F1 F0 2308 movx @dptr,a
- 03F2 74 20 2309 mov a,#0x20
- 03F4 F0 2310 movx @dptr,a
- 03F5 74 10 2311 mov a,#0x10
- 03F7 F0 2312 movx @dptr,a
- 03F8 74 30 2313 mov a,#0x30
- 03FA F0 2314 movx @dptr,a
- 2315 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 2316 ; ../../../include/ztex-isr.h:51: TOGCTL = 1 | bmBIT5;
- 2317 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 2318 ; ../../../include/ztex-isr.h:55: TOGCTL = 0x11 | bmBIT5;
- 03FB 90 E6 83 2319 mov dptr,#_TOGCTL
- 03FE 74 01 2320 mov a,#0x01
- 0400 F0 2321 movx @dptr,a
- 0401 74 21 2322 mov a,#0x21
- 0403 F0 2323 movx @dptr,a
- 0404 74 11 2324 mov a,#0x11
- 0406 F0 2325 movx @dptr,a
- 0407 74 31 2326 mov a,#0x31
- 0409 F0 2327 movx @dptr,a
- 040A 22 2328 ret
- 2329 ;------------------------------------------------------------
- 2330 ;Allocation info for local variables in function 'sendStringDescriptor'
- 2331 ;------------------------------------------------------------
- 2332 ;hiAddr Allocated with name '_sendStringDescriptor_PARM_2'
- 2333 ;size Allocated with name '_sendStringDescriptor_PARM_3'
- 2334 ;loAddr Allocated to registers r2
- 2335 ;i Allocated to registers r2
- 2336 ;------------------------------------------------------------
- 2337 ; ../../../include/ztex-isr.h:68: static void sendStringDescriptor (BYTE loAddr, BYTE hiAddr, BYTE size)
- 2338 ; -----------------------------------------
- 2339 ; function sendStringDescriptor
- 2340 ; -----------------------------------------
- 040B 2341 _sendStringDescriptor:
- 040B AA 82 2342 mov r2,dpl
- 2343 ; ../../../include/ztex-isr.h:71: if ( size > 31)
- 040D E5*01 2344 mov a,_sendStringDescriptor_PARM_3
- 040F 24 E0 2345 add a,#0xff - 0x1F
- 0411 50 03 2346 jnc 00102$
- 2347 ; ../../../include/ztex-isr.h:72: size = 31;
- 0413 75*01 1F 2348 mov _sendStringDescriptor_PARM_3,#0x1F
- 0416 2349 00102$:
- 2350 ; ../../../include/ztex-isr.h:73: AUTOPTRSETUP = 7;
- 0416 75 AF 07 2351 mov _AUTOPTRSETUP,#0x07
- 2352 ; ../../../include/ztex-isr.h:74: AUTOPTRL1 = loAddr;
- 0419 8A 9B 2353 mov _AUTOPTRL1,r2
- 2354 ; ../../../include/ztex-isr.h:75: AUTOPTRH1 = hiAddr;
- 041B 85*00 9A 2355 mov _AUTOPTRH1,_sendStringDescriptor_PARM_2
- 2356 ; ../../../include/ztex-isr.h:76: AUTOPTRL2 = (BYTE)(((unsigned short)(&EP0BUF))+1);
- 041E 75 9E 41 2357 mov _AUTOPTRL2,#0x41
- 2358 ; ../../../include/ztex-isr.h:77: AUTOPTRH2 = (BYTE)((((unsigned short)(&EP0BUF))+1) >> 8);
- 0421 75 9D E7 2359 mov _AUTOPTRH2,#0xE7
- 2360 ; ../../../include/ztex-isr.h:78: XAUTODAT2 = 3;
- 0424 90 E6 7C 2361 mov dptr,#_XAUTODAT2
- 0427 74 03 2362 mov a,#0x03
- 0429 F0 2363 movx @dptr,a
- 2364 ; ../../../include/ztex-isr.h:79: for (i=0; i 64 ) ? 64 : ep0_payload_remaining;
- 045E 90s00r00 2416 mov dptr,#_ep0_payload_remaining
- 0461 E0 2417 movx a,@dptr
- 0462 FA 2418 mov r2,a
- 0463 A3 2419 inc dptr
- 0464 E0 2420 movx a,@dptr
- 0465 FB 2421 mov r3,a
- 0466 C3 2422 clr c
- 0467 74 40 2423 mov a,#0x40
- 0469 9A 2424 subb a,r2
- 046A E4 2425 clr a
- 046B 9B 2426 subb a,r3
- 046C 50 06 2427 jnc 00103$
- 046E 7C 40 2428 mov r4,#0x40
- 0470 7D 00 2429 mov r5,#0x00
- 0472 80 04 2430 sjmp 00104$
- 0474 2431 00103$:
- 0474 8A 04 2432 mov ar4,r2
- 0476 8B 05 2433 mov ar5,r3
- 0478 2434 00104$:
- 0478 90s00r02 2435 mov dptr,#_ep0_payload_transfer
- 047B EC 2436 mov a,r4
- 047C F0 2437 movx @dptr,a
- 2438 ; ../../../include/ztex-isr.h:95: ep0_payload_remaining -= ep0_payload_transfer;
- 047D 7D 00 2439 mov r5,#0x00
- 047F 90s00r00 2440 mov dptr,#_ep0_payload_remaining
- 0482 EA 2441 mov a,r2
- 0483 C3 2442 clr c
- 0484 9C 2443 subb a,r4
- 0485 F0 2444 movx @dptr,a
- 0486 EB 2445 mov a,r3
- 0487 9D 2446 subb a,r5
- 0488 A3 2447 inc dptr
- 0489 F0 2448 movx @dptr,a
- 048A 22 2449 ret
- 2450 ;------------------------------------------------------------
- 2451 ;Allocation info for local variables in function 'ep0_vendor_cmd_su'
- 2452 ;------------------------------------------------------------
- 2453 ;------------------------------------------------------------
- 2454 ; ../../../include/ztex-isr.h:102: static void ep0_vendor_cmd_su() {
- 2455 ; -----------------------------------------
- 2456 ; function ep0_vendor_cmd_su
- 2457 ; -----------------------------------------
- 048B 2458 _ep0_vendor_cmd_su:
- 2459 ; ../../../include/ztex-isr.h:103: switch ( ep0_prev_setup_request ) {
- 048B 90s00r03 2460 mov dptr,#_ep0_prev_setup_request
- 048E E0 2461 movx a,@dptr
- 048F FA 2462 mov r2,a
- 0490 BA 39 24 2463 cjne r2,#0x39,00102$
- 2464 ; ../../../include/ztex-eeprom.h:233: eeprom_write_checksum = 0;
- 0493 90s00r04 2465 mov dptr,#_eeprom_write_checksum
- 2466 ; ../../../include/ztex-eeprom.h:234: eeprom_write_bytes = 0;
- 0496 E4 2467 clr a
- 0497 F0 2468 movx @dptr,a
- 0498 90s00r02 2469 mov dptr,#_eeprom_write_bytes
- 049B F0 2470 movx @dptr,a
- 049C A3 2471 inc dptr
- 049D F0 2472 movx @dptr,a
- 2473 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 049E 90 E6 BB 2474 mov dptr,#(_SETUPDAT + 0x0003)
- 04A1 E0 2475 movx a,@dptr
- 04A2 FB 2476 mov r3,a
- 04A3 7A 00 2477 mov r2,#0x00
- 04A5 90 E6 BA 2478 mov dptr,#(_SETUPDAT + 0x0002)
- 04A8 E0 2479 movx a,@dptr
- 04A9 FC 2480 mov r4,a
- 04AA 7D 00 2481 mov r5,#0x00
- 04AC 90s00r00 2482 mov dptr,#_eeprom_addr
- 04AF EC 2483 mov a,r4
- 04B0 4A 2484 orl a,r2
- 04B1 F0 2485 movx @dptr,a
- 04B2 ED 2486 mov a,r5
- 04B3 4B 2487 orl a,r3
- 04B4 A3 2488 inc dptr
- 04B5 F0 2489 movx @dptr,a
- 2490 ; ../../../include/ztex-conf.h:115: break;
- 2491 ; ../../../include/ztex-isr.h:105: default:
- 04B6 22 2492 ret
- 04B7 2493 00102$:
- 2494 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 04B7 90 E6 A0 2495 mov dptr,#_EP0CS
- 04BA E0 2496 movx a,@dptr
- 04BB 44 01 2497 orl a,#0x01
- 04BD F0 2498 movx @dptr,a
- 2499 ; ../../../include/ztex-isr.h:107: }
- 04BE 22 2500 ret
- 2501 ;------------------------------------------------------------
- 2502 ;Allocation info for local variables in function 'SUDAV_ISR'
- 2503 ;------------------------------------------------------------
- 2504 ;a Allocated to registers r2
- 2505 ;------------------------------------------------------------
- 2506 ; ../../../include/ztex-isr.h:113: static void SUDAV_ISR () interrupt
- 2507 ; -----------------------------------------
- 2508 ; function SUDAV_ISR
- 2509 ; -----------------------------------------
- 04BF 2510 _SUDAV_ISR:
- 04BF C0*00 2511 push bits
- 04C1 C0 E0 2512 push acc
- 04C3 C0 F0 2513 push b
- 04C5 C0 82 2514 push dpl
- 04C7 C0 83 2515 push dph
- 04C9 C0 02 2516 push (0+2)
- 04CB C0 03 2517 push (0+3)
- 04CD C0 04 2518 push (0+4)
- 04CF C0 05 2519 push (0+5)
- 04D1 C0 06 2520 push (0+6)
- 04D3 C0 07 2521 push (0+7)
- 04D5 C0 00 2522 push (0+0)
- 04D7 C0 01 2523 push (0+1)
- 04D9 C0 D0 2524 push psw
- 04DB 75 D0 00 2525 mov psw,#0x00
- 2526 ; ../../../include/ztex-isr.h:116: ep0_prev_setup_request = bRequest;
- 04DE 90 E6 B9 2527 mov dptr,#_bRequest
- 04E1 E0 2528 movx a,@dptr
- 04E2 FA 2529 mov r2,a
- 04E3 90s00r03 2530 mov dptr,#_ep0_prev_setup_request
- 04E6 F0 2531 movx @dptr,a
- 2532 ; ../../../include/ztex-isr.h:117: SUDPTRCTL = 1;
- 04E7 90 E6 B5 2533 mov dptr,#_SUDPTRCTL
- 04EA 74 01 2534 mov a,#0x01
- 04EC F0 2535 movx @dptr,a
- 2536 ; ../../../include/ztex-isr.h:120: switch ( bRequest ) {
- 04ED 90 E6 B9 2537 mov dptr,#_bRequest
- 04F0 E0 2538 movx a,@dptr
- 04F1 FA 2539 mov r2,a
- 04F2 24 F3 2540 add a,#0xff - 0x0C
- 04F4 50 03 2541 jnc 00214$
- 04F6 02s08r75 2542 ljmp 00160$
- 04F9 2543 00214$:
- 04F9 EA 2544 mov a,r2
- 04FA 2A 2545 add a,r2
- 04FB 2A 2546 add a,r2
- 04FC 90s05r00 2547 mov dptr,#00215$
- 04FF 73 2548 jmp @a+dptr
- 0500 2549 00215$:
- 0500 02s05r27 2550 ljmp 00101$
- 0503 02s05rDB 2551 ljmp 00112$
- 0506 02s08r75 2552 ljmp 00160$
- 0509 02s06r58 2553 ljmp 00122$
- 050C 02s08r75 2554 ljmp 00160$
- 050F 02s08r75 2555 ljmp 00160$
- 0512 02s06rF0 2556 ljmp 00132$
- 0515 02s08r0B 2557 ljmp 00152$
- 0518 02s08r0D 2558 ljmp 00153$
- 051B 02s08r1E 2559 ljmp 00154$
- 051E 02s08r23 2560 ljmp 00155$
- 0521 02s08r34 2561 ljmp 00156$
- 0524 02s08r39 2562 ljmp 00157$
- 2563 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0527 2564 00101$:
- 2565 ; ../../../include/ztex-isr.h:122: switch(SETUPDAT[0]) {
- 0527 90 E6 B8 2566 mov dptr,#_SETUPDAT
- 052A E0 2567 movx a,@dptr
- 052B FA 2568 mov r2,a
- 052C BA 80 02 2569 cjne r2,#0x80,00216$
- 052F 80 0D 2570 sjmp 00102$
- 0531 2571 00216$:
- 0531 BA 81 02 2572 cjne r2,#0x81,00217$
- 0534 80 1E 2573 sjmp 00103$
- 0536 2574 00217$:
- 0536 BA 82 02 2575 cjne r2,#0x82,00218$
- 0539 80 2F 2576 sjmp 00104$
- 053B 2577 00218$:
- 053B 02s08r75 2578 ljmp 00160$
- 2579 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 053E 2580 00102$:
- 053E 90 E7 40 2581 mov dptr,#_EP0BUF
- 2582 ; ../../../include/ztex-isr.h:125: EP0BUF[1] = 0;
- 2583 ; ../../../include/ztex-isr.h:126: EP0BCH = 0;
- 0541 E4 2584 clr a
- 0542 F0 2585 movx @dptr,a
- 0543 90 E7 41 2586 mov dptr,#(_EP0BUF + 0x0001)
- 0546 F0 2587 movx @dptr,a
- 0547 90 E6 8A 2588 mov dptr,#_EP0BCH
- 054A F0 2589 movx @dptr,a
- 2590 ; ../../../include/ztex-isr.h:127: EP0BCL = 2;
- 054B 90 E6 8B 2591 mov dptr,#_EP0BCL
- 054E 74 02 2592 mov a,#0x02
- 0550 F0 2593 movx @dptr,a
- 2594 ; ../../../include/ztex-isr.h:128: break;
- 0551 02s08r75 2595 ljmp 00160$
- 2596 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0554 2597 00103$:
- 0554 90 E7 40 2598 mov dptr,#_EP0BUF
- 2599 ; ../../../include/ztex-isr.h:131: EP0BUF[1] = 0;
- 2600 ; ../../../include/ztex-isr.h:132: EP0BCH = 0;
- 0557 E4 2601 clr a
- 0558 F0 2602 movx @dptr,a
- 0559 90 E7 41 2603 mov dptr,#(_EP0BUF + 0x0001)
- 055C F0 2604 movx @dptr,a
- 055D 90 E6 8A 2605 mov dptr,#_EP0BCH
- 0560 F0 2606 movx @dptr,a
- 2607 ; ../../../include/ztex-isr.h:133: EP0BCL = 2;
- 0561 90 E6 8B 2608 mov dptr,#_EP0BCL
- 0564 74 02 2609 mov a,#0x02
- 0566 F0 2610 movx @dptr,a
- 2611 ; ../../../include/ztex-isr.h:134: break;
- 0567 02s08r75 2612 ljmp 00160$
- 2613 ; ../../../include/ztex-isr.h:135: case 0x82:
- 056A 2614 00104$:
- 2615 ; ../../../include/ztex-isr.h:136: switch ( SETUPDAT[4] ) {
- 056A 90 E6 BC 2616 mov dptr,#(_SETUPDAT + 0x0004)
- 056D E0 2617 movx a,@dptr
- 056E FA 2618 mov r2,a
- 056F 60 0F 2619 jz 00106$
- 0571 BA 01 02 2620 cjne r2,#0x01,00220$
- 0574 80 19 2621 sjmp 00107$
- 0576 2622 00220$:
- 0576 BA 80 02 2623 cjne r2,#0x80,00221$
- 0579 80 05 2624 sjmp 00106$
- 057B 2625 00221$:
- 2626 ; ../../../include/ztex-isr.h:138: case 0x80 :
- 057B BA 81 2F 2627 cjne r2,#0x81,00109$
- 057E 80 1E 2628 sjmp 00108$
- 0580 2629 00106$:
- 2630 ; ../../../include/ztex-isr.h:139: EP0BUF[0] = EP0CS & bmBIT0;
- 0580 90 E6 A0 2631 mov dptr,#_EP0CS
- 0583 E0 2632 movx a,@dptr
- 0584 FA 2633 mov r2,a
- 0585 53 02 01 2634 anl ar2,#0x01
- 0588 90 E7 40 2635 mov dptr,#_EP0BUF
- 058B EA 2636 mov a,r2
- 058C F0 2637 movx @dptr,a
- 2638 ; ../../../include/ztex-isr.h:140: break;
- 2639 ; ../../../include/ztex-isr.h:141: case 0x01 :
- 058D 80 3A 2640 sjmp 00110$
- 058F 2641 00107$:
- 2642 ; ../../../include/ztex-isr.h:142: EP0BUF[0] = EP1OUTCS & bmBIT0;
- 058F 90 E6 A1 2643 mov dptr,#_EP1OUTCS
- 0592 E0 2644 movx a,@dptr
- 0593 FA 2645 mov r2,a
- 0594 53 02 01 2646 anl ar2,#0x01
- 0597 90 E7 40 2647 mov dptr,#_EP0BUF
- 059A EA 2648 mov a,r2
- 059B F0 2649 movx @dptr,a
- 2650 ; ../../../include/ztex-isr.h:143: break;
- 2651 ; ../../../include/ztex-isr.h:144: case 0x81 :
- 059C 80 2B 2652 sjmp 00110$
- 059E 2653 00108$:
- 2654 ; ../../../include/ztex-isr.h:145: EP0BUF[0] = EP1INCS & bmBIT0;
- 059E 90 E6 A2 2655 mov dptr,#_EP1INCS
- 05A1 E0 2656 movx a,@dptr
- 05A2 FA 2657 mov r2,a
- 05A3 53 02 01 2658 anl ar2,#0x01
- 05A6 90 E7 40 2659 mov dptr,#_EP0BUF
- 05A9 EA 2660 mov a,r2
- 05AA F0 2661 movx @dptr,a
- 2662 ; ../../../include/ztex-isr.h:146: break;
- 2663 ; ../../../include/ztex-isr.h:147: default:
- 05AB 80 1C 2664 sjmp 00110$
- 05AD 2665 00109$:
- 2666 ; ../../../include/ztex-isr.h:148: EP0BUF[0] = EPXCS[ ((SETUPDAT[4] >> 1)-1) & 3 ] & bmBIT0;
- 05AD 90 E6 BC 2667 mov dptr,#(_SETUPDAT + 0x0004)
- 05B0 E0 2668 movx a,@dptr
- 05B1 C3 2669 clr c
- 05B2 13 2670 rrc a
- 05B3 14 2671 dec a
- 05B4 54 03 2672 anl a,#0x03
- 05B6 24 A3 2673 add a,#_EPXCS
- 05B8 F5 82 2674 mov dpl,a
- 05BA E4 2675 clr a
- 05BB 34 E6 2676 addc a,#(_EPXCS >> 8)
- 05BD F5 83 2677 mov dph,a
- 05BF E0 2678 movx a,@dptr
- 05C0 FA 2679 mov r2,a
- 05C1 53 02 01 2680 anl ar2,#0x01
- 05C4 90 E7 40 2681 mov dptr,#_EP0BUF
- 05C7 EA 2682 mov a,r2
- 05C8 F0 2683 movx @dptr,a
- 2684 ; ../../../include/ztex-isr.h:150: }
- 05C9 2685 00110$:
- 2686 ; ../../../include/ztex-isr.h:151: EP0BUF[1] = 0;
- 05C9 90 E7 41 2687 mov dptr,#(_EP0BUF + 0x0001)
- 2688 ; ../../../include/ztex-isr.h:152: EP0BCH = 0;
- 05CC E4 2689 clr a
- 05CD F0 2690 movx @dptr,a
- 05CE 90 E6 8A 2691 mov dptr,#_EP0BCH
- 05D1 F0 2692 movx @dptr,a
- 2693 ; ../../../include/ztex-isr.h:153: EP0BCL = 2;
- 05D2 90 E6 8B 2694 mov dptr,#_EP0BCL
- 05D5 74 02 2695 mov a,#0x02
- 05D7 F0 2696 movx @dptr,a
- 2697 ; ../../../include/ztex-isr.h:156: break;
- 05D8 02s08r75 2698 ljmp 00160$
- 2699 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 05DB 2700 00112$:
- 2701 ; ../../../include/ztex-isr.h:158: if ( SETUPDAT[0] == 2 && SETUPDAT[2] == 0 ) {
- 05DB 90 E6 B8 2702 mov dptr,#_SETUPDAT
- 05DE E0 2703 movx a,@dptr
- 05DF FA 2704 mov r2,a
- 05E0 BA 02 02 2705 cjne r2,#0x02,00223$
- 05E3 80 03 2706 sjmp 00224$
- 05E5 2707 00223$:
- 05E5 02s08r75 2708 ljmp 00160$
- 05E8 2709 00224$:
- 05E8 90 E6 BA 2710 mov dptr,#(_SETUPDAT + 0x0002)
- 05EB E0 2711 movx a,@dptr
- 05EC 60 03 2712 jz 00225$
- 05EE 02s08r75 2713 ljmp 00160$
- 05F1 2714 00225$:
- 2715 ; ../../../include/ztex-isr.h:159: switch ( SETUPDAT[4] ) {
- 05F1 90 E6 BC 2716 mov dptr,#(_SETUPDAT + 0x0004)
- 05F4 E0 2717 movx a,@dptr
- 05F5 FA 2718 mov r2,a
- 05F6 60 0F 2719 jz 00114$
- 05F8 BA 01 02 2720 cjne r2,#0x01,00227$
- 05FB 80 15 2721 sjmp 00115$
- 05FD 2722 00227$:
- 05FD BA 80 02 2723 cjne r2,#0x80,00228$
- 0600 80 05 2724 sjmp 00114$
- 0602 2725 00228$:
- 2726 ; ../../../include/ztex-isr.h:161: case 0x80 :
- 0602 BA 81 23 2727 cjne r2,#0x81,00117$
- 0605 80 16 2728 sjmp 00116$
- 0607 2729 00114$:
- 2730 ; ../../../include/ztex-isr.h:162: EP0CS &= ~bmBIT0;
- 0607 90 E6 A0 2731 mov dptr,#_EP0CS
- 060A E0 2732 movx a,@dptr
- 060B FA 2733 mov r2,a
- 060C 54 FE 2734 anl a,#0xFE
- 060E F0 2735 movx @dptr,a
- 2736 ; ../../../include/ztex-isr.h:163: break;
- 060F 02s08r75 2737 ljmp 00160$
- 2738 ; ../../../include/ztex-isr.h:164: case 0x01 :
- 0612 2739 00115$:
- 2740 ; ../../../include/ztex-isr.h:165: EP1OUTCS &= ~bmBIT0;
- 0612 90 E6 A1 2741 mov dptr,#_EP1OUTCS
- 0615 E0 2742 movx a,@dptr
- 0616 FA 2743 mov r2,a
- 0617 54 FE 2744 anl a,#0xFE
- 0619 F0 2745 movx @dptr,a
- 2746 ; ../../../include/ztex-isr.h:166: break;
- 061A 02s08r75 2747 ljmp 00160$
- 2748 ; ../../../include/ztex-isr.h:167: case 0x81 :
- 061D 2749 00116$:
- 2750 ; ../../../include/ztex-isr.h:168: EP1INCS &= ~bmBIT0;
- 061D 90 E6 A2 2751 mov dptr,#_EP1INCS
- 0620 E0 2752 movx a,@dptr
- 0621 FA 2753 mov r2,a
- 0622 54 FE 2754 anl a,#0xFE
- 0624 F0 2755 movx @dptr,a
- 2756 ; ../../../include/ztex-isr.h:169: break;
- 0625 02s08r75 2757 ljmp 00160$
- 2758 ; ../../../include/ztex-isr.h:170: default:
- 0628 2759 00117$:
- 2760 ; ../../../include/ztex-isr.h:171: EPXCS[ ((SETUPDAT[4] >> 1)-1) & 3 ] &= ~bmBIT0;
- 0628 90 E6 BC 2761 mov dptr,#(_SETUPDAT + 0x0004)
- 062B E0 2762 movx a,@dptr
- 062C C3 2763 clr c
- 062D 13 2764 rrc a
- 062E 14 2765 dec a
- 062F 54 03 2766 anl a,#0x03
- 0631 24 A3 2767 add a,#_EPXCS
- 0633 FA 2768 mov r2,a
- 0634 E4 2769 clr a
- 0635 34 E6 2770 addc a,#(_EPXCS >> 8)
- 0637 FB 2771 mov r3,a
- 0638 90 E6 BC 2772 mov dptr,#(_SETUPDAT + 0x0004)
- 063B E0 2773 movx a,@dptr
- 063C C3 2774 clr c
- 063D 13 2775 rrc a
- 063E 14 2776 dec a
- 063F 54 03 2777 anl a,#0x03
- 0641 24 A3 2778 add a,#_EPXCS
- 0643 F5 82 2779 mov dpl,a
- 0645 E4 2780 clr a
- 0646 34 E6 2781 addc a,#(_EPXCS >> 8)
- 0648 F5 83 2782 mov dph,a
- 064A E0 2783 movx a,@dptr
- 064B FC 2784 mov r4,a
- 064C 53 04 FE 2785 anl ar4,#0xFE
- 064F 8A 82 2786 mov dpl,r2
- 0651 8B 83 2787 mov dph,r3
- 0653 EC 2788 mov a,r4
- 0654 F0 2789 movx @dptr,a
- 2790 ; ../../../include/ztex-isr.h:175: break;
- 0655 02s08r75 2791 ljmp 00160$
- 2792 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0658 2793 00122$:
- 2794 ; ../../../include/ztex-isr.h:177: if ( SETUPDAT[0] == 2 && SETUPDAT[2] == 0 ) {
- 0658 90 E6 B8 2795 mov dptr,#_SETUPDAT
- 065B E0 2796 movx a,@dptr
- 065C FA 2797 mov r2,a
- 065D BA 02 02 2798 cjne r2,#0x02,00230$
- 0660 80 03 2799 sjmp 00231$
- 0662 2800 00230$:
- 0662 02s08r75 2801 ljmp 00160$
- 0665 2802 00231$:
- 0665 90 E6 BA 2803 mov dptr,#(_SETUPDAT + 0x0002)
- 0668 E0 2804 movx a,@dptr
- 0669 60 03 2805 jz 00232$
- 066B 02s08r75 2806 ljmp 00160$
- 066E 2807 00232$:
- 2808 ; ../../../include/ztex-isr.h:178: switch ( SETUPDAT[4] ) {
- 066E 90 E6 BC 2809 mov dptr,#(_SETUPDAT + 0x0004)
- 0671 E0 2810 movx a,@dptr
- 0672 FA 2811 mov r2,a
- 0673 60 0F 2812 jz 00124$
- 0675 BA 01 02 2813 cjne r2,#0x01,00234$
- 0678 80 14 2814 sjmp 00125$
- 067A 2815 00234$:
- 067A BA 80 02 2816 cjne r2,#0x80,00235$
- 067D 80 05 2817 sjmp 00124$
- 067F 2818 00235$:
- 2819 ; ../../../include/ztex-isr.h:180: case 0x80 :
- 067F BA 81 20 2820 cjne r2,#0x81,00127$
- 0682 80 14 2821 sjmp 00126$
- 0684 2822 00124$:
- 2823 ; ../../../include/ztex-isr.h:181: EP0CS |= bmBIT0;
- 0684 90 E6 A0 2824 mov dptr,#_EP0CS
- 0687 E0 2825 movx a,@dptr
- 0688 FA 2826 mov r2,a
- 0689 44 01 2827 orl a,#0x01
- 068B F0 2828 movx @dptr,a
- 2829 ; ../../../include/ztex-isr.h:182: break;
- 2830 ; ../../../include/ztex-isr.h:183: case 0x01 :
- 068C 80 41 2831 sjmp 00128$
- 068E 2832 00125$:
- 2833 ; ../../../include/ztex-isr.h:184: EP1OUTCS |= bmBIT0;
- 068E 90 E6 A1 2834 mov dptr,#_EP1OUTCS
- 0691 E0 2835 movx a,@dptr
- 0692 FA 2836 mov r2,a
- 0693 44 01 2837 orl a,#0x01
- 0695 F0 2838 movx @dptr,a
- 2839 ; ../../../include/ztex-isr.h:185: break;
- 2840 ; ../../../include/ztex-isr.h:186: case 0x81 :
- 0696 80 37 2841 sjmp 00128$
- 0698 2842 00126$:
- 2843 ; ../../../include/ztex-isr.h:187: EP1INCS |= bmBIT0;
- 0698 90 E6 A2 2844 mov dptr,#_EP1INCS
- 069B E0 2845 movx a,@dptr
- 069C FA 2846 mov r2,a
- 069D 44 01 2847 orl a,#0x01
- 069F F0 2848 movx @dptr,a
- 2849 ; ../../../include/ztex-isr.h:188: break;
- 2850 ; ../../../include/ztex-isr.h:189: default:
- 06A0 80 2D 2851 sjmp 00128$
- 06A2 2852 00127$:
- 2853 ; ../../../include/ztex-isr.h:190: EPXCS[ ((SETUPDAT[4] >> 1)-1) & 3 ] |= ~bmBIT0;
- 06A2 90 E6 BC 2854 mov dptr,#(_SETUPDAT + 0x0004)
- 06A5 E0 2855 movx a,@dptr
- 06A6 C3 2856 clr c
- 06A7 13 2857 rrc a
- 06A8 14 2858 dec a
- 06A9 54 03 2859 anl a,#0x03
- 06AB 24 A3 2860 add a,#_EPXCS
- 06AD FA 2861 mov r2,a
- 06AE E4 2862 clr a
- 06AF 34 E6 2863 addc a,#(_EPXCS >> 8)
- 06B1 FB 2864 mov r3,a
- 06B2 90 E6 BC 2865 mov dptr,#(_SETUPDAT + 0x0004)
- 06B5 E0 2866 movx a,@dptr
- 06B6 C3 2867 clr c
- 06B7 13 2868 rrc a
- 06B8 14 2869 dec a
- 06B9 54 03 2870 anl a,#0x03
- 06BB 24 A3 2871 add a,#_EPXCS
- 06BD F5 82 2872 mov dpl,a
- 06BF E4 2873 clr a
- 06C0 34 E6 2874 addc a,#(_EPXCS >> 8)
- 06C2 F5 83 2875 mov dph,a
- 06C4 E0 2876 movx a,@dptr
- 06C5 FC 2877 mov r4,a
- 06C6 43 04 FE 2878 orl ar4,#0xFE
- 06C9 8A 82 2879 mov dpl,r2
- 06CB 8B 83 2880 mov dph,r3
- 06CD EC 2881 mov a,r4
- 06CE F0 2882 movx @dptr,a
- 2883 ; ../../../include/ztex-isr.h:192: }
- 06CF 2884 00128$:
- 2885 ; ../../../include/ztex-isr.h:193: a = ( (SETUPDAT[4] & 0x80) >> 3 ) | (SETUPDAT[4] & 0x0f);
- 06CF 90 E6 BC 2886 mov dptr,#(_SETUPDAT + 0x0004)
- 06D2 E0 2887 movx a,@dptr
- 06D3 54 80 2888 anl a,#0x80
- 06D5 C4 2889 swap a
- 06D6 23 2890 rl a
- 06D7 54 1F 2891 anl a,#0x1f
- 06D9 FA 2892 mov r2,a
- 06DA 90 E6 BC 2893 mov dptr,#(_SETUPDAT + 0x0004)
- 06DD E0 2894 movx a,@dptr
- 06DE FB 2895 mov r3,a
- 06DF 74 0F 2896 mov a,#0x0F
- 06E1 5B 2897 anl a,r3
- 06E2 42 02 2898 orl ar2,a
- 2899 ; ../../../include/ztex-isr.h:194: TOGCTL = a;
- 2900 ; ../../../include/ztex-isr.h:195: TOGCTL = a | bmBIT5;
- 06E4 90 E6 83 2901 mov dptr,#_TOGCTL
- 06E7 EA 2902 mov a,r2
- 06E8 F0 2903 movx @dptr,a
- 06E9 74 20 2904 mov a,#0x20
- 06EB 4A 2905 orl a,r2
- 06EC F0 2906 movx @dptr,a
- 2907 ; ../../../include/ztex-isr.h:197: break;
- 06ED 02s08r75 2908 ljmp 00160$
- 2909 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 06F0 2910 00132$:
- 2911 ; ../../../include/ztex-isr.h:199: switch(SETUPDAT[3]) {
- 06F0 90 E6 BB 2912 mov dptr,#(_SETUPDAT + 0x0003)
- 06F3 E0 2913 movx a,@dptr
- 06F4 FA 2914 mov r2,a
- 06F5 BA 01 02 2915 cjne r2,#0x01,00237$
- 06F8 80 19 2916 sjmp 00133$
- 06FA 2917 00237$:
- 06FA BA 02 02 2918 cjne r2,#0x02,00238$
- 06FD 80 26 2919 sjmp 00134$
- 06FF 2920 00238$:
- 06FF BA 03 02 2921 cjne r2,#0x03,00239$
- 0702 80 4D 2922 sjmp 00138$
- 0704 2923 00239$:
- 0704 BA 06 03 2924 cjne r2,#0x06,00240$
- 0707 02s07rC4 2925 ljmp 00145$
- 070A 2926 00240$:
- 070A BA 07 03 2927 cjne r2,#0x07,00241$
- 070D 02s07rD6 2928 ljmp 00146$
- 0710 2929 00241$:
- 0710 02s08r01 2930 ljmp 00150$
- 2931 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0713 2932 00133$:
- 2933 ; ../../../include/ztex-isr.h:201: SUDPTRH = MSB(&DeviceDescriptor);
- 0713 7Ar29 2934 mov r2,#_DeviceDescriptor
- 0715 7Bs00 2935 mov r3,#(_DeviceDescriptor >> 8)
- 0717 90 E6 B3 2936 mov dptr,#_SUDPTRH
- 071A EB 2937 mov a,r3
- 071B F0 2938 movx @dptr,a
- 2939 ; ../../../include/ztex-isr.h:202: SUDPTRL = LSB(&DeviceDescriptor);
- 071C 90 E6 B4 2940 mov dptr,#_SUDPTRL
- 071F 74r29 2941 mov a,#_DeviceDescriptor
- 0721 F0 2942 movx @dptr,a
- 2943 ; ../../../include/ztex-isr.h:203: break;
- 0722 02s08r75 2944 ljmp 00160$
- 2945 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0725 2946 00134$:
- 2947 ; ../../../include/ztex-isr.h:205: if (USBCS & bmBIT7) {
- 0725 90 E6 80 2948 mov dptr,#_USBCS
- 0728 E0 2949 movx a,@dptr
- 0729 FA 2950 mov r2,a
- 072A 30 E7 12 2951 jnb acc.7,00136$
- 2952 ; ../../../include/ztex-isr.h:206: SUDPTRH = MSB(&HighSpeedConfigDescriptor);
- 072D 7Ar45 2953 mov r2,#_HighSpeedConfigDescriptor
- 072F 7Bs00 2954 mov r3,#(_HighSpeedConfigDescriptor >> 8)
- 0731 90 E6 B3 2955 mov dptr,#_SUDPTRH
- 0734 EB 2956 mov a,r3
- 0735 F0 2957 movx @dptr,a
- 2958 ; ../../../include/ztex-isr.h:207: SUDPTRL = LSB(&HighSpeedConfigDescriptor);
- 0736 90 E6 B4 2959 mov dptr,#_SUDPTRL
- 0739 74r45 2960 mov a,#_HighSpeedConfigDescriptor
- 073B F0 2961 movx @dptr,a
- 073C 02s08r75 2962 ljmp 00160$
- 073F 2963 00136$:
- 2964 ; ../../../include/ztex-isr.h:210: SUDPTRH = MSB(&FullSpeedConfigDescriptor);
- 073F 7Ar67 2965 mov r2,#_FullSpeedConfigDescriptor
- 0741 7Bs00 2966 mov r3,#(_FullSpeedConfigDescriptor >> 8)
- 0743 90 E6 B3 2967 mov dptr,#_SUDPTRH
- 0746 EB 2968 mov a,r3
- 0747 F0 2969 movx @dptr,a
- 2970 ; ../../../include/ztex-isr.h:211: SUDPTRL = LSB(&FullSpeedConfigDescriptor);
- 0748 90 E6 B4 2971 mov dptr,#_SUDPTRL
- 074B 74r67 2972 mov a,#_FullSpeedConfigDescriptor
- 074D F0 2973 movx @dptr,a
- 2974 ; ../../../include/ztex-isr.h:213: break;
- 074E 02s08r75 2975 ljmp 00160$
- 2976 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0751 2977 00138$:
- 2978 ; ../../../include/ztex-isr.h:215: switch (SETUPDAT[2]) {
- 0751 90 E6 BA 2979 mov dptr,#(_SETUPDAT + 0x0002)
- 0754 E0 2980 movx a,@dptr
- 0755 FA 2981 mov r2,a
- 0756 BA 01 02 2982 cjne r2,#0x01,00243$
- 0759 80 0F 2983 sjmp 00139$
- 075B 2984 00243$:
- 075B BA 02 02 2985 cjne r2,#0x02,00244$
- 075E 80 1C 2986 sjmp 00140$
- 0760 2987 00244$:
- 0760 BA 03 02 2988 cjne r2,#0x03,00245$
- 0763 80 29 2989 sjmp 00141$
- 0765 2990 00245$:
- 2991 ; ../../../include/ztex-isr.h:216: case 1:
- 0765 BA 04 4A 2992 cjne r2,#0x04,00143$
- 0768 80 36 2993 sjmp 00142$
- 076A 2994 00139$:
- 2995 ; ../../../include/ztex-isr.h:217: SEND_STRING_DESCRIPTOR(manufacturerString);
- 076A 75 82r00 2996 mov dpl,#_manufacturerString
- 076D 7Ar00 2997 mov r2,#_manufacturerString
- 076F 7Bs00 2998 mov r3,#(_manufacturerString >> 8)
- 0771 8B*00 2999 mov _sendStringDescriptor_PARM_2,r3
- 0773 75*01 05 3000 mov _sendStringDescriptor_PARM_3,#0x05
- 0776 12s04r0B 3001 lcall _sendStringDescriptor
- 3002 ; ../../../include/ztex-isr.h:218: break;
- 0779 02s08r75 3003 ljmp 00160$
- 3004 ; ../../../include/ztex-isr.h:219: case 2:
- 077C 3005 00140$:
- 3006 ; ../../../include/ztex-isr.h:220: SEND_STRING_DESCRIPTOR(productString);
- 077C 75 82r05 3007 mov dpl,#_productString
- 077F 7Ar05 3008 mov r2,#_productString
- 0781 7Bs00 3009 mov r3,#(_productString >> 8)
- 0783 8B*00 3010 mov _sendStringDescriptor_PARM_2,r3
- 0785 75*01 19 3011 mov _sendStringDescriptor_PARM_3,#0x19
- 0788 12s04r0B 3012 lcall _sendStringDescriptor
- 3013 ; ../../../include/ztex-isr.h:221: break;
- 078B 02s08r75 3014 ljmp 00160$
- 3015 ; ../../../include/ztex-isr.h:222: case 3:
- 078E 3016 00141$:
- 3017 ; ../../../include/ztex-isr.h:223: SEND_STRING_DESCRIPTOR(SN_STRING);
- 078E 75 82 8A 3018 mov dpl,#_SN_STRING
- 0791 7A 8A 3019 mov r2,#_SN_STRING
- 0793 7B 00 3020 mov r3,#(_SN_STRING >> 8)
- 0795 8B*00 3021 mov _sendStringDescriptor_PARM_2,r3
- 0797 75*01 0A 3022 mov _sendStringDescriptor_PARM_3,#0x0A
- 079A 12s04r0B 3023 lcall _sendStringDescriptor
- 3024 ; ../../../include/ztex-isr.h:224: break;
- 079D 02s08r75 3025 ljmp 00160$
- 3026 ; ../../../include/ztex-isr.h:225: case 4:
- 07A0 3027 00142$:
- 3028 ; ../../../include/ztex-isr.h:226: SEND_STRING_DESCRIPTOR(configurationString);
- 07A0 75 82r1E 3029 mov dpl,#_configurationString
- 07A3 7Ar1E 3030 mov r2,#_configurationString
- 07A5 7Bs00 3031 mov r3,#(_configurationString >> 8)
- 07A7 8B*00 3032 mov _sendStringDescriptor_PARM_2,r3
- 07A9 75*01 0A 3033 mov _sendStringDescriptor_PARM_3,#0x0A
- 07AC 12s04r0B 3034 lcall _sendStringDescriptor
- 3035 ; ../../../include/ztex-isr.h:227: break;
- 07AF 02s08r75 3036 ljmp 00160$
- 3037 ; ../../../include/ztex-isr.h:228: default:
- 07B2 3038 00143$:
- 3039 ; ../../../include/ztex-isr.h:229: SUDPTRH = MSB(&EmptyStringDescriptor);
- 07B2 7Ar89 3040 mov r2,#_EmptyStringDescriptor
- 07B4 7Bs00 3041 mov r3,#(_EmptyStringDescriptor >> 8)
- 07B6 90 E6 B3 3042 mov dptr,#_SUDPTRH
- 07B9 EB 3043 mov a,r3
- 07BA F0 3044 movx @dptr,a
- 3045 ; ../../../include/ztex-isr.h:230: SUDPTRL = LSB(&EmptyStringDescriptor);
- 07BB 90 E6 B4 3046 mov dptr,#_SUDPTRL
- 07BE 74r89 3047 mov a,#_EmptyStringDescriptor
- 07C0 F0 3048 movx @dptr,a
- 3049 ; ../../../include/ztex-isr.h:233: break;
- 07C1 02s08r75 3050 ljmp 00160$
- 3051 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 07C4 3052 00145$:
- 3053 ; ../../../include/ztex-isr.h:235: SUDPTRH = MSB(&DeviceQualifierDescriptor);
- 07C4 7Ar3B 3054 mov r2,#_DeviceQualifierDescriptor
- 07C6 7Bs00 3055 mov r3,#(_DeviceQualifierDescriptor >> 8)
- 07C8 90 E6 B3 3056 mov dptr,#_SUDPTRH
- 07CB EB 3057 mov a,r3
- 07CC F0 3058 movx @dptr,a
- 3059 ; ../../../include/ztex-isr.h:236: SUDPTRL = LSB(&DeviceQualifierDescriptor);
- 07CD 90 E6 B4 3060 mov dptr,#_SUDPTRL
- 07D0 74r3B 3061 mov a,#_DeviceQualifierDescriptor
- 07D2 F0 3062 movx @dptr,a
- 3063 ; ../../../include/ztex-isr.h:237: break;
- 07D3 02s08r75 3064 ljmp 00160$
- 3065 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 07D6 3066 00146$:
- 3067 ; ../../../include/ztex-isr.h:239: if (USBCS & bmBIT7) {
- 07D6 90 E6 80 3068 mov dptr,#_USBCS
- 07D9 E0 3069 movx a,@dptr
- 07DA FA 3070 mov r2,a
- 07DB 30 E7 12 3071 jnb acc.7,00148$
- 3072 ; ../../../include/ztex-isr.h:240: SUDPTRH = MSB(&FullSpeedConfigDescriptor);
- 07DE 7Ar67 3073 mov r2,#_FullSpeedConfigDescriptor
- 07E0 7Bs00 3074 mov r3,#(_FullSpeedConfigDescriptor >> 8)
- 07E2 90 E6 B3 3075 mov dptr,#_SUDPTRH
- 07E5 EB 3076 mov a,r3
- 07E6 F0 3077 movx @dptr,a
- 3078 ; ../../../include/ztex-isr.h:241: SUDPTRL = LSB(&FullSpeedConfigDescriptor);
- 07E7 90 E6 B4 3079 mov dptr,#_SUDPTRL
- 07EA 74r67 3080 mov a,#_FullSpeedConfigDescriptor
- 07EC F0 3081 movx @dptr,a
- 07ED 02s08r75 3082 ljmp 00160$
- 07F0 3083 00148$:
- 3084 ; ../../../include/ztex-isr.h:244: SUDPTRH = MSB(&HighSpeedConfigDescriptor);
- 07F0 7Ar45 3085 mov r2,#_HighSpeedConfigDescriptor
- 07F2 7Bs00 3086 mov r3,#(_HighSpeedConfigDescriptor >> 8)
- 07F4 90 E6 B3 3087 mov dptr,#_SUDPTRH
- 07F7 EB 3088 mov a,r3
- 07F8 F0 3089 movx @dptr,a
- 3090 ; ../../../include/ztex-isr.h:245: SUDPTRL = LSB(&HighSpeedConfigDescriptor);
- 07F9 90 E6 B4 3091 mov dptr,#_SUDPTRL
- 07FC 74r45 3092 mov a,#_HighSpeedConfigDescriptor
- 07FE F0 3093 movx @dptr,a
- 3094 ; ../../../include/ztex-isr.h:247: break;
- 3095 ; ../../../include/ztex-isr.h:248: default:
- 07FF 80 74 3096 sjmp 00160$
- 0801 3097 00150$:
- 3098 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0801 90 E6 A0 3099 mov dptr,#_EP0CS
- 0804 E0 3100 movx a,@dptr
- 0805 FA 3101 mov r2,a
- 0806 44 01 3102 orl a,#0x01
- 0808 F0 3103 movx @dptr,a
- 3104 ; ../../../include/ztex-isr.h:251: break;
- 3105 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0809 80 6A 3106 sjmp 00160$
- 080B 3107 00152$:
- 3108 ; ../../../include/ztex-isr.h:253: break;
- 3109 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 080B 80 68 3110 sjmp 00160$
- 080D 3111 00153$:
- 080D 90 E7 40 3112 mov dptr,#_EP0BUF
- 3113 ; ../../../include/ztex-isr.h:256: EP0BCH = 0;
- 0810 E4 3114 clr a
- 0811 F0 3115 movx @dptr,a
- 0812 90 E6 8A 3116 mov dptr,#_EP0BCH
- 0815 F0 3117 movx @dptr,a
- 3118 ; ../../../include/ztex-isr.h:257: EP0BCL = 1;
- 0816 90 E6 8B 3119 mov dptr,#_EP0BCL
- 0819 74 01 3120 mov a,#0x01
- 081B F0 3121 movx @dptr,a
- 3122 ; ../../../include/ztex-isr.h:258: break;
- 3123 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 081C 80 57 3124 sjmp 00160$
- 081E 3125 00154$:
- 3126 ; ../../../include/ztex-isr.h:260: resetToggleData();
- 081E 12s03rED 3127 lcall _resetToggleData
- 3128 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0821 80 52 3129 sjmp 00160$
- 0823 3130 00155$:
- 0823 90 E7 40 3131 mov dptr,#_EP0BUF
- 3132 ; ../../../include/ztex-isr.h:264: EP0BCH = 0;
- 0826 E4 3133 clr a
- 0827 F0 3134 movx @dptr,a
- 0828 90 E6 8A 3135 mov dptr,#_EP0BCH
- 082B F0 3136 movx @dptr,a
- 3137 ; ../../../include/ztex-isr.h:265: EP0BCL = 1;
- 082C 90 E6 8B 3138 mov dptr,#_EP0BCL
- 082F 74 01 3139 mov a,#0x01
- 0831 F0 3140 movx @dptr,a
- 3141 ; ../../../include/ztex-isr.h:266: break;
- 3142 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0832 80 41 3143 sjmp 00160$
- 0834 3144 00156$:
- 3145 ; ../../../include/ztex-isr.h:268: resetToggleData();
- 0834 12s03rED 3146 lcall _resetToggleData
- 3147 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0837 80 3C 3148 sjmp 00160$
- 0839 3149 00157$:
- 3150 ; ../../../include/ztex-isr.h:271: if ( SETUPDAT[0] == 0x82 ) {
- 0839 90 E6 B8 3151 mov dptr,#_SETUPDAT
- 083C E0 3152 movx a,@dptr
- 083D FA 3153 mov r2,a
- 083E BA 82 34 3154 cjne r2,#0x82,00160$
- 3155 ; ../../../include/ztex-isr.h:272: ISOFRAME_COUNTER[ ((SETUPDAT[4] >> 1)-1) & 3 ] = 0;
- 0841 90 E6 BC 3156 mov dptr,#(_SETUPDAT + 0x0004)
- 0844 E0 3157 movx a,@dptr
- 0845 C3 3158 clr c
- 0846 13 3159 rrc a
- 0847 14 3160 dec a
- 0848 54 03 3161 anl a,#0x03
- 084A 25 E0 3162 add a,acc
- 084C 24r05 3163 add a,#_ISOFRAME_COUNTER
- 084E F5 82 3164 mov dpl,a
- 0850 E4 3165 clr a
- 0851 34s00 3166 addc a,#(_ISOFRAME_COUNTER >> 8)
- 0853 F5 83 3167 mov dph,a
- 0855 E4 3168 clr a
- 0856 F0 3169 movx @dptr,a
- 0857 A3 3170 inc dptr
- 0858 F0 3171 movx @dptr,a
- 3172 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0859 90 E6 85 3173 mov dptr,#_USBFRAMEL
- 085C E0 3174 movx a,@dptr
- 085D 90 E7 40 3175 mov dptr,#_EP0BUF
- 0860 F0 3176 movx @dptr,a
- 3177 ; ../../../include/ztex-isr.h:274: EP0BUF[1] = USBFRAMEH;
- 0861 90 E6 84 3178 mov dptr,#_USBFRAMEH
- 0864 E0 3179 movx a,@dptr
- 0865 FA 3180 mov r2,a
- 0866 90 E7 41 3181 mov dptr,#(_EP0BUF + 0x0001)
- 0869 F0 3182 movx @dptr,a
- 3183 ; ../../../include/ztex-isr.h:275: EP0BCH = 0;
- 086A 90 E6 8A 3184 mov dptr,#_EP0BCH
- 086D E4 3185 clr a
- 086E F0 3186 movx @dptr,a
- 3187 ; ../../../include/ztex-isr.h:276: EP0BCL = 2;
- 086F 90 E6 8B 3188 mov dptr,#_EP0BCL
- 0872 74 02 3189 mov a,#0x02
- 0874 F0 3190 movx @dptr,a
- 3191 ; ../../../include/ztex-isr.h:280: }
- 0875 3192 00160$:
- 3193 ; ../../../include/ztex-isr.h:283: switch ( bmRequestType ) {
- 0875 90 E6 B8 3194 mov dptr,#_bmRequestType
- 0878 E0 3195 movx a,@dptr
- 0879 FA 3196 mov r2,a
- 087A BA 40 03 3197 cjne r2,#0x40,00250$
- 087D 02s09r65 3198 ljmp 00168$
- 0880 3199 00250$:
- 0880 BA C0 02 3200 cjne r2,#0xC0,00251$
- 0883 80 03 3201 sjmp 00252$
- 0885 3202 00251$:
- 0885 02s09r8F 3203 ljmp 00172$
- 0888 3204 00252$:
- 3205 ; ../../../include/ztex-isr.h:285: ep0_payload_remaining = (SETUPDAT[7] << 8) | SETUPDAT[6];
- 0888 90 E6 BF 3206 mov dptr,#(_SETUPDAT + 0x0007)
- 088B E0 3207 movx a,@dptr
- 088C FB 3208 mov r3,a
- 088D 7A 00 3209 mov r2,#0x00
- 088F 90 E6 BE 3210 mov dptr,#(_SETUPDAT + 0x0006)
- 0892 E0 3211 movx a,@dptr
- 0893 FC 3212 mov r4,a
- 0894 7D 00 3213 mov r5,#0x00
- 0896 90s00r00 3214 mov dptr,#_ep0_payload_remaining
- 0899 EC 3215 mov a,r4
- 089A 4A 3216 orl a,r2
- 089B F0 3217 movx @dptr,a
- 089C ED 3218 mov a,r5
- 089D 4B 3219 orl a,r3
- 089E A3 3220 inc dptr
- 089F F0 3221 movx @dptr,a
- 3222 ; ../../../include/ztex-isr.h:286: ep0_payload_update();
- 08A0 12s04r5E 3223 lcall _ep0_payload_update
- 3224 ; ../../../include/ztex-isr.h:288: switch ( bRequest ) {
- 08A3 90 E6 B9 3225 mov dptr,#_bRequest
- 08A6 E0 3226 movx a,@dptr
- 08A7 FA 3227 mov r2,a
- 08A8 BA 22 02 3228 cjne r2,#0x22,00253$
- 08AB 80 13 3229 sjmp 00162$
- 08AD 3230 00253$:
- 08AD BA 28 03 3231 cjne r2,#0x28,00254$
- 08B0 02s09r41 3232 ljmp 00165$
- 08B3 3233 00254$:
- 08B3 BA 38 02 3234 cjne r2,#0x38,00255$
- 08B6 80 25 3235 sjmp 00163$
- 08B8 3236 00255$:
- 08B8 BA 3A 02 3237 cjne r2,#0x3A,00256$
- 08BB 80 49 3238 sjmp 00164$
- 08BD 3239 00256$:
- 08BD 02s09r5B 3240 ljmp 00166$
- 3241 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 08C0 3242 00162$:
- 3243 ; ../../../include/ztex-isr.h:290: SUDPTRCTL = 0;
- 08C0 90 E6 B5 3244 mov dptr,#_SUDPTRCTL
- 3245 ; ../../../include/ztex-isr.h:291: EP0BCH = 0;
- 08C3 E4 3246 clr a
- 08C4 F0 3247 movx @dptr,a
- 08C5 90 E6 8A 3248 mov dptr,#_EP0BCH
- 08C8 F0 3249 movx @dptr,a
- 3250 ; ../../../include/ztex-isr.h:292: EP0BCL = ZTEX_DESCRIPTOR_LEN;
- 08C9 90 E6 8B 3251 mov dptr,#_EP0BCL
- 08CC 74 28 3252 mov a,#0x28
- 08CE F0 3253 movx @dptr,a
- 3254 ; ../../../include/ztex-isr.h:293: SUDPTRH = MSB(ZTEX_DESCRIPTOR_OFFS);
- 08CF 90 E6 B3 3255 mov dptr,#_SUDPTRH
- 08D2 E4 3256 clr a
- 08D3 F0 3257 movx @dptr,a
- 3258 ; ../../../include/ztex-isr.h:294: SUDPTRL = LSB(ZTEX_DESCRIPTOR_OFFS);
- 08D4 90 E6 B4 3259 mov dptr,#_SUDPTRL
- 08D7 74 6C 3260 mov a,#0x6C
- 08D9 F0 3261 movx @dptr,a
- 3262 ; ../../../include/ztex-isr.h:295: break;
- 08DA 02s09r8F 3263 ljmp 00172$
- 3264 ; ../../../include/ztex-conf.h:90: case $0:
- 08DD 3265 00163$:
- 3266 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 08DD 90 E6 BB 3267 mov dptr,#(_SETUPDAT + 0x0003)
- 08E0 E0 3268 movx a,@dptr
- 08E1 FB 3269 mov r3,a
- 08E2 7A 00 3270 mov r2,#0x00
- 08E4 90 E6 BA 3271 mov dptr,#(_SETUPDAT + 0x0002)
- 08E7 E0 3272 movx a,@dptr
- 08E8 FC 3273 mov r4,a
- 08E9 7D 00 3274 mov r5,#0x00
- 08EB 90s00r00 3275 mov dptr,#_eeprom_addr
- 08EE EC 3276 mov a,r4
- 08EF 4A 3277 orl a,r2
- 08F0 F0 3278 movx @dptr,a
- 08F1 ED 3279 mov a,r5
- 08F2 4B 3280 orl a,r3
- 08F3 A3 3281 inc dptr
- 08F4 F0 3282 movx @dptr,a
- 3283 ; ../../../include/ztex-eeprom.h:216: EP0BCH = 0;
- 08F5 90 E6 8A 3284 mov dptr,#_EP0BCH
- 08F8 E4 3285 clr a
- 08F9 F0 3286 movx @dptr,a
- 3287 ; ../../../include/ztex-eeprom.h:217: EP0BCL = eeprom_read_ep0();
- 08FA 12s02rF0 3288 lcall _eeprom_read_ep0
- 08FD E5 82 3289 mov a,dpl
- 08FF 90 E6 8B 3290 mov dptr,#_EP0BCL
- 0902 F0 3291 movx @dptr,a
- 3292 ; ../../../include/ztex-conf.h:92: break;
- 0903 02s09r8F 3293 ljmp 00172$
- 3294 ; ../../../include/ztex-conf.h:90: case $0:
- 0906 3295 00164$:
- 3296 ; ../../../include/ztex-eeprom.h:244: EP0BUF[0] = LSB(eeprom_write_bytes);
- 0906 90s00r02 3297 mov dptr,#_eeprom_write_bytes
- 0909 E0 3298 movx a,@dptr
- 090A FA 3299 mov r2,a
- 090B A3 3300 inc dptr
- 090C E0 3301 movx a,@dptr
- 090D FB 3302 mov r3,a
- 090E 8A 04 3303 mov ar4,r2
- 0910 90 E7 40 3304 mov dptr,#_EP0BUF
- 0913 EC 3305 mov a,r4
- 0914 F0 3306 movx @dptr,a
- 3307 ; ../../../include/ztex-eeprom.h:245: EP0BUF[1] = MSB(eeprom_write_bytes);
- 0915 8B 02 3308 mov ar2,r3
- 0917 90 E7 41 3309 mov dptr,#(_EP0BUF + 0x0001)
- 091A EA 3310 mov a,r2
- 091B F0 3311 movx @dptr,a
- 3312 ; ../../../include/ztex-eeprom.h:246: EP0BUF[2] = eeprom_write_checksum;
- 091C 90s00r04 3313 mov dptr,#_eeprom_write_checksum
- 091F E0 3314 movx a,@dptr
- 0920 90 E7 42 3315 mov dptr,#(_EP0BUF + 0x0002)
- 0923 F0 3316 movx @dptr,a
- 3317 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0924 75*00 01 3318 mov _eeprom_select_PARM_2,#0x01
- 0927 75 82 00 3319 mov dpl,#0x00
- 092A 12s00rE0 3320 lcall _eeprom_select
- 092D AA 82 3321 mov r2,dpl
- 092F 90 E7 43 3322 mov dptr,#(_EP0BUF + 0x0003)
- 0932 EA 3323 mov a,r2
- 0933 F0 3324 movx @dptr,a
- 3325 ; ../../../include/ztex-eeprom.h:248: EP0BCH = 0;
- 0934 90 E6 8A 3326 mov dptr,#_EP0BCH
- 0937 E4 3327 clr a
- 0938 F0 3328 movx @dptr,a
- 3329 ; ../../../include/ztex-eeprom.h:249: EP0BCL = 4;
- 0939 90 E6 8B 3330 mov dptr,#_EP0BCL
- 093C 74 04 3331 mov a,#0x04
- 093E F0 3332 movx @dptr,a
- 3333 ; ../../../include/ztex-conf.h:92: break;
- 3334 ; ../../../include/ztex-conf.h:90: case $0:
- 093F 80 4E 3335 sjmp 00172$
- 0941 3336 00165$:
- 3337 ; ../../../include/ztex-debug.h:82: debug_read_addr = (__xdata BYTE*)&debug_counter;
- 0941 90s00r6E 3338 mov dptr,#_debug_read_addr
- 0944 74r05 3339 mov a,#_debug_counter
- 0946 F0 3340 movx @dptr,a
- 0947 A3 3341 inc dptr
- 0948 74s00 3342 mov a,#(_debug_counter >> 8)
- 094A F0 3343 movx @dptr,a
- 3344 ; ../../../include/ztex-debug.h:83: EP0BCH = 0;
- 094B 90 E6 8A 3345 mov dptr,#_EP0BCH
- 094E E4 3346 clr a
- 094F F0 3347 movx @dptr,a
- 3348 ; ../../../include/ztex-debug.h:84: EP0BCL = debug_read_ep0();
- 0950 12s03rB3 3349 lcall _debug_read_ep0
- 0953 E5 82 3350 mov a,dpl
- 0955 90 E6 8B 3351 mov dptr,#_EP0BCL
- 0958 F0 3352 movx @dptr,a
- 3353 ; ../../../include/ztex-conf.h:92: break;
- 3354 ; ../../../include/ztex-isr.h:297: default:
- 0959 80 34 3355 sjmp 00172$
- 095B 3356 00166$:
- 3357 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 095B 90 E6 A0 3358 mov dptr,#_EP0CS
- 095E E0 3359 movx a,@dptr
- 095F FA 3360 mov r2,a
- 0960 44 01 3361 orl a,#0x01
- 0962 F0 3362 movx @dptr,a
- 3363 ; ../../../include/ztex-isr.h:300: break;
- 3364 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0963 80 2A 3365 sjmp 00172$
- 0965 3366 00168$:
- 3367 ; ../../../include/ztex-isr.h:305: if ( SETUPDAT[7]!=0 || SETUPDAT[6]!=0 ) {
- 0965 90 E6 BF 3368 mov dptr,#(_SETUPDAT + 0x0007)
- 0968 E0 3369 movx a,@dptr
- 0969 70 06 3370 jnz 00169$
- 096B 90 E6 BE 3371 mov dptr,#(_SETUPDAT + 0x0006)
- 096E E0 3372 movx a,@dptr
- 096F 60 16 3373 jz 00170$
- 0971 3374 00169$:
- 3375 ; ../../../include/ztex-isr.h:306: ep0_vendor_cmd_setup = 1;
- 0971 90s00r04 3376 mov dptr,#_ep0_vendor_cmd_setup
- 0974 74 01 3377 mov a,#0x01
- 0976 F0 3378 movx @dptr,a
- 3379 ; ../../../include/ztex-isr.h:307: EP0BCL = 0;
- 0977 90 E6 8B 3380 mov dptr,#_EP0BCL
- 097A E4 3381 clr a
- 097B F0 3382 movx @dptr,a
- 3383 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 097C 53 91 EF 3384 anl _EXIF,#0xEF
- 097F 90 E6 5D 3385 mov dptr,#_USBIRQ
- 0982 74 01 3386 mov a,#0x01
- 0984 F0 3387 movx @dptr,a
- 0985 80 19 3388 sjmp 00173$
- 0987 3389 00170$:
- 0987 12s04r8B 3390 lcall _ep0_vendor_cmd_su
- 3391 ; ../../../include/ztex-isr.h:313: EP0BCL = 0;
- 098A 90 E6 8B 3392 mov dptr,#_EP0BCL
- 098D E4 3393 clr a
- 098E F0 3394 movx @dptr,a
- 3395 ; ../../../include/ztex-isr.h:315: }
- 098F 3396 00172$:
- 3397 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 098F 53 91 EF 3398 anl _EXIF,#0xEF
- 0992 90 E6 5D 3399 mov dptr,#_USBIRQ
- 0995 74 01 3400 mov a,#0x01
- 0997 F0 3401 movx @dptr,a
- 0998 90 E6 A0 3402 mov dptr,#_EP0CS
- 099B E0 3403 movx a,@dptr
- 099C FA 3404 mov r2,a
- 099D 44 80 3405 orl a,#0x80
- 099F F0 3406 movx @dptr,a
- 09A0 3407 00173$:
- 09A0 D0 D0 3408 pop psw
- 09A2 D0 01 3409 pop (0+1)
- 09A4 D0 00 3410 pop (0+0)
- 09A6 D0 07 3411 pop (0+7)
- 09A8 D0 06 3412 pop (0+6)
- 09AA D0 05 3413 pop (0+5)
- 09AC D0 04 3414 pop (0+4)
- 09AE D0 03 3415 pop (0+3)
- 09B0 D0 02 3416 pop (0+2)
- 09B2 D0 83 3417 pop dph
- 09B4 D0 82 3418 pop dpl
- 09B6 D0 F0 3419 pop b
- 09B8 D0 E0 3420 pop acc
- 09BA D0*00 3421 pop bits
- 09BC 32 3422 reti
- 3423 ;------------------------------------------------------------
- 3424 ;Allocation info for local variables in function 'SOF_ISR'
- 3425 ;------------------------------------------------------------
- 3426 ;------------------------------------------------------------
- 3427 ; ../../../include/ztex-isr.h:325: void SOF_ISR() interrupt
- 3428 ; -----------------------------------------
- 3429 ; function SOF_ISR
- 3430 ; -----------------------------------------
- 09BD 3431 _SOF_ISR:
- 09BD C0 E0 3432 push acc
- 09BF C0 82 3433 push dpl
- 09C1 C0 83 3434 push dph
- 3435 ; ../../../include/ztex-isr.h:327: EXIF &= ~bmBIT4;
- 09C3 53 91 EF 3436 anl _EXIF,#0xEF
- 3437 ; ../../../include/ztex-isr.h:328: USBIRQ = bmBIT1;
- 09C6 90 E6 5D 3438 mov dptr,#_USBIRQ
- 09C9 74 02 3439 mov a,#0x02
- 09CB F0 3440 movx @dptr,a
- 09CC D0 83 3441 pop dph
- 09CE D0 82 3442 pop dpl
- 09D0 D0 E0 3443 pop acc
- 09D2 32 3444 reti
- 3445 ; eliminated unneeded push/pop psw
- 3446 ; eliminated unneeded push/pop b
- 3447 ;------------------------------------------------------------
- 3448 ;Allocation info for local variables in function 'SUTOK_ISR'
- 3449 ;------------------------------------------------------------
- 3450 ;------------------------------------------------------------
- 3451 ; ../../../include/ztex-isr.h:334: void SUTOK_ISR() interrupt
- 3452 ; -----------------------------------------
- 3453 ; function SUTOK_ISR
- 3454 ; -----------------------------------------
- 09D3 3455 _SUTOK_ISR:
- 09D3 C0 E0 3456 push acc
- 09D5 C0 82 3457 push dpl
- 09D7 C0 83 3458 push dph
- 3459 ; ../../../include/ztex-isr.h:336: EXIF &= ~bmBIT4;
- 09D9 53 91 EF 3460 anl _EXIF,#0xEF
- 3461 ; ../../../include/ztex-isr.h:337: USBIRQ = bmBIT2;
- 09DC 90 E6 5D 3462 mov dptr,#_USBIRQ
- 09DF 74 04 3463 mov a,#0x04
- 09E1 F0 3464 movx @dptr,a
- 09E2 D0 83 3465 pop dph
- 09E4 D0 82 3466 pop dpl
- 09E6 D0 E0 3467 pop acc
- 09E8 32 3468 reti
- 3469 ; eliminated unneeded push/pop psw
- 3470 ; eliminated unneeded push/pop b
- 3471 ;------------------------------------------------------------
- 3472 ;Allocation info for local variables in function 'SUSP_ISR'
- 3473 ;------------------------------------------------------------
- 3474 ;------------------------------------------------------------
- 3475 ; ../../../include/ztex-isr.h:343: void SUSP_ISR() interrupt
- 3476 ; -----------------------------------------
- 3477 ; function SUSP_ISR
- 3478 ; -----------------------------------------
- 09E9 3479 _SUSP_ISR:
- 09E9 C0 E0 3480 push acc
- 09EB C0 82 3481 push dpl
- 09ED C0 83 3482 push dph
- 3483 ; ../../../include/ztex-isr.h:345: EXIF &= ~bmBIT4;
- 09EF 53 91 EF 3484 anl _EXIF,#0xEF
- 3485 ; ../../../include/ztex-isr.h:346: USBIRQ = bmBIT3;
- 09F2 90 E6 5D 3486 mov dptr,#_USBIRQ
- 09F5 74 08 3487 mov a,#0x08
- 09F7 F0 3488 movx @dptr,a
- 09F8 D0 83 3489 pop dph
- 09FA D0 82 3490 pop dpl
- 09FC D0 E0 3491 pop acc
- 09FE 32 3492 reti
- 3493 ; eliminated unneeded push/pop psw
- 3494 ; eliminated unneeded push/pop b
- 3495 ;------------------------------------------------------------
- 3496 ;Allocation info for local variables in function 'URES_ISR'
- 3497 ;------------------------------------------------------------
- 3498 ;------------------------------------------------------------
- 3499 ; ../../../include/ztex-isr.h:352: void URES_ISR() interrupt
- 3500 ; -----------------------------------------
- 3501 ; function URES_ISR
- 3502 ; -----------------------------------------
- 09FF 3503 _URES_ISR:
- 09FF C0 E0 3504 push acc
- 0A01 C0 82 3505 push dpl
- 0A03 C0 83 3506 push dph
- 3507 ; ../../../include/ztex-isr.h:354: EXIF &= ~bmBIT4;
- 0A05 53 91 EF 3508 anl _EXIF,#0xEF
- 3509 ; ../../../include/ztex-isr.h:355: USBIRQ = bmBIT4;
- 0A08 90 E6 5D 3510 mov dptr,#_USBIRQ
- 0A0B 74 10 3511 mov a,#0x10
- 0A0D F0 3512 movx @dptr,a
- 0A0E D0 83 3513 pop dph
- 0A10 D0 82 3514 pop dpl
- 0A12 D0 E0 3515 pop acc
- 0A14 32 3516 reti
- 3517 ; eliminated unneeded push/pop psw
- 3518 ; eliminated unneeded push/pop b
- 3519 ;------------------------------------------------------------
- 3520 ;Allocation info for local variables in function 'HSGRANT_ISR'
- 3521 ;------------------------------------------------------------
- 3522 ;------------------------------------------------------------
- 3523 ; ../../../include/ztex-isr.h:361: void HSGRANT_ISR() interrupt
- 3524 ; -----------------------------------------
- 3525 ; function HSGRANT_ISR
- 3526 ; -----------------------------------------
- 0A15 3527 _HSGRANT_ISR:
- 0A15 C0 E0 3528 push acc
- 0A17 C0 82 3529 push dpl
- 0A19 C0 83 3530 push dph
- 3531 ; ../../../include/ztex-isr.h:363: EXIF &= ~bmBIT4;
- 0A1B 53 91 EF 3532 anl _EXIF,#0xEF
- 3533 ; ../../../include/ztex-isr.h:364: USBIRQ = bmBIT5;
- 0A1E 90 E6 5D 3534 mov dptr,#_USBIRQ
- 0A21 74 20 3535 mov a,#0x20
- 0A23 F0 3536 movx @dptr,a
- 0A24 D0 83 3537 pop dph
- 0A26 D0 82 3538 pop dpl
- 0A28 D0 E0 3539 pop acc
- 0A2A 32 3540 reti
- 3541 ; eliminated unneeded push/pop psw
- 3542 ; eliminated unneeded push/pop b
- 3543 ;------------------------------------------------------------
- 3544 ;Allocation info for local variables in function 'EP0ACK_ISR'
- 3545 ;------------------------------------------------------------
- 3546 ;------------------------------------------------------------
- 3547 ; ../../../include/ztex-isr.h:370: void EP0ACK_ISR() interrupt
- 3548 ; -----------------------------------------
- 3549 ; function EP0ACK_ISR
- 3550 ; -----------------------------------------
- 0A2B 3551 _EP0ACK_ISR:
- 0A2B C0 E0 3552 push acc
- 0A2D C0 82 3553 push dpl
- 0A2F C0 83 3554 push dph
- 3555 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0A31 53 91 EF 3556 anl _EXIF,#0xEF
- 0A34 90 E6 5D 3557 mov dptr,#_USBIRQ
- 0A37 74 40 3558 mov a,#0x40
- 0A39 F0 3559 movx @dptr,a
- 0A3A D0 83 3560 pop dph
- 0A3C D0 82 3561 pop dpl
- 0A3E D0 E0 3562 pop acc
- 0A40 32 3563 reti
- 3564 ; eliminated unneeded push/pop psw
- 3565 ; eliminated unneeded push/pop b
- 3566 ;------------------------------------------------------------
- 3567 ;Allocation info for local variables in function 'EP0IN_ISR'
- 3568 ;------------------------------------------------------------
- 3569 ;------------------------------------------------------------
- 3570 ; ../../../include/ztex-isr.h:379: static void EP0IN_ISR () interrupt
- 3571 ; -----------------------------------------
- 3572 ; function EP0IN_ISR
- 3573 ; -----------------------------------------
- 0A41 3574 _EP0IN_ISR:
- 0A41 C0*00 3575 push bits
- 0A43 C0 E0 3576 push acc
- 0A45 C0 F0 3577 push b
- 0A47 C0 82 3578 push dpl
- 0A49 C0 83 3579 push dph
- 0A4B C0 02 3580 push (0+2)
- 0A4D C0 03 3581 push (0+3)
- 0A4F C0 04 3582 push (0+4)
- 0A51 C0 05 3583 push (0+5)
- 0A53 C0 06 3584 push (0+6)
- 0A55 C0 07 3585 push (0+7)
- 0A57 C0 00 3586 push (0+0)
- 0A59 C0 01 3587 push (0+1)
- 0A5B C0 D0 3588 push psw
- 0A5D 75 D0 00 3589 mov psw,#0x00
- 3590 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0A60 C2 E8 3591 clr _EUSB
- 3592 ; ../../../include/ztex-isr.h:382: ep0_payload_update();
- 0A62 12s04r5E 3593 lcall _ep0_payload_update
- 3594 ; ../../../include/ztex-isr.h:383: switch ( ep0_prev_setup_request ) {
- 0A65 90s00r03 3595 mov dptr,#_ep0_prev_setup_request
- 0A68 E0 3596 movx a,@dptr
- 0A69 FA 3597 mov r2,a
- 0A6A BA 28 02 3598 cjne r2,#0x28,00111$
- 0A6D 80 1A 3599 sjmp 00103$
- 0A6F 3600 00111$:
- 0A6F BA 38 02 3601 cjne r2,#0x38,00112$
- 0A72 80 05 3602 sjmp 00101$
- 0A74 3603 00112$:
- 3604 ; ../../../include/ztex-conf.h:95: case $0:
- 0A74 BA 3A 22 3605 cjne r2,#0x3A,00104$
- 0A77 80 29 3606 sjmp 00105$
- 0A79 3607 00101$:
- 3608 ; ../../../include/ztex-eeprom.h:219: EP0BCH = 0;
- 0A79 90 E6 8A 3609 mov dptr,#_EP0BCH
- 0A7C E4 3610 clr a
- 0A7D F0 3611 movx @dptr,a
- 3612 ; ../../../include/ztex-eeprom.h:220: EP0BCL = eeprom_read_ep0();
- 0A7E 12s02rF0 3613 lcall _eeprom_read_ep0
- 0A81 E5 82 3614 mov a,dpl
- 0A83 90 E6 8B 3615 mov dptr,#_EP0BCL
- 0A86 F0 3616 movx @dptr,a
- 3617 ; ../../../include/ztex-conf.h:97: break;
- 3618 ; ../../../include/ztex-conf.h:95: case $0:
- 0A87 80 19 3619 sjmp 00105$
- 0A89 3620 00103$:
- 3621 ; ../../../include/ztex-debug.h:86: EP0BCH = 0;
- 0A89 90 E6 8A 3622 mov dptr,#_EP0BCH
- 0A8C E4 3623 clr a
- 0A8D F0 3624 movx @dptr,a
- 3625 ; ../../../include/ztex-debug.h:87: EP0BCL = debug_read_ep0();
- 0A8E 12s03rB3 3626 lcall _debug_read_ep0
- 0A91 E5 82 3627 mov a,dpl
- 0A93 90 E6 8B 3628 mov dptr,#_EP0BCL
- 0A96 F0 3629 movx @dptr,a
- 3630 ; ../../../include/ztex-conf.h:97: break;
- 3631 ; ../../../include/ztex-isr.h:385: default:
- 0A97 80 09 3632 sjmp 00105$
- 0A99 3633 00104$:
- 3634 ; ../../../include/ztex-isr.h:386: EP0BCH = 0;
- 0A99 90 E6 8A 3635 mov dptr,#_EP0BCH
- 3636 ; ../../../include/ztex-isr.h:387: EP0BCL = 0;
- 0A9C E4 3637 clr a
- 0A9D F0 3638 movx @dptr,a
- 0A9E 90 E6 8B 3639 mov dptr,#_EP0BCL
- 0AA1 F0 3640 movx @dptr,a
- 3641 ; ../../../include/ztex-isr.h:388: }
- 0AA2 3642 00105$:
- 3643 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0AA2 53 91 EF 3644 anl _EXIF,#0xEF
- 0AA5 90 E6 5F 3645 mov dptr,#_EPIRQ
- 0AA8 74 01 3646 mov a,#0x01
- 0AAA F0 3647 movx @dptr,a
- 3648 ; ../../../include/ztex-isr.h:391: EUSB = 1;
- 0AAB D2 E8 3649 setb _EUSB
- 0AAD D0 D0 3650 pop psw
- 0AAF D0 01 3651 pop (0+1)
- 0AB1 D0 00 3652 pop (0+0)
- 0AB3 D0 07 3653 pop (0+7)
- 0AB5 D0 06 3654 pop (0+6)
- 0AB7 D0 05 3655 pop (0+5)
- 0AB9 D0 04 3656 pop (0+4)
- 0ABB D0 03 3657 pop (0+3)
- 0ABD D0 02 3658 pop (0+2)
- 0ABF D0 83 3659 pop dph
- 0AC1 D0 82 3660 pop dpl
- 0AC3 D0 F0 3661 pop b
- 0AC5 D0 E0 3662 pop acc
- 0AC7 D0*00 3663 pop bits
- 0AC9 32 3664 reti
- 3665 ;------------------------------------------------------------
- 3666 ;Allocation info for local variables in function 'EP0OUT_ISR'
- 3667 ;------------------------------------------------------------
- 3668 ;------------------------------------------------------------
- 3669 ; ../../../include/ztex-isr.h:397: static void EP0OUT_ISR () interrupt
- 3670 ; -----------------------------------------
- 3671 ; function EP0OUT_ISR
- 3672 ; -----------------------------------------
- 0ACA 3673 _EP0OUT_ISR:
- 0ACA C0*00 3674 push bits
- 0ACC C0 E0 3675 push acc
- 0ACE C0 F0 3676 push b
- 0AD0 C0 82 3677 push dpl
- 0AD2 C0 83 3678 push dph
- 0AD4 C0 02 3679 push (0+2)
- 0AD6 C0 03 3680 push (0+3)
- 0AD8 C0 04 3681 push (0+4)
- 0ADA C0 05 3682 push (0+5)
- 0ADC C0 06 3683 push (0+6)
- 0ADE C0 07 3684 push (0+7)
- 0AE0 C0 00 3685 push (0+0)
- 0AE2 C0 01 3686 push (0+1)
- 0AE4 C0 D0 3687 push psw
- 0AE6 75 D0 00 3688 mov psw,#0x00
- 3689 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0AE9 C2 E8 3690 clr _EUSB
- 3691 ; ../../../include/ztex-isr.h:400: if ( ep0_vendor_cmd_setup ) {
- 0AEB 90s00r04 3692 mov dptr,#_ep0_vendor_cmd_setup
- 0AEE E0 3693 movx a,@dptr
- 0AEF FA 3694 mov r2,a
- 0AF0 60 20 3695 jz 00102$
- 3696 ; ../../../include/ztex-isr.h:401: ep0_vendor_cmd_setup = 0;
- 0AF2 90s00r04 3697 mov dptr,#_ep0_vendor_cmd_setup
- 0AF5 E4 3698 clr a
- 0AF6 F0 3699 movx @dptr,a
- 3700 ; ../../../include/ztex-isr.h:402: ep0_payload_remaining = (SETUPDAT[7] << 8) | SETUPDAT[6];
- 0AF7 90 E6 BF 3701 mov dptr,#(_SETUPDAT + 0x0007)
- 0AFA E0 3702 movx a,@dptr
- 0AFB FB 3703 mov r3,a
- 0AFC 7A 00 3704 mov r2,#0x00
- 0AFE 90 E6 BE 3705 mov dptr,#(_SETUPDAT + 0x0006)
- 0B01 E0 3706 movx a,@dptr
- 0B02 FC 3707 mov r4,a
- 0B03 7D 00 3708 mov r5,#0x00
- 0B05 90s00r00 3709 mov dptr,#_ep0_payload_remaining
- 0B08 EC 3710 mov a,r4
- 0B09 4A 3711 orl a,r2
- 0B0A F0 3712 movx @dptr,a
- 0B0B ED 3713 mov a,r5
- 0B0C 4B 3714 orl a,r3
- 0B0D A3 3715 inc dptr
- 0B0E F0 3716 movx @dptr,a
- 3717 ; ../../../include/ztex-isr.h:403: ep0_vendor_cmd_su();
- 0B0F 12s04r8B 3718 lcall _ep0_vendor_cmd_su
- 0B12 3719 00102$:
- 3720 ; ../../../include/ztex-isr.h:406: ep0_payload_update();
- 0B12 12s04r5E 3721 lcall _ep0_payload_update
- 3722 ; ../../../include/ztex-isr.h:408: switch ( ep0_prev_setup_request ) {
- 0B15 90s00r03 3723 mov dptr,#_ep0_prev_setup_request
- 0B18 E0 3724 movx a,@dptr
- 0B19 FA 3725 mov r2,a
- 0B1A BA 39 09 3726 cjne r2,#0x39,00104$
- 3727 ; ../../../include/ztex-eeprom.h:237: eeprom_write_ep0(EP0BCL);
- 0B1D 90 E6 8B 3728 mov dptr,#_EP0BCL
- 0B20 E0 3729 movx a,@dptr
- 0B21 F5 82 3730 mov dpl,a
- 0B23 12s03r24 3731 lcall _eeprom_write_ep0
- 3732 ; ../../../include/ztex-isr.h:410: }
- 0B26 3733 00104$:
- 3734 ; ../../../include/ztex-isr.h:412: EP0BCL = 0;
- 0B26 90 E6 8B 3735 mov dptr,#_EP0BCL
- 0B29 E4 3736 clr a
- 0B2A F0 3737 movx @dptr,a
- 3738 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0B2B 53 91 EF 3739 anl _EXIF,#0xEF
- 0B2E 90 E6 5F 3740 mov dptr,#_EPIRQ
- 0B31 74 02 3741 mov a,#0x02
- 0B33 F0 3742 movx @dptr,a
- 3743 ; ../../../include/ztex-isr.h:416: if ( ep0_payload_remaining == 0 ) {
- 0B34 90s00r00 3744 mov dptr,#_ep0_payload_remaining
- 0B37 E0 3745 movx a,@dptr
- 0B38 FA 3746 mov r2,a
- 0B39 A3 3747 inc dptr
- 0B3A E0 3748 movx a,@dptr
- 0B3B FB 3749 mov r3,a
- 0B3C 4A 3750 orl a,r2
- 0B3D 70 08 3751 jnz 00106$
- 3752 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0B3F 90 E6 A0 3753 mov dptr,#_EP0CS
- 0B42 E0 3754 movx a,@dptr
- 0B43 FA 3755 mov r2,a
- 0B44 44 80 3756 orl a,#0x80
- 0B46 F0 3757 movx @dptr,a
- 0B47 3758 00106$:
- 3759 ; ../../../include/ztex-isr.h:419: EUSB = 1;
- 0B47 D2 E8 3760 setb _EUSB
- 0B49 D0 D0 3761 pop psw
- 0B4B D0 01 3762 pop (0+1)
- 0B4D D0 00 3763 pop (0+0)
- 0B4F D0 07 3764 pop (0+7)
- 0B51 D0 06 3765 pop (0+6)
- 0B53 D0 05 3766 pop (0+5)
- 0B55 D0 04 3767 pop (0+4)
- 0B57 D0 03 3768 pop (0+3)
- 0B59 D0 02 3769 pop (0+2)
- 0B5B D0 83 3770 pop dph
- 0B5D D0 82 3771 pop dpl
- 0B5F D0 F0 3772 pop b
- 0B61 D0 E0 3773 pop acc
- 0B63 D0*00 3774 pop bits
- 0B65 32 3775 reti
- 3776 ;------------------------------------------------------------
- 3777 ;Allocation info for local variables in function 'EP1IN_ISR'
- 3778 ;------------------------------------------------------------
- 3779 ;------------------------------------------------------------
- 3780 ; ../../../include/ztex-isr.h:426: void EP1IN_ISR() interrupt
- 3781 ; -----------------------------------------
- 3782 ; function EP1IN_ISR
- 3783 ; -----------------------------------------
- 0B66 3784 _EP1IN_ISR:
- 0B66 C0 E0 3785 push acc
- 0B68 C0 82 3786 push dpl
- 0B6A C0 83 3787 push dph
- 3788 ; ../../../include/ztex-isr.h:428: EXIF &= ~bmBIT4;
- 0B6C 53 91 EF 3789 anl _EXIF,#0xEF
- 3790 ; ../../../include/ztex-isr.h:429: EPIRQ = bmBIT2;
- 0B6F 90 E6 5F 3791 mov dptr,#_EPIRQ
- 0B72 74 04 3792 mov a,#0x04
- 0B74 F0 3793 movx @dptr,a
- 0B75 D0 83 3794 pop dph
- 0B77 D0 82 3795 pop dpl
- 0B79 D0 E0 3796 pop acc
- 0B7B 32 3797 reti
- 3798 ; eliminated unneeded push/pop psw
- 3799 ; eliminated unneeded push/pop b
- 3800 ;------------------------------------------------------------
- 3801 ;Allocation info for local variables in function 'EP1OUT_ISR'
- 3802 ;------------------------------------------------------------
- 3803 ;------------------------------------------------------------
- 3804 ; ../../../include/ztex-isr.h:436: void EP1OUT_ISR() interrupt
- 3805 ; -----------------------------------------
- 3806 ; function EP1OUT_ISR
- 3807 ; -----------------------------------------
- 0B7C 3808 _EP1OUT_ISR:
- 0B7C C0 E0 3809 push acc
- 0B7E C0 82 3810 push dpl
- 0B80 C0 83 3811 push dph
- 3812 ; ../../../include/ztex-isr.h:438: EXIF &= ~bmBIT4;
- 0B82 53 91 EF 3813 anl _EXIF,#0xEF
- 3814 ; ../../../include/ztex-isr.h:439: EPIRQ = bmBIT3;
- 0B85 90 E6 5F 3815 mov dptr,#_EPIRQ
- 0B88 74 08 3816 mov a,#0x08
- 0B8A F0 3817 movx @dptr,a
- 0B8B D0 83 3818 pop dph
- 0B8D D0 82 3819 pop dpl
- 0B8F D0 E0 3820 pop acc
- 0B91 32 3821 reti
- 3822 ; eliminated unneeded push/pop psw
- 3823 ; eliminated unneeded push/pop b
- 3824 ;------------------------------------------------------------
- 3825 ;Allocation info for local variables in function 'EP2_ISR'
- 3826 ;------------------------------------------------------------
- 3827 ;------------------------------------------------------------
- 3828 ; ../../../include/ztex-isr.h:445: void EP2_ISR() interrupt
- 3829 ; -----------------------------------------
- 3830 ; function EP2_ISR
- 3831 ; -----------------------------------------
- 0B92 3832 _EP2_ISR:
- 0B92 C0 E0 3833 push acc
- 0B94 C0 82 3834 push dpl
- 0B96 C0 83 3835 push dph
- 3836 ; ../../../include/ztex-isr.h:447: EXIF &= ~bmBIT4;
- 0B98 53 91 EF 3837 anl _EXIF,#0xEF
- 3838 ; ../../../include/ztex-isr.h:448: EPIRQ = bmBIT4;
- 0B9B 90 E6 5F 3839 mov dptr,#_EPIRQ
- 0B9E 74 10 3840 mov a,#0x10
- 0BA0 F0 3841 movx @dptr,a
- 0BA1 D0 83 3842 pop dph
- 0BA3 D0 82 3843 pop dpl
- 0BA5 D0 E0 3844 pop acc
- 0BA7 32 3845 reti
- 3846 ; eliminated unneeded push/pop psw
- 3847 ; eliminated unneeded push/pop b
- 3848 ;------------------------------------------------------------
- 3849 ;Allocation info for local variables in function 'EP4_ISR'
- 3850 ;------------------------------------------------------------
- 3851 ;------------------------------------------------------------
- 3852 ; ../../../include/ztex-isr.h:454: void EP4_ISR() interrupt
- 3853 ; -----------------------------------------
- 3854 ; function EP4_ISR
- 3855 ; -----------------------------------------
- 0BA8 3856 _EP4_ISR:
- 0BA8 C0 E0 3857 push acc
- 0BAA C0 82 3858 push dpl
- 0BAC C0 83 3859 push dph
- 3860 ; ../../../include/ztex-isr.h:456: EXIF &= ~bmBIT4;
- 0BAE 53 91 EF 3861 anl _EXIF,#0xEF
- 3862 ; ../../../include/ztex-isr.h:457: EPIRQ = bmBIT5;
- 0BB1 90 E6 5F 3863 mov dptr,#_EPIRQ
- 0BB4 74 20 3864 mov a,#0x20
- 0BB6 F0 3865 movx @dptr,a
- 0BB7 D0 83 3866 pop dph
- 0BB9 D0 82 3867 pop dpl
- 0BBB D0 E0 3868 pop acc
- 0BBD 32 3869 reti
- 3870 ; eliminated unneeded push/pop psw
- 3871 ; eliminated unneeded push/pop b
- 3872 ;------------------------------------------------------------
- 3873 ;Allocation info for local variables in function 'EP6_ISR'
- 3874 ;------------------------------------------------------------
- 3875 ;------------------------------------------------------------
- 3876 ; ../../../include/ztex-isr.h:463: void EP6_ISR() interrupt
- 3877 ; -----------------------------------------
- 3878 ; function EP6_ISR
- 3879 ; -----------------------------------------
- 0BBE 3880 _EP6_ISR:
- 0BBE C0 E0 3881 push acc
- 0BC0 C0 82 3882 push dpl
- 0BC2 C0 83 3883 push dph
- 3884 ; ../../../include/ztex-isr.h:465: EXIF &= ~bmBIT4;
- 0BC4 53 91 EF 3885 anl _EXIF,#0xEF
- 3886 ; ../../../include/ztex-isr.h:466: EPIRQ = bmBIT6;
- 0BC7 90 E6 5F 3887 mov dptr,#_EPIRQ
- 0BCA 74 40 3888 mov a,#0x40
- 0BCC F0 3889 movx @dptr,a
- 0BCD D0 83 3890 pop dph
- 0BCF D0 82 3891 pop dpl
- 0BD1 D0 E0 3892 pop acc
- 0BD3 32 3893 reti
- 3894 ; eliminated unneeded push/pop psw
- 3895 ; eliminated unneeded push/pop b
- 3896 ;------------------------------------------------------------
- 3897 ;Allocation info for local variables in function 'EP8_ISR'
- 3898 ;------------------------------------------------------------
- 3899 ;------------------------------------------------------------
- 3900 ; ../../../include/ztex-isr.h:472: void EP8_ISR() interrupt
- 3901 ; -----------------------------------------
- 3902 ; function EP8_ISR
- 3903 ; -----------------------------------------
- 0BD4 3904 _EP8_ISR:
- 0BD4 C0 E0 3905 push acc
- 0BD6 C0 82 3906 push dpl
- 0BD8 C0 83 3907 push dph
- 3908 ; ../../../include/ztex-isr.h:474: EXIF &= ~bmBIT4;
- 0BDA 53 91 EF 3909 anl _EXIF,#0xEF
- 3910 ; ../../../include/ztex-isr.h:475: EPIRQ = bmBIT7;
- 0BDD 90 E6 5F 3911 mov dptr,#_EPIRQ
- 0BE0 74 80 3912 mov a,#0x80
- 0BE2 F0 3913 movx @dptr,a
- 0BE3 D0 83 3914 pop dph
- 0BE5 D0 82 3915 pop dpl
- 0BE7 D0 E0 3916 pop acc
- 0BE9 32 3917 reti
- 3918 ; eliminated unneeded push/pop psw
- 3919 ; eliminated unneeded push/pop b
- 3920 ;------------------------------------------------------------
- 3921 ;Allocation info for local variables in function 'init_USB'
- 3922 ;------------------------------------------------------------
- 3923 ;------------------------------------------------------------
- 3924 ; ../../../include/ztex.h:165: void init_USB ()
- 3925 ; -----------------------------------------
- 3926 ; function init_USB
- 3927 ; -----------------------------------------
- 0BEA 3928 _init_USB:
- 3929 ; ../../../include/ztex.h:167: USBCS |= 0x08;
- 0BEA 90 E6 80 3930 mov dptr,#_USBCS
- 0BED E0 3931 movx a,@dptr
- 0BEE 44 08 3932 orl a,#0x08
- 0BF0 F0 3933 movx @dptr,a
- 3934 ; ../../../include/ztex.h:169: CPUCS = bmBIT4 | bmBIT1;
- 0BF1 90 E6 00 3935 mov dptr,#_CPUCS
- 0BF4 74 12 3936 mov a,#0x12
- 0BF6 F0 3937 movx @dptr,a
- 3938 ; ../../../include/ztex.h:170: CKCON &= ~7;
- 0BF7 53 8E F8 3939 anl _CKCON,#0xF8
- 3940 ; ../../../include/ztex.h:191: EA = 0;
- 0BFA C2 AF 3941 clr _EA
- 3942 ; ../../../include/ztex.h:192: EUSB = 0;
- 0BFC C2 E8 3943 clr _EUSB
- 3944 ; ../../../include/ezintavecs.h:123: INT8VEC_USB.op=0x02;
- 0BFE 90 00 43 3945 mov dptr,#_INT8VEC_USB
- 0C01 74 02 3946 mov a,#0x02
- 0C03 F0 3947 movx @dptr,a
- 3948 ; ../../../include/ezintavecs.h:124: INT8VEC_USB.addrH = 0x01;
- 0C04 90 00 44 3949 mov dptr,#(_INT8VEC_USB + 0x0001)
- 0C07 74 01 3950 mov a,#0x01
- 0C09 F0 3951 movx @dptr,a
- 3952 ; ../../../include/ezintavecs.h:125: INT8VEC_USB.addrL = 0xb8;
- 0C0A 90 00 45 3953 mov dptr,#(_INT8VEC_USB + 0x0002)
- 0C0D 74 B8 3954 mov a,#0xB8
- 0C0F F0 3955 movx @dptr,a
- 3956 ; ../../../include/ezintavecs.h:126: INTSETUP |= 8;
- 0C10 90 E6 68 3957 mov dptr,#_INTSETUP
- 0C13 E0 3958 movx a,@dptr
- 0C14 44 08 3959 orl a,#0x08
- 0C16 F0 3960 movx @dptr,a
- 3961 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0C17 90 01 00 3962 mov dptr,#_INTVEC_SUDAV
- 0C1A 74 02 3963 mov a,#0x02
- 0C1C F0 3964 movx @dptr,a
- 3965 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0C1D 7ArBF 3966 mov r2,#_SUDAV_ISR
- 0C1F 7Bs04 3967 mov r3,#(_SUDAV_ISR >> 8)
- 0C21 8B 04 3968 mov ar4,r3
- 0C23 90 01 01 3969 mov dptr,#(_INTVEC_SUDAV + 0x0001)
- 0C26 EC 3970 mov a,r4
- 0C27 F0 3971 movx @dptr,a
- 3972 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0C28 90 01 02 3973 mov dptr,#(_INTVEC_SUDAV + 0x0002)
- 0C2B EA 3974 mov a,r2
- 0C2C F0 3975 movx @dptr,a
- 3976 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0C2D 90 01 04 3977 mov dptr,#_INTVEC_SOF
- 0C30 74 02 3978 mov a,#0x02
- 0C32 F0 3979 movx @dptr,a
- 3980 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0C33 7ArBD 3981 mov r2,#_SOF_ISR
- 0C35 7Bs09 3982 mov r3,#(_SOF_ISR >> 8)
- 0C37 8B 04 3983 mov ar4,r3
- 0C39 90 01 05 3984 mov dptr,#(_INTVEC_SOF + 0x0001)
- 0C3C EC 3985 mov a,r4
- 0C3D F0 3986 movx @dptr,a
- 3987 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0C3E 90 01 06 3988 mov dptr,#(_INTVEC_SOF + 0x0002)
- 0C41 EA 3989 mov a,r2
- 0C42 F0 3990 movx @dptr,a
- 3991 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0C43 90 01 08 3992 mov dptr,#_INTVEC_SUTOK
- 0C46 74 02 3993 mov a,#0x02
- 0C48 F0 3994 movx @dptr,a
- 3995 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0C49 7ArD3 3996 mov r2,#_SUTOK_ISR
- 0C4B 7Bs09 3997 mov r3,#(_SUTOK_ISR >> 8)
- 0C4D 8B 04 3998 mov ar4,r3
- 0C4F 90 01 09 3999 mov dptr,#(_INTVEC_SUTOK + 0x0001)
- 0C52 EC 4000 mov a,r4
- 0C53 F0 4001 movx @dptr,a
- 4002 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0C54 90 01 0A 4003 mov dptr,#(_INTVEC_SUTOK + 0x0002)
- 0C57 EA 4004 mov a,r2
- 0C58 F0 4005 movx @dptr,a
- 4006 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0C59 90 01 0C 4007 mov dptr,#_INTVEC_SUSPEND
- 0C5C 74 02 4008 mov a,#0x02
- 0C5E F0 4009 movx @dptr,a
- 4010 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0C5F 7ArE9 4011 mov r2,#_SUSP_ISR
- 0C61 7Bs09 4012 mov r3,#(_SUSP_ISR >> 8)
- 0C63 8B 04 4013 mov ar4,r3
- 0C65 90 01 0D 4014 mov dptr,#(_INTVEC_SUSPEND + 0x0001)
- 0C68 EC 4015 mov a,r4
- 0C69 F0 4016 movx @dptr,a
- 4017 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0C6A 90 01 0E 4018 mov dptr,#(_INTVEC_SUSPEND + 0x0002)
- 0C6D EA 4019 mov a,r2
- 0C6E F0 4020 movx @dptr,a
- 4021 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0C6F 90 01 10 4022 mov dptr,#_INTVEC_USBRESET
- 0C72 74 02 4023 mov a,#0x02
- 0C74 F0 4024 movx @dptr,a
- 4025 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0C75 7ArFF 4026 mov r2,#_URES_ISR
- 0C77 7Bs09 4027 mov r3,#(_URES_ISR >> 8)
- 0C79 8B 04 4028 mov ar4,r3
- 0C7B 90 01 11 4029 mov dptr,#(_INTVEC_USBRESET + 0x0001)
- 0C7E EC 4030 mov a,r4
- 0C7F F0 4031 movx @dptr,a
- 4032 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0C80 90 01 12 4033 mov dptr,#(_INTVEC_USBRESET + 0x0002)
- 0C83 EA 4034 mov a,r2
- 0C84 F0 4035 movx @dptr,a
- 4036 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0C85 90 01 14 4037 mov dptr,#_INTVEC_HISPEED
- 0C88 74 02 4038 mov a,#0x02
- 0C8A F0 4039 movx @dptr,a
- 4040 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0C8B 7Ar15 4041 mov r2,#_HSGRANT_ISR
- 0C8D 7Bs0A 4042 mov r3,#(_HSGRANT_ISR >> 8)
- 0C8F 8B 04 4043 mov ar4,r3
- 0C91 90 01 15 4044 mov dptr,#(_INTVEC_HISPEED + 0x0001)
- 0C94 EC 4045 mov a,r4
- 0C95 F0 4046 movx @dptr,a
- 4047 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0C96 90 01 16 4048 mov dptr,#(_INTVEC_HISPEED + 0x0002)
- 0C99 EA 4049 mov a,r2
- 0C9A F0 4050 movx @dptr,a
- 4051 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0C9B 90 01 18 4052 mov dptr,#_INTVEC_EP0ACK
- 0C9E 74 02 4053 mov a,#0x02
- 0CA0 F0 4054 movx @dptr,a
- 4055 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0CA1 7Ar2B 4056 mov r2,#_EP0ACK_ISR
- 0CA3 7Bs0A 4057 mov r3,#(_EP0ACK_ISR >> 8)
- 0CA5 8B 04 4058 mov ar4,r3
- 0CA7 90 01 19 4059 mov dptr,#(_INTVEC_EP0ACK + 0x0001)
- 0CAA EC 4060 mov a,r4
- 0CAB F0 4061 movx @dptr,a
- 4062 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0CAC 90 01 1A 4063 mov dptr,#(_INTVEC_EP0ACK + 0x0002)
- 0CAF EA 4064 mov a,r2
- 0CB0 F0 4065 movx @dptr,a
- 4066 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0CB1 90 01 20 4067 mov dptr,#_INTVEC_EP0IN
- 0CB4 74 02 4068 mov a,#0x02
- 0CB6 F0 4069 movx @dptr,a
- 4070 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0CB7 7Ar41 4071 mov r2,#_EP0IN_ISR
- 0CB9 7Bs0A 4072 mov r3,#(_EP0IN_ISR >> 8)
- 0CBB 8B 04 4073 mov ar4,r3
- 0CBD 90 01 21 4074 mov dptr,#(_INTVEC_EP0IN + 0x0001)
- 0CC0 EC 4075 mov a,r4
- 0CC1 F0 4076 movx @dptr,a
- 4077 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0CC2 90 01 22 4078 mov dptr,#(_INTVEC_EP0IN + 0x0002)
- 0CC5 EA 4079 mov a,r2
- 0CC6 F0 4080 movx @dptr,a
- 4081 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0CC7 90 01 24 4082 mov dptr,#_INTVEC_EP0OUT
- 0CCA 74 02 4083 mov a,#0x02
- 0CCC F0 4084 movx @dptr,a
- 4085 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0CCD 7ArCA 4086 mov r2,#_EP0OUT_ISR
- 0CCF 7Bs0A 4087 mov r3,#(_EP0OUT_ISR >> 8)
- 0CD1 8B 04 4088 mov ar4,r3
- 0CD3 90 01 25 4089 mov dptr,#(_INTVEC_EP0OUT + 0x0001)
- 0CD6 EC 4090 mov a,r4
- 0CD7 F0 4091 movx @dptr,a
- 4092 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0CD8 90 01 26 4093 mov dptr,#(_INTVEC_EP0OUT + 0x0002)
- 0CDB EA 4094 mov a,r2
- 0CDC F0 4095 movx @dptr,a
- 4096 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0CDD 90 01 28 4097 mov dptr,#_INTVEC_EP1IN
- 0CE0 74 02 4098 mov a,#0x02
- 0CE2 F0 4099 movx @dptr,a
- 4100 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0CE3 7Ar66 4101 mov r2,#_EP1IN_ISR
- 0CE5 7Bs0B 4102 mov r3,#(_EP1IN_ISR >> 8)
- 0CE7 8B 04 4103 mov ar4,r3
- 0CE9 90 01 29 4104 mov dptr,#(_INTVEC_EP1IN + 0x0001)
- 0CEC EC 4105 mov a,r4
- 0CED F0 4106 movx @dptr,a
- 4107 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0CEE 90 01 2A 4108 mov dptr,#(_INTVEC_EP1IN + 0x0002)
- 0CF1 EA 4109 mov a,r2
- 0CF2 F0 4110 movx @dptr,a
- 4111 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0CF3 90 01 2C 4112 mov dptr,#_INTVEC_EP1OUT
- 0CF6 74 02 4113 mov a,#0x02
- 0CF8 F0 4114 movx @dptr,a
- 4115 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0CF9 7Ar7C 4116 mov r2,#_EP1OUT_ISR
- 0CFB 7Bs0B 4117 mov r3,#(_EP1OUT_ISR >> 8)
- 0CFD 8B 04 4118 mov ar4,r3
- 0CFF 90 01 2D 4119 mov dptr,#(_INTVEC_EP1OUT + 0x0001)
- 0D02 EC 4120 mov a,r4
- 0D03 F0 4121 movx @dptr,a
- 4122 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0D04 90 01 2E 4123 mov dptr,#(_INTVEC_EP1OUT + 0x0002)
- 0D07 EA 4124 mov a,r2
- 0D08 F0 4125 movx @dptr,a
- 4126 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0D09 90 01 30 4127 mov dptr,#_INTVEC_EP2
- 0D0C 74 02 4128 mov a,#0x02
- 0D0E F0 4129 movx @dptr,a
- 4130 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0D0F 7Ar92 4131 mov r2,#_EP2_ISR
- 0D11 7Bs0B 4132 mov r3,#(_EP2_ISR >> 8)
- 0D13 8B 04 4133 mov ar4,r3
- 0D15 90 01 31 4134 mov dptr,#(_INTVEC_EP2 + 0x0001)
- 0D18 EC 4135 mov a,r4
- 0D19 F0 4136 movx @dptr,a
- 4137 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0D1A 90 01 32 4138 mov dptr,#(_INTVEC_EP2 + 0x0002)
- 0D1D EA 4139 mov a,r2
- 0D1E F0 4140 movx @dptr,a
- 4141 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0D1F 90 01 34 4142 mov dptr,#_INTVEC_EP4
- 0D22 74 02 4143 mov a,#0x02
- 0D24 F0 4144 movx @dptr,a
- 4145 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0D25 7ArA8 4146 mov r2,#_EP4_ISR
- 0D27 7Bs0B 4147 mov r3,#(_EP4_ISR >> 8)
- 0D29 8B 04 4148 mov ar4,r3
- 0D2B 90 01 35 4149 mov dptr,#(_INTVEC_EP4 + 0x0001)
- 0D2E EC 4150 mov a,r4
- 0D2F F0 4151 movx @dptr,a
- 4152 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0D30 90 01 36 4153 mov dptr,#(_INTVEC_EP4 + 0x0002)
- 0D33 EA 4154 mov a,r2
- 0D34 F0 4155 movx @dptr,a
- 4156 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0D35 90 01 38 4157 mov dptr,#_INTVEC_EP6
- 0D38 74 02 4158 mov a,#0x02
- 0D3A F0 4159 movx @dptr,a
- 4160 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0D3B 7ArBE 4161 mov r2,#_EP6_ISR
- 0D3D 7Bs0B 4162 mov r3,#(_EP6_ISR >> 8)
- 0D3F 8B 04 4163 mov ar4,r3
- 0D41 90 01 39 4164 mov dptr,#(_INTVEC_EP6 + 0x0001)
- 0D44 EC 4165 mov a,r4
- 0D45 F0 4166 movx @dptr,a
- 4167 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0D46 90 01 3A 4168 mov dptr,#(_INTVEC_EP6 + 0x0002)
- 0D49 EA 4169 mov a,r2
- 0D4A F0 4170 movx @dptr,a
- 4171 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0D4B 90 01 3C 4172 mov dptr,#_INTVEC_EP8
- 0D4E 74 02 4173 mov a,#0x02
- 0D50 F0 4174 movx @dptr,a
- 4175 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0D51 7ArD4 4176 mov r2,#_EP8_ISR
- 0D53 7Bs0B 4177 mov r3,#(_EP8_ISR >> 8)
- 0D55 8B 04 4178 mov ar4,r3
- 0D57 90 01 3D 4179 mov dptr,#(_INTVEC_EP8 + 0x0001)
- 0D5A EC 4180 mov a,r4
- 0D5B F0 4181 movx @dptr,a
- 4182 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0D5C 90 01 3E 4183 mov dptr,#(_INTVEC_EP8 + 0x0002)
- 0D5F EA 4184 mov a,r2
- 0D60 F0 4185 movx @dptr,a
- 4186 ; ../../../include/ztex.h:213: EXIF &= ~bmBIT4;
- 0D61 53 91 EF 4187 anl _EXIF,#0xEF
- 4188 ; ../../../include/ztex.h:214: USBIRQ = 0x7f;
- 0D64 90 E6 5D 4189 mov dptr,#_USBIRQ
- 0D67 74 7F 4190 mov a,#0x7F
- 0D69 F0 4191 movx @dptr,a
- 4192 ; ../../../include/ztex.h:215: USBIE |= 0x7f;
- 0D6A 90 E6 5C 4193 mov dptr,#_USBIE
- 0D6D E0 4194 movx a,@dptr
- 0D6E FA 4195 mov r2,a
- 0D6F 44 7F 4196 orl a,#0x7F
- 0D71 F0 4197 movx @dptr,a
- 4198 ; ../../../include/ztex.h:216: EPIRQ = 0xff;
- 0D72 90 E6 5F 4199 mov dptr,#_EPIRQ
- 0D75 74 FF 4200 mov a,#0xFF
- 0D77 F0 4201 movx @dptr,a
- 4202 ; ../../../include/ztex.h:217: EPIE = 0xff;
- 0D78 90 E6 5E 4203 mov dptr,#_EPIE
- 0D7B 74 FF 4204 mov a,#0xFF
- 0D7D F0 4205 movx @dptr,a
- 4206 ; ../../../include/ztex.h:219: EUSB = 1;
- 0D7E D2 E8 4207 setb _EUSB
- 4208 ; ../../../include/ztex.h:220: EA = 1;
- 0D80 D2 AF 4209 setb _EA
- 4210 ; ../../../include/ztex.h:154: EP$0CFG = bmBIT7 | bmBIT5;
- 0D82 90 E6 11 4211 mov dptr,#_EP1INCFG
- 0D85 74 A0 4212 mov a,#0xA0
- 0D87 F0 4213 movx @dptr,a
- 4214 ; ../../../include/ezregs.h:46: _endasm;
- 4215
- 0D88 00 4216 nop
- 0D89 00 4217 nop
- 0D8A 00 4218 nop
- 0D8B 00 4219 nop
- 4220
- 4221 ; ../../../include/ztex.h:154: EP$0CFG = bmBIT7 | bmBIT5;
- 0D8C 90 E6 10 4222 mov dptr,#_EP1OUTCFG
- 0D8F 74 A0 4223 mov a,#0xA0
- 0D91 F0 4224 movx @dptr,a
- 4225 ; ../../../include/ezregs.h:46: _endasm;
- 4226
- 0D92 00 4227 nop
- 0D93 00 4228 nop
- 0D94 00 4229 nop
- 0D95 00 4230 nop
- 4231
- 4232 ; ../../../include/ztex.h:149: ;
- 0D96 90 E6 12 4233 mov dptr,#_EP2CFG
- 0D99 E4 4234 clr a
- 0D9A F0 4235 movx @dptr,a
- 4236 ; ../../../include/ezregs.h:46: _endasm;
- 4237
- 0D9B 00 4238 nop
- 0D9C 00 4239 nop
- 0D9D 00 4240 nop
- 0D9E 00 4241 nop
- 4242
- 4243 ; ../../../include/ztex.h:149: ;
- 0D9F 90 E6 13 4244 mov dptr,#_EP4CFG
- 0DA2 E4 4245 clr a
- 0DA3 F0 4246 movx @dptr,a
- 4247 ; ../../../include/ezregs.h:46: _endasm;
- 4248
- 0DA4 00 4249 nop
- 0DA5 00 4250 nop
- 0DA6 00 4251 nop
- 0DA7 00 4252 nop
- 4253
- 4254 ; ../../../include/ztex.h:149: ;
- 0DA8 90 E6 14 4255 mov dptr,#_EP6CFG
- 0DAB E4 4256 clr a
- 0DAC F0 4257 movx @dptr,a
- 4258 ; ../../../include/ezregs.h:46: _endasm;
- 4259
- 0DAD 00 4260 nop
- 0DAE 00 4261 nop
- 0DAF 00 4262 nop
- 0DB0 00 4263 nop
- 4264
- 4265 ; ../../../include/ztex.h:149: ;
- 0DB1 90 E6 15 4266 mov dptr,#_EP8CFG
- 0DB4 E4 4267 clr a
- 0DB5 F0 4268 movx @dptr,a
- 4269 ; ../../../include/ezregs.h:46: _endasm;
- 4270
- 0DB6 00 4271 nop
- 0DB7 00 4272 nop
- 0DB8 00 4273 nop
- 0DB9 00 4274 nop
- 4275
- 4276 ; ../../../include/ztex.h:236: debug_init();
- 0DBA 12s03r95 4277 lcall _debug_init
- 4278 ; ../../../include/ztex.h:239: USBCS |= bmBIT7 | bmBIT1;
- 0DBD 90 E6 80 4279 mov dptr,#_USBCS
- 0DC0 E0 4280 movx a,@dptr
- 0DC1 44 82 4281 orl a,#0x82
- 0DC3 F0 4282 movx @dptr,a
- 4283 ; ../../../include/ztex.h:240: wait(250);
- 0DC4 90 00 FA 4284 mov dptr,#0x00FA
- 0DC7 12s00r00 4285 lcall _wait
- 4286 ; ../../../include/ztex.h:241: USBCS &= ~0x08;
- 0DCA 90 E6 80 4287 mov dptr,#_USBCS
- 0DCD E0 4288 movx a,@dptr
- 0DCE 54 F7 4289 anl a,#0xF7
- 0DD0 F0 4290 movx @dptr,a
- 0DD1 22 4291 ret
- 4292 ;------------------------------------------------------------
- 4293 ;Allocation info for local variables in function 'main'
- 4294 ;------------------------------------------------------------
- 4295 ;i Allocated to registers
- 4296 ;b Allocated to registers r4
- 4297 ;------------------------------------------------------------
- 4298 ; debug.c:32: void main(void)
- 4299 ; -----------------------------------------
- 4300 ; function main
- 4301 ; -----------------------------------------
- 0DD2 4302 _main:
- 4303 ; debug.c:38: init_USB();
- 0DD2 12s0BrEA 4304 lcall _init_USB
- 4305 ; debug.c:41: while (1) {
- 0DD5 7A 00 4306 mov r2,#0x00
- 0DD7 7B 00 4307 mov r3,#0x00
- 0DD9 4308 00102$:
- 4309 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0DD9 8A 04 4310 mov ar4,r2
- 0DDB 90s00r6B 4311 mov dptr,#_debug_msg_buf
- 0DDE EC 4312 mov a,r4
- 0DDF F0 4313 movx @dptr,a
- 4314 ; debug.c:44: debug_msg_buf[1] = i >> 8;
- 0DE0 8B 04 4315 mov ar4,r3
- 0DE2 90s00r6C 4316 mov dptr,#(_debug_msg_buf + 0x0001)
- 0DE5 EC 4317 mov a,r4
- 0DE6 F0 4318 movx @dptr,a
- 4319 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0DE7 C0 02 4320 push ar2
- 0DE9 C0 03 4321 push ar3
- 0DEB 12s03r51 4322 lcall _debug_add_msg
- 0DEE D0 03 4323 pop ar3
- 0DF0 D0 02 4324 pop ar2
- 4325 ; debug.c:46: i+=1;
- 0DF2 0A 4326 inc r2
- 0DF3 BA 00 01 4327 cjne r2,#0x00,00113$
- 0DF6 0B 4328 inc r3
- 0DF7 4329 00113$:
- 4330 ; debug.c:30: #include[ztex.h]
- 0DF7 7C 00 4331 mov r4,#0x00
- 0DF9 4332 00104$:
- 0DF9 BC 64 00 4333 cjne r4,#0x64,00114$
- 0DFC 4334 00114$:
- 0DFC 50 DB 4335 jnc 00102$
- 0DFE 90s00r69 4336 mov dptr,#_debug_stack_ptr
- 0E01 E0 4337 movx a,@dptr
- 0E02 FD 4338 mov r5,a
- 0E03 A3 4339 inc dptr
- 0E04 E0 4340 movx a,@dptr
- 0E05 FE 4341 mov r6,a
- 0E06 8D 82 4342 mov dpl,r5
- 0E08 8E 83 4343 mov dph,r6
- 0E0A A3 4344 inc dptr
- 0E0B A3 4345 inc dptr
- 0E0C EC 4346 mov a,r4
- 0E0D F0 4347 movx @dptr,a
- 0E0E 90 00 0A 4348 mov dptr,#0x000A
- 0E11 C0 02 4349 push ar2
- 0E13 C0 03 4350 push ar3
- 0E15 C0 04 4351 push ar4
- 0E17 12s00r00 4352 lcall _wait
- 0E1A D0 04 4353 pop ar4
- 0E1C D0 03 4354 pop ar3
- 0E1E D0 02 4355 pop ar2
- 0E20 0C 4356 inc r4
- 0E21 80 D6 4357 sjmp 00104$
- 4358 .area CSEG (CODE)
- 4359 .area CONST (CODE)
- 0000 4360 _manufacturerString:
- 0000 5A 54 45 58 4361 .ascii "ZTEX"
- 0004 00 4362 .db 0x00
- 0005 4363 _productString:
- 0005 64 65 62 75 67 20 4364 .ascii "debug for EZ-USB devices"
- 66 6F 72 20 45 5A
- 2D 55 53 42 20 64
- 65 76 69 63 65 73
- 001D 00 4365 .db 0x00
- 001E 4366 _configurationString:
- 001E 28 75 6E 6B 6E 6F 4367 .ascii "(unknown)"
- 77 6E 29
- 0027 00 4368 .db 0x00
- 0028 4369 _PadByte:
- 0028 00 4370 .db #0x00
- 0029 4371 _DeviceDescriptor:
- 0029 12 4372 .db #0x12
- 002A 01 4373 .db #0x01
- 002B 00 4374 .db #0x00
- 002C 02 4375 .db #0x02
- 002D FF 4376 .db #0xFF
- 002E FF 4377 .db #0xFF
- 002F FF 4378 .db #0xFF
- 0030 40 4379 .db #0x40
- 0031 1A 4380 .db #0x1A
- 0032 22 4381 .db #0x22
- 0033 00 4382 .db #0x00
- 0034 01 4383 .db #0x01
- 0035 00 4384 .db #0x00
- 0036 00 4385 .db #0x00
- 0037 01 4386 .db #0x01
- 0038 02 4387 .db #0x02
- 0039 03 4388 .db #0x03
- 003A 01 4389 .db #0x01
- 003B 4390 _DeviceQualifierDescriptor:
- 003B 0A 4391 .db #0x0A
- 003C 06 4392 .db #0x06
- 003D 00 4393 .db #0x00
- 003E 02 4394 .db #0x02
- 003F FF 4395 .db #0xFF
- 0040 FF 4396 .db #0xFF
- 0041 FF 4397 .db #0xFF
- 0042 40 4398 .db #0x40
- 0043 01 4399 .db #0x01
- 0044 00 4400 .db #0x00
- 0045 4401 _HighSpeedConfigDescriptor:
- 0045 09 4402 .db #0x09
- 0046 02 4403 .db #0x02
- 0047 20 4404 .db #0x20
- 0048 00 4405 .db #0x00
- 0049 01 4406 .db #0x01
- 004A 01 4407 .db #0x01
- 004B 04 4408 .db #0x04
- 004C C0 4409 .db #0xC0
- 004D 32 4410 .db #0x32
- 004E 09 4411 .db #0x09
- 004F 04 4412 .db #0x04
- 0050 00 4413 .db #0x00
- 0051 00 4414 .db #0x00
- 0052 02 4415 .db #0x02
- 0053 FF 4416 .db #0xFF
- 0054 FF 4417 .db #0xFF
- 0055 FF 4418 .db #0xFF
- 0056 00 4419 .db #0x00
- 0057 07 4420 .db #0x07
- 0058 05 4421 .db #0x05
- 0059 81 4422 .db #0x81
- 005A 02 4423 .db #0x02
- 005B 00 4424 .db #0x00
- 005C 02 4425 .db #0x02
- 005D 00 4426 .db #0x00
- 005E 07 4427 .db #0x07
- 005F 05 4428 .db #0x05
- 0060 01 4429 .db #0x01
- 0061 02 4430 .db #0x02
- 0062 00 4431 .db #0x00
- 0063 02 4432 .db #0x02
- 0064 00 4433 .db #0x00
- 0065 4434 _HighSpeedConfigDescriptor_PadByte:
- 0065 00 4435 .db #0x00
- 0066 00 4436 .db 0x00
- 0067 4437 _FullSpeedConfigDescriptor:
- 0067 09 4438 .db #0x09
- 0068 02 4439 .db #0x02
- 0069 20 4440 .db #0x20
- 006A 00 4441 .db #0x00
- 006B 01 4442 .db #0x01
- 006C 01 4443 .db #0x01
- 006D 04 4444 .db #0x04
- 006E C0 4445 .db #0xC0
- 006F 32 4446 .db #0x32
- 0070 09 4447 .db #0x09
- 0071 04 4448 .db #0x04
- 0072 00 4449 .db #0x00
- 0073 00 4450 .db #0x00
- 0074 02 4451 .db #0x02
- 0075 FF 4452 .db #0xFF
- 0076 FF 4453 .db #0xFF
- 0077 FF 4454 .db #0xFF
- 0078 00 4455 .db #0x00
- 0079 07 4456 .db #0x07
- 007A 05 4457 .db #0x05
- 007B 81 4458 .db #0x81
- 007C 02 4459 .db #0x02
- 007D 40 4460 .db #0x40
- 007E 00 4461 .db #0x00
- 007F 00 4462 .db #0x00
- 0080 07 4463 .db #0x07
- 0081 05 4464 .db #0x05
- 0082 01 4465 .db #0x01
- 0083 02 4466 .db #0x02
- 0084 40 4467 .db #0x40
- 0085 00 4468 .db #0x00
- 0086 00 4469 .db #0x00
- 0087 4470 _FullSpeedConfigDescriptor_PadByte:
- 0087 00 4471 .db #0x00
- 0088 00 4472 .db 0x00
- 0089 4473 _EmptyStringDescriptor:
- 0089 04 4474 .db #0x04
- 008A 03 4475 .db #0x03
- 008B 00 4476 .db #0x00
- 008C 00 4477 .db #0x00
- 4478 .area XINIT (CODE)
- 0000 4479 __xinit__ep0_payload_remaining:
- 0000 00 00 4480 .byte #0x00,#0x00
- 0002 4481 __xinit__ep0_payload_transfer:
- 0002 00 4482 .db #0x00
- 0003 4483 __xinit__ep0_prev_setup_request:
- 0003 FF 4484 .db #0xFF
- 0004 4485 __xinit__ep0_vendor_cmd_setup:
- 0004 00 4486 .db #0x00
- 0005 4487 __xinit__ISOFRAME_COUNTER:
- 0005 00 00 4488 .byte #0x00,#0x00
- 0007 00 00 4489 .byte #0x00,#0x00
- 0009 00 00 4490 .byte #0x00,#0x00
- 000B 00 00 4491 .byte #0x00,#0x00
- 4492 .area CABS (ABS,CODE)
Index: debug/debug.ihx
===================================================================
--- debug/debug.ihx (revision 6)
+++ debug/debug.ihx (nonexistent)
@@ -1,487 +0,0 @@
-:03020000020208EF
-:0302610002020393
-:0502030012103680FE20
-:03000000020200F9
-:0100030032CA
-:01000B0032C2
-:0100130032BA
-:01001B0032B2
-:0100230032AA
-:01002B0032A2
-:01003300329A
-:01003B003292
-:01004300328A
-:01004B003282
-:01005300327A
-:01005B003272
-:01006300326A
-:0101000032CC
-:0101040032C8
-:0101080032C4
-:01010C0032C0
-:0101100032BC
-:0101140032B8
-:0101180032B4
-:0101200032AC
-:0101240032A8
-:0101280032A4
-:01012C0032A0
-:01013000329C
-:010134003298
-:010138003294
-:01013C003290
-:01014000328C
-:010148003284
-:01014C003280
-:01015000327C
-:010154003278
-:010158003274
-:01015C003270
-:01016000326C
-:01017000325C
-:010174003258
-:010178003254
-:01017C003250
-:01018000324C
-:010184003248
-:010188003244
-:01018C003240
-:01019000323C
-:010194003238
-:010198003234
-:01019C003230
-:0101A000322C
-:0101A8003224
-:0101AC003220
-:0101B000321C
-:0101B4003218
-:0101B8003214
-:08026400AA82AB837C007D003F
-:0B026C00C3EC9AED9B50147EB07F04A1
-:050277001EBEFF011F87
-:0B027C00EE4F70F70CBC00E80D80E5B1
-:010287002254
-:08028800AA82AB837C007D001B
-:0B029000C3EC9AED9B50147E0A7F0027
-:05029B001EBEFF011F63
-:0B02A000EE4F70F70CBC00E80D80E58D
-:0102AB002230
-:0E02AC0075AF0790E67BE090E67CF0DAF32277
-:0202BA007A00C8
-:0302BC00BAFF0086
-:0D02BF00500B90E678E0FB20E0030A80F091
-:0C02CC0090E678E0FA20E204EA20E10B62
-:0B02D80090E678E04440F075820122BF
-:0402E30075820022FE
-:0202E7007A009B
-:0302E900BAFF0059
-:0D02EC00500B90E678E0FB20E0030A80F064
-:0E02F90090E678E0FA30E20B90E678E04440C0
-:05030700F075820122E7
-:04030C0075820022D4
-:020310007A0071
-:03031200BAFF002F
-:0E031500500F90E678E0FB20E2047582002293
-:030323000A80EC61
-:0403260075820122B9
-:02032A007A0057
-:03032C00BAFF0015
-:0E032F00500F90E678E0FB20E6047582002275
-:03033D000A80EC47
-:04034000758201229F
-:08034400AA82C3E49AE433FA33
-:0D034C0090E678E04480F0C00212031090AB
-:0E035900E67974A2F01202BAE582D0027012A8
-:0C036700E508600A90E678E04440F012DF
-:02037300032A5B
-:04037500758200226B
-:0E037900EA600C90000AC002120288D00280D6
-:01038700C4B1
-:0C038800E508600890E678E0FA4440F0D8
-:04039400758201224B
-:0C039800AA82AB837C00E50B7003F582A9
-:0103A4002236
-:0C03A500750800758264C002C003C0042B
-:0E03B100120344E582D004D003D002600302A0
-:0203BF00049B9D
-:0C03C10090E679E50AF0C002C003C00419
-:0E03CD001202BAE582D004D003D0026003020F
-:0203DB00049B81
-:0C03DD0090E679E509F0C002C003C004FE
-:0E03E9001202BAE582D004D003D002600302F3
-:0203F700049B65
-:0E03F90090E678E04440F0C002C003C0041259
-:0D040700032A90E678E04480F01203109084
-:0E041400E67974A3F01202BAE582D004D00398
-:0E042200D002707590E679E08A828B83F0C07C
-:0E04300002C003C0041202E7E582D004D0032C
-:05043E00D0027059FD21
-:0C044300C3ED950B502A90E679E08A8208
-:0E044F008B83F0A3AA82AB83C002C003C0045B
-:0E045D00C0051202E7E582D005D004D003D01E
-:08046B0002702D0D8D0480D0FC
-:0E04730090E678E04420F090E679E0C00412B4
-:0E04810002E7E582D004701290E678E0444075
-:0C048F00F090E679E0C00412032AD004CB
-:03049B008C82222E
-:0C049E00AA82AB837C00750800758264A4
-:0E04AA00C002C003C004120344E582D004D097
-:0804B80003D0026003020551AC
-:0C04C00090E679E50DF0C002C003C00416
-:0E04CC001202BAE582D004D003D0026003020F
-:0204DA000551CA
-:0C04DC0090E679E50CF0C002C003C004FB
-:0E04E8001202BAE582D004D003D002705CFD8F
-:0C04F600C3ED950E50478A828B83E0FE18
-:0E050200A3AA82AB8390E679EEF0903204E07B
-:0D051000FFEE2FF0903202E0FEA3E0FF901E
-:0E051D00320274012EF0E43FA3F0C002C003CE
-:0E052B00C004C0051202BAE582D005D004D08B
-:0A05390003D00270130D8D0480B38F
-:0E05430090E678E04440F0C00412032AD00491
-:030551008C822277
-:0A055400903272E0FA903200E0F5F8
-:06055E0009A3E0F50A8A82
-:0C0564000B90E740C002120398AB82D05D
-:0E057000027C00903200E0FDA3E0FE9032001D
-:0A057E00EA2DF0EC3EA3F08B822280
-:0B058800AA82903200E0F50CA3E0F521
-:090593000D8A0E90E740C002122F
-:0E059C00049ED0027B00903200E0FCA3E0FD44
-:0B05AA00903200EA2CF0EB3DA3F022A1
-:0E05B500903205E0FAA3E0FB741F5A75F003C4
-:0905C300A42409FCE43432FD908B
-:0B05CC003269ECF0A3EDF0759B6B7E34
-:0A05D7006B7F328F9A8C068D078E21
-:0D05E1009E8D9DC0027A031202ACD00290E4
-:0B05EE00320574012AF0E43BA3F02268
-:0E05F900903205E4F0A3F09032077420F090E9
-:0906070032087403F090326974AA
-:0706100009F0A37432F0228F
-:0A061700903272E0FA700302063C14
-:0E06210090326EE0FBA3E0FC8B9B8C9A759EE2
-:0D062F0040759DE7C0027AF01202ACD002C7
-:0E063C0090326EE0FBA3E0FC90326EEA2BF0F1
-:07064A00E43CA3F08A8222C8
-:01006C00286B
-:01006D000191
-:04006E005A54455843
-:04007200000000008A
-:010076000089
-:010077000187
-:0600780009000000000079
-:0C007E0000000000000000000000000076
-:0A008A00303030303030303030308C
-:0E06510090E683E4F07420F07410F07430F042
-:0E065F0090E6837401F07421F07411F0743190
-:02066D00F02279
-:0A066F00AA82E51024E05003751084
-:010679001F61
-:0C067A0075AF078A9B850F9A759E41752D
-:0A0686009DE790E67C7403F07A0013
-:0C069000C3EA9510501190E67BE0FB904F
-:0B069C00E67CF090E67CE4F00A80E9C8
-:0B06A700E5100425E0FA90E740F09019
-:0E06B200E7417403F090E68AE4F090E68BEAEC
-:0206C000F02226
-:0E06C200903270E0FAA3E0FBC374409AE49B10
-:0806D00050067C407D0080040F
-:0406D8008A048B0500
-:0E06DC00903272ECF07D00903270EAC39CF018
-:0506EA00EB9DA3F022CE
-:0E06EF00903273E0FABA3924903204E4F090AD
-:0D06FD003202F0A3F090E6BBE0FB7A009023
-:0E070A00E6BAE0FC7D00903200EC4AF0ED4BC8
-:03071800A3F02229
-:08071B0090E6A0E04401F02289
-:0C072300C020C0E0C0F0C082C083C00253
-:0E072F00C003C004C005C006C007C000C00162
-:0E073D00C0D075D00090E6B9E0FA903273F0AB
-:0E074B0090E6B57401F090E6B9E0FA24F350A0
-:0407590003020AD9B4
-:07075D00EA2A2A90076473E9
-:0707640002078B02083F02AF
-:06076B000AD90208BC02DD
-:060771000AD9020AD902B8
-:060777000954020A6F02A2
-:06077D000A71020A82026B
-:060783000A87020A980239
-:020789000A9DC7
-:0A078B0090E6B8E0FABA8002800D93
-:05079500BA8102801E84
-:05079A00BA8202802F6D
-:03079F00020AD972
-:0E07A20090E740E4F090E741F090E68AF09096
-:0807B000E68B7402F0020AD985
-:0E07B80090E740E4F090E741F090E68AF09080
-:0807C600E68B7402F0020AD96F
-:0C07CE0090E6BCE0FA600FBA010280194E
-:0507DA00BA8002800559
-:0507DF00BA812F801E0D
-:0E07E40090E6A0E0FA53020190E740EAF080B0
-:0107F2003ACC
-:0E07F30090E6A1E0FA53020190E740EAF080A0
-:010801002BCB
-:0E08020090E6A2E0FA53020190E740EAF0808F
-:010810001CCB
-:0E08110090E6BCE0C31314540324A3F582E464
-:0E081F0034E6F583E0FA53020190E740EAF078
-:0E082D0090E741E4F090E68AF090E68B7402CA
-:04083B00F0020AD9E4
-:0A083F0090E6B8E0FABA0202800366
-:03084900020AD9C7
-:09084C0090E6BAE06003020AD94B
-:0C08550090E6BCE0FA600FBA01028015CA
-:05086100BA80028005D1
-:05086600BA8123801699
-:0B086B0090E6A0E0FA54FEF0020AD96B
-:0B08760090E6A1E0FA54FEF0020AD95F
-:0B08810090E6A2E0FA54FEF0020AD953
-:0E088C0090E6BCE0C31314540324A3FAE43432
-:0E089A00E6FB90E6BCE0C31314540324A3F560
-:0E08A80082E434E6F583E0FC5304FE8A828B82
-:0608B60083ECF0020AD9F8
-:0A08BC0090E6B8E0FABA02028003E9
-:0308C600020AD94A
-:0908C90090E6BAE06003020AD9CE
-:0C08D20090E6BCE0FA600FBA010280144E
-:0508DE00BA8002800554
-:0508E300BA8120801421
-:0A08E80090E6A0E0FA4401F0804120
-:0A08F20090E6A1E0FA4401F080371F
-:0A08FC0090E6A2E0FA4401F0802D1E
-:0E09060090E6BCE0C31314540324A3FAE434B7
-:0E091400E6FB90E6BCE0C31314540324A3F5E5
-:0E09220082E434E6F583E0FC4304FE8A828B17
-:0309300083ECF065
-:0E09330090E6BCE05480C423541FFA90E6BC4A
-:0E094100E0FB740F5B420290E683EAF0742044
-:05094F004AF0020AD984
-:0A09540090E6BBE0FABA0102801938
-:05095E00BA0202802630
-:05096300BA0302804D03
-:06096800BA0603020A2892
-:06096E00BA0703020A3A79
-:03097400020A650F
-:0A0977007AB47B1090E6B3EBF09029
-:08098100E6B474B4F0020AD9D7
-:0B09890090E680E0FA30E7127AD07BA5
-:0A0994001090E6B3EBF090E6B474A7
-:05099E00D0F0020AD9AF
-:0A09A3007AF27B1090E6B3EBF090BF
-:0809AD00E6B474F2F0020AD96D
-:0A09B50090E6BAE0FABA0102800FE2
-:0509BF00BA0202801CD9
-:0509C400BA03028029C6
-:0509C900BA044A80366B
-:0609CE0075828B7A8B7B21
-:0409D400108B0F7500
-:0609D800100512066F027B
-:0209DE000AD934
-:0609E0007582907A907B05
-:0409E600108B0F75EE
-:0609EA00101912066F0255
-:0209F0000AD922
-:0A09F20075828A7A8A7B008B0F75EC
-:0609FC00100A12066F0252
-:020A02000AD90F
-:060A04007582A97AA97BAE
-:040A0A00108B0F75C9
-:060A0E00100A12066F023F
-:020A14000AD9FD
-:0A0A16007A147B1190E6B3EBF09028
-:080A2000E6B47414F0020AD9D7
-:0A0A28007AC67B1090E6B3EBF09065
-:080A3200E6B474C6F0020AD913
-:0B0A3A0090E680E0FA30E7127AF27BD1
-:0A0A45001090E6B3EBF090E6B474F5
-:050A4F00F2F0020AD9DB
-:0A0A54007AD07B1090E6B3EBF0902F
-:070A5E00E6B474D0F08074CF
-:0A0A650090E6A0E0FA4401F0806A78
-:020A6F0080689D
-:0E0A710090E740E4F090E68AF090E68B740186
-:030A7F00F08057AD
-:050A8200120651805234
-:0E0A870090E740E4F090E68AF090E68B740170
-:030A9500F08041AD
-:050A9800120651803C34
-:0E0A9D0090E6B8E0FABA823490E6BCE0C313EB
-:0B0AAB0014540325E02475F582E434A8
-:0C0AB60032F583E4F0A3F090E685E090B8
-:0D0AC200E740F090E684E0FA90E741F09004
-:0A0ACF00E68AE4F090E68B7402F072
-:0B0AD90090E6B8E0FABA4003020BC937
-:050AE400BAC00280030E
-:030AE900020BF30A
-:0E0AEC0090E6BFE0FB7A0090E6BEE0FC7D00E5
-:0E0AFA00903270EC4AF0ED4BA3F01206C29061
-:090B0800E6B9E0FABA22028013FA
-:060B1100BA2803020BA547
-:050B1700BA3802802540
-:050B1C00BA3A02804915
-:030B2100020BBF05
-:0E0B240090E6B5E4F090E68AF090E68B742837
-:0D0B3200F090E6B3E4F090E6B4746CF002CD
-:020B3F000BF3B6
-:0E0B410090E6BBE0FB7A0090E6BAE0FC7D0097
-:0E0B4F00903200EC4AF0ED4BA3F090E68AE401
-:0D0B5D00F0120554E58290E68BF0020BF3D8
-:0E0B6A00903202E0FAA3E0FB8A0490E740EC30
-:0D0B7800F08B0290E741EAF0903204E0902B
-:0C0B8500E742F07508017582001203447D
-:0D0B9100AA8290E743EAF090E68AE4F09033
-:070B9E00E68B7404F0804EA9
-:080BA50090326E7405F0A37498
-:0C0BAD0032F090E68AE4F0120617E582B0
-:060BB90090E68BF0803491
-:0A0BBF0090E6A0E0FA4401F0802A5D
-:0C0BC90090E6BFE0700690E6BEE060160B
-:0E0BD5009032747401F090E68BE4F05391EFCF
-:080BE30090E65D7401F0801939
-:080BEB001206EF90E68BE4F026
-:0E0BF3005391EF90E65D7401F090E6A0E0FAF9
-:030C01004480F03C
-:0E0C0400D0D0D001D000D007D006D005D0044B
-:0D0C1200D003D002D083D082D0F0D0E0D04B
-:020C1F00203281
-:0E0C2100C0E0C082C0835391EF90E65D740284
-:080C2F00F0D083D082D0E03246
-:0E0C3700C0E0C082C0835391EF90E65D74046C
-:080C4500F0D083D082D0E03230
-:0E0C4D00C0E0C082C0835391EF90E65D740852
-:080C5B00F0D083D082D0E0321A
-:0E0C6300C0E0C082C0835391EF90E65D741034
-:080C7100F0D083D082D0E03204
-:0E0C7900C0E0C082C0835391EF90E65D74200E
-:080C8700F0D083D082D0E032EE
-:0E0C8F00C0E0C082C0835391EF90E65D7440D8
-:080C9D00F0D083D082D0E032D8
-:0C0CA500C020C0E0C0F0C082C083C002CC
-:0E0CB100C003C004C005C006C007C000C001DB
-:0E0CBF00C0D075D000C2E81206C2903273E0B9
-:060CCD00FABA2802801AA9
-:050CD300BA38028005A3
-:050CD800BA3A22802958
-:0E0CDD0090E68AE4F0120554E58290E68BF072
-:020CEB0080196E
-:0E0CED0090E68AE4F0120617E58290E68BF09E
-:020CFB0080096E
-:090CFD0090E68AE4F090E68BF029
-:0E0D06005391EF90E65F7401F0D2E8D0D0D0A8
-:0E0D140001D000D007D006D005D004D003D007
-:0C0D220002D083D082D0F0D0E0D020328C
-:0C0D2E00C020C0E0C0F0C082C083C00242
-:0E0D3A00C003C004C005C006C007C000C00151
-:0E0D4800C0D075D000C2E8903274E0FA60208E
-:0D0D5600903274E4F090E6BFE0FB7A00906C
-:0E0D6300E6BEE0FC7D00903270EC4AF0ED4BF5
-:050D7100A3F01206EFE3
-:0E0D76001206C2903273E0FABA390990E68B89
-:060D8400E0F58212058873
-:0E0D8A0090E68BE4F05391EF90E65F7402F078
-:0E0D9800903270E0FAA3E0FB4A700890E6A0EB
-:050DA600E0FA4480F0BA
-:0E0DAB00D2E8D0D0D001D000D007D006D005BD
-:0E0DB900D004D003D002D083D082D0F0D0E09E
-:030DC700D0203207
-:0E0DCA00C0E0C082C0835391EF90E65F7404D6
-:080DD800F0D083D082D0E0329C
-:0E0DE000C0E0C082C0835391EF90E65F7408BC
-:080DEE00F0D083D082D0E03286
-:0E0DF600C0E0C082C0835391EF90E65F74109E
-:080E0400F0D083D082D0E0326F
-:0E0E0C00C0E0C082C0835391EF90E65F742077
-:080E1A00F0D083D082D0E03259
-:0E0E2200C0E0C082C0835391EF90E65F744041
-:080E3000F0D083D082D0E03243
-:0E0E3800C0E0C082C0835391EF90E65F7480EB
-:080E4600F0D083D082D0E0322D
-:0E0E4E0090E680E04408F090E6007412F05345
-:0D0E5C008EF8C2AFC2E89000437402F0901F
-:0E0E690000447401F090004574B8F090E66803
-:0C0E7700E04408F09001007402F07A23BF
-:0C0E83007B078B04900101ECF090010251
-:0B0E8F00EAF09001047402F07A217B6D
-:0C0E9A000C8B04900105ECF0900106EABE
-:0A0EA600F09001087402F07A377B27
-:0C0EB0000C8B04900109ECF090010AEAA0
-:0A0EBC00F090010C7402F07A4D7BF7
-:0C0EC6000C8B0490010DECF090010EEA82
-:0A0ED200F09001107402F07A637BC7
-:0C0EDC000C8B04900111ECF0900112EA64
-:0A0EE800F09001147402F07A797B97
-:0C0EF2000C8B04900115ECF0900116EA46
-:0A0EFE00F09001187402F07A8F7B67
-:0C0F08000C8B04900119ECF090011AEA27
-:0A0F1400F09001207402F07AA57B32
-:0C0F1E000C8B04900121ECF0900122EA01
-:0A0F2A00F09001247402F07A2E7B8F
-:0C0F34000D8B04900125ECF0900126EAE2
-:0A0F4000F09001287402F07ACA7BD9
-:0C0F4A000D8B04900129ECF090012AEAC4
-:0A0F5600F090012C7402F07AE07BA9
-:0C0F60000D8B0490012DECF090012EEAA6
-:0A0F6C00F09001307402F07AF67B79
-:0C0F76000D8B04900131ECF0900132EA88
-:0A0F8200F09001347402F07A0C7B49
-:0C0F8C000E8B04900135ECF0900136EA69
-:0A0F9800F09001387402F07A227B19
-:0C0FA2000E8B04900139ECF090013AEA4B
-:0A0FAE00F090013C7402F07A387BE9
-:0C0FB8000E8B0490013DECF090013EEA2D
-:0E0FC400F05391EF90E65D747FF090E65CE0F4
-:0E0FD200FA447FF090E65F74FFF090E65E74E4
-:0E0FE000FFF0D2E8D2AF90E61174A0F000004E
-:0D0FEE00000090E61074A0F00000000090DC
-:0E0FFB00E612E4F00000000090E613E4F000BF
-:0D10090000000090E614E4F00000000090EC
-:0E101600E615E4F0000000001205F990E680F7
-:0E102400E04482F09000FA12026490E680E050
-:0410320054F7F0225D
-:07103600120E4E7A007B0050
-:0E103D008A0490326BECF08B0490326CECF075
-:0E104B00C002C0031205B5D003D0020ABA00DD
-:02105900010B89
-:02105B007C0017
-:03105D00BC640070
-:0E10600050DB903269E0FDA3E0FE8D828E83AE
-:0E106E00A3A3ECF090000AC002C003C004125D
-:0B107C000264D004D003D0020C80D628
-:05108B005A5445580015
-:0E109000646562756720666F7220455A2D55A3
-:0B109E005342206465766963657300AF
-:0A10A90028756E6B6E6F776E2900DC
-:0110B300003C
-:0E10B40012010002FFFFFF401A22000100009F
-:0410C2000102030123
-:0A10C6000A060002FFFFFF400100D0
-:0E10D00009022000010104C0320904000002E0
-:0E10DE00FFFFFF000705810200020007050169
-:0410EC0002000200FC
-:0210F0000000FE
-:0E10F20009022000010104C0320904000002BE
-:0E110000FFFFFF000705810240000007050108
-:04110E00024000009B
-:021112000000DB
-:0411140004030000D0
-:021118000000D5
-:01111A0000D4
-:01111B00FFD4
-:01111C0000D2
-:08111D000000000000000000CA
-:06023700E478FFF6D8FD9B
-:08021500790DE94400601B7A39
-:05021D000190111878AA
-:0302220070759262
-:0A02250032E493F2A308B8000205CA
-:08022F0092D9F4DAF27592FF96
-:08023D007800E84400600A7932
-:03024500007592AF
-:0602480032E4F309D8FCCA
-:08024E007870E84400600C79AF
-:0B02560001903200E4F0A3D8FCD9FABC
-:03020800758120DD
-:0A020B00121087E58260030202036F
-:04108700758200224C
-:00000001FF
Index: debug/ParameterException.class
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: debug/ParameterException.class
===================================================================
--- debug/ParameterException.class (revision 6)
+++ debug/ParameterException.class (nonexistent)
debug/ParameterException.class
Property changes :
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: debug/usb-fpga-1.20.brd
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: debug/usb-fpga-1.20.brd
===================================================================
--- debug/usb-fpga-1.20.brd (revision 6)
+++ debug/usb-fpga-1.20.brd (nonexistent)
debug/usb-fpga-1.20.brd
Property changes :
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: debug/debug.rst
===================================================================
--- debug/debug.rst (revision 6)
+++ debug/debug.rst (nonexistent)
@@ -1,4497 +0,0 @@
- 1 ;--------------------------------------------------------
- 2 ; File Created by SDCC : free open source ANSI-C Compiler
- 3 ; Version 2.8.0 #5117 (May 15 2008) (UNIX)
- 4 ; This file was generated Wed Sep 8 20:23:26 2010
- 5 ;--------------------------------------------------------
- 6 .module debug_tmp
- 7 .optsdcc -mmcs51 --model-small
- 8
- 9 ;--------------------------------------------------------
- 10 ; Public variables in this module
- 11 ;--------------------------------------------------------
- 12 .globl _sendStringDescriptor_PARM_3
- 13 .globl _sendStringDescriptor_PARM_2
- 14 .globl _EmptyStringDescriptor
- 15 .globl _FullSpeedConfigDescriptor_PadByte
- 16 .globl _FullSpeedConfigDescriptor
- 17 .globl _HighSpeedConfigDescriptor_PadByte
- 18 .globl _HighSpeedConfigDescriptor
- 19 .globl _DeviceQualifierDescriptor
- 20 .globl _DeviceDescriptor
- 21 .globl _PadByte
- 22 .globl _configurationString
- 23 .globl _productString
- 24 .globl _manufacturerString
- 25 .globl _main
- 26 .globl _init_USB
- 27 .globl _EP8_ISR
- 28 .globl _EP6_ISR
- 29 .globl _EP4_ISR
- 30 .globl _EP2_ISR
- 31 .globl _EP1OUT_ISR
- 32 .globl _EP1IN_ISR
- 33 .globl _EP0ACK_ISR
- 34 .globl _HSGRANT_ISR
- 35 .globl _URES_ISR
- 36 .globl _SUSP_ISR
- 37 .globl _SUTOK_ISR
- 38 .globl _SOF_ISR
- 39 .globl _abscode_identity
- 40 .globl _debug_read_ep0
- 41 .globl _debug_init
- 42 .globl _debug_add_msg
- 43 .globl _eeprom_write_ep0
- 44 .globl _eeprom_read_ep0
- 45 .globl _eeprom_write
- 46 .globl _eeprom_read
- 47 .globl _eeprom_select
- 48 .globl _i2c_waitStop
- 49 .globl _i2c_waitStart
- 50 .globl _i2c_waitRead
- 51 .globl _i2c_waitWrite
- 52 .globl _MEM_COPY1_int
- 53 .globl _uwait
- 54 .globl _wait
- 55 .globl _abscode_intvec
- 56 .globl _EIPX6
- 57 .globl _EIPX5
- 58 .globl _EIPX4
- 59 .globl _PI2C
- 60 .globl _PUSB
- 61 .globl _BREG7
- 62 .globl _BREG6
- 63 .globl _BREG5
- 64 .globl _BREG4
- 65 .globl _BREG3
- 66 .globl _BREG2
- 67 .globl _BREG1
- 68 .globl _BREG0
- 69 .globl _EIEX6
- 70 .globl _EIEX5
- 71 .globl _EIEX4
- 72 .globl _EI2C
- 73 .globl _EUSB
- 74 .globl _ACC7
- 75 .globl _ACC6
- 76 .globl _ACC5
- 77 .globl _ACC4
- 78 .globl _ACC3
- 79 .globl _ACC2
- 80 .globl _ACC1
- 81 .globl _ACC0
- 82 .globl _SMOD1
- 83 .globl _ERESI
- 84 .globl _RESI
- 85 .globl _INT6
- 86 .globl _CY
- 87 .globl _AC
- 88 .globl _F0
- 89 .globl _RS1
- 90 .globl _RS0
- 91 .globl _OV
- 92 .globl _F1
- 93 .globl _PF
- 94 .globl _TF2
- 95 .globl _EXF2
- 96 .globl _RCLK
- 97 .globl _TCLK
- 98 .globl _EXEN2
- 99 .globl _TR2
- 100 .globl _CT2
- 101 .globl _CPRL2
- 102 .globl _SM0_1
- 103 .globl _SM1_1
- 104 .globl _SM2_1
- 105 .globl _REN_1
- 106 .globl _TB8_1
- 107 .globl _RB8_1
- 108 .globl _TI_1
- 109 .globl _RI_1
- 110 .globl _PS1
- 111 .globl _PT2
- 112 .globl _PS0
- 113 .globl _PT1
- 114 .globl _PX1
- 115 .globl _PT0
- 116 .globl _PX0
- 117 .globl _IOD7
- 118 .globl _IOD6
- 119 .globl _IOD5
- 120 .globl _IOD4
- 121 .globl _IOD3
- 122 .globl _IOD2
- 123 .globl _IOD1
- 124 .globl _IOD0
- 125 .globl _EA
- 126 .globl _ES1
- 127 .globl _ET2
- 128 .globl _ES0
- 129 .globl _ET1
- 130 .globl _EX1
- 131 .globl _ET0
- 132 .globl _EX0
- 133 .globl _IOC7
- 134 .globl _IOC6
- 135 .globl _IOC5
- 136 .globl _IOC4
- 137 .globl _IOC3
- 138 .globl _IOC2
- 139 .globl _IOC1
- 140 .globl _IOC0
- 141 .globl _SM0_0
- 142 .globl _SM1_0
- 143 .globl _SM2_0
- 144 .globl _REN_0
- 145 .globl _TB8_0
- 146 .globl _RB8_0
- 147 .globl _TI_0
- 148 .globl _RI_0
- 149 .globl _IOB7
- 150 .globl _IOB6
- 151 .globl _IOB5
- 152 .globl _IOB4
- 153 .globl _IOB3
- 154 .globl _IOB2
- 155 .globl _IOB1
- 156 .globl _IOB0
- 157 .globl _TF1
- 158 .globl _TR1
- 159 .globl _TF0
- 160 .globl _TR0
- 161 .globl _IE1
- 162 .globl _IT1
- 163 .globl _IE0
- 164 .globl _IT0
- 165 .globl _IOA7
- 166 .globl _IOA6
- 167 .globl _IOA5
- 168 .globl _IOA4
- 169 .globl _IOA3
- 170 .globl _IOA2
- 171 .globl _IOA1
- 172 .globl _IOA0
- 173 .globl _EIP
- 174 .globl _BREG
- 175 .globl _EIE
- 176 .globl _ACC
- 177 .globl _EICON
- 178 .globl _PSW
- 179 .globl _TH2
- 180 .globl _TL2
- 181 .globl _RCAP2H
- 182 .globl _RCAP2L
- 183 .globl _T2CON
- 184 .globl _SBUF1
- 185 .globl _SCON1
- 186 .globl _GPIFSGLDATLNOX
- 187 .globl _GPIFSGLDATLX
- 188 .globl _GPIFSGLDATH
- 189 .globl _GPIFTRIG
- 190 .globl _EP01STAT
- 191 .globl _IP
- 192 .globl _OEE
- 193 .globl _OED
- 194 .globl _OEC
- 195 .globl _OEB
- 196 .globl _OEA
- 197 .globl _IOE
- 198 .globl _IOD
- 199 .globl _AUTOPTRSETUP
- 200 .globl _EP68FIFOFLGS
- 201 .globl _EP24FIFOFLGS
- 202 .globl _EP2468STAT
- 203 .globl _IE
- 204 .globl _INT4CLR
- 205 .globl _INT2CLR
- 206 .globl _IOC
- 207 .globl _AUTOPTRL2
- 208 .globl _AUTOPTRH2
- 209 .globl _AUTOPTRL1
- 210 .globl _AUTOPTRH1
- 211 .globl _SBUF0
- 212 .globl _SCON0
- 213 .globl __XPAGE
- 214 .globl _MPAGE
- 215 .globl _EXIF
- 216 .globl _IOB
- 217 .globl _CKCON
- 218 .globl _TH1
- 219 .globl _TH0
- 220 .globl _TL1
- 221 .globl _TL0
- 222 .globl _TMOD
- 223 .globl _TCON
- 224 .globl _PCON
- 225 .globl _DPS
- 226 .globl _DPH1
- 227 .globl _DPL1
- 228 .globl _DPH0
- 229 .globl _DPL0
- 230 .globl _SP
- 231 .globl _IOA
- 232 .globl _ISOFRAME_COUNTER
- 233 .globl _ep0_vendor_cmd_setup
- 234 .globl _ep0_prev_setup_request
- 235 .globl _ep0_payload_transfer
- 236 .globl _ep0_payload_remaining
- 237 .globl _SN_STRING
- 238 .globl _MODULE_RESERVED
- 239 .globl _INTERFACE_CAPABILITIES
- 240 .globl _INTERFACE_VERSION
- 241 .globl _FW_VERSION
- 242 .globl _PRODUCT_ID
- 243 .globl _ZTEXID
- 244 .globl _ZTEX_DESCRIPTOR_VERSION
- 245 .globl _ZTEX_DESCRIPTOR
- 246 .globl _debug_read_addr
- 247 .globl _debug_msg_buf
- 248 .globl _debug_stack_ptr
- 249 .globl _debug_stack
- 250 .globl _debug_msg_size
- 251 .globl _debug_stack_size
- 252 .globl _debug_counter
- 253 .globl _eeprom_write_checksum
- 254 .globl _eeprom_write_bytes
- 255 .globl _eeprom_addr
- 256 .globl _INTVEC_GPIFWF
- 257 .globl _INTVEC_GPIFDONE
- 258 .globl _INTVEC_EP8FF
- 259 .globl _INTVEC_EP6FF
- 260 .globl _INTVEC_EP2FF
- 261 .globl _INTVEC_EP8EF
- 262 .globl _INTVEC_EP6EF
- 263 .globl _INTVEC_EP4EF
- 264 .globl _INTVEC_EP2EF
- 265 .globl _INTVEC_EP8PF
- 266 .globl _INTVEC_EP6PF
- 267 .globl _INTVEC_EP4PF
- 268 .globl _INTVEC_EP2PF
- 269 .globl _INTVEC_EP8ISOERR
- 270 .globl _INTVEC_EP6ISOERR
- 271 .globl _INTVEC_EP4ISOERR
- 272 .globl _INTVEC_EP2ISOERR
- 273 .globl _INTVEC_ERRLIMIT
- 274 .globl _INTVEC_EP8PING
- 275 .globl _INTVEC_EP6PING
- 276 .globl _INTVEC_EP4PING
- 277 .globl _INTVEC_EP2PING
- 278 .globl _INTVEC_EP1PING
- 279 .globl _INTVEC_EP0PING
- 280 .globl _INTVEC_IBN
- 281 .globl _INTVEC_EP8
- 282 .globl _INTVEC_EP6
- 283 .globl _INTVEC_EP4
- 284 .globl _INTVEC_EP2
- 285 .globl _INTVEC_EP1OUT
- 286 .globl _INTVEC_EP1IN
- 287 .globl _INTVEC_EP0OUT
- 288 .globl _INTVEC_EP0IN
- 289 .globl _INTVEC_EP0ACK
- 290 .globl _INTVEC_HISPEED
- 291 .globl _INTVEC_USBRESET
- 292 .globl _INTVEC_SUSPEND
- 293 .globl _INTVEC_SUTOK
- 294 .globl _INTVEC_SOF
- 295 .globl _INTVEC_SUDAV
- 296 .globl _INT12VEC_IE6
- 297 .globl _INT11VEC_IE5
- 298 .globl _INT10VEC_GPIF
- 299 .globl _INT9VEC_I2C
- 300 .globl _INT8VEC_USB
- 301 .globl _INT7VEC_USART1
- 302 .globl _INT6VEC_RESUME
- 303 .globl _INT5VEC_T2
- 304 .globl _INT4VEC_USART0
- 305 .globl _INT3VEC_T1
- 306 .globl _INT2VEC_IE1
- 307 .globl _INT1VEC_T0
- 308 .globl _INT0VEC_IE0
- 309 .globl _EP8FIFOBUF
- 310 .globl _EP6FIFOBUF
- 311 .globl _EP4FIFOBUF
- 312 .globl _EP2FIFOBUF
- 313 .globl _EP1INBUF
- 314 .globl _EP1OUTBUF
- 315 .globl _EP0BUF
- 316 .globl _GPIFABORT
- 317 .globl _GPIFREADYSTAT
- 318 .globl _GPIFREADYCFG
- 319 .globl _XGPIFSGLDATLNOX
- 320 .globl _XGPIFSGLDATLX
- 321 .globl _XGPIFSGLDATH
- 322 .globl _EP8GPIFTRIG
- 323 .globl _EP8GPIFPFSTOP
- 324 .globl _EP8GPIFFLGSEL
- 325 .globl _EP6GPIFTRIG
- 326 .globl _EP6GPIFPFSTOP
- 327 .globl _EP6GPIFFLGSEL
- 328 .globl _EP4GPIFTRIG
- 329 .globl _EP4GPIFPFSTOP
- 330 .globl _EP4GPIFFLGSEL
- 331 .globl _EP2GPIFTRIG
- 332 .globl _EP2GPIFPFSTOP
- 333 .globl _EP2GPIFFLGSEL
- 334 .globl _GPIFTCB0
- 335 .globl _GPIFTCB1
- 336 .globl _GPIFTCB2
- 337 .globl _GPIFTCB3
- 338 .globl _FLOWSTBHPERIOD
- 339 .globl _FLOWSTBEDGE
- 340 .globl _FLOWSTB
- 341 .globl _FLOWHOLDOFF
- 342 .globl _FLOWEQ1CTL
- 343 .globl _FLOWEQ0CTL
- 344 .globl _FLOWLOGIC
- 345 .globl _FLOWSTATE
- 346 .globl _GPIFADRL
- 347 .globl _GPIFADRH
- 348 .globl _GPIFCTLCFG
- 349 .globl _GPIFIDLECTL
- 350 .globl _GPIFIDLECS
- 351 .globl _GPIFWFSELECT
- 352 .globl _wLengthH
- 353 .globl _wLengthL
- 354 .globl _wIndexH
- 355 .globl _wIndexL
- 356 .globl _wValueH
- 357 .globl _wValueL
- 358 .globl _bRequest
- 359 .globl _bmRequestType
- 360 .globl _SETUPDAT
- 361 .globl _SUDPTRCTL
- 362 .globl _SUDPTRL
- 363 .globl _SUDPTRH
- 364 .globl _EP8FIFOBCL
- 365 .globl _EP8FIFOBCH
- 366 .globl _EP6FIFOBCL
- 367 .globl _EP6FIFOBCH
- 368 .globl _EP4FIFOBCL
- 369 .globl _EP4FIFOBCH
- 370 .globl _EP2FIFOBCL
- 371 .globl _EP2FIFOBCH
- 372 .globl _EP8FIFOFLGS
- 373 .globl _EP6FIFOFLGS
- 374 .globl _EP4FIFOFLGS
- 375 .globl _EP2FIFOFLGS
- 376 .globl _EP8CS
- 377 .globl _EP6CS
- 378 .globl _EP4CS
- 379 .globl _EP2CS
- 380 .globl _EPXCS
- 381 .globl _EP1INCS
- 382 .globl _EP1OUTCS
- 383 .globl _EP0CS
- 384 .globl _EP8BCL
- 385 .globl _EP8BCH
- 386 .globl _EP6BCL
- 387 .globl _EP6BCH
- 388 .globl _EP4BCL
- 389 .globl _EP4BCH
- 390 .globl _EP2BCL
- 391 .globl _EP2BCH
- 392 .globl _EP1INBC
- 393 .globl _EP1OUTBC
- 394 .globl _EP0BCL
- 395 .globl _EP0BCH
- 396 .globl _FNADDR
- 397 .globl _MICROFRAME
- 398 .globl _USBFRAMEL
- 399 .globl _USBFRAMEH
- 400 .globl _TOGCTL
- 401 .globl _WAKEUPCS
- 402 .globl _SUSPEND
- 403 .globl _USBCS
- 404 .globl _UDMACRCQUALIFIER
- 405 .globl _UDMACRCL
- 406 .globl _UDMACRCH
- 407 .globl _EXTAUTODAT2
- 408 .globl _XAUTODAT2
- 409 .globl _EXTAUTODAT1
- 410 .globl _XAUTODAT1
- 411 .globl _I2CTL
- 412 .globl _I2DAT
- 413 .globl _I2CS
- 414 .globl _PORTECFG
- 415 .globl _PORTCCFG
- 416 .globl _PORTACFG
- 417 .globl _INTSETUP
- 418 .globl _INT4IVEC
- 419 .globl _INT2IVEC
- 420 .globl _CLRERRCNT
- 421 .globl _ERRCNTLIM
- 422 .globl _USBERRIRQ
- 423 .globl _USBERRIE
- 424 .globl _GPIFIRQ
- 425 .globl _GPIFIE
- 426 .globl _EPIRQ
- 427 .globl _EPIE
- 428 .globl _USBIRQ
- 429 .globl _USBIE
- 430 .globl _NAKIRQ
- 431 .globl _NAKIE
- 432 .globl _IBNIRQ
- 433 .globl _IBNIE
- 434 .globl _EP8FIFOIRQ
- 435 .globl _EP8FIFOIE
- 436 .globl _EP6FIFOIRQ
- 437 .globl _EP6FIFOIE
- 438 .globl _EP4FIFOIRQ
- 439 .globl _EP4FIFOIE
- 440 .globl _EP2FIFOIRQ
- 441 .globl _EP2FIFOIE
- 442 .globl _OUTPKTEND
- 443 .globl _INPKTEND
- 444 .globl _EP8ISOINPKTS
- 445 .globl _EP6ISOINPKTS
- 446 .globl _EP4ISOINPKTS
- 447 .globl _EP2ISOINPKTS
- 448 .globl _EP8FIFOPFL
- 449 .globl _EP8FIFOPFH
- 450 .globl _EP6FIFOPFL
- 451 .globl _EP6FIFOPFH
- 452 .globl _EP4FIFOPFL
- 453 .globl _EP4FIFOPFH
- 454 .globl _EP2FIFOPFL
- 455 .globl _EP2FIFOPFH
- 456 .globl _ECC2B2
- 457 .globl _ECC2B1
- 458 .globl _ECC2B0
- 459 .globl _ECC1B2
- 460 .globl _ECC1B1
- 461 .globl _ECC1B0
- 462 .globl _ECCRESET
- 463 .globl _ECCCFG
- 464 .globl _EP8AUTOINLENL
- 465 .globl _EP8AUTOINLENH
- 466 .globl _EP6AUTOINLENL
- 467 .globl _EP6AUTOINLENH
- 468 .globl _EP4AUTOINLENL
- 469 .globl _EP4AUTOINLENH
- 470 .globl _EP2AUTOINLENL
- 471 .globl _EP2AUTOINLENH
- 472 .globl _EP8FIFOCFG
- 473 .globl _EP6FIFOCFG
- 474 .globl _EP4FIFOCFG
- 475 .globl _EP2FIFOCFG
- 476 .globl _EP8CFG
- 477 .globl _EP6CFG
- 478 .globl _EP4CFG
- 479 .globl _EP2CFG
- 480 .globl _EP1INCFG
- 481 .globl _EP1OUTCFG
- 482 .globl _GPIFHOLDAMOUNT
- 483 .globl _REVCTL
- 484 .globl _REVID
- 485 .globl _FIFOPINPOLAR
- 486 .globl _UART230
- 487 .globl _BPADDRL
- 488 .globl _BPADDRH
- 489 .globl _BREAKPT
- 490 .globl _FIFORESET
- 491 .globl _PINFLAGSCD
- 492 .globl _PINFLAGSAB
- 493 .globl _IFCONFIG
- 494 .globl _CPUCS
- 495 .globl _GPCR2
- 496 .globl _GPIF_WAVE3_DATA
- 497 .globl _GPIF_WAVE2_DATA
- 498 .globl _GPIF_WAVE1_DATA
- 499 .globl _GPIF_WAVE0_DATA
- 500 .globl _GPIF_WAVE_DATA
- 501 .globl _eeprom_write_PARM_3
- 502 .globl _eeprom_write_PARM_2
- 503 .globl _eeprom_read_PARM_3
- 504 .globl _eeprom_read_PARM_2
- 505 .globl _eeprom_select_PARM_2
- 506 ;--------------------------------------------------------
- 507 ; special function registers
- 508 ;--------------------------------------------------------
- 509 .area RSEG (DATA)
- 0080 510 _IOA = 0x0080
- 0081 511 _SP = 0x0081
- 0082 512 _DPL0 = 0x0082
- 0083 513 _DPH0 = 0x0083
- 0084 514 _DPL1 = 0x0084
- 0085 515 _DPH1 = 0x0085
- 0086 516 _DPS = 0x0086
- 0087 517 _PCON = 0x0087
- 0088 518 _TCON = 0x0088
- 0089 519 _TMOD = 0x0089
- 008A 520 _TL0 = 0x008a
- 008B 521 _TL1 = 0x008b
- 008C 522 _TH0 = 0x008c
- 008D 523 _TH1 = 0x008d
- 008E 524 _CKCON = 0x008e
- 0090 525 _IOB = 0x0090
- 0091 526 _EXIF = 0x0091
- 0092 527 _MPAGE = 0x0092
- 0092 528 __XPAGE = 0x0092
- 0098 529 _SCON0 = 0x0098
- 0099 530 _SBUF0 = 0x0099
- 009A 531 _AUTOPTRH1 = 0x009a
- 009B 532 _AUTOPTRL1 = 0x009b
- 009D 533 _AUTOPTRH2 = 0x009d
- 009E 534 _AUTOPTRL2 = 0x009e
- 00A0 535 _IOC = 0x00a0
- 00A1 536 _INT2CLR = 0x00a1
- 00A2 537 _INT4CLR = 0x00a2
- 00A8 538 _IE = 0x00a8
- 00AA 539 _EP2468STAT = 0x00aa
- 00AB 540 _EP24FIFOFLGS = 0x00ab
- 00AC 541 _EP68FIFOFLGS = 0x00ac
- 00AF 542 _AUTOPTRSETUP = 0x00af
- 00B0 543 _IOD = 0x00b0
- 00B1 544 _IOE = 0x00b1
- 00B2 545 _OEA = 0x00b2
- 00B3 546 _OEB = 0x00b3
- 00B4 547 _OEC = 0x00b4
- 00B5 548 _OED = 0x00b5
- 00B6 549 _OEE = 0x00b6
- 00B8 550 _IP = 0x00b8
- 00BA 551 _EP01STAT = 0x00ba
- 00BB 552 _GPIFTRIG = 0x00bb
- 00BD 553 _GPIFSGLDATH = 0x00bd
- 00BE 554 _GPIFSGLDATLX = 0x00be
- 00BF 555 _GPIFSGLDATLNOX = 0x00bf
- 00C0 556 _SCON1 = 0x00c0
- 00C1 557 _SBUF1 = 0x00c1
- 00C8 558 _T2CON = 0x00c8
- 00CA 559 _RCAP2L = 0x00ca
- 00CB 560 _RCAP2H = 0x00cb
- 00CC 561 _TL2 = 0x00cc
- 00CD 562 _TH2 = 0x00cd
- 00D0 563 _PSW = 0x00d0
- 00D8 564 _EICON = 0x00d8
- 00E0 565 _ACC = 0x00e0
- 00E8 566 _EIE = 0x00e8
- 00F0 567 _BREG = 0x00f0
- 00F8 568 _EIP = 0x00f8
- 569 ;--------------------------------------------------------
- 570 ; special function bits
- 571 ;--------------------------------------------------------
- 572 .area RSEG (DATA)
- 0080 573 _IOA0 = 0x0080
- 0081 574 _IOA1 = 0x0081
- 0082 575 _IOA2 = 0x0082
- 0083 576 _IOA3 = 0x0083
- 0084 577 _IOA4 = 0x0084
- 0085 578 _IOA5 = 0x0085
- 0086 579 _IOA6 = 0x0086
- 0087 580 _IOA7 = 0x0087
- 0088 581 _IT0 = 0x0088
- 0089 582 _IE0 = 0x0089
- 008A 583 _IT1 = 0x008a
- 008B 584 _IE1 = 0x008b
- 008C 585 _TR0 = 0x008c
- 008D 586 _TF0 = 0x008d
- 008E 587 _TR1 = 0x008e
- 008F 588 _TF1 = 0x008f
- 0090 589 _IOB0 = 0x0090
- 0091 590 _IOB1 = 0x0091
- 0092 591 _IOB2 = 0x0092
- 0093 592 _IOB3 = 0x0093
- 0094 593 _IOB4 = 0x0094
- 0095 594 _IOB5 = 0x0095
- 0096 595 _IOB6 = 0x0096
- 0097 596 _IOB7 = 0x0097
- 0098 597 _RI_0 = 0x0098
- 0099 598 _TI_0 = 0x0099
- 009A 599 _RB8_0 = 0x009a
- 009B 600 _TB8_0 = 0x009b
- 009C 601 _REN_0 = 0x009c
- 009D 602 _SM2_0 = 0x009d
- 009E 603 _SM1_0 = 0x009e
- 009F 604 _SM0_0 = 0x009f
- 00A0 605 _IOC0 = 0x00a0
- 00A1 606 _IOC1 = 0x00a1
- 00A2 607 _IOC2 = 0x00a2
- 00A3 608 _IOC3 = 0x00a3
- 00A4 609 _IOC4 = 0x00a4
- 00A5 610 _IOC5 = 0x00a5
- 00A6 611 _IOC6 = 0x00a6
- 00A7 612 _IOC7 = 0x00a7
- 00A8 613 _EX0 = 0x00a8
- 00A9 614 _ET0 = 0x00a9
- 00AA 615 _EX1 = 0x00aa
- 00AB 616 _ET1 = 0x00ab
- 00AC 617 _ES0 = 0x00ac
- 00AD 618 _ET2 = 0x00ad
- 00AE 619 _ES1 = 0x00ae
- 00AF 620 _EA = 0x00af
- 00B0 621 _IOD0 = 0x00b0
- 00B1 622 _IOD1 = 0x00b1
- 00B2 623 _IOD2 = 0x00b2
- 00B3 624 _IOD3 = 0x00b3
- 00B4 625 _IOD4 = 0x00b4
- 00B5 626 _IOD5 = 0x00b5
- 00B6 627 _IOD6 = 0x00b6
- 00B7 628 _IOD7 = 0x00b7
- 00B8 629 _PX0 = 0x00b8
- 00B9 630 _PT0 = 0x00b9
- 00BA 631 _PX1 = 0x00ba
- 00BB 632 _PT1 = 0x00bb
- 00BC 633 _PS0 = 0x00bc
- 00BD 634 _PT2 = 0x00bd
- 00BE 635 _PS1 = 0x00be
- 00C0 636 _RI_1 = 0x00c0
- 00C1 637 _TI_1 = 0x00c1
- 00C2 638 _RB8_1 = 0x00c2
- 00C3 639 _TB8_1 = 0x00c3
- 00C4 640 _REN_1 = 0x00c4
- 00C5 641 _SM2_1 = 0x00c5
- 00C6 642 _SM1_1 = 0x00c6
- 00C7 643 _SM0_1 = 0x00c7
- 00C8 644 _CPRL2 = 0x00c8
- 00C9 645 _CT2 = 0x00c9
- 00CA 646 _TR2 = 0x00ca
- 00CB 647 _EXEN2 = 0x00cb
- 00CC 648 _TCLK = 0x00cc
- 00CD 649 _RCLK = 0x00cd
- 00CE 650 _EXF2 = 0x00ce
- 00CF 651 _TF2 = 0x00cf
- 00D0 652 _PF = 0x00d0
- 00D1 653 _F1 = 0x00d1
- 00D2 654 _OV = 0x00d2
- 00D3 655 _RS0 = 0x00d3
- 00D4 656 _RS1 = 0x00d4
- 00D5 657 _F0 = 0x00d5
- 00D6 658 _AC = 0x00d6
- 00D7 659 _CY = 0x00d7
- 00DB 660 _INT6 = 0x00db
- 00DC 661 _RESI = 0x00dc
- 00DD 662 _ERESI = 0x00dd
- 00DF 663 _SMOD1 = 0x00df
- 00E0 664 _ACC0 = 0x00e0
- 00E1 665 _ACC1 = 0x00e1
- 00E2 666 _ACC2 = 0x00e2
- 00E3 667 _ACC3 = 0x00e3
- 00E4 668 _ACC4 = 0x00e4
- 00E5 669 _ACC5 = 0x00e5
- 00E6 670 _ACC6 = 0x00e6
- 00E7 671 _ACC7 = 0x00e7
- 00E8 672 _EUSB = 0x00e8
- 00E9 673 _EI2C = 0x00e9
- 00EA 674 _EIEX4 = 0x00ea
- 00EB 675 _EIEX5 = 0x00eb
- 00EC 676 _EIEX6 = 0x00ec
- 00F0 677 _BREG0 = 0x00f0
- 00F1 678 _BREG1 = 0x00f1
- 00F2 679 _BREG2 = 0x00f2
- 00F3 680 _BREG3 = 0x00f3
- 00F4 681 _BREG4 = 0x00f4
- 00F5 682 _BREG5 = 0x00f5
- 00F6 683 _BREG6 = 0x00f6
- 00F7 684 _BREG7 = 0x00f7
- 00F8 685 _PUSB = 0x00f8
- 00F9 686 _PI2C = 0x00f9
- 00FA 687 _EIPX4 = 0x00fa
- 00FB 688 _EIPX5 = 0x00fb
- 00FC 689 _EIPX6 = 0x00fc
- 690 ;--------------------------------------------------------
- 691 ; overlayable register banks
- 692 ;--------------------------------------------------------
- 693 .area REG_BANK_0 (REL,OVR,DATA)
- 0000 694 .ds 8
- 695 ;--------------------------------------------------------
- 696 ; overlayable bit register bank
- 697 ;--------------------------------------------------------
- 698 .area BIT_BANK (REL,OVR,DATA)
- 0020 699 bits:
- 0020 700 .ds 1
- 8000 701 b0 = bits[0]
- 8100 702 b1 = bits[1]
- 8200 703 b2 = bits[2]
- 8300 704 b3 = bits[3]
- 8400 705 b4 = bits[4]
- 8500 706 b5 = bits[5]
- 8600 707 b6 = bits[6]
- 8700 708 b7 = bits[7]
- 709 ;--------------------------------------------------------
- 710 ; internal ram data
- 711 ;--------------------------------------------------------
- 712 .area DSEG (DATA)
- 0008 713 _eeprom_select_PARM_2:
- 0008 714 .ds 1
- 0009 715 _eeprom_read_PARM_2:
- 0009 716 .ds 2
- 000B 717 _eeprom_read_PARM_3:
- 000B 718 .ds 1
- 000C 719 _eeprom_write_PARM_2:
- 000C 720 .ds 2
- 000E 721 _eeprom_write_PARM_3:
- 000E 722 .ds 1
- 723 ;--------------------------------------------------------
- 724 ; overlayable items in internal ram
- 725 ;--------------------------------------------------------
- 726 .area OSEG (OVR,DATA)
- 727 .area OSEG (OVR,DATA)
- 728 .area OSEG (OVR,DATA)
- 729 .area OSEG (OVR,DATA)
- 730 .area OSEG (OVR,DATA)
- 731 .area OSEG (OVR,DATA)
- 732 .area OSEG (OVR,DATA)
- 733 .area OSEG (OVR,DATA)
- 734 .area OSEG (OVR,DATA)
- 000F 735 _sendStringDescriptor_PARM_2::
- 000F 736 .ds 1
- 0010 737 _sendStringDescriptor_PARM_3::
- 0010 738 .ds 1
- 739 ;--------------------------------------------------------
- 740 ; Stack segment in internal ram
- 741 ;--------------------------------------------------------
- 742 .area SSEG (DATA)
- 0021 743 __start__stack:
- 0021 744 .ds 1
- 745
- 746 ;--------------------------------------------------------
- 747 ; indirectly addressable internal ram data
- 748 ;--------------------------------------------------------
- 749 .area ISEG (DATA)
- 750 ;--------------------------------------------------------
- 751 ; absolute internal ram data
- 752 ;--------------------------------------------------------
- 753 .area IABS (ABS,DATA)
- 754 .area IABS (ABS,DATA)
- 755 ;--------------------------------------------------------
- 756 ; bit data
- 757 ;--------------------------------------------------------
- 758 .area BSEG (BIT)
- 759 ;--------------------------------------------------------
- 760 ; paged external ram data
- 761 ;--------------------------------------------------------
- 762 .area PSEG (PAG,XDATA)
- 763 ;--------------------------------------------------------
- 764 ; external ram data
- 765 ;--------------------------------------------------------
- 766 .area XSEG (XDATA)
- E400 767 _GPIF_WAVE_DATA = 0xe400
- E400 768 _GPIF_WAVE0_DATA = 0xe400
- E420 769 _GPIF_WAVE1_DATA = 0xe420
- E440 770 _GPIF_WAVE2_DATA = 0xe440
- E460 771 _GPIF_WAVE3_DATA = 0xe460
- E50D 772 _GPCR2 = 0xe50d
- E600 773 _CPUCS = 0xe600
- E601 774 _IFCONFIG = 0xe601
- E602 775 _PINFLAGSAB = 0xe602
- E603 776 _PINFLAGSCD = 0xe603
- E604 777 _FIFORESET = 0xe604
- E605 778 _BREAKPT = 0xe605
- E606 779 _BPADDRH = 0xe606
- E607 780 _BPADDRL = 0xe607
- E608 781 _UART230 = 0xe608
- E609 782 _FIFOPINPOLAR = 0xe609
- E60A 783 _REVID = 0xe60a
- E60B 784 _REVCTL = 0xe60b
- E60C 785 _GPIFHOLDAMOUNT = 0xe60c
- E610 786 _EP1OUTCFG = 0xe610
- E611 787 _EP1INCFG = 0xe611
- E612 788 _EP2CFG = 0xe612
- E613 789 _EP4CFG = 0xe613
- E614 790 _EP6CFG = 0xe614
- E615 791 _EP8CFG = 0xe615
- E618 792 _EP2FIFOCFG = 0xe618
- E619 793 _EP4FIFOCFG = 0xe619
- E61A 794 _EP6FIFOCFG = 0xe61a
- E61B 795 _EP8FIFOCFG = 0xe61b
- E620 796 _EP2AUTOINLENH = 0xe620
- E621 797 _EP2AUTOINLENL = 0xe621
- E622 798 _EP4AUTOINLENH = 0xe622
- E623 799 _EP4AUTOINLENL = 0xe623
- E624 800 _EP6AUTOINLENH = 0xe624
- E625 801 _EP6AUTOINLENL = 0xe625
- E626 802 _EP8AUTOINLENH = 0xe626
- E627 803 _EP8AUTOINLENL = 0xe627
- E628 804 _ECCCFG = 0xe628
- E629 805 _ECCRESET = 0xe629
- E62A 806 _ECC1B0 = 0xe62a
- E62B 807 _ECC1B1 = 0xe62b
- E62C 808 _ECC1B2 = 0xe62c
- E62D 809 _ECC2B0 = 0xe62d
- E62E 810 _ECC2B1 = 0xe62e
- E62F 811 _ECC2B2 = 0xe62f
- E630 812 _EP2FIFOPFH = 0xe630
- E631 813 _EP2FIFOPFL = 0xe631
- E632 814 _EP4FIFOPFH = 0xe632
- E633 815 _EP4FIFOPFL = 0xe633
- E634 816 _EP6FIFOPFH = 0xe634
- E635 817 _EP6FIFOPFL = 0xe635
- E636 818 _EP8FIFOPFH = 0xe636
- E637 819 _EP8FIFOPFL = 0xe637
- E640 820 _EP2ISOINPKTS = 0xe640
- E641 821 _EP4ISOINPKTS = 0xe641
- E642 822 _EP6ISOINPKTS = 0xe642
- E643 823 _EP8ISOINPKTS = 0xe643
- E648 824 _INPKTEND = 0xe648
- E649 825 _OUTPKTEND = 0xe649
- E650 826 _EP2FIFOIE = 0xe650
- E651 827 _EP2FIFOIRQ = 0xe651
- E652 828 _EP4FIFOIE = 0xe652
- E653 829 _EP4FIFOIRQ = 0xe653
- E654 830 _EP6FIFOIE = 0xe654
- E655 831 _EP6FIFOIRQ = 0xe655
- E656 832 _EP8FIFOIE = 0xe656
- E657 833 _EP8FIFOIRQ = 0xe657
- E658 834 _IBNIE = 0xe658
- E659 835 _IBNIRQ = 0xe659
- E65A 836 _NAKIE = 0xe65a
- E65B 837 _NAKIRQ = 0xe65b
- E65C 838 _USBIE = 0xe65c
- E65D 839 _USBIRQ = 0xe65d
- E65E 840 _EPIE = 0xe65e
- E65F 841 _EPIRQ = 0xe65f
- E660 842 _GPIFIE = 0xe660
- E661 843 _GPIFIRQ = 0xe661
- E662 844 _USBERRIE = 0xe662
- E663 845 _USBERRIRQ = 0xe663
- E664 846 _ERRCNTLIM = 0xe664
- E665 847 _CLRERRCNT = 0xe665
- E666 848 _INT2IVEC = 0xe666
- E667 849 _INT4IVEC = 0xe667
- E668 850 _INTSETUP = 0xe668
- E670 851 _PORTACFG = 0xe670
- E671 852 _PORTCCFG = 0xe671
- E672 853 _PORTECFG = 0xe672
- E678 854 _I2CS = 0xe678
- E679 855 _I2DAT = 0xe679
- E67A 856 _I2CTL = 0xe67a
- E67B 857 _XAUTODAT1 = 0xe67b
- E67B 858 _EXTAUTODAT1 = 0xe67b
- E67C 859 _XAUTODAT2 = 0xe67c
- E67C 860 _EXTAUTODAT2 = 0xe67c
- E67D 861 _UDMACRCH = 0xe67d
- E67E 862 _UDMACRCL = 0xe67e
- E67F 863 _UDMACRCQUALIFIER = 0xe67f
- E680 864 _USBCS = 0xe680
- E681 865 _SUSPEND = 0xe681
- E682 866 _WAKEUPCS = 0xe682
- E683 867 _TOGCTL = 0xe683
- E684 868 _USBFRAMEH = 0xe684
- E685 869 _USBFRAMEL = 0xe685
- E686 870 _MICROFRAME = 0xe686
- E687 871 _FNADDR = 0xe687
- E68A 872 _EP0BCH = 0xe68a
- E68B 873 _EP0BCL = 0xe68b
- E68D 874 _EP1OUTBC = 0xe68d
- E68F 875 _EP1INBC = 0xe68f
- E690 876 _EP2BCH = 0xe690
- E691 877 _EP2BCL = 0xe691
- E694 878 _EP4BCH = 0xe694
- E695 879 _EP4BCL = 0xe695
- E698 880 _EP6BCH = 0xe698
- E699 881 _EP6BCL = 0xe699
- E69C 882 _EP8BCH = 0xe69c
- E69D 883 _EP8BCL = 0xe69d
- E6A0 884 _EP0CS = 0xe6a0
- E6A1 885 _EP1OUTCS = 0xe6a1
- E6A2 886 _EP1INCS = 0xe6a2
- E6A3 887 _EPXCS = 0xe6a3
- E6A3 888 _EP2CS = 0xe6a3
- E6A4 889 _EP4CS = 0xe6a4
- E6A5 890 _EP6CS = 0xe6a5
- E6A6 891 _EP8CS = 0xe6a6
- E6A7 892 _EP2FIFOFLGS = 0xe6a7
- E6A8 893 _EP4FIFOFLGS = 0xe6a8
- E6A9 894 _EP6FIFOFLGS = 0xe6a9
- E6AA 895 _EP8FIFOFLGS = 0xe6aa
- E6AB 896 _EP2FIFOBCH = 0xe6ab
- E6AC 897 _EP2FIFOBCL = 0xe6ac
- E6AD 898 _EP4FIFOBCH = 0xe6ad
- E6AE 899 _EP4FIFOBCL = 0xe6ae
- E6AF 900 _EP6FIFOBCH = 0xe6af
- E6B0 901 _EP6FIFOBCL = 0xe6b0
- E6B1 902 _EP8FIFOBCH = 0xe6b1
- E6B2 903 _EP8FIFOBCL = 0xe6b2
- E6B3 904 _SUDPTRH = 0xe6b3
- E6B4 905 _SUDPTRL = 0xe6b4
- E6B5 906 _SUDPTRCTL = 0xe6b5
- E6B8 907 _SETUPDAT = 0xe6b8
- E6B8 908 _bmRequestType = 0xe6b8
- E6B9 909 _bRequest = 0xe6b9
- E6BA 910 _wValueL = 0xe6ba
- E6BB 911 _wValueH = 0xe6bb
- E6BC 912 _wIndexL = 0xe6bc
- E6BD 913 _wIndexH = 0xe6bd
- E6BE 914 _wLengthL = 0xe6be
- E6BF 915 _wLengthH = 0xe6bf
- E6C0 916 _GPIFWFSELECT = 0xe6c0
- E6C1 917 _GPIFIDLECS = 0xe6c1
- E6C2 918 _GPIFIDLECTL = 0xe6c2
- E6C3 919 _GPIFCTLCFG = 0xe6c3
- E6C4 920 _GPIFADRH = 0xe6c4
- E6C5 921 _GPIFADRL = 0xe6c5
- E6C6 922 _FLOWSTATE = 0xe6c6
- E6C7 923 _FLOWLOGIC = 0xe6c7
- E6C8 924 _FLOWEQ0CTL = 0xe6c8
- E6C9 925 _FLOWEQ1CTL = 0xe6c9
- E6CA 926 _FLOWHOLDOFF = 0xe6ca
- E6CB 927 _FLOWSTB = 0xe6cb
- E6CC 928 _FLOWSTBEDGE = 0xe6cc
- E6CD 929 _FLOWSTBHPERIOD = 0xe6cd
- E6CE 930 _GPIFTCB3 = 0xe6ce
- E6CF 931 _GPIFTCB2 = 0xe6cf
- E6D0 932 _GPIFTCB1 = 0xe6d0
- E6D1 933 _GPIFTCB0 = 0xe6d1
- E6D2 934 _EP2GPIFFLGSEL = 0xe6d2
- E6D3 935 _EP2GPIFPFSTOP = 0xe6d3
- E6D4 936 _EP2GPIFTRIG = 0xe6d4
- E6DA 937 _EP4GPIFFLGSEL = 0xe6da
- E6DB 938 _EP4GPIFPFSTOP = 0xe6db
- E6DC 939 _EP4GPIFTRIG = 0xe6dc
- E6E2 940 _EP6GPIFFLGSEL = 0xe6e2
- E6E3 941 _EP6GPIFPFSTOP = 0xe6e3
- E6E4 942 _EP6GPIFTRIG = 0xe6e4
- E6EA 943 _EP8GPIFFLGSEL = 0xe6ea
- E6EB 944 _EP8GPIFPFSTOP = 0xe6eb
- E6EC 945 _EP8GPIFTRIG = 0xe6ec
- E6F0 946 _XGPIFSGLDATH = 0xe6f0
- E6F1 947 _XGPIFSGLDATLX = 0xe6f1
- E6F2 948 _XGPIFSGLDATLNOX = 0xe6f2
- E6F3 949 _GPIFREADYCFG = 0xe6f3
- E6F4 950 _GPIFREADYSTAT = 0xe6f4
- E6F5 951 _GPIFABORT = 0xe6f5
- E740 952 _EP0BUF = 0xe740
- E780 953 _EP1OUTBUF = 0xe780
- E7C0 954 _EP1INBUF = 0xe7c0
- F000 955 _EP2FIFOBUF = 0xf000
- F400 956 _EP4FIFOBUF = 0xf400
- F800 957 _EP6FIFOBUF = 0xf800
- FC00 958 _EP8FIFOBUF = 0xfc00
- 0003 959 _INT0VEC_IE0 = 0x0003
- 000B 960 _INT1VEC_T0 = 0x000b
- 0013 961 _INT2VEC_IE1 = 0x0013
- 001B 962 _INT3VEC_T1 = 0x001b
- 0023 963 _INT4VEC_USART0 = 0x0023
- 002B 964 _INT5VEC_T2 = 0x002b
- 0033 965 _INT6VEC_RESUME = 0x0033
- 003B 966 _INT7VEC_USART1 = 0x003b
- 0043 967 _INT8VEC_USB = 0x0043
- 004B 968 _INT9VEC_I2C = 0x004b
- 0053 969 _INT10VEC_GPIF = 0x0053
- 005B 970 _INT11VEC_IE5 = 0x005b
- 0063 971 _INT12VEC_IE6 = 0x0063
- 0100 972 _INTVEC_SUDAV = 0x0100
- 0104 973 _INTVEC_SOF = 0x0104
- 0108 974 _INTVEC_SUTOK = 0x0108
- 010C 975 _INTVEC_SUSPEND = 0x010c
- 0110 976 _INTVEC_USBRESET = 0x0110
- 0114 977 _INTVEC_HISPEED = 0x0114
- 0118 978 _INTVEC_EP0ACK = 0x0118
- 0120 979 _INTVEC_EP0IN = 0x0120
- 0124 980 _INTVEC_EP0OUT = 0x0124
- 0128 981 _INTVEC_EP1IN = 0x0128
- 012C 982 _INTVEC_EP1OUT = 0x012c
- 0130 983 _INTVEC_EP2 = 0x0130
- 0134 984 _INTVEC_EP4 = 0x0134
- 0138 985 _INTVEC_EP6 = 0x0138
- 013C 986 _INTVEC_EP8 = 0x013c
- 0140 987 _INTVEC_IBN = 0x0140
- 0148 988 _INTVEC_EP0PING = 0x0148
- 014C 989 _INTVEC_EP1PING = 0x014c
- 0150 990 _INTVEC_EP2PING = 0x0150
- 0154 991 _INTVEC_EP4PING = 0x0154
- 0158 992 _INTVEC_EP6PING = 0x0158
- 015C 993 _INTVEC_EP8PING = 0x015c
- 0160 994 _INTVEC_ERRLIMIT = 0x0160
- 0170 995 _INTVEC_EP2ISOERR = 0x0170
- 0174 996 _INTVEC_EP4ISOERR = 0x0174
- 0178 997 _INTVEC_EP6ISOERR = 0x0178
- 017C 998 _INTVEC_EP8ISOERR = 0x017c
- 0180 999 _INTVEC_EP2PF = 0x0180
- 0184 1000 _INTVEC_EP4PF = 0x0184
- 0188 1001 _INTVEC_EP6PF = 0x0188
- 018C 1002 _INTVEC_EP8PF = 0x018c
- 0190 1003 _INTVEC_EP2EF = 0x0190
- 0194 1004 _INTVEC_EP4EF = 0x0194
- 0198 1005 _INTVEC_EP6EF = 0x0198
- 019C 1006 _INTVEC_EP8EF = 0x019c
- 01A0 1007 _INTVEC_EP2FF = 0x01a0
- 01A8 1008 _INTVEC_EP6FF = 0x01a8
- 01AC 1009 _INTVEC_EP8FF = 0x01ac
- 01B0 1010 _INTVEC_GPIFDONE = 0x01b0
- 01B4 1011 _INTVEC_GPIFWF = 0x01b4
- 3200 1012 _eeprom_addr::
- 3200 1013 .ds 2
- 3202 1014 _eeprom_write_bytes::
- 3202 1015 .ds 2
- 3204 1016 _eeprom_write_checksum::
- 3204 1017 .ds 1
- 3205 1018 _debug_counter::
- 3205 1019 .ds 2
- 3207 1020 _debug_stack_size::
- 3207 1021 .ds 1
- 3208 1022 _debug_msg_size::
- 3208 1023 .ds 1
- 3209 1024 _debug_stack::
- 3209 1025 .ds 96
- 3269 1026 _debug_stack_ptr::
- 3269 1027 .ds 2
- 326B 1028 _debug_msg_buf::
- 326B 1029 .ds 3
- 326E 1030 _debug_read_addr::
- 326E 1031 .ds 2
- 006C 1032 _ZTEX_DESCRIPTOR = 0x006c
- 006D 1033 _ZTEX_DESCRIPTOR_VERSION = 0x006d
- 006E 1034 _ZTEXID = 0x006e
- 0072 1035 _PRODUCT_ID = 0x0072
- 0076 1036 _FW_VERSION = 0x0076
- 0077 1037 _INTERFACE_VERSION = 0x0077
- 0078 1038 _INTERFACE_CAPABILITIES = 0x0078
- 007E 1039 _MODULE_RESERVED = 0x007e
- 008A 1040 _SN_STRING = 0x008a
- 1041 ;--------------------------------------------------------
- 1042 ; absolute external ram data
- 1043 ;--------------------------------------------------------
- 1044 .area XABS (ABS,XDATA)
- 1045 ;--------------------------------------------------------
- 1046 ; external initialized ram data
- 1047 ;--------------------------------------------------------
- 1048 .area XISEG (XDATA)
- 3270 1049 _ep0_payload_remaining::
- 3270 1050 .ds 2
- 3272 1051 _ep0_payload_transfer::
- 3272 1052 .ds 1
- 3273 1053 _ep0_prev_setup_request::
- 3273 1054 .ds 1
- 3274 1055 _ep0_vendor_cmd_setup::
- 3274 1056 .ds 1
- 3275 1057 _ISOFRAME_COUNTER::
- 3275 1058 .ds 8
- 1059 .area HOME (CODE)
- 1060 .area GSINIT0 (CODE)
- 1061 .area GSINIT1 (CODE)
- 1062 .area GSINIT2 (CODE)
- 1063 .area GSINIT3 (CODE)
- 1064 .area GSINIT4 (CODE)
- 1065 .area GSINIT5 (CODE)
- 1066 .area GSINIT (CODE)
- 1067 .area GSFINAL (CODE)
- 1068 .area CSEG (CODE)
- 1069 ;--------------------------------------------------------
- 1070 ; interrupt vector
- 1071 ;--------------------------------------------------------
- 1072 .area HOME (CODE)
- 0200 1073 __interrupt_vect:
- 0200 02 02 08 1074 ljmp __sdcc_gsinit_startup
- 1075 ;--------------------------------------------------------
- 1076 ; global & static initialisations
- 1077 ;--------------------------------------------------------
- 1078 .area HOME (CODE)
- 1079 .area GSINIT (CODE)
- 1080 .area GSFINAL (CODE)
- 1081 .area GSINIT (CODE)
- 1082 .globl __sdcc_gsinit_startup
- 1083 .globl __sdcc_program_startup
- 1084 .globl __start__stack
- 1085 .globl __mcs51_genXINIT
- 1086 .globl __mcs51_genXRAMCLEAR
- 1087 .globl __mcs51_genRAMCLEAR
- 1088 .area GSFINAL (CODE)
- 0261 02 02 03 1089 ljmp __sdcc_program_startup
- 1090 ;--------------------------------------------------------
- 1091 ; Home
- 1092 ;--------------------------------------------------------
- 1093 .area HOME (CODE)
- 1094 .area HOME (CODE)
- 0203 1095 __sdcc_program_startup:
- 0203 12 10 36 1096 lcall _main
- 1097 ; return from main will lock up
- 0206 80 FE 1098 sjmp .
- 1099 ;--------------------------------------------------------
- 1100 ; code
- 1101 ;--------------------------------------------------------
- 1102 .area CSEG (CODE)
- 1103 ;------------------------------------------------------------
- 1104 ;Allocation info for local variables in function 'abscode_intvec'
- 1105 ;------------------------------------------------------------
- 1106 ;------------------------------------------------------------
- 1107 ; ../../../include/ezintavecs.h:92: void abscode_intvec() _naked
- 1108 ; -----------------------------------------
- 1109 ; function abscode_intvec
- 1110 ; -----------------------------------------
- 0264 1111 _abscode_intvec:
- 1112 ; naked function: no prologue.
- 1113 ; ../../../include/ezintavecs.h:317: ERROR: no line number 317 in file ../../../include/ezintavecs.h
- 1114
- 1115 .area ABSCODE (ABS,CODE)
- 0000 1116 .org 0x0000
- 0000 1117 ENTRY:
- 0000 02 02 00 1118 ljmp #0x0200
- 1119 ; # 94 "../../../include/ezintavecs.h"
- 0003 1120 .org 0x0003
- 1121 ; # 34 "../../../include/ezintavecs.h"
- 0003 32 1122 reti
- 1123 ; # 94 "../../../include/ezintavecs.h"
- 000B 1124 .org 0x000b
- 1125 ; # 35 "../../../include/ezintavecs.h"
- 000B 32 1126 reti
- 1127 ; # 94 "../../../include/ezintavecs.h"
- 0013 1128 .org 0x0013
- 1129 ; # 36 "../../../include/ezintavecs.h"
- 0013 32 1130 reti
- 1131 ; # 94 "../../../include/ezintavecs.h"
- 001B 1132 .org 0x001b
- 1133 ; # 37 "../../../include/ezintavecs.h"
- 001B 32 1134 reti
- 1135 ; # 94 "../../../include/ezintavecs.h"
- 0023 1136 .org 0x0023
- 1137 ; # 38 "../../../include/ezintavecs.h"
- 0023 32 1138 reti
- 1139 ; # 94 "../../../include/ezintavecs.h"
- 002B 1140 .org 0x002b
- 1141 ; # 39 "../../../include/ezintavecs.h"
- 002B 32 1142 reti
- 1143 ; # 94 "../../../include/ezintavecs.h"
- 0033 1144 .org 0x0033
- 1145 ; # 40 "../../../include/ezintavecs.h"
- 0033 32 1146 reti
- 1147 ; # 94 "../../../include/ezintavecs.h"
- 003B 1148 .org 0x003b
- 1149 ; # 41 "../../../include/ezintavecs.h"
- 003B 32 1150 reti
- 1151 ; # 94 "../../../include/ezintavecs.h"
- 0043 1152 .org 0x0043
- 1153 ; # 42 "../../../include/ezintavecs.h"
- 0043 32 1154 reti
- 1155 ; # 94 "../../../include/ezintavecs.h"
- 004B 1156 .org 0x004b
- 1157 ; # 43 "../../../include/ezintavecs.h"
- 004B 32 1158 reti
- 1159 ; # 94 "../../../include/ezintavecs.h"
- 0053 1160 .org 0x0053
- 1161 ; # 44 "../../../include/ezintavecs.h"
- 0053 32 1162 reti
- 1163 ; # 94 "../../../include/ezintavecs.h"
- 005B 1164 .org 0x005b
- 1165 ; # 45 "../../../include/ezintavecs.h"
- 005B 32 1166 reti
- 1167 ; # 94 "../../../include/ezintavecs.h"
- 0063 1168 .org 0x0063
- 1169 ; # 46 "../../../include/ezintavecs.h"
- 0063 32 1170 reti
- 1171 ; # 94 "../../../include/ezintavecs.h"
- 0100 1172 .org 0x0100
- 1173 ; # 47 "../../../include/ezintavecs.h"
- 0100 32 1174 reti
- 1175 ; # 94 "../../../include/ezintavecs.h"
- 0104 1176 .org 0x0104
- 1177 ; # 48 "../../../include/ezintavecs.h"
- 0104 32 1178 reti
- 1179 ; # 94 "../../../include/ezintavecs.h"
- 0108 1180 .org 0x0108
- 1181 ; # 49 "../../../include/ezintavecs.h"
- 0108 32 1182 reti
- 1183 ; # 94 "../../../include/ezintavecs.h"
- 010C 1184 .org 0x010C
- 1185 ; # 50 "../../../include/ezintavecs.h"
- 010C 32 1186 reti
- 1187 ; # 94 "../../../include/ezintavecs.h"
- 0110 1188 .org 0x0110
- 1189 ; # 51 "../../../include/ezintavecs.h"
- 0110 32 1190 reti
- 1191 ; # 94 "../../../include/ezintavecs.h"
- 0114 1192 .org 0x0114
- 1193 ; # 52 "../../../include/ezintavecs.h"
- 0114 32 1194 reti
- 1195 ; # 94 "../../../include/ezintavecs.h"
- 0118 1196 .org 0x0118
- 1197 ; # 53 "../../../include/ezintavecs.h"
- 0118 32 1198 reti
- 1199 ; # 94 "../../../include/ezintavecs.h"
- 0120 1200 .org 0x0120
- 1201 ; # 54 "../../../include/ezintavecs.h"
- 0120 32 1202 reti
- 1203 ; # 94 "../../../include/ezintavecs.h"
- 0124 1204 .org 0x0124
- 1205 ; # 55 "../../../include/ezintavecs.h"
- 0124 32 1206 reti
- 1207 ; # 94 "../../../include/ezintavecs.h"
- 0128 1208 .org 0x0128
- 1209 ; # 56 "../../../include/ezintavecs.h"
- 0128 32 1210 reti
- 1211 ; # 94 "../../../include/ezintavecs.h"
- 012C 1212 .org 0x012C
- 1213 ; # 57 "../../../include/ezintavecs.h"
- 012C 32 1214 reti
- 1215 ; # 94 "../../../include/ezintavecs.h"
- 0130 1216 .org 0x0130
- 1217 ; # 58 "../../../include/ezintavecs.h"
- 0130 32 1218 reti
- 1219 ; # 94 "../../../include/ezintavecs.h"
- 0134 1220 .org 0x0134
- 1221 ; # 59 "../../../include/ezintavecs.h"
- 0134 32 1222 reti
- 1223 ; # 94 "../../../include/ezintavecs.h"
- 0138 1224 .org 0x0138
- 1225 ; # 60 "../../../include/ezintavecs.h"
- 0138 32 1226 reti
- 1227 ; # 94 "../../../include/ezintavecs.h"
- 013C 1228 .org 0x013C
- 1229 ; # 61 "../../../include/ezintavecs.h"
- 013C 32 1230 reti
- 1231 ; # 94 "../../../include/ezintavecs.h"
- 0140 1232 .org 0x0140
- 1233 ; # 62 "../../../include/ezintavecs.h"
- 0140 32 1234 reti
- 1235 ; # 94 "../../../include/ezintavecs.h"
- 0148 1236 .org 0x0148
- 1237 ; # 63 "../../../include/ezintavecs.h"
- 0148 32 1238 reti
- 1239 ; # 94 "../../../include/ezintavecs.h"
- 014C 1240 .org 0x014C
- 1241 ; # 64 "../../../include/ezintavecs.h"
- 014C 32 1242 reti
- 1243 ; # 94 "../../../include/ezintavecs.h"
- 0150 1244 .org 0x0150
- 1245 ; # 65 "../../../include/ezintavecs.h"
- 0150 32 1246 reti
- 1247 ; # 94 "../../../include/ezintavecs.h"
- 0154 1248 .org 0x0154
- 1249 ; # 66 "../../../include/ezintavecs.h"
- 0154 32 1250 reti
- 1251 ; # 94 "../../../include/ezintavecs.h"
- 0158 1252 .org 0x0158
- 1253 ; # 67 "../../../include/ezintavecs.h"
- 0158 32 1254 reti
- 1255 ; # 94 "../../../include/ezintavecs.h"
- 015C 1256 .org 0x015C
- 1257 ; # 68 "../../../include/ezintavecs.h"
- 015C 32 1258 reti
- 1259 ; # 94 "../../../include/ezintavecs.h"
- 0160 1260 .org 0x0160
- 1261 ; # 69 "../../../include/ezintavecs.h"
- 0160 32 1262 reti
- 1263 ; # 94 "../../../include/ezintavecs.h"
- 0170 1264 .org 0x0170
- 1265 ; # 70 "../../../include/ezintavecs.h"
- 0170 32 1266 reti
- 1267 ; # 94 "../../../include/ezintavecs.h"
- 0174 1268 .org 0x0174
- 1269 ; # 71 "../../../include/ezintavecs.h"
- 0174 32 1270 reti
- 1271 ; # 94 "../../../include/ezintavecs.h"
- 0178 1272 .org 0x0178
- 1273 ; # 72 "../../../include/ezintavecs.h"
- 0178 32 1274 reti
- 1275 ; # 94 "../../../include/ezintavecs.h"
- 017C 1276 .org 0x017C
- 1277 ; # 73 "../../../include/ezintavecs.h"
- 017C 32 1278 reti
- 1279 ; # 94 "../../../include/ezintavecs.h"
- 0180 1280 .org 0x0180
- 1281 ; # 74 "../../../include/ezintavecs.h"
- 0180 32 1282 reti
- 1283 ; # 94 "../../../include/ezintavecs.h"
- 0184 1284 .org 0x0184
- 1285 ; # 75 "../../../include/ezintavecs.h"
- 0184 32 1286 reti
- 1287 ; # 94 "../../../include/ezintavecs.h"
- 0188 1288 .org 0x0188
- 1289 ; # 76 "../../../include/ezintavecs.h"
- 0188 32 1290 reti
- 1291 ; # 94 "../../../include/ezintavecs.h"
- 018C 1292 .org 0x018C
- 1293 ; # 77 "../../../include/ezintavecs.h"
- 018C 32 1294 reti
- 1295 ; # 94 "../../../include/ezintavecs.h"
- 0190 1296 .org 0x0190
- 1297 ; # 78 "../../../include/ezintavecs.h"
- 0190 32 1298 reti
- 1299 ; # 94 "../../../include/ezintavecs.h"
- 0194 1300 .org 0x0194
- 1301 ; # 79 "../../../include/ezintavecs.h"
- 0194 32 1302 reti
- 1303 ; # 94 "../../../include/ezintavecs.h"
- 0198 1304 .org 0x0198
- 1305 ; # 80 "../../../include/ezintavecs.h"
- 0198 32 1306 reti
- 1307 ; # 94 "../../../include/ezintavecs.h"
- 019C 1308 .org 0x019C
- 1309 ; # 81 "../../../include/ezintavecs.h"
- 019C 32 1310 reti
- 1311 ; # 94 "../../../include/ezintavecs.h"
- 01A0 1312 .org 0x01A0
- 1313 ; # 82 "../../../include/ezintavecs.h"
- 01A0 32 1314 reti
- 1315 ; # 94 "../../../include/ezintavecs.h"
- 01A8 1316 .org 0x01A8
- 1317 ; # 83 "../../../include/ezintavecs.h"
- 01A8 32 1318 reti
- 1319 ; # 94 "../../../include/ezintavecs.h"
- 01AC 1320 .org 0x01AC
- 1321 ; # 84 "../../../include/ezintavecs.h"
- 01AC 32 1322 reti
- 1323 ; # 94 "../../../include/ezintavecs.h"
- 01B0 1324 .org 0x01B0
- 1325 ; # 85 "../../../include/ezintavecs.h"
- 01B0 32 1326 reti
- 1327 ; # 94 "../../../include/ezintavecs.h"
- 01B4 1328 .org 0x01B4
- 1329 ; # 101 "../../../include/ezintavecs.h"
- 01B4 32 1330 reti
- 01B8 1331 .org 0x01b8
- 01B8 1332 INTVEC_DUMMY:
- 01B8 32 1333 reti
- 1334 .area CSEG (CODE)
- 1335
- 1336 ; naked function: no epilogue.
- 1337 ;------------------------------------------------------------
- 1338 ;Allocation info for local variables in function 'wait'
- 1339 ;------------------------------------------------------------
- 1340 ;ms Allocated to registers r2 r3
- 1341 ;i Allocated to registers r6 r7
- 1342 ;j Allocated to registers r4 r5
- 1343 ;------------------------------------------------------------
- 1344 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 1345 ; -----------------------------------------
- 1346 ; function wait
- 1347 ; -----------------------------------------
- 0264 1348 _wait:
- 0002 1349 ar2 = 0x02
- 0003 1350 ar3 = 0x03
- 0004 1351 ar4 = 0x04
- 0005 1352 ar5 = 0x05
- 0006 1353 ar6 = 0x06
- 0007 1354 ar7 = 0x07
- 0000 1355 ar0 = 0x00
- 0001 1356 ar1 = 0x01
- 0264 AA 82 1357 mov r2,dpl
- 0266 AB 83 1358 mov r3,dph
- 1359 ; ../../../include/ztex-utils.h:80: for (j=0; j> 8)
- 05CA FD 2103 mov r5,a
- 05CB 90 32 69 2104 mov dptr,#_debug_stack_ptr
- 05CE EC 2105 mov a,r4
- 05CF F0 2106 movx @dptr,a
- 05D0 A3 2107 inc dptr
- 05D1 ED 2108 mov a,r5
- 05D2 F0 2109 movx @dptr,a
- 2110 ; ../../../include/ztex-utils.h:120: AUTOPTRL1=LO(&($0));
- 05D3 75 9B 6B 2111 mov _AUTOPTRL1,#_debug_msg_buf
- 2112 ; ../../../include/ztex-utils.h:121: AUTOPTRH1=HI(&($0));
- 05D6 7E 6B 2113 mov r6,#_debug_msg_buf
- 05D8 7F 32 2114 mov r7,#(_debug_msg_buf >> 8)
- 05DA 8F 9A 2115 mov _AUTOPTRH1,r7
- 2116 ; ../../../include/ztex-utils.h:122: AUTOPTRL2=LO(&($1));
- 05DC 8C 06 2117 mov ar6,r4
- 05DE 8D 07 2118 mov ar7,r5
- 05E0 8E 9E 2119 mov _AUTOPTRL2,r6
- 2120 ; ../../../include/ztex-utils.h:123: AUTOPTRH2=HI(&($1));
- 05E2 8D 9D 2121 mov _AUTOPTRH2,r5
- 2122 ; ../../../include/ztex-utils.h:129: _endasm;
- 2123
- 05E4 C0 02 2124 push ar2
- 05E6 7A 03 2125 mov r2,#(3);
- 05E8 12 02 AC 2126 lcall _MEM_COPY1_int
- 05EB D0 02 2127 pop ar2
- 2128
- 2129 ; ../../../include/ztex-debug.h:53: debug_counter += 1;
- 05ED 90 32 05 2130 mov dptr,#_debug_counter
- 05F0 74 01 2131 mov a,#0x01
- 05F2 2A 2132 add a,r2
- 05F3 F0 2133 movx @dptr,a
- 05F4 E4 2134 clr a
- 05F5 3B 2135 addc a,r3
- 05F6 A3 2136 inc dptr
- 05F7 F0 2137 movx @dptr,a
- 05F8 22 2138 ret
- 2139 ;------------------------------------------------------------
- 2140 ;Allocation info for local variables in function 'debug_init'
- 2141 ;------------------------------------------------------------
- 2142 ;------------------------------------------------------------
- 2143 ; ../../../include/ztex-debug.h:60: void debug_init () {
- 2144 ; -----------------------------------------
- 2145 ; function debug_init
- 2146 ; -----------------------------------------
- 05F9 2147 _debug_init:
- 2148 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 05F9 90 32 05 2149 mov dptr,#_debug_counter
- 05FC E4 2150 clr a
- 05FD F0 2151 movx @dptr,a
- 05FE A3 2152 inc dptr
- 05FF F0 2153 movx @dptr,a
- 2154 ; ../../../include/ztex-debug.h:62: debug_stack_size = DEBUG_STACK_SIZE;
- 0600 90 32 07 2155 mov dptr,#_debug_stack_size
- 0603 74 20 2156 mov a,#0x20
- 0605 F0 2157 movx @dptr,a
- 2158 ; ../../../include/ztex-debug.h:63: debug_msg_size = DEBUG_MSG_SIZE;
- 0606 90 32 08 2159 mov dptr,#_debug_msg_size
- 0609 74 03 2160 mov a,#0x03
- 060B F0 2161 movx @dptr,a
- 2162 ; ../../../include/ztex-debug.h:64: debug_stack_ptr = debug_stack;
- 060C 90 32 69 2163 mov dptr,#_debug_stack_ptr
- 060F 74 09 2164 mov a,#_debug_stack
- 0611 F0 2165 movx @dptr,a
- 0612 A3 2166 inc dptr
- 0613 74 32 2167 mov a,#(_debug_stack >> 8)
- 0615 F0 2168 movx @dptr,a
- 0616 22 2169 ret
- 2170 ;------------------------------------------------------------
- 2171 ;Allocation info for local variables in function 'debug_read_ep0'
- 2172 ;------------------------------------------------------------
- 2173 ;b Allocated to registers r2
- 2174 ;------------------------------------------------------------
- 2175 ; ../../../include/ztex-debug.h:71: BYTE debug_read_ep0 () {
- 2176 ; -----------------------------------------
- 2177 ; function debug_read_ep0
- 2178 ; -----------------------------------------
- 0617 2179 _debug_read_ep0:
- 2180 ; ../../../include/ztex-debug.h:73: b = ep0_payload_transfer;
- 0617 90 32 72 2181 mov dptr,#_ep0_payload_transfer
- 061A E0 2182 movx a,@dptr
- 2183 ; ../../../include/ztex-debug.h:74: if ( b != 0) {
- 061B FA 2184 mov r2,a
- 061C 70 03 2185 jnz 00106$
- 061E 02 06 3C 2186 ljmp 00102$
- 0621 2187 00106$:
- 2188 ; ../../../include/ztex-utils.h:120: AUTOPTRL1=LO(&($0));
- 0621 90 32 6E 2189 mov dptr,#_debug_read_addr
- 0624 E0 2190 movx a,@dptr
- 0625 FB 2191 mov r3,a
- 0626 A3 2192 inc dptr
- 0627 E0 2193 movx a,@dptr
- 0628 FC 2194 mov r4,a
- 0629 8B 9B 2195 mov _AUTOPTRL1,r3
- 2196 ; ../../../include/ztex-utils.h:121: AUTOPTRH1=HI(&($0));
- 062B 8C 9A 2197 mov _AUTOPTRH1,r4
- 2198 ; ../../../include/ztex-utils.h:122: AUTOPTRL2=LO(&($1));
- 062D 75 9E 40 2199 mov _AUTOPTRL2,#0x40
- 2200 ; ../../../include/ztex-utils.h:123: AUTOPTRH2=HI(&($1));
- 0630 75 9D E7 2201 mov _AUTOPTRH2,#0xE7
- 2202 ; ../../../include/ztex-utils.h:129: _endasm;
- 2203
- 0633 C0 02 2204 push ar2
- 0635 7A F0 2205 mov r2,#(b);
- 0637 12 02 AC 2206 lcall _MEM_COPY1_int
- 063A D0 02 2207 pop ar2
- 2208
- 063C 2209 00102$:
- 2210 ; ../../../include/ztex-debug.h:77: debug_read_addr += b;
- 063C 90 32 6E 2211 mov dptr,#_debug_read_addr
- 063F E0 2212 movx a,@dptr
- 0640 FB 2213 mov r3,a
- 0641 A3 2214 inc dptr
- 0642 E0 2215 movx a,@dptr
- 0643 FC 2216 mov r4,a
- 0644 90 32 6E 2217 mov dptr,#_debug_read_addr
- 0647 EA 2218 mov a,r2
- 0648 2B 2219 add a,r3
- 0649 F0 2220 movx @dptr,a
- 064A E4 2221 clr a
- 064B 3C 2222 addc a,r4
- 064C A3 2223 inc dptr
- 064D F0 2224 movx @dptr,a
- 2225 ; ../../../include/ztex-debug.h:78: return b;
- 064E 8A 82 2226 mov dpl,r2
- 0650 22 2227 ret
- 2228 ;------------------------------------------------------------
- 2229 ;Allocation info for local variables in function 'abscode_identity'
- 2230 ;------------------------------------------------------------
- 2231 ;------------------------------------------------------------
- 2232 ; ../../../include/ztex-descriptors.h:116: void abscode_identity() _naked
- 2233 ; -----------------------------------------
- 2234 ; function abscode_identity
- 2235 ; -----------------------------------------
- 0651 2236 _abscode_identity:
- 2237 ; naked function: no prologue.
- 2238 ; ../../../include/ztex-descriptors.h:170: .db MODULE_RESERVED_03
- 2239
- 2240 .area ABSCODE (ABS,CODE)
- 2241
- 006C 2242 .org 0x06c
- 006C 28 2243 .db 40
- 2244
- 006D 2245 .org _ZTEX_DESCRIPTOR_VERSION
- 006D 01 2246 .db 1
- 2247
- 006E 2248 .org _ZTEXID
- 006E 5A 54 45 58 2249 .ascii "ZTEX"
- 2250
- 0072 2251 .org _PRODUCT_ID
- 0072 00 2252 .db 0
- 0073 00 2253 .db 0
- 0074 00 2254 .db 0
- 0075 00 2255 .db 0
- 2256
- 0076 2257 .org _FW_VERSION
- 0076 00 2258 .db 0
- 2259
- 0077 2260 .org _INTERFACE_VERSION
- 0077 01 2261 .db 1
- 2262
- 0078 2263 .org _INTERFACE_CAPABILITIES
- 2264 ; # 158 "../../../include/ztex-descriptors.h"
- 0078 09 2265 .db 0 + 1 + 8
- 2266 ; # 160 "../../../include/ztex-descriptors.h"
- 0079 00 2267 .db 0
- 007A 00 2268 .db 0
- 007B 00 2269 .db 0
- 007C 00 2270 .db 0
- 007D 00 2271 .db 0
- 2272
- 007E 2273 .org _MODULE_RESERVED
- 007E 00 2274 .db 0
- 007F 00 2275 .db 0
- 0080 00 2276 .db 0
- 0081 00 2277 .db 0
- 0082 00 2278 .db 0
- 0083 00 2279 .db 0
- 0084 00 2280 .db 0
- 0085 00 2281 .db 0
- 0086 00 2282 .db 0
- 0087 00 2283 .db 0
- 0088 00 2284 .db 0
- 0089 00 2285 .db 0
- 2286
- 008A 2287 .org _SN_STRING
- 008A 30 30 30 30 30 30 2288 .ascii "0000000000"
- 30 30 30 30
- 2289
- 2290 .area CSEG (CODE)
- 2291
- 2292 ; naked function: no epilogue.
- 2293 ;------------------------------------------------------------
- 2294 ;Allocation info for local variables in function 'resetToggleData'
- 2295 ;------------------------------------------------------------
- 2296 ;------------------------------------------------------------
- 2297 ; ../../../include/ztex-isr.h:34: static void resetToggleData () {
- 2298 ; -----------------------------------------
- 2299 ; function resetToggleData
- 2300 ; -----------------------------------------
- 0651 2301 _resetToggleData:
- 2302 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 2303 ; ../../../include/ztex-isr.h:46: TOGCTL = 0 | bmBIT5;
- 2304 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 2305 ; ../../../include/ztex-isr.h:48: TOGCTL = 0x10 | bmBIT5;
- 0651 90 E6 83 2306 mov dptr,#_TOGCTL
- 0654 E4 2307 clr a
- 0655 F0 2308 movx @dptr,a
- 0656 74 20 2309 mov a,#0x20
- 0658 F0 2310 movx @dptr,a
- 0659 74 10 2311 mov a,#0x10
- 065B F0 2312 movx @dptr,a
- 065C 74 30 2313 mov a,#0x30
- 065E F0 2314 movx @dptr,a
- 2315 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 2316 ; ../../../include/ztex-isr.h:51: TOGCTL = 1 | bmBIT5;
- 2317 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 2318 ; ../../../include/ztex-isr.h:55: TOGCTL = 0x11 | bmBIT5;
- 065F 90 E6 83 2319 mov dptr,#_TOGCTL
- 0662 74 01 2320 mov a,#0x01
- 0664 F0 2321 movx @dptr,a
- 0665 74 21 2322 mov a,#0x21
- 0667 F0 2323 movx @dptr,a
- 0668 74 11 2324 mov a,#0x11
- 066A F0 2325 movx @dptr,a
- 066B 74 31 2326 mov a,#0x31
- 066D F0 2327 movx @dptr,a
- 066E 22 2328 ret
- 2329 ;------------------------------------------------------------
- 2330 ;Allocation info for local variables in function 'sendStringDescriptor'
- 2331 ;------------------------------------------------------------
- 2332 ;hiAddr Allocated with name '_sendStringDescriptor_PARM_2'
- 2333 ;size Allocated with name '_sendStringDescriptor_PARM_3'
- 2334 ;loAddr Allocated to registers r2
- 2335 ;i Allocated to registers r2
- 2336 ;------------------------------------------------------------
- 2337 ; ../../../include/ztex-isr.h:68: static void sendStringDescriptor (BYTE loAddr, BYTE hiAddr, BYTE size)
- 2338 ; -----------------------------------------
- 2339 ; function sendStringDescriptor
- 2340 ; -----------------------------------------
- 066F 2341 _sendStringDescriptor:
- 066F AA 82 2342 mov r2,dpl
- 2343 ; ../../../include/ztex-isr.h:71: if ( size > 31)
- 0671 E5 10 2344 mov a,_sendStringDescriptor_PARM_3
- 0673 24 E0 2345 add a,#0xff - 0x1F
- 0675 50 03 2346 jnc 00102$
- 2347 ; ../../../include/ztex-isr.h:72: size = 31;
- 0677 75 10 1F 2348 mov _sendStringDescriptor_PARM_3,#0x1F
- 067A 2349 00102$:
- 2350 ; ../../../include/ztex-isr.h:73: AUTOPTRSETUP = 7;
- 067A 75 AF 07 2351 mov _AUTOPTRSETUP,#0x07
- 2352 ; ../../../include/ztex-isr.h:74: AUTOPTRL1 = loAddr;
- 067D 8A 9B 2353 mov _AUTOPTRL1,r2
- 2354 ; ../../../include/ztex-isr.h:75: AUTOPTRH1 = hiAddr;
- 067F 85 0F 9A 2355 mov _AUTOPTRH1,_sendStringDescriptor_PARM_2
- 2356 ; ../../../include/ztex-isr.h:76: AUTOPTRL2 = (BYTE)(((unsigned short)(&EP0BUF))+1);
- 0682 75 9E 41 2357 mov _AUTOPTRL2,#0x41
- 2358 ; ../../../include/ztex-isr.h:77: AUTOPTRH2 = (BYTE)((((unsigned short)(&EP0BUF))+1) >> 8);
- 0685 75 9D E7 2359 mov _AUTOPTRH2,#0xE7
- 2360 ; ../../../include/ztex-isr.h:78: XAUTODAT2 = 3;
- 0688 90 E6 7C 2361 mov dptr,#_XAUTODAT2
- 068B 74 03 2362 mov a,#0x03
- 068D F0 2363 movx @dptr,a
- 2364 ; ../../../include/ztex-isr.h:79: for (i=0; i 64 ) ? 64 : ep0_payload_remaining;
- 06C2 90 32 70 2416 mov dptr,#_ep0_payload_remaining
- 06C5 E0 2417 movx a,@dptr
- 06C6 FA 2418 mov r2,a
- 06C7 A3 2419 inc dptr
- 06C8 E0 2420 movx a,@dptr
- 06C9 FB 2421 mov r3,a
- 06CA C3 2422 clr c
- 06CB 74 40 2423 mov a,#0x40
- 06CD 9A 2424 subb a,r2
- 06CE E4 2425 clr a
- 06CF 9B 2426 subb a,r3
- 06D0 50 06 2427 jnc 00103$
- 06D2 7C 40 2428 mov r4,#0x40
- 06D4 7D 00 2429 mov r5,#0x00
- 06D6 80 04 2430 sjmp 00104$
- 06D8 2431 00103$:
- 06D8 8A 04 2432 mov ar4,r2
- 06DA 8B 05 2433 mov ar5,r3
- 06DC 2434 00104$:
- 06DC 90 32 72 2435 mov dptr,#_ep0_payload_transfer
- 06DF EC 2436 mov a,r4
- 06E0 F0 2437 movx @dptr,a
- 2438 ; ../../../include/ztex-isr.h:95: ep0_payload_remaining -= ep0_payload_transfer;
- 06E1 7D 00 2439 mov r5,#0x00
- 06E3 90 32 70 2440 mov dptr,#_ep0_payload_remaining
- 06E6 EA 2441 mov a,r2
- 06E7 C3 2442 clr c
- 06E8 9C 2443 subb a,r4
- 06E9 F0 2444 movx @dptr,a
- 06EA EB 2445 mov a,r3
- 06EB 9D 2446 subb a,r5
- 06EC A3 2447 inc dptr
- 06ED F0 2448 movx @dptr,a
- 06EE 22 2449 ret
- 2450 ;------------------------------------------------------------
- 2451 ;Allocation info for local variables in function 'ep0_vendor_cmd_su'
- 2452 ;------------------------------------------------------------
- 2453 ;------------------------------------------------------------
- 2454 ; ../../../include/ztex-isr.h:102: static void ep0_vendor_cmd_su() {
- 2455 ; -----------------------------------------
- 2456 ; function ep0_vendor_cmd_su
- 2457 ; -----------------------------------------
- 06EF 2458 _ep0_vendor_cmd_su:
- 2459 ; ../../../include/ztex-isr.h:103: switch ( ep0_prev_setup_request ) {
- 06EF 90 32 73 2460 mov dptr,#_ep0_prev_setup_request
- 06F2 E0 2461 movx a,@dptr
- 06F3 FA 2462 mov r2,a
- 06F4 BA 39 24 2463 cjne r2,#0x39,00102$
- 2464 ; ../../../include/ztex-eeprom.h:233: eeprom_write_checksum = 0;
- 06F7 90 32 04 2465 mov dptr,#_eeprom_write_checksum
- 2466 ; ../../../include/ztex-eeprom.h:234: eeprom_write_bytes = 0;
- 06FA E4 2467 clr a
- 06FB F0 2468 movx @dptr,a
- 06FC 90 32 02 2469 mov dptr,#_eeprom_write_bytes
- 06FF F0 2470 movx @dptr,a
- 0700 A3 2471 inc dptr
- 0701 F0 2472 movx @dptr,a
- 2473 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0702 90 E6 BB 2474 mov dptr,#(_SETUPDAT + 0x0003)
- 0705 E0 2475 movx a,@dptr
- 0706 FB 2476 mov r3,a
- 0707 7A 00 2477 mov r2,#0x00
- 0709 90 E6 BA 2478 mov dptr,#(_SETUPDAT + 0x0002)
- 070C E0 2479 movx a,@dptr
- 070D FC 2480 mov r4,a
- 070E 7D 00 2481 mov r5,#0x00
- 0710 90 32 00 2482 mov dptr,#_eeprom_addr
- 0713 EC 2483 mov a,r4
- 0714 4A 2484 orl a,r2
- 0715 F0 2485 movx @dptr,a
- 0716 ED 2486 mov a,r5
- 0717 4B 2487 orl a,r3
- 0718 A3 2488 inc dptr
- 0719 F0 2489 movx @dptr,a
- 2490 ; ../../../include/ztex-conf.h:115: break;
- 2491 ; ../../../include/ztex-isr.h:105: default:
- 071A 22 2492 ret
- 071B 2493 00102$:
- 2494 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 071B 90 E6 A0 2495 mov dptr,#_EP0CS
- 071E E0 2496 movx a,@dptr
- 071F 44 01 2497 orl a,#0x01
- 0721 F0 2498 movx @dptr,a
- 2499 ; ../../../include/ztex-isr.h:107: }
- 0722 22 2500 ret
- 2501 ;------------------------------------------------------------
- 2502 ;Allocation info for local variables in function 'SUDAV_ISR'
- 2503 ;------------------------------------------------------------
- 2504 ;a Allocated to registers r2
- 2505 ;------------------------------------------------------------
- 2506 ; ../../../include/ztex-isr.h:113: static void SUDAV_ISR () interrupt
- 2507 ; -----------------------------------------
- 2508 ; function SUDAV_ISR
- 2509 ; -----------------------------------------
- 0723 2510 _SUDAV_ISR:
- 0723 C0 20 2511 push bits
- 0725 C0 E0 2512 push acc
- 0727 C0 F0 2513 push b
- 0729 C0 82 2514 push dpl
- 072B C0 83 2515 push dph
- 072D C0 02 2516 push (0+2)
- 072F C0 03 2517 push (0+3)
- 0731 C0 04 2518 push (0+4)
- 0733 C0 05 2519 push (0+5)
- 0735 C0 06 2520 push (0+6)
- 0737 C0 07 2521 push (0+7)
- 0739 C0 00 2522 push (0+0)
- 073B C0 01 2523 push (0+1)
- 073D C0 D0 2524 push psw
- 073F 75 D0 00 2525 mov psw,#0x00
- 2526 ; ../../../include/ztex-isr.h:116: ep0_prev_setup_request = bRequest;
- 0742 90 E6 B9 2527 mov dptr,#_bRequest
- 0745 E0 2528 movx a,@dptr
- 0746 FA 2529 mov r2,a
- 0747 90 32 73 2530 mov dptr,#_ep0_prev_setup_request
- 074A F0 2531 movx @dptr,a
- 2532 ; ../../../include/ztex-isr.h:117: SUDPTRCTL = 1;
- 074B 90 E6 B5 2533 mov dptr,#_SUDPTRCTL
- 074E 74 01 2534 mov a,#0x01
- 0750 F0 2535 movx @dptr,a
- 2536 ; ../../../include/ztex-isr.h:120: switch ( bRequest ) {
- 0751 90 E6 B9 2537 mov dptr,#_bRequest
- 0754 E0 2538 movx a,@dptr
- 0755 FA 2539 mov r2,a
- 0756 24 F3 2540 add a,#0xff - 0x0C
- 0758 50 03 2541 jnc 00214$
- 075A 02 0A D9 2542 ljmp 00160$
- 075D 2543 00214$:
- 075D EA 2544 mov a,r2
- 075E 2A 2545 add a,r2
- 075F 2A 2546 add a,r2
- 0760 90 07 64 2547 mov dptr,#00215$
- 0763 73 2548 jmp @a+dptr
- 0764 2549 00215$:
- 0764 02 07 8B 2550 ljmp 00101$
- 0767 02 08 3F 2551 ljmp 00112$
- 076A 02 0A D9 2552 ljmp 00160$
- 076D 02 08 BC 2553 ljmp 00122$
- 0770 02 0A D9 2554 ljmp 00160$
- 0773 02 0A D9 2555 ljmp 00160$
- 0776 02 09 54 2556 ljmp 00132$
- 0779 02 0A 6F 2557 ljmp 00152$
- 077C 02 0A 71 2558 ljmp 00153$
- 077F 02 0A 82 2559 ljmp 00154$
- 0782 02 0A 87 2560 ljmp 00155$
- 0785 02 0A 98 2561 ljmp 00156$
- 0788 02 0A 9D 2562 ljmp 00157$
- 2563 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 078B 2564 00101$:
- 2565 ; ../../../include/ztex-isr.h:122: switch(SETUPDAT[0]) {
- 078B 90 E6 B8 2566 mov dptr,#_SETUPDAT
- 078E E0 2567 movx a,@dptr
- 078F FA 2568 mov r2,a
- 0790 BA 80 02 2569 cjne r2,#0x80,00216$
- 0793 80 0D 2570 sjmp 00102$
- 0795 2571 00216$:
- 0795 BA 81 02 2572 cjne r2,#0x81,00217$
- 0798 80 1E 2573 sjmp 00103$
- 079A 2574 00217$:
- 079A BA 82 02 2575 cjne r2,#0x82,00218$
- 079D 80 2F 2576 sjmp 00104$
- 079F 2577 00218$:
- 079F 02 0A D9 2578 ljmp 00160$
- 2579 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 07A2 2580 00102$:
- 07A2 90 E7 40 2581 mov dptr,#_EP0BUF
- 2582 ; ../../../include/ztex-isr.h:125: EP0BUF[1] = 0;
- 2583 ; ../../../include/ztex-isr.h:126: EP0BCH = 0;
- 07A5 E4 2584 clr a
- 07A6 F0 2585 movx @dptr,a
- 07A7 90 E7 41 2586 mov dptr,#(_EP0BUF + 0x0001)
- 07AA F0 2587 movx @dptr,a
- 07AB 90 E6 8A 2588 mov dptr,#_EP0BCH
- 07AE F0 2589 movx @dptr,a
- 2590 ; ../../../include/ztex-isr.h:127: EP0BCL = 2;
- 07AF 90 E6 8B 2591 mov dptr,#_EP0BCL
- 07B2 74 02 2592 mov a,#0x02
- 07B4 F0 2593 movx @dptr,a
- 2594 ; ../../../include/ztex-isr.h:128: break;
- 07B5 02 0A D9 2595 ljmp 00160$
- 2596 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 07B8 2597 00103$:
- 07B8 90 E7 40 2598 mov dptr,#_EP0BUF
- 2599 ; ../../../include/ztex-isr.h:131: EP0BUF[1] = 0;
- 2600 ; ../../../include/ztex-isr.h:132: EP0BCH = 0;
- 07BB E4 2601 clr a
- 07BC F0 2602 movx @dptr,a
- 07BD 90 E7 41 2603 mov dptr,#(_EP0BUF + 0x0001)
- 07C0 F0 2604 movx @dptr,a
- 07C1 90 E6 8A 2605 mov dptr,#_EP0BCH
- 07C4 F0 2606 movx @dptr,a
- 2607 ; ../../../include/ztex-isr.h:133: EP0BCL = 2;
- 07C5 90 E6 8B 2608 mov dptr,#_EP0BCL
- 07C8 74 02 2609 mov a,#0x02
- 07CA F0 2610 movx @dptr,a
- 2611 ; ../../../include/ztex-isr.h:134: break;
- 07CB 02 0A D9 2612 ljmp 00160$
- 2613 ; ../../../include/ztex-isr.h:135: case 0x82:
- 07CE 2614 00104$:
- 2615 ; ../../../include/ztex-isr.h:136: switch ( SETUPDAT[4] ) {
- 07CE 90 E6 BC 2616 mov dptr,#(_SETUPDAT + 0x0004)
- 07D1 E0 2617 movx a,@dptr
- 07D2 FA 2618 mov r2,a
- 07D3 60 0F 2619 jz 00106$
- 07D5 BA 01 02 2620 cjne r2,#0x01,00220$
- 07D8 80 19 2621 sjmp 00107$
- 07DA 2622 00220$:
- 07DA BA 80 02 2623 cjne r2,#0x80,00221$
- 07DD 80 05 2624 sjmp 00106$
- 07DF 2625 00221$:
- 2626 ; ../../../include/ztex-isr.h:138: case 0x80 :
- 07DF BA 81 2F 2627 cjne r2,#0x81,00109$
- 07E2 80 1E 2628 sjmp 00108$
- 07E4 2629 00106$:
- 2630 ; ../../../include/ztex-isr.h:139: EP0BUF[0] = EP0CS & bmBIT0;
- 07E4 90 E6 A0 2631 mov dptr,#_EP0CS
- 07E7 E0 2632 movx a,@dptr
- 07E8 FA 2633 mov r2,a
- 07E9 53 02 01 2634 anl ar2,#0x01
- 07EC 90 E7 40 2635 mov dptr,#_EP0BUF
- 07EF EA 2636 mov a,r2
- 07F0 F0 2637 movx @dptr,a
- 2638 ; ../../../include/ztex-isr.h:140: break;
- 2639 ; ../../../include/ztex-isr.h:141: case 0x01 :
- 07F1 80 3A 2640 sjmp 00110$
- 07F3 2641 00107$:
- 2642 ; ../../../include/ztex-isr.h:142: EP0BUF[0] = EP1OUTCS & bmBIT0;
- 07F3 90 E6 A1 2643 mov dptr,#_EP1OUTCS
- 07F6 E0 2644 movx a,@dptr
- 07F7 FA 2645 mov r2,a
- 07F8 53 02 01 2646 anl ar2,#0x01
- 07FB 90 E7 40 2647 mov dptr,#_EP0BUF
- 07FE EA 2648 mov a,r2
- 07FF F0 2649 movx @dptr,a
- 2650 ; ../../../include/ztex-isr.h:143: break;
- 2651 ; ../../../include/ztex-isr.h:144: case 0x81 :
- 0800 80 2B 2652 sjmp 00110$
- 0802 2653 00108$:
- 2654 ; ../../../include/ztex-isr.h:145: EP0BUF[0] = EP1INCS & bmBIT0;
- 0802 90 E6 A2 2655 mov dptr,#_EP1INCS
- 0805 E0 2656 movx a,@dptr
- 0806 FA 2657 mov r2,a
- 0807 53 02 01 2658 anl ar2,#0x01
- 080A 90 E7 40 2659 mov dptr,#_EP0BUF
- 080D EA 2660 mov a,r2
- 080E F0 2661 movx @dptr,a
- 2662 ; ../../../include/ztex-isr.h:146: break;
- 2663 ; ../../../include/ztex-isr.h:147: default:
- 080F 80 1C 2664 sjmp 00110$
- 0811 2665 00109$:
- 2666 ; ../../../include/ztex-isr.h:148: EP0BUF[0] = EPXCS[ ((SETUPDAT[4] >> 1)-1) & 3 ] & bmBIT0;
- 0811 90 E6 BC 2667 mov dptr,#(_SETUPDAT + 0x0004)
- 0814 E0 2668 movx a,@dptr
- 0815 C3 2669 clr c
- 0816 13 2670 rrc a
- 0817 14 2671 dec a
- 0818 54 03 2672 anl a,#0x03
- 081A 24 A3 2673 add a,#_EPXCS
- 081C F5 82 2674 mov dpl,a
- 081E E4 2675 clr a
- 081F 34 E6 2676 addc a,#(_EPXCS >> 8)
- 0821 F5 83 2677 mov dph,a
- 0823 E0 2678 movx a,@dptr
- 0824 FA 2679 mov r2,a
- 0825 53 02 01 2680 anl ar2,#0x01
- 0828 90 E7 40 2681 mov dptr,#_EP0BUF
- 082B EA 2682 mov a,r2
- 082C F0 2683 movx @dptr,a
- 2684 ; ../../../include/ztex-isr.h:150: }
- 082D 2685 00110$:
- 2686 ; ../../../include/ztex-isr.h:151: EP0BUF[1] = 0;
- 082D 90 E7 41 2687 mov dptr,#(_EP0BUF + 0x0001)
- 2688 ; ../../../include/ztex-isr.h:152: EP0BCH = 0;
- 0830 E4 2689 clr a
- 0831 F0 2690 movx @dptr,a
- 0832 90 E6 8A 2691 mov dptr,#_EP0BCH
- 0835 F0 2692 movx @dptr,a
- 2693 ; ../../../include/ztex-isr.h:153: EP0BCL = 2;
- 0836 90 E6 8B 2694 mov dptr,#_EP0BCL
- 0839 74 02 2695 mov a,#0x02
- 083B F0 2696 movx @dptr,a
- 2697 ; ../../../include/ztex-isr.h:156: break;
- 083C 02 0A D9 2698 ljmp 00160$
- 2699 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 083F 2700 00112$:
- 2701 ; ../../../include/ztex-isr.h:158: if ( SETUPDAT[0] == 2 && SETUPDAT[2] == 0 ) {
- 083F 90 E6 B8 2702 mov dptr,#_SETUPDAT
- 0842 E0 2703 movx a,@dptr
- 0843 FA 2704 mov r2,a
- 0844 BA 02 02 2705 cjne r2,#0x02,00223$
- 0847 80 03 2706 sjmp 00224$
- 0849 2707 00223$:
- 0849 02 0A D9 2708 ljmp 00160$
- 084C 2709 00224$:
- 084C 90 E6 BA 2710 mov dptr,#(_SETUPDAT + 0x0002)
- 084F E0 2711 movx a,@dptr
- 0850 60 03 2712 jz 00225$
- 0852 02 0A D9 2713 ljmp 00160$
- 0855 2714 00225$:
- 2715 ; ../../../include/ztex-isr.h:159: switch ( SETUPDAT[4] ) {
- 0855 90 E6 BC 2716 mov dptr,#(_SETUPDAT + 0x0004)
- 0858 E0 2717 movx a,@dptr
- 0859 FA 2718 mov r2,a
- 085A 60 0F 2719 jz 00114$
- 085C BA 01 02 2720 cjne r2,#0x01,00227$
- 085F 80 15 2721 sjmp 00115$
- 0861 2722 00227$:
- 0861 BA 80 02 2723 cjne r2,#0x80,00228$
- 0864 80 05 2724 sjmp 00114$
- 0866 2725 00228$:
- 2726 ; ../../../include/ztex-isr.h:161: case 0x80 :
- 0866 BA 81 23 2727 cjne r2,#0x81,00117$
- 0869 80 16 2728 sjmp 00116$
- 086B 2729 00114$:
- 2730 ; ../../../include/ztex-isr.h:162: EP0CS &= ~bmBIT0;
- 086B 90 E6 A0 2731 mov dptr,#_EP0CS
- 086E E0 2732 movx a,@dptr
- 086F FA 2733 mov r2,a
- 0870 54 FE 2734 anl a,#0xFE
- 0872 F0 2735 movx @dptr,a
- 2736 ; ../../../include/ztex-isr.h:163: break;
- 0873 02 0A D9 2737 ljmp 00160$
- 2738 ; ../../../include/ztex-isr.h:164: case 0x01 :
- 0876 2739 00115$:
- 2740 ; ../../../include/ztex-isr.h:165: EP1OUTCS &= ~bmBIT0;
- 0876 90 E6 A1 2741 mov dptr,#_EP1OUTCS
- 0879 E0 2742 movx a,@dptr
- 087A FA 2743 mov r2,a
- 087B 54 FE 2744 anl a,#0xFE
- 087D F0 2745 movx @dptr,a
- 2746 ; ../../../include/ztex-isr.h:166: break;
- 087E 02 0A D9 2747 ljmp 00160$
- 2748 ; ../../../include/ztex-isr.h:167: case 0x81 :
- 0881 2749 00116$:
- 2750 ; ../../../include/ztex-isr.h:168: EP1INCS &= ~bmBIT0;
- 0881 90 E6 A2 2751 mov dptr,#_EP1INCS
- 0884 E0 2752 movx a,@dptr
- 0885 FA 2753 mov r2,a
- 0886 54 FE 2754 anl a,#0xFE
- 0888 F0 2755 movx @dptr,a
- 2756 ; ../../../include/ztex-isr.h:169: break;
- 0889 02 0A D9 2757 ljmp 00160$
- 2758 ; ../../../include/ztex-isr.h:170: default:
- 088C 2759 00117$:
- 2760 ; ../../../include/ztex-isr.h:171: EPXCS[ ((SETUPDAT[4] >> 1)-1) & 3 ] &= ~bmBIT0;
- 088C 90 E6 BC 2761 mov dptr,#(_SETUPDAT + 0x0004)
- 088F E0 2762 movx a,@dptr
- 0890 C3 2763 clr c
- 0891 13 2764 rrc a
- 0892 14 2765 dec a
- 0893 54 03 2766 anl a,#0x03
- 0895 24 A3 2767 add a,#_EPXCS
- 0897 FA 2768 mov r2,a
- 0898 E4 2769 clr a
- 0899 34 E6 2770 addc a,#(_EPXCS >> 8)
- 089B FB 2771 mov r3,a
- 089C 90 E6 BC 2772 mov dptr,#(_SETUPDAT + 0x0004)
- 089F E0 2773 movx a,@dptr
- 08A0 C3 2774 clr c
- 08A1 13 2775 rrc a
- 08A2 14 2776 dec a
- 08A3 54 03 2777 anl a,#0x03
- 08A5 24 A3 2778 add a,#_EPXCS
- 08A7 F5 82 2779 mov dpl,a
- 08A9 E4 2780 clr a
- 08AA 34 E6 2781 addc a,#(_EPXCS >> 8)
- 08AC F5 83 2782 mov dph,a
- 08AE E0 2783 movx a,@dptr
- 08AF FC 2784 mov r4,a
- 08B0 53 04 FE 2785 anl ar4,#0xFE
- 08B3 8A 82 2786 mov dpl,r2
- 08B5 8B 83 2787 mov dph,r3
- 08B7 EC 2788 mov a,r4
- 08B8 F0 2789 movx @dptr,a
- 2790 ; ../../../include/ztex-isr.h:175: break;
- 08B9 02 0A D9 2791 ljmp 00160$
- 2792 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 08BC 2793 00122$:
- 2794 ; ../../../include/ztex-isr.h:177: if ( SETUPDAT[0] == 2 && SETUPDAT[2] == 0 ) {
- 08BC 90 E6 B8 2795 mov dptr,#_SETUPDAT
- 08BF E0 2796 movx a,@dptr
- 08C0 FA 2797 mov r2,a
- 08C1 BA 02 02 2798 cjne r2,#0x02,00230$
- 08C4 80 03 2799 sjmp 00231$
- 08C6 2800 00230$:
- 08C6 02 0A D9 2801 ljmp 00160$
- 08C9 2802 00231$:
- 08C9 90 E6 BA 2803 mov dptr,#(_SETUPDAT + 0x0002)
- 08CC E0 2804 movx a,@dptr
- 08CD 60 03 2805 jz 00232$
- 08CF 02 0A D9 2806 ljmp 00160$
- 08D2 2807 00232$:
- 2808 ; ../../../include/ztex-isr.h:178: switch ( SETUPDAT[4] ) {
- 08D2 90 E6 BC 2809 mov dptr,#(_SETUPDAT + 0x0004)
- 08D5 E0 2810 movx a,@dptr
- 08D6 FA 2811 mov r2,a
- 08D7 60 0F 2812 jz 00124$
- 08D9 BA 01 02 2813 cjne r2,#0x01,00234$
- 08DC 80 14 2814 sjmp 00125$
- 08DE 2815 00234$:
- 08DE BA 80 02 2816 cjne r2,#0x80,00235$
- 08E1 80 05 2817 sjmp 00124$
- 08E3 2818 00235$:
- 2819 ; ../../../include/ztex-isr.h:180: case 0x80 :
- 08E3 BA 81 20 2820 cjne r2,#0x81,00127$
- 08E6 80 14 2821 sjmp 00126$
- 08E8 2822 00124$:
- 2823 ; ../../../include/ztex-isr.h:181: EP0CS |= bmBIT0;
- 08E8 90 E6 A0 2824 mov dptr,#_EP0CS
- 08EB E0 2825 movx a,@dptr
- 08EC FA 2826 mov r2,a
- 08ED 44 01 2827 orl a,#0x01
- 08EF F0 2828 movx @dptr,a
- 2829 ; ../../../include/ztex-isr.h:182: break;
- 2830 ; ../../../include/ztex-isr.h:183: case 0x01 :
- 08F0 80 41 2831 sjmp 00128$
- 08F2 2832 00125$:
- 2833 ; ../../../include/ztex-isr.h:184: EP1OUTCS |= bmBIT0;
- 08F2 90 E6 A1 2834 mov dptr,#_EP1OUTCS
- 08F5 E0 2835 movx a,@dptr
- 08F6 FA 2836 mov r2,a
- 08F7 44 01 2837 orl a,#0x01
- 08F9 F0 2838 movx @dptr,a
- 2839 ; ../../../include/ztex-isr.h:185: break;
- 2840 ; ../../../include/ztex-isr.h:186: case 0x81 :
- 08FA 80 37 2841 sjmp 00128$
- 08FC 2842 00126$:
- 2843 ; ../../../include/ztex-isr.h:187: EP1INCS |= bmBIT0;
- 08FC 90 E6 A2 2844 mov dptr,#_EP1INCS
- 08FF E0 2845 movx a,@dptr
- 0900 FA 2846 mov r2,a
- 0901 44 01 2847 orl a,#0x01
- 0903 F0 2848 movx @dptr,a
- 2849 ; ../../../include/ztex-isr.h:188: break;
- 2850 ; ../../../include/ztex-isr.h:189: default:
- 0904 80 2D 2851 sjmp 00128$
- 0906 2852 00127$:
- 2853 ; ../../../include/ztex-isr.h:190: EPXCS[ ((SETUPDAT[4] >> 1)-1) & 3 ] |= ~bmBIT0;
- 0906 90 E6 BC 2854 mov dptr,#(_SETUPDAT + 0x0004)
- 0909 E0 2855 movx a,@dptr
- 090A C3 2856 clr c
- 090B 13 2857 rrc a
- 090C 14 2858 dec a
- 090D 54 03 2859 anl a,#0x03
- 090F 24 A3 2860 add a,#_EPXCS
- 0911 FA 2861 mov r2,a
- 0912 E4 2862 clr a
- 0913 34 E6 2863 addc a,#(_EPXCS >> 8)
- 0915 FB 2864 mov r3,a
- 0916 90 E6 BC 2865 mov dptr,#(_SETUPDAT + 0x0004)
- 0919 E0 2866 movx a,@dptr
- 091A C3 2867 clr c
- 091B 13 2868 rrc a
- 091C 14 2869 dec a
- 091D 54 03 2870 anl a,#0x03
- 091F 24 A3 2871 add a,#_EPXCS
- 0921 F5 82 2872 mov dpl,a
- 0923 E4 2873 clr a
- 0924 34 E6 2874 addc a,#(_EPXCS >> 8)
- 0926 F5 83 2875 mov dph,a
- 0928 E0 2876 movx a,@dptr
- 0929 FC 2877 mov r4,a
- 092A 43 04 FE 2878 orl ar4,#0xFE
- 092D 8A 82 2879 mov dpl,r2
- 092F 8B 83 2880 mov dph,r3
- 0931 EC 2881 mov a,r4
- 0932 F0 2882 movx @dptr,a
- 2883 ; ../../../include/ztex-isr.h:192: }
- 0933 2884 00128$:
- 2885 ; ../../../include/ztex-isr.h:193: a = ( (SETUPDAT[4] & 0x80) >> 3 ) | (SETUPDAT[4] & 0x0f);
- 0933 90 E6 BC 2886 mov dptr,#(_SETUPDAT + 0x0004)
- 0936 E0 2887 movx a,@dptr
- 0937 54 80 2888 anl a,#0x80
- 0939 C4 2889 swap a
- 093A 23 2890 rl a
- 093B 54 1F 2891 anl a,#0x1f
- 093D FA 2892 mov r2,a
- 093E 90 E6 BC 2893 mov dptr,#(_SETUPDAT + 0x0004)
- 0941 E0 2894 movx a,@dptr
- 0942 FB 2895 mov r3,a
- 0943 74 0F 2896 mov a,#0x0F
- 0945 5B 2897 anl a,r3
- 0946 42 02 2898 orl ar2,a
- 2899 ; ../../../include/ztex-isr.h:194: TOGCTL = a;
- 2900 ; ../../../include/ztex-isr.h:195: TOGCTL = a | bmBIT5;
- 0948 90 E6 83 2901 mov dptr,#_TOGCTL
- 094B EA 2902 mov a,r2
- 094C F0 2903 movx @dptr,a
- 094D 74 20 2904 mov a,#0x20
- 094F 4A 2905 orl a,r2
- 0950 F0 2906 movx @dptr,a
- 2907 ; ../../../include/ztex-isr.h:197: break;
- 0951 02 0A D9 2908 ljmp 00160$
- 2909 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0954 2910 00132$:
- 2911 ; ../../../include/ztex-isr.h:199: switch(SETUPDAT[3]) {
- 0954 90 E6 BB 2912 mov dptr,#(_SETUPDAT + 0x0003)
- 0957 E0 2913 movx a,@dptr
- 0958 FA 2914 mov r2,a
- 0959 BA 01 02 2915 cjne r2,#0x01,00237$
- 095C 80 19 2916 sjmp 00133$
- 095E 2917 00237$:
- 095E BA 02 02 2918 cjne r2,#0x02,00238$
- 0961 80 26 2919 sjmp 00134$
- 0963 2920 00238$:
- 0963 BA 03 02 2921 cjne r2,#0x03,00239$
- 0966 80 4D 2922 sjmp 00138$
- 0968 2923 00239$:
- 0968 BA 06 03 2924 cjne r2,#0x06,00240$
- 096B 02 0A 28 2925 ljmp 00145$
- 096E 2926 00240$:
- 096E BA 07 03 2927 cjne r2,#0x07,00241$
- 0971 02 0A 3A 2928 ljmp 00146$
- 0974 2929 00241$:
- 0974 02 0A 65 2930 ljmp 00150$
- 2931 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0977 2932 00133$:
- 2933 ; ../../../include/ztex-isr.h:201: SUDPTRH = MSB(&DeviceDescriptor);
- 0977 7A B4 2934 mov r2,#_DeviceDescriptor
- 0979 7B 10 2935 mov r3,#(_DeviceDescriptor >> 8)
- 097B 90 E6 B3 2936 mov dptr,#_SUDPTRH
- 097E EB 2937 mov a,r3
- 097F F0 2938 movx @dptr,a
- 2939 ; ../../../include/ztex-isr.h:202: SUDPTRL = LSB(&DeviceDescriptor);
- 0980 90 E6 B4 2940 mov dptr,#_SUDPTRL
- 0983 74 B4 2941 mov a,#_DeviceDescriptor
- 0985 F0 2942 movx @dptr,a
- 2943 ; ../../../include/ztex-isr.h:203: break;
- 0986 02 0A D9 2944 ljmp 00160$
- 2945 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0989 2946 00134$:
- 2947 ; ../../../include/ztex-isr.h:205: if (USBCS & bmBIT7) {
- 0989 90 E6 80 2948 mov dptr,#_USBCS
- 098C E0 2949 movx a,@dptr
- 098D FA 2950 mov r2,a
- 098E 30 E7 12 2951 jnb acc.7,00136$
- 2952 ; ../../../include/ztex-isr.h:206: SUDPTRH = MSB(&HighSpeedConfigDescriptor);
- 0991 7A D0 2953 mov r2,#_HighSpeedConfigDescriptor
- 0993 7B 10 2954 mov r3,#(_HighSpeedConfigDescriptor >> 8)
- 0995 90 E6 B3 2955 mov dptr,#_SUDPTRH
- 0998 EB 2956 mov a,r3
- 0999 F0 2957 movx @dptr,a
- 2958 ; ../../../include/ztex-isr.h:207: SUDPTRL = LSB(&HighSpeedConfigDescriptor);
- 099A 90 E6 B4 2959 mov dptr,#_SUDPTRL
- 099D 74 D0 2960 mov a,#_HighSpeedConfigDescriptor
- 099F F0 2961 movx @dptr,a
- 09A0 02 0A D9 2962 ljmp 00160$
- 09A3 2963 00136$:
- 2964 ; ../../../include/ztex-isr.h:210: SUDPTRH = MSB(&FullSpeedConfigDescriptor);
- 09A3 7A F2 2965 mov r2,#_FullSpeedConfigDescriptor
- 09A5 7B 10 2966 mov r3,#(_FullSpeedConfigDescriptor >> 8)
- 09A7 90 E6 B3 2967 mov dptr,#_SUDPTRH
- 09AA EB 2968 mov a,r3
- 09AB F0 2969 movx @dptr,a
- 2970 ; ../../../include/ztex-isr.h:211: SUDPTRL = LSB(&FullSpeedConfigDescriptor);
- 09AC 90 E6 B4 2971 mov dptr,#_SUDPTRL
- 09AF 74 F2 2972 mov a,#_FullSpeedConfigDescriptor
- 09B1 F0 2973 movx @dptr,a
- 2974 ; ../../../include/ztex-isr.h:213: break;
- 09B2 02 0A D9 2975 ljmp 00160$
- 2976 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 09B5 2977 00138$:
- 2978 ; ../../../include/ztex-isr.h:215: switch (SETUPDAT[2]) {
- 09B5 90 E6 BA 2979 mov dptr,#(_SETUPDAT + 0x0002)
- 09B8 E0 2980 movx a,@dptr
- 09B9 FA 2981 mov r2,a
- 09BA BA 01 02 2982 cjne r2,#0x01,00243$
- 09BD 80 0F 2983 sjmp 00139$
- 09BF 2984 00243$:
- 09BF BA 02 02 2985 cjne r2,#0x02,00244$
- 09C2 80 1C 2986 sjmp 00140$
- 09C4 2987 00244$:
- 09C4 BA 03 02 2988 cjne r2,#0x03,00245$
- 09C7 80 29 2989 sjmp 00141$
- 09C9 2990 00245$:
- 2991 ; ../../../include/ztex-isr.h:216: case 1:
- 09C9 BA 04 4A 2992 cjne r2,#0x04,00143$
- 09CC 80 36 2993 sjmp 00142$
- 09CE 2994 00139$:
- 2995 ; ../../../include/ztex-isr.h:217: SEND_STRING_DESCRIPTOR(manufacturerString);
- 09CE 75 82 8B 2996 mov dpl,#_manufacturerString
- 09D1 7A 8B 2997 mov r2,#_manufacturerString
- 09D3 7B 10 2998 mov r3,#(_manufacturerString >> 8)
- 09D5 8B 0F 2999 mov _sendStringDescriptor_PARM_2,r3
- 09D7 75 10 05 3000 mov _sendStringDescriptor_PARM_3,#0x05
- 09DA 12 06 6F 3001 lcall _sendStringDescriptor
- 3002 ; ../../../include/ztex-isr.h:218: break;
- 09DD 02 0A D9 3003 ljmp 00160$
- 3004 ; ../../../include/ztex-isr.h:219: case 2:
- 09E0 3005 00140$:
- 3006 ; ../../../include/ztex-isr.h:220: SEND_STRING_DESCRIPTOR(productString);
- 09E0 75 82 90 3007 mov dpl,#_productString
- 09E3 7A 90 3008 mov r2,#_productString
- 09E5 7B 10 3009 mov r3,#(_productString >> 8)
- 09E7 8B 0F 3010 mov _sendStringDescriptor_PARM_2,r3
- 09E9 75 10 19 3011 mov _sendStringDescriptor_PARM_3,#0x19
- 09EC 12 06 6F 3012 lcall _sendStringDescriptor
- 3013 ; ../../../include/ztex-isr.h:221: break;
- 09EF 02 0A D9 3014 ljmp 00160$
- 3015 ; ../../../include/ztex-isr.h:222: case 3:
- 09F2 3016 00141$:
- 3017 ; ../../../include/ztex-isr.h:223: SEND_STRING_DESCRIPTOR(SN_STRING);
- 09F2 75 82 8A 3018 mov dpl,#_SN_STRING
- 09F5 7A 8A 3019 mov r2,#_SN_STRING
- 09F7 7B 00 3020 mov r3,#(_SN_STRING >> 8)
- 09F9 8B 0F 3021 mov _sendStringDescriptor_PARM_2,r3
- 09FB 75 10 0A 3022 mov _sendStringDescriptor_PARM_3,#0x0A
- 09FE 12 06 6F 3023 lcall _sendStringDescriptor
- 3024 ; ../../../include/ztex-isr.h:224: break;
- 0A01 02 0A D9 3025 ljmp 00160$
- 3026 ; ../../../include/ztex-isr.h:225: case 4:
- 0A04 3027 00142$:
- 3028 ; ../../../include/ztex-isr.h:226: SEND_STRING_DESCRIPTOR(configurationString);
- 0A04 75 82 A9 3029 mov dpl,#_configurationString
- 0A07 7A A9 3030 mov r2,#_configurationString
- 0A09 7B 10 3031 mov r3,#(_configurationString >> 8)
- 0A0B 8B 0F 3032 mov _sendStringDescriptor_PARM_2,r3
- 0A0D 75 10 0A 3033 mov _sendStringDescriptor_PARM_3,#0x0A
- 0A10 12 06 6F 3034 lcall _sendStringDescriptor
- 3035 ; ../../../include/ztex-isr.h:227: break;
- 0A13 02 0A D9 3036 ljmp 00160$
- 3037 ; ../../../include/ztex-isr.h:228: default:
- 0A16 3038 00143$:
- 3039 ; ../../../include/ztex-isr.h:229: SUDPTRH = MSB(&EmptyStringDescriptor);
- 0A16 7A 14 3040 mov r2,#_EmptyStringDescriptor
- 0A18 7B 11 3041 mov r3,#(_EmptyStringDescriptor >> 8)
- 0A1A 90 E6 B3 3042 mov dptr,#_SUDPTRH
- 0A1D EB 3043 mov a,r3
- 0A1E F0 3044 movx @dptr,a
- 3045 ; ../../../include/ztex-isr.h:230: SUDPTRL = LSB(&EmptyStringDescriptor);
- 0A1F 90 E6 B4 3046 mov dptr,#_SUDPTRL
- 0A22 74 14 3047 mov a,#_EmptyStringDescriptor
- 0A24 F0 3048 movx @dptr,a
- 3049 ; ../../../include/ztex-isr.h:233: break;
- 0A25 02 0A D9 3050 ljmp 00160$
- 3051 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0A28 3052 00145$:
- 3053 ; ../../../include/ztex-isr.h:235: SUDPTRH = MSB(&DeviceQualifierDescriptor);
- 0A28 7A C6 3054 mov r2,#_DeviceQualifierDescriptor
- 0A2A 7B 10 3055 mov r3,#(_DeviceQualifierDescriptor >> 8)
- 0A2C 90 E6 B3 3056 mov dptr,#_SUDPTRH
- 0A2F EB 3057 mov a,r3
- 0A30 F0 3058 movx @dptr,a
- 3059 ; ../../../include/ztex-isr.h:236: SUDPTRL = LSB(&DeviceQualifierDescriptor);
- 0A31 90 E6 B4 3060 mov dptr,#_SUDPTRL
- 0A34 74 C6 3061 mov a,#_DeviceQualifierDescriptor
- 0A36 F0 3062 movx @dptr,a
- 3063 ; ../../../include/ztex-isr.h:237: break;
- 0A37 02 0A D9 3064 ljmp 00160$
- 3065 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0A3A 3066 00146$:
- 3067 ; ../../../include/ztex-isr.h:239: if (USBCS & bmBIT7) {
- 0A3A 90 E6 80 3068 mov dptr,#_USBCS
- 0A3D E0 3069 movx a,@dptr
- 0A3E FA 3070 mov r2,a
- 0A3F 30 E7 12 3071 jnb acc.7,00148$
- 3072 ; ../../../include/ztex-isr.h:240: SUDPTRH = MSB(&FullSpeedConfigDescriptor);
- 0A42 7A F2 3073 mov r2,#_FullSpeedConfigDescriptor
- 0A44 7B 10 3074 mov r3,#(_FullSpeedConfigDescriptor >> 8)
- 0A46 90 E6 B3 3075 mov dptr,#_SUDPTRH
- 0A49 EB 3076 mov a,r3
- 0A4A F0 3077 movx @dptr,a
- 3078 ; ../../../include/ztex-isr.h:241: SUDPTRL = LSB(&FullSpeedConfigDescriptor);
- 0A4B 90 E6 B4 3079 mov dptr,#_SUDPTRL
- 0A4E 74 F2 3080 mov a,#_FullSpeedConfigDescriptor
- 0A50 F0 3081 movx @dptr,a
- 0A51 02 0A D9 3082 ljmp 00160$
- 0A54 3083 00148$:
- 3084 ; ../../../include/ztex-isr.h:244: SUDPTRH = MSB(&HighSpeedConfigDescriptor);
- 0A54 7A D0 3085 mov r2,#_HighSpeedConfigDescriptor
- 0A56 7B 10 3086 mov r3,#(_HighSpeedConfigDescriptor >> 8)
- 0A58 90 E6 B3 3087 mov dptr,#_SUDPTRH
- 0A5B EB 3088 mov a,r3
- 0A5C F0 3089 movx @dptr,a
- 3090 ; ../../../include/ztex-isr.h:245: SUDPTRL = LSB(&HighSpeedConfigDescriptor);
- 0A5D 90 E6 B4 3091 mov dptr,#_SUDPTRL
- 0A60 74 D0 3092 mov a,#_HighSpeedConfigDescriptor
- 0A62 F0 3093 movx @dptr,a
- 3094 ; ../../../include/ztex-isr.h:247: break;
- 3095 ; ../../../include/ztex-isr.h:248: default:
- 0A63 80 74 3096 sjmp 00160$
- 0A65 3097 00150$:
- 3098 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0A65 90 E6 A0 3099 mov dptr,#_EP0CS
- 0A68 E0 3100 movx a,@dptr
- 0A69 FA 3101 mov r2,a
- 0A6A 44 01 3102 orl a,#0x01
- 0A6C F0 3103 movx @dptr,a
- 3104 ; ../../../include/ztex-isr.h:251: break;
- 3105 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0A6D 80 6A 3106 sjmp 00160$
- 0A6F 3107 00152$:
- 3108 ; ../../../include/ztex-isr.h:253: break;
- 3109 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0A6F 80 68 3110 sjmp 00160$
- 0A71 3111 00153$:
- 0A71 90 E7 40 3112 mov dptr,#_EP0BUF
- 3113 ; ../../../include/ztex-isr.h:256: EP0BCH = 0;
- 0A74 E4 3114 clr a
- 0A75 F0 3115 movx @dptr,a
- 0A76 90 E6 8A 3116 mov dptr,#_EP0BCH
- 0A79 F0 3117 movx @dptr,a
- 3118 ; ../../../include/ztex-isr.h:257: EP0BCL = 1;
- 0A7A 90 E6 8B 3119 mov dptr,#_EP0BCL
- 0A7D 74 01 3120 mov a,#0x01
- 0A7F F0 3121 movx @dptr,a
- 3122 ; ../../../include/ztex-isr.h:258: break;
- 3123 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0A80 80 57 3124 sjmp 00160$
- 0A82 3125 00154$:
- 3126 ; ../../../include/ztex-isr.h:260: resetToggleData();
- 0A82 12 06 51 3127 lcall _resetToggleData
- 3128 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0A85 80 52 3129 sjmp 00160$
- 0A87 3130 00155$:
- 0A87 90 E7 40 3131 mov dptr,#_EP0BUF
- 3132 ; ../../../include/ztex-isr.h:264: EP0BCH = 0;
- 0A8A E4 3133 clr a
- 0A8B F0 3134 movx @dptr,a
- 0A8C 90 E6 8A 3135 mov dptr,#_EP0BCH
- 0A8F F0 3136 movx @dptr,a
- 3137 ; ../../../include/ztex-isr.h:265: EP0BCL = 1;
- 0A90 90 E6 8B 3138 mov dptr,#_EP0BCL
- 0A93 74 01 3139 mov a,#0x01
- 0A95 F0 3140 movx @dptr,a
- 3141 ; ../../../include/ztex-isr.h:266: break;
- 3142 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0A96 80 41 3143 sjmp 00160$
- 0A98 3144 00156$:
- 3145 ; ../../../include/ztex-isr.h:268: resetToggleData();
- 0A98 12 06 51 3146 lcall _resetToggleData
- 3147 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0A9B 80 3C 3148 sjmp 00160$
- 0A9D 3149 00157$:
- 3150 ; ../../../include/ztex-isr.h:271: if ( SETUPDAT[0] == 0x82 ) {
- 0A9D 90 E6 B8 3151 mov dptr,#_SETUPDAT
- 0AA0 E0 3152 movx a,@dptr
- 0AA1 FA 3153 mov r2,a
- 0AA2 BA 82 34 3154 cjne r2,#0x82,00160$
- 3155 ; ../../../include/ztex-isr.h:272: ISOFRAME_COUNTER[ ((SETUPDAT[4] >> 1)-1) & 3 ] = 0;
- 0AA5 90 E6 BC 3156 mov dptr,#(_SETUPDAT + 0x0004)
- 0AA8 E0 3157 movx a,@dptr
- 0AA9 C3 3158 clr c
- 0AAA 13 3159 rrc a
- 0AAB 14 3160 dec a
- 0AAC 54 03 3161 anl a,#0x03
- 0AAE 25 E0 3162 add a,acc
- 0AB0 24 75 3163 add a,#_ISOFRAME_COUNTER
- 0AB2 F5 82 3164 mov dpl,a
- 0AB4 E4 3165 clr a
- 0AB5 34 32 3166 addc a,#(_ISOFRAME_COUNTER >> 8)
- 0AB7 F5 83 3167 mov dph,a
- 0AB9 E4 3168 clr a
- 0ABA F0 3169 movx @dptr,a
- 0ABB A3 3170 inc dptr
- 0ABC F0 3171 movx @dptr,a
- 3172 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0ABD 90 E6 85 3173 mov dptr,#_USBFRAMEL
- 0AC0 E0 3174 movx a,@dptr
- 0AC1 90 E7 40 3175 mov dptr,#_EP0BUF
- 0AC4 F0 3176 movx @dptr,a
- 3177 ; ../../../include/ztex-isr.h:274: EP0BUF[1] = USBFRAMEH;
- 0AC5 90 E6 84 3178 mov dptr,#_USBFRAMEH
- 0AC8 E0 3179 movx a,@dptr
- 0AC9 FA 3180 mov r2,a
- 0ACA 90 E7 41 3181 mov dptr,#(_EP0BUF + 0x0001)
- 0ACD F0 3182 movx @dptr,a
- 3183 ; ../../../include/ztex-isr.h:275: EP0BCH = 0;
- 0ACE 90 E6 8A 3184 mov dptr,#_EP0BCH
- 0AD1 E4 3185 clr a
- 0AD2 F0 3186 movx @dptr,a
- 3187 ; ../../../include/ztex-isr.h:276: EP0BCL = 2;
- 0AD3 90 E6 8B 3188 mov dptr,#_EP0BCL
- 0AD6 74 02 3189 mov a,#0x02
- 0AD8 F0 3190 movx @dptr,a
- 3191 ; ../../../include/ztex-isr.h:280: }
- 0AD9 3192 00160$:
- 3193 ; ../../../include/ztex-isr.h:283: switch ( bmRequestType ) {
- 0AD9 90 E6 B8 3194 mov dptr,#_bmRequestType
- 0ADC E0 3195 movx a,@dptr
- 0ADD FA 3196 mov r2,a
- 0ADE BA 40 03 3197 cjne r2,#0x40,00250$
- 0AE1 02 0B C9 3198 ljmp 00168$
- 0AE4 3199 00250$:
- 0AE4 BA C0 02 3200 cjne r2,#0xC0,00251$
- 0AE7 80 03 3201 sjmp 00252$
- 0AE9 3202 00251$:
- 0AE9 02 0B F3 3203 ljmp 00172$
- 0AEC 3204 00252$:
- 3205 ; ../../../include/ztex-isr.h:285: ep0_payload_remaining = (SETUPDAT[7] << 8) | SETUPDAT[6];
- 0AEC 90 E6 BF 3206 mov dptr,#(_SETUPDAT + 0x0007)
- 0AEF E0 3207 movx a,@dptr
- 0AF0 FB 3208 mov r3,a
- 0AF1 7A 00 3209 mov r2,#0x00
- 0AF3 90 E6 BE 3210 mov dptr,#(_SETUPDAT + 0x0006)
- 0AF6 E0 3211 movx a,@dptr
- 0AF7 FC 3212 mov r4,a
- 0AF8 7D 00 3213 mov r5,#0x00
- 0AFA 90 32 70 3214 mov dptr,#_ep0_payload_remaining
- 0AFD EC 3215 mov a,r4
- 0AFE 4A 3216 orl a,r2
- 0AFF F0 3217 movx @dptr,a
- 0B00 ED 3218 mov a,r5
- 0B01 4B 3219 orl a,r3
- 0B02 A3 3220 inc dptr
- 0B03 F0 3221 movx @dptr,a
- 3222 ; ../../../include/ztex-isr.h:286: ep0_payload_update();
- 0B04 12 06 C2 3223 lcall _ep0_payload_update
- 3224 ; ../../../include/ztex-isr.h:288: switch ( bRequest ) {
- 0B07 90 E6 B9 3225 mov dptr,#_bRequest
- 0B0A E0 3226 movx a,@dptr
- 0B0B FA 3227 mov r2,a
- 0B0C BA 22 02 3228 cjne r2,#0x22,00253$
- 0B0F 80 13 3229 sjmp 00162$
- 0B11 3230 00253$:
- 0B11 BA 28 03 3231 cjne r2,#0x28,00254$
- 0B14 02 0B A5 3232 ljmp 00165$
- 0B17 3233 00254$:
- 0B17 BA 38 02 3234 cjne r2,#0x38,00255$
- 0B1A 80 25 3235 sjmp 00163$
- 0B1C 3236 00255$:
- 0B1C BA 3A 02 3237 cjne r2,#0x3A,00256$
- 0B1F 80 49 3238 sjmp 00164$
- 0B21 3239 00256$:
- 0B21 02 0B BF 3240 ljmp 00166$
- 3241 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0B24 3242 00162$:
- 3243 ; ../../../include/ztex-isr.h:290: SUDPTRCTL = 0;
- 0B24 90 E6 B5 3244 mov dptr,#_SUDPTRCTL
- 3245 ; ../../../include/ztex-isr.h:291: EP0BCH = 0;
- 0B27 E4 3246 clr a
- 0B28 F0 3247 movx @dptr,a
- 0B29 90 E6 8A 3248 mov dptr,#_EP0BCH
- 0B2C F0 3249 movx @dptr,a
- 3250 ; ../../../include/ztex-isr.h:292: EP0BCL = ZTEX_DESCRIPTOR_LEN;
- 0B2D 90 E6 8B 3251 mov dptr,#_EP0BCL
- 0B30 74 28 3252 mov a,#0x28
- 0B32 F0 3253 movx @dptr,a
- 3254 ; ../../../include/ztex-isr.h:293: SUDPTRH = MSB(ZTEX_DESCRIPTOR_OFFS);
- 0B33 90 E6 B3 3255 mov dptr,#_SUDPTRH
- 0B36 E4 3256 clr a
- 0B37 F0 3257 movx @dptr,a
- 3258 ; ../../../include/ztex-isr.h:294: SUDPTRL = LSB(ZTEX_DESCRIPTOR_OFFS);
- 0B38 90 E6 B4 3259 mov dptr,#_SUDPTRL
- 0B3B 74 6C 3260 mov a,#0x6C
- 0B3D F0 3261 movx @dptr,a
- 3262 ; ../../../include/ztex-isr.h:295: break;
- 0B3E 02 0B F3 3263 ljmp 00172$
- 3264 ; ../../../include/ztex-conf.h:90: case $0:
- 0B41 3265 00163$:
- 3266 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0B41 90 E6 BB 3267 mov dptr,#(_SETUPDAT + 0x0003)
- 0B44 E0 3268 movx a,@dptr
- 0B45 FB 3269 mov r3,a
- 0B46 7A 00 3270 mov r2,#0x00
- 0B48 90 E6 BA 3271 mov dptr,#(_SETUPDAT + 0x0002)
- 0B4B E0 3272 movx a,@dptr
- 0B4C FC 3273 mov r4,a
- 0B4D 7D 00 3274 mov r5,#0x00
- 0B4F 90 32 00 3275 mov dptr,#_eeprom_addr
- 0B52 EC 3276 mov a,r4
- 0B53 4A 3277 orl a,r2
- 0B54 F0 3278 movx @dptr,a
- 0B55 ED 3279 mov a,r5
- 0B56 4B 3280 orl a,r3
- 0B57 A3 3281 inc dptr
- 0B58 F0 3282 movx @dptr,a
- 3283 ; ../../../include/ztex-eeprom.h:216: EP0BCH = 0;
- 0B59 90 E6 8A 3284 mov dptr,#_EP0BCH
- 0B5C E4 3285 clr a
- 0B5D F0 3286 movx @dptr,a
- 3287 ; ../../../include/ztex-eeprom.h:217: EP0BCL = eeprom_read_ep0();
- 0B5E 12 05 54 3288 lcall _eeprom_read_ep0
- 0B61 E5 82 3289 mov a,dpl
- 0B63 90 E6 8B 3290 mov dptr,#_EP0BCL
- 0B66 F0 3291 movx @dptr,a
- 3292 ; ../../../include/ztex-conf.h:92: break;
- 0B67 02 0B F3 3293 ljmp 00172$
- 3294 ; ../../../include/ztex-conf.h:90: case $0:
- 0B6A 3295 00164$:
- 3296 ; ../../../include/ztex-eeprom.h:244: EP0BUF[0] = LSB(eeprom_write_bytes);
- 0B6A 90 32 02 3297 mov dptr,#_eeprom_write_bytes
- 0B6D E0 3298 movx a,@dptr
- 0B6E FA 3299 mov r2,a
- 0B6F A3 3300 inc dptr
- 0B70 E0 3301 movx a,@dptr
- 0B71 FB 3302 mov r3,a
- 0B72 8A 04 3303 mov ar4,r2
- 0B74 90 E7 40 3304 mov dptr,#_EP0BUF
- 0B77 EC 3305 mov a,r4
- 0B78 F0 3306 movx @dptr,a
- 3307 ; ../../../include/ztex-eeprom.h:245: EP0BUF[1] = MSB(eeprom_write_bytes);
- 0B79 8B 02 3308 mov ar2,r3
- 0B7B 90 E7 41 3309 mov dptr,#(_EP0BUF + 0x0001)
- 0B7E EA 3310 mov a,r2
- 0B7F F0 3311 movx @dptr,a
- 3312 ; ../../../include/ztex-eeprom.h:246: EP0BUF[2] = eeprom_write_checksum;
- 0B80 90 32 04 3313 mov dptr,#_eeprom_write_checksum
- 0B83 E0 3314 movx a,@dptr
- 0B84 90 E7 42 3315 mov dptr,#(_EP0BUF + 0x0002)
- 0B87 F0 3316 movx @dptr,a
- 3317 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0B88 75 08 01 3318 mov _eeprom_select_PARM_2,#0x01
- 0B8B 75 82 00 3319 mov dpl,#0x00
- 0B8E 12 03 44 3320 lcall _eeprom_select
- 0B91 AA 82 3321 mov r2,dpl
- 0B93 90 E7 43 3322 mov dptr,#(_EP0BUF + 0x0003)
- 0B96 EA 3323 mov a,r2
- 0B97 F0 3324 movx @dptr,a
- 3325 ; ../../../include/ztex-eeprom.h:248: EP0BCH = 0;
- 0B98 90 E6 8A 3326 mov dptr,#_EP0BCH
- 0B9B E4 3327 clr a
- 0B9C F0 3328 movx @dptr,a
- 3329 ; ../../../include/ztex-eeprom.h:249: EP0BCL = 4;
- 0B9D 90 E6 8B 3330 mov dptr,#_EP0BCL
- 0BA0 74 04 3331 mov a,#0x04
- 0BA2 F0 3332 movx @dptr,a
- 3333 ; ../../../include/ztex-conf.h:92: break;
- 3334 ; ../../../include/ztex-conf.h:90: case $0:
- 0BA3 80 4E 3335 sjmp 00172$
- 0BA5 3336 00165$:
- 3337 ; ../../../include/ztex-debug.h:82: debug_read_addr = (__xdata BYTE*)&debug_counter;
- 0BA5 90 32 6E 3338 mov dptr,#_debug_read_addr
- 0BA8 74 05 3339 mov a,#_debug_counter
- 0BAA F0 3340 movx @dptr,a
- 0BAB A3 3341 inc dptr
- 0BAC 74 32 3342 mov a,#(_debug_counter >> 8)
- 0BAE F0 3343 movx @dptr,a
- 3344 ; ../../../include/ztex-debug.h:83: EP0BCH = 0;
- 0BAF 90 E6 8A 3345 mov dptr,#_EP0BCH
- 0BB2 E4 3346 clr a
- 0BB3 F0 3347 movx @dptr,a
- 3348 ; ../../../include/ztex-debug.h:84: EP0BCL = debug_read_ep0();
- 0BB4 12 06 17 3349 lcall _debug_read_ep0
- 0BB7 E5 82 3350 mov a,dpl
- 0BB9 90 E6 8B 3351 mov dptr,#_EP0BCL
- 0BBC F0 3352 movx @dptr,a
- 3353 ; ../../../include/ztex-conf.h:92: break;
- 3354 ; ../../../include/ztex-isr.h:297: default:
- 0BBD 80 34 3355 sjmp 00172$
- 0BBF 3356 00166$:
- 3357 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0BBF 90 E6 A0 3358 mov dptr,#_EP0CS
- 0BC2 E0 3359 movx a,@dptr
- 0BC3 FA 3360 mov r2,a
- 0BC4 44 01 3361 orl a,#0x01
- 0BC6 F0 3362 movx @dptr,a
- 3363 ; ../../../include/ztex-isr.h:300: break;
- 3364 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0BC7 80 2A 3365 sjmp 00172$
- 0BC9 3366 00168$:
- 3367 ; ../../../include/ztex-isr.h:305: if ( SETUPDAT[7]!=0 || SETUPDAT[6]!=0 ) {
- 0BC9 90 E6 BF 3368 mov dptr,#(_SETUPDAT + 0x0007)
- 0BCC E0 3369 movx a,@dptr
- 0BCD 70 06 3370 jnz 00169$
- 0BCF 90 E6 BE 3371 mov dptr,#(_SETUPDAT + 0x0006)
- 0BD2 E0 3372 movx a,@dptr
- 0BD3 60 16 3373 jz 00170$
- 0BD5 3374 00169$:
- 3375 ; ../../../include/ztex-isr.h:306: ep0_vendor_cmd_setup = 1;
- 0BD5 90 32 74 3376 mov dptr,#_ep0_vendor_cmd_setup
- 0BD8 74 01 3377 mov a,#0x01
- 0BDA F0 3378 movx @dptr,a
- 3379 ; ../../../include/ztex-isr.h:307: EP0BCL = 0;
- 0BDB 90 E6 8B 3380 mov dptr,#_EP0BCL
- 0BDE E4 3381 clr a
- 0BDF F0 3382 movx @dptr,a
- 3383 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0BE0 53 91 EF 3384 anl _EXIF,#0xEF
- 0BE3 90 E6 5D 3385 mov dptr,#_USBIRQ
- 0BE6 74 01 3386 mov a,#0x01
- 0BE8 F0 3387 movx @dptr,a
- 0BE9 80 19 3388 sjmp 00173$
- 0BEB 3389 00170$:
- 0BEB 12 06 EF 3390 lcall _ep0_vendor_cmd_su
- 3391 ; ../../../include/ztex-isr.h:313: EP0BCL = 0;
- 0BEE 90 E6 8B 3392 mov dptr,#_EP0BCL
- 0BF1 E4 3393 clr a
- 0BF2 F0 3394 movx @dptr,a
- 3395 ; ../../../include/ztex-isr.h:315: }
- 0BF3 3396 00172$:
- 3397 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0BF3 53 91 EF 3398 anl _EXIF,#0xEF
- 0BF6 90 E6 5D 3399 mov dptr,#_USBIRQ
- 0BF9 74 01 3400 mov a,#0x01
- 0BFB F0 3401 movx @dptr,a
- 0BFC 90 E6 A0 3402 mov dptr,#_EP0CS
- 0BFF E0 3403 movx a,@dptr
- 0C00 FA 3404 mov r2,a
- 0C01 44 80 3405 orl a,#0x80
- 0C03 F0 3406 movx @dptr,a
- 0C04 3407 00173$:
- 0C04 D0 D0 3408 pop psw
- 0C06 D0 01 3409 pop (0+1)
- 0C08 D0 00 3410 pop (0+0)
- 0C0A D0 07 3411 pop (0+7)
- 0C0C D0 06 3412 pop (0+6)
- 0C0E D0 05 3413 pop (0+5)
- 0C10 D0 04 3414 pop (0+4)
- 0C12 D0 03 3415 pop (0+3)
- 0C14 D0 02 3416 pop (0+2)
- 0C16 D0 83 3417 pop dph
- 0C18 D0 82 3418 pop dpl
- 0C1A D0 F0 3419 pop b
- 0C1C D0 E0 3420 pop acc
- 0C1E D0 20 3421 pop bits
- 0C20 32 3422 reti
- 3423 ;------------------------------------------------------------
- 3424 ;Allocation info for local variables in function 'SOF_ISR'
- 3425 ;------------------------------------------------------------
- 3426 ;------------------------------------------------------------
- 3427 ; ../../../include/ztex-isr.h:325: void SOF_ISR() interrupt
- 3428 ; -----------------------------------------
- 3429 ; function SOF_ISR
- 3430 ; -----------------------------------------
- 0C21 3431 _SOF_ISR:
- 0C21 C0 E0 3432 push acc
- 0C23 C0 82 3433 push dpl
- 0C25 C0 83 3434 push dph
- 3435 ; ../../../include/ztex-isr.h:327: EXIF &= ~bmBIT4;
- 0C27 53 91 EF 3436 anl _EXIF,#0xEF
- 3437 ; ../../../include/ztex-isr.h:328: USBIRQ = bmBIT1;
- 0C2A 90 E6 5D 3438 mov dptr,#_USBIRQ
- 0C2D 74 02 3439 mov a,#0x02
- 0C2F F0 3440 movx @dptr,a
- 0C30 D0 83 3441 pop dph
- 0C32 D0 82 3442 pop dpl
- 0C34 D0 E0 3443 pop acc
- 0C36 32 3444 reti
- 3445 ; eliminated unneeded push/pop psw
- 3446 ; eliminated unneeded push/pop b
- 3447 ;------------------------------------------------------------
- 3448 ;Allocation info for local variables in function 'SUTOK_ISR'
- 3449 ;------------------------------------------------------------
- 3450 ;------------------------------------------------------------
- 3451 ; ../../../include/ztex-isr.h:334: void SUTOK_ISR() interrupt
- 3452 ; -----------------------------------------
- 3453 ; function SUTOK_ISR
- 3454 ; -----------------------------------------
- 0C37 3455 _SUTOK_ISR:
- 0C37 C0 E0 3456 push acc
- 0C39 C0 82 3457 push dpl
- 0C3B C0 83 3458 push dph
- 3459 ; ../../../include/ztex-isr.h:336: EXIF &= ~bmBIT4;
- 0C3D 53 91 EF 3460 anl _EXIF,#0xEF
- 3461 ; ../../../include/ztex-isr.h:337: USBIRQ = bmBIT2;
- 0C40 90 E6 5D 3462 mov dptr,#_USBIRQ
- 0C43 74 04 3463 mov a,#0x04
- 0C45 F0 3464 movx @dptr,a
- 0C46 D0 83 3465 pop dph
- 0C48 D0 82 3466 pop dpl
- 0C4A D0 E0 3467 pop acc
- 0C4C 32 3468 reti
- 3469 ; eliminated unneeded push/pop psw
- 3470 ; eliminated unneeded push/pop b
- 3471 ;------------------------------------------------------------
- 3472 ;Allocation info for local variables in function 'SUSP_ISR'
- 3473 ;------------------------------------------------------------
- 3474 ;------------------------------------------------------------
- 3475 ; ../../../include/ztex-isr.h:343: void SUSP_ISR() interrupt
- 3476 ; -----------------------------------------
- 3477 ; function SUSP_ISR
- 3478 ; -----------------------------------------
- 0C4D 3479 _SUSP_ISR:
- 0C4D C0 E0 3480 push acc
- 0C4F C0 82 3481 push dpl
- 0C51 C0 83 3482 push dph
- 3483 ; ../../../include/ztex-isr.h:345: EXIF &= ~bmBIT4;
- 0C53 53 91 EF 3484 anl _EXIF,#0xEF
- 3485 ; ../../../include/ztex-isr.h:346: USBIRQ = bmBIT3;
- 0C56 90 E6 5D 3486 mov dptr,#_USBIRQ
- 0C59 74 08 3487 mov a,#0x08
- 0C5B F0 3488 movx @dptr,a
- 0C5C D0 83 3489 pop dph
- 0C5E D0 82 3490 pop dpl
- 0C60 D0 E0 3491 pop acc
- 0C62 32 3492 reti
- 3493 ; eliminated unneeded push/pop psw
- 3494 ; eliminated unneeded push/pop b
- 3495 ;------------------------------------------------------------
- 3496 ;Allocation info for local variables in function 'URES_ISR'
- 3497 ;------------------------------------------------------------
- 3498 ;------------------------------------------------------------
- 3499 ; ../../../include/ztex-isr.h:352: void URES_ISR() interrupt
- 3500 ; -----------------------------------------
- 3501 ; function URES_ISR
- 3502 ; -----------------------------------------
- 0C63 3503 _URES_ISR:
- 0C63 C0 E0 3504 push acc
- 0C65 C0 82 3505 push dpl
- 0C67 C0 83 3506 push dph
- 3507 ; ../../../include/ztex-isr.h:354: EXIF &= ~bmBIT4;
- 0C69 53 91 EF 3508 anl _EXIF,#0xEF
- 3509 ; ../../../include/ztex-isr.h:355: USBIRQ = bmBIT4;
- 0C6C 90 E6 5D 3510 mov dptr,#_USBIRQ
- 0C6F 74 10 3511 mov a,#0x10
- 0C71 F0 3512 movx @dptr,a
- 0C72 D0 83 3513 pop dph
- 0C74 D0 82 3514 pop dpl
- 0C76 D0 E0 3515 pop acc
- 0C78 32 3516 reti
- 3517 ; eliminated unneeded push/pop psw
- 3518 ; eliminated unneeded push/pop b
- 3519 ;------------------------------------------------------------
- 3520 ;Allocation info for local variables in function 'HSGRANT_ISR'
- 3521 ;------------------------------------------------------------
- 3522 ;------------------------------------------------------------
- 3523 ; ../../../include/ztex-isr.h:361: void HSGRANT_ISR() interrupt
- 3524 ; -----------------------------------------
- 3525 ; function HSGRANT_ISR
- 3526 ; -----------------------------------------
- 0C79 3527 _HSGRANT_ISR:
- 0C79 C0 E0 3528 push acc
- 0C7B C0 82 3529 push dpl
- 0C7D C0 83 3530 push dph
- 3531 ; ../../../include/ztex-isr.h:363: EXIF &= ~bmBIT4;
- 0C7F 53 91 EF 3532 anl _EXIF,#0xEF
- 3533 ; ../../../include/ztex-isr.h:364: USBIRQ = bmBIT5;
- 0C82 90 E6 5D 3534 mov dptr,#_USBIRQ
- 0C85 74 20 3535 mov a,#0x20
- 0C87 F0 3536 movx @dptr,a
- 0C88 D0 83 3537 pop dph
- 0C8A D0 82 3538 pop dpl
- 0C8C D0 E0 3539 pop acc
- 0C8E 32 3540 reti
- 3541 ; eliminated unneeded push/pop psw
- 3542 ; eliminated unneeded push/pop b
- 3543 ;------------------------------------------------------------
- 3544 ;Allocation info for local variables in function 'EP0ACK_ISR'
- 3545 ;------------------------------------------------------------
- 3546 ;------------------------------------------------------------
- 3547 ; ../../../include/ztex-isr.h:370: void EP0ACK_ISR() interrupt
- 3548 ; -----------------------------------------
- 3549 ; function EP0ACK_ISR
- 3550 ; -----------------------------------------
- 0C8F 3551 _EP0ACK_ISR:
- 0C8F C0 E0 3552 push acc
- 0C91 C0 82 3553 push dpl
- 0C93 C0 83 3554 push dph
- 3555 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0C95 53 91 EF 3556 anl _EXIF,#0xEF
- 0C98 90 E6 5D 3557 mov dptr,#_USBIRQ
- 0C9B 74 40 3558 mov a,#0x40
- 0C9D F0 3559 movx @dptr,a
- 0C9E D0 83 3560 pop dph
- 0CA0 D0 82 3561 pop dpl
- 0CA2 D0 E0 3562 pop acc
- 0CA4 32 3563 reti
- 3564 ; eliminated unneeded push/pop psw
- 3565 ; eliminated unneeded push/pop b
- 3566 ;------------------------------------------------------------
- 3567 ;Allocation info for local variables in function 'EP0IN_ISR'
- 3568 ;------------------------------------------------------------
- 3569 ;------------------------------------------------------------
- 3570 ; ../../../include/ztex-isr.h:379: static void EP0IN_ISR () interrupt
- 3571 ; -----------------------------------------
- 3572 ; function EP0IN_ISR
- 3573 ; -----------------------------------------
- 0CA5 3574 _EP0IN_ISR:
- 0CA5 C0 20 3575 push bits
- 0CA7 C0 E0 3576 push acc
- 0CA9 C0 F0 3577 push b
- 0CAB C0 82 3578 push dpl
- 0CAD C0 83 3579 push dph
- 0CAF C0 02 3580 push (0+2)
- 0CB1 C0 03 3581 push (0+3)
- 0CB3 C0 04 3582 push (0+4)
- 0CB5 C0 05 3583 push (0+5)
- 0CB7 C0 06 3584 push (0+6)
- 0CB9 C0 07 3585 push (0+7)
- 0CBB C0 00 3586 push (0+0)
- 0CBD C0 01 3587 push (0+1)
- 0CBF C0 D0 3588 push psw
- 0CC1 75 D0 00 3589 mov psw,#0x00
- 3590 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0CC4 C2 E8 3591 clr _EUSB
- 3592 ; ../../../include/ztex-isr.h:382: ep0_payload_update();
- 0CC6 12 06 C2 3593 lcall _ep0_payload_update
- 3594 ; ../../../include/ztex-isr.h:383: switch ( ep0_prev_setup_request ) {
- 0CC9 90 32 73 3595 mov dptr,#_ep0_prev_setup_request
- 0CCC E0 3596 movx a,@dptr
- 0CCD FA 3597 mov r2,a
- 0CCE BA 28 02 3598 cjne r2,#0x28,00111$
- 0CD1 80 1A 3599 sjmp 00103$
- 0CD3 3600 00111$:
- 0CD3 BA 38 02 3601 cjne r2,#0x38,00112$
- 0CD6 80 05 3602 sjmp 00101$
- 0CD8 3603 00112$:
- 3604 ; ../../../include/ztex-conf.h:95: case $0:
- 0CD8 BA 3A 22 3605 cjne r2,#0x3A,00104$
- 0CDB 80 29 3606 sjmp 00105$
- 0CDD 3607 00101$:
- 3608 ; ../../../include/ztex-eeprom.h:219: EP0BCH = 0;
- 0CDD 90 E6 8A 3609 mov dptr,#_EP0BCH
- 0CE0 E4 3610 clr a
- 0CE1 F0 3611 movx @dptr,a
- 3612 ; ../../../include/ztex-eeprom.h:220: EP0BCL = eeprom_read_ep0();
- 0CE2 12 05 54 3613 lcall _eeprom_read_ep0
- 0CE5 E5 82 3614 mov a,dpl
- 0CE7 90 E6 8B 3615 mov dptr,#_EP0BCL
- 0CEA F0 3616 movx @dptr,a
- 3617 ; ../../../include/ztex-conf.h:97: break;
- 3618 ; ../../../include/ztex-conf.h:95: case $0:
- 0CEB 80 19 3619 sjmp 00105$
- 0CED 3620 00103$:
- 3621 ; ../../../include/ztex-debug.h:86: EP0BCH = 0;
- 0CED 90 E6 8A 3622 mov dptr,#_EP0BCH
- 0CF0 E4 3623 clr a
- 0CF1 F0 3624 movx @dptr,a
- 3625 ; ../../../include/ztex-debug.h:87: EP0BCL = debug_read_ep0();
- 0CF2 12 06 17 3626 lcall _debug_read_ep0
- 0CF5 E5 82 3627 mov a,dpl
- 0CF7 90 E6 8B 3628 mov dptr,#_EP0BCL
- 0CFA F0 3629 movx @dptr,a
- 3630 ; ../../../include/ztex-conf.h:97: break;
- 3631 ; ../../../include/ztex-isr.h:385: default:
- 0CFB 80 09 3632 sjmp 00105$
- 0CFD 3633 00104$:
- 3634 ; ../../../include/ztex-isr.h:386: EP0BCH = 0;
- 0CFD 90 E6 8A 3635 mov dptr,#_EP0BCH
- 3636 ; ../../../include/ztex-isr.h:387: EP0BCL = 0;
- 0D00 E4 3637 clr a
- 0D01 F0 3638 movx @dptr,a
- 0D02 90 E6 8B 3639 mov dptr,#_EP0BCL
- 0D05 F0 3640 movx @dptr,a
- 3641 ; ../../../include/ztex-isr.h:388: }
- 0D06 3642 00105$:
- 3643 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0D06 53 91 EF 3644 anl _EXIF,#0xEF
- 0D09 90 E6 5F 3645 mov dptr,#_EPIRQ
- 0D0C 74 01 3646 mov a,#0x01
- 0D0E F0 3647 movx @dptr,a
- 3648 ; ../../../include/ztex-isr.h:391: EUSB = 1;
- 0D0F D2 E8 3649 setb _EUSB
- 0D11 D0 D0 3650 pop psw
- 0D13 D0 01 3651 pop (0+1)
- 0D15 D0 00 3652 pop (0+0)
- 0D17 D0 07 3653 pop (0+7)
- 0D19 D0 06 3654 pop (0+6)
- 0D1B D0 05 3655 pop (0+5)
- 0D1D D0 04 3656 pop (0+4)
- 0D1F D0 03 3657 pop (0+3)
- 0D21 D0 02 3658 pop (0+2)
- 0D23 D0 83 3659 pop dph
- 0D25 D0 82 3660 pop dpl
- 0D27 D0 F0 3661 pop b
- 0D29 D0 E0 3662 pop acc
- 0D2B D0 20 3663 pop bits
- 0D2D 32 3664 reti
- 3665 ;------------------------------------------------------------
- 3666 ;Allocation info for local variables in function 'EP0OUT_ISR'
- 3667 ;------------------------------------------------------------
- 3668 ;------------------------------------------------------------
- 3669 ; ../../../include/ztex-isr.h:397: static void EP0OUT_ISR () interrupt
- 3670 ; -----------------------------------------
- 3671 ; function EP0OUT_ISR
- 3672 ; -----------------------------------------
- 0D2E 3673 _EP0OUT_ISR:
- 0D2E C0 20 3674 push bits
- 0D30 C0 E0 3675 push acc
- 0D32 C0 F0 3676 push b
- 0D34 C0 82 3677 push dpl
- 0D36 C0 83 3678 push dph
- 0D38 C0 02 3679 push (0+2)
- 0D3A C0 03 3680 push (0+3)
- 0D3C C0 04 3681 push (0+4)
- 0D3E C0 05 3682 push (0+5)
- 0D40 C0 06 3683 push (0+6)
- 0D42 C0 07 3684 push (0+7)
- 0D44 C0 00 3685 push (0+0)
- 0D46 C0 01 3686 push (0+1)
- 0D48 C0 D0 3687 push psw
- 0D4A 75 D0 00 3688 mov psw,#0x00
- 3689 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0D4D C2 E8 3690 clr _EUSB
- 3691 ; ../../../include/ztex-isr.h:400: if ( ep0_vendor_cmd_setup ) {
- 0D4F 90 32 74 3692 mov dptr,#_ep0_vendor_cmd_setup
- 0D52 E0 3693 movx a,@dptr
- 0D53 FA 3694 mov r2,a
- 0D54 60 20 3695 jz 00102$
- 3696 ; ../../../include/ztex-isr.h:401: ep0_vendor_cmd_setup = 0;
- 0D56 90 32 74 3697 mov dptr,#_ep0_vendor_cmd_setup
- 0D59 E4 3698 clr a
- 0D5A F0 3699 movx @dptr,a
- 3700 ; ../../../include/ztex-isr.h:402: ep0_payload_remaining = (SETUPDAT[7] << 8) | SETUPDAT[6];
- 0D5B 90 E6 BF 3701 mov dptr,#(_SETUPDAT + 0x0007)
- 0D5E E0 3702 movx a,@dptr
- 0D5F FB 3703 mov r3,a
- 0D60 7A 00 3704 mov r2,#0x00
- 0D62 90 E6 BE 3705 mov dptr,#(_SETUPDAT + 0x0006)
- 0D65 E0 3706 movx a,@dptr
- 0D66 FC 3707 mov r4,a
- 0D67 7D 00 3708 mov r5,#0x00
- 0D69 90 32 70 3709 mov dptr,#_ep0_payload_remaining
- 0D6C EC 3710 mov a,r4
- 0D6D 4A 3711 orl a,r2
- 0D6E F0 3712 movx @dptr,a
- 0D6F ED 3713 mov a,r5
- 0D70 4B 3714 orl a,r3
- 0D71 A3 3715 inc dptr
- 0D72 F0 3716 movx @dptr,a
- 3717 ; ../../../include/ztex-isr.h:403: ep0_vendor_cmd_su();
- 0D73 12 06 EF 3718 lcall _ep0_vendor_cmd_su
- 0D76 3719 00102$:
- 3720 ; ../../../include/ztex-isr.h:406: ep0_payload_update();
- 0D76 12 06 C2 3721 lcall _ep0_payload_update
- 3722 ; ../../../include/ztex-isr.h:408: switch ( ep0_prev_setup_request ) {
- 0D79 90 32 73 3723 mov dptr,#_ep0_prev_setup_request
- 0D7C E0 3724 movx a,@dptr
- 0D7D FA 3725 mov r2,a
- 0D7E BA 39 09 3726 cjne r2,#0x39,00104$
- 3727 ; ../../../include/ztex-eeprom.h:237: eeprom_write_ep0(EP0BCL);
- 0D81 90 E6 8B 3728 mov dptr,#_EP0BCL
- 0D84 E0 3729 movx a,@dptr
- 0D85 F5 82 3730 mov dpl,a
- 0D87 12 05 88 3731 lcall _eeprom_write_ep0
- 3732 ; ../../../include/ztex-isr.h:410: }
- 0D8A 3733 00104$:
- 3734 ; ../../../include/ztex-isr.h:412: EP0BCL = 0;
- 0D8A 90 E6 8B 3735 mov dptr,#_EP0BCL
- 0D8D E4 3736 clr a
- 0D8E F0 3737 movx @dptr,a
- 3738 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0D8F 53 91 EF 3739 anl _EXIF,#0xEF
- 0D92 90 E6 5F 3740 mov dptr,#_EPIRQ
- 0D95 74 02 3741 mov a,#0x02
- 0D97 F0 3742 movx @dptr,a
- 3743 ; ../../../include/ztex-isr.h:416: if ( ep0_payload_remaining == 0 ) {
- 0D98 90 32 70 3744 mov dptr,#_ep0_payload_remaining
- 0D9B E0 3745 movx a,@dptr
- 0D9C FA 3746 mov r2,a
- 0D9D A3 3747 inc dptr
- 0D9E E0 3748 movx a,@dptr
- 0D9F FB 3749 mov r3,a
- 0DA0 4A 3750 orl a,r2
- 0DA1 70 08 3751 jnz 00106$
- 3752 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 0DA3 90 E6 A0 3753 mov dptr,#_EP0CS
- 0DA6 E0 3754 movx a,@dptr
- 0DA7 FA 3755 mov r2,a
- 0DA8 44 80 3756 orl a,#0x80
- 0DAA F0 3757 movx @dptr,a
- 0DAB 3758 00106$:
- 3759 ; ../../../include/ztex-isr.h:419: EUSB = 1;
- 0DAB D2 E8 3760 setb _EUSB
- 0DAD D0 D0 3761 pop psw
- 0DAF D0 01 3762 pop (0+1)
- 0DB1 D0 00 3763 pop (0+0)
- 0DB3 D0 07 3764 pop (0+7)
- 0DB5 D0 06 3765 pop (0+6)
- 0DB7 D0 05 3766 pop (0+5)
- 0DB9 D0 04 3767 pop (0+4)
- 0DBB D0 03 3768 pop (0+3)
- 0DBD D0 02 3769 pop (0+2)
- 0DBF D0 83 3770 pop dph
- 0DC1 D0 82 3771 pop dpl
- 0DC3 D0 F0 3772 pop b
- 0DC5 D0 E0 3773 pop acc
- 0DC7 D0 20 3774 pop bits
- 0DC9 32 3775 reti
- 3776 ;------------------------------------------------------------
- 3777 ;Allocation info for local variables in function 'EP1IN_ISR'
- 3778 ;------------------------------------------------------------
- 3779 ;------------------------------------------------------------
- 3780 ; ../../../include/ztex-isr.h:426: void EP1IN_ISR() interrupt
- 3781 ; -----------------------------------------
- 3782 ; function EP1IN_ISR
- 3783 ; -----------------------------------------
- 0DCA 3784 _EP1IN_ISR:
- 0DCA C0 E0 3785 push acc
- 0DCC C0 82 3786 push dpl
- 0DCE C0 83 3787 push dph
- 3788 ; ../../../include/ztex-isr.h:428: EXIF &= ~bmBIT4;
- 0DD0 53 91 EF 3789 anl _EXIF,#0xEF
- 3790 ; ../../../include/ztex-isr.h:429: EPIRQ = bmBIT2;
- 0DD3 90 E6 5F 3791 mov dptr,#_EPIRQ
- 0DD6 74 04 3792 mov a,#0x04
- 0DD8 F0 3793 movx @dptr,a
- 0DD9 D0 83 3794 pop dph
- 0DDB D0 82 3795 pop dpl
- 0DDD D0 E0 3796 pop acc
- 0DDF 32 3797 reti
- 3798 ; eliminated unneeded push/pop psw
- 3799 ; eliminated unneeded push/pop b
- 3800 ;------------------------------------------------------------
- 3801 ;Allocation info for local variables in function 'EP1OUT_ISR'
- 3802 ;------------------------------------------------------------
- 3803 ;------------------------------------------------------------
- 3804 ; ../../../include/ztex-isr.h:436: void EP1OUT_ISR() interrupt
- 3805 ; -----------------------------------------
- 3806 ; function EP1OUT_ISR
- 3807 ; -----------------------------------------
- 0DE0 3808 _EP1OUT_ISR:
- 0DE0 C0 E0 3809 push acc
- 0DE2 C0 82 3810 push dpl
- 0DE4 C0 83 3811 push dph
- 3812 ; ../../../include/ztex-isr.h:438: EXIF &= ~bmBIT4;
- 0DE6 53 91 EF 3813 anl _EXIF,#0xEF
- 3814 ; ../../../include/ztex-isr.h:439: EPIRQ = bmBIT3;
- 0DE9 90 E6 5F 3815 mov dptr,#_EPIRQ
- 0DEC 74 08 3816 mov a,#0x08
- 0DEE F0 3817 movx @dptr,a
- 0DEF D0 83 3818 pop dph
- 0DF1 D0 82 3819 pop dpl
- 0DF3 D0 E0 3820 pop acc
- 0DF5 32 3821 reti
- 3822 ; eliminated unneeded push/pop psw
- 3823 ; eliminated unneeded push/pop b
- 3824 ;------------------------------------------------------------
- 3825 ;Allocation info for local variables in function 'EP2_ISR'
- 3826 ;------------------------------------------------------------
- 3827 ;------------------------------------------------------------
- 3828 ; ../../../include/ztex-isr.h:445: void EP2_ISR() interrupt
- 3829 ; -----------------------------------------
- 3830 ; function EP2_ISR
- 3831 ; -----------------------------------------
- 0DF6 3832 _EP2_ISR:
- 0DF6 C0 E0 3833 push acc
- 0DF8 C0 82 3834 push dpl
- 0DFA C0 83 3835 push dph
- 3836 ; ../../../include/ztex-isr.h:447: EXIF &= ~bmBIT4;
- 0DFC 53 91 EF 3837 anl _EXIF,#0xEF
- 3838 ; ../../../include/ztex-isr.h:448: EPIRQ = bmBIT4;
- 0DFF 90 E6 5F 3839 mov dptr,#_EPIRQ
- 0E02 74 10 3840 mov a,#0x10
- 0E04 F0 3841 movx @dptr,a
- 0E05 D0 83 3842 pop dph
- 0E07 D0 82 3843 pop dpl
- 0E09 D0 E0 3844 pop acc
- 0E0B 32 3845 reti
- 3846 ; eliminated unneeded push/pop psw
- 3847 ; eliminated unneeded push/pop b
- 3848 ;------------------------------------------------------------
- 3849 ;Allocation info for local variables in function 'EP4_ISR'
- 3850 ;------------------------------------------------------------
- 3851 ;------------------------------------------------------------
- 3852 ; ../../../include/ztex-isr.h:454: void EP4_ISR() interrupt
- 3853 ; -----------------------------------------
- 3854 ; function EP4_ISR
- 3855 ; -----------------------------------------
- 0E0C 3856 _EP4_ISR:
- 0E0C C0 E0 3857 push acc
- 0E0E C0 82 3858 push dpl
- 0E10 C0 83 3859 push dph
- 3860 ; ../../../include/ztex-isr.h:456: EXIF &= ~bmBIT4;
- 0E12 53 91 EF 3861 anl _EXIF,#0xEF
- 3862 ; ../../../include/ztex-isr.h:457: EPIRQ = bmBIT5;
- 0E15 90 E6 5F 3863 mov dptr,#_EPIRQ
- 0E18 74 20 3864 mov a,#0x20
- 0E1A F0 3865 movx @dptr,a
- 0E1B D0 83 3866 pop dph
- 0E1D D0 82 3867 pop dpl
- 0E1F D0 E0 3868 pop acc
- 0E21 32 3869 reti
- 3870 ; eliminated unneeded push/pop psw
- 3871 ; eliminated unneeded push/pop b
- 3872 ;------------------------------------------------------------
- 3873 ;Allocation info for local variables in function 'EP6_ISR'
- 3874 ;------------------------------------------------------------
- 3875 ;------------------------------------------------------------
- 3876 ; ../../../include/ztex-isr.h:463: void EP6_ISR() interrupt
- 3877 ; -----------------------------------------
- 3878 ; function EP6_ISR
- 3879 ; -----------------------------------------
- 0E22 3880 _EP6_ISR:
- 0E22 C0 E0 3881 push acc
- 0E24 C0 82 3882 push dpl
- 0E26 C0 83 3883 push dph
- 3884 ; ../../../include/ztex-isr.h:465: EXIF &= ~bmBIT4;
- 0E28 53 91 EF 3885 anl _EXIF,#0xEF
- 3886 ; ../../../include/ztex-isr.h:466: EPIRQ = bmBIT6;
- 0E2B 90 E6 5F 3887 mov dptr,#_EPIRQ
- 0E2E 74 40 3888 mov a,#0x40
- 0E30 F0 3889 movx @dptr,a
- 0E31 D0 83 3890 pop dph
- 0E33 D0 82 3891 pop dpl
- 0E35 D0 E0 3892 pop acc
- 0E37 32 3893 reti
- 3894 ; eliminated unneeded push/pop psw
- 3895 ; eliminated unneeded push/pop b
- 3896 ;------------------------------------------------------------
- 3897 ;Allocation info for local variables in function 'EP8_ISR'
- 3898 ;------------------------------------------------------------
- 3899 ;------------------------------------------------------------
- 3900 ; ../../../include/ztex-isr.h:472: void EP8_ISR() interrupt
- 3901 ; -----------------------------------------
- 3902 ; function EP8_ISR
- 3903 ; -----------------------------------------
- 0E38 3904 _EP8_ISR:
- 0E38 C0 E0 3905 push acc
- 0E3A C0 82 3906 push dpl
- 0E3C C0 83 3907 push dph
- 3908 ; ../../../include/ztex-isr.h:474: EXIF &= ~bmBIT4;
- 0E3E 53 91 EF 3909 anl _EXIF,#0xEF
- 3910 ; ../../../include/ztex-isr.h:475: EPIRQ = bmBIT7;
- 0E41 90 E6 5F 3911 mov dptr,#_EPIRQ
- 0E44 74 80 3912 mov a,#0x80
- 0E46 F0 3913 movx @dptr,a
- 0E47 D0 83 3914 pop dph
- 0E49 D0 82 3915 pop dpl
- 0E4B D0 E0 3916 pop acc
- 0E4D 32 3917 reti
- 3918 ; eliminated unneeded push/pop psw
- 3919 ; eliminated unneeded push/pop b
- 3920 ;------------------------------------------------------------
- 3921 ;Allocation info for local variables in function 'init_USB'
- 3922 ;------------------------------------------------------------
- 3923 ;------------------------------------------------------------
- 3924 ; ../../../include/ztex.h:165: void init_USB ()
- 3925 ; -----------------------------------------
- 3926 ; function init_USB
- 3927 ; -----------------------------------------
- 0E4E 3928 _init_USB:
- 3929 ; ../../../include/ztex.h:167: USBCS |= 0x08;
- 0E4E 90 E6 80 3930 mov dptr,#_USBCS
- 0E51 E0 3931 movx a,@dptr
- 0E52 44 08 3932 orl a,#0x08
- 0E54 F0 3933 movx @dptr,a
- 3934 ; ../../../include/ztex.h:169: CPUCS = bmBIT4 | bmBIT1;
- 0E55 90 E6 00 3935 mov dptr,#_CPUCS
- 0E58 74 12 3936 mov a,#0x12
- 0E5A F0 3937 movx @dptr,a
- 3938 ; ../../../include/ztex.h:170: CKCON &= ~7;
- 0E5B 53 8E F8 3939 anl _CKCON,#0xF8
- 3940 ; ../../../include/ztex.h:191: EA = 0;
- 0E5E C2 AF 3941 clr _EA
- 3942 ; ../../../include/ztex.h:192: EUSB = 0;
- 0E60 C2 E8 3943 clr _EUSB
- 3944 ; ../../../include/ezintavecs.h:123: INT8VEC_USB.op=0x02;
- 0E62 90 00 43 3945 mov dptr,#_INT8VEC_USB
- 0E65 74 02 3946 mov a,#0x02
- 0E67 F0 3947 movx @dptr,a
- 3948 ; ../../../include/ezintavecs.h:124: INT8VEC_USB.addrH = 0x01;
- 0E68 90 00 44 3949 mov dptr,#(_INT8VEC_USB + 0x0001)
- 0E6B 74 01 3950 mov a,#0x01
- 0E6D F0 3951 movx @dptr,a
- 3952 ; ../../../include/ezintavecs.h:125: INT8VEC_USB.addrL = 0xb8;
- 0E6E 90 00 45 3953 mov dptr,#(_INT8VEC_USB + 0x0002)
- 0E71 74 B8 3954 mov a,#0xB8
- 0E73 F0 3955 movx @dptr,a
- 3956 ; ../../../include/ezintavecs.h:126: INTSETUP |= 8;
- 0E74 90 E6 68 3957 mov dptr,#_INTSETUP
- 0E77 E0 3958 movx a,@dptr
- 0E78 44 08 3959 orl a,#0x08
- 0E7A F0 3960 movx @dptr,a
- 3961 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0E7B 90 01 00 3962 mov dptr,#_INTVEC_SUDAV
- 0E7E 74 02 3963 mov a,#0x02
- 0E80 F0 3964 movx @dptr,a
- 3965 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0E81 7A 23 3966 mov r2,#_SUDAV_ISR
- 0E83 7B 07 3967 mov r3,#(_SUDAV_ISR >> 8)
- 0E85 8B 04 3968 mov ar4,r3
- 0E87 90 01 01 3969 mov dptr,#(_INTVEC_SUDAV + 0x0001)
- 0E8A EC 3970 mov a,r4
- 0E8B F0 3971 movx @dptr,a
- 3972 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0E8C 90 01 02 3973 mov dptr,#(_INTVEC_SUDAV + 0x0002)
- 0E8F EA 3974 mov a,r2
- 0E90 F0 3975 movx @dptr,a
- 3976 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0E91 90 01 04 3977 mov dptr,#_INTVEC_SOF
- 0E94 74 02 3978 mov a,#0x02
- 0E96 F0 3979 movx @dptr,a
- 3980 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0E97 7A 21 3981 mov r2,#_SOF_ISR
- 0E99 7B 0C 3982 mov r3,#(_SOF_ISR >> 8)
- 0E9B 8B 04 3983 mov ar4,r3
- 0E9D 90 01 05 3984 mov dptr,#(_INTVEC_SOF + 0x0001)
- 0EA0 EC 3985 mov a,r4
- 0EA1 F0 3986 movx @dptr,a
- 3987 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0EA2 90 01 06 3988 mov dptr,#(_INTVEC_SOF + 0x0002)
- 0EA5 EA 3989 mov a,r2
- 0EA6 F0 3990 movx @dptr,a
- 3991 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0EA7 90 01 08 3992 mov dptr,#_INTVEC_SUTOK
- 0EAA 74 02 3993 mov a,#0x02
- 0EAC F0 3994 movx @dptr,a
- 3995 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0EAD 7A 37 3996 mov r2,#_SUTOK_ISR
- 0EAF 7B 0C 3997 mov r3,#(_SUTOK_ISR >> 8)
- 0EB1 8B 04 3998 mov ar4,r3
- 0EB3 90 01 09 3999 mov dptr,#(_INTVEC_SUTOK + 0x0001)
- 0EB6 EC 4000 mov a,r4
- 0EB7 F0 4001 movx @dptr,a
- 4002 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0EB8 90 01 0A 4003 mov dptr,#(_INTVEC_SUTOK + 0x0002)
- 0EBB EA 4004 mov a,r2
- 0EBC F0 4005 movx @dptr,a
- 4006 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0EBD 90 01 0C 4007 mov dptr,#_INTVEC_SUSPEND
- 0EC0 74 02 4008 mov a,#0x02
- 0EC2 F0 4009 movx @dptr,a
- 4010 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0EC3 7A 4D 4011 mov r2,#_SUSP_ISR
- 0EC5 7B 0C 4012 mov r3,#(_SUSP_ISR >> 8)
- 0EC7 8B 04 4013 mov ar4,r3
- 0EC9 90 01 0D 4014 mov dptr,#(_INTVEC_SUSPEND + 0x0001)
- 0ECC EC 4015 mov a,r4
- 0ECD F0 4016 movx @dptr,a
- 4017 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0ECE 90 01 0E 4018 mov dptr,#(_INTVEC_SUSPEND + 0x0002)
- 0ED1 EA 4019 mov a,r2
- 0ED2 F0 4020 movx @dptr,a
- 4021 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0ED3 90 01 10 4022 mov dptr,#_INTVEC_USBRESET
- 0ED6 74 02 4023 mov a,#0x02
- 0ED8 F0 4024 movx @dptr,a
- 4025 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0ED9 7A 63 4026 mov r2,#_URES_ISR
- 0EDB 7B 0C 4027 mov r3,#(_URES_ISR >> 8)
- 0EDD 8B 04 4028 mov ar4,r3
- 0EDF 90 01 11 4029 mov dptr,#(_INTVEC_USBRESET + 0x0001)
- 0EE2 EC 4030 mov a,r4
- 0EE3 F0 4031 movx @dptr,a
- 4032 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0EE4 90 01 12 4033 mov dptr,#(_INTVEC_USBRESET + 0x0002)
- 0EE7 EA 4034 mov a,r2
- 0EE8 F0 4035 movx @dptr,a
- 4036 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0EE9 90 01 14 4037 mov dptr,#_INTVEC_HISPEED
- 0EEC 74 02 4038 mov a,#0x02
- 0EEE F0 4039 movx @dptr,a
- 4040 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0EEF 7A 79 4041 mov r2,#_HSGRANT_ISR
- 0EF1 7B 0C 4042 mov r3,#(_HSGRANT_ISR >> 8)
- 0EF3 8B 04 4043 mov ar4,r3
- 0EF5 90 01 15 4044 mov dptr,#(_INTVEC_HISPEED + 0x0001)
- 0EF8 EC 4045 mov a,r4
- 0EF9 F0 4046 movx @dptr,a
- 4047 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0EFA 90 01 16 4048 mov dptr,#(_INTVEC_HISPEED + 0x0002)
- 0EFD EA 4049 mov a,r2
- 0EFE F0 4050 movx @dptr,a
- 4051 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0EFF 90 01 18 4052 mov dptr,#_INTVEC_EP0ACK
- 0F02 74 02 4053 mov a,#0x02
- 0F04 F0 4054 movx @dptr,a
- 4055 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0F05 7A 8F 4056 mov r2,#_EP0ACK_ISR
- 0F07 7B 0C 4057 mov r3,#(_EP0ACK_ISR >> 8)
- 0F09 8B 04 4058 mov ar4,r3
- 0F0B 90 01 19 4059 mov dptr,#(_INTVEC_EP0ACK + 0x0001)
- 0F0E EC 4060 mov a,r4
- 0F0F F0 4061 movx @dptr,a
- 4062 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0F10 90 01 1A 4063 mov dptr,#(_INTVEC_EP0ACK + 0x0002)
- 0F13 EA 4064 mov a,r2
- 0F14 F0 4065 movx @dptr,a
- 4066 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0F15 90 01 20 4067 mov dptr,#_INTVEC_EP0IN
- 0F18 74 02 4068 mov a,#0x02
- 0F1A F0 4069 movx @dptr,a
- 4070 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0F1B 7A A5 4071 mov r2,#_EP0IN_ISR
- 0F1D 7B 0C 4072 mov r3,#(_EP0IN_ISR >> 8)
- 0F1F 8B 04 4073 mov ar4,r3
- 0F21 90 01 21 4074 mov dptr,#(_INTVEC_EP0IN + 0x0001)
- 0F24 EC 4075 mov a,r4
- 0F25 F0 4076 movx @dptr,a
- 4077 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0F26 90 01 22 4078 mov dptr,#(_INTVEC_EP0IN + 0x0002)
- 0F29 EA 4079 mov a,r2
- 0F2A F0 4080 movx @dptr,a
- 4081 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0F2B 90 01 24 4082 mov dptr,#_INTVEC_EP0OUT
- 0F2E 74 02 4083 mov a,#0x02
- 0F30 F0 4084 movx @dptr,a
- 4085 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0F31 7A 2E 4086 mov r2,#_EP0OUT_ISR
- 0F33 7B 0D 4087 mov r3,#(_EP0OUT_ISR >> 8)
- 0F35 8B 04 4088 mov ar4,r3
- 0F37 90 01 25 4089 mov dptr,#(_INTVEC_EP0OUT + 0x0001)
- 0F3A EC 4090 mov a,r4
- 0F3B F0 4091 movx @dptr,a
- 4092 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0F3C 90 01 26 4093 mov dptr,#(_INTVEC_EP0OUT + 0x0002)
- 0F3F EA 4094 mov a,r2
- 0F40 F0 4095 movx @dptr,a
- 4096 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0F41 90 01 28 4097 mov dptr,#_INTVEC_EP1IN
- 0F44 74 02 4098 mov a,#0x02
- 0F46 F0 4099 movx @dptr,a
- 4100 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0F47 7A CA 4101 mov r2,#_EP1IN_ISR
- 0F49 7B 0D 4102 mov r3,#(_EP1IN_ISR >> 8)
- 0F4B 8B 04 4103 mov ar4,r3
- 0F4D 90 01 29 4104 mov dptr,#(_INTVEC_EP1IN + 0x0001)
- 0F50 EC 4105 mov a,r4
- 0F51 F0 4106 movx @dptr,a
- 4107 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0F52 90 01 2A 4108 mov dptr,#(_INTVEC_EP1IN + 0x0002)
- 0F55 EA 4109 mov a,r2
- 0F56 F0 4110 movx @dptr,a
- 4111 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0F57 90 01 2C 4112 mov dptr,#_INTVEC_EP1OUT
- 0F5A 74 02 4113 mov a,#0x02
- 0F5C F0 4114 movx @dptr,a
- 4115 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0F5D 7A E0 4116 mov r2,#_EP1OUT_ISR
- 0F5F 7B 0D 4117 mov r3,#(_EP1OUT_ISR >> 8)
- 0F61 8B 04 4118 mov ar4,r3
- 0F63 90 01 2D 4119 mov dptr,#(_INTVEC_EP1OUT + 0x0001)
- 0F66 EC 4120 mov a,r4
- 0F67 F0 4121 movx @dptr,a
- 4122 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0F68 90 01 2E 4123 mov dptr,#(_INTVEC_EP1OUT + 0x0002)
- 0F6B EA 4124 mov a,r2
- 0F6C F0 4125 movx @dptr,a
- 4126 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0F6D 90 01 30 4127 mov dptr,#_INTVEC_EP2
- 0F70 74 02 4128 mov a,#0x02
- 0F72 F0 4129 movx @dptr,a
- 4130 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0F73 7A F6 4131 mov r2,#_EP2_ISR
- 0F75 7B 0D 4132 mov r3,#(_EP2_ISR >> 8)
- 0F77 8B 04 4133 mov ar4,r3
- 0F79 90 01 31 4134 mov dptr,#(_INTVEC_EP2 + 0x0001)
- 0F7C EC 4135 mov a,r4
- 0F7D F0 4136 movx @dptr,a
- 4137 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0F7E 90 01 32 4138 mov dptr,#(_INTVEC_EP2 + 0x0002)
- 0F81 EA 4139 mov a,r2
- 0F82 F0 4140 movx @dptr,a
- 4141 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0F83 90 01 34 4142 mov dptr,#_INTVEC_EP4
- 0F86 74 02 4143 mov a,#0x02
- 0F88 F0 4144 movx @dptr,a
- 4145 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0F89 7A 0C 4146 mov r2,#_EP4_ISR
- 0F8B 7B 0E 4147 mov r3,#(_EP4_ISR >> 8)
- 0F8D 8B 04 4148 mov ar4,r3
- 0F8F 90 01 35 4149 mov dptr,#(_INTVEC_EP4 + 0x0001)
- 0F92 EC 4150 mov a,r4
- 0F93 F0 4151 movx @dptr,a
- 4152 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0F94 90 01 36 4153 mov dptr,#(_INTVEC_EP4 + 0x0002)
- 0F97 EA 4154 mov a,r2
- 0F98 F0 4155 movx @dptr,a
- 4156 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0F99 90 01 38 4157 mov dptr,#_INTVEC_EP6
- 0F9C 74 02 4158 mov a,#0x02
- 0F9E F0 4159 movx @dptr,a
- 4160 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0F9F 7A 22 4161 mov r2,#_EP6_ISR
- 0FA1 7B 0E 4162 mov r3,#(_EP6_ISR >> 8)
- 0FA3 8B 04 4163 mov ar4,r3
- 0FA5 90 01 39 4164 mov dptr,#(_INTVEC_EP6 + 0x0001)
- 0FA8 EC 4165 mov a,r4
- 0FA9 F0 4166 movx @dptr,a
- 4167 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0FAA 90 01 3A 4168 mov dptr,#(_INTVEC_EP6 + 0x0002)
- 0FAD EA 4169 mov a,r2
- 0FAE F0 4170 movx @dptr,a
- 4171 ; ../../../include/ezintavecs.h:115: $0.op=0x02;
- 0FAF 90 01 3C 4172 mov dptr,#_INTVEC_EP8
- 0FB2 74 02 4173 mov a,#0x02
- 0FB4 F0 4174 movx @dptr,a
- 4175 ; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- 0FB5 7A 38 4176 mov r2,#_EP8_ISR
- 0FB7 7B 0E 4177 mov r3,#(_EP8_ISR >> 8)
- 0FB9 8B 04 4178 mov ar4,r3
- 0FBB 90 01 3D 4179 mov dptr,#(_INTVEC_EP8 + 0x0001)
- 0FBE EC 4180 mov a,r4
- 0FBF F0 4181 movx @dptr,a
- 4182 ; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- 0FC0 90 01 3E 4183 mov dptr,#(_INTVEC_EP8 + 0x0002)
- 0FC3 EA 4184 mov a,r2
- 0FC4 F0 4185 movx @dptr,a
- 4186 ; ../../../include/ztex.h:213: EXIF &= ~bmBIT4;
- 0FC5 53 91 EF 4187 anl _EXIF,#0xEF
- 4188 ; ../../../include/ztex.h:214: USBIRQ = 0x7f;
- 0FC8 90 E6 5D 4189 mov dptr,#_USBIRQ
- 0FCB 74 7F 4190 mov a,#0x7F
- 0FCD F0 4191 movx @dptr,a
- 4192 ; ../../../include/ztex.h:215: USBIE |= 0x7f;
- 0FCE 90 E6 5C 4193 mov dptr,#_USBIE
- 0FD1 E0 4194 movx a,@dptr
- 0FD2 FA 4195 mov r2,a
- 0FD3 44 7F 4196 orl a,#0x7F
- 0FD5 F0 4197 movx @dptr,a
- 4198 ; ../../../include/ztex.h:216: EPIRQ = 0xff;
- 0FD6 90 E6 5F 4199 mov dptr,#_EPIRQ
- 0FD9 74 FF 4200 mov a,#0xFF
- 0FDB F0 4201 movx @dptr,a
- 4202 ; ../../../include/ztex.h:217: EPIE = 0xff;
- 0FDC 90 E6 5E 4203 mov dptr,#_EPIE
- 0FDF 74 FF 4204 mov a,#0xFF
- 0FE1 F0 4205 movx @dptr,a
- 4206 ; ../../../include/ztex.h:219: EUSB = 1;
- 0FE2 D2 E8 4207 setb _EUSB
- 4208 ; ../../../include/ztex.h:220: EA = 1;
- 0FE4 D2 AF 4209 setb _EA
- 4210 ; ../../../include/ztex.h:154: EP$0CFG = bmBIT7 | bmBIT5;
- 0FE6 90 E6 11 4211 mov dptr,#_EP1INCFG
- 0FE9 74 A0 4212 mov a,#0xA0
- 0FEB F0 4213 movx @dptr,a
- 4214 ; ../../../include/ezregs.h:46: _endasm;
- 4215
- 0FEC 00 4216 nop
- 0FED 00 4217 nop
- 0FEE 00 4218 nop
- 0FEF 00 4219 nop
- 4220
- 4221 ; ../../../include/ztex.h:154: EP$0CFG = bmBIT7 | bmBIT5;
- 0FF0 90 E6 10 4222 mov dptr,#_EP1OUTCFG
- 0FF3 74 A0 4223 mov a,#0xA0
- 0FF5 F0 4224 movx @dptr,a
- 4225 ; ../../../include/ezregs.h:46: _endasm;
- 4226
- 0FF6 00 4227 nop
- 0FF7 00 4228 nop
- 0FF8 00 4229 nop
- 0FF9 00 4230 nop
- 4231
- 4232 ; ../../../include/ztex.h:149: ;
- 0FFA 90 E6 12 4233 mov dptr,#_EP2CFG
- 0FFD E4 4234 clr a
- 0FFE F0 4235 movx @dptr,a
- 4236 ; ../../../include/ezregs.h:46: _endasm;
- 4237
- 0FFF 00 4238 nop
- 1000 00 4239 nop
- 1001 00 4240 nop
- 1002 00 4241 nop
- 4242
- 4243 ; ../../../include/ztex.h:149: ;
- 1003 90 E6 13 4244 mov dptr,#_EP4CFG
- 1006 E4 4245 clr a
- 1007 F0 4246 movx @dptr,a
- 4247 ; ../../../include/ezregs.h:46: _endasm;
- 4248
- 1008 00 4249 nop
- 1009 00 4250 nop
- 100A 00 4251 nop
- 100B 00 4252 nop
- 4253
- 4254 ; ../../../include/ztex.h:149: ;
- 100C 90 E6 14 4255 mov dptr,#_EP6CFG
- 100F E4 4256 clr a
- 1010 F0 4257 movx @dptr,a
- 4258 ; ../../../include/ezregs.h:46: _endasm;
- 4259
- 1011 00 4260 nop
- 1012 00 4261 nop
- 1013 00 4262 nop
- 1014 00 4263 nop
- 4264
- 4265 ; ../../../include/ztex.h:149: ;
- 1015 90 E6 15 4266 mov dptr,#_EP8CFG
- 1018 E4 4267 clr a
- 1019 F0 4268 movx @dptr,a
- 4269 ; ../../../include/ezregs.h:46: _endasm;
- 4270
- 101A 00 4271 nop
- 101B 00 4272 nop
- 101C 00 4273 nop
- 101D 00 4274 nop
- 4275
- 4276 ; ../../../include/ztex.h:236: debug_init();
- 101E 12 05 F9 4277 lcall _debug_init
- 4278 ; ../../../include/ztex.h:239: USBCS |= bmBIT7 | bmBIT1;
- 1021 90 E6 80 4279 mov dptr,#_USBCS
- 1024 E0 4280 movx a,@dptr
- 1025 44 82 4281 orl a,#0x82
- 1027 F0 4282 movx @dptr,a
- 4283 ; ../../../include/ztex.h:240: wait(250);
- 1028 90 00 FA 4284 mov dptr,#0x00FA
- 102B 12 02 64 4285 lcall _wait
- 4286 ; ../../../include/ztex.h:241: USBCS &= ~0x08;
- 102E 90 E6 80 4287 mov dptr,#_USBCS
- 1031 E0 4288 movx a,@dptr
- 1032 54 F7 4289 anl a,#0xF7
- 1034 F0 4290 movx @dptr,a
- 1035 22 4291 ret
- 4292 ;------------------------------------------------------------
- 4293 ;Allocation info for local variables in function 'main'
- 4294 ;------------------------------------------------------------
- 4295 ;i Allocated to registers
- 4296 ;b Allocated to registers r4
- 4297 ;------------------------------------------------------------
- 4298 ; debug.c:32: void main(void)
- 4299 ; -----------------------------------------
- 4300 ; function main
- 4301 ; -----------------------------------------
- 1036 4302 _main:
- 4303 ; debug.c:38: init_USB();
- 1036 12 0E 4E 4304 lcall _init_USB
- 4305 ; debug.c:41: while (1) {
- 1039 7A 00 4306 mov r2,#0x00
- 103B 7B 00 4307 mov r3,#0x00
- 103D 4308 00102$:
- 4309 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 103D 8A 04 4310 mov ar4,r2
- 103F 90 32 6B 4311 mov dptr,#_debug_msg_buf
- 1042 EC 4312 mov a,r4
- 1043 F0 4313 movx @dptr,a
- 4314 ; debug.c:44: debug_msg_buf[1] = i >> 8;
- 1044 8B 04 4315 mov ar4,r3
- 1046 90 32 6C 4316 mov dptr,#(_debug_msg_buf + 0x0001)
- 1049 EC 4317 mov a,r4
- 104A F0 4318 movx @dptr,a
- 4319 ; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- 104B C0 02 4320 push ar2
- 104D C0 03 4321 push ar3
- 104F 12 05 B5 4322 lcall _debug_add_msg
- 1052 D0 03 4323 pop ar3
- 1054 D0 02 4324 pop ar2
- 4325 ; debug.c:46: i+=1;
- 1056 0A 4326 inc r2
- 1057 BA 00 01 4327 cjne r2,#0x00,00113$
- 105A 0B 4328 inc r3
- 105B 4329 00113$:
- 4330 ; debug.c:30: #include[ztex.h]
- 105B 7C 00 4331 mov r4,#0x00
- 105D 4332 00104$:
- 105D BC 64 00 4333 cjne r4,#0x64,00114$
- 1060 4334 00114$:
- 1060 50 DB 4335 jnc 00102$
- 1062 90 32 69 4336 mov dptr,#_debug_stack_ptr
- 1065 E0 4337 movx a,@dptr
- 1066 FD 4338 mov r5,a
- 1067 A3 4339 inc dptr
- 1068 E0 4340 movx a,@dptr
- 1069 FE 4341 mov r6,a
- 106A 8D 82 4342 mov dpl,r5
- 106C 8E 83 4343 mov dph,r6
- 106E A3 4344 inc dptr
- 106F A3 4345 inc dptr
- 1070 EC 4346 mov a,r4
- 1071 F0 4347 movx @dptr,a
- 1072 90 00 0A 4348 mov dptr,#0x000A
- 1075 C0 02 4349 push ar2
- 1077 C0 03 4350 push ar3
- 1079 C0 04 4351 push ar4
- 107B 12 02 64 4352 lcall _wait
- 107E D0 04 4353 pop ar4
- 1080 D0 03 4354 pop ar3
- 1082 D0 02 4355 pop ar2
- 1084 0C 4356 inc r4
- 1085 80 D6 4357 sjmp 00104$
- 4358 .area CSEG (CODE)
- 4359 .area CONST (CODE)
- 108B 4360 _manufacturerString:
- 108B 5A 54 45 58 4361 .ascii "ZTEX"
- 108F 00 4362 .db 0x00
- 1090 4363 _productString:
- 1090 64 65 62 75 67 20 4364 .ascii "debug for EZ-USB devices"
- 66 6F 72 20 45 5A
- 2D 55 53 42 20 64
- 65 76 69 63 65 73
- 10A8 00 4365 .db 0x00
- 10A9 4366 _configurationString:
- 10A9 28 75 6E 6B 6E 6F 4367 .ascii "(unknown)"
- 77 6E 29
- 10B2 00 4368 .db 0x00
- 10B3 4369 _PadByte:
- 10B3 00 4370 .db #0x00
- 10B4 4371 _DeviceDescriptor:
- 10B4 12 4372 .db #0x12
- 10B5 01 4373 .db #0x01
- 10B6 00 4374 .db #0x00
- 10B7 02 4375 .db #0x02
- 10B8 FF 4376 .db #0xFF
- 10B9 FF 4377 .db #0xFF
- 10BA FF 4378 .db #0xFF
- 10BB 40 4379 .db #0x40
- 10BC 1A 4380 .db #0x1A
- 10BD 22 4381 .db #0x22
- 10BE 00 4382 .db #0x00
- 10BF 01 4383 .db #0x01
- 10C0 00 4384 .db #0x00
- 10C1 00 4385 .db #0x00
- 10C2 01 4386 .db #0x01
- 10C3 02 4387 .db #0x02
- 10C4 03 4388 .db #0x03
- 10C5 01 4389 .db #0x01
- 10C6 4390 _DeviceQualifierDescriptor:
- 10C6 0A 4391 .db #0x0A
- 10C7 06 4392 .db #0x06
- 10C8 00 4393 .db #0x00
- 10C9 02 4394 .db #0x02
- 10CA FF 4395 .db #0xFF
- 10CB FF 4396 .db #0xFF
- 10CC FF 4397 .db #0xFF
- 10CD 40 4398 .db #0x40
- 10CE 01 4399 .db #0x01
- 10CF 00 4400 .db #0x00
- 10D0 4401 _HighSpeedConfigDescriptor:
- 10D0 09 4402 .db #0x09
- 10D1 02 4403 .db #0x02
- 10D2 20 4404 .db #0x20
- 10D3 00 4405 .db #0x00
- 10D4 01 4406 .db #0x01
- 10D5 01 4407 .db #0x01
- 10D6 04 4408 .db #0x04
- 10D7 C0 4409 .db #0xC0
- 10D8 32 4410 .db #0x32
- 10D9 09 4411 .db #0x09
- 10DA 04 4412 .db #0x04
- 10DB 00 4413 .db #0x00
- 10DC 00 4414 .db #0x00
- 10DD 02 4415 .db #0x02
- 10DE FF 4416 .db #0xFF
- 10DF FF 4417 .db #0xFF
- 10E0 FF 4418 .db #0xFF
- 10E1 00 4419 .db #0x00
- 10E2 07 4420 .db #0x07
- 10E3 05 4421 .db #0x05
- 10E4 81 4422 .db #0x81
- 10E5 02 4423 .db #0x02
- 10E6 00 4424 .db #0x00
- 10E7 02 4425 .db #0x02
- 10E8 00 4426 .db #0x00
- 10E9 07 4427 .db #0x07
- 10EA 05 4428 .db #0x05
- 10EB 01 4429 .db #0x01
- 10EC 02 4430 .db #0x02
- 10ED 00 4431 .db #0x00
- 10EE 02 4432 .db #0x02
- 10EF 00 4433 .db #0x00
- 10F0 4434 _HighSpeedConfigDescriptor_PadByte:
- 10F0 00 4435 .db #0x00
- 10F1 00 4436 .db 0x00
- 10F2 4437 _FullSpeedConfigDescriptor:
- 10F2 09 4438 .db #0x09
- 10F3 02 4439 .db #0x02
- 10F4 20 4440 .db #0x20
- 10F5 00 4441 .db #0x00
- 10F6 01 4442 .db #0x01
- 10F7 01 4443 .db #0x01
- 10F8 04 4444 .db #0x04
- 10F9 C0 4445 .db #0xC0
- 10FA 32 4446 .db #0x32
- 10FB 09 4447 .db #0x09
- 10FC 04 4448 .db #0x04
- 10FD 00 4449 .db #0x00
- 10FE 00 4450 .db #0x00
- 10FF 02 4451 .db #0x02
- 1100 FF 4452 .db #0xFF
- 1101 FF 4453 .db #0xFF
- 1102 FF 4454 .db #0xFF
- 1103 00 4455 .db #0x00
- 1104 07 4456 .db #0x07
- 1105 05 4457 .db #0x05
- 1106 81 4458 .db #0x81
- 1107 02 4459 .db #0x02
- 1108 40 4460 .db #0x40
- 1109 00 4461 .db #0x00
- 110A 00 4462 .db #0x00
- 110B 07 4463 .db #0x07
- 110C 05 4464 .db #0x05
- 110D 01 4465 .db #0x01
- 110E 02 4466 .db #0x02
- 110F 40 4467 .db #0x40
- 1110 00 4468 .db #0x00
- 1111 00 4469 .db #0x00
- 1112 4470 _FullSpeedConfigDescriptor_PadByte:
- 1112 00 4471 .db #0x00
- 1113 00 4472 .db 0x00
- 1114 4473 _EmptyStringDescriptor:
- 1114 04 4474 .db #0x04
- 1115 03 4475 .db #0x03
- 1116 00 4476 .db #0x00
- 1117 00 4477 .db #0x00
- 4478 .area XINIT (CODE)
- 1118 4479 __xinit__ep0_payload_remaining:
- 1118 00 00 4480 .byte #0x00,#0x00
- 111A 4481 __xinit__ep0_payload_transfer:
- 111A 00 4482 .db #0x00
- 111B 4483 __xinit__ep0_prev_setup_request:
- 111B FF 4484 .db #0xFF
- 111C 4485 __xinit__ep0_vendor_cmd_setup:
- 111C 00 4486 .db #0x00
- 111D 4487 __xinit__ISOFRAME_COUNTER:
- 111D 00 00 4488 .byte #0x00,#0x00
- 111F 00 00 4489 .byte #0x00,#0x00
- 1121 00 00 4490 .byte #0x00,#0x00
- 1123 00 00 4491 .byte #0x00,#0x00
- 4492 .area CABS (ABS,CODE)
Index: debug/Debug.class
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: debug/Debug.class
===================================================================
--- debug/Debug.class (revision 6)
+++ debug/Debug.class (nonexistent)
debug/Debug.class
Property changes :
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: debug/usb-fpga-1.20.sch
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: debug/usb-fpga-1.20.sch
===================================================================
--- debug/usb-fpga-1.20.sch (revision 6)
+++ debug/usb-fpga-1.20.sch (nonexistent)
debug/usb-fpga-1.20.sch
Property changes :
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: debug/debug.tmp.c
===================================================================
--- debug/debug.tmp.c (revision 6)
+++ debug/debug.tmp.c (nonexistent)
@@ -1,3561 +0,0 @@
-#line 1 "debug.c"
-/*!
- debug -- debug helper example
- Copyright (C) 2009-2010 ZTEX e.K.
- http://www.ztex.de
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License version 3 as
- published by the Free Software Foundation.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, see http://www.gnu.org/licenses/.
-!*/
-
-
-#line 1 "../../../include/ztex-conf.h"
-/*!
- ZTEX Firmware Kit for EZ-USB Microcontrollers
- Copyright (C) 2009-2010 ZTEX e.K.
- http://www.ztex.de
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License version 3 as
- published by the Free Software Foundation.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, see http://www.gnu.org/licenses/.
-!*/
-
-/*
- Configuration macros
-*/
-
-#line 25 "../../../include/ztex-conf.h"
-
-/*
- Don't expand macros in comments
-*/
-#line 33 "../../../include/ztex-conf.h"
-
-/*
- This macro defines the USB Vendor ID and USB Product ID (not the product ID
- from the ZTEX descriptor). The Vendor ID must be purchased from the USB-IF
- (http://www.usb.org).
-
- The default vendor ID is the ZTEX vendor ID 0x221A, default product ID is
- 0x100 which is assigned to ZTEX modules. These ID's can be shared by many
- different products which are identified by the product ID of the ZTEX
- descriptor. According to the USB-IF rules these ID's must not be used by
- hardware which is not manufactured by ZTEX. (Of course, this ID's can be
- used during the development process or for internal purposes.)
-
- Please read the http://www.ztex.de/firmware-kit/usb_ids.e.html for more
- informations about this topic.
-
- Usage:
- SET_VPID(,);
-*/
-#line 55 "../../../include/ztex-conf.h"
-
-/*
- This macro is called before FPGA Firmware is reset, e.g. to save some
- settings. After this macro is called the I/O ports are set to default
- states in order to avoid damage during / after the FPGA configuration.
- To append something to this macro use the following definition:
-#define[PRE_FPGA_RESET][PRE_FPGA_RESET
-...]
-*/
-#line 65 "../../../include/ztex-conf.h"
-
-
-/*
- This macro is called after FPGA Firmware has been configured. This is
- usually used to configure the I/O ports.
- To append something to this macro use the following definition:
-#define[POST_FW_LOAD][POST_FW_LOAD
-...]
-*/
-#line 75 "../../../include/ztex-conf.h"
-
-
-
-/*
- Add a vedor request for endpoint 0,
-
- Usage:
- ADD_EP0_VENDOR_REQUEST((,,
,,''));
- Example:
- ADD_EP0_VENDOR_REQUEST((0x33,,initHSFPGAConfiguration();,,));;
-...]
-*/
-#line 99 "../../../include/ztex-conf.h"
-
-
-/*
- Add a vedor command for endpoint 0,
-
- Usage:
- ADD_EP0_VENDOR_COMMAND((,,,,''));
- Example:
- ADD_EP0_VENDOR_COMMAND((0x33,,initHSFPGAConfiguration();,,));;
-...]
-*/
-#line 122 "../../../include/ztex-conf.h"
-
-/*
- This macro generates a EP0 stall and aborts the current loop. Stalls are usually used to indicate errors.
-*/
-#line 131 "../../../include/ztex-conf.h"
-
-
-/*
- Endoint 1,2,4,5,8 configuration:
-
- EP_CONFIG(,,,,,)
- = 1IN | 1OUT | 2 | 4 | 6 | 8 Endpoint number
- = 0 | 1 | 2 | 3 To which interface this endpoint belongs
- = BULK | ISO | INT
- = IN | OUT
- = 512 | 1024
- = 1 | 2 | 3 | 4
- Example: EP_CONFIG(2,0,ISO,OUT,1024,4);
- Important note: No spaces next to the commas
-
-
- Endpoint 1 configuration:
-
- These Endpoints are defined by default as bulk endpoints and are assigned to interface 0.
- Endpoint size is always 64 bytes, but reported Endpoint size will be 512 bytes for USB 2.0 compliance.
-
- These Endpoints can be redefined using EP_CONFIG or using:
-
- EP1IN_CONFIG();
- = 0 | 1 | 2 | 3 Interface to which EP1IN belongs; default: 0
- EP1OUT_CONFIG();
- = 0 | 1 | 2 | 3 Interface to which EP1OUT belongs; default: 0
- EP1_CONFIG();
- = 0 | 1 | 2 | 3 Interface to which EP1IN and EP1OUT belongs; default: 0
-
- The following (maximum) configurations are possible:
- EP2 EP4 EP6 EP8
- 2x512 2x512 2x512 2x512
- 2x512 2x512 4x512
- 2x512 2x512 2x1024
- 4x512 2x512 2x512
- 4x512 4x512
- 4x512 2x1024
- 2x1024 2x512 2x512
- 2x1024 4x512
- 2x1024 2x1024
- 3x512 3x512 2x512
- 3x1024 2x512
- 4x1024
-*/
-#line 215 "../../../include/ztex-conf.h"
-
-#line 220 "../../../include/ztex-conf.h"
-
-#line 176 "../../../include/ztex-conf.h"
-
-#line 176 "../../../include/ztex-conf.h"
-
-#line 223 "../../../include/ztex-conf.h"
-
-/*
- ISO and INT Transactions per microframe:
-
- Default value is 1 for all endpoints.
-
- EP_PPMF(,)
- = 1IN | 1OUT | 2 | 4 | 6 | 8 Endpoint
- = 1 | 2 | 3 Transactions per microframe
-
- Example: EP_PPMF(2,3);
- Important note: No spaces next to the commas
-*/
-#line 251 "../../../include/ztex-conf.h"
-
-#line 236 "../../../include/ztex-conf.h"
-
-#line 236 "../../../include/ztex-conf.h"
-
-#line 236 "../../../include/ztex-conf.h"
-
-#line 236 "../../../include/ztex-conf.h"
-
-#line 236 "../../../include/ztex-conf.h"
-
-#line 236 "../../../include/ztex-conf.h"
-
-#line 258 "../../../include/ztex-conf.h"
-
-/*
- Polling interval in microframes for INT transactions:
-
- Default value is 1 for all endpoints.
-
- EP_POLL(,)
- = 1IN | 1OUT | 2 | 4 | 6 | 8 Endpoint
- = 1 | 2 | 3 Polling interval
-
- Example: EP_POLL(2,1);
- Important note: No spaces next to the commas
-*/
-#line 281 "../../../include/ztex-conf.h"
-
-#line 271 "../../../include/ztex-conf.h"
-
-#line 271 "../../../include/ztex-conf.h"
-
-#line 271 "../../../include/ztex-conf.h"
-
-#line 271 "../../../include/ztex-conf.h"
-
-#line 271 "../../../include/ztex-conf.h"
-
-#line 271 "../../../include/ztex-conf.h"
-
-#line 288 "../../../include/ztex-conf.h"
-
-
-
-/*
- Settings which depends PRODUCT_ID, e.g extra capabilities.
- Overwrite this macros as desired.
-*/
-#line 307 "../../../include/ztex-conf.h"
-
-#line 309 "../../../include/ztex-conf.h"
-
-#line 314 "../../../include/ztex-conf.h"
-
-
-/*
- Identify as ZTEX USB FPGA Module 1.0
- Usage: IDENTITY_UFM_1_0(..,);
-*/
-#line 327 "../../../include/ztex-conf.h"
-
-
-/*
- Identify as ZTEX USB FPGA Module 1.1
- Usage: IDENTITY_UFM_1_1(..,);
-*/
-#line 340 "../../../include/ztex-conf.h"
-
-
-/*
- Identify as ZTEX USB FPGA Module 1.2
- Usage: IDENTITY_UFM_1_2(..,);
-*/
-#line 353 "../../../include/ztex-conf.h"
-
-/*
- Identify as ZTEX USB FPGA Module 1.10
- Usage: IDENTITY_UFM_1_10(..,);
-*/
-#line 365 "../../../include/ztex-conf.h"
-
-/*
- Identify as ZTEX USB FPGA Module 1.11
- Usage: IDENTITY_UFM_1_10(..,);
-*/
-#line 377 "../../../include/ztex-conf.h"
-
-
-/*
- Identify as ZTEX USB Module 1.0
- Usage: IDENTITY_UM_1_0(..,);
-*/
-#line 390 "../../../include/ztex-conf.h"
-
-
-/*
- This macro defines the Manufacturer string. Limited to 31 characters.
-*/
-#line 396 "../../../include/ztex-conf.h"
-
-
-/*
- This macro defines the Product string. Limited to 31 characters.
-*/
-#line 402 "../../../include/ztex-conf.h"
-
-
-/*
- This macro defines the Configuration string. Limited to 31 characters.
-*/
-#line 408 "../../../include/ztex-conf.h"
-
-
-/*
- This macro enables defines the Configuration string. Limited to 31 characters.
-*/
-#line 414 "../../../include/ztex-conf.h"
-
-
-/*
- This macro disables EEPROM interface and certain I2C functions (enabled by default)
- Usage: DISABLE_EEPROM;
-*/
-#line 421 "../../../include/ztex-conf.h"
-
-
-/*
- This macro enables the Flash interface, if available
- Usage: ENABLE_FLASH;
-*/
-#line 428 "../../../include/ztex-conf.h"
-
-/*
- This macro enables the FPGA configuration using a bitstream from the Flash memory
- Usage: ENABLE_FLASH_BITSTREAM;
-*/
-#line 434 "../../../include/ztex-conf.h"
-
-/*
- This enables the debug helper. The debug helper consists in a stack of messages which can be read out from host software.
- See ../examples/all/debug/Readme.
- Usage: ENABLE_DEBUG(,);
- number of messages in stack
- message size in bytes
-*/
-#line 445 "../../../include/ztex-conf.h"
-
-#line 30 "../../../include/ztex-conf.h"
- // Loads the configuration macros, see ztex-conf.h for the available macros
-#line 1 "../../../include/ztex-utils.h"
-/*!
- ZTEX Firmware Kit for EZ-USB Microcontrollers
- Copyright (C) 2009-2010 ZTEX e.K.
- http://www.ztex.de
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License version 3 as
- published by the Free Software Foundation.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, see http://www.gnu.org/licenses/.
-!*/
-
-/*
- Various utility routines
-*/
-
-#line 25 "../../../include/ztex-utils.h"
-
-#line 34 "../../../include/ztex-utils.h"
-
-#line 39 "../../../include/ztex-utils.h"
-
-#line 44 "../../../include/ztex-utils.h"
-
-typedef unsigned char BYTE;
-typedef unsigned short WORD;
-typedef unsigned long DWORD;
-
-#line 1 "../../../include/ezregs.h"
-/*!
- ZTEX Firmware Kit for EZ-USB Microcontrollers
- Copyright (C) 2009-2010 ZTEX e.K.
- http://www.ztex.de
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License version 3 as
- published by the Free Software Foundation.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, see http://www.gnu.org/licenses/.
-!*/
-
-/*
- EZ-USB registers
-*/
-
-#line 25 "../../../include/ezregs.h"
-
-#line 1 "../../../include/ztex-utils.h"
-/*!
- ZTEX Firmware Kit for EZ-USB Microcontrollers
- Copyright (C) 2009-2010 ZTEX e.K.
- http://www.ztex.de
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License version 3 as
- published by the Free Software Foundation.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, see http://www.gnu.org/licenses/.
-!*/
-
-/*
- Various utility routines
-*/
-
-#line 26 "../../../include/ezregs.h"
-
-
-/* This syncronization delay is valid if <= 5/3*,
- i.e. if the Interface Clock is equal or greater than 28.8 MHz
-
- The formula for the synchonization delay is:
-
- / \
- >= 1.5 * | ----------------- + 1 |
- \ /
-
- Overwrite this macro if this formula is not satisfied
-*/
-
-#line 49 "../../../include/ezregs.h"
-
-#line 30 "../../../include/ztex-conf.h"
-// GPIF Waveform Memories
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE400 volatile BYTE GPIF_WAVE_DATA[128]; // GPIF Waveform Descriptor 0, 1, 2 3, data
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE400 volatile BYTE GPIF_WAVE0_DATA[32]; // GPIF Waveform Descriptor 0 data
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE420 volatile BYTE GPIF_WAVE1_DATA[32]; // GPIF Waveform Descriptor 1 data
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE440 volatile BYTE GPIF_WAVE2_DATA[32]; // GPIF Waveform Descriptor 2 data
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE460 volatile BYTE GPIF_WAVE3_DATA[32]; // GPIF Waveform Descriptor 3 data
-#line 56 "../../../include/ezregs.h"
-
-#line 30 "../../../include/ztex-conf.h"
-// General Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE50D volatile BYTE GPCR2; // General Purpose Configuration Register 2
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE600 volatile BYTE CPUCS; // Control & Status
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE601 volatile BYTE IFCONFIG; // Interface Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE602 volatile BYTE PINFLAGSAB; // FIFO FLAGA and FLAGB Assignments
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE603 volatile BYTE PINFLAGSCD; // FIFO FLAGC and FLAGD Assignments
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE604 volatile BYTE FIFORESET; // Restore FIFOS to default state
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE605 volatile BYTE BREAKPT; // Breakpoint
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE606 volatile BYTE BPADDRH; // Breakpoint Address H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE607 volatile BYTE BPADDRL; // Breakpoint Address L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE608 volatile BYTE UART230; // 230 Kbaud clock for T0,T1,T2
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE609 volatile BYTE FIFOPINPOLAR; // FIFO polarities
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE60A volatile BYTE REVID; // Chip Revision
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE60B volatile BYTE REVCTL; // Chip Revision Control
-#line 71 "../../../include/ezregs.h"
-
-#line 30 "../../../include/ztex-conf.h"
-// UDMA
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE60C volatile BYTE GPIFHOLDAMOUNT; // MSTB Hold Time (for UDMA)
-#line 74 "../../../include/ezregs.h"
-
-#line 30 "../../../include/ztex-conf.h"
-// Endpoint Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE610 volatile BYTE EP1OUTCFG; // Endpoint 1-OUT Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE611 volatile BYTE EP1INCFG; // Endpoint 1-IN Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE612 volatile BYTE EP2CFG; // Endpoint 2 Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE613 volatile BYTE EP4CFG; // Endpoint 4 Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE614 volatile BYTE EP6CFG; // Endpoint 6 Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE615 volatile BYTE EP8CFG; // Endpoint 8 Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE618 volatile BYTE EP2FIFOCFG; // Endpoint 2 FIFO configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE619 volatile BYTE EP4FIFOCFG; // Endpoint 4 FIFO configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE61A volatile BYTE EP6FIFOCFG; // Endpoint 6 FIFO configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE61B volatile BYTE EP8FIFOCFG; // Endpoint 8 FIFO configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE620 volatile BYTE EP2AUTOINLENH; // Endpoint 2 Packet Length H (IN only)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE621 volatile BYTE EP2AUTOINLENL; // Endpoint 2 Packet Length L (IN only)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE622 volatile BYTE EP4AUTOINLENH; // Endpoint 4 Packet Length H (IN only)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE623 volatile BYTE EP4AUTOINLENL; // Endpoint 4 Packet Length L (IN only)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE624 volatile BYTE EP6AUTOINLENH; // Endpoint 6 Packet Length H (IN only)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE625 volatile BYTE EP6AUTOINLENL; // Endpoint 6 Packet Length L (IN only)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE626 volatile BYTE EP8AUTOINLENH; // Endpoint 8 Packet Length H (IN only)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE627 volatile BYTE EP8AUTOINLENL; // Endpoint 8 Packet Length L (IN only)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE628 volatile BYTE ECCCFG; // ECC Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE629 volatile BYTE ECCRESET; // ECC Reset
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE62A volatile BYTE ECC1B0; // ECC1 Byte 0 Address
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE62B volatile BYTE ECC1B1; // ECC1 Byte 1 Address
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE62C volatile BYTE ECC1B2; // ECC1 Byte 2 Address
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE62D volatile BYTE ECC2B0; // ECC2 Byte 0 Address
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE62E volatile BYTE ECC2B1; // ECC2 Byte 1 Address
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE62F volatile BYTE ECC2B2; // ECC2 Byte 2 Address
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE630 volatile BYTE EP2FIFOPFH; // EP2 Programmable Flag trigger H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE631 volatile BYTE EP2FIFOPFL; // EP2 Programmable Flag trigger L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE632 volatile BYTE EP4FIFOPFH; // EP4 Programmable Flag trigger H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE633 volatile BYTE EP4FIFOPFL; // EP4 Programmable Flag trigger L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE634 volatile BYTE EP6FIFOPFH; // EP6 Programmable Flag trigger H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE635 volatile BYTE EP6FIFOPFL; // EP6 Programmable Flag trigger L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE636 volatile BYTE EP8FIFOPFH; // EP8 Programmable Flag trigger H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE637 volatile BYTE EP8FIFOPFL; // EP8 Programmable Flag trigger L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE640 volatile BYTE EP2ISOINPKTS; // EP2 (if ISO) IN Packets per frame (1-3)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE641 volatile BYTE EP4ISOINPKTS; // EP4 (if ISO) IN Packets per frame (1-3)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE642 volatile BYTE EP6ISOINPKTS; // EP6 (if ISO) IN Packets per frame (1-3)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE643 volatile BYTE EP8ISOINPKTS; // EP8 (if ISO) IN Packets per frame (1-3)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE648 volatile BYTE INPKTEND; // Force IN Packet End
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE649 volatile BYTE OUTPKTEND; // Force OUT Packet End
-#line 116 "../../../include/ezregs.h"
-
-#line 30 "../../../include/ztex-conf.h"
-// Interrupts
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE650 volatile BYTE EP2FIFOIE; // Endpoint 2 Flag Interrupt Enable
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE651 volatile BYTE EP2FIFOIRQ; // Endpoint 2 Flag Interrupt Request
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE652 volatile BYTE EP4FIFOIE; // Endpoint 4 Flag Interrupt Enable
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE653 volatile BYTE EP4FIFOIRQ; // Endpoint 4 Flag Interrupt Request
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE654 volatile BYTE EP6FIFOIE; // Endpoint 6 Flag Interrupt Enable
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE655 volatile BYTE EP6FIFOIRQ; // Endpoint 6 Flag Interrupt Request
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE656 volatile BYTE EP8FIFOIE; // Endpoint 8 Flag Interrupt Enable
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE657 volatile BYTE EP8FIFOIRQ; // Endpoint 8 Flag Interrupt Request
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE658 volatile BYTE IBNIE; // IN-BULK-NAK Interrupt Enable
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE659 volatile BYTE IBNIRQ; // IN-BULK-NAK interrupt Request
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE65A volatile BYTE NAKIE; // Endpoint Ping NAK interrupt Enable
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE65B volatile BYTE NAKIRQ; // Endpoint Ping NAK interrupt Request
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE65C volatile BYTE USBIE; // USB Int Enables
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE65D volatile BYTE USBIRQ; // USB Interrupt Requests
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE65E volatile BYTE EPIE; // Endpoint Interrupt Enables
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE65F volatile BYTE EPIRQ; // Endpoint Interrupt Requests
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE660 volatile BYTE GPIFIE; // GPIF Interrupt Enable
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE661 volatile BYTE GPIFIRQ; // GPIF Interrupt Request
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE662 volatile BYTE USBERRIE; // USB Error Interrupt Enables
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE663 volatile BYTE USBERRIRQ; // USB Error Interrupt Requests
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE664 volatile BYTE ERRCNTLIM; // USB Error counter and limit
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE665 volatile BYTE CLRERRCNT; // Clear Error Counter EC[3..0]
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE666 volatile BYTE INT2IVEC; // Interupt 2 (USB) Autovector
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE667 volatile BYTE INT4IVEC; // Interupt 4 (FIFOS & GPIF) Autovector
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE668 volatile BYTE INTSETUP; // Interrupt 2&4 Setup
-#line 143 "../../../include/ezregs.h"
-
-#line 30 "../../../include/ztex-conf.h"
-// Input/Output
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE670 volatile BYTE PORTACFG; // I/O PORTA Alternate Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE671 volatile BYTE PORTCCFG; // I/O PORTC Alternate Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE672 volatile BYTE PORTECFG; // I/O PORTE Alternate Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE678 volatile BYTE I2CS; // Control & Status
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE679 volatile BYTE I2DAT; // Data
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE67A volatile BYTE I2CTL; // I2C Control
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE67B volatile BYTE XAUTODAT1; // Autoptr1 MOVX access
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE67B volatile BYTE EXTAUTODAT1; // Autoptr1 MOVX access
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE67C volatile BYTE XAUTODAT2; // Autoptr2 MOVX access
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE67C volatile BYTE EXTAUTODAT2; // Autoptr2 MOVX access
-#line 155 "../../../include/ezregs.h"
-
-#line 30 "../../../include/ztex-conf.h"
-// UDMA CRC
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE67D volatile BYTE UDMACRCH; // UDMA CRC MSB
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE67E volatile BYTE UDMACRCL; // UDMA CRC LSB
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE67F volatile BYTE UDMACRCQUALIFIER; // UDMA CRC Qualifier
-#line 160 "../../../include/ezregs.h"
-
-#line 30 "../../../include/ztex-conf.h"
-// USB Control
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE680 volatile BYTE USBCS; // USB Control & Status
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE681 volatile BYTE SUSPEND; // Put chip into suspend
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE682 volatile BYTE WAKEUPCS; // Wakeup source and polarity
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE683 volatile BYTE TOGCTL; // Toggle Control
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE684 volatile BYTE USBFRAMEH; // USB Frame count H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE685 volatile BYTE USBFRAMEL; // USB Frame count L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE686 volatile BYTE MICROFRAME; // Microframe count, 0-7
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE687 volatile BYTE FNADDR; // USB Function address
-#line 170 "../../../include/ezregs.h"
-
-#line 30 "../../../include/ztex-conf.h"
-// Endpoints
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE68A volatile BYTE EP0BCH; // Endpoint 0 Byte Count H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE68B volatile BYTE EP0BCL; // Endpoint 0 Byte Count L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE68D volatile BYTE EP1OUTBC; // Endpoint 1 OUT Byte Count
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE68F volatile BYTE EP1INBC; // Endpoint 1 IN Byte Count
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE690 volatile BYTE EP2BCH; // Endpoint 2 Byte Count H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE691 volatile BYTE EP2BCL; // Endpoint 2 Byte Count L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE694 volatile BYTE EP4BCH; // Endpoint 4 Byte Count H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE695 volatile BYTE EP4BCL; // Endpoint 4 Byte Count L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE698 volatile BYTE EP6BCH; // Endpoint 6 Byte Count H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE699 volatile BYTE EP6BCL; // Endpoint 6 Byte Count L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE69C volatile BYTE EP8BCH; // Endpoint 8 Byte Count H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE69D volatile BYTE EP8BCL; // Endpoint 8 Byte Count L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6A0 volatile BYTE EP0CS; // Endpoint Control and Status
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6A1 volatile BYTE EP1OUTCS; // Endpoint 1 OUT Control and Status
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6A2 volatile BYTE EP1INCS; // Endpoint 1 IN Control and Status
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6A3 volatile BYTE EPXCS[4]; // Endpoint 2-8 Control and Status
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6A3 volatile BYTE EP2CS; // Endpoint 2 Control and Status
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6A4 volatile BYTE EP4CS; // Endpoint 4 Control and Status
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6A5 volatile BYTE EP6CS; // Endpoint 6 Control and Status
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6A6 volatile BYTE EP8CS; // Endpoint 8 Control and Status
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6A7 volatile BYTE EP2FIFOFLGS; // Endpoint 2 Flags
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6A8 volatile BYTE EP4FIFOFLGS; // Endpoint 4 Flags
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6A9 volatile BYTE EP6FIFOFLGS; // Endpoint 6 Flags
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6AA volatile BYTE EP8FIFOFLGS; // Endpoint 8 Flags
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6AB volatile BYTE EP2FIFOBCH; // EP2 FIFO total byte count H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6AC volatile BYTE EP2FIFOBCL; // EP2 FIFO total byte count L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6AD volatile BYTE EP4FIFOBCH; // EP4 FIFO total byte count H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6AE volatile BYTE EP4FIFOBCL; // EP4 FIFO total byte count L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6AF volatile BYTE EP6FIFOBCH; // EP6 FIFO total byte count H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6B0 volatile BYTE EP6FIFOBCL; // EP6 FIFO total byte count L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6B1 volatile BYTE EP8FIFOBCH; // EP8 FIFO total byte count H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6B2 volatile BYTE EP8FIFOBCL; // EP8 FIFO total byte count L
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6B3 volatile BYTE SUDPTRH; // Setup Data Pointer high address byte
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6B4 volatile BYTE SUDPTRL; // Setup Data Pointer low address byte
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6B5 volatile BYTE SUDPTRCTL; // Setup Data Pointer Auto Mode
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6B8 volatile BYTE SETUPDAT[8]; // 8 bytes of SETUP data
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6B8 volatile BYTE bmRequestType; // Request Type, Direction, and Recipient
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6B9 volatile BYTE bRequest; // The actual request
-#line 210 "../../../include/ezregs.h"
-xdata at 0xE6BA volatile BYTE wValueL;
-xdata at 0xE6BB volatile BYTE wValueH;
-xdata at 0xE6BC volatile BYTE wIndexL;
-xdata at 0xE6BD volatile BYTE wIndexH;
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6BE volatile BYTE wLengthL; // Number of bytes to transfer if there is a data phase
-#line 215 "../../../include/ezregs.h"
-xdata at 0xE6BF volatile BYTE wLengthH;
-
-#line 30 "../../../include/ztex-conf.h"
-// GPIF
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6C0 volatile BYTE GPIFWFSELECT; // Waveform Selector
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6C1 volatile BYTE GPIFIDLECS; // GPIF Done, GPIF IDLE drive mode
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6C2 volatile BYTE GPIFIDLECTL; // Inactive Bus, CTL states
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6C3 volatile BYTE GPIFCTLCFG; // CTL OUT pin drive
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6C4 volatile BYTE GPIFADRH; // GPIF Address H
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6C5 volatile BYTE GPIFADRL; // GPIF Address L
-#line 224 "../../../include/ezregs.h"
-
-#line 30 "../../../include/ztex-conf.h"
-// FLOWSTATE
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6C6 volatile BYTE FLOWSTATE; // Flowstate Enable and Selector
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6C7 volatile BYTE FLOWLOGIC; // Flowstate Logic
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6C8 volatile BYTE FLOWEQ0CTL; // CTL-Pin States in Flowstate (when Logic = 0)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6C9 volatile BYTE FLOWEQ1CTL; // CTL-Pin States in Flowstate (when Logic = 1)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6CA volatile BYTE FLOWHOLDOFF; // Holdoff Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6CB volatile BYTE FLOWSTB; // Flowstate Strobe Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6CC volatile BYTE FLOWSTBEDGE; // Flowstate Rising/Falling Edge Configuration
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6CD volatile BYTE FLOWSTBHPERIOD; // Master-Strobe Half-Period
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6CE volatile BYTE GPIFTCB3; // GPIF Transaction Count Byte 3
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6CF volatile BYTE GPIFTCB2; // GPIF Transaction Count Byte 2
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6D0 volatile BYTE GPIFTCB1; // GPIF Transaction Count Byte 1
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6D1 volatile BYTE GPIFTCB0; // GPIF Transaction Count Byte 0
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6D2 volatile BYTE EP2GPIFFLGSEL; // EP2 GPIF Flag select
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6D3 volatile BYTE EP2GPIFPFSTOP; // Stop GPIF EP2 transaction on prog. flag
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6D4 volatile BYTE EP2GPIFTRIG; // EP2 FIFO Trigger
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6DA volatile BYTE EP4GPIFFLGSEL; // EP4 GPIF Flag select
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6DB volatile BYTE EP4GPIFPFSTOP; // Stop GPIF EP4 transaction on prog. flag
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6DC volatile BYTE EP4GPIFTRIG; // EP4 FIFO Trigger
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6E2 volatile BYTE EP6GPIFFLGSEL; // EP6 GPIF Flag select
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6E3 volatile BYTE EP6GPIFPFSTOP; // Stop GPIF EP6 transaction on prog. flag
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6E4 volatile BYTE EP6GPIFTRIG; // EP6 FIFO Trigger
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6EA volatile BYTE EP8GPIFFLGSEL; // EP8 GPIF Flag select
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6EB volatile BYTE EP8GPIFPFSTOP; // Stop GPIF EP8 transaction on prog. flag
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6EC volatile BYTE EP8GPIFTRIG; // EP8 FIFO Trigger
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6F0 volatile BYTE XGPIFSGLDATH; // GPIF Data H (16-bit mode only)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6F1 volatile BYTE XGPIFSGLDATLX; // Read/Write GPIF Data L & trigger transac
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6F2 volatile BYTE XGPIFSGLDATLNOX; // Read GPIF Data L, no transac trigger
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6F3 volatile BYTE GPIFREADYCFG; // Internal RDY,Sync/Async, RDY5CFG
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6F4 volatile BYTE GPIFREADYSTAT; // RDY pin states
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE6F5 volatile BYTE GPIFABORT; // Abort GPIF cycles
-#line 256 "../../../include/ezregs.h"
-
-#line 30 "../../../include/ztex-conf.h"
-// Endpoint Buffers
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE740 volatile BYTE EP0BUF[64]; // EP0 IN-OUT buffer
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE780 volatile BYTE EP1OUTBUF[64]; // EP1-OUT buffer
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xE7C0 volatile BYTE EP1INBUF[64]; // EP1-IN buffer
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xF000 volatile BYTE EP2FIFOBUF[1024]; // 512/1024-byte EP2 buffer (IN or OUT)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xF400 volatile BYTE EP4FIFOBUF[1024]; // 512 byte EP4 buffer (IN or OUT)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xF800 volatile BYTE EP6FIFOBUF[1024]; // 512/1024-byte EP6 buffer (IN or OUT)
-#line 30 "../../../include/ztex-conf.h"
-xdata at 0xFC00 volatile BYTE EP8FIFOBUF[1024]; // 512 byte EP8 buffer (IN or OUT)
-#line 265 "../../../include/ezregs.h"
-
-
-#line 30 "../../../include/ztex-conf.h"
-// Special Function Registers (SFRs)
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x80 IOA; // Port A
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x80+0 IOA0; // Port A bit 0
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x80+1 IOA1; // Port A bit 1
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x80+2 IOA2; // Port A bit 2
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x80+3 IOA3; // Port A bit 3
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x80+4 IOA4; // Port A bit 4
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x80+5 IOA5; // Port A bit 5
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x80+6 IOA6; // Port A bit 6
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x80+7 IOA7; // Port A bit 7
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x81 SP; // Stack Pointer
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x82 DPL0; // Data Pointer 0 L
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x83 DPH0; // Data Pointer 0 H
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x84 DPL1; // Data Pointer 1 L
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x85 DPH1; // Data Pointer 0 H
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x86 DPS; // Data Pointer 0/1 select
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x87 PCON; // Power Control
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x88 TCON; // Timer/Counter Control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x88+0 IT0; // Interrupt 0 Type select
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x88+1 IE0; // Interrupt 0 Edge detect
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x88+2 IT1; // Interrupt 1 Type select
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x88+3 IE1; // Interrupt 1 Edge detect
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x88+4 TR0; // Timer 0 Run Control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x88+5 TF0; // Timer 0 Overflow Flag
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x88+6 TR1; // Timer 1 Run Control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x88+7 TF1; // Timer 1 Overflow Flag
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x89 TMOD; // Timer/Counter Mode Control
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x8A TL0; // Timer 0 reload L
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x8B TL1; // Timer 1 reload L
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x8C TH0; // Timer 0 reload H
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x8D TH1; // Timer 1 reload H
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x8E CKCON; // Clock Control
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x90 IOB; // Port B
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x90+0 IOB0; // Port B bit 0
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x90+1 IOB1; // Port B bit 1
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x90+2 IOB2; // Port B bit 2
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x90+3 IOB3; // Port B bit 3
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x90+4 IOB4; // Port B bit 4
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x90+5 IOB5; // Port B bit 5
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x90+6 IOB6; // Port B bit 6
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x90+7 IOB7; // Port B bit 7
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x91 EXIF; // External Interrupt Flag(s)
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x92 MPAGE; // Upper Addr Byte of MOVX using @R0 / @R1
-#line 310 "../../../include/ezregs.h"
-__sfr __at (0x92) _XPAGE;
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x98 SCON0; // Serial Port 0 Control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x98+0 RI_0; // Recive Interrupt Flag
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x98+1 TI_0; // Transmit Interrupt Flag
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x98+2 RB8_0; // State of the 9th bit / Stop Bit received
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x98+3 TB8_0; // State of the 9th bit transmitted
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x98+4 REN_0; // Receive enable
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x98+5 SM2_0; // Multiprocessor communication enable
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x98+6 SM1_0; // Serial Port 0 mode bit 1
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0x98+7 SM0_0; // Serial Port 0 mode bit 0
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x99 SBUF0; // Serial Port 0 Data Buffer
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x9A AUTOPTRH1; // Autopointer 1 Address H
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x9B AUTOPTRL1; // Autopointer 1 Address L
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x9D AUTOPTRH2; // Autopointer 2 Address H
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0x9E AUTOPTRL2; // Autopointer 2 Address L
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xA0 IOC; // Port C
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA0+0 IOC0; // Port C bit 0
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA0+1 IOC1; // Port C bit 1
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA0+2 IOC2; // Port C bit 2
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA0+3 IOC3; // Port C bit 3
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA0+4 IOC4; // Port C bit 4
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA0+5 IOC5; // Port C bit 5
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA0+6 IOC6; // Port C bit 6
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA0+7 IOC7; // Port C bit 7
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xA1 INT2CLR; // Interrupt 2 clear
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xA2 INT4CLR; // Interrupt 4clear
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xA8 IE; // Interrupt Enable
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA8+0 EX0; // Enable external interrupt 0
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA8+1 ET0; // Enable Timer 0 interrupt
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA8+2 EX1; // Enable external interrupt 1
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA8+3 ET1; // Enable Timer 1 interrupt
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA8+4 ES0; // Enable Serial Port 0 interrupt
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA8+5 ET2; // Enable Timer 2 interrupt
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA8+6 ES1; // Enable Serial Port 1 interrupt
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xA8+7 EA; // Global interrupt enable
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xAA EP2468STAT; // Endpoint 2,4,6,8 status flags
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xAB EP24FIFOFLGS; // Endpoint 2,4 slave FIFO flags
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xAC EP68FIFOFLGS; // Endpoint 6,8 slave FIFO flags
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xAF AUTOPTRSETUP; // Autopointer 1&2 set-up
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xB0 IOD; // Port D
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB0+0 IOD0; // Port D bit 0
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB0+1 IOD1; // Port D bit 1
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB0+2 IOD2; // Port D bit 2
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB0+3 IOD3; // Port D bit 3
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB0+4 IOD4; // Port D bit 4
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB0+5 IOD5; // Port D bit 5
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB0+6 IOD6; // Port D bit 6
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB0+7 IOD7; // Port D bit 7
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xB1 IOE; // Port E
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xB2 OEA; // Port A Output Enable
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xB3 OEB; // Port B Output Enable
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xB4 OEC; // Port C Output Enable
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xB5 OED; // Port D Output Enable
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xB6 OEE; // Port E Output Enable
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xB8 IP; // Interrupt priority
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB8+0 PX0; // External interrupt 0 priority control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB8+1 PT0; // Timer 0 interrupt priority control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB8+2 PX1; // External interrupt 1 priority control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB8+3 PT1; // Timer 1 interrupt priority control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB8+4 PS0; // Serial Port 0 interrupt priority control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB8+5 PT2; // Timer 2 interrupt priority control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xB8+6 PS1; // Serial Port 1 interrupt priority control
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xBA EP01STAT; // Endpoint 0&1 Status
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xBB GPIFTRIG; // Endpoint 2,4,6,8 GPIF slafe FIFO Trigger
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xBD GPIFSGLDATH; // GPIF Data H (16-bit mode only)
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xBE GPIFSGLDATLX; // GPIF Data L w/ Trigger
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xBF GPIFSGLDATLNOX; // GPIF Data L w/ No Trigger
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xC0 SCON1; // Serial Port 1 Control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC0+0 RI_1; // Recive Interrupt Flag
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC0+1 TI_1; // Transmit Interrupt Flag
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC0+2 RB8_1; // State of the 9th bit / Stop Bit received
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC0+3 TB8_1; // State of the 9th bit transmitted
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC0+4 REN_1; // Receive enable
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC0+5 SM2_1; // Multiprocessor communication enable
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC0+6 SM1_1; // Serial Port 1 mode bit 1
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC0+7 SM0_1; // Serial Port 1 mode bit 0
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xC1 SBUF1; // Serial Port 1 Data Buffer
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xC8 T2CON; // Timer/Counter 2 Control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC8+0 CPRL2; // Capture/reload flag
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC8+1 CT2; // Counter/Timer select
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC8+2 TR2; // Timer 2 run control flag
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC8+3 EXEN2; // Timer 2 external enable
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC8+4 TCLK; // Transmit clock flag
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC8+5 RCLK; // Receive clock flag
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC8+6 EXF2; // Timer 2 external flag
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xC8+7 TF2; // Timer 2 overflow flag
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xCA RCAP2L; // Capture for Timer 2, auto-reload, up-counter L
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xCB RCAP2H; // Capture for Timer 2, auto-reload, up-counter H
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xCC TL2; // Timer 2 reload L
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xCD TH2; // Timer 2 reload H
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xD0 PSW; // Program Status Word
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xD0+0 PF; // Parity flag
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xD0+1 F1; // User flag 1
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xD0+2 OV; // Overflow flag
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xD0+3 RS0; // Register bank select bit 0
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xD0+4 RS1; // Register bank select bit 1
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xD0+5 F0; // User flag 0
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xD0+6 AC; // Auxiliary carry flag
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xD0+7 CY; // Carry flag
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xD8 EICON; // External Interrupt Control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xD8+3 INT6; // External interrupt 6
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xD8+4 RESI; // Wakeup interrupt flag
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xD8+5 ERESI; // Enable Resume interrupt
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xD8+7 SMOD1; // Serial Port 1 baud rate doubler enable
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xE0 ACC; // Accumulator
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xE0+0 ACC0; // Accumulator bit 0
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xE0+1 ACC1; // Accumulator bit 1
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xE0+2 ACC2; // Accumulator bit 2
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xE0+3 ACC3; // Accumulator bit 3
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xE0+4 ACC4; // Accumulator bit 4
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xE0+5 ACC5; // Accumulator bit 5
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xE0+6 ACC6; // Accumulator bit 6
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xE0+7 ACC7; // Accumulator bit 7
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xE8 EIE; // External Interrupt Enable(s)
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xE8+0 EUSB; // Enable USB interrupt (USBINT)
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xE8+1 EI2C; // Enable I2C bus interrupt (I2CINT)
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xE8+2 EIEX4; // Enable external interrupt 4
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xE8+3 EIEX5; // Enable external interrupt 5
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xE8+4 EIEX6; // Enable external interrupt 6
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xF0 BREG; // B Register
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xF0+0 BREG0; // B Register bit 0
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xF0+1 BREG1; // B Register bit 1
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xF0+2 BREG2; // B Register bit 2
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xF0+3 BREG3; // B Register bit 3
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xF0+4 BREG4; // B Register bit 4
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xF0+5 BREG5; // B Register bit 5
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xF0+6 BREG6; // B Register bit 6
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xF0+7 BREG7; // B Register bit 7
-#line 30 "../../../include/ztex-conf.h"
-sfr at 0xF8 EIP; // External Interrupt Priority Control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xF8+0 PUSB; // USBINT priority control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xF8+1 PI2C; // I2CINT priority control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xF8+2 EIPX4; // External interrupt 4 priority control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xF8+3 EIPX5; // External interrupt 5 priority control
-#line 30 "../../../include/ztex-conf.h"
-sbit at 0xF8+4 EIPX6; // External interrupt 6 priority control
-#line 444 "../../../include/ezregs.h"
-
-#line 49 "../../../include/ztex-utils.h"
-
-#line 1 "../../../include/ezintavecs.h"
-/*!
- ZTEX Firmware Kit for EZ-USB Microcontrollers
- Copyright (C) 2009-2010 ZTEX e.K.
- http://www.ztex.de
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License version 3 as
- published by the Free Software Foundation.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, see http://www.gnu.org/licenses/.
-!*/
-
-/*
- EZ-USB Autovectors
-*/
-
-#line 25 "../../../include/ezintavecs.h"
-
-#line 1 "../../../include/ztex-utils.h"
-/*!
- ZTEX Firmware Kit for EZ-USB Microcontrollers
- Copyright (C) 2009-2010 ZTEX e.K.
- http://www.ztex.de
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License version 3 as
- published by the Free Software Foundation.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, see http://www.gnu.org/licenses/.
-!*/
-
-/*
- Various utility routines
-*/
-
-#line 26 "../../../include/ezintavecs.h"
-
-
-struct INTVEC {
- BYTE op;
- BYTE addrH;
- BYTE addrL;
-};
-
-#line 87 "../../../include/ezintavecs.h"
-
-#line 34 "../../../include/ezintavecs.h"
-xdata at 0x0003 struct INTVEC INT0VEC_IE0;
-xdata at 0x000b struct INTVEC INT1VEC_T0;
-xdata at 0x0013 struct INTVEC INT2VEC_IE1;
-xdata at 0x001b struct INTVEC INT3VEC_T1;
-xdata at 0x0023 struct INTVEC INT4VEC_USART0;
-xdata at 0x002b struct INTVEC INT5VEC_T2;
-xdata at 0x0033 struct INTVEC INT6VEC_RESUME;
-xdata at 0x003b struct INTVEC INT7VEC_USART1;
-xdata at 0x0043 struct INTVEC INT8VEC_USB;
-xdata at 0x004b struct INTVEC INT9VEC_I2C;
-xdata at 0x0053 struct INTVEC INT10VEC_GPIF;
-xdata at 0x005b struct INTVEC INT11VEC_IE5;
-xdata at 0x0063 struct INTVEC INT12VEC_IE6;
-xdata at 0x0100 struct INTVEC INTVEC_SUDAV;
-xdata at 0x0104 struct INTVEC INTVEC_SOF;
-xdata at 0x0108 struct INTVEC INTVEC_SUTOK;
-xdata at 0x010C struct INTVEC INTVEC_SUSPEND;
-xdata at 0x0110 struct INTVEC INTVEC_USBRESET;
-xdata at 0x0114 struct INTVEC INTVEC_HISPEED;
-xdata at 0x0118 struct INTVEC INTVEC_EP0ACK;
-xdata at 0x0120 struct INTVEC INTVEC_EP0IN;
-xdata at 0x0124 struct INTVEC INTVEC_EP0OUT;
-xdata at 0x0128 struct INTVEC INTVEC_EP1IN;
-xdata at 0x012C struct INTVEC INTVEC_EP1OUT;
-xdata at 0x0130 struct INTVEC INTVEC_EP2;
-xdata at 0x0134 struct INTVEC INTVEC_EP4;
-xdata at 0x0138 struct INTVEC INTVEC_EP6;
-xdata at 0x013C struct INTVEC INTVEC_EP8;
-xdata at 0x0140 struct INTVEC INTVEC_IBN;
-xdata at 0x0148 struct INTVEC INTVEC_EP0PING;
-xdata at 0x014C struct INTVEC INTVEC_EP1PING;
-xdata at 0x0150 struct INTVEC INTVEC_EP2PING;
-xdata at 0x0154 struct INTVEC INTVEC_EP4PING;
-xdata at 0x0158 struct INTVEC INTVEC_EP6PING;
-xdata at 0x015C struct INTVEC INTVEC_EP8PING;
-xdata at 0x0160 struct INTVEC INTVEC_ERRLIMIT;
-xdata at 0x0170 struct INTVEC INTVEC_EP2ISOERR;
-xdata at 0x0174 struct INTVEC INTVEC_EP4ISOERR;
-xdata at 0x0178 struct INTVEC INTVEC_EP6ISOERR;
-xdata at 0x017C struct INTVEC INTVEC_EP8ISOERR;
-xdata at 0x0180 struct INTVEC INTVEC_EP2PF;
-xdata at 0x0184 struct INTVEC INTVEC_EP4PF;
-xdata at 0x0188 struct INTVEC INTVEC_EP6PF;
-xdata at 0x018C struct INTVEC INTVEC_EP8PF;
-xdata at 0x0190 struct INTVEC INTVEC_EP2EF;
-xdata at 0x0194 struct INTVEC INTVEC_EP4EF;
-xdata at 0x0198 struct INTVEC INTVEC_EP6EF;
-xdata at 0x019C struct INTVEC INTVEC_EP8EF;
-xdata at 0x01A0 struct INTVEC INTVEC_EP2FF;
-xdata at 0x01A8 struct INTVEC INTVEC_EP6FF;
-xdata at 0x01AC struct INTVEC INTVEC_EP8FF;
-xdata at 0x01B0 struct INTVEC INTVEC_GPIFDONE;
-#line 89 "../../../include/ezintavecs.h"
-xdata at 0x01B4 struct INTVEC INTVEC_GPIFWF;
-#line 91 "../../../include/ezintavecs.h"
-
-void abscode_intvec() _naked
-{
-#line 96 "../../../include/ezintavecs.h"
- _asm
- .area ABSCODE (ABS,CODE)
- .org 0x0000
-ENTRY:
- ljmp #0x0200
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0003
-#line 34 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x000b
-#line 35 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0013
-#line 36 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x001b
-#line 37 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0023
-#line 38 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x002b
-#line 39 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0033
-#line 40 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x003b
-#line 41 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0043
-#line 42 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x004b
-#line 43 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0053
-#line 44 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x005b
-#line 45 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0063
-#line 46 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0100
-#line 47 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0104
-#line 48 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0108
-#line 49 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x010C
-#line 50 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0110
-#line 51 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0114
-#line 52 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0118
-#line 53 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0120
-#line 54 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0124
-#line 55 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0128
-#line 56 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x012C
-#line 57 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0130
-#line 58 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0134
-#line 59 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0138
-#line 60 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x013C
-#line 61 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0140
-#line 62 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0148
-#line 63 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x014C
-#line 64 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0150
-#line 65 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0154
-#line 66 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0158
-#line 67 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x015C
-#line 68 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0160
-#line 69 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0170
-#line 70 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0174
-#line 71 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0178
-#line 72 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x017C
-#line 73 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0180
-#line 74 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0184
-#line 75 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0188
-#line 76 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x018C
-#line 77 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0190
-#line 78 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0194
-#line 79 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x0198
-#line 80 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x019C
-#line 81 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x01A0
-#line 82 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x01A8
-#line 83 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x01AC
-#line 84 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x01B0
-#line 85 "../../../include/ezintavecs.h"
- reti
-#line 94 "../../../include/ezintavecs.h"
- .org 0x01B4
-#line 101 "../../../include/ezintavecs.h"
- reti
- .org 0x01b8
-INTVEC_DUMMY:
- reti
- .area CSEG (CODE)
- _endasm;
-}
-
-#line 111 "../../../include/ezintavecs.h"
-
-
-/* Init an interrupt vector */
-#line 119 "../../../include/ezintavecs.h"
-
-
-/* Enable USB autovectors */
-#line 128 "../../../include/ezintavecs.h"
-
-
-/* Disable USB autovectors */
-#line 132 "../../../include/ezintavecs.h"
-
-
-/* Enable GPIF autovectors */
-#line 141 "../../../include/ezintavecs.h"
-
-
-/* Disable GPIF autovectors */
-#line 145 "../../../include/ezintavecs.h"
-
-
-#line 50 "../../../include/ztex-utils.h"
-
-/* *********************************************************************
- ***** global variables **********************************************
- ********************************************************************* */
-/*
- The following two variables are used to control HSNAK bit.
-
- ep0_payload_remaining is set to the length field of of the Setup Data
- structure (in SUDAV_ISR). At the begin of each payload data transfer (in
- SUDAV_ISR, EP0IN_ISR and EP0OUT_ISR) the amount of payload of the current
- transfer s calculated (<=64 bytes) and subtracted from
- ep0_payload_remaining. For Vendor Commands HSNAK bit is cleared
- automatically (at the end of EP0OUT_ISR) ifep0_payload_remaining == 0.
- For Vendor Requests HSNAK bit is always cleared at the end of SUDAV_ISR.
-*/
-
-#line 30 "../../../include/ztex-conf.h"
-xdata WORD ep0_payload_remaining = 0; // remaining amount of ep0 payload data (excluding the data of the current transfer)
-#line 30 "../../../include/ztex-conf.h"
-xdata BYTE ep0_payload_transfer = 0; // transfer
-#line 68 "../../../include/ztex-utils.h"
-
-/* *********************************************************************
- *********************************************************************
- ***** basic functions ***********************************************
- *********************************************************************
- ********************************************************************* */
-
-/* *********************************************************************
- ***** wait **********************************************************
- ********************************************************************* */
-#line 30 "../../../include/ztex-conf.h"
-void wait(WORD short ms) { // wait in ms
-#line 79 "../../../include/ztex-utils.h"
- WORD i,j;
- for (j=0; j specifies the time to wait in 0.1ms steps if the EEPROM is busy (during a write cycle).
- if =0 no sop bit is sent. Returns 1 on error or if EEPROM is busy. */
-BYTE eeprom_select ( BYTE to, BYTE stop ) {
- BYTE toc = 0;
-eeprom_select_start:
-#line 30 "../../../include/ztex-conf.h"
- I2CS |= 128; // start bit
-#line 107 "../../../include/ztex-eeprom.h"
- i2c_waitStart();
-#line 30 "../../../include/ztex-conf.h"
- I2DAT = 0xA2; // select device for writing
-#line 109 "../../../include/ztex-eeprom.h"
- if ( ! i2c_waitWrite() ) {
- if ( stop ) {
- I2CS |= 64;
- i2c_waitStop();
- }
- return 0;
- }
- else if (toc bytes from EEPROM address and write them to buf.
- Returns the number of bytes read. This number is 0 during a write cycle. */
-BYTE eeprom_read ( __xdata BYTE *buf, WORD addr, BYTE length ) {
- BYTE bytes = 0,i;
-
- if ( length == 0 )
- return 0;
-
- if ( eeprom_select(100,0) )
- goto eeprom_read_end;
-
-#line 30 "../../../include/ztex-conf.h"
- I2DAT = ((BYTE)((((unsigned short)(addr)) >> 8) & 0xff)) ; // write address
-#line 141 "../../../include/ztex-eeprom.h"
- if ( i2c_waitWrite() ) goto eeprom_read_end;
-#line 30 "../../../include/ztex-conf.h"
- I2DAT = ((BYTE)(addr)); // write address
-#line 143 "../../../include/ztex-eeprom.h"
- if ( i2c_waitWrite() ) goto eeprom_read_end;
- I2CS |= 64;
- i2c_waitStop();
-
-#line 30 "../../../include/ztex-conf.h"
- I2CS |= 128; // start bit
-#line 148 "../../../include/ztex-eeprom.h"
- i2c_waitStart();
-#line 30 "../../../include/ztex-conf.h"
- I2DAT = 0xA2 | 1; // select device for reading
-#line 150 "../../../include/ztex-eeprom.h"
- if ( i2c_waitWrite() ) goto eeprom_read_end;
-
-#line 30 "../../../include/ztex-conf.h"
- *buf = I2DAT; // dummy read
-#line 153 "../../../include/ztex-eeprom.h"
- if ( i2c_waitRead()) goto eeprom_read_end;
- for (; bytes bytes from buf to and write them EEPROM address .
- must be smaller or equal than 64. Returns the number of bytes
- read. This number is 0 during a write cycle. */
-BYTE eeprom_write ( __xdata BYTE *buf, WORD addr, BYTE length ) {
- BYTE bytes = 0;
-
- if ( eeprom_select(100,0) )
- goto eeprom_write_end;
-
-#line 30 "../../../include/ztex-conf.h"
- I2DAT = ((BYTE)((((unsigned short)(addr)) >> 8) & 0xff)) ; // write address
-#line 185 "../../../include/ztex-eeprom.h"
- if ( i2c_waitWrite() ) goto eeprom_write_end;
-#line 30 "../../../include/ztex-conf.h"
- I2DAT = ((BYTE)(addr)); // write address
-#line 187 "../../../include/ztex-eeprom.h"
- if ( i2c_waitWrite() ) goto eeprom_write_end;
-
- for (; bytes> 8) & 0xff)) );
- AUTOPTRL2=((BYTE)(&(*debug_stack_ptr)));
- AUTOPTRH2=((BYTE)((((unsigned short)(&(*debug_stack_ptr)) >> 8) & 0xff)) );
- _asm
- push ar2
- mov r2,#(3);
- lcall _MEM_COPY1_int
- pop ar2
- _endasm;
-#line 52 "../../../include/ztex-debug.h"
-}
- debug_counter += 1;
-}
-
-/* *********************************************************************
- ***** debug_add_msg *************************************************
- ********************************************************************* */
-#line 30 "../../../include/ztex-conf.h"
-// init the variables
-#line 60 "../../../include/ztex-debug.h"
-void debug_init () {
-#line 30 "../../../include/ztex-conf.h"
- debug_counter = 0; // message number
-#line 62 "../../../include/ztex-debug.h"
- debug_stack_size = 32;
- debug_msg_size = 3;
- debug_stack_ptr = debug_stack;
-}
-
-/* *********************************************************************
- ***** EP0 vendor request 0x28 ***************************************
- ********************************************************************* */
-#line 30 "../../../include/ztex-conf.h"
-// read the debug data
-#line 71 "../../../include/ztex-debug.h"
-BYTE debug_read_ep0 () {
- BYTE b;
- b = ep0_payload_transfer;
- if ( b != 0) {
-#line 119 "../../../include/ztex-utils.h"
- {
- AUTOPTRL1=((BYTE)(&(*debug_read_addr)));
- AUTOPTRH1=((BYTE)((((unsigned short)(&(*debug_read_addr)) >> 8) & 0xff)) );
- AUTOPTRL2=((BYTE)(&(EP0BUF)));
- AUTOPTRH2=((BYTE)((((unsigned short)(&(EP0BUF)) >> 8) & 0xff)) );
- _asm
- push ar2
- mov r2,#(b);
- lcall _MEM_COPY1_int
- pop ar2
- _endasm;
-#line 75 "../../../include/ztex-debug.h"
-}
- }
- debug_read_addr += b;
- return b;
-}
-
-#line 89 "../../../include/ztex-debug.h"
-
-#line 112 "../../../include/ztex.h"
-
-#line 114 "../../../include/ztex.h"
-
-
-/* *********************************************************************
- ***** define the descriptors and the interrupt routines *************
- ********************************************************************* */
-#line 1 "../../../include/ztex-descriptors.h"
-/*!
- ZTEX Firmware Kit for EZ-USB Microcontrollers
- Copyright (C) 2009-2010 ZTEX e.K.
- http://www.ztex.de
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License version 3 as
- published by the Free Software Foundation.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, see http://www.gnu.org/licenses/.
-!*/
-
-/*
- Defines the USB descriptors
-*/
-
-#line 25 "../../../include/ztex-descriptors.h"
-
-#line 28 "../../../include/ztex-descriptors.h"
-
-xdata at 0x06c BYTE ZTEX_DESCRIPTOR;
-
-/* ZTEX descriptor version. Must be 1. */
-xdata at 0x06c+1 BYTE ZTEX_DESCRIPTOR_VERSION;
-
-/* Must not be modified, ID="ZTEX" */
-xdata at 0x06c+2 BYTE ZTEXID[4];
-
-/*
- Product ID and firmware compatibility information.
-
- A firmware can overwrite an installed one if
- if ( INSTALLED.PRODUCTID[0]==0 || PRODUCTID[0]==0 || INSTALLED.PRODUCTID[0]==PRODUCTID[0] ) &&
- ( INSTALLED.PRODUCTID[1]==0 || PRODUCTID[1]==0 || INSTALLED.PRODUCTID[1]==PRODUCTID[1] ) &&
- ( INSTALLED.PRODUCTID[2]==0 || PRODUCTID[2]==0 || INSTALLED.PRODUCTID[2]==PRODUCTID[2] ) &&
- ( INSTALLED.PRODUCTID[3]==0 || PRODUCTID[3]==0 || INSTALLED.PRODUCTID[3]==PRODUCTID[3] )
-
- Reserved Product ID's:
-
- 0.0.0.0 // default Product ID (no product specified)
- 1.*.*.* // may be used for experimental purposes
- 10.*.*.* // used for ZTEX products
- 10.11.*.* // ZTEX USB-FPGA-Module 1.2
- 10.12.*.* // ZTEX USB-FPGA-Module 1.10
- 10.20.*.* // ZTEX USB-Module 1.0
-
- Please contact me (http://www.ztex.de --> Impressum/Kontakt) if you want to register/reserve a Product ID (range).
-*/
-xdata at 0x06c+6 BYTE PRODUCT_ID[4];
-
-/* Firmware version, may be used to distinguish seveveral firmware versions */
-xdata at 0x06c+10 BYTE FW_VERSION;
-
-/* Interface version. Must be 1. */
-xdata at 0x06c+11 BYTE INTERFACE_VERSION;
-
-/*
- Standard interface capabilities:
- 0.0 : EEPROM read/write, see ztex-eeprom.h
- 0.1 : FPGA configuration, see ztex-fpga.h
- 0.2 : Flash memeory support, see ztex-flash1.h
- 0.3 : Debug helper, see ztex-debug.h
-*/
-xdata at 0x06c+12 BYTE INTERFACE_CAPABILITIES[6];
-
-/* Space for settings which depends on PRODUCT_ID, e.g extra capabilities */
-xdata at 0x06c+18 BYTE MODULE_RESERVED[12];
-
-/*
- Serial number string
- default: "0000000000"
- Should only be modified by the the firmware upload software
-*/
-xdata at 0x06c+30 BYTE SN_STRING[10];
-
-/* Are Vendor ID and Product ID defined? */
-#line 88 "../../../include/ztex-descriptors.h"
-
-#line 92 "../../../include/ztex-descriptors.h"
-
-/* Prepare the Interfaces, i.e. check which interfaces are defined */
-#line 109 "../../../include/ztex-descriptors.h"
-
-#line 94 "../../../include/ztex-descriptors.h"
-
-#line 30 "../../../include/ztex-conf.h"
-//Interface 0: YES
-#line 94 "../../../include/ztex-descriptors.h"
-
-#line 30 "../../../include/ztex-conf.h"
-//Interface 1: NO
-#line 94 "../../../include/ztex-descriptors.h"
-
-#line 30 "../../../include/ztex-conf.h"
-//Interface 2: NO
-#line 94 "../../../include/ztex-descriptors.h"
-
-#line 30 "../../../include/ztex-conf.h"
-//Interface 3: NO
-#line 114 "../../../include/ztex-descriptors.h"
-
-/* define the ZTEX descriptor */
-void abscode_identity() _naked
-{
- _asm
- .area ABSCODE (ABS,CODE)
-
- .org 0x06c
- .db 40
-
- .org _ZTEX_DESCRIPTOR_VERSION
- .db 1
-
- .org _ZTEXID
- .ascii "ZTEX"
-
- .org _PRODUCT_ID
- .db 0
- .db 0
- .db 0
- .db 0
-
- .org _FW_VERSION
- .db 0
-
- .org _INTERFACE_VERSION
- .db 1
-
- .org _INTERFACE_CAPABILITIES
-#line 158 "../../../include/ztex-descriptors.h"
- .db 0 + 1 + 8
-#line 160 "../../../include/ztex-descriptors.h"
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
-
- .org _MODULE_RESERVED
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
-
- .org _SN_STRING
- .ascii "0000000000"
-
- .area CSEG (CODE)
- _endasm;
-}
-
-/* *********************************************************************
- ***** strings *******************************************************
- ********************************************************************* */
-code char manufacturerString[] = "ZTEX";
-code char productString[] = "debug for EZ-USB devices";
-code char configurationString[] = "(unknown)";
-
-
-/* *********************************************************************
- ***** descriptors ***************************************************
- ********************************************************************* */
-#line 240 "../../../include/ztex-descriptors.h"
-
-#line 304 "../../../include/ztex-descriptors.h"
-
-#line 306 "../../../include/ztex-descriptors.h"
-
-#line 308 "../../../include/ztex-descriptors.h"
-code BYTE PadByte = 0;
-#line 310 "../../../include/ztex-descriptors.h"
-
-code BYTE DeviceDescriptor[] =
- {
-#line 30 "../../../include/ztex-conf.h"
- 18, // 0, Descriptor length
-#line 30 "../../../include/ztex-conf.h"
- 0x01, // 1, Descriptor type
-#line 30 "../../../include/ztex-conf.h"
- 0x00, // 2, Specification Version (L)
-#line 30 "../../../include/ztex-conf.h"
- 0x02, // 3, Specification Version (H)
-#line 30 "../../../include/ztex-conf.h"
- 0xff, // 4, Device class
-#line 30 "../../../include/ztex-conf.h"
- 0xff, // 5, Device sub-class
-#line 30 "../../../include/ztex-conf.h"
- 0xff, // 6, Device protocol
-#line 30 "../../../include/ztex-conf.h"
- 64, // 7, Maximum packet size for EP0
-#line 30 "../../../include/ztex-conf.h"
- (0x221a) & 255, // 8, VENDOR_ID (L)
-#line 30 "../../../include/ztex-conf.h"
- (0x221a) >> 8, // 9, VENDOR_ID (H)
-#line 30 "../../../include/ztex-conf.h"
- (0x100) & 255, // 10, PRODUCT_ID (L)
-#line 30 "../../../include/ztex-conf.h"
- (0x100) >> 8, // 11, PRODUCT_ID (H)
-#line 30 "../../../include/ztex-conf.h"
- 0x00, // 12, device release number (BCD, L)
-#line 30 "../../../include/ztex-conf.h"
- 0x00, // 13, device release number (BCD, H)
-#line 30 "../../../include/ztex-conf.h"
- 1, // 14, Manufacturer string index
-#line 30 "../../../include/ztex-conf.h"
- 2, // 15, Product string index
-#line 30 "../../../include/ztex-conf.h"
- 3, // 16, Serial number string index
-#line 30 "../../../include/ztex-conf.h"
- 1 // 17, Number of configurations
-#line 331 "../../../include/ztex-descriptors.h"
- };
-
-code BYTE DeviceQualifierDescriptor[] =
- {
-#line 30 "../../../include/ztex-conf.h"
- 10, // 0, Descriptor length
-#line 30 "../../../include/ztex-conf.h"
- 0x06, // 1, Decriptor type
-#line 30 "../../../include/ztex-conf.h"
- 0x00, // 2, Specification Version (L)
-#line 30 "../../../include/ztex-conf.h"
- 0x02, // 3, Specification Version (H)
-#line 30 "../../../include/ztex-conf.h"
- 0xff, // 4, Device class
-#line 30 "../../../include/ztex-conf.h"
- 0xff, // 5, Device sub-class
-#line 30 "../../../include/ztex-conf.h"
- 0xff, // 6, Device protocol
-#line 30 "../../../include/ztex-conf.h"
- 64, // 7, Maximum packet size (EP0?)
-#line 30 "../../../include/ztex-conf.h"
- 1, // 8, Number of configurations
-#line 30 "../../../include/ztex-conf.h"
- 0, // 9, Reserved, must be zero
-#line 345 "../../../include/ztex-descriptors.h"
- };
-
-code BYTE HighSpeedConfigDescriptor[] =
- {
-#line 30 "../../../include/ztex-conf.h"
- 9 // 0, Descriptor length
-#line 30 "../../../include/ztex-conf.h"
- ,0x02 // 1, Decriptor type
-#line 30 "../../../include/ztex-conf.h"
- ,sizeof(HighSpeedConfigDescriptor) & 0xff // 2, Total length (LSB)
-#line 30 "../../../include/ztex-conf.h"
-// ,sizeof(HighSpeedConfigDescriptor) >> 8 // 3, Total length (MB)
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 3, To avoid warnings, descriptor length will never exceed 255 bytes
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 4, Number of Interfaces
-#line 357 "../../../include/ztex-descriptors.h"
- +1
-#line 368 "../../../include/ztex-descriptors.h"
-
-#line 30 "../../../include/ztex-conf.h"
- ,1 // 5, Configuration number
-#line 30 "../../../include/ztex-conf.h"
- ,4 // 6, Configuration string
-#line 30 "../../../include/ztex-conf.h"
- ,0xc0 // 7, Attributes: bus and self powered
-#line 30 "../../../include/ztex-conf.h"
- ,50 // Maximum bus power 100 mA
-#line 241 "../../../include/ztex-descriptors.h"
-
-#line 30 "../../../include/ztex-conf.h"
- // Interface 0 descriptor
-#line 30 "../../../include/ztex-conf.h"
- ,9 // 0, Descriptor length
-#line 30 "../../../include/ztex-conf.h"
- ,0x04 // 1, Descriptor type
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 2, Zero-based index of this interface
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 3, Alternate setting 0
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 4, Number of end points
-#line 264 "../../../include/ztex-descriptors.h"
- +1
-#line 267 "../../../include/ztex-descriptors.h"
- +1
-#line 30 "../../../include/ztex-conf.h"
- ,0xff // 5, Interface class
-#line 30 "../../../include/ztex-conf.h"
- ,0xff // 6, Interface sub class
-#line 30 "../../../include/ztex-conf.h"
- ,0xff // 7, Interface protocol
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 8, Index of interface string descriptor
-#line 198 "../../../include/ztex-descriptors.h"
-
-#line 30 "../../../include/ztex-conf.h"
- // Endpoint 1IN descriptor
-#line 30 "../../../include/ztex-conf.h"
- ,7 // 0, Descriptor length
-#line 30 "../../../include/ztex-conf.h"
- ,5 // 1, Descriptor type
-#line 30 "../../../include/ztex-conf.h"
- ,0x81 // 2, direction=output, address=1
-#line 30 "../../../include/ztex-conf.h"
- ,2 // 3, BULK transferns
-#line 30 "../../../include/ztex-conf.h"
- ,512 & 0xff // 4, max. packet size (L)
-#line 30 "../../../include/ztex-conf.h"
- ,512 >> 8 // 5, max. packet size (H)
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 6, Polling interval
-#line 286 "../../../include/ztex-descriptors.h"
-
-#line 198 "../../../include/ztex-descriptors.h"
-
-#line 30 "../../../include/ztex-conf.h"
- // Endpoint 1OUT descriptor
-#line 30 "../../../include/ztex-conf.h"
- ,7 // 0, Descriptor length
-#line 30 "../../../include/ztex-conf.h"
- ,5 // 1, Descriptor type
-#line 30 "../../../include/ztex-conf.h"
- ,0x01 // 2, direction=output, address=1
-#line 30 "../../../include/ztex-conf.h"
- ,2 // 3, BULK transferns
-#line 30 "../../../include/ztex-conf.h"
- ,512 & 0xff // 4, max. packet size (L)
-#line 30 "../../../include/ztex-conf.h"
- ,512 >> 8 // 5, max. packet size (H)
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 6, Polling interval
-#line 289 "../../../include/ztex-descriptors.h"
-
-#line 374 "../../../include/ztex-descriptors.h"
-
-#line 386 "../../../include/ztex-descriptors.h"
- };
-code BYTE HighSpeedConfigDescriptor_PadByte[2-(sizeof(HighSpeedConfigDescriptor) & 1)] = { 0 };
-
-code BYTE FullSpeedConfigDescriptor[] =
- {
-#line 30 "../../../include/ztex-conf.h"
- 9 // 0, Descriptor length
-#line 30 "../../../include/ztex-conf.h"
- ,0x02 // 1, Decriptor type
-#line 30 "../../../include/ztex-conf.h"
- ,sizeof(FullSpeedConfigDescriptor) & 0xff // 2, Total length (LSB)
-#line 30 "../../../include/ztex-conf.h"
-// ,sizeof(FullSpeedConfigDescriptor) >> 8 // 3, Total length (MSB)
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 3, To avoid warnings, descriptor length will never exceed 255 bytes
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 4, Number of Interfaces
-#line 398 "../../../include/ztex-descriptors.h"
- +1
-#line 409 "../../../include/ztex-descriptors.h"
-
-#line 30 "../../../include/ztex-conf.h"
- ,1 // 5, Configuration number
-#line 30 "../../../include/ztex-conf.h"
- ,4 // 6, Configuration string
-#line 30 "../../../include/ztex-conf.h"
- ,0xc0 // 7, Attributes: bus and self powered
-#line 30 "../../../include/ztex-conf.h"
- ,50 // Maximum bus power 100 mA
-#line 241 "../../../include/ztex-descriptors.h"
-
-#line 30 "../../../include/ztex-conf.h"
- // Interface 0 descriptor
-#line 30 "../../../include/ztex-conf.h"
- ,9 // 0, Descriptor length
-#line 30 "../../../include/ztex-conf.h"
- ,0x04 // 1, Descriptor type
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 2, Zero-based index of this interface
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 3, Alternate setting 0
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 4, Number of end points
-#line 264 "../../../include/ztex-descriptors.h"
- +1
-#line 267 "../../../include/ztex-descriptors.h"
- +1
-#line 30 "../../../include/ztex-conf.h"
- ,0xff // 5, Interface class
-#line 30 "../../../include/ztex-conf.h"
- ,0xff // 6, Interface sub class
-#line 30 "../../../include/ztex-conf.h"
- ,0xff // 7, Interface protocol
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 8, Index of interface string descriptor
-#line 198 "../../../include/ztex-descriptors.h"
-
-#line 30 "../../../include/ztex-conf.h"
- // Endpoint 1IN descriptor
-#line 30 "../../../include/ztex-conf.h"
- ,7 // 0, Descriptor length
-#line 30 "../../../include/ztex-conf.h"
- ,5 // 1, Descriptor type
-#line 30 "../../../include/ztex-conf.h"
- ,0x81 // 2, direction=output, address=1
-#line 30 "../../../include/ztex-conf.h"
- ,2 // 3, BULK transferns
-#line 30 "../../../include/ztex-conf.h"
- ,64 // 4, max. packet size (L)
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 5, max. packet size (H)
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 6, Polling interval
-#line 286 "../../../include/ztex-descriptors.h"
-
-#line 198 "../../../include/ztex-descriptors.h"
-
-#line 30 "../../../include/ztex-conf.h"
- // Endpoint 1OUT descriptor
-#line 30 "../../../include/ztex-conf.h"
- ,7 // 0, Descriptor length
-#line 30 "../../../include/ztex-conf.h"
- ,5 // 1, Descriptor type
-#line 30 "../../../include/ztex-conf.h"
- ,0x01 // 2, direction=output, address=1
-#line 30 "../../../include/ztex-conf.h"
- ,2 // 3, BULK transferns
-#line 30 "../../../include/ztex-conf.h"
- ,64 // 4, max. packet size (L)
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 5, max. packet size (H)
-#line 30 "../../../include/ztex-conf.h"
- ,0 // 6, Polling interval
-#line 289 "../../../include/ztex-descriptors.h"
-
-#line 415 "../../../include/ztex-descriptors.h"
-
-#line 426 "../../../include/ztex-descriptors.h"
- };
-code BYTE FullSpeedConfigDescriptor_PadByte[2-(sizeof(FullSpeedConfigDescriptor) & 1)] = { 0 };
-
-code BYTE EmptyStringDescriptor[] =
- {
-#line 30 "../../../include/ztex-conf.h"
- sizeof(EmptyStringDescriptor), // Length
-#line 30 "../../../include/ztex-conf.h"
- 0x03, // Descriptor type
-#line 433 "../../../include/ztex-descriptors.h"
- 0, 0
- };
-
-#line 119 "../../../include/ztex.h"
-
-#line 1 "../../../include/ztex-isr.h"
-/*!
- ZTEX Firmware Kit for EZ-USB Microcontrollers
- Copyright (C) 2009-2010 ZTEX e.K.
- http://www.ztex.de
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License version 3 as
- published by the Free Software Foundation.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, see http://www.gnu.org/licenses/.
-!*/
-
-/*
- Interrupt routines
-*/
-
-#line 25 "../../../include/ztex-isr.h"
-
-xdata BYTE ep0_prev_setup_request = 0xff;
-xdata BYTE ep0_vendor_cmd_setup = 0;
-
-#line 30 "../../../include/ztex-conf.h"
-xdata WORD ISOFRAME_COUNTER[4] = {0, 0, 0, 0}; // counters for iso frames automatically reset by sync frame request
-#line 30 "../../../include/ztex-isr.h"
-
-/* *********************************************************************
- ***** toggleData ****************************************************
- ********************************************************************* */
-static void resetToggleData () {
-#line 44 "../../../include/ztex-isr.h"
-
-#line 30 "../../../include/ztex-conf.h"
- TOGCTL = 0; // EP0 out
-#line 46 "../../../include/ztex-isr.h"
- TOGCTL = 0 | 32;
-#line 30 "../../../include/ztex-conf.h"
- TOGCTL = 0x10; // EP0 in
-#line 48 "../../../include/ztex-isr.h"
- TOGCTL = 0x10 | 32;
-#line 30 "../../../include/ztex-conf.h"
- TOGCTL = 1; // EP1 out
-#line 51 "../../../include/ztex-isr.h"
- TOGCTL = 1 | 32;
-#line 30 "../../../include/ztex-conf.h"
- TOGCTL = 0x11; // EP1 in
-#line 55 "../../../include/ztex-isr.h"
- TOGCTL = 0x11 | 32;
-#line 35 "../../../include/ztex-isr.h"
-
-#line 35 "../../../include/ztex-isr.h"
-
-#line 35 "../../../include/ztex-isr.h"
-
-#line 35 "../../../include/ztex-isr.h"
-
-#line 61 "../../../include/ztex-isr.h"
-}
-
-/* *********************************************************************
- ***** getStringDescriptor *******************************************
- ********************************************************************* */
-#line 67 "../../../include/ztex-isr.h"
-
-static void sendStringDescriptor (BYTE loAddr, BYTE hiAddr, BYTE size)
-{
- BYTE i;
- if ( size > 31)
- size = 31;
- AUTOPTRSETUP = 7;
- AUTOPTRL1 = loAddr;
- AUTOPTRH1 = hiAddr;
- AUTOPTRL2 = (BYTE)(((unsigned short)(&EP0BUF))+1);
- AUTOPTRH2 = (BYTE)((((unsigned short)(&EP0BUF))+1) >> 8);
- XAUTODAT2 = 3;
- for (i=0; i 64 ) ? 64 : ep0_payload_remaining;
- ep0_payload_remaining -= ep0_payload_transfer;
-}
-
-
-/* *********************************************************************
- ***** ep0_vendor_cmd_su **********************************************
- ********************************************************************* */
-static void ep0_vendor_cmd_su() {
- switch ( ep0_prev_setup_request ) {
-#line 112 "../../../include/ztex-conf.h"
-
-case 0x39:
-#line 30 "../../../include/ztex-conf.h"
- // write to EEPROM
-#line 233 "../../../include/ztex-eeprom.h"
- eeprom_write_checksum = 0;
- eeprom_write_bytes = 0;
-#line 30 "../../../include/ztex-conf.h"
- eeprom_addr = ( SETUPDAT[3] << 8) | SETUPDAT[2]; // Address
-#line 114 "../../../include/ztex-conf.h"
-
- break;
-#line 104 "../../../include/ztex-isr.h"
-
- default:
-#line 30 "../../../include/ztex-conf.h"
- EP0CS |= 0x01; // set stall, unknown request
-#line 107 "../../../include/ztex-isr.h"
- }
-}
-
-/* *********************************************************************
- ***** SUDAV_ISR *****************************************************
- ********************************************************************* */
-static void SUDAV_ISR () interrupt
-{
- BYTE a;
- ep0_prev_setup_request = bRequest;
- SUDPTRCTL = 1;
-
-#line 30 "../../../include/ztex-conf.h"
- // standard USB requests
-#line 120 "../../../include/ztex-isr.h"
- switch ( bRequest ) {
-#line 30 "../../../include/ztex-conf.h"
- case 0x00: // get status
-#line 122 "../../../include/ztex-isr.h"
- switch(SETUPDAT[0]) {
-#line 30 "../../../include/ztex-conf.h"
- case 0x80: // self powered and remote
-#line 30 "../../../include/ztex-conf.h"
- EP0BUF[0] = 0; // not self-powered, no remote wakeup
-#line 125 "../../../include/ztex-isr.h"
- EP0BUF[1] = 0;
- EP0BCH = 0;
- EP0BCL = 2;
- break;
-#line 30 "../../../include/ztex-conf.h"
- case 0x81: // interface (reserved)
-#line 30 "../../../include/ztex-conf.h"
- EP0BUF[0] = 0; // always return zeros
-#line 131 "../../../include/ztex-isr.h"
- EP0BUF[1] = 0;
- EP0BCH = 0;
- EP0BCL = 2;
- break;
- case 0x82:
- switch ( SETUPDAT[4] ) {
- case 0x00 :
- case 0x80 :
- EP0BUF[0] = EP0CS & 1;
- break;
- case 0x01 :
- EP0BUF[0] = EP1OUTCS & 1;
- break;
- case 0x81 :
- EP0BUF[0] = EP1INCS & 1;
- break;
- default:
- EP0BUF[0] = EPXCS[ ((SETUPDAT[4] >> 1)-1) & 3 ] & 1;
- break;
- }
- EP0BUF[1] = 0;
- EP0BCH = 0;
- EP0BCL = 2;
- break;
- }
- break;
-#line 30 "../../../include/ztex-conf.h"
- case 0x01: // disable feature, e.g. remote wake, stall bit
-#line 158 "../../../include/ztex-isr.h"
- if ( SETUPDAT[0] == 2 && SETUPDAT[2] == 0 ) {
- switch ( SETUPDAT[4] ) {
- case 0x00 :
- case 0x80 :
- EP0CS &= ~1;
- break;
- case 0x01 :
- EP1OUTCS &= ~1;
- break;
- case 0x81 :
- EP1INCS &= ~1;
- break;
- default:
- EPXCS[ ((SETUPDAT[4] >> 1)-1) & 3 ] &= ~1;
- break;
- }
- }
- break;
-#line 30 "../../../include/ztex-conf.h"
- case 0x03: // enable feature, e.g. remote wake, test mode, stall bit
-#line 177 "../../../include/ztex-isr.h"
- if ( SETUPDAT[0] == 2 && SETUPDAT[2] == 0 ) {
- switch ( SETUPDAT[4] ) {
- case 0x00 :
- case 0x80 :
- EP0CS |= 1;
- break;
- case 0x01 :
- EP1OUTCS |= 1;
- break;
- case 0x81 :
- EP1INCS |= 1;
- break;
- default:
- EPXCS[ ((SETUPDAT[4] >> 1)-1) & 3 ] |= ~1;
- break;
- }
- a = ( (SETUPDAT[4] & 0x80) >> 3 ) | (SETUPDAT[4] & 0x0f);
- TOGCTL = a;
- TOGCTL = a | 32;
- }
- break;
-#line 30 "../../../include/ztex-conf.h"
- case 0x06: // get descriptor
-#line 199 "../../../include/ztex-isr.h"
- switch(SETUPDAT[3]) {
-#line 30 "../../../include/ztex-conf.h"
- case 0x01: // device
-#line 201 "../../../include/ztex-isr.h"
- SUDPTRH = ((BYTE)((((unsigned short)(&DeviceDescriptor)) >> 8) & 0xff)) ;
- SUDPTRL = ((BYTE)(&DeviceDescriptor));
- break;
-#line 30 "../../../include/ztex-conf.h"
- case 0x02: // configuration
-#line 205 "../../../include/ztex-isr.h"
- if (USBCS & 128) {
- SUDPTRH = ((BYTE)((((unsigned short)(&HighSpeedConfigDescriptor)) >> 8) & 0xff)) ;
- SUDPTRL = ((BYTE)(&HighSpeedConfigDescriptor));
- }
- else {
- SUDPTRH = ((BYTE)((((unsigned short)(&FullSpeedConfigDescriptor)) >> 8) & 0xff)) ;
- SUDPTRL = ((BYTE)(&FullSpeedConfigDescriptor));
- }
- break;
-#line 30 "../../../include/ztex-conf.h"
- case 0x03: // strings
-#line 215 "../../../include/ztex-isr.h"
- switch (SETUPDAT[2]) {
- case 1:
- sendStringDescriptor(((BYTE)(manufacturerString)), ((BYTE)((((unsigned short)(manufacturerString)) >> 8) & 0xff)) , sizeof(manufacturerString) );
- break;
- case 2:
- sendStringDescriptor(((BYTE)(productString)), ((BYTE)((((unsigned short)(productString)) >> 8) & 0xff)) , sizeof(productString) );
- break;
- case 3:
- sendStringDescriptor(((BYTE)(SN_STRING)), ((BYTE)((((unsigned short)(SN_STRING)) >> 8) & 0xff)) , sizeof(SN_STRING) );
- break;
- case 4:
- sendStringDescriptor(((BYTE)(configurationString)), ((BYTE)((((unsigned short)(configurationString)) >> 8) & 0xff)) , sizeof(configurationString) );
- break;
- default:
- SUDPTRH = ((BYTE)((((unsigned short)(&EmptyStringDescriptor)) >> 8) & 0xff)) ;
- SUDPTRL = ((BYTE)(&EmptyStringDescriptor));
- break;
- }
- break;
-#line 30 "../../../include/ztex-conf.h"
- case 0x06: // device qualifier
-#line 235 "../../../include/ztex-isr.h"
- SUDPTRH = ((BYTE)((((unsigned short)(&DeviceQualifierDescriptor)) >> 8) & 0xff)) ;
- SUDPTRL = ((BYTE)(&DeviceQualifierDescriptor));
- break;
-#line 30 "../../../include/ztex-conf.h"
- case 0x07: // other speed configuration
-#line 239 "../../../include/ztex-isr.h"
- if (USBCS & 128) {
- SUDPTRH = ((BYTE)((((unsigned short)(&FullSpeedConfigDescriptor)) >> 8) & 0xff)) ;
- SUDPTRL = ((BYTE)(&FullSpeedConfigDescriptor));
- }
- else {
- SUDPTRH = ((BYTE)((((unsigned short)(&HighSpeedConfigDescriptor)) >> 8) & 0xff)) ;
- SUDPTRL = ((BYTE)(&HighSpeedConfigDescriptor));
- }
- break;
- default:
-#line 30 "../../../include/ztex-conf.h"
- EP0CS |= 0x01; // set stall, unknown descriptor
-#line 250 "../../../include/ztex-isr.h"
- }
- break;
-#line 30 "../../../include/ztex-conf.h"
- case 0x07: // set descriptor
-#line 253 "../../../include/ztex-isr.h"
- break;
-#line 30 "../../../include/ztex-conf.h"
- case 0x08: // get configuration
-#line 30 "../../../include/ztex-conf.h"
- EP0BUF[0] = 0; // only one configuration
-#line 256 "../../../include/ztex-isr.h"
- EP0BCH = 0;
- EP0BCL = 1;
- break;
-#line 30 "../../../include/ztex-conf.h"
- case 0x09: // set configuration
-#line 260 "../../../include/ztex-isr.h"
- resetToggleData();
-#line 30 "../../../include/ztex-conf.h"
- break; // do nothing since we have only one configuration
-#line 30 "../../../include/ztex-conf.h"
- case 0x0a: // get alternate setting for an interface
-#line 30 "../../../include/ztex-conf.h"
- EP0BUF[0] = 0; // only one alternate setting
-#line 264 "../../../include/ztex-isr.h"
- EP0BCH = 0;
- EP0BCL = 1;
- break;
-#line 30 "../../../include/ztex-conf.h"
- case 0x0b: // set alternate setting for an interface
-#line 268 "../../../include/ztex-isr.h"
- resetToggleData();
-#line 30 "../../../include/ztex-conf.h"
- break; // do nothing since we have only on alternate setting
-#line 30 "../../../include/ztex-conf.h"
- case 0x0c: // sync frame
-#line 271 "../../../include/ztex-isr.h"
- if ( SETUPDAT[0] == 0x82 ) {
- ISOFRAME_COUNTER[ ((SETUPDAT[4] >> 1)-1) & 3 ] = 0;
-#line 30 "../../../include/ztex-conf.h"
- EP0BUF[0] = USBFRAMEL; // use current frame as sync frame, i hope that works
-#line 274 "../../../include/ztex-isr.h"
- EP0BUF[1] = USBFRAMEH;
- EP0BCH = 0;
- EP0BCL = 2;
- }
-#line 30 "../../../include/ztex-conf.h"
- break; // do nothing since we have only on alternate setting
-#line 279 "../../../include/ztex-isr.h"
-
- }
-
-#line 30 "../../../include/ztex-conf.h"
- // vendor request and commands
-#line 283 "../../../include/ztex-isr.h"
- switch ( bmRequestType ) {
-#line 30 "../../../include/ztex-conf.h"
- case 0xc0: // vendor request
-#line 285 "../../../include/ztex-isr.h"
- ep0_payload_remaining = (SETUPDAT[7] << 8) | SETUPDAT[6];
- ep0_payload_update();
-
- switch ( bRequest ) {
-#line 30 "../../../include/ztex-conf.h"
- case 0x22: // get ZTEX descriptor
-#line 290 "../../../include/ztex-isr.h"
- SUDPTRCTL = 0;
- EP0BCH = 0;
- EP0BCL = 40;
- SUDPTRH = ((BYTE)((((unsigned short)(0x06c)) >> 8) & 0xff)) ;
- SUDPTRL = ((BYTE)(0x06c));
- break;
-#line 89 "../../../include/ztex-conf.h"
-
-case 0x38:
-#line 30 "../../../include/ztex-conf.h"
- // read from EEPROM
-#line 30 "../../../include/ztex-conf.h"
- eeprom_addr = (SETUPDAT[3] << 8) | SETUPDAT[2]; // Address
-#line 216 "../../../include/ztex-eeprom.h"
- EP0BCH = 0;
- EP0BCL = eeprom_read_ep0();
-#line 91 "../../../include/ztex-conf.h"
-
- break;
-#line 89 "../../../include/ztex-conf.h"
-
-case 0x3A:
-#line 30 "../../../include/ztex-conf.h"
- // EEPROM state
-#line 244 "../../../include/ztex-eeprom.h"
- EP0BUF[0] = ((BYTE)(eeprom_write_bytes));
- EP0BUF[1] = ((BYTE)((((unsigned short)(eeprom_write_bytes)) >> 8) & 0xff)) ;
- EP0BUF[2] = eeprom_write_checksum;
-#line 30 "../../../include/ztex-conf.h"
- EP0BUF[3] = eeprom_select(0,1); // 1 means busy or error
-#line 248 "../../../include/ztex-eeprom.h"
- EP0BCH = 0;
- EP0BCL = 4;
-#line 91 "../../../include/ztex-conf.h"
-
- break;
-#line 89 "../../../include/ztex-conf.h"
-
-case 0x28:
-#line 30 "../../../include/ztex-conf.h"
- // read the debug data
-#line 82 "../../../include/ztex-debug.h"
- debug_read_addr = (__xdata BYTE*)&debug_counter;
- EP0BCH = 0;
- EP0BCL = debug_read_ep0();
-#line 91 "../../../include/ztex-conf.h"
-
- break;
-#line 296 "../../../include/ztex-isr.h"
-
- default:
-#line 30 "../../../include/ztex-conf.h"
- EP0CS |= 0x01; // set stall, unknown request
-#line 299 "../../../include/ztex-isr.h"
- }
- break;
-#line 30 "../../../include/ztex-conf.h"
- case 0x40: // vendor command
-#line 302 "../../../include/ztex-isr.h"
- /* vendor commands may overlap if they are send without pause. To avoid
- synchronization problems the setup sequences are executed in EP0OUT_ISR, i.e.
- after the first packet of payload date received. */
- if ( SETUPDAT[7]!=0 || SETUPDAT[6]!=0 ) {
- ep0_vendor_cmd_setup = 1;
- EP0BCL = 0;
-#line 30 "../../../include/ztex-conf.h"
- EXIF &= ~16; // clear main USB interrupt flag
-#line 30 "../../../include/ztex-conf.h"
- USBIRQ = 1; // clear SUADV IRQ
-#line 30 "../../../include/ztex-conf.h"
- return; // don't clear HSNAK bit. This is done after the command has completed
-#line 311 "../../../include/ztex-isr.h"
- }
-#line 30 "../../../include/ztex-conf.h"
- ep0_vendor_cmd_su(); // setup sequences of vendor command with no payload ara executed immediately
-#line 313 "../../../include/ztex-isr.h"
- EP0BCL = 0;
- break;
- }
-
-#line 30 "../../../include/ztex-conf.h"
- EXIF &= ~16; // clear main USB interrupt flag
-#line 30 "../../../include/ztex-conf.h"
- USBIRQ = 1; // clear SUADV IRQ
-#line 30 "../../../include/ztex-conf.h"
- EP0CS |= 0x80; // clear the HSNAK bit
-#line 320 "../../../include/ztex-isr.h"
-}
-
-/* *********************************************************************
- ***** SOF_ISR *******************************************************
- ********************************************************************* */
-void SOF_ISR() interrupt
-{
- EXIF &= ~16;
- USBIRQ = 2;
-}
-
-/* *********************************************************************
- ***** SUTOK_ISR *****************************************************
- ********************************************************************* */
-void SUTOK_ISR() interrupt
-{
- EXIF &= ~16;
- USBIRQ = 4;
-}
-
-/* *********************************************************************
- ***** SUSP_ISR ******************************************************
- ********************************************************************* */
-void SUSP_ISR() interrupt
-{
- EXIF &= ~16;
- USBIRQ = 8;
-}
-
-/* *********************************************************************
- ***** URES_ISR ******************************************************
- ********************************************************************* */
-void URES_ISR() interrupt
-{
- EXIF &= ~16;
- USBIRQ = 16;
-}
-
-/* *********************************************************************
- ***** HSGRANT_ISR ***************************************************
- ********************************************************************* */
-void HSGRANT_ISR() interrupt
-{
- EXIF &= ~16;
- USBIRQ = 32;
-}
-
-/* *********************************************************************
- ***** EP0ACK_ISR ****************************************************
- ********************************************************************* */
-void EP0ACK_ISR() interrupt
-{
-#line 30 "../../../include/ztex-conf.h"
- EXIF &= ~16; // clear USB interrupt flag
-#line 30 "../../../include/ztex-conf.h"
- USBIRQ = 64; // clear EP0ACK IRQ
-#line 374 "../../../include/ztex-isr.h"
-}
-
-/* *********************************************************************
- ***** EP0IN_ISR *****************************************************
- ********************************************************************* */
-static void EP0IN_ISR () interrupt
-{
-#line 30 "../../../include/ztex-conf.h"
- EUSB = 0; // block all USB interrupts
-#line 382 "../../../include/ztex-isr.h"
- ep0_payload_update();
- switch ( ep0_prev_setup_request ) {
-#line 94 "../../../include/ztex-conf.h"
-
-case 0x38:
-#line 218 "../../../include/ztex-eeprom.h"
-
- EP0BCH = 0;
- EP0BCL = eeprom_read_ep0();
-#line 96 "../../../include/ztex-conf.h"
-
- break;
-#line 94 "../../../include/ztex-conf.h"
-
-case 0x3A:
-
- break;
-#line 94 "../../../include/ztex-conf.h"
-
-case 0x28:
-#line 85 "../../../include/ztex-debug.h"
-
- EP0BCH = 0;
- EP0BCL = debug_read_ep0();
-#line 96 "../../../include/ztex-conf.h"
-
- break;
-#line 384 "../../../include/ztex-isr.h"
-
- default:
- EP0BCH = 0;
- EP0BCL = 0;
- }
-#line 30 "../../../include/ztex-conf.h"
- EXIF &= ~16; // clear USB interrupt flag
-#line 30 "../../../include/ztex-conf.h"
- EPIRQ = 1; // clear EP0IN IRQ
-#line 391 "../../../include/ztex-isr.h"
- EUSB = 1;
-}
-
-/* *********************************************************************
- ***** EP0OUT_ISR ****************************************************
- ********************************************************************* */
-static void EP0OUT_ISR () interrupt
-{
-#line 30 "../../../include/ztex-conf.h"
- EUSB = 0; // block all USB interrupts
-#line 400 "../../../include/ztex-isr.h"
- if ( ep0_vendor_cmd_setup ) {
- ep0_vendor_cmd_setup = 0;
- ep0_payload_remaining = (SETUPDAT[7] << 8) | SETUPDAT[6];
- ep0_vendor_cmd_su();
- }
-
- ep0_payload_update();
-
- switch ( ep0_prev_setup_request ) {
-#line 117 "../../../include/ztex-conf.h"
-
-case 0x39:
-#line 236 "../../../include/ztex-eeprom.h"
-
- eeprom_write_ep0(EP0BCL);
-#line 119 "../../../include/ztex-conf.h"
-
- break;
-#line 409 "../../../include/ztex-isr.h"
-
- }
-
- EP0BCL = 0;
-
-#line 30 "../../../include/ztex-conf.h"
- EXIF &= ~16; // clear main USB interrupt flag
-#line 30 "../../../include/ztex-conf.h"
- EPIRQ = 2; // clear EP0OUT IRQ
-#line 416 "../../../include/ztex-isr.h"
- if ( ep0_payload_remaining == 0 ) {
-#line 30 "../../../include/ztex-conf.h"
- EP0CS |= 0x80; // clear the HSNAK bit
-#line 418 "../../../include/ztex-isr.h"
- }
- EUSB = 1;
-}
-
-
-/* *********************************************************************
- ***** EP1IN_ISR *****************************************************
- ********************************************************************* */
-void EP1IN_ISR() interrupt
-{
- EXIF &= ~16;
- EPIRQ = 4;
-
-}
-
-/* *********************************************************************
- ***** EP1OUT_ISR ****************************************************
- ********************************************************************* */
-void EP1OUT_ISR() interrupt
-{
- EXIF &= ~16;
- EPIRQ = 8;
-}
-
-/* *********************************************************************
- ***** EP2_ISR *******************************************************
- ********************************************************************* */
-void EP2_ISR() interrupt
-{
- EXIF &= ~16;
- EPIRQ = 16;
-}
-
-/* *********************************************************************
- ***** EP4_ISR *******************************************************
- ********************************************************************* */
-void EP4_ISR() interrupt
-{
- EXIF &= ~16;
- EPIRQ = 32;
-}
-
-/* *********************************************************************
- ***** EP6_ISR *******************************************************
- ********************************************************************* */
-void EP6_ISR() interrupt
-{
- EXIF &= ~16;
- EPIRQ = 64;
-}
-
-/* *********************************************************************
- ***** EP8_ISR *******************************************************
- ********************************************************************* */
-void EP8_ISR() interrupt
-{
- EXIF &= ~16;
- EPIRQ = 128;
-}
-
-#line 120 "../../../include/ztex.h"
-
-
-
-/* *********************************************************************
- ***** init_USB ******************************************************
- ********************************************************************* */
-#line 152 "../../../include/ztex.h"
-
-#line 164 "../../../include/ztex.h"
-
-void init_USB ()
-{
- USBCS |= 0x08;
-
- CPUCS = 16 | 2;
- CKCON &= ~7;
-
-#line 188 "../../../include/ztex.h"
-
-
-
- EA = 0;
- EUSB = 0;
-
-#line 122 "../../../include/ezintavecs.h"
- {
- INT8VEC_USB.op=0x02;
- INT8VEC_USB.addrH = 0x01;
- INT8VEC_USB.addrL = 0xb8;
- INTSETUP |= 8;
-#line 194 "../../../include/ztex.h"
-}
-
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_SUDAV.op=0x02;
- INTVEC_SUDAV.addrH=((unsigned short)(& SUDAV_ISR)) >> 8;
- INTVEC_SUDAV.addrL=(unsigned short)(& SUDAV_ISR);
-#line 196 "../../../include/ztex.h"
-}
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_SOF.op=0x02;
- INTVEC_SOF.addrH=((unsigned short)(& SOF_ISR)) >> 8;
- INTVEC_SOF.addrL=(unsigned short)(& SOF_ISR);
-#line 197 "../../../include/ztex.h"
-}
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_SUTOK.op=0x02;
- INTVEC_SUTOK.addrH=((unsigned short)(& SUTOK_ISR)) >> 8;
- INTVEC_SUTOK.addrL=(unsigned short)(& SUTOK_ISR);
-#line 198 "../../../include/ztex.h"
-}
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_SUSPEND.op=0x02;
- INTVEC_SUSPEND.addrH=((unsigned short)(& SUSP_ISR)) >> 8;
- INTVEC_SUSPEND.addrL=(unsigned short)(& SUSP_ISR);
-#line 199 "../../../include/ztex.h"
-}
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_USBRESET.op=0x02;
- INTVEC_USBRESET.addrH=((unsigned short)(& URES_ISR)) >> 8;
- INTVEC_USBRESET.addrL=(unsigned short)(& URES_ISR);
-#line 200 "../../../include/ztex.h"
-}
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_HISPEED.op=0x02;
- INTVEC_HISPEED.addrH=((unsigned short)(& HSGRANT_ISR)) >> 8;
- INTVEC_HISPEED.addrL=(unsigned short)(& HSGRANT_ISR);
-#line 201 "../../../include/ztex.h"
-}
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_EP0ACK.op=0x02;
- INTVEC_EP0ACK.addrH=((unsigned short)(& EP0ACK_ISR)) >> 8;
- INTVEC_EP0ACK.addrL=(unsigned short)(& EP0ACK_ISR);
-#line 202 "../../../include/ztex.h"
-}
-
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_EP0IN.op=0x02;
- INTVEC_EP0IN.addrH=((unsigned short)(& EP0IN_ISR)) >> 8;
- INTVEC_EP0IN.addrL=(unsigned short)(& EP0IN_ISR);
-#line 204 "../../../include/ztex.h"
-}
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_EP0OUT.op=0x02;
- INTVEC_EP0OUT.addrH=((unsigned short)(& EP0OUT_ISR)) >> 8;
- INTVEC_EP0OUT.addrL=(unsigned short)(& EP0OUT_ISR);
-#line 205 "../../../include/ztex.h"
-}
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_EP1IN.op=0x02;
- INTVEC_EP1IN.addrH=((unsigned short)(& EP1IN_ISR)) >> 8;
- INTVEC_EP1IN.addrL=(unsigned short)(& EP1IN_ISR);
-#line 206 "../../../include/ztex.h"
-}
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_EP1OUT.op=0x02;
- INTVEC_EP1OUT.addrH=((unsigned short)(& EP1OUT_ISR)) >> 8;
- INTVEC_EP1OUT.addrL=(unsigned short)(& EP1OUT_ISR);
-#line 207 "../../../include/ztex.h"
-}
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_EP2.op=0x02;
- INTVEC_EP2.addrH=((unsigned short)(& EP2_ISR)) >> 8;
- INTVEC_EP2.addrL=(unsigned short)(& EP2_ISR);
-#line 208 "../../../include/ztex.h"
-}
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_EP4.op=0x02;
- INTVEC_EP4.addrH=((unsigned short)(& EP4_ISR)) >> 8;
- INTVEC_EP4.addrL=(unsigned short)(& EP4_ISR);
-#line 209 "../../../include/ztex.h"
-}
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_EP6.op=0x02;
- INTVEC_EP6.addrH=((unsigned short)(& EP6_ISR)) >> 8;
- INTVEC_EP6.addrL=(unsigned short)(& EP6_ISR);
-#line 210 "../../../include/ztex.h"
-}
-#line 114 "../../../include/ezintavecs.h"
- {
- INTVEC_EP8.op=0x02;
- INTVEC_EP8.addrH=((unsigned short)(& EP8_ISR)) >> 8;
- INTVEC_EP8.addrL=(unsigned short)(& EP8_ISR);
-#line 211 "../../../include/ztex.h"
-}
-
- EXIF &= ~16;
- USBIRQ = 0x7f;
- USBIE |= 0x7f;
- EPIRQ = 0xff;
- EPIE = 0xff;
-
- EUSB = 1;
- EA = 1;
-
-#line 154 "../../../include/ztex.h"
- EP1INCFG = 128 | 32;
-#line 41 "../../../include/ezregs.h"
- _asm
- nop
- nop
- nop
- nop
- _endasm;
-#line 162 "../../../include/ztex.h"
-
-#line 222 "../../../include/ztex.h"
-
-#line 154 "../../../include/ztex.h"
- EP1OUTCFG = 128 | 32;
-#line 41 "../../../include/ezregs.h"
- _asm
- nop
- nop
- nop
- nop
- _endasm;
-#line 162 "../../../include/ztex.h"
-
-#line 223 "../../../include/ztex.h"
-
-#line 126 "../../../include/ztex.h"
- EP2CFG =
-#line 132 "../../../include/ztex.h"
- 0
-#line 149 "../../../include/ztex.h"
- ;
-#line 41 "../../../include/ezregs.h"
- _asm
- nop
- nop
- nop
- nop
- _endasm;
-#line 150 "../../../include/ztex.h"
-
-#line 224 "../../../include/ztex.h"
-
-#line 126 "../../../include/ztex.h"
- EP4CFG =
-#line 132 "../../../include/ztex.h"
- 0
-#line 149 "../../../include/ztex.h"
- ;
-#line 41 "../../../include/ezregs.h"
- _asm
- nop
- nop
- nop
- nop
- _endasm;
-#line 150 "../../../include/ztex.h"
-
-#line 225 "../../../include/ztex.h"
-
-#line 126 "../../../include/ztex.h"
- EP6CFG =
-#line 132 "../../../include/ztex.h"
- 0
-#line 149 "../../../include/ztex.h"
- ;
-#line 41 "../../../include/ezregs.h"
- _asm
- nop
- nop
- nop
- nop
- _endasm;
-#line 150 "../../../include/ztex.h"
-
-#line 226 "../../../include/ztex.h"
-
-#line 126 "../../../include/ztex.h"
- EP8CFG =
-#line 132 "../../../include/ztex.h"
- 0
-#line 149 "../../../include/ztex.h"
- ;
-#line 41 "../../../include/ezregs.h"
- _asm
- nop
- nop
- nop
- nop
- _endasm;
-#line 150 "../../../include/ztex.h"
-
-#line 227 "../../../include/ztex.h"
-
-
-#line 236 "../../../include/ztex.h"
- debug_init();
-#line 238 "../../../include/ztex.h"
-
- USBCS |= 128 | 2;
- wait(250);
- USBCS &= ~0x08;
-}
-
-
-#line 30 "debug.c"
-
-
-void main(void)
-{
- WORD i;
- BYTE b;
-
-#line 30 "../../../include/ztex-conf.h"
-// init everything
-#line 38 "debug.c"
- init_USB();
-
- i=0;
- while (1) {
-
-#line 30 "../../../include/ztex-conf.h"
- debug_msg_buf[0] = i; // write second counter to the message buffer
-#line 44 "debug.c"
- debug_msg_buf[1] = i >> 8;
-#line 30 "../../../include/ztex-conf.h"
- debug_add_msg(); // add the message to the stack
-#line 46 "debug.c"
- i+=1;
-
-#line 30 "../../../include/ztex-conf.h"
- for (b=0; b<100; b++) { // 100 x 10ms
-#line 30 "../../../include/ztex-conf.h"
- debug_stack_ptr[2] = b; // write the 10ms tick number to the current message in stack
-#line 30 "../../../include/ztex-conf.h"
- wait(10); // wait 10ms
-#line 51 "debug.c"
- }
- }
-}
-
Index: debug/debug.asm
===================================================================
--- debug/debug.asm (revision 6)
+++ debug/debug.asm (nonexistent)
@@ -1,4492 +0,0 @@
-;--------------------------------------------------------
-; File Created by SDCC : free open source ANSI-C Compiler
-; Version 2.8.0 #5117 (May 15 2008) (UNIX)
-; This file was generated Wed Sep 8 20:23:26 2010
-;--------------------------------------------------------
- .module debug_tmp
- .optsdcc -mmcs51 --model-small
-
-;--------------------------------------------------------
-; Public variables in this module
-;--------------------------------------------------------
- .globl _sendStringDescriptor_PARM_3
- .globl _sendStringDescriptor_PARM_2
- .globl _EmptyStringDescriptor
- .globl _FullSpeedConfigDescriptor_PadByte
- .globl _FullSpeedConfigDescriptor
- .globl _HighSpeedConfigDescriptor_PadByte
- .globl _HighSpeedConfigDescriptor
- .globl _DeviceQualifierDescriptor
- .globl _DeviceDescriptor
- .globl _PadByte
- .globl _configurationString
- .globl _productString
- .globl _manufacturerString
- .globl _main
- .globl _init_USB
- .globl _EP8_ISR
- .globl _EP6_ISR
- .globl _EP4_ISR
- .globl _EP2_ISR
- .globl _EP1OUT_ISR
- .globl _EP1IN_ISR
- .globl _EP0ACK_ISR
- .globl _HSGRANT_ISR
- .globl _URES_ISR
- .globl _SUSP_ISR
- .globl _SUTOK_ISR
- .globl _SOF_ISR
- .globl _abscode_identity
- .globl _debug_read_ep0
- .globl _debug_init
- .globl _debug_add_msg
- .globl _eeprom_write_ep0
- .globl _eeprom_read_ep0
- .globl _eeprom_write
- .globl _eeprom_read
- .globl _eeprom_select
- .globl _i2c_waitStop
- .globl _i2c_waitStart
- .globl _i2c_waitRead
- .globl _i2c_waitWrite
- .globl _MEM_COPY1_int
- .globl _uwait
- .globl _wait
- .globl _abscode_intvec
- .globl _EIPX6
- .globl _EIPX5
- .globl _EIPX4
- .globl _PI2C
- .globl _PUSB
- .globl _BREG7
- .globl _BREG6
- .globl _BREG5
- .globl _BREG4
- .globl _BREG3
- .globl _BREG2
- .globl _BREG1
- .globl _BREG0
- .globl _EIEX6
- .globl _EIEX5
- .globl _EIEX4
- .globl _EI2C
- .globl _EUSB
- .globl _ACC7
- .globl _ACC6
- .globl _ACC5
- .globl _ACC4
- .globl _ACC3
- .globl _ACC2
- .globl _ACC1
- .globl _ACC0
- .globl _SMOD1
- .globl _ERESI
- .globl _RESI
- .globl _INT6
- .globl _CY
- .globl _AC
- .globl _F0
- .globl _RS1
- .globl _RS0
- .globl _OV
- .globl _F1
- .globl _PF
- .globl _TF2
- .globl _EXF2
- .globl _RCLK
- .globl _TCLK
- .globl _EXEN2
- .globl _TR2
- .globl _CT2
- .globl _CPRL2
- .globl _SM0_1
- .globl _SM1_1
- .globl _SM2_1
- .globl _REN_1
- .globl _TB8_1
- .globl _RB8_1
- .globl _TI_1
- .globl _RI_1
- .globl _PS1
- .globl _PT2
- .globl _PS0
- .globl _PT1
- .globl _PX1
- .globl _PT0
- .globl _PX0
- .globl _IOD7
- .globl _IOD6
- .globl _IOD5
- .globl _IOD4
- .globl _IOD3
- .globl _IOD2
- .globl _IOD1
- .globl _IOD0
- .globl _EA
- .globl _ES1
- .globl _ET2
- .globl _ES0
- .globl _ET1
- .globl _EX1
- .globl _ET0
- .globl _EX0
- .globl _IOC7
- .globl _IOC6
- .globl _IOC5
- .globl _IOC4
- .globl _IOC3
- .globl _IOC2
- .globl _IOC1
- .globl _IOC0
- .globl _SM0_0
- .globl _SM1_0
- .globl _SM2_0
- .globl _REN_0
- .globl _TB8_0
- .globl _RB8_0
- .globl _TI_0
- .globl _RI_0
- .globl _IOB7
- .globl _IOB6
- .globl _IOB5
- .globl _IOB4
- .globl _IOB3
- .globl _IOB2
- .globl _IOB1
- .globl _IOB0
- .globl _TF1
- .globl _TR1
- .globl _TF0
- .globl _TR0
- .globl _IE1
- .globl _IT1
- .globl _IE0
- .globl _IT0
- .globl _IOA7
- .globl _IOA6
- .globl _IOA5
- .globl _IOA4
- .globl _IOA3
- .globl _IOA2
- .globl _IOA1
- .globl _IOA0
- .globl _EIP
- .globl _BREG
- .globl _EIE
- .globl _ACC
- .globl _EICON
- .globl _PSW
- .globl _TH2
- .globl _TL2
- .globl _RCAP2H
- .globl _RCAP2L
- .globl _T2CON
- .globl _SBUF1
- .globl _SCON1
- .globl _GPIFSGLDATLNOX
- .globl _GPIFSGLDATLX
- .globl _GPIFSGLDATH
- .globl _GPIFTRIG
- .globl _EP01STAT
- .globl _IP
- .globl _OEE
- .globl _OED
- .globl _OEC
- .globl _OEB
- .globl _OEA
- .globl _IOE
- .globl _IOD
- .globl _AUTOPTRSETUP
- .globl _EP68FIFOFLGS
- .globl _EP24FIFOFLGS
- .globl _EP2468STAT
- .globl _IE
- .globl _INT4CLR
- .globl _INT2CLR
- .globl _IOC
- .globl _AUTOPTRL2
- .globl _AUTOPTRH2
- .globl _AUTOPTRL1
- .globl _AUTOPTRH1
- .globl _SBUF0
- .globl _SCON0
- .globl __XPAGE
- .globl _MPAGE
- .globl _EXIF
- .globl _IOB
- .globl _CKCON
- .globl _TH1
- .globl _TH0
- .globl _TL1
- .globl _TL0
- .globl _TMOD
- .globl _TCON
- .globl _PCON
- .globl _DPS
- .globl _DPH1
- .globl _DPL1
- .globl _DPH0
- .globl _DPL0
- .globl _SP
- .globl _IOA
- .globl _ISOFRAME_COUNTER
- .globl _ep0_vendor_cmd_setup
- .globl _ep0_prev_setup_request
- .globl _ep0_payload_transfer
- .globl _ep0_payload_remaining
- .globl _SN_STRING
- .globl _MODULE_RESERVED
- .globl _INTERFACE_CAPABILITIES
- .globl _INTERFACE_VERSION
- .globl _FW_VERSION
- .globl _PRODUCT_ID
- .globl _ZTEXID
- .globl _ZTEX_DESCRIPTOR_VERSION
- .globl _ZTEX_DESCRIPTOR
- .globl _debug_read_addr
- .globl _debug_msg_buf
- .globl _debug_stack_ptr
- .globl _debug_stack
- .globl _debug_msg_size
- .globl _debug_stack_size
- .globl _debug_counter
- .globl _eeprom_write_checksum
- .globl _eeprom_write_bytes
- .globl _eeprom_addr
- .globl _INTVEC_GPIFWF
- .globl _INTVEC_GPIFDONE
- .globl _INTVEC_EP8FF
- .globl _INTVEC_EP6FF
- .globl _INTVEC_EP2FF
- .globl _INTVEC_EP8EF
- .globl _INTVEC_EP6EF
- .globl _INTVEC_EP4EF
- .globl _INTVEC_EP2EF
- .globl _INTVEC_EP8PF
- .globl _INTVEC_EP6PF
- .globl _INTVEC_EP4PF
- .globl _INTVEC_EP2PF
- .globl _INTVEC_EP8ISOERR
- .globl _INTVEC_EP6ISOERR
- .globl _INTVEC_EP4ISOERR
- .globl _INTVEC_EP2ISOERR
- .globl _INTVEC_ERRLIMIT
- .globl _INTVEC_EP8PING
- .globl _INTVEC_EP6PING
- .globl _INTVEC_EP4PING
- .globl _INTVEC_EP2PING
- .globl _INTVEC_EP1PING
- .globl _INTVEC_EP0PING
- .globl _INTVEC_IBN
- .globl _INTVEC_EP8
- .globl _INTVEC_EP6
- .globl _INTVEC_EP4
- .globl _INTVEC_EP2
- .globl _INTVEC_EP1OUT
- .globl _INTVEC_EP1IN
- .globl _INTVEC_EP0OUT
- .globl _INTVEC_EP0IN
- .globl _INTVEC_EP0ACK
- .globl _INTVEC_HISPEED
- .globl _INTVEC_USBRESET
- .globl _INTVEC_SUSPEND
- .globl _INTVEC_SUTOK
- .globl _INTVEC_SOF
- .globl _INTVEC_SUDAV
- .globl _INT12VEC_IE6
- .globl _INT11VEC_IE5
- .globl _INT10VEC_GPIF
- .globl _INT9VEC_I2C
- .globl _INT8VEC_USB
- .globl _INT7VEC_USART1
- .globl _INT6VEC_RESUME
- .globl _INT5VEC_T2
- .globl _INT4VEC_USART0
- .globl _INT3VEC_T1
- .globl _INT2VEC_IE1
- .globl _INT1VEC_T0
- .globl _INT0VEC_IE0
- .globl _EP8FIFOBUF
- .globl _EP6FIFOBUF
- .globl _EP4FIFOBUF
- .globl _EP2FIFOBUF
- .globl _EP1INBUF
- .globl _EP1OUTBUF
- .globl _EP0BUF
- .globl _GPIFABORT
- .globl _GPIFREADYSTAT
- .globl _GPIFREADYCFG
- .globl _XGPIFSGLDATLNOX
- .globl _XGPIFSGLDATLX
- .globl _XGPIFSGLDATH
- .globl _EP8GPIFTRIG
- .globl _EP8GPIFPFSTOP
- .globl _EP8GPIFFLGSEL
- .globl _EP6GPIFTRIG
- .globl _EP6GPIFPFSTOP
- .globl _EP6GPIFFLGSEL
- .globl _EP4GPIFTRIG
- .globl _EP4GPIFPFSTOP
- .globl _EP4GPIFFLGSEL
- .globl _EP2GPIFTRIG
- .globl _EP2GPIFPFSTOP
- .globl _EP2GPIFFLGSEL
- .globl _GPIFTCB0
- .globl _GPIFTCB1
- .globl _GPIFTCB2
- .globl _GPIFTCB3
- .globl _FLOWSTBHPERIOD
- .globl _FLOWSTBEDGE
- .globl _FLOWSTB
- .globl _FLOWHOLDOFF
- .globl _FLOWEQ1CTL
- .globl _FLOWEQ0CTL
- .globl _FLOWLOGIC
- .globl _FLOWSTATE
- .globl _GPIFADRL
- .globl _GPIFADRH
- .globl _GPIFCTLCFG
- .globl _GPIFIDLECTL
- .globl _GPIFIDLECS
- .globl _GPIFWFSELECT
- .globl _wLengthH
- .globl _wLengthL
- .globl _wIndexH
- .globl _wIndexL
- .globl _wValueH
- .globl _wValueL
- .globl _bRequest
- .globl _bmRequestType
- .globl _SETUPDAT
- .globl _SUDPTRCTL
- .globl _SUDPTRL
- .globl _SUDPTRH
- .globl _EP8FIFOBCL
- .globl _EP8FIFOBCH
- .globl _EP6FIFOBCL
- .globl _EP6FIFOBCH
- .globl _EP4FIFOBCL
- .globl _EP4FIFOBCH
- .globl _EP2FIFOBCL
- .globl _EP2FIFOBCH
- .globl _EP8FIFOFLGS
- .globl _EP6FIFOFLGS
- .globl _EP4FIFOFLGS
- .globl _EP2FIFOFLGS
- .globl _EP8CS
- .globl _EP6CS
- .globl _EP4CS
- .globl _EP2CS
- .globl _EPXCS
- .globl _EP1INCS
- .globl _EP1OUTCS
- .globl _EP0CS
- .globl _EP8BCL
- .globl _EP8BCH
- .globl _EP6BCL
- .globl _EP6BCH
- .globl _EP4BCL
- .globl _EP4BCH
- .globl _EP2BCL
- .globl _EP2BCH
- .globl _EP1INBC
- .globl _EP1OUTBC
- .globl _EP0BCL
- .globl _EP0BCH
- .globl _FNADDR
- .globl _MICROFRAME
- .globl _USBFRAMEL
- .globl _USBFRAMEH
- .globl _TOGCTL
- .globl _WAKEUPCS
- .globl _SUSPEND
- .globl _USBCS
- .globl _UDMACRCQUALIFIER
- .globl _UDMACRCL
- .globl _UDMACRCH
- .globl _EXTAUTODAT2
- .globl _XAUTODAT2
- .globl _EXTAUTODAT1
- .globl _XAUTODAT1
- .globl _I2CTL
- .globl _I2DAT
- .globl _I2CS
- .globl _PORTECFG
- .globl _PORTCCFG
- .globl _PORTACFG
- .globl _INTSETUP
- .globl _INT4IVEC
- .globl _INT2IVEC
- .globl _CLRERRCNT
- .globl _ERRCNTLIM
- .globl _USBERRIRQ
- .globl _USBERRIE
- .globl _GPIFIRQ
- .globl _GPIFIE
- .globl _EPIRQ
- .globl _EPIE
- .globl _USBIRQ
- .globl _USBIE
- .globl _NAKIRQ
- .globl _NAKIE
- .globl _IBNIRQ
- .globl _IBNIE
- .globl _EP8FIFOIRQ
- .globl _EP8FIFOIE
- .globl _EP6FIFOIRQ
- .globl _EP6FIFOIE
- .globl _EP4FIFOIRQ
- .globl _EP4FIFOIE
- .globl _EP2FIFOIRQ
- .globl _EP2FIFOIE
- .globl _OUTPKTEND
- .globl _INPKTEND
- .globl _EP8ISOINPKTS
- .globl _EP6ISOINPKTS
- .globl _EP4ISOINPKTS
- .globl _EP2ISOINPKTS
- .globl _EP8FIFOPFL
- .globl _EP8FIFOPFH
- .globl _EP6FIFOPFL
- .globl _EP6FIFOPFH
- .globl _EP4FIFOPFL
- .globl _EP4FIFOPFH
- .globl _EP2FIFOPFL
- .globl _EP2FIFOPFH
- .globl _ECC2B2
- .globl _ECC2B1
- .globl _ECC2B0
- .globl _ECC1B2
- .globl _ECC1B1
- .globl _ECC1B0
- .globl _ECCRESET
- .globl _ECCCFG
- .globl _EP8AUTOINLENL
- .globl _EP8AUTOINLENH
- .globl _EP6AUTOINLENL
- .globl _EP6AUTOINLENH
- .globl _EP4AUTOINLENL
- .globl _EP4AUTOINLENH
- .globl _EP2AUTOINLENL
- .globl _EP2AUTOINLENH
- .globl _EP8FIFOCFG
- .globl _EP6FIFOCFG
- .globl _EP4FIFOCFG
- .globl _EP2FIFOCFG
- .globl _EP8CFG
- .globl _EP6CFG
- .globl _EP4CFG
- .globl _EP2CFG
- .globl _EP1INCFG
- .globl _EP1OUTCFG
- .globl _GPIFHOLDAMOUNT
- .globl _REVCTL
- .globl _REVID
- .globl _FIFOPINPOLAR
- .globl _UART230
- .globl _BPADDRL
- .globl _BPADDRH
- .globl _BREAKPT
- .globl _FIFORESET
- .globl _PINFLAGSCD
- .globl _PINFLAGSAB
- .globl _IFCONFIG
- .globl _CPUCS
- .globl _GPCR2
- .globl _GPIF_WAVE3_DATA
- .globl _GPIF_WAVE2_DATA
- .globl _GPIF_WAVE1_DATA
- .globl _GPIF_WAVE0_DATA
- .globl _GPIF_WAVE_DATA
- .globl _eeprom_write_PARM_3
- .globl _eeprom_write_PARM_2
- .globl _eeprom_read_PARM_3
- .globl _eeprom_read_PARM_2
- .globl _eeprom_select_PARM_2
-;--------------------------------------------------------
-; special function registers
-;--------------------------------------------------------
- .area RSEG (DATA)
-_IOA = 0x0080
-_SP = 0x0081
-_DPL0 = 0x0082
-_DPH0 = 0x0083
-_DPL1 = 0x0084
-_DPH1 = 0x0085
-_DPS = 0x0086
-_PCON = 0x0087
-_TCON = 0x0088
-_TMOD = 0x0089
-_TL0 = 0x008a
-_TL1 = 0x008b
-_TH0 = 0x008c
-_TH1 = 0x008d
-_CKCON = 0x008e
-_IOB = 0x0090
-_EXIF = 0x0091
-_MPAGE = 0x0092
-__XPAGE = 0x0092
-_SCON0 = 0x0098
-_SBUF0 = 0x0099
-_AUTOPTRH1 = 0x009a
-_AUTOPTRL1 = 0x009b
-_AUTOPTRH2 = 0x009d
-_AUTOPTRL2 = 0x009e
-_IOC = 0x00a0
-_INT2CLR = 0x00a1
-_INT4CLR = 0x00a2
-_IE = 0x00a8
-_EP2468STAT = 0x00aa
-_EP24FIFOFLGS = 0x00ab
-_EP68FIFOFLGS = 0x00ac
-_AUTOPTRSETUP = 0x00af
-_IOD = 0x00b0
-_IOE = 0x00b1
-_OEA = 0x00b2
-_OEB = 0x00b3
-_OEC = 0x00b4
-_OED = 0x00b5
-_OEE = 0x00b6
-_IP = 0x00b8
-_EP01STAT = 0x00ba
-_GPIFTRIG = 0x00bb
-_GPIFSGLDATH = 0x00bd
-_GPIFSGLDATLX = 0x00be
-_GPIFSGLDATLNOX = 0x00bf
-_SCON1 = 0x00c0
-_SBUF1 = 0x00c1
-_T2CON = 0x00c8
-_RCAP2L = 0x00ca
-_RCAP2H = 0x00cb
-_TL2 = 0x00cc
-_TH2 = 0x00cd
-_PSW = 0x00d0
-_EICON = 0x00d8
-_ACC = 0x00e0
-_EIE = 0x00e8
-_BREG = 0x00f0
-_EIP = 0x00f8
-;--------------------------------------------------------
-; special function bits
-;--------------------------------------------------------
- .area RSEG (DATA)
-_IOA0 = 0x0080
-_IOA1 = 0x0081
-_IOA2 = 0x0082
-_IOA3 = 0x0083
-_IOA4 = 0x0084
-_IOA5 = 0x0085
-_IOA6 = 0x0086
-_IOA7 = 0x0087
-_IT0 = 0x0088
-_IE0 = 0x0089
-_IT1 = 0x008a
-_IE1 = 0x008b
-_TR0 = 0x008c
-_TF0 = 0x008d
-_TR1 = 0x008e
-_TF1 = 0x008f
-_IOB0 = 0x0090
-_IOB1 = 0x0091
-_IOB2 = 0x0092
-_IOB3 = 0x0093
-_IOB4 = 0x0094
-_IOB5 = 0x0095
-_IOB6 = 0x0096
-_IOB7 = 0x0097
-_RI_0 = 0x0098
-_TI_0 = 0x0099
-_RB8_0 = 0x009a
-_TB8_0 = 0x009b
-_REN_0 = 0x009c
-_SM2_0 = 0x009d
-_SM1_0 = 0x009e
-_SM0_0 = 0x009f
-_IOC0 = 0x00a0
-_IOC1 = 0x00a1
-_IOC2 = 0x00a2
-_IOC3 = 0x00a3
-_IOC4 = 0x00a4
-_IOC5 = 0x00a5
-_IOC6 = 0x00a6
-_IOC7 = 0x00a7
-_EX0 = 0x00a8
-_ET0 = 0x00a9
-_EX1 = 0x00aa
-_ET1 = 0x00ab
-_ES0 = 0x00ac
-_ET2 = 0x00ad
-_ES1 = 0x00ae
-_EA = 0x00af
-_IOD0 = 0x00b0
-_IOD1 = 0x00b1
-_IOD2 = 0x00b2
-_IOD3 = 0x00b3
-_IOD4 = 0x00b4
-_IOD5 = 0x00b5
-_IOD6 = 0x00b6
-_IOD7 = 0x00b7
-_PX0 = 0x00b8
-_PT0 = 0x00b9
-_PX1 = 0x00ba
-_PT1 = 0x00bb
-_PS0 = 0x00bc
-_PT2 = 0x00bd
-_PS1 = 0x00be
-_RI_1 = 0x00c0
-_TI_1 = 0x00c1
-_RB8_1 = 0x00c2
-_TB8_1 = 0x00c3
-_REN_1 = 0x00c4
-_SM2_1 = 0x00c5
-_SM1_1 = 0x00c6
-_SM0_1 = 0x00c7
-_CPRL2 = 0x00c8
-_CT2 = 0x00c9
-_TR2 = 0x00ca
-_EXEN2 = 0x00cb
-_TCLK = 0x00cc
-_RCLK = 0x00cd
-_EXF2 = 0x00ce
-_TF2 = 0x00cf
-_PF = 0x00d0
-_F1 = 0x00d1
-_OV = 0x00d2
-_RS0 = 0x00d3
-_RS1 = 0x00d4
-_F0 = 0x00d5
-_AC = 0x00d6
-_CY = 0x00d7
-_INT6 = 0x00db
-_RESI = 0x00dc
-_ERESI = 0x00dd
-_SMOD1 = 0x00df
-_ACC0 = 0x00e0
-_ACC1 = 0x00e1
-_ACC2 = 0x00e2
-_ACC3 = 0x00e3
-_ACC4 = 0x00e4
-_ACC5 = 0x00e5
-_ACC6 = 0x00e6
-_ACC7 = 0x00e7
-_EUSB = 0x00e8
-_EI2C = 0x00e9
-_EIEX4 = 0x00ea
-_EIEX5 = 0x00eb
-_EIEX6 = 0x00ec
-_BREG0 = 0x00f0
-_BREG1 = 0x00f1
-_BREG2 = 0x00f2
-_BREG3 = 0x00f3
-_BREG4 = 0x00f4
-_BREG5 = 0x00f5
-_BREG6 = 0x00f6
-_BREG7 = 0x00f7
-_PUSB = 0x00f8
-_PI2C = 0x00f9
-_EIPX4 = 0x00fa
-_EIPX5 = 0x00fb
-_EIPX6 = 0x00fc
-;--------------------------------------------------------
-; overlayable register banks
-;--------------------------------------------------------
- .area REG_BANK_0 (REL,OVR,DATA)
- .ds 8
-;--------------------------------------------------------
-; overlayable bit register bank
-;--------------------------------------------------------
- .area BIT_BANK (REL,OVR,DATA)
-bits:
- .ds 1
- b0 = bits[0]
- b1 = bits[1]
- b2 = bits[2]
- b3 = bits[3]
- b4 = bits[4]
- b5 = bits[5]
- b6 = bits[6]
- b7 = bits[7]
-;--------------------------------------------------------
-; internal ram data
-;--------------------------------------------------------
- .area DSEG (DATA)
-_eeprom_select_PARM_2:
- .ds 1
-_eeprom_read_PARM_2:
- .ds 2
-_eeprom_read_PARM_3:
- .ds 1
-_eeprom_write_PARM_2:
- .ds 2
-_eeprom_write_PARM_3:
- .ds 1
-;--------------------------------------------------------
-; overlayable items in internal ram
-;--------------------------------------------------------
- .area OSEG (OVR,DATA)
- .area OSEG (OVR,DATA)
- .area OSEG (OVR,DATA)
- .area OSEG (OVR,DATA)
- .area OSEG (OVR,DATA)
- .area OSEG (OVR,DATA)
- .area OSEG (OVR,DATA)
- .area OSEG (OVR,DATA)
- .area OSEG (OVR,DATA)
-_sendStringDescriptor_PARM_2::
- .ds 1
-_sendStringDescriptor_PARM_3::
- .ds 1
-;--------------------------------------------------------
-; Stack segment in internal ram
-;--------------------------------------------------------
- .area SSEG (DATA)
-__start__stack:
- .ds 1
-
-;--------------------------------------------------------
-; indirectly addressable internal ram data
-;--------------------------------------------------------
- .area ISEG (DATA)
-;--------------------------------------------------------
-; absolute internal ram data
-;--------------------------------------------------------
- .area IABS (ABS,DATA)
- .area IABS (ABS,DATA)
-;--------------------------------------------------------
-; bit data
-;--------------------------------------------------------
- .area BSEG (BIT)
-;--------------------------------------------------------
-; paged external ram data
-;--------------------------------------------------------
- .area PSEG (PAG,XDATA)
-;--------------------------------------------------------
-; external ram data
-;--------------------------------------------------------
- .area XSEG (XDATA)
-_GPIF_WAVE_DATA = 0xe400
-_GPIF_WAVE0_DATA = 0xe400
-_GPIF_WAVE1_DATA = 0xe420
-_GPIF_WAVE2_DATA = 0xe440
-_GPIF_WAVE3_DATA = 0xe460
-_GPCR2 = 0xe50d
-_CPUCS = 0xe600
-_IFCONFIG = 0xe601
-_PINFLAGSAB = 0xe602
-_PINFLAGSCD = 0xe603
-_FIFORESET = 0xe604
-_BREAKPT = 0xe605
-_BPADDRH = 0xe606
-_BPADDRL = 0xe607
-_UART230 = 0xe608
-_FIFOPINPOLAR = 0xe609
-_REVID = 0xe60a
-_REVCTL = 0xe60b
-_GPIFHOLDAMOUNT = 0xe60c
-_EP1OUTCFG = 0xe610
-_EP1INCFG = 0xe611
-_EP2CFG = 0xe612
-_EP4CFG = 0xe613
-_EP6CFG = 0xe614
-_EP8CFG = 0xe615
-_EP2FIFOCFG = 0xe618
-_EP4FIFOCFG = 0xe619
-_EP6FIFOCFG = 0xe61a
-_EP8FIFOCFG = 0xe61b
-_EP2AUTOINLENH = 0xe620
-_EP2AUTOINLENL = 0xe621
-_EP4AUTOINLENH = 0xe622
-_EP4AUTOINLENL = 0xe623
-_EP6AUTOINLENH = 0xe624
-_EP6AUTOINLENL = 0xe625
-_EP8AUTOINLENH = 0xe626
-_EP8AUTOINLENL = 0xe627
-_ECCCFG = 0xe628
-_ECCRESET = 0xe629
-_ECC1B0 = 0xe62a
-_ECC1B1 = 0xe62b
-_ECC1B2 = 0xe62c
-_ECC2B0 = 0xe62d
-_ECC2B1 = 0xe62e
-_ECC2B2 = 0xe62f
-_EP2FIFOPFH = 0xe630
-_EP2FIFOPFL = 0xe631
-_EP4FIFOPFH = 0xe632
-_EP4FIFOPFL = 0xe633
-_EP6FIFOPFH = 0xe634
-_EP6FIFOPFL = 0xe635
-_EP8FIFOPFH = 0xe636
-_EP8FIFOPFL = 0xe637
-_EP2ISOINPKTS = 0xe640
-_EP4ISOINPKTS = 0xe641
-_EP6ISOINPKTS = 0xe642
-_EP8ISOINPKTS = 0xe643
-_INPKTEND = 0xe648
-_OUTPKTEND = 0xe649
-_EP2FIFOIE = 0xe650
-_EP2FIFOIRQ = 0xe651
-_EP4FIFOIE = 0xe652
-_EP4FIFOIRQ = 0xe653
-_EP6FIFOIE = 0xe654
-_EP6FIFOIRQ = 0xe655
-_EP8FIFOIE = 0xe656
-_EP8FIFOIRQ = 0xe657
-_IBNIE = 0xe658
-_IBNIRQ = 0xe659
-_NAKIE = 0xe65a
-_NAKIRQ = 0xe65b
-_USBIE = 0xe65c
-_USBIRQ = 0xe65d
-_EPIE = 0xe65e
-_EPIRQ = 0xe65f
-_GPIFIE = 0xe660
-_GPIFIRQ = 0xe661
-_USBERRIE = 0xe662
-_USBERRIRQ = 0xe663
-_ERRCNTLIM = 0xe664
-_CLRERRCNT = 0xe665
-_INT2IVEC = 0xe666
-_INT4IVEC = 0xe667
-_INTSETUP = 0xe668
-_PORTACFG = 0xe670
-_PORTCCFG = 0xe671
-_PORTECFG = 0xe672
-_I2CS = 0xe678
-_I2DAT = 0xe679
-_I2CTL = 0xe67a
-_XAUTODAT1 = 0xe67b
-_EXTAUTODAT1 = 0xe67b
-_XAUTODAT2 = 0xe67c
-_EXTAUTODAT2 = 0xe67c
-_UDMACRCH = 0xe67d
-_UDMACRCL = 0xe67e
-_UDMACRCQUALIFIER = 0xe67f
-_USBCS = 0xe680
-_SUSPEND = 0xe681
-_WAKEUPCS = 0xe682
-_TOGCTL = 0xe683
-_USBFRAMEH = 0xe684
-_USBFRAMEL = 0xe685
-_MICROFRAME = 0xe686
-_FNADDR = 0xe687
-_EP0BCH = 0xe68a
-_EP0BCL = 0xe68b
-_EP1OUTBC = 0xe68d
-_EP1INBC = 0xe68f
-_EP2BCH = 0xe690
-_EP2BCL = 0xe691
-_EP4BCH = 0xe694
-_EP4BCL = 0xe695
-_EP6BCH = 0xe698
-_EP6BCL = 0xe699
-_EP8BCH = 0xe69c
-_EP8BCL = 0xe69d
-_EP0CS = 0xe6a0
-_EP1OUTCS = 0xe6a1
-_EP1INCS = 0xe6a2
-_EPXCS = 0xe6a3
-_EP2CS = 0xe6a3
-_EP4CS = 0xe6a4
-_EP6CS = 0xe6a5
-_EP8CS = 0xe6a6
-_EP2FIFOFLGS = 0xe6a7
-_EP4FIFOFLGS = 0xe6a8
-_EP6FIFOFLGS = 0xe6a9
-_EP8FIFOFLGS = 0xe6aa
-_EP2FIFOBCH = 0xe6ab
-_EP2FIFOBCL = 0xe6ac
-_EP4FIFOBCH = 0xe6ad
-_EP4FIFOBCL = 0xe6ae
-_EP6FIFOBCH = 0xe6af
-_EP6FIFOBCL = 0xe6b0
-_EP8FIFOBCH = 0xe6b1
-_EP8FIFOBCL = 0xe6b2
-_SUDPTRH = 0xe6b3
-_SUDPTRL = 0xe6b4
-_SUDPTRCTL = 0xe6b5
-_SETUPDAT = 0xe6b8
-_bmRequestType = 0xe6b8
-_bRequest = 0xe6b9
-_wValueL = 0xe6ba
-_wValueH = 0xe6bb
-_wIndexL = 0xe6bc
-_wIndexH = 0xe6bd
-_wLengthL = 0xe6be
-_wLengthH = 0xe6bf
-_GPIFWFSELECT = 0xe6c0
-_GPIFIDLECS = 0xe6c1
-_GPIFIDLECTL = 0xe6c2
-_GPIFCTLCFG = 0xe6c3
-_GPIFADRH = 0xe6c4
-_GPIFADRL = 0xe6c5
-_FLOWSTATE = 0xe6c6
-_FLOWLOGIC = 0xe6c7
-_FLOWEQ0CTL = 0xe6c8
-_FLOWEQ1CTL = 0xe6c9
-_FLOWHOLDOFF = 0xe6ca
-_FLOWSTB = 0xe6cb
-_FLOWSTBEDGE = 0xe6cc
-_FLOWSTBHPERIOD = 0xe6cd
-_GPIFTCB3 = 0xe6ce
-_GPIFTCB2 = 0xe6cf
-_GPIFTCB1 = 0xe6d0
-_GPIFTCB0 = 0xe6d1
-_EP2GPIFFLGSEL = 0xe6d2
-_EP2GPIFPFSTOP = 0xe6d3
-_EP2GPIFTRIG = 0xe6d4
-_EP4GPIFFLGSEL = 0xe6da
-_EP4GPIFPFSTOP = 0xe6db
-_EP4GPIFTRIG = 0xe6dc
-_EP6GPIFFLGSEL = 0xe6e2
-_EP6GPIFPFSTOP = 0xe6e3
-_EP6GPIFTRIG = 0xe6e4
-_EP8GPIFFLGSEL = 0xe6ea
-_EP8GPIFPFSTOP = 0xe6eb
-_EP8GPIFTRIG = 0xe6ec
-_XGPIFSGLDATH = 0xe6f0
-_XGPIFSGLDATLX = 0xe6f1
-_XGPIFSGLDATLNOX = 0xe6f2
-_GPIFREADYCFG = 0xe6f3
-_GPIFREADYSTAT = 0xe6f4
-_GPIFABORT = 0xe6f5
-_EP0BUF = 0xe740
-_EP1OUTBUF = 0xe780
-_EP1INBUF = 0xe7c0
-_EP2FIFOBUF = 0xf000
-_EP4FIFOBUF = 0xf400
-_EP6FIFOBUF = 0xf800
-_EP8FIFOBUF = 0xfc00
-_INT0VEC_IE0 = 0x0003
-_INT1VEC_T0 = 0x000b
-_INT2VEC_IE1 = 0x0013
-_INT3VEC_T1 = 0x001b
-_INT4VEC_USART0 = 0x0023
-_INT5VEC_T2 = 0x002b
-_INT6VEC_RESUME = 0x0033
-_INT7VEC_USART1 = 0x003b
-_INT8VEC_USB = 0x0043
-_INT9VEC_I2C = 0x004b
-_INT10VEC_GPIF = 0x0053
-_INT11VEC_IE5 = 0x005b
-_INT12VEC_IE6 = 0x0063
-_INTVEC_SUDAV = 0x0100
-_INTVEC_SOF = 0x0104
-_INTVEC_SUTOK = 0x0108
-_INTVEC_SUSPEND = 0x010c
-_INTVEC_USBRESET = 0x0110
-_INTVEC_HISPEED = 0x0114
-_INTVEC_EP0ACK = 0x0118
-_INTVEC_EP0IN = 0x0120
-_INTVEC_EP0OUT = 0x0124
-_INTVEC_EP1IN = 0x0128
-_INTVEC_EP1OUT = 0x012c
-_INTVEC_EP2 = 0x0130
-_INTVEC_EP4 = 0x0134
-_INTVEC_EP6 = 0x0138
-_INTVEC_EP8 = 0x013c
-_INTVEC_IBN = 0x0140
-_INTVEC_EP0PING = 0x0148
-_INTVEC_EP1PING = 0x014c
-_INTVEC_EP2PING = 0x0150
-_INTVEC_EP4PING = 0x0154
-_INTVEC_EP6PING = 0x0158
-_INTVEC_EP8PING = 0x015c
-_INTVEC_ERRLIMIT = 0x0160
-_INTVEC_EP2ISOERR = 0x0170
-_INTVEC_EP4ISOERR = 0x0174
-_INTVEC_EP6ISOERR = 0x0178
-_INTVEC_EP8ISOERR = 0x017c
-_INTVEC_EP2PF = 0x0180
-_INTVEC_EP4PF = 0x0184
-_INTVEC_EP6PF = 0x0188
-_INTVEC_EP8PF = 0x018c
-_INTVEC_EP2EF = 0x0190
-_INTVEC_EP4EF = 0x0194
-_INTVEC_EP6EF = 0x0198
-_INTVEC_EP8EF = 0x019c
-_INTVEC_EP2FF = 0x01a0
-_INTVEC_EP6FF = 0x01a8
-_INTVEC_EP8FF = 0x01ac
-_INTVEC_GPIFDONE = 0x01b0
-_INTVEC_GPIFWF = 0x01b4
-_eeprom_addr::
- .ds 2
-_eeprom_write_bytes::
- .ds 2
-_eeprom_write_checksum::
- .ds 1
-_debug_counter::
- .ds 2
-_debug_stack_size::
- .ds 1
-_debug_msg_size::
- .ds 1
-_debug_stack::
- .ds 96
-_debug_stack_ptr::
- .ds 2
-_debug_msg_buf::
- .ds 3
-_debug_read_addr::
- .ds 2
-_ZTEX_DESCRIPTOR = 0x006c
-_ZTEX_DESCRIPTOR_VERSION = 0x006d
-_ZTEXID = 0x006e
-_PRODUCT_ID = 0x0072
-_FW_VERSION = 0x0076
-_INTERFACE_VERSION = 0x0077
-_INTERFACE_CAPABILITIES = 0x0078
-_MODULE_RESERVED = 0x007e
-_SN_STRING = 0x008a
-;--------------------------------------------------------
-; absolute external ram data
-;--------------------------------------------------------
- .area XABS (ABS,XDATA)
-;--------------------------------------------------------
-; external initialized ram data
-;--------------------------------------------------------
- .area XISEG (XDATA)
-_ep0_payload_remaining::
- .ds 2
-_ep0_payload_transfer::
- .ds 1
-_ep0_prev_setup_request::
- .ds 1
-_ep0_vendor_cmd_setup::
- .ds 1
-_ISOFRAME_COUNTER::
- .ds 8
- .area HOME (CODE)
- .area GSINIT0 (CODE)
- .area GSINIT1 (CODE)
- .area GSINIT2 (CODE)
- .area GSINIT3 (CODE)
- .area GSINIT4 (CODE)
- .area GSINIT5 (CODE)
- .area GSINIT (CODE)
- .area GSFINAL (CODE)
- .area CSEG (CODE)
-;--------------------------------------------------------
-; interrupt vector
-;--------------------------------------------------------
- .area HOME (CODE)
-__interrupt_vect:
- ljmp __sdcc_gsinit_startup
-;--------------------------------------------------------
-; global & static initialisations
-;--------------------------------------------------------
- .area HOME (CODE)
- .area GSINIT (CODE)
- .area GSFINAL (CODE)
- .area GSINIT (CODE)
- .globl __sdcc_gsinit_startup
- .globl __sdcc_program_startup
- .globl __start__stack
- .globl __mcs51_genXINIT
- .globl __mcs51_genXRAMCLEAR
- .globl __mcs51_genRAMCLEAR
- .area GSFINAL (CODE)
- ljmp __sdcc_program_startup
-;--------------------------------------------------------
-; Home
-;--------------------------------------------------------
- .area HOME (CODE)
- .area HOME (CODE)
-__sdcc_program_startup:
- lcall _main
-; return from main will lock up
- sjmp .
-;--------------------------------------------------------
-; code
-;--------------------------------------------------------
- .area CSEG (CODE)
-;------------------------------------------------------------
-;Allocation info for local variables in function 'abscode_intvec'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ezintavecs.h:92: void abscode_intvec() _naked
-; -----------------------------------------
-; function abscode_intvec
-; -----------------------------------------
-_abscode_intvec:
-; naked function: no prologue.
-; ../../../include/ezintavecs.h:317: ERROR: no line number 317 in file ../../../include/ezintavecs.h
-
- .area ABSCODE (ABS,CODE)
- .org 0x0000
- ENTRY:
- ljmp #0x0200
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0003
-; # 34 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x000b
-; # 35 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0013
-; # 36 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x001b
-; # 37 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0023
-; # 38 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x002b
-; # 39 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0033
-; # 40 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x003b
-; # 41 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0043
-; # 42 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x004b
-; # 43 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0053
-; # 44 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x005b
-; # 45 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0063
-; # 46 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0100
-; # 47 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0104
-; # 48 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0108
-; # 49 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x010C
-; # 50 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0110
-; # 51 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0114
-; # 52 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0118
-; # 53 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0120
-; # 54 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0124
-; # 55 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0128
-; # 56 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x012C
-; # 57 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0130
-; # 58 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0134
-; # 59 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0138
-; # 60 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x013C
-; # 61 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0140
-; # 62 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0148
-; # 63 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x014C
-; # 64 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0150
-; # 65 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0154
-; # 66 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0158
-; # 67 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x015C
-; # 68 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0160
-; # 69 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0170
-; # 70 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0174
-; # 71 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0178
-; # 72 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x017C
-; # 73 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0180
-; # 74 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0184
-; # 75 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0188
-; # 76 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x018C
-; # 77 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0190
-; # 78 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0194
-; # 79 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x0198
-; # 80 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x019C
-; # 81 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x01A0
-; # 82 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x01A8
-; # 83 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x01AC
-; # 84 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x01B0
-; # 85 "../../../include/ezintavecs.h"
- reti
-; # 94 "../../../include/ezintavecs.h"
- .org 0x01B4
-; # 101 "../../../include/ezintavecs.h"
- reti
- .org 0x01b8
- INTVEC_DUMMY:
- reti
- .area CSEG (CODE)
-
-; naked function: no epilogue.
-;------------------------------------------------------------
-;Allocation info for local variables in function 'wait'
-;------------------------------------------------------------
-;ms Allocated to registers r2 r3
-;i Allocated to registers r6 r7
-;j Allocated to registers r4 r5
-;------------------------------------------------------------
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-; -----------------------------------------
-; function wait
-; -----------------------------------------
-_wait:
- ar2 = 0x02
- ar3 = 0x03
- ar4 = 0x04
- ar5 = 0x05
- ar6 = 0x06
- ar7 = 0x07
- ar0 = 0x00
- ar1 = 0x01
- mov r2,dpl
- mov r3,dph
-; ../../../include/ztex-utils.h:80: for (j=0; j> 8)
- mov r5,a
- mov dptr,#_debug_stack_ptr
- mov a,r4
- movx @dptr,a
- inc dptr
- mov a,r5
- movx @dptr,a
-; ../../../include/ztex-utils.h:120: AUTOPTRL1=LO(&($0));
- mov _AUTOPTRL1,#_debug_msg_buf
-; ../../../include/ztex-utils.h:121: AUTOPTRH1=HI(&($0));
- mov r6,#_debug_msg_buf
- mov r7,#(_debug_msg_buf >> 8)
- mov _AUTOPTRH1,r7
-; ../../../include/ztex-utils.h:122: AUTOPTRL2=LO(&($1));
- mov ar6,r4
- mov ar7,r5
- mov _AUTOPTRL2,r6
-; ../../../include/ztex-utils.h:123: AUTOPTRH2=HI(&($1));
- mov _AUTOPTRH2,r5
-; ../../../include/ztex-utils.h:129: _endasm;
-
- push ar2
- mov r2,#(3);
- lcall _MEM_COPY1_int
- pop ar2
-
-; ../../../include/ztex-debug.h:53: debug_counter += 1;
- mov dptr,#_debug_counter
- mov a,#0x01
- add a,r2
- movx @dptr,a
- clr a
- addc a,r3
- inc dptr
- movx @dptr,a
- ret
-;------------------------------------------------------------
-;Allocation info for local variables in function 'debug_init'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-debug.h:60: void debug_init () {
-; -----------------------------------------
-; function debug_init
-; -----------------------------------------
-_debug_init:
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- mov dptr,#_debug_counter
- clr a
- movx @dptr,a
- inc dptr
- movx @dptr,a
-; ../../../include/ztex-debug.h:62: debug_stack_size = DEBUG_STACK_SIZE;
- mov dptr,#_debug_stack_size
- mov a,#0x20
- movx @dptr,a
-; ../../../include/ztex-debug.h:63: debug_msg_size = DEBUG_MSG_SIZE;
- mov dptr,#_debug_msg_size
- mov a,#0x03
- movx @dptr,a
-; ../../../include/ztex-debug.h:64: debug_stack_ptr = debug_stack;
- mov dptr,#_debug_stack_ptr
- mov a,#_debug_stack
- movx @dptr,a
- inc dptr
- mov a,#(_debug_stack >> 8)
- movx @dptr,a
- ret
-;------------------------------------------------------------
-;Allocation info for local variables in function 'debug_read_ep0'
-;------------------------------------------------------------
-;b Allocated to registers r2
-;------------------------------------------------------------
-; ../../../include/ztex-debug.h:71: BYTE debug_read_ep0 () {
-; -----------------------------------------
-; function debug_read_ep0
-; -----------------------------------------
-_debug_read_ep0:
-; ../../../include/ztex-debug.h:73: b = ep0_payload_transfer;
- mov dptr,#_ep0_payload_transfer
- movx a,@dptr
-; ../../../include/ztex-debug.h:74: if ( b != 0) {
- mov r2,a
- jnz 00106$
- ljmp 00102$
-00106$:
-; ../../../include/ztex-utils.h:120: AUTOPTRL1=LO(&($0));
- mov dptr,#_debug_read_addr
- movx a,@dptr
- mov r3,a
- inc dptr
- movx a,@dptr
- mov r4,a
- mov _AUTOPTRL1,r3
-; ../../../include/ztex-utils.h:121: AUTOPTRH1=HI(&($0));
- mov _AUTOPTRH1,r4
-; ../../../include/ztex-utils.h:122: AUTOPTRL2=LO(&($1));
- mov _AUTOPTRL2,#0x40
-; ../../../include/ztex-utils.h:123: AUTOPTRH2=HI(&($1));
- mov _AUTOPTRH2,#0xE7
-; ../../../include/ztex-utils.h:129: _endasm;
-
- push ar2
- mov r2,#(b);
- lcall _MEM_COPY1_int
- pop ar2
-
-00102$:
-; ../../../include/ztex-debug.h:77: debug_read_addr += b;
- mov dptr,#_debug_read_addr
- movx a,@dptr
- mov r3,a
- inc dptr
- movx a,@dptr
- mov r4,a
- mov dptr,#_debug_read_addr
- mov a,r2
- add a,r3
- movx @dptr,a
- clr a
- addc a,r4
- inc dptr
- movx @dptr,a
-; ../../../include/ztex-debug.h:78: return b;
- mov dpl,r2
- ret
-;------------------------------------------------------------
-;Allocation info for local variables in function 'abscode_identity'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-descriptors.h:116: void abscode_identity() _naked
-; -----------------------------------------
-; function abscode_identity
-; -----------------------------------------
-_abscode_identity:
-; naked function: no prologue.
-; ../../../include/ztex-descriptors.h:170: .db MODULE_RESERVED_03
-
- .area ABSCODE (ABS,CODE)
-
- .org 0x06c
- .db 40
-
- .org _ZTEX_DESCRIPTOR_VERSION
- .db 1
-
- .org _ZTEXID
- .ascii "ZTEX"
-
- .org _PRODUCT_ID
- .db 0
- .db 0
- .db 0
- .db 0
-
- .org _FW_VERSION
- .db 0
-
- .org _INTERFACE_VERSION
- .db 1
-
- .org _INTERFACE_CAPABILITIES
-; # 158 "../../../include/ztex-descriptors.h"
- .db 0 + 1 + 8
-; # 160 "../../../include/ztex-descriptors.h"
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
-
- .org _MODULE_RESERVED
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
- .db 0
-
- .org _SN_STRING
- .ascii "0000000000"
-
- .area CSEG (CODE)
-
-; naked function: no epilogue.
-;------------------------------------------------------------
-;Allocation info for local variables in function 'resetToggleData'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:34: static void resetToggleData () {
-; -----------------------------------------
-; function resetToggleData
-; -----------------------------------------
-_resetToggleData:
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-; ../../../include/ztex-isr.h:46: TOGCTL = 0 | bmBIT5;
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-; ../../../include/ztex-isr.h:48: TOGCTL = 0x10 | bmBIT5;
- mov dptr,#_TOGCTL
- clr a
- movx @dptr,a
- mov a,#0x20
- movx @dptr,a
- mov a,#0x10
- movx @dptr,a
- mov a,#0x30
- movx @dptr,a
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-; ../../../include/ztex-isr.h:51: TOGCTL = 1 | bmBIT5;
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-; ../../../include/ztex-isr.h:55: TOGCTL = 0x11 | bmBIT5;
- mov dptr,#_TOGCTL
- mov a,#0x01
- movx @dptr,a
- mov a,#0x21
- movx @dptr,a
- mov a,#0x11
- movx @dptr,a
- mov a,#0x31
- movx @dptr,a
- ret
-;------------------------------------------------------------
-;Allocation info for local variables in function 'sendStringDescriptor'
-;------------------------------------------------------------
-;hiAddr Allocated with name '_sendStringDescriptor_PARM_2'
-;size Allocated with name '_sendStringDescriptor_PARM_3'
-;loAddr Allocated to registers r2
-;i Allocated to registers r2
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:68: static void sendStringDescriptor (BYTE loAddr, BYTE hiAddr, BYTE size)
-; -----------------------------------------
-; function sendStringDescriptor
-; -----------------------------------------
-_sendStringDescriptor:
- mov r2,dpl
-; ../../../include/ztex-isr.h:71: if ( size > 31)
- mov a,_sendStringDescriptor_PARM_3
- add a,#0xff - 0x1F
- jnc 00102$
-; ../../../include/ztex-isr.h:72: size = 31;
- mov _sendStringDescriptor_PARM_3,#0x1F
-00102$:
-; ../../../include/ztex-isr.h:73: AUTOPTRSETUP = 7;
- mov _AUTOPTRSETUP,#0x07
-; ../../../include/ztex-isr.h:74: AUTOPTRL1 = loAddr;
- mov _AUTOPTRL1,r2
-; ../../../include/ztex-isr.h:75: AUTOPTRH1 = hiAddr;
- mov _AUTOPTRH1,_sendStringDescriptor_PARM_2
-; ../../../include/ztex-isr.h:76: AUTOPTRL2 = (BYTE)(((unsigned short)(&EP0BUF))+1);
- mov _AUTOPTRL2,#0x41
-; ../../../include/ztex-isr.h:77: AUTOPTRH2 = (BYTE)((((unsigned short)(&EP0BUF))+1) >> 8);
- mov _AUTOPTRH2,#0xE7
-; ../../../include/ztex-isr.h:78: XAUTODAT2 = 3;
- mov dptr,#_XAUTODAT2
- mov a,#0x03
- movx @dptr,a
-; ../../../include/ztex-isr.h:79: for (i=0; i 64 ) ? 64 : ep0_payload_remaining;
- mov dptr,#_ep0_payload_remaining
- movx a,@dptr
- mov r2,a
- inc dptr
- movx a,@dptr
- mov r3,a
- clr c
- mov a,#0x40
- subb a,r2
- clr a
- subb a,r3
- jnc 00103$
- mov r4,#0x40
- mov r5,#0x00
- sjmp 00104$
-00103$:
- mov ar4,r2
- mov ar5,r3
-00104$:
- mov dptr,#_ep0_payload_transfer
- mov a,r4
- movx @dptr,a
-; ../../../include/ztex-isr.h:95: ep0_payload_remaining -= ep0_payload_transfer;
- mov r5,#0x00
- mov dptr,#_ep0_payload_remaining
- mov a,r2
- clr c
- subb a,r4
- movx @dptr,a
- mov a,r3
- subb a,r5
- inc dptr
- movx @dptr,a
- ret
-;------------------------------------------------------------
-;Allocation info for local variables in function 'ep0_vendor_cmd_su'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:102: static void ep0_vendor_cmd_su() {
-; -----------------------------------------
-; function ep0_vendor_cmd_su
-; -----------------------------------------
-_ep0_vendor_cmd_su:
-; ../../../include/ztex-isr.h:103: switch ( ep0_prev_setup_request ) {
- mov dptr,#_ep0_prev_setup_request
- movx a,@dptr
- mov r2,a
- cjne r2,#0x39,00102$
-; ../../../include/ztex-eeprom.h:233: eeprom_write_checksum = 0;
- mov dptr,#_eeprom_write_checksum
-; ../../../include/ztex-eeprom.h:234: eeprom_write_bytes = 0;
- clr a
- movx @dptr,a
- mov dptr,#_eeprom_write_bytes
- movx @dptr,a
- inc dptr
- movx @dptr,a
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- mov dptr,#(_SETUPDAT + 0x0003)
- movx a,@dptr
- mov r3,a
- mov r2,#0x00
- mov dptr,#(_SETUPDAT + 0x0002)
- movx a,@dptr
- mov r4,a
- mov r5,#0x00
- mov dptr,#_eeprom_addr
- mov a,r4
- orl a,r2
- movx @dptr,a
- mov a,r5
- orl a,r3
- inc dptr
- movx @dptr,a
-; ../../../include/ztex-conf.h:115: break;
-; ../../../include/ztex-isr.h:105: default:
- ret
-00102$:
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- mov dptr,#_EP0CS
- movx a,@dptr
- orl a,#0x01
- movx @dptr,a
-; ../../../include/ztex-isr.h:107: }
- ret
-;------------------------------------------------------------
-;Allocation info for local variables in function 'SUDAV_ISR'
-;------------------------------------------------------------
-;a Allocated to registers r2
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:113: static void SUDAV_ISR () interrupt
-; -----------------------------------------
-; function SUDAV_ISR
-; -----------------------------------------
-_SUDAV_ISR:
- push bits
- push acc
- push b
- push dpl
- push dph
- push (0+2)
- push (0+3)
- push (0+4)
- push (0+5)
- push (0+6)
- push (0+7)
- push (0+0)
- push (0+1)
- push psw
- mov psw,#0x00
-; ../../../include/ztex-isr.h:116: ep0_prev_setup_request = bRequest;
- mov dptr,#_bRequest
- movx a,@dptr
- mov r2,a
- mov dptr,#_ep0_prev_setup_request
- movx @dptr,a
-; ../../../include/ztex-isr.h:117: SUDPTRCTL = 1;
- mov dptr,#_SUDPTRCTL
- mov a,#0x01
- movx @dptr,a
-; ../../../include/ztex-isr.h:120: switch ( bRequest ) {
- mov dptr,#_bRequest
- movx a,@dptr
- mov r2,a
- add a,#0xff - 0x0C
- jnc 00214$
- ljmp 00160$
-00214$:
- mov a,r2
- add a,r2
- add a,r2
- mov dptr,#00215$
- jmp @a+dptr
-00215$:
- ljmp 00101$
- ljmp 00112$
- ljmp 00160$
- ljmp 00122$
- ljmp 00160$
- ljmp 00160$
- ljmp 00132$
- ljmp 00152$
- ljmp 00153$
- ljmp 00154$
- ljmp 00155$
- ljmp 00156$
- ljmp 00157$
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-00101$:
-; ../../../include/ztex-isr.h:122: switch(SETUPDAT[0]) {
- mov dptr,#_SETUPDAT
- movx a,@dptr
- mov r2,a
- cjne r2,#0x80,00216$
- sjmp 00102$
-00216$:
- cjne r2,#0x81,00217$
- sjmp 00103$
-00217$:
- cjne r2,#0x82,00218$
- sjmp 00104$
-00218$:
- ljmp 00160$
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-00102$:
- mov dptr,#_EP0BUF
-; ../../../include/ztex-isr.h:125: EP0BUF[1] = 0;
-; ../../../include/ztex-isr.h:126: EP0BCH = 0;
- clr a
- movx @dptr,a
- mov dptr,#(_EP0BUF + 0x0001)
- movx @dptr,a
- mov dptr,#_EP0BCH
- movx @dptr,a
-; ../../../include/ztex-isr.h:127: EP0BCL = 2;
- mov dptr,#_EP0BCL
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ztex-isr.h:128: break;
- ljmp 00160$
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-00103$:
- mov dptr,#_EP0BUF
-; ../../../include/ztex-isr.h:131: EP0BUF[1] = 0;
-; ../../../include/ztex-isr.h:132: EP0BCH = 0;
- clr a
- movx @dptr,a
- mov dptr,#(_EP0BUF + 0x0001)
- movx @dptr,a
- mov dptr,#_EP0BCH
- movx @dptr,a
-; ../../../include/ztex-isr.h:133: EP0BCL = 2;
- mov dptr,#_EP0BCL
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ztex-isr.h:134: break;
- ljmp 00160$
-; ../../../include/ztex-isr.h:135: case 0x82:
-00104$:
-; ../../../include/ztex-isr.h:136: switch ( SETUPDAT[4] ) {
- mov dptr,#(_SETUPDAT + 0x0004)
- movx a,@dptr
- mov r2,a
- jz 00106$
- cjne r2,#0x01,00220$
- sjmp 00107$
-00220$:
- cjne r2,#0x80,00221$
- sjmp 00106$
-00221$:
-; ../../../include/ztex-isr.h:138: case 0x80 :
- cjne r2,#0x81,00109$
- sjmp 00108$
-00106$:
-; ../../../include/ztex-isr.h:139: EP0BUF[0] = EP0CS & bmBIT0;
- mov dptr,#_EP0CS
- movx a,@dptr
- mov r2,a
- anl ar2,#0x01
- mov dptr,#_EP0BUF
- mov a,r2
- movx @dptr,a
-; ../../../include/ztex-isr.h:140: break;
-; ../../../include/ztex-isr.h:141: case 0x01 :
- sjmp 00110$
-00107$:
-; ../../../include/ztex-isr.h:142: EP0BUF[0] = EP1OUTCS & bmBIT0;
- mov dptr,#_EP1OUTCS
- movx a,@dptr
- mov r2,a
- anl ar2,#0x01
- mov dptr,#_EP0BUF
- mov a,r2
- movx @dptr,a
-; ../../../include/ztex-isr.h:143: break;
-; ../../../include/ztex-isr.h:144: case 0x81 :
- sjmp 00110$
-00108$:
-; ../../../include/ztex-isr.h:145: EP0BUF[0] = EP1INCS & bmBIT0;
- mov dptr,#_EP1INCS
- movx a,@dptr
- mov r2,a
- anl ar2,#0x01
- mov dptr,#_EP0BUF
- mov a,r2
- movx @dptr,a
-; ../../../include/ztex-isr.h:146: break;
-; ../../../include/ztex-isr.h:147: default:
- sjmp 00110$
-00109$:
-; ../../../include/ztex-isr.h:148: EP0BUF[0] = EPXCS[ ((SETUPDAT[4] >> 1)-1) & 3 ] & bmBIT0;
- mov dptr,#(_SETUPDAT + 0x0004)
- movx a,@dptr
- clr c
- rrc a
- dec a
- anl a,#0x03
- add a,#_EPXCS
- mov dpl,a
- clr a
- addc a,#(_EPXCS >> 8)
- mov dph,a
- movx a,@dptr
- mov r2,a
- anl ar2,#0x01
- mov dptr,#_EP0BUF
- mov a,r2
- movx @dptr,a
-; ../../../include/ztex-isr.h:150: }
-00110$:
-; ../../../include/ztex-isr.h:151: EP0BUF[1] = 0;
- mov dptr,#(_EP0BUF + 0x0001)
-; ../../../include/ztex-isr.h:152: EP0BCH = 0;
- clr a
- movx @dptr,a
- mov dptr,#_EP0BCH
- movx @dptr,a
-; ../../../include/ztex-isr.h:153: EP0BCL = 2;
- mov dptr,#_EP0BCL
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ztex-isr.h:156: break;
- ljmp 00160$
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-00112$:
-; ../../../include/ztex-isr.h:158: if ( SETUPDAT[0] == 2 && SETUPDAT[2] == 0 ) {
- mov dptr,#_SETUPDAT
- movx a,@dptr
- mov r2,a
- cjne r2,#0x02,00223$
- sjmp 00224$
-00223$:
- ljmp 00160$
-00224$:
- mov dptr,#(_SETUPDAT + 0x0002)
- movx a,@dptr
- jz 00225$
- ljmp 00160$
-00225$:
-; ../../../include/ztex-isr.h:159: switch ( SETUPDAT[4] ) {
- mov dptr,#(_SETUPDAT + 0x0004)
- movx a,@dptr
- mov r2,a
- jz 00114$
- cjne r2,#0x01,00227$
- sjmp 00115$
-00227$:
- cjne r2,#0x80,00228$
- sjmp 00114$
-00228$:
-; ../../../include/ztex-isr.h:161: case 0x80 :
- cjne r2,#0x81,00117$
- sjmp 00116$
-00114$:
-; ../../../include/ztex-isr.h:162: EP0CS &= ~bmBIT0;
- mov dptr,#_EP0CS
- movx a,@dptr
- mov r2,a
- anl a,#0xFE
- movx @dptr,a
-; ../../../include/ztex-isr.h:163: break;
- ljmp 00160$
-; ../../../include/ztex-isr.h:164: case 0x01 :
-00115$:
-; ../../../include/ztex-isr.h:165: EP1OUTCS &= ~bmBIT0;
- mov dptr,#_EP1OUTCS
- movx a,@dptr
- mov r2,a
- anl a,#0xFE
- movx @dptr,a
-; ../../../include/ztex-isr.h:166: break;
- ljmp 00160$
-; ../../../include/ztex-isr.h:167: case 0x81 :
-00116$:
-; ../../../include/ztex-isr.h:168: EP1INCS &= ~bmBIT0;
- mov dptr,#_EP1INCS
- movx a,@dptr
- mov r2,a
- anl a,#0xFE
- movx @dptr,a
-; ../../../include/ztex-isr.h:169: break;
- ljmp 00160$
-; ../../../include/ztex-isr.h:170: default:
-00117$:
-; ../../../include/ztex-isr.h:171: EPXCS[ ((SETUPDAT[4] >> 1)-1) & 3 ] &= ~bmBIT0;
- mov dptr,#(_SETUPDAT + 0x0004)
- movx a,@dptr
- clr c
- rrc a
- dec a
- anl a,#0x03
- add a,#_EPXCS
- mov r2,a
- clr a
- addc a,#(_EPXCS >> 8)
- mov r3,a
- mov dptr,#(_SETUPDAT + 0x0004)
- movx a,@dptr
- clr c
- rrc a
- dec a
- anl a,#0x03
- add a,#_EPXCS
- mov dpl,a
- clr a
- addc a,#(_EPXCS >> 8)
- mov dph,a
- movx a,@dptr
- mov r4,a
- anl ar4,#0xFE
- mov dpl,r2
- mov dph,r3
- mov a,r4
- movx @dptr,a
-; ../../../include/ztex-isr.h:175: break;
- ljmp 00160$
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-00122$:
-; ../../../include/ztex-isr.h:177: if ( SETUPDAT[0] == 2 && SETUPDAT[2] == 0 ) {
- mov dptr,#_SETUPDAT
- movx a,@dptr
- mov r2,a
- cjne r2,#0x02,00230$
- sjmp 00231$
-00230$:
- ljmp 00160$
-00231$:
- mov dptr,#(_SETUPDAT + 0x0002)
- movx a,@dptr
- jz 00232$
- ljmp 00160$
-00232$:
-; ../../../include/ztex-isr.h:178: switch ( SETUPDAT[4] ) {
- mov dptr,#(_SETUPDAT + 0x0004)
- movx a,@dptr
- mov r2,a
- jz 00124$
- cjne r2,#0x01,00234$
- sjmp 00125$
-00234$:
- cjne r2,#0x80,00235$
- sjmp 00124$
-00235$:
-; ../../../include/ztex-isr.h:180: case 0x80 :
- cjne r2,#0x81,00127$
- sjmp 00126$
-00124$:
-; ../../../include/ztex-isr.h:181: EP0CS |= bmBIT0;
- mov dptr,#_EP0CS
- movx a,@dptr
- mov r2,a
- orl a,#0x01
- movx @dptr,a
-; ../../../include/ztex-isr.h:182: break;
-; ../../../include/ztex-isr.h:183: case 0x01 :
- sjmp 00128$
-00125$:
-; ../../../include/ztex-isr.h:184: EP1OUTCS |= bmBIT0;
- mov dptr,#_EP1OUTCS
- movx a,@dptr
- mov r2,a
- orl a,#0x01
- movx @dptr,a
-; ../../../include/ztex-isr.h:185: break;
-; ../../../include/ztex-isr.h:186: case 0x81 :
- sjmp 00128$
-00126$:
-; ../../../include/ztex-isr.h:187: EP1INCS |= bmBIT0;
- mov dptr,#_EP1INCS
- movx a,@dptr
- mov r2,a
- orl a,#0x01
- movx @dptr,a
-; ../../../include/ztex-isr.h:188: break;
-; ../../../include/ztex-isr.h:189: default:
- sjmp 00128$
-00127$:
-; ../../../include/ztex-isr.h:190: EPXCS[ ((SETUPDAT[4] >> 1)-1) & 3 ] |= ~bmBIT0;
- mov dptr,#(_SETUPDAT + 0x0004)
- movx a,@dptr
- clr c
- rrc a
- dec a
- anl a,#0x03
- add a,#_EPXCS
- mov r2,a
- clr a
- addc a,#(_EPXCS >> 8)
- mov r3,a
- mov dptr,#(_SETUPDAT + 0x0004)
- movx a,@dptr
- clr c
- rrc a
- dec a
- anl a,#0x03
- add a,#_EPXCS
- mov dpl,a
- clr a
- addc a,#(_EPXCS >> 8)
- mov dph,a
- movx a,@dptr
- mov r4,a
- orl ar4,#0xFE
- mov dpl,r2
- mov dph,r3
- mov a,r4
- movx @dptr,a
-; ../../../include/ztex-isr.h:192: }
-00128$:
-; ../../../include/ztex-isr.h:193: a = ( (SETUPDAT[4] & 0x80) >> 3 ) | (SETUPDAT[4] & 0x0f);
- mov dptr,#(_SETUPDAT + 0x0004)
- movx a,@dptr
- anl a,#0x80
- swap a
- rl a
- anl a,#0x1f
- mov r2,a
- mov dptr,#(_SETUPDAT + 0x0004)
- movx a,@dptr
- mov r3,a
- mov a,#0x0F
- anl a,r3
- orl ar2,a
-; ../../../include/ztex-isr.h:194: TOGCTL = a;
-; ../../../include/ztex-isr.h:195: TOGCTL = a | bmBIT5;
- mov dptr,#_TOGCTL
- mov a,r2
- movx @dptr,a
- mov a,#0x20
- orl a,r2
- movx @dptr,a
-; ../../../include/ztex-isr.h:197: break;
- ljmp 00160$
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-00132$:
-; ../../../include/ztex-isr.h:199: switch(SETUPDAT[3]) {
- mov dptr,#(_SETUPDAT + 0x0003)
- movx a,@dptr
- mov r2,a
- cjne r2,#0x01,00237$
- sjmp 00133$
-00237$:
- cjne r2,#0x02,00238$
- sjmp 00134$
-00238$:
- cjne r2,#0x03,00239$
- sjmp 00138$
-00239$:
- cjne r2,#0x06,00240$
- ljmp 00145$
-00240$:
- cjne r2,#0x07,00241$
- ljmp 00146$
-00241$:
- ljmp 00150$
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-00133$:
-; ../../../include/ztex-isr.h:201: SUDPTRH = MSB(&DeviceDescriptor);
- mov r2,#_DeviceDescriptor
- mov r3,#(_DeviceDescriptor >> 8)
- mov dptr,#_SUDPTRH
- mov a,r3
- movx @dptr,a
-; ../../../include/ztex-isr.h:202: SUDPTRL = LSB(&DeviceDescriptor);
- mov dptr,#_SUDPTRL
- mov a,#_DeviceDescriptor
- movx @dptr,a
-; ../../../include/ztex-isr.h:203: break;
- ljmp 00160$
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-00134$:
-; ../../../include/ztex-isr.h:205: if (USBCS & bmBIT7) {
- mov dptr,#_USBCS
- movx a,@dptr
- mov r2,a
- jnb acc.7,00136$
-; ../../../include/ztex-isr.h:206: SUDPTRH = MSB(&HighSpeedConfigDescriptor);
- mov r2,#_HighSpeedConfigDescriptor
- mov r3,#(_HighSpeedConfigDescriptor >> 8)
- mov dptr,#_SUDPTRH
- mov a,r3
- movx @dptr,a
-; ../../../include/ztex-isr.h:207: SUDPTRL = LSB(&HighSpeedConfigDescriptor);
- mov dptr,#_SUDPTRL
- mov a,#_HighSpeedConfigDescriptor
- movx @dptr,a
- ljmp 00160$
-00136$:
-; ../../../include/ztex-isr.h:210: SUDPTRH = MSB(&FullSpeedConfigDescriptor);
- mov r2,#_FullSpeedConfigDescriptor
- mov r3,#(_FullSpeedConfigDescriptor >> 8)
- mov dptr,#_SUDPTRH
- mov a,r3
- movx @dptr,a
-; ../../../include/ztex-isr.h:211: SUDPTRL = LSB(&FullSpeedConfigDescriptor);
- mov dptr,#_SUDPTRL
- mov a,#_FullSpeedConfigDescriptor
- movx @dptr,a
-; ../../../include/ztex-isr.h:213: break;
- ljmp 00160$
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-00138$:
-; ../../../include/ztex-isr.h:215: switch (SETUPDAT[2]) {
- mov dptr,#(_SETUPDAT + 0x0002)
- movx a,@dptr
- mov r2,a
- cjne r2,#0x01,00243$
- sjmp 00139$
-00243$:
- cjne r2,#0x02,00244$
- sjmp 00140$
-00244$:
- cjne r2,#0x03,00245$
- sjmp 00141$
-00245$:
-; ../../../include/ztex-isr.h:216: case 1:
- cjne r2,#0x04,00143$
- sjmp 00142$
-00139$:
-; ../../../include/ztex-isr.h:217: SEND_STRING_DESCRIPTOR(manufacturerString);
- mov dpl,#_manufacturerString
- mov r2,#_manufacturerString
- mov r3,#(_manufacturerString >> 8)
- mov _sendStringDescriptor_PARM_2,r3
- mov _sendStringDescriptor_PARM_3,#0x05
- lcall _sendStringDescriptor
-; ../../../include/ztex-isr.h:218: break;
- ljmp 00160$
-; ../../../include/ztex-isr.h:219: case 2:
-00140$:
-; ../../../include/ztex-isr.h:220: SEND_STRING_DESCRIPTOR(productString);
- mov dpl,#_productString
- mov r2,#_productString
- mov r3,#(_productString >> 8)
- mov _sendStringDescriptor_PARM_2,r3
- mov _sendStringDescriptor_PARM_3,#0x19
- lcall _sendStringDescriptor
-; ../../../include/ztex-isr.h:221: break;
- ljmp 00160$
-; ../../../include/ztex-isr.h:222: case 3:
-00141$:
-; ../../../include/ztex-isr.h:223: SEND_STRING_DESCRIPTOR(SN_STRING);
- mov dpl,#_SN_STRING
- mov r2,#_SN_STRING
- mov r3,#(_SN_STRING >> 8)
- mov _sendStringDescriptor_PARM_2,r3
- mov _sendStringDescriptor_PARM_3,#0x0A
- lcall _sendStringDescriptor
-; ../../../include/ztex-isr.h:224: break;
- ljmp 00160$
-; ../../../include/ztex-isr.h:225: case 4:
-00142$:
-; ../../../include/ztex-isr.h:226: SEND_STRING_DESCRIPTOR(configurationString);
- mov dpl,#_configurationString
- mov r2,#_configurationString
- mov r3,#(_configurationString >> 8)
- mov _sendStringDescriptor_PARM_2,r3
- mov _sendStringDescriptor_PARM_3,#0x0A
- lcall _sendStringDescriptor
-; ../../../include/ztex-isr.h:227: break;
- ljmp 00160$
-; ../../../include/ztex-isr.h:228: default:
-00143$:
-; ../../../include/ztex-isr.h:229: SUDPTRH = MSB(&EmptyStringDescriptor);
- mov r2,#_EmptyStringDescriptor
- mov r3,#(_EmptyStringDescriptor >> 8)
- mov dptr,#_SUDPTRH
- mov a,r3
- movx @dptr,a
-; ../../../include/ztex-isr.h:230: SUDPTRL = LSB(&EmptyStringDescriptor);
- mov dptr,#_SUDPTRL
- mov a,#_EmptyStringDescriptor
- movx @dptr,a
-; ../../../include/ztex-isr.h:233: break;
- ljmp 00160$
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-00145$:
-; ../../../include/ztex-isr.h:235: SUDPTRH = MSB(&DeviceQualifierDescriptor);
- mov r2,#_DeviceQualifierDescriptor
- mov r3,#(_DeviceQualifierDescriptor >> 8)
- mov dptr,#_SUDPTRH
- mov a,r3
- movx @dptr,a
-; ../../../include/ztex-isr.h:236: SUDPTRL = LSB(&DeviceQualifierDescriptor);
- mov dptr,#_SUDPTRL
- mov a,#_DeviceQualifierDescriptor
- movx @dptr,a
-; ../../../include/ztex-isr.h:237: break;
- ljmp 00160$
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-00146$:
-; ../../../include/ztex-isr.h:239: if (USBCS & bmBIT7) {
- mov dptr,#_USBCS
- movx a,@dptr
- mov r2,a
- jnb acc.7,00148$
-; ../../../include/ztex-isr.h:240: SUDPTRH = MSB(&FullSpeedConfigDescriptor);
- mov r2,#_FullSpeedConfigDescriptor
- mov r3,#(_FullSpeedConfigDescriptor >> 8)
- mov dptr,#_SUDPTRH
- mov a,r3
- movx @dptr,a
-; ../../../include/ztex-isr.h:241: SUDPTRL = LSB(&FullSpeedConfigDescriptor);
- mov dptr,#_SUDPTRL
- mov a,#_FullSpeedConfigDescriptor
- movx @dptr,a
- ljmp 00160$
-00148$:
-; ../../../include/ztex-isr.h:244: SUDPTRH = MSB(&HighSpeedConfigDescriptor);
- mov r2,#_HighSpeedConfigDescriptor
- mov r3,#(_HighSpeedConfigDescriptor >> 8)
- mov dptr,#_SUDPTRH
- mov a,r3
- movx @dptr,a
-; ../../../include/ztex-isr.h:245: SUDPTRL = LSB(&HighSpeedConfigDescriptor);
- mov dptr,#_SUDPTRL
- mov a,#_HighSpeedConfigDescriptor
- movx @dptr,a
-; ../../../include/ztex-isr.h:247: break;
-; ../../../include/ztex-isr.h:248: default:
- sjmp 00160$
-00150$:
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- mov dptr,#_EP0CS
- movx a,@dptr
- mov r2,a
- orl a,#0x01
- movx @dptr,a
-; ../../../include/ztex-isr.h:251: break;
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- sjmp 00160$
-00152$:
-; ../../../include/ztex-isr.h:253: break;
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- sjmp 00160$
-00153$:
- mov dptr,#_EP0BUF
-; ../../../include/ztex-isr.h:256: EP0BCH = 0;
- clr a
- movx @dptr,a
- mov dptr,#_EP0BCH
- movx @dptr,a
-; ../../../include/ztex-isr.h:257: EP0BCL = 1;
- mov dptr,#_EP0BCL
- mov a,#0x01
- movx @dptr,a
-; ../../../include/ztex-isr.h:258: break;
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- sjmp 00160$
-00154$:
-; ../../../include/ztex-isr.h:260: resetToggleData();
- lcall _resetToggleData
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- sjmp 00160$
-00155$:
- mov dptr,#_EP0BUF
-; ../../../include/ztex-isr.h:264: EP0BCH = 0;
- clr a
- movx @dptr,a
- mov dptr,#_EP0BCH
- movx @dptr,a
-; ../../../include/ztex-isr.h:265: EP0BCL = 1;
- mov dptr,#_EP0BCL
- mov a,#0x01
- movx @dptr,a
-; ../../../include/ztex-isr.h:266: break;
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- sjmp 00160$
-00156$:
-; ../../../include/ztex-isr.h:268: resetToggleData();
- lcall _resetToggleData
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- sjmp 00160$
-00157$:
-; ../../../include/ztex-isr.h:271: if ( SETUPDAT[0] == 0x82 ) {
- mov dptr,#_SETUPDAT
- movx a,@dptr
- mov r2,a
- cjne r2,#0x82,00160$
-; ../../../include/ztex-isr.h:272: ISOFRAME_COUNTER[ ((SETUPDAT[4] >> 1)-1) & 3 ] = 0;
- mov dptr,#(_SETUPDAT + 0x0004)
- movx a,@dptr
- clr c
- rrc a
- dec a
- anl a,#0x03
- add a,acc
- add a,#_ISOFRAME_COUNTER
- mov dpl,a
- clr a
- addc a,#(_ISOFRAME_COUNTER >> 8)
- mov dph,a
- clr a
- movx @dptr,a
- inc dptr
- movx @dptr,a
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- mov dptr,#_USBFRAMEL
- movx a,@dptr
- mov dptr,#_EP0BUF
- movx @dptr,a
-; ../../../include/ztex-isr.h:274: EP0BUF[1] = USBFRAMEH;
- mov dptr,#_USBFRAMEH
- movx a,@dptr
- mov r2,a
- mov dptr,#(_EP0BUF + 0x0001)
- movx @dptr,a
-; ../../../include/ztex-isr.h:275: EP0BCH = 0;
- mov dptr,#_EP0BCH
- clr a
- movx @dptr,a
-; ../../../include/ztex-isr.h:276: EP0BCL = 2;
- mov dptr,#_EP0BCL
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ztex-isr.h:280: }
-00160$:
-; ../../../include/ztex-isr.h:283: switch ( bmRequestType ) {
- mov dptr,#_bmRequestType
- movx a,@dptr
- mov r2,a
- cjne r2,#0x40,00250$
- ljmp 00168$
-00250$:
- cjne r2,#0xC0,00251$
- sjmp 00252$
-00251$:
- ljmp 00172$
-00252$:
-; ../../../include/ztex-isr.h:285: ep0_payload_remaining = (SETUPDAT[7] << 8) | SETUPDAT[6];
- mov dptr,#(_SETUPDAT + 0x0007)
- movx a,@dptr
- mov r3,a
- mov r2,#0x00
- mov dptr,#(_SETUPDAT + 0x0006)
- movx a,@dptr
- mov r4,a
- mov r5,#0x00
- mov dptr,#_ep0_payload_remaining
- mov a,r4
- orl a,r2
- movx @dptr,a
- mov a,r5
- orl a,r3
- inc dptr
- movx @dptr,a
-; ../../../include/ztex-isr.h:286: ep0_payload_update();
- lcall _ep0_payload_update
-; ../../../include/ztex-isr.h:288: switch ( bRequest ) {
- mov dptr,#_bRequest
- movx a,@dptr
- mov r2,a
- cjne r2,#0x22,00253$
- sjmp 00162$
-00253$:
- cjne r2,#0x28,00254$
- ljmp 00165$
-00254$:
- cjne r2,#0x38,00255$
- sjmp 00163$
-00255$:
- cjne r2,#0x3A,00256$
- sjmp 00164$
-00256$:
- ljmp 00166$
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
-00162$:
-; ../../../include/ztex-isr.h:290: SUDPTRCTL = 0;
- mov dptr,#_SUDPTRCTL
-; ../../../include/ztex-isr.h:291: EP0BCH = 0;
- clr a
- movx @dptr,a
- mov dptr,#_EP0BCH
- movx @dptr,a
-; ../../../include/ztex-isr.h:292: EP0BCL = ZTEX_DESCRIPTOR_LEN;
- mov dptr,#_EP0BCL
- mov a,#0x28
- movx @dptr,a
-; ../../../include/ztex-isr.h:293: SUDPTRH = MSB(ZTEX_DESCRIPTOR_OFFS);
- mov dptr,#_SUDPTRH
- clr a
- movx @dptr,a
-; ../../../include/ztex-isr.h:294: SUDPTRL = LSB(ZTEX_DESCRIPTOR_OFFS);
- mov dptr,#_SUDPTRL
- mov a,#0x6C
- movx @dptr,a
-; ../../../include/ztex-isr.h:295: break;
- ljmp 00172$
-; ../../../include/ztex-conf.h:90: case $0:
-00163$:
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- mov dptr,#(_SETUPDAT + 0x0003)
- movx a,@dptr
- mov r3,a
- mov r2,#0x00
- mov dptr,#(_SETUPDAT + 0x0002)
- movx a,@dptr
- mov r4,a
- mov r5,#0x00
- mov dptr,#_eeprom_addr
- mov a,r4
- orl a,r2
- movx @dptr,a
- mov a,r5
- orl a,r3
- inc dptr
- movx @dptr,a
-; ../../../include/ztex-eeprom.h:216: EP0BCH = 0;
- mov dptr,#_EP0BCH
- clr a
- movx @dptr,a
-; ../../../include/ztex-eeprom.h:217: EP0BCL = eeprom_read_ep0();
- lcall _eeprom_read_ep0
- mov a,dpl
- mov dptr,#_EP0BCL
- movx @dptr,a
-; ../../../include/ztex-conf.h:92: break;
- ljmp 00172$
-; ../../../include/ztex-conf.h:90: case $0:
-00164$:
-; ../../../include/ztex-eeprom.h:244: EP0BUF[0] = LSB(eeprom_write_bytes);
- mov dptr,#_eeprom_write_bytes
- movx a,@dptr
- mov r2,a
- inc dptr
- movx a,@dptr
- mov r3,a
- mov ar4,r2
- mov dptr,#_EP0BUF
- mov a,r4
- movx @dptr,a
-; ../../../include/ztex-eeprom.h:245: EP0BUF[1] = MSB(eeprom_write_bytes);
- mov ar2,r3
- mov dptr,#(_EP0BUF + 0x0001)
- mov a,r2
- movx @dptr,a
-; ../../../include/ztex-eeprom.h:246: EP0BUF[2] = eeprom_write_checksum;
- mov dptr,#_eeprom_write_checksum
- movx a,@dptr
- mov dptr,#(_EP0BUF + 0x0002)
- movx @dptr,a
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- mov _eeprom_select_PARM_2,#0x01
- mov dpl,#0x00
- lcall _eeprom_select
- mov r2,dpl
- mov dptr,#(_EP0BUF + 0x0003)
- mov a,r2
- movx @dptr,a
-; ../../../include/ztex-eeprom.h:248: EP0BCH = 0;
- mov dptr,#_EP0BCH
- clr a
- movx @dptr,a
-; ../../../include/ztex-eeprom.h:249: EP0BCL = 4;
- mov dptr,#_EP0BCL
- mov a,#0x04
- movx @dptr,a
-; ../../../include/ztex-conf.h:92: break;
-; ../../../include/ztex-conf.h:90: case $0:
- sjmp 00172$
-00165$:
-; ../../../include/ztex-debug.h:82: debug_read_addr = (__xdata BYTE*)&debug_counter;
- mov dptr,#_debug_read_addr
- mov a,#_debug_counter
- movx @dptr,a
- inc dptr
- mov a,#(_debug_counter >> 8)
- movx @dptr,a
-; ../../../include/ztex-debug.h:83: EP0BCH = 0;
- mov dptr,#_EP0BCH
- clr a
- movx @dptr,a
-; ../../../include/ztex-debug.h:84: EP0BCL = debug_read_ep0();
- lcall _debug_read_ep0
- mov a,dpl
- mov dptr,#_EP0BCL
- movx @dptr,a
-; ../../../include/ztex-conf.h:92: break;
-; ../../../include/ztex-isr.h:297: default:
- sjmp 00172$
-00166$:
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- mov dptr,#_EP0CS
- movx a,@dptr
- mov r2,a
- orl a,#0x01
- movx @dptr,a
-; ../../../include/ztex-isr.h:300: break;
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- sjmp 00172$
-00168$:
-; ../../../include/ztex-isr.h:305: if ( SETUPDAT[7]!=0 || SETUPDAT[6]!=0 ) {
- mov dptr,#(_SETUPDAT + 0x0007)
- movx a,@dptr
- jnz 00169$
- mov dptr,#(_SETUPDAT + 0x0006)
- movx a,@dptr
- jz 00170$
-00169$:
-; ../../../include/ztex-isr.h:306: ep0_vendor_cmd_setup = 1;
- mov dptr,#_ep0_vendor_cmd_setup
- mov a,#0x01
- movx @dptr,a
-; ../../../include/ztex-isr.h:307: EP0BCL = 0;
- mov dptr,#_EP0BCL
- clr a
- movx @dptr,a
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- anl _EXIF,#0xEF
- mov dptr,#_USBIRQ
- mov a,#0x01
- movx @dptr,a
- sjmp 00173$
-00170$:
- lcall _ep0_vendor_cmd_su
-; ../../../include/ztex-isr.h:313: EP0BCL = 0;
- mov dptr,#_EP0BCL
- clr a
- movx @dptr,a
-; ../../../include/ztex-isr.h:315: }
-00172$:
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- anl _EXIF,#0xEF
- mov dptr,#_USBIRQ
- mov a,#0x01
- movx @dptr,a
- mov dptr,#_EP0CS
- movx a,@dptr
- mov r2,a
- orl a,#0x80
- movx @dptr,a
-00173$:
- pop psw
- pop (0+1)
- pop (0+0)
- pop (0+7)
- pop (0+6)
- pop (0+5)
- pop (0+4)
- pop (0+3)
- pop (0+2)
- pop dph
- pop dpl
- pop b
- pop acc
- pop bits
- reti
-;------------------------------------------------------------
-;Allocation info for local variables in function 'SOF_ISR'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:325: void SOF_ISR() interrupt
-; -----------------------------------------
-; function SOF_ISR
-; -----------------------------------------
-_SOF_ISR:
- push acc
- push dpl
- push dph
-; ../../../include/ztex-isr.h:327: EXIF &= ~bmBIT4;
- anl _EXIF,#0xEF
-; ../../../include/ztex-isr.h:328: USBIRQ = bmBIT1;
- mov dptr,#_USBIRQ
- mov a,#0x02
- movx @dptr,a
- pop dph
- pop dpl
- pop acc
- reti
-; eliminated unneeded push/pop psw
-; eliminated unneeded push/pop b
-;------------------------------------------------------------
-;Allocation info for local variables in function 'SUTOK_ISR'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:334: void SUTOK_ISR() interrupt
-; -----------------------------------------
-; function SUTOK_ISR
-; -----------------------------------------
-_SUTOK_ISR:
- push acc
- push dpl
- push dph
-; ../../../include/ztex-isr.h:336: EXIF &= ~bmBIT4;
- anl _EXIF,#0xEF
-; ../../../include/ztex-isr.h:337: USBIRQ = bmBIT2;
- mov dptr,#_USBIRQ
- mov a,#0x04
- movx @dptr,a
- pop dph
- pop dpl
- pop acc
- reti
-; eliminated unneeded push/pop psw
-; eliminated unneeded push/pop b
-;------------------------------------------------------------
-;Allocation info for local variables in function 'SUSP_ISR'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:343: void SUSP_ISR() interrupt
-; -----------------------------------------
-; function SUSP_ISR
-; -----------------------------------------
-_SUSP_ISR:
- push acc
- push dpl
- push dph
-; ../../../include/ztex-isr.h:345: EXIF &= ~bmBIT4;
- anl _EXIF,#0xEF
-; ../../../include/ztex-isr.h:346: USBIRQ = bmBIT3;
- mov dptr,#_USBIRQ
- mov a,#0x08
- movx @dptr,a
- pop dph
- pop dpl
- pop acc
- reti
-; eliminated unneeded push/pop psw
-; eliminated unneeded push/pop b
-;------------------------------------------------------------
-;Allocation info for local variables in function 'URES_ISR'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:352: void URES_ISR() interrupt
-; -----------------------------------------
-; function URES_ISR
-; -----------------------------------------
-_URES_ISR:
- push acc
- push dpl
- push dph
-; ../../../include/ztex-isr.h:354: EXIF &= ~bmBIT4;
- anl _EXIF,#0xEF
-; ../../../include/ztex-isr.h:355: USBIRQ = bmBIT4;
- mov dptr,#_USBIRQ
- mov a,#0x10
- movx @dptr,a
- pop dph
- pop dpl
- pop acc
- reti
-; eliminated unneeded push/pop psw
-; eliminated unneeded push/pop b
-;------------------------------------------------------------
-;Allocation info for local variables in function 'HSGRANT_ISR'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:361: void HSGRANT_ISR() interrupt
-; -----------------------------------------
-; function HSGRANT_ISR
-; -----------------------------------------
-_HSGRANT_ISR:
- push acc
- push dpl
- push dph
-; ../../../include/ztex-isr.h:363: EXIF &= ~bmBIT4;
- anl _EXIF,#0xEF
-; ../../../include/ztex-isr.h:364: USBIRQ = bmBIT5;
- mov dptr,#_USBIRQ
- mov a,#0x20
- movx @dptr,a
- pop dph
- pop dpl
- pop acc
- reti
-; eliminated unneeded push/pop psw
-; eliminated unneeded push/pop b
-;------------------------------------------------------------
-;Allocation info for local variables in function 'EP0ACK_ISR'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:370: void EP0ACK_ISR() interrupt
-; -----------------------------------------
-; function EP0ACK_ISR
-; -----------------------------------------
-_EP0ACK_ISR:
- push acc
- push dpl
- push dph
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- anl _EXIF,#0xEF
- mov dptr,#_USBIRQ
- mov a,#0x40
- movx @dptr,a
- pop dph
- pop dpl
- pop acc
- reti
-; eliminated unneeded push/pop psw
-; eliminated unneeded push/pop b
-;------------------------------------------------------------
-;Allocation info for local variables in function 'EP0IN_ISR'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:379: static void EP0IN_ISR () interrupt
-; -----------------------------------------
-; function EP0IN_ISR
-; -----------------------------------------
-_EP0IN_ISR:
- push bits
- push acc
- push b
- push dpl
- push dph
- push (0+2)
- push (0+3)
- push (0+4)
- push (0+5)
- push (0+6)
- push (0+7)
- push (0+0)
- push (0+1)
- push psw
- mov psw,#0x00
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- clr _EUSB
-; ../../../include/ztex-isr.h:382: ep0_payload_update();
- lcall _ep0_payload_update
-; ../../../include/ztex-isr.h:383: switch ( ep0_prev_setup_request ) {
- mov dptr,#_ep0_prev_setup_request
- movx a,@dptr
- mov r2,a
- cjne r2,#0x28,00111$
- sjmp 00103$
-00111$:
- cjne r2,#0x38,00112$
- sjmp 00101$
-00112$:
-; ../../../include/ztex-conf.h:95: case $0:
- cjne r2,#0x3A,00104$
- sjmp 00105$
-00101$:
-; ../../../include/ztex-eeprom.h:219: EP0BCH = 0;
- mov dptr,#_EP0BCH
- clr a
- movx @dptr,a
-; ../../../include/ztex-eeprom.h:220: EP0BCL = eeprom_read_ep0();
- lcall _eeprom_read_ep0
- mov a,dpl
- mov dptr,#_EP0BCL
- movx @dptr,a
-; ../../../include/ztex-conf.h:97: break;
-; ../../../include/ztex-conf.h:95: case $0:
- sjmp 00105$
-00103$:
-; ../../../include/ztex-debug.h:86: EP0BCH = 0;
- mov dptr,#_EP0BCH
- clr a
- movx @dptr,a
-; ../../../include/ztex-debug.h:87: EP0BCL = debug_read_ep0();
- lcall _debug_read_ep0
- mov a,dpl
- mov dptr,#_EP0BCL
- movx @dptr,a
-; ../../../include/ztex-conf.h:97: break;
-; ../../../include/ztex-isr.h:385: default:
- sjmp 00105$
-00104$:
-; ../../../include/ztex-isr.h:386: EP0BCH = 0;
- mov dptr,#_EP0BCH
-; ../../../include/ztex-isr.h:387: EP0BCL = 0;
- clr a
- movx @dptr,a
- mov dptr,#_EP0BCL
- movx @dptr,a
-; ../../../include/ztex-isr.h:388: }
-00105$:
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- anl _EXIF,#0xEF
- mov dptr,#_EPIRQ
- mov a,#0x01
- movx @dptr,a
-; ../../../include/ztex-isr.h:391: EUSB = 1;
- setb _EUSB
- pop psw
- pop (0+1)
- pop (0+0)
- pop (0+7)
- pop (0+6)
- pop (0+5)
- pop (0+4)
- pop (0+3)
- pop (0+2)
- pop dph
- pop dpl
- pop b
- pop acc
- pop bits
- reti
-;------------------------------------------------------------
-;Allocation info for local variables in function 'EP0OUT_ISR'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:397: static void EP0OUT_ISR () interrupt
-; -----------------------------------------
-; function EP0OUT_ISR
-; -----------------------------------------
-_EP0OUT_ISR:
- push bits
- push acc
- push b
- push dpl
- push dph
- push (0+2)
- push (0+3)
- push (0+4)
- push (0+5)
- push (0+6)
- push (0+7)
- push (0+0)
- push (0+1)
- push psw
- mov psw,#0x00
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- clr _EUSB
-; ../../../include/ztex-isr.h:400: if ( ep0_vendor_cmd_setup ) {
- mov dptr,#_ep0_vendor_cmd_setup
- movx a,@dptr
- mov r2,a
- jz 00102$
-; ../../../include/ztex-isr.h:401: ep0_vendor_cmd_setup = 0;
- mov dptr,#_ep0_vendor_cmd_setup
- clr a
- movx @dptr,a
-; ../../../include/ztex-isr.h:402: ep0_payload_remaining = (SETUPDAT[7] << 8) | SETUPDAT[6];
- mov dptr,#(_SETUPDAT + 0x0007)
- movx a,@dptr
- mov r3,a
- mov r2,#0x00
- mov dptr,#(_SETUPDAT + 0x0006)
- movx a,@dptr
- mov r4,a
- mov r5,#0x00
- mov dptr,#_ep0_payload_remaining
- mov a,r4
- orl a,r2
- movx @dptr,a
- mov a,r5
- orl a,r3
- inc dptr
- movx @dptr,a
-; ../../../include/ztex-isr.h:403: ep0_vendor_cmd_su();
- lcall _ep0_vendor_cmd_su
-00102$:
-; ../../../include/ztex-isr.h:406: ep0_payload_update();
- lcall _ep0_payload_update
-; ../../../include/ztex-isr.h:408: switch ( ep0_prev_setup_request ) {
- mov dptr,#_ep0_prev_setup_request
- movx a,@dptr
- mov r2,a
- cjne r2,#0x39,00104$
-; ../../../include/ztex-eeprom.h:237: eeprom_write_ep0(EP0BCL);
- mov dptr,#_EP0BCL
- movx a,@dptr
- mov dpl,a
- lcall _eeprom_write_ep0
-; ../../../include/ztex-isr.h:410: }
-00104$:
-; ../../../include/ztex-isr.h:412: EP0BCL = 0;
- mov dptr,#_EP0BCL
- clr a
- movx @dptr,a
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- anl _EXIF,#0xEF
- mov dptr,#_EPIRQ
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ztex-isr.h:416: if ( ep0_payload_remaining == 0 ) {
- mov dptr,#_ep0_payload_remaining
- movx a,@dptr
- mov r2,a
- inc dptr
- movx a,@dptr
- mov r3,a
- orl a,r2
- jnz 00106$
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- mov dptr,#_EP0CS
- movx a,@dptr
- mov r2,a
- orl a,#0x80
- movx @dptr,a
-00106$:
-; ../../../include/ztex-isr.h:419: EUSB = 1;
- setb _EUSB
- pop psw
- pop (0+1)
- pop (0+0)
- pop (0+7)
- pop (0+6)
- pop (0+5)
- pop (0+4)
- pop (0+3)
- pop (0+2)
- pop dph
- pop dpl
- pop b
- pop acc
- pop bits
- reti
-;------------------------------------------------------------
-;Allocation info for local variables in function 'EP1IN_ISR'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:426: void EP1IN_ISR() interrupt
-; -----------------------------------------
-; function EP1IN_ISR
-; -----------------------------------------
-_EP1IN_ISR:
- push acc
- push dpl
- push dph
-; ../../../include/ztex-isr.h:428: EXIF &= ~bmBIT4;
- anl _EXIF,#0xEF
-; ../../../include/ztex-isr.h:429: EPIRQ = bmBIT2;
- mov dptr,#_EPIRQ
- mov a,#0x04
- movx @dptr,a
- pop dph
- pop dpl
- pop acc
- reti
-; eliminated unneeded push/pop psw
-; eliminated unneeded push/pop b
-;------------------------------------------------------------
-;Allocation info for local variables in function 'EP1OUT_ISR'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:436: void EP1OUT_ISR() interrupt
-; -----------------------------------------
-; function EP1OUT_ISR
-; -----------------------------------------
-_EP1OUT_ISR:
- push acc
- push dpl
- push dph
-; ../../../include/ztex-isr.h:438: EXIF &= ~bmBIT4;
- anl _EXIF,#0xEF
-; ../../../include/ztex-isr.h:439: EPIRQ = bmBIT3;
- mov dptr,#_EPIRQ
- mov a,#0x08
- movx @dptr,a
- pop dph
- pop dpl
- pop acc
- reti
-; eliminated unneeded push/pop psw
-; eliminated unneeded push/pop b
-;------------------------------------------------------------
-;Allocation info for local variables in function 'EP2_ISR'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:445: void EP2_ISR() interrupt
-; -----------------------------------------
-; function EP2_ISR
-; -----------------------------------------
-_EP2_ISR:
- push acc
- push dpl
- push dph
-; ../../../include/ztex-isr.h:447: EXIF &= ~bmBIT4;
- anl _EXIF,#0xEF
-; ../../../include/ztex-isr.h:448: EPIRQ = bmBIT4;
- mov dptr,#_EPIRQ
- mov a,#0x10
- movx @dptr,a
- pop dph
- pop dpl
- pop acc
- reti
-; eliminated unneeded push/pop psw
-; eliminated unneeded push/pop b
-;------------------------------------------------------------
-;Allocation info for local variables in function 'EP4_ISR'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:454: void EP4_ISR() interrupt
-; -----------------------------------------
-; function EP4_ISR
-; -----------------------------------------
-_EP4_ISR:
- push acc
- push dpl
- push dph
-; ../../../include/ztex-isr.h:456: EXIF &= ~bmBIT4;
- anl _EXIF,#0xEF
-; ../../../include/ztex-isr.h:457: EPIRQ = bmBIT5;
- mov dptr,#_EPIRQ
- mov a,#0x20
- movx @dptr,a
- pop dph
- pop dpl
- pop acc
- reti
-; eliminated unneeded push/pop psw
-; eliminated unneeded push/pop b
-;------------------------------------------------------------
-;Allocation info for local variables in function 'EP6_ISR'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:463: void EP6_ISR() interrupt
-; -----------------------------------------
-; function EP6_ISR
-; -----------------------------------------
-_EP6_ISR:
- push acc
- push dpl
- push dph
-; ../../../include/ztex-isr.h:465: EXIF &= ~bmBIT4;
- anl _EXIF,#0xEF
-; ../../../include/ztex-isr.h:466: EPIRQ = bmBIT6;
- mov dptr,#_EPIRQ
- mov a,#0x40
- movx @dptr,a
- pop dph
- pop dpl
- pop acc
- reti
-; eliminated unneeded push/pop psw
-; eliminated unneeded push/pop b
-;------------------------------------------------------------
-;Allocation info for local variables in function 'EP8_ISR'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex-isr.h:472: void EP8_ISR() interrupt
-; -----------------------------------------
-; function EP8_ISR
-; -----------------------------------------
-_EP8_ISR:
- push acc
- push dpl
- push dph
-; ../../../include/ztex-isr.h:474: EXIF &= ~bmBIT4;
- anl _EXIF,#0xEF
-; ../../../include/ztex-isr.h:475: EPIRQ = bmBIT7;
- mov dptr,#_EPIRQ
- mov a,#0x80
- movx @dptr,a
- pop dph
- pop dpl
- pop acc
- reti
-; eliminated unneeded push/pop psw
-; eliminated unneeded push/pop b
-;------------------------------------------------------------
-;Allocation info for local variables in function 'init_USB'
-;------------------------------------------------------------
-;------------------------------------------------------------
-; ../../../include/ztex.h:165: void init_USB ()
-; -----------------------------------------
-; function init_USB
-; -----------------------------------------
-_init_USB:
-; ../../../include/ztex.h:167: USBCS |= 0x08;
- mov dptr,#_USBCS
- movx a,@dptr
- orl a,#0x08
- movx @dptr,a
-; ../../../include/ztex.h:169: CPUCS = bmBIT4 | bmBIT1;
- mov dptr,#_CPUCS
- mov a,#0x12
- movx @dptr,a
-; ../../../include/ztex.h:170: CKCON &= ~7;
- anl _CKCON,#0xF8
-; ../../../include/ztex.h:191: EA = 0;
- clr _EA
-; ../../../include/ztex.h:192: EUSB = 0;
- clr _EUSB
-; ../../../include/ezintavecs.h:123: INT8VEC_USB.op=0x02;
- mov dptr,#_INT8VEC_USB
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:124: INT8VEC_USB.addrH = 0x01;
- mov dptr,#(_INT8VEC_USB + 0x0001)
- mov a,#0x01
- movx @dptr,a
-; ../../../include/ezintavecs.h:125: INT8VEC_USB.addrL = 0xb8;
- mov dptr,#(_INT8VEC_USB + 0x0002)
- mov a,#0xB8
- movx @dptr,a
-; ../../../include/ezintavecs.h:126: INTSETUP |= 8;
- mov dptr,#_INTSETUP
- movx a,@dptr
- orl a,#0x08
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_SUDAV
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_SUDAV_ISR
- mov r3,#(_SUDAV_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_SUDAV + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_SUDAV + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_SOF
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_SOF_ISR
- mov r3,#(_SOF_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_SOF + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_SOF + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_SUTOK
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_SUTOK_ISR
- mov r3,#(_SUTOK_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_SUTOK + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_SUTOK + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_SUSPEND
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_SUSP_ISR
- mov r3,#(_SUSP_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_SUSPEND + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_SUSPEND + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_USBRESET
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_URES_ISR
- mov r3,#(_URES_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_USBRESET + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_USBRESET + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_HISPEED
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_HSGRANT_ISR
- mov r3,#(_HSGRANT_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_HISPEED + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_HISPEED + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_EP0ACK
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_EP0ACK_ISR
- mov r3,#(_EP0ACK_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_EP0ACK + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_EP0ACK + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_EP0IN
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_EP0IN_ISR
- mov r3,#(_EP0IN_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_EP0IN + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_EP0IN + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_EP0OUT
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_EP0OUT_ISR
- mov r3,#(_EP0OUT_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_EP0OUT + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_EP0OUT + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_EP1IN
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_EP1IN_ISR
- mov r3,#(_EP1IN_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_EP1IN + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_EP1IN + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_EP1OUT
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_EP1OUT_ISR
- mov r3,#(_EP1OUT_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_EP1OUT + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_EP1OUT + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_EP2
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_EP2_ISR
- mov r3,#(_EP2_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_EP2 + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_EP2 + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_EP4
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_EP4_ISR
- mov r3,#(_EP4_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_EP4 + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_EP4 + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_EP6
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_EP6_ISR
- mov r3,#(_EP6_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_EP6 + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_EP6 + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ezintavecs.h:115: $0.op=0x02;
- mov dptr,#_INTVEC_EP8
- mov a,#0x02
- movx @dptr,a
-; ../../../include/ezintavecs.h:116: $0.addrH=((unsigned short)(&$1)) >> 8;
- mov r2,#_EP8_ISR
- mov r3,#(_EP8_ISR >> 8)
- mov ar4,r3
- mov dptr,#(_INTVEC_EP8 + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ezintavecs.h:117: $0.addrL=(unsigned short)(&$1);
- mov dptr,#(_INTVEC_EP8 + 0x0002)
- mov a,r2
- movx @dptr,a
-; ../../../include/ztex.h:213: EXIF &= ~bmBIT4;
- anl _EXIF,#0xEF
-; ../../../include/ztex.h:214: USBIRQ = 0x7f;
- mov dptr,#_USBIRQ
- mov a,#0x7F
- movx @dptr,a
-; ../../../include/ztex.h:215: USBIE |= 0x7f;
- mov dptr,#_USBIE
- movx a,@dptr
- mov r2,a
- orl a,#0x7F
- movx @dptr,a
-; ../../../include/ztex.h:216: EPIRQ = 0xff;
- mov dptr,#_EPIRQ
- mov a,#0xFF
- movx @dptr,a
-; ../../../include/ztex.h:217: EPIE = 0xff;
- mov dptr,#_EPIE
- mov a,#0xFF
- movx @dptr,a
-; ../../../include/ztex.h:219: EUSB = 1;
- setb _EUSB
-; ../../../include/ztex.h:220: EA = 1;
- setb _EA
-; ../../../include/ztex.h:154: EP$0CFG = bmBIT7 | bmBIT5;
- mov dptr,#_EP1INCFG
- mov a,#0xA0
- movx @dptr,a
-; ../../../include/ezregs.h:46: _endasm;
-
- nop
- nop
- nop
- nop
-
-; ../../../include/ztex.h:154: EP$0CFG = bmBIT7 | bmBIT5;
- mov dptr,#_EP1OUTCFG
- mov a,#0xA0
- movx @dptr,a
-; ../../../include/ezregs.h:46: _endasm;
-
- nop
- nop
- nop
- nop
-
-; ../../../include/ztex.h:149: ;
- mov dptr,#_EP2CFG
- clr a
- movx @dptr,a
-; ../../../include/ezregs.h:46: _endasm;
-
- nop
- nop
- nop
- nop
-
-; ../../../include/ztex.h:149: ;
- mov dptr,#_EP4CFG
- clr a
- movx @dptr,a
-; ../../../include/ezregs.h:46: _endasm;
-
- nop
- nop
- nop
- nop
-
-; ../../../include/ztex.h:149: ;
- mov dptr,#_EP6CFG
- clr a
- movx @dptr,a
-; ../../../include/ezregs.h:46: _endasm;
-
- nop
- nop
- nop
- nop
-
-; ../../../include/ztex.h:149: ;
- mov dptr,#_EP8CFG
- clr a
- movx @dptr,a
-; ../../../include/ezregs.h:46: _endasm;
-
- nop
- nop
- nop
- nop
-
-; ../../../include/ztex.h:236: debug_init();
- lcall _debug_init
-; ../../../include/ztex.h:239: USBCS |= bmBIT7 | bmBIT1;
- mov dptr,#_USBCS
- movx a,@dptr
- orl a,#0x82
- movx @dptr,a
-; ../../../include/ztex.h:240: wait(250);
- mov dptr,#0x00FA
- lcall _wait
-; ../../../include/ztex.h:241: USBCS &= ~0x08;
- mov dptr,#_USBCS
- movx a,@dptr
- anl a,#0xF7
- movx @dptr,a
- ret
-;------------------------------------------------------------
-;Allocation info for local variables in function 'main'
-;------------------------------------------------------------
-;i Allocated to registers
-;b Allocated to registers r4
-;------------------------------------------------------------
-; debug.c:32: void main(void)
-; -----------------------------------------
-; function main
-; -----------------------------------------
-_main:
-; debug.c:38: init_USB();
- lcall _init_USB
-; debug.c:41: while (1) {
- mov r2,#0x00
- mov r3,#0x00
-00102$:
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- mov ar4,r2
- mov dptr,#_debug_msg_buf
- mov a,r4
- movx @dptr,a
-; debug.c:44: debug_msg_buf[1] = i >> 8;
- mov ar4,r3
- mov dptr,#(_debug_msg_buf + 0x0001)
- mov a,r4
- movx @dptr,a
-; ../../../include/ztex-conf.h:30: ][#noexpand[!dnapxeon!]//$0!dnapxeon!
- push ar2
- push ar3
- lcall _debug_add_msg
- pop ar3
- pop ar2
-; debug.c:46: i+=1;
- inc r2
- cjne r2,#0x00,00113$
- inc r3
-00113$:
-; debug.c:30: #include[ztex.h]
- mov r4,#0x00
-00104$:
- cjne r4,#0x64,00114$
-00114$:
- jnc 00102$
- mov dptr,#_debug_stack_ptr
- movx a,@dptr
- mov r5,a
- inc dptr
- movx a,@dptr
- mov r6,a
- mov dpl,r5
- mov dph,r6
- inc dptr
- inc dptr
- mov a,r4
- movx @dptr,a
- mov dptr,#0x000A
- push ar2
- push ar3
- push ar4
- lcall _wait
- pop ar4
- pop ar3
- pop ar2
- inc r4
- sjmp 00104$
- .area CSEG (CODE)
- .area CONST (CODE)
-_manufacturerString:
- .ascii "ZTEX"
- .db 0x00
-_productString:
- .ascii "debug for EZ-USB devices"
- .db 0x00
-_configurationString:
- .ascii "(unknown)"
- .db 0x00
-_PadByte:
- .db #0x00
-_DeviceDescriptor:
- .db #0x12
- .db #0x01
- .db #0x00
- .db #0x02
- .db #0xFF
- .db #0xFF
- .db #0xFF
- .db #0x40
- .db #0x1A
- .db #0x22
- .db #0x00
- .db #0x01
- .db #0x00
- .db #0x00
- .db #0x01
- .db #0x02
- .db #0x03
- .db #0x01
-_DeviceQualifierDescriptor:
- .db #0x0A
- .db #0x06
- .db #0x00
- .db #0x02
- .db #0xFF
- .db #0xFF
- .db #0xFF
- .db #0x40
- .db #0x01
- .db #0x00
-_HighSpeedConfigDescriptor:
- .db #0x09
- .db #0x02
- .db #0x20
- .db #0x00
- .db #0x01
- .db #0x01
- .db #0x04
- .db #0xC0
- .db #0x32
- .db #0x09
- .db #0x04
- .db #0x00
- .db #0x00
- .db #0x02
- .db #0xFF
- .db #0xFF
- .db #0xFF
- .db #0x00
- .db #0x07
- .db #0x05
- .db #0x81
- .db #0x02
- .db #0x00
- .db #0x02
- .db #0x00
- .db #0x07
- .db #0x05
- .db #0x01
- .db #0x02
- .db #0x00
- .db #0x02
- .db #0x00
-_HighSpeedConfigDescriptor_PadByte:
- .db #0x00
- .db 0x00
-_FullSpeedConfigDescriptor:
- .db #0x09
- .db #0x02
- .db #0x20
- .db #0x00
- .db #0x01
- .db #0x01
- .db #0x04
- .db #0xC0
- .db #0x32
- .db #0x09
- .db #0x04
- .db #0x00
- .db #0x00
- .db #0x02
- .db #0xFF
- .db #0xFF
- .db #0xFF
- .db #0x00
- .db #0x07
- .db #0x05
- .db #0x81
- .db #0x02
- .db #0x40
- .db #0x00
- .db #0x00
- .db #0x07
- .db #0x05
- .db #0x01
- .db #0x02
- .db #0x40
- .db #0x00
- .db #0x00
-_FullSpeedConfigDescriptor_PadByte:
- .db #0x00
- .db 0x00
-_EmptyStringDescriptor:
- .db #0x04
- .db #0x03
- .db #0x00
- .db #0x00
- .area XINIT (CODE)
-__xinit__ep0_payload_remaining:
- .byte #0x00,#0x00
-__xinit__ep0_payload_transfer:
- .db #0x00
-__xinit__ep0_prev_setup_request:
- .db #0xFF
-__xinit__ep0_vendor_cmd_setup:
- .db #0x00
-__xinit__ISOFRAME_COUNTER:
- .byte #0x00,#0x00
- .byte #0x00,#0x00
- .byte #0x00,#0x00
- .byte #0x00,#0x00
- .area CABS (ABS,CODE)
Index: debug/debug.lnk
===================================================================
--- debug/debug.lnk (revision 6)
+++ debug/debug.lnk (nonexistent)
@@ -1,20 +0,0 @@
--myuxi
--Y
--a 0x0100
--v 0x1000
--w 0x2e00
--b HOME = 0x0200
--b XSEG = 0x3200
--b PSEG = 0x3200
--b ISEG = 0x0000
--b BSEG = 0x0000
--k /usr/bin/../share/sdcc/lib/small
--k /usr/share/sdcc/lib/small
--l mcs51
--l libsdcc
--l libint
--l liblong
--l libfloat
-debug.rel
-
--e
Index: debug/debug.mem
===================================================================
--- debug/debug.mem (revision 6)
+++ debug/debug.mem (nonexistent)
@@ -1,28 +0,0 @@
-Internal RAM layout:
- 0 1 2 3 4 5 6 7 8 9 A B C D E F
-0x00:|0|0|0|0|0|0|0|0|a|a|a|a|a|a|a|Q|
-0x10:|Q| | | | | | | | | | | | | | | |
-0x20:|T|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
-0x30:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
-0x40:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
-0x50:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
-0x60:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
-0x70:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
-0x80:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
-0x90:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
-0xa0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
-0xb0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
-0xc0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
-0xd0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
-0xe0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
-0xf0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
-0-3:Reg Banks, T:Bit regs, a-z:Data, B:Bits, Q:Overlay, I:iData, S:Stack, A:Absolute
-
-Stack starts at: 0x21 (sp set to 0x20) with 223 bytes available.
-
-Other memory:
- Name Start End Size Max
- ---------------- -------- -------- -------- --------
- PAGED EXT. RAM 0 256
- EXTERNAL RAM 0x3200 0x327c 125 4096
- ROM/EPROM/FLASH 0x0000 0x1124 3974 11776