📄 periph.lst
字号:
543 1 // the delay requirement. See "Synchroniztion Delay" in the Technical
544 1 // Reference Manual for more information
545 1 // Set the stretch to 5
546 1 CKCON = (CKCON&(~bmSTRETCH)) | 5;
547 1
548 1 FIFORESET = 2;
549 1
550 1 // we're quad-buffered, so we need to arm EP2 four times
551 1 EP2BCL = 0x80;
552 1 EP2BCL = 0x80;
553 1 EP2BCL = 0x80;
554 1 EP2BCL = 0x80;
555 1
556 1 // Reset the stretch to 0
557 1 CKCON = (CKCON&(~bmSTRETCH)) | FW_STRETCH_VALUE;
558 1 }
C51 COMPILER V7.10 PERIPH 05/28/2007 19:12:34 PAGE 11
ASSEMBLY LISTING OF GENERATED OBJECT CODE
; FUNCTION Com005D (BEGIN)
0000 L?0094:
0000 90E6AB MOV DPTR,#0E6ABH
0003 E0 MOVX A,@DPTR
0004 FE MOV R6,A
0005 A3 INC DPTR
0006 E0 MOVX A,@DPTR
0007 7C00 MOV R4,#00H
0009 2400 ADD A,#00H
000B FF MOV R7,A
000C EC MOV A,R4
000D 3E ADDC A,R6
000E FE MOV R6,A
000F 90E690 MOV DPTR,#0E690H
0012 E0 MOVX A,@DPTR
0013 FC MOV R4,A
0014 A3 INC DPTR
0015 E0 MOVX A,@DPTR
0016 2F ADD A,R7
0017 F500 R MOV x+01H,A
0019 EC MOV A,R4
001A 3E ADDC A,R6
001B F500 R MOV x,A
001D 22 RET
001E L?0095:
001E AE00 R MOV R6,x
0020 AF00 R MOV R7,x+01H
0022 E4 CLR A
0023 FC MOV R4,A
0024 FD MOV R5,A
0025 AB00 R MOV R3,dataTransferLen+03H
0027 AA00 R MOV R2,dataTransferLen+02H
0029 A900 R MOV R1,dataTransferLen+01H
002B A800 R MOV R0,dataTransferLen
002D D3 SETB C
002E 020000 E LJMP ?C?ULCMP
0031 L?0096:
0031 AF82 MOV R7,DPL
0033 F500 E MOV pConfigDscr,A
0035 8F00 E MOV pConfigDscr+01H,R7
0037 F583 MOV DPH,A
0039 A3 INC DPTR
003A 7402 MOV A,#02H
003C F0 MOVX @DPTR,A
003D 7400 E MOV A,#LOW halfKBuffer
003F 22 RET
0040 L?0097:
0040 AF00 R MOV R7,dataTransferLen+03H
0042 AE00 R MOV R6,dataTransferLen+02H
0044 AD00 R MOV R5,dataTransferLen+01H
0046 AC00 R MOV R4,dataTransferLen
0048 EC MOV A,R4
0049 4D ORL A,R5
004A 4E ORL A,R6
004B 4F ORL A,R7
004C 22 RET
004D L?0098:
004D AF82 MOV R7,DPL
004F F500 E MOV pOtherConfigDscr,A
C51 COMPILER V7.10 PERIPH 05/28/2007 19:12:34 PAGE 12
0051 8F00 E MOV pOtherConfigDscr+01H,R7
0053 F583 MOV DPH,A
0055 A3 INC DPTR
0056 7407 MOV A,#07H
0058 F0 MOVX @DPTR,A
0059 22 RET
005A L?0099:
005A E500 E MOV A,wPacketSize
005C 90E626 MOV DPTR,#0E626H
005F F0 MOVX @DPTR,A
0060 E500 E MOV A,wPacketSize+01H
0062 A3 INC DPTR
0063 F0 MOVX @DPTR,A
0064 22 RET
0065 L?0100:
0065 C3 CLR C
0066 E500 R MOV A,count+01H
0068 9500 R SUBB A,driveDataLen+01H
006A E500 R MOV A,count
006C 9500 R SUBB A,driveDataLen
006E 22 RET
; FUNCTION Com005D (END)
; FUNCTION TD_Init (BEGIN)
; SOURCE LINE # 54
; SOURCE LINE # 55
; SOURCE LINE # 57
0000 90E600 MOV DPTR,#0E600H
0003 E0 MOVX A,@DPTR
0004 54E7 ANL A,#0E7H
0006 4410 ORL A,#010H
0008 F0 MOVX @DPTR,A
; SOURCE LINE # 58
0009 E4 CLR A
000A F500 R MOV writedelaydummy,A
; SOURCE LINE # 61
000C A3 INC DPTR
000D E0 MOVX A,@DPTR
000E 4440 ORL A,#040H
0010 F0 MOVX @DPTR,A
; SOURCE LINE # 62
0011 E4 CLR A
0012 F500 R MOV writedelaydummy,A
; SOURCE LINE # 65
0014 F500 R MOV currentState,A
; SOURCE LINE # 67
0016 120000 R LCALL initUSB
; SOURCE LINE # 68
0019 7C00 E MOV R4,#HIGH WaveDataPio0
001B 7D00 E MOV R5,#LOW WaveDataPio0
001D 7B40 MOV R3,#040H
001F 7A00 MOV R2,#00H
0021 7F00 MOV R7,#00H
0023 7EE4 MOV R6,#0E4H
0025 120000 R LCALL _mymemmovexx
; SOURCE LINE # 69
0028 7E00 R MOV R6,#HIGH SCSIInquiryData
002A 7F00 R MOV R7,#LOW SCSIInquiryData
002C 7C00 R MOV R4,#HIGH SCSIInquiryDataSource
002E 7D00 R MOV R5,#LOW SCSIInquiryDataSource
0030 7B2C MOV R3,#02CH
0032 7A00 MOV R2,#00H
C51 COMPILER V7.10 PERIPH 05/28/2007 19:12:34 PAGE 13
0034 120000 R LCALL _mymemmovexx
; SOURCE LINE # 71
0037 120000 E LCALL resetATAPIDevice
; SOURCE LINE # 73
003A 120000 E LCALL SCSITestUnitReady
003D EF MOV A,R7
003E 6003 JZ ?C0001
; SOURCE LINE # 74
0040 120000 E LCALL SCSITestUnitReady
0043 ?C0001:
; SOURCE LINE # 77
0043 120000 E LCALL ATAPIIdDevice
; SOURCE LINE # 79
0046 120000 E LCALL SCSITestUnitReady
0049 EF MOV A,R7
004A 6003 JZ ?C0002
; SOURCE LINE # 80
004C 120000 E LCALL SCSITestUnitReady
004F ?C0002:
; SOURCE LINE # 82
004F 750006 E MOV intrfcSubClass,#06H
; SOURCE LINE # 83
0052 300003 R JNB scsi,?C0004
; SOURCE LINE # 84
; SOURCE LINE # 85
0055 120000 E LCALL SCSIInquiryToATAPI
; SOURCE LINE # 86
; SOURCE LINE # 87
0058 ?C0004:
0058 22 RET
; FUNCTION TD_Init (END)
; FUNCTION TD_Poll (BEGIN)
; SOURCE LINE # 91
; SOURCE LINE # 92
; SOURCE LINE # 93
0000 E4 CLR A
0001 F500 R MOV count,A
0003 F500 R MOV count+01H,A
; SOURCE LINE # 96
0005 90E6A3 MOV DPTR,#0E6A3H
0008 E0 MOVX A,@DPTR
0009 20E245 JB ACC.2,?C0010
; SOURCE LINE # 97
; SOURCE LINE # 99
000C 900000 R MOV DPTR,#usbcString
000F E0 MOVX A,@DPTR
0010 FC MOV R4,A
0011 A3 INC DPTR
0012 E0 MOVX A,@DPTR
0013 FD MOV R5,A
0014 A3 INC DPTR
0015 E0 MOVX A,@DPTR
0016 FE MOV R6,A
0017 A3 INC DPTR
0018 E0 MOVX A,@DPTR
0019 FF MOV R7,A
001A 90F000 MOV DPTR,#0F000H
001D E0 MOVX A,@DPTR
001E F8 MOV R0,A
001F A3 INC DPTR
0020 E0 MOVX A,@DPTR
C51 COMPILER V7.10 PERIPH 05/28/2007 19:12:34 PAGE 14
0021 F9 MOV R1,A
0022 A3 INC DPTR
0023 E0 MOVX A,@DPTR
0024 FA MOV R2,A
0025 A3 INC DPTR
0026 E0 MOVX A,@DPTR
0027 FB MOV R3,A
0028 C3 CLR C
0029 120000 E LCALL ?C?ULCMP
002C 6002 JZ ?C0006
; SOURCE LINE # 100
; SOURCE LINE # 102
; SOURCE LINE # 103
002E 8017 SJMP ?C0087
0030 ?C0006:
; SOURCE LINE # 105
; SOURCE LINE # 106
0030 90F00E MOV DPTR,#0F00EH
0033 E0 MOVX A,@DPTR
0034 240F ADD A,#0FH
0036 FF MOV R7,A
0037 E4 CLR A
0038 33 RLC A
0039 FE MOV R6,A
003A 90E690 MOV DPTR,#0E690H
003D E0 MOVX A,@DPTR
003E FC MOV R4,A
003F A3 INC DPTR
0040 E0 MOVX A,@DPTR
0041 C3 CLR C
0042 9F SUBB A,R7
0043 EC MOV A,R4
0044 9E SUBB A,R6
0045 5007 JNC ?C0008
; SOURCE LINE # 107
; SOURCE LINE # 109
0047 ?C0087:
0047 90E6A3 MOV DPTR,#0E6A3H
004A 7401 MOV A,#01H
004C F0 MOVX @DPTR,A
; SOURCE LINE # 110
004D 22 RET
004E ?C0008:
; SOURCE LINE # 112
; SOURCE LINE # 114
004E 120000 R LCALL processCBW
; SOURCE LINE # 115
; SOURCE LINE # 116
; SOURCE LINE # 117
; SOURCE LINE # 118
0051 ?C0010:
0051 22 RET
; FUNCTION TD_Poll (END)
; FUNCTION initUSB (BEGIN)
; SOURCE LINE # 125
; SOURCE LINE # 126
; SOURCE LINE # 128
0000 90E670 MOV DPTR,#0E670H
0003 7401 MOV A,#01H
0005 F0 MOVX @DPTR,A
; SOURCE LINE # 129
C51 COMPILER V7.10 PERIPH 05/28/2007 19:12:34 PAGE 15
0006 75B2BE MOV OEA,#0BEH
; SOURCE LINE # 130
0009 7580FE MOV IOA,#0FEH
; SOURCE LINE # 133
000C C288 CLR IT0
; SOURCE LINE # 136
000E 90E601 MOV DPTR,#0E601H
0011 748E MOV A,#08EH
0013 F0 MOVX @DPTR,A
; SOURCE LINE # 137
0014 90E600 MOV DPTR,#0E600H
0017 7414 MOV A,#014H
0019 F0 MOVX @DPTR,A
; SOURCE LINE # 139
001A 90E609 MOV DPTR,#0E609H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -