?? kprotodma.lst
字號:
C51 COMPILER V6.20c KPROTODMA 10/31/2002 21:55:44 PAGE 1
C51 COMPILER V6.20c, COMPILATION OF MODULE KPROTODMA
OBJECT MODULE PLACED IN kprotodma.OBJ
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE kprotodma.c REGFILE(.\xugy.ORC) BROWSE ORDER DEBUG OBJECTEXTEND CODE LISTIN
-CLUDE SYMBOLS
stmt level source
1
2
3
4
5
6
7
8
9 #include <stdio.h>
1 =1 /*--------------------------------------------------------------------------
2 =1 STDIO.H
3 =1
4 =1 Prototypes for standard I/O functions.
5 =1 Copyright (c) 1988-2001 Keil Elektronik GmbH and Keil Software, Inc.
6 =1 All rights reserved.
7 =1 --------------------------------------------------------------------------*/
8 =1
9 =1 #ifndef EOF
10 =1 #define EOF -1
11 =1 #endif
12 =1
13 =1 #ifndef NULL
14 =1 #define NULL ((void *) 0)
15 =1 #endif
16 =1
17 =1 #ifndef _SIZE_T
18 =1 #define _SIZE_T
19 =1 typedef unsigned int size_t;
20 =1 #endif
21 =1
22 =1 #pragma SAVE
23 =1 #pragma REGPARMS
24 =1 extern char _getkey (void);
25 =1 extern char getchar (void);
26 =1 extern char ungetchar (char);
27 =1 extern char putchar (char);
28 =1 extern int printf (const char *, ...);
29 =1 extern int sprintf (char *, const char *, ...);
30 =1 extern int vprintf (const char *, char *);
31 =1 extern int vsprintf (char *, const char *, char *);
32 =1 extern char *gets (char *, int n);
33 =1 extern int scanf (const char *, ...);
34 =1 extern int sscanf (char *, const char *, ...);
35 =1 extern int puts (const char *);
36 =1
37 =1 #pragma RESTORE
10 #include <string.h>
1 =1 /*--------------------------------------------------------------------------
2 =1 STRING.H
3 =1
4 =1 String functions.
5 =1 Copyright (c) 1988-2001 Keil Elektronik GmbH and Keil Software, Inc.
6 =1 All rights reserved.
7 =1 --------------------------------------------------------------------------*/
C51 COMPILER V6.20c KPROTODMA 10/31/2002 21:55:44 PAGE 2
8 =1
9 =1 #ifndef _SIZE_T
=1 #define _SIZE_T
=1 typedef unsigned int size_t;
=1 #endif
13 =1
14 =1 #ifndef NULL
=1 #define NULL ((void *) 0L)
=1 #endif
17 =1
18 =1 #pragma SAVE
19 =1 #pragma REGPARMS
20 =1 extern char *strcat (char *s1, char *s2);
21 =1 extern char *strncat (char *s1, char *s2, int n);
22 =1
23 =1 extern char strcmp (char *s1, char *s2);
24 =1 extern char strncmp (char *s1, char *s2, int n);
25 =1
26 =1 extern char *strcpy (char *s1, char *s2);
27 =1 extern char *strncpy (char *s1, char *s2, int n);
28 =1
29 =1 extern int strlen (char *);
30 =1
31 =1 extern char *strchr (const char *s, char c);
32 =1 extern int strpos (const char *s, char c);
33 =1 extern char *strrchr (const char *s, char c);
34 =1 extern int strrpos (const char *s, char c);
35 =1
36 =1 extern int strspn (char *s, char *set);
37 =1 extern int strcspn (char *s, char *set);
38 =1 extern char *strpbrk (char *s, char *set);
39 =1 extern char *strrpbrk (char *s, char *set);
40 =1 extern char *strstr (char *s, char *sub);
41 =1
42 =1 extern char memcmp (void *s1, void *s2, int n);
43 =1 extern void *memcpy (void *s1, void *s2, int n);
44 =1 extern void *memchr (void *s, char val, int n);
45 =1 extern void *memccpy (void *s1, void *s2, char val, int n);
46 =1 extern void *memmove (void *s1, void *s2, int n);
47 =1 extern void *memset (void *s, char val, int n);
48 =1 #pragma RESTORE
11
12 #include "kmain.h"
1 =1 /*
2 =1 //*************************************************************************
3 =1 // basic #defines
4 =1 //*************************************************************************
5 =1 */
6 =1 #define MAX_ENDPOINTS (unsigned char)0x3
7 =1
8 =1 //#define EP0_TX_FIFO_SIZE 16
9 =1 //#define EP0_RX_FIFO_SIZE 16
10 =1 #define EP0_PACKET_SIZE 16
11 =1
12 =1 //#define EP1_TX_FIFO_SIZE 4
13 =1 //#define EP1_RX_FIFO_SIZE 4
14 =1 #define EP1_PACKET_SIZE 4
15 =1
16 =1 //#define EP2_TX_FIFO_SIZE 64
17 =1 //#define EP2_RX_FIFO_SIZE 64
18 =1 #define EP2_PACKET_SIZE 64
19 =1
C51 COMPILER V6.20c KPROTODMA 10/31/2002 21:55:44 PAGE 3
20 =1
21 =1 #define USB_IDLE 0
22 =1 #define USB_TRANSMIT 1
23 =1 #define USB_RECEIVE 2
24 =1
25 =1 #define USB_CLASS_CODE_TEST_CLASS_DEVICE 0xdc
26 =1 #define USB_SUBCLASS_CODE_TEST_CLASS_D12 0xA0
27 =1 #define USB_PROTOCOL_CODE_TEST_CLASS_D12 0xB0
28 =1
29 =1 /*
30 =1 //*************************************************************************
31 =1 // masks
32 =1 //*************************************************************************
33 =1 */
34 =1
35 =1 #define USB_RECIPIENT (unsigned char)0x1F
36 =1 #define USB_RECIPIENT_DEVICE (unsigned char)0x00
37 =1 #define USB_RECIPIENT_INTERFACE (unsigned char)0x01
38 =1 #define USB_RECIPIENT_ENDPOINT (unsigned char)0x02
39 =1
40 =1 #define USB_REQUEST_TYPE_MASK (unsigned char)0x60
41 =1 #define USB_STANDARD_REQUEST (unsigned char)0x00
42 =1 //#define USB_CLASS_REQUEST (unsigned char)0x20
43 =1 #define USB_VENDOR_REQUEST (unsigned char)0x40
44 =1
45 =1 #define USB_REQUEST_MASK (unsigned char)0x0F
46 =1
47 =1 #define DEVICE_ADDRESS_MASK 0x7F
48 =1
49 =1 /*
50 =1 //*************************************************************************
51 =1 // macros
52 =1 //*************************************************************************
53 =1 */
54 =1 #define SWAP(x) ((((x) & 0xFF) << 8) | (((x) >> 8) & 0xFF))
55 =1
56 =1 #define MSB(x) (((x) >> 8) & 0xFF)
57 =1 #define LSB(x) ((x) & 0xFF)
58 =1
59 =1 #define FALSE 0
60 =1 #define TRUE (!FALSE)
61 =1
62 =1 /*
63 =1 //*************************************************************************
64 =1 // basic typedefs
65 =1 //*************************************************************************
66 =1 */
67 =1 typedef unsigned char UCHAR;
68 =1 typedef unsigned short USHORT;
69 =1 typedef unsigned long ULONG;
70 =1 typedef unsigned char BOOL;
71 =1
72 =1 /*
73 =1 //*************************************************************************
74 =1 // structure and union definitions
75 =1 //*************************************************************************
76 =1 */
77 =1 typedef union _epp_flags
78 =1 {
79 =1 struct _flags
80 =1 {
81 =1 unsigned char timer : 1;
C51 COMPILER V6.20c KPROTODMA 10/31/2002 21:55:44 PAGE 4
82 =1 unsigned char bus_reset : 1;
83 =1 unsigned char suspend : 1;
84 =1 unsigned char setup_packet : 1;
85 =1 unsigned char remote_wakeup : 1;
86 =1 unsigned char in_isr : 1;
87 =1 unsigned char control_state : 2;
88 =1
89 =1 unsigned char configuration : 1;
90 =1 unsigned char verbose : 1;
91 =1 unsigned char ep1_rxdone : 1;
92 =1 unsigned char setup_dma : 2; // V2.3
93 =1 unsigned char dma_state : 2;
94 =1 unsigned char power_down : 1; // Smart Board
95 =1 } bits;
96 =1 unsigned short value;
97 =1 } EPPFLAGS;
98 =1
99 =1 typedef struct _device_request
100 =1 {
101 =1 unsigned char bmRequestType;
102 =1 unsigned char bRequest;
103 =1 unsigned short wValue;
104 =1 unsigned short wIndex;
105 =1 unsigned short wLength;
106 =1 } DEVICE_REQUEST;
107 =1
108 =1 typedef struct _IO_REQUEST {
109 =1 unsigned short uAddressL;
110 =1 unsigned char bAddressH;
111 =1 unsigned short uSize;
112 =1 unsigned char bCommand;
113 =1 } IO_REQUEST, *PIO_REQUEST;
114 =1
115 =1 #define MAX_CONTROLDATA_SIZE 8
116 =1
117 =1 typedef struct _control_xfer
118 =1 {
119 =1 DEVICE_REQUEST DeviceRequest;
120 =1 unsigned short wLength;
121 =1 unsigned short wCount;
122 =1 unsigned char * pData;
123 =1 unsigned char dataBuffer[MAX_CONTROLDATA_SIZE];
124 =1 } CONTROL_XFER;
125 =1
126 =1 /*
127 =1 //*************************************************************************
128 =1 // USB utility functions
129 =1 //*************************************************************************
130 =1 */
131 =1 //extern void D12_SetMode(unsigned char bConfig, unsigned char bClkDiv);
132 =1 //extern void D12_SetDMA(unsigned char bMode);
133 =1 //extern unsigned char D12_GetDMA(void);
134 =1 //extern unsigned char D12_ReadEndpointStatus(unsigned char bEndp);
135 =1 //extern void D12_SetEndpointStatus(unsigned char bEndp, unsigned char bStalled);
136 =1 //extern void single_transmit(unsigned char * pData, unsigned char len);
137 =1 //extern void stall_ep0(void);
138 =1 //void D12_SendResume(void);
139 =1
140 =1 //#define IN_TOKEN_DMA 1
141 =1 //#define OUT_TOKEN_DMA 0
142 =1
143 =1 #define DMA_BUFFER_SIZE 256
C51 COMPILER V6.20c KPROTODMA 10/31/2002 21:55:44 PAGE 5
144 =1
145 =1 #define DMA_IDLE 0
146 =1 #define DMA_RUNNING 1
147 =1 #define DMA_PENDING 2
148 =1
149 =1 #define SETUP_DMA_REQUEST 0x0471
150 =1 #define GET_FIRMWARE_VERSION 0x0472
151 =1 //#define GET_SET_TWAIN_REQUEST 0x0473
152 =1 #define GET_BUFFER_SIZE 0x0474
153 =1 /*
154 =1 typedef struct _TWAIN_FILEINFO {
155 =1 unsigned char bPage; // bPage bit 7 - 5 map to uSize bit 18 - 16
156 =1 unsigned char uSizeH; // uSize bit 15 - 8
157 =1 unsigned char uSizeL; // uSize bit 7 - 0
158 =1 } TWAIN_FILEINFO, *PTWAIN_FILEINFO;
159 =1 */
160 =1
161 =1
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -