?? cls1.lst
字號:
"File: CLS1.ASM Holtek Cross-Assembler Version 2.86 Page 1
1 0000 include HT82K96e.inc
2 0000 include usbrf.inc
3 0000
4 0000
5 0000 EXTERN bCMD_INDEX:BIT
6 0000 extern bAltkbProtocol :bit
7 0000 extern baltmouseprotocol :bit
8 0000
9 0000
10 0000 extern TempKBTime :byte
11 0000 extern TempmouseTime :byte
12 0000 extern TempKBTime_L :byte
13 0000 extern TempmouseTime_L :byte
14 0000
15 0000 extern fifo_type :byte
16 0000 extern FIFO_Request :byte
17 0000 extern fifo_wIndexl :byte
18 0000 extern FIFO_wIndexH :byte
19 0000 extern FIFO_wValueL :byte
20 0000 extern FIFO_wValueH :byte
21 0000 extern FIFO_wLengthH :byte
22 0000 extern FIFO_wLengthL :byte
23 0000
24 0000 extern INT_temp2 :byte
25 0000 extern FIFO_OUT1 :byte
26 0000 extern FIFO_SendLen :byte
27 0000 extern ReportkbTime :byte
28 0000 extern ReportMouseTime :byte
29 0000 extern
30 0000
31 0000
32 0000 extern movekeyboarddata :near
33 0000 Extern ExitExt :near
34 0000 EXTERN ToStallPipe0 :NEAR
35 0000 EXTERN SendFIFOOut :NEAR
36 0000 EXTERN SendHandshake :NEAR
37 0000 ;extern moveacpidata :near
38 0000 ;extern moveMultidata :near
39 0000
40 0000 TEMP EQU INT_TEMP2
41 0000
42 0000 CLS1 .SECTION AT 1d0h 'code' ;1cbH 'code'
43 0000
44 0000 ;----- Class-Specific request -----------------------------------------------
45 0000
46 0000
47 0000 SetProtocol: ;
48 0000 ;Not Check bmRequestType direction because wLength = 0
49 0000 ;SZ FIFO_Type.@Setup_D ;Host to device ?
50 0000 ;JMP ToStallPipe0 ;No: to stall
51 0000
52 0000 0700 E MOV A,FIFO_wLengthL ;Length = 0
53 0001 0300 E ADD A,FIFO_wLengthH
54 0002 390A SNZ Z
55 0003 2800 E JMP ToStallPipe0 ;No: to stall
"File: CLS1.ASM Holtek Cross-Assembler Version 2.86 Page 2
56 0004
57 0004 1080 E SZ FIFO_wValueH ;wValueH = 0 ?
58 0005 2800 E JMP ToStallPipe0 ;No: to stall
59 0006
60 0006 1080 E sz FIFO_wIndexL
61 0007 2800 E jmp ToStallPipe0
62 0008 3400 E clr bAltkbProtocol
63 0009 1080 E sz FIFO_wValueL
64 000A 3000 E set bAltkbProtocol
65 000B 2800 E JMP SendHandshake ;send handshake flag
66 000C ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
67 000C GetProtocol:
68 000C ;Check bmRequestType direction
69 000C 3800 E SNZ FIFO_Type.@Setup_D ;Device to host ?
70 000D 2800 E JMP ToStallPipe0 ;No: to stall
71 000E
72 000E 1080 E SZ FIFO_wValueL ;default = 0 ?
73 000F 2800 E JMP ToStallPipe0
74 0010 1080 E SZ FIFO_wValueH
75 0011 2800 E JMP ToStallPipe0 ;No: to stall
76 0012
77 0012 1080 E SZ FIFO_wLengthH ;Length = 0
78 0013 2800 E JMP ToStallPipe0 ;No: to stall
79 0014 0700 E MOV A,FIFO_wLengthL ;Length = 1 ?
80 0015 0C01 XOR A,01H ;
81 0016 390A SNZ Z ;
82 0017 2800 E JMP ToStallPipe0 ;No: to stall
83 0018
84 0018 1F05 clr acc
85 0019 1080 E sz FIFO_wIndexL
86 001A 2800 E JMP ToStallPipe0
87 001B 3C00 E sz bAltkbProtocol
88 001C 3005 set acc.0
89 001D 2A36 jmp ReportVL
90 001E
91 001E ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
92 001E SetIdle:
93 001E ;maybe need support
94 001E 1080 E sz FIFO_wLengthL ;Length = 0
95 001F 2800 E jmp Tostallpipe0
96 0020 1080 E sz FIFO_wLengthH
97 0021 2800 E JMP ToStallPipe0 ;No: to stall
98 0022
99 0022 1F00 E clr TempKBTime
100 0023 1F00 E clr TempmouseTime
101 0024 1F00 E clr TempKBTime_L
102 0025 1F00 E clr TempmouseTime_L
103 0026
104 0026 0F00 E MOV A,offset ReportkbTime
105 0027 1080 E SZ FIFO_wIndexL ;0-KB, 1-Mouse
106 0028 2800 E JMP ToStallPipe0
107 0029 write_idle_rate:
108 0029 0081 MOV MP0,A
109 002A 0700 E MOV A,FIFO_wValueH ;Get particular report time
110 002B 0080 MOV R0,A ;
111 002C
112 002C ;Set particular report flag
113 002C 2800 E JMP SendHandshake ;send handshake flag
114 002D
115 002D ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
"File: CLS1.ASM Holtek Cross-Assembler Version 2.86 Page 3
116 002D GetIdle: ;Report_ID=0,
117 002D ;Check bmRequestType direction
118 002D 3800 E SNZ FIFO_Type.@Setup_D ;Device to host ?
119 002E 2800 E JMP ToStallPipe0 ;No: to stall
120 002F
121 002F 1080 E SZ FIFO_wValueH
122 0030 2800 E JMP ToStallPipe0 ;No: to stall
123 0031
124 0031 1080 E SZ FIFO_wLengthH ;Length = 0
125 0032 2800 E JMP ToStallPipe0 ;No: to stall
126 0033 0700 E MOV A,FIFO_wLengthL ;Length = 1 ?
127 0034 0C01 XOR A,01H ;
128 0035 390A SNZ Z ;
129 0036 2800 E JMP ToStallPipe0 ;No: to stall
130 0037
131 0037 0700 E MOV A,ReportkbTime ;KB
132 0038 1080 E SZ FIFO_wIndexL ;0-KB, 1-Mouse
133 0039 2800 E jmp ToStallPipe0
134 003A 2A36 JMP ReportVL ;Responde
135 003B
136 003B ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
137 003B
138 003B
139 003B
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -