⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bulkonly.lis

📁 基于D12
💻 LIS
📖 第 1 页 / 共 2 页
字号:
 0130                   .dbline -2
 0130           L8:
 0130 2296              adiw R28,2
 0132 0E940000          xcall pop_gset4
 0136                   .dbline 0 ; func end
 0136 0895              ret
 0138                   .dbsym r len 12 s
 0138                   .dbsym r pRomData 10 pkc
 0138                   .dbend
 0138                   .dbfunc e IsCBWValid _IsCBWValid fc
                        .even
 0138           _IsCBWValid::
 0138 0E940000          xcall push_gset2
 013C                   .dbline -1
 013C                   .dbline 62
 013C           ;   else
 013C           ;   {     
 013C           ;      D12_CWriteEndpoint(5,ControlData.wLength,pRomData);
 013C           ;      ControlData.wCount+=ControlData.wLength;
 013C           ;      bEPPflags.bits.bulk_state=BULK_DATA_END;
 013C           ;   }
 013C           ; }
 013C           ; BOOLEAN IsCBWValid(void)
 013C           ; {
 013C                   .dbline 63
 013C           ;   if((Bulk_CBW.dCBWSignature==CBW_SIGNATURE)&&
 013C 45E5              ldi R20,85
 013E 53E5              ldi R21,83
 0140 62E4              ldi R22,66
 0142 73E4              ldi R23,67
 0144 40900200          lds R4,_Bulk_Block+2
 0148 50900300          lds R5,_Bulk_Block+2+1
 014C 20900000          lds R2,_Bulk_Block
 0150 30900100          lds R3,_Bulk_Block+1
 0154 2416              cp R2,R20
 0156 3506              cpc R3,R21
 0158 4606              cpc R4,R22
 015A 5706              cpc R5,R23
 015C 61F4              brne L30
 015E 81E0              ldi R24,1
 0160 20900D00          lds R2,_Bulk_Block+13
 0164 8215              cp R24,R2
 0166 38F0              brlo L30
 0168 80E1              ldi R24,16
 016A 20900E00          lds R2,_Bulk_Block+14
 016E 8215              cp R24,R2
 0170 10F0              brlo L30
 0172                   .dbline 66
 0172           ;                        (Bulk_CBW.bCBWLUN<=1)&&
 0172           ;            (Bulk_CBW.bCBWCBLength<=MAX_CDBLEN))
 0172           ;               return TRUE;
 0172 01E0              ldi R16,1
 0174 01C0              xjmp L29
 0176           L30:
 0176                   .dbline 68
 0176           ;       else
 0176           ;               return FALSE;
 0176 0027              clr R16
 0178                   .dbline -2
 0178           L29:
 0178 0E940000          xcall pop_gset2
 017C                   .dbline 0 ; func end
 017C 0895              ret
 017E                   .dbend
 017E                   .dbfunc e Bulk_ErrorHandler _Bulk_ErrorHandler fV
 017E           ;     wByteCount -> R18,R19
 017E           ;      CSWStatus -> R16
                        .even
 017E           _Bulk_ErrorHandler::
 017E 0E940000          xcall push_gset2
 0182                   .dbline -1
 0182                   .dbline 71
 0182           ; }
 0182           ; void Bulk_ErrorHandler(unsigned char CSWStatus,unsigned int wByteCount)
 0182           ; {
 0182                   .dbline 72
 0182           ;   Bulk_CSW.dCSWDataResidue=Bulk_CBW.dCBWDataTransferLength-wByteCount;
 0182 1901              movw R2,R18
 0184 4424              clr R4
 0186 5524              clr R5
 0188 80900A00          lds R8,_Bulk_Block+8+2
 018C 90900B00          lds R9,_Bulk_Block+8+2+1
 0190 60900800          lds R6,_Bulk_Block+8
 0194 70900900          lds R7,_Bulk_Block+8+1
 0198 6218              sub R6,R2
 019A 7308              sbc R7,R3
 019C 8408              sbc R8,R4
 019E 9508              sbc R9,R5
 01A0 70920900          sts _Bulk_Block+8+1,R7
 01A4 60920800          sts _Bulk_Block+8,R6
 01A8 90920B00          sts _Bulk_Block+8+2+1,R9
 01AC 80920A00          sts _Bulk_Block+8+2,R8
 01B0                   .dbline 73
 01B0           ;   Bulk_CSW.dCSWSignature=CSW_SIGNATURE;
 01B0 45E5              ldi R20,85
 01B2 53E5              ldi R21,83
 01B4 62E4              ldi R22,66
 01B6 73E5              ldi R23,83
 01B8 50930100          sts _Bulk_Block+1,R21
 01BC 40930000          sts _Bulk_Block,R20
 01C0 70930300          sts _Bulk_Block+2+1,R23
 01C4 60930200          sts _Bulk_Block+2,R22
 01C8                   .dbline 74
 01C8           ;   Bulk_CSW.bCSWStatus=CSWStatus;      
 01C8 00930C00          sts _Bulk_Block+12,R16
 01CC                   .dbline -2
 01CC           L34:
 01CC 0E940000          xcall pop_gset2
 01D0                   .dbline 0 ; func end
 01D0 0895              ret
 01D2                   .dbsym r wByteCount 18 i
 01D2                   .dbsym r CSWStatus 16 c
 01D2                   .dbend
                        .area bss(ram, con, rel)
 0000                   .dbfile J:\PDIUSBD12-Materials\富昌\优盘5.0\BulkOnly.C
 0000           _Bulk_Block::
 0000                   .blkb 31
 001F                   .dbstruct 0 16 _GENERIC_RBC
 001F                   .dbfield 0 OperationCode c
 001F                   .dbfield 1 Reserved0 A[15:15]c
 001F                   .dbend
 001F                   .dbstruct 0 7 _INQUIRY_SPC
 001F                   .dbfield 0 OperationCode i
 001F                   .dbfield 2 EVPD F[0:1]
 001F                   .dbfield 2 CMDDT F[1:1]
 001F                   .dbfield 2 Reserved0 F[2:6]
 001F                   .dbfield 3 PageCode c
 001F                   .dbfield 4 Reserved1 c
 001F                   .dbfield 5 AllocationLength c
 001F                   .dbfield 6 Control c
 001F                   .dbend
 001F                   .dbstruct 0 6 _MODE_SENSE_SPC
 001F                   .dbfield 0 OperationCode c
 001F                   .dbfield 1 Reserved0 F[0:3]
 001F                   .dbfield 1 DisableBlockDescriptor F[3:1]
 001F                   .dbfield 1 Reserved1 F[4:4]
 001F                   .dbfield 1 PageCode F[8:6]
 001F                   .dbfield 1 PageControl F[14:2]
 001F                   .dbfield 3 Reserved2 c
 001F                   .dbfield 4 ParameterLength c
 001F                   .dbfield 5 Control c
 001F                   .dbend
 001F                   .dbstruct 0 10 _READ10_RBC
 001F                   .dbfield 0 OperationCode c
 001F                   .dbfield 1 Reserved0 c
 001F                   .dbfield 2 LogicalBlockAddress A[4:4]c
 001F                   .dbfield 6 Reserved1 c
 001F                   .dbfield 7 TransferLength A[2:2]c
 001F                   .dbfield 9 Control c
 001F                   .dbend
 001F                   .dbstruct 0 10 _READ_CAPACITY_RBC
 001F                   .dbfield 0 OperationCode c
 001F                   .dbfield 1 Reserved0 A[8:8]c
 001F                   .dbfield 9 Control c
 001F                   .dbend
 001F                   .dbstruct 0 11 _READ_FORMAT_CAPACITY_RBC
 001F                   .dbfield 0 OperationCode c
 001F                   .dbfield 1 Reserved0 A[5:5]c
 001F                   .dbfield 6 AllocationLength A[2:2]c
 001F                   .dbfield 8 Reserved1 A[3:3]c
 001F                   .dbend
 001F                   .dbstruct 0 7 _TEST_UNIT_SPC
 001F                   .dbfield 0 OperationCode c
 001F                   .dbfield 1 Reserved0 A[4:4]c
 001F                   .dbfield 5 Control i
 001F                   .dbend
 001F                   .dbstruct 0 11 _VERIFY_RBC
 001F                   .dbfield 0 OperationCode i
 001F                   .dbfield 2 Reserved0 c
 001F                   .dbfield 3 LogicalBlockAddress A[4:4]c
 001F                   .dbfield 7 Reserved1 c
 001F                   .dbfield 8 TransferLength A[2:2]c
 001F                   .dbfield 10 Control c
 001F                   .dbend
 001F                   .dbstruct 0 10 _WRITE10_RBC
 001F                   .dbfield 0 OperationCode c
 001F                   .dbfield 1 Reserved0 F[0:3]
 001F                   .dbfield 1 FUA F[3:1]
 001F                   .dbfield 1 Reserved1 F[4:4]
 001F                   .dbfield 2 LogicalBlockAddress A[4:4]c
 001F                   .dbfield 6 Reserved2 c
 001F                   .dbfield 7 TransferLength A[2:2]c
 001F                   .dbfield 9 Control c
 001F                   .dbend
 001F                   .dbstruct 0 7 _MEDIA_REMOVAL_SPC
 001F                   .dbfield 0 OperationCode c
 001F                   .dbfield 1 Reserved0 A[3:3]c
 001F                   .dbfield 4 Prevent F[0:2]
 001F                   .dbfield 4 Reserved1 F[2:6]
 001F                   .dbfield 5 Control i
 001F                   .dbend
 001F                   .dbunion 0 16 _CDB_RBC
 001F                   .dbfield 0 RbcCdb_Generic S[_GENERIC_RBC]
 001F                   .dbfield 0 SpcCdb_Inquiry S[_INQUIRY_SPC]
 001F                   .dbfield 0 SpcCdb_ModeSense S[_MODE_SENSE_SPC]
 001F                   .dbfield 0 RbcCdb_Read10 S[_READ10_RBC]
 001F                   .dbfield 0 RbcCdb_ReadCapacity S[_READ_CAPACITY_RBC]
 001F                   .dbfield 0 RbcCdb_ReadFormatCapacity S[_READ_FORMAT_CAPACITY_RBC]
 001F                   .dbfield 0 SpcCdb_TestUnit S[_TEST_UNIT_SPC]
 001F                   .dbfield 0 RbcCdb_Verify S[_VERIFY_RBC]
 001F                   .dbfield 0 RbcCdb_Write10 S[_WRITE10_RBC]
 001F                   .dbfield 0 SpcCdb_Removeal S[_MEDIA_REMOVAL_SPC]
 001F                   .dbend
 001F                   .dbstruct 0 31 _COMMAND_BLOCK_WRAPPER
 001F                   .dbfield 0 dCBWSignature l
 001F                   .dbfield 4 dCBWTag l
 001F                   .dbfield 8 dCBWDataTransferLength l
 001F                   .dbfield 12 bmCBWFlags c
 001F                   .dbfield 13 bCBWLUN c
 001F                   .dbfield 14 bCBWCBLength c
 001F                   .dbfield 15 CBWCB S[_CDB_RBC]
 001F                   .dbend
 001F                   .dbstruct 0 13 _COMMAND_STATUS_WRAPPER
 001F                   .dbfield 0 dCSWSignature l
 001F                   .dbfield 4 dCSWTag l
 001F                   .dbfield 8 dCSWDataResidue l
 001F                   .dbfield 12 bCSWStatus c
 001F                   .dbend
 001F                   .dbunion 0 31 _BULK_STRUCT
 001F                   .dbfield 0 cbw S[_COMMAND_BLOCK_WRAPPER]
 001F                   .dbfield 0 csw S[_COMMAND_STATUS_WRAPPER]
 001F                   .dbend
 001F                   .dbsym e Bulk_Block _Bulk_Block S[_BULK_STRUCT]

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -