亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? std1.asm

?? 合泰USB鍵盤程序
?? ASM
?? 第 1 頁 / 共 2 頁
字號:
include			ht82k96e.inc
include			usbrf.inc
include			usbfifo.inc

extern			baddr_state		:bit
;extern			bFLAG_FIFO_REDY	:bit
extern			bRmtWakeup		:bit
extern			bFLAG_RsqF		:bit
extern			bFLAG_SndFC		:bit
extern			bFLAG_HvRpt		:bit
extern			brd_h_table		:bit
extern			bCfgValue 		:bit
extern			bwait_setup		:bit


extern			int_temp1		:byte
extern			int_temp2		:byte
fifo_temp		EQU		int_temp1
FIFO_ADDR		equ		int_temp1
ADDR_Wake		equ		fifo_addr.0
temp			equ		int_temp2
extern			STALL			:byte
;extern			Wtotallength		:near
;extern			bNumberInterface	:near
extern			des_count		:byte
extern			FIFO_Request	:byte
extern			FIFO_wValueH 	:byte
extern			FIFO_wValueL	:byte
extern			CMD_ADDR		:byte
extern			FIFO_wIndexH	:byte
extern			FIFO_Type		:byte
;extern			TEMP			:byte
extern			FIFO_wIndexL	:byte
extern			FIFO_OUT1		:byte
extern			fifo_out2		:byte
extern			ReturnAddr		:byte
extern			FIFO_SendLen	:byte
extern			TableLength		:byte
extern			FIFO_wLengthH	:byte
extern			FIFO_wLengthL	:byte

;extern			AltkbSetting	:byte
;extern			altmousesetting	:byte
extern			lengthh			:byte
extern			lengthl			:byte
extern			FIFO_TBLP		:byte


Extern			ExitExt:near
EXTERN			ToStallPipe0:NEAR
EXTERN			RequestResponse:NEAR
EXTERN			SendHandshake:NEAR
EXTERN			GetPipeBit:NEAR
EXTERN			SendFIFOOut:NEAR
EXTERN			ClearStall:NEAR
EXTERN			SetStall:NEAR

EXTERN			DeviceD:NEAR
EXTERN			ConfigurationD:NEAR
EXTERN			InterfaceD_0:NEAR
EXTERN			EndpointD_0:NEAR
EXTERN			HID_0:NEAR
EXTERN			Entity_0:NEAR
EXTERN			InterfaceD_1:NEAR
EXTERN			EndpointD_1:NEAR
EXTERN			HID_1:NEAR
EXTERN			Entity_1:NEAR
;EXTERN			InterfaceD_2:NEAR
;EXTERN			EndpointD_2:NEAR
;EXTERN			HID_2:NEAR
;EXTERN			Entity_2:NEAR

extern			LangID:near
extern			ManufactureS:near
extern			ProductS:near



STD1			.SECTION			AT 00DH		'code'  
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
get_Interface_des_adr:
				mov		a,des_count
get_interface_pcl_3:
				addm	a,pcl
				ret		a,LOW InterfaceD_0
				ret		a,LOW InterfaceD_1
;-----------------------------------------------------------------------------------
get_HID_des_adr:
				mov		a,des_count
get_HID_pcl_3:
				addm	a,pcl
				ret		a,LOW HID_0
				ret		a,LOW HID_1
;-----------------------------------------------------------------------------------
get_endpt_des_adr:
				mov		a,des_count
get_endpt_pcl_3:
				addm	a,pcl
				ret		a,LOW EndpointD_0
				ret		a,LOW EndpointD_1
;-----------------------------------------------------------------------------------

get_entity_des_adr:
				mov		a,des_count
get_entity_pcl_3:
				addm	a,pcl
				ret		a,LOW Entity_0
				ret		a,LOW Entity_1
;-----------------------------------------------------------------------------------
get_entity_length:
				mov		a,des_count
get_entity_len_pcl_3:
				addm	a,pcl
				ret		a,Entity_Length_0
				ret		a,Entity_Length_1
;-----------------------------------------------------------------------------------
;-----------------------------------------------------------------------------------
;no implement STD command
GetInterface:
                JMP		ToStallPipe0            ;No:Error
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SetInterface:
				jmp		TOstallpipe0
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SynchFrame:     ;No support
                JMP		ToStallPipe0
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;-----------------------------------------------------------------------------------
;-----------------------------------------------------------------------------------


;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
GetConfiguration:
                ;Check bmRequestType direction
                SNZ     FIFO_Type.@Setup_D    	;device to host ?
                JMP		ToStallPipe0            ;No:Error

				clr		FIFO_out1
				sz		bcfgvalue
                set     FIFO_OUT1.0           	;to FIFO
                MOV     A,01H                   ;Send length = 1
				jmp		SendFIFOOut
;                MOV     FIFO_SendLen,A        	;
;                jmp	    RequestResponse

;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;----- Standard request -----------------------------------------------------
StandardRequest:
				mov		a,1
				snz		baddr_state
				mov		a,ENDPOINT_NO
				mov		fifo_temp,a

                MOV     A,FIFO_Request    		;bRequest
                SUB     A,STANDARD_REQUEST_NO   ;Over 13 Item ?
                SZ      C                   	;
                JMP		ToStallPipe0        	;Yes
                MOV     A,FIFO_Request
;!!!!! Need in same page
std_request_pcl_14:
                ADDM    A,PCL
                JMP     GetStatus           ;0
                JMP     ClearFeature        ;1
                JMP		ToStallPipe0        ;2
                JMP     SetFeature          ;3
                JMP		ToStallPipe0        ;4
                JMP     SetAddressC         ;5
                JMP     GetDescriptor       ;6
                JMP     Tostallpipe0	    ;7
                JMP     GetConfiguration    ;8
                JMP     SetConfiguration    ;9
                JMP     GetInterface        ;A
                JMP     SetInterface        ;B
                JMP     SynchFrame          ;C

;////////////////////////////////////////////////////////////////////////////
;Standard Request

;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ClearFeature:
                SZ      FIFO_wValueH          	;wValueH == 0 ?
                JMP		ToStallPipe0            ;No

                SZ      FIFO_wIndexH          	;wIndexH == 0 ?
                JMP		ToStallPipe0            ;No

                MOV     A,FIFO_Type           	;Type (Device, Interface or
                AND     A,Setup_Rev             ;   Endpoint)
                MOV     TEMP,A
;!!!!! Need in same page
                SUB     A,04H                   ;Over 4 item ?
                SZ      C                       ;
                JMP		ToStallPipe0            ;Yes
                MOV     A,TEMP
clear_feature_pcl_5:
                ADDM    A,PCL
                JMP     DeviceStatusCF
                JMP     TOstallpipe0
                JMP     EndpointStatusCF
                JMP		ToStallPipe0
;-----------------------------------------------------------------------------------

EndpointStatusCF:                               ;clear stall flag
;Check Feature Selector
                SZ     	FIFO_wValueL          	;ENDPOINT_STALL = 0 ?
				JMP		ToStallPipe0            ;No

;Check	Endpoint Number
;				snz		fifo_windexL.7
;				jmp		ToStallpipe0
                MOV     A,FIFO_wIndexL        	;Get endpoint number
				and		a,01111111b
				SUB		A,FIFO_temp
				SZ		C
				JMP		ToStallPipe0

				MOV		A,FIFO_wIndexL
    ;Is it necessary to check endpoint number range ?
                AND     A,0FH                   ;Ignore direction
				call	GetPipeBit
                CALL    ClearStall              ;Clear endpoint stall
    ;Is it necessary to check clear completely ?
                JMP     SendHandshake           ;send handshake flag
;-----------------------------------------------------------------------------------

DeviceStatusCF:
;Check Feature Selector
                MOV     A,FIFO_wValueL        	;DEVICE_REMOTE_WAKEUP = 1 ?
                XOR     A,01H                   ;
                SNZ     Z                       ;
                JMP		ToStallPipe0            ;No

                SZ      FIFO_wIndexL          	;Is wIndex == 0 ?
                JMP		ToStallPipe0            ;No
	;disable remote wakeup          			;Yes
                CLR     bRmtWakeup   			;disable remote wakeup (flag)
				rla		cmd_addr
				and		a,11111110b
				mov		fifo_addr,a
                CLR     ADDR_Wake  				;Clear remote wakeup flag

                JMP     SetAddrWake       		;send handshake flag
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
GetStatus:
                ;Check bmRequestType direction
                SNZ     FIFO_Type.@Setup_D    	;Device to Host ?
                JMP		ToStallPipe0            ;No: Error

				SZ      FIFO_wIndexH      		;Is wIndex == 0 ?
                JMP		ToStallPipe0        	;No
               

                MOV     A,FIFO_Type           	;Type (Device, Interface or
                AND     A,Setup_Rev             ;   Endpoint)
                MOV     TEMP,A
;!!!!! Need in same page
                SUB     A,04H                   ;Over 4 item ?
                SZ      C                       ;
                JMP		ToStallPipe0            ;Yes
                MOV     A,TEMP
get_status_pcl_5:
                ADDM    A,PCL
                JMP     DeviceStatusS
                JMP     InterfaceStatusS
                JMP     EndpointStatusS
                JMP		ToStallPipe0
;-----------------------------------------------------------------------------------
EndpointStatusS:
                MOV		A,FIFO_wIndexL
				and		a,01111111b
				SUB		A,fifo_temp
				SZ		C
				JMP		ToStallPiPe0	
    ;Don't care direction, maybe it's neccesary.
                MOV     A,0FH               	;Ignore direction (D7)
                AND	    A,FIFO_wIndexL    		;get stall pipe number
                CALL    GetPipeBit          	;and transform to bitmap
                MOV     FIFO_TEMP,A
                MOV     A,STALL           		;get stall status into ACC
ShiftLoop:
                RRC     FIFO_TEMP         		;Shift stall bit to D0
                SZ      C                   	;
                JMP     FoundStall          	;
                RR      ACC                 	;
                JMP     ShiftLoop           	;
FoundStall:
                AND     A,01H               	;mask bits except stall bit
                JMP     SendEndpointStsS    	;Send endpoint status
;-----------------------------------------------------------------------------------
DeviceStatusS:
                SZ      FIFO_wIndexL      		;Is wIndex == 0 ?
                JMP		ToStallPipe0        	;No

				clr		acc
				sz		bRmtwakeup
				set		acc.1	
SendEndpointStsS:
                MOV     FIFO_OUT1,A       		;low byte
                CLR     FIFO_OUT2         		;high byte = 00H
                MOV     A,02H             		;data length = 2
                JMP     SendFIFOOut       		;Send it
;-----------------------------------------------------------------------------------
InterfaceStatusS:
				sz		baddr_state
				jmp		TOstallpipe0
                MOV		A,FIFO_wIndexL
				SUB     A,INTERFACE_NO         	;Over 2 Interface ?
                SZ      C                   	;
                JMP		ToStallPipe0        	;Yes

;No Matter which Interface
                CLR     FIFO_OUT1         		;low byte = 00H
                CLR     FIFO_OUT2         		;high byte = 00H
                MOV     A,02H               	;data length = 2
                JMP     SendFIFOOut         	;Send it
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;Get string descriptor
GetStringDes:

                SZ      FIFO_wIndexH
                JMP		get_other_string
        		;FIFO_wIndexL = Language ID
				sz		fifo_windexl
				jmp		get_other_string
				sz		fifo_wvaluel
				jmp		tostallpipe0

get_string:		
				mov		a,fifo_wvaluel
				sub		a,3
				sz		c
				jmp		Tostallpipe0

				mov		a,low LangID					;00
				sz		fifo_wvaluel.0
				mov		a,low ManufactureS				;01
				sz		fifo_wvaluel.1
				mov		a,low ProductS					;10

                MOV     TBLP,A                  ;
                JMP     ReadTableAndSendcnf        ;Read Device table and send it

get_other_string:
				mov		a,fifo_windexH
				xor		a,LAND_ID_H
				snz		z
				jmp		ToStallPipe0

				mov		a,fifo_windexl
				xor		a,LAND_ID_L
				snz		z
				jmp		TOStallpipe0
				jmp		get_string

;Standard--------------------------------------------------------------------
;Get device descriptor
std_des_start_pcl:
GetDeviceDes:
                SZ      FIFO_wIndexH
                JMP		ToStallPipe0
                SZ      FIFO_wIndexL
                JMP		ToStallPipe0

                MOV     A,LOW DeviceD           ;Set table pointer to device
                MOV     TBLP,A                  ;  table
                JMP     ReadTableAndSendcnf     ;Read Device table and send it
;----------------------------------------------------------------------------------------------

;(Configuration, interface & endpoint) >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
GetConfigurationDes:
                ;Configuration
                SZ      FIFO_wIndexH
                JMP		ToStallPipe0
                SZ      FIFO_wIndexL          	;report ID 0 ?
                JMP		ToStallPipe0            ;


                MOV     A,LOW ConfigurationD    ;Set table pointer to
                MOV     TBLP,A                  ;configuration
                MOV     A,LOW GetInterfaceDes 	;Save Return Address
                MOV     ReturnAddr,A            ;to ReturnAddr
                JMP     ReadTableAndSendCnf     ;Read configuration table
                                                ;and send it
;----------------------------------------------------------------------------------------------

GetInterfaceDes:
                ;Interface
				call	get_Interface_des_adr
				MOV     TBLP,A                  ;configuration

                MOV     A,LOW GetHIDDes    		;Save Return Address
                MOV     ReturnAddr,A          	;to ReturnAddr
                JMP     GetTableLength
;----------------------------------------------------------------------------------------------

GetHIDDes:
                ;HID
				call	get_HID_des_adr
                MOV     TBLP,A                  ;  configuration
                MOV     A,LOW GetEndpointDes    ;Set Return Address
                MOV     ReturnAddr,A          	;  to ReturnAddr
                JMP     GetTableLength
;----------------------------------------------------------------------------------------------

GetEndpointDes:
                ;Endpoint
				call	get_endpt_des_adr
                MOV     TBLP,A                  ;  configuration

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美日韩一区二区| 一本大道综合伊人精品热热| 久久精品一二三| 九色综合狠狠综合久久| 精品国产成人在线影院 | 亚洲综合在线观看视频| 色综合天天综合网天天狠天天 | 一级特黄大欧美久久久| 欧美性欧美巨大黑白大战| 午夜日韩在线观看| 日韩欧美国产一二三区| 国产成人综合视频| 亚洲欧美日韩系列| 欧美剧情片在线观看| 青青草97国产精品免费观看 | 91亚洲精品乱码久久久久久蜜桃 | 亚洲综合无码一区二区| 欧美精品乱码久久久久久按摩| 日日夜夜免费精品| www精品美女久久久tv| 91网站最新地址| 日韩精品亚洲一区二区三区免费| 久久尤物电影视频在线观看| 99久久国产免费看| 男人的天堂亚洲一区| 欧美激情一区二区三区| 欧美天堂一区二区三区| 激情成人综合网| 亚洲欧美日韩国产中文在线| 日韩欧美一级二级| 97久久精品人人做人人爽50路| 日本视频在线一区| 中文字幕高清不卡| 欧美一卡在线观看| 91欧美激情一区二区三区成人| 日韩黄色一级片| 最近日韩中文字幕| 精品久久久久一区二区国产| 91国偷自产一区二区三区成为亚洲经典 | 亚洲色图制服诱惑| 精品动漫一区二区三区在线观看| 色狠狠一区二区三区香蕉| 久久丁香综合五月国产三级网站| 亚洲精品五月天| 国产午夜三级一区二区三| 欧美精品少妇一区二区三区| 成人精品视频.| 激情欧美一区二区| 日韩精品电影一区亚洲| 自拍偷拍亚洲综合| 国产欧美日韩视频在线观看| 91精品国产综合久久国产大片| 一本色道亚洲精品aⅴ| 国产高清不卡二三区| 免费在线成人网| 亚洲一区二区三区四区在线观看| 欧美国产激情一区二区三区蜜月| 日韩欧美国产电影| 欧美精品九九99久久| 91成人免费电影| 91在线一区二区三区| 成人精品免费看| 国产一区在线视频| 久久66热re国产| 蜜桃视频第一区免费观看| 亚洲高清免费一级二级三级| 国产精品国产自产拍高清av| 国产亚洲一区二区三区四区| 精品噜噜噜噜久久久久久久久试看| 欧美性受极品xxxx喷水| 91久久精品一区二区三区| 91啦中文在线观看| 91视视频在线直接观看在线看网页在线看 | 亚洲手机成人高清视频| 国产精品色婷婷久久58| 欧美国产精品一区| 中文字幕av资源一区| 国产人成亚洲第一网站在线播放| 久久男人中文字幕资源站| 亚洲精品一线二线三线| 久久你懂得1024| 日本一区二区三区高清不卡| 欧美激情一区三区| 国产精品天美传媒| 中文字幕综合网| 一区二区三区日本| 午夜精品一区二区三区免费视频| 亚洲成a人v欧美综合天堂下载 | 蜜桃精品在线观看| 麻豆国产欧美日韩综合精品二区 | 亚洲综合免费观看高清完整版在线 | 人人超碰91尤物精品国产| 日本中文字幕一区| 精品在线观看免费| 国产成人精品一区二| 成人h动漫精品| 欧美亚州韩日在线看免费版国语版| 欧美亚一区二区| 精品国产一二三区| 国产精品网友自拍| 亚洲成人免费观看| 久久99热99| 成人免费高清在线| 欧美日韩日日摸| 久久综合久久鬼色中文字| 国产精品久久二区二区| 亚洲国产一区在线观看| 国产真实精品久久二三区| 成人av手机在线观看| 欧美日韩日本视频| 久久九九影视网| 亚洲电影视频在线| 国产盗摄一区二区| 欧美日韩免费观看一区三区| 精品国产凹凸成av人导航| 亚洲三级视频在线观看| 日韩av不卡一区二区| 北条麻妃国产九九精品视频| 在线成人免费视频| 国产精品久久久久久久久免费樱桃 | 99国产精品久久久| 欧美精品aⅴ在线视频| 国产欧美一区二区在线观看| 亚洲国产视频在线| 国产成人av电影在线播放| 欧美三级日韩在线| 中文字幕一区二区三区色视频| 视频一区视频二区在线观看| www.在线成人| 2023国产精品| 天天影视网天天综合色在线播放| 盗摄精品av一区二区三区| 日韩欧美综合在线| 夜色激情一区二区| www.66久久| 久久久噜噜噜久久中文字幕色伊伊 | 日本一区中文字幕| 91看片淫黄大片一级在线观看| 精品国产乱码久久久久久老虎| 亚洲图片欧美一区| 91美女视频网站| 日本一区二区三区久久久久久久久不| 日韩在线卡一卡二| 欧亚洲嫩模精品一区三区| 国产精品久久久久7777按摩| 久久精品国产久精国产爱| 欧美日韩午夜影院| 亚洲六月丁香色婷婷综合久久 | 久久99精品国产麻豆不卡| 欧美色综合影院| 玉米视频成人免费看| 成人国产精品免费观看| 久久久久久免费| 韩国一区二区三区| 欧美r级在线观看| 日本欧美一区二区三区乱码| 欧美日韩激情在线| 亚洲一区二区三区四区在线 | 26uuu精品一区二区在线观看| 亚洲一区影音先锋| 暴力调教一区二区三区| 欧美国产综合一区二区| 国产伦精一区二区三区| 欧美mv日韩mv国产网站| 美女在线一区二区| 欧美一区二区三区白人| 天堂久久一区二区三区| 538prom精品视频线放| 天天影视色香欲综合网老头| 51精品视频一区二区三区| 日韩精品欧美成人高清一区二区| 欧美日韩精品欧美日韩精品| 亚洲国产日日夜夜| 欧美久久久一区| 天天色综合天天| 日韩精品一区二区三区视频在线观看| 日本va欧美va精品发布| 日韩欧美一级二级| 国产一区二区三区av电影| 国产色产综合色产在线视频| 成人久久久精品乱码一区二区三区| 中文字幕精品在线不卡| 91免费看视频| 亚洲成人av一区二区| 日韩一级大片在线观看| 国产伦理精品不卡| 亚洲欧洲综合另类| 欧美人xxxx| 国产一区二区三区免费| 国产精品久久久久久久久免费桃花 | 成人黄色777网| 亚洲综合999| 精品国产自在久精品国产| 国产精品亚洲第一| 一区二区三区在线看| 91精品国产入口| 国产成人免费av在线| 亚洲精品国产第一综合99久久| 欧美男男青年gay1069videost | 天天操天天干天天综合网|