📄 bulk_only.lst
字号:
C51 COMPILER V6.23a BULK_ONLY 11/27/2003 16:39:15 PAGE 1
C51 COMPILER V6.23a, COMPILATION OF MODULE BULK_ONLY
OBJECT MODULE PLACED IN bulk_only.OBJ
COMPILER INVOKED BY: d:\SoftDev\Keil\C51\BIN\C51.EXE bulk_only.c LARGE BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /****************************************************************/
2 /* UP-MP3DIY100 */
3 /* Beijing Universal Pioneering Technology Co., LTD */
4 /* CopyRighted,All right Reserved www.up-tech.com */
5 /* July,2003 */
6 /* 010-62387873 62381842 */
7 /****************************************************************/
8
9 //this file to process the request about bulk_only
10 #include <string.h>
11
12 #include "bulk_only.h"
13 #include "fat16.h"
14 #include "usbdisk.h"
15 #include "uart.h"
16 #include "flash.h"
17
18 //extern unsigned char EpBuf[];
19
20 long unsigned int dDataResiduce=0;
21 unsigned char bulk_state=0; //当前传送状态
22 unsigned char *pCurrentBuf; //数据传送指针
23 long int nBufCount=0; //传送数据当前位置
24
25
26 unsigned char MSC_dCBWSignature[]={0x55,0x53,0x42,0x43};
27 unsigned char MSC_dCSWSignature[]={0x55,0x53,0x42,0x53};
28
29 #define Format_Unit 0x04
30 #define Inquiry 0x12
31 #define Mode_Select 0x55
32 #define Mode_Sense 0x1A
33 #define Medium_Removal 0x1E
34 #define Read10 0x28
35 #define Read12 0xA8
36 #define Read_Capacity 0x25
37 #define Read_Format_Capacities 0x23
38 #define Request_Sense 0x03
39 #define Rezero 0x01
40 #define Seek10 0x2B
41 #define Send_Diag 0x1D
42 #define Start_Stop_Unit 0x1B
43 #define Test_Unit_Ready 0x00
44 #define Verify 0x2F
45 #define Write10 0x2A
46 #define Write12 0xAA
47 #define Write_And_Verify 0x2E
48
49
50
51
52 #define SCSI_MSPGCD_TPP 0x1c
53 #define SCSI_MSPGCD_RETALL 0x3f
54
55 unsigned char Bulk_Out_Buf[64];
C51 COMPILER V6.23a BULK_ONLY 11/27/2003 16:39:15 PAGE 2
56 unsigned char Page_Buf[512];
57
58
59 short int Transfer_Length;
60 long int Logical_Block_Address;
61 long int nCurrentPage,nBeginPage;
62 long int nCurrentBlock;
63 code unsigned char B_InquiryData[]={
64 0x00, //Direct Access Device
65 0x80, //RMB
66 0x00, //ISO/ECMA/ANSI
67 0x01, //Response Data Format
68 0x1f, //Additional Length
69 0x00, //Reserved
70 0x00, //Reserved
71 0x00, //Reserved
72 'U','P','-','T','E','C','H',' ', //Vendor Information
73 'M','P','3',' ','P','l','a','y','e','r',' ','V','1','.','0','0',//Product Identification
74 0,0,0,0}; //Product Revision Level n.nn
75
76 code unsigned char CapactiyLstHd[]={0x00,0x00,0x00,0x10};
77 code unsigned char bBlockLength[]={0x00,0x02,0x00}; //512 Byte
78 code unsigned char nLastLBAddr[]={0x00,0x01,0xf3,0xff}; //Last Logical Block Address for 64MB
79 code unsigned char B_Read_Format_capacities[]={0x00,0x00,0x00,0x10, //capacity list header
80 0x00,0x00,0x04,0x00, 0x01, 0x00,0x02,0x00, //capacity descriptor
81 // Number of Blocks =1024,unformatted media,blocklength = 512Bytes
82 0x00,0x00,0x04,0x00, 0x00, 0x00,0x02,0x00 //Formattable Capacity Descriptors
83 };
84
85 code unsigned char B_Read_Capacity[]={
86 0x00,0x00,0xff,0xe0, //Last Logical Block Address for 64MB
87 0x00,0x00,0x02,0x00 //block length in bytes
88 };
89
90 /*
91 code unsigned char B_Mode_Sense_ALL[]={0x00,0x3e,//Mode Data Length
92 0x00, //Medium Type Code
93 0,//write enabled
94 0,0,0,0,//reserved
95 //Read-Write Eroor Recovery Page
96 0x01, //Page Code of Read-Write Error Recovery Page
97 0x0a, //Page Length
98 0, //Error Recovery Parameters
99 3, //Read Retry Count
100 0,0,0,0,
101 3, //Write Retry Count
102 0,0,0,
103 //Flexible Disk Page
104 0x05, //Page Code of Flexible Disk Page
105 0x1e, //Page Length
106 0x13,0x88, //Transfer Rate = 512kbps
107 0, //Number of Heads磁头数
108 0, //Sectors per Track每磁道扇区数
109 0x02,0x00, //Data bytes per Sector每扇区字节数
110 0x00,0x00, //Number of Cuylinders柱面数
111 0,0,0,0,0,0,0,0,0,//Reserved 保留
112 1, //motor On Delay
113 0xff, //motor Off Delay=Never
114 0,0,0,0,0,0,0,//Reserved 保留
115 0x00,0x00, //Medium Rotation Rate介质旋转速率=300rpm
116 0,0, //Reserved 保留
117 //Removable Block Access Capabilities Page
C51 COMPILER V6.23a BULK_ONLY 11/27/2003 16:39:15 PAGE 3
118 0x1b, //Page Code
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -