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

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

?? stick.bas

?? DOS下的USB驅動源碼,包括UHCI
?? BAS
字號:
'This sample reads sector zero of a USB memory stick using
'the bulk only protocol.

defint a-z

cls

devadd%=1
in_endpoint%=2
out_endpoint%=1

'define structure of URB
type urbtype
  transaction_token as byte 'control (2Dh), in (69h), out (E1h)
  chain_end_flag  as byte
  dev_add         as byte
  end_point       as byte
  error_code      as byte
  status          as byte  'returned by dosuhci
  transaction_flags as word 'reserved
  buffer_off      as word  'for in/out
  buffer_seg      as word  'for in/out
  buffer_length   as word  'for in/out
  actual_length   as word  'for in/out
  setup_buffer_off as word 'for control
  setup_buffer_seg as word 'for control
  start_frame     as word  'reserved
  nr_of_packets   as word  'iso
  int_interval    as byte  'reserved
  error_count     as byte  'reserved
  timeout         as word  'reserved
  next_urb_off    as word  'reserved
  next_urb_seg    as word  'reserved
end type '32 byte long

dim urb as urbtype

type setuptype
   bmRequestType  as byte
   bRequest	  as byte
   wValue	  as word
   wIndex         as word
   wLength        as word
end type

dim device_request as setuptype

type read_command  '31 byte
'first cbw fields  '15 byte
   signature      as dword
   tag            as dword
   tlength        as dword
   flags          as byte
   cbwlun         as byte
   clength        as byte
'now command fields '16 byte
   operation_code as byte
   lun            as byte
   lba            as dword
   reserved       as byte
   blocks         as word
   controls       as byte
   padding1       as word
   padding2       as word
   padding3       as word
end type

dim read_command_request as read_command


type inquiry_command  '31 byte
'first cbw fields  '15 byte
   signature      as dword
   tag            as dword
   tlength        as dword
   flags          as byte
   cbwlun         as byte
   clength        as byte
'now command fields '16 byte
   operation_code as byte
   lun            as byte
   lba            as dword
   reserved       as byte
   blocks         as word
   controls       as byte
   padding1       as word
   padding2       as word
   padding3       as word
end type

dim inquiry_command_request as read_command

dim buffer as string*64
buffer=repeat$(64,chr$(0)) 'return data here

dim sbuffer as string*1256
sbuffer=repeat$(1256,chr$(0)) 'return data here

'End of data structures ************************************************

'goto testmarke

'get max lun
device_request.bmRequestType=&HA1
device_request.bRequest=&HFE
device_request.wValue=&H0000
device_request.wIndex=&H0000
device_request.wLength=&H0001


'set up command request
  urb.transaction_token=&H2D
  urb.chain_end_flag=0
  urb.dev_add=devadd%
  urb.end_point=0
  urb.error_code=0
  urb.status=0
  urb.transaction_flags=0
  urb.buffer_off=varptr(buffer)
  urb.buffer_seg=varseg(buffer)
  urb.buffer_length=1
  urb.actual_length=8
  urb.setup_buffer_off=varptr(device_request)
  urb.setup_buffer_seg=varseg(device_request)
  urb.start_frame=0
  urb.nr_of_packets=0
  urb.int_interval=0
  urb.error_count=0
  urb.timeout=0
  urb.next_urb_off=0
  urb.next_urb_seg=0

reg 8,varseg(urb)
reg 4,varptr(urb)
call interrupt &H65

'invalid device address?
if urb.error_code=1 then
        cls : locate 14,23
	print "Invalid device address"
        end
end if

'transaction error?
if urb.status >1 then
        cls : locate 14,23
	print "Device does not respond"
        end
end if

print
print "Logical units:" left$(buffer,urb.actual_length)

testmarke:
'set up inquiry command incl. cbw
read_command_request.signature=&H43425355
read_command_request.tag=&H82A36008
read_command_request.tlength=&h24
read_command_request.flags=&h80
read_command_request.cbwlun=0 '1
read_command_request.clength=&h06
'now command fields
read_command_request.operation_code=&h12
read_command_request.lun=0 '32 '=1
read_command_request.lba=&H240000
read_command_request.reserved=0
read_command_request.blocks=0
read_command_request.controls=0
read_command_request.padding1=0
read_command_request.padding2=0
read_command_request.padding3=0

buffer=read_command_request

'set up out request
  urb.transaction_token=&HE1
  urb.chain_end_flag=0
  urb.dev_add=devadd%
  urb.end_point=out_endpoint%
  urb.error_code=0
  urb.status=0
  urb.transaction_flags=0
  urb.buffer_off=varptr(buffer)
  urb.buffer_seg=varseg(buffer)
  urb.buffer_length=31
  urb.actual_length=64
  urb.setup_buffer_off=0
  urb.setup_buffer_seg=0
  urb.start_frame=0
  urb.nr_of_packets=0
  urb.int_interval=0
  urb.error_count=0
  urb.timeout=0
  urb.next_urb_off=0
  urb.next_urb_seg=0

'now call DosUHCI
reg 8,varseg(urb)
reg 4,varptr(urb)
call interrupt &H65

buffer=repeat$(100,chr$(0)) 'return data here

'set up in request
  urb.transaction_token=&H69
  urb.chain_end_flag=0
  urb.dev_add=devadd%
  urb.end_point=in_endpoint%
  urb.error_code=0
  urb.status=0
  urb.transaction_flags=0
  urb.buffer_off=varptr(buffer)
  urb.buffer_seg=varseg(buffer)
  urb.buffer_length=64
  urb.actual_length=64
  urb.setup_buffer_off=0
  urb.setup_buffer_seg=0
  urb.start_frame=0
  urb.nr_of_packets=0
  urb.int_interval=0
  urb.error_count=0
  urb.timeout=0
  urb.next_urb_off=0
  urb.next_urb_seg=0

'now call DosUHCI
reg 8,varseg(urb)
reg 4,varptr(urb)
call interrupt &H65

print
print "Inquiry:" left$(buffer,urb.actual_length)

'set up in request - to read CSW
  urb.transaction_token=&H69
  urb.chain_end_flag=0
  urb.dev_add=devadd%
  urb.end_point=in_endpoint%
  urb.error_code=0
  urb.status=0
  urb.transaction_flags=0
  urb.buffer_off=varptr(buffer)
  urb.buffer_seg=varseg(buffer)
  urb.buffer_length=64
  urb.actual_length=64
  urb.setup_buffer_off=0
  urb.setup_buffer_seg=0
  urb.start_frame=0
  urb.nr_of_packets=0
  urb.int_interval=0
  urb.error_count=0
  urb.timeout=0
  urb.next_urb_off=0
  urb.next_urb_seg=0

'now call DosUHCI
reg 8,varseg(urb)
reg 4,varptr(urb)
call interrupt &H65

print
print "CSW:" left$(buffer,urb.actual_length)

lbanumber%=543 '0

gosub do_read

if urb.error_code >0 then
        cls : locate 14,23
	print "Buffer length exceeded"
        end
end if

print
print "Sector:" left$(sbuffer,512) 'urb.actual_length)

'set up in request - to read CSW
  urb.transaction_token=&H69
  urb.chain_end_flag=0
  urb.dev_add=devadd%
  urb.end_point=in_endpoint%
  urb.error_code=0
  urb.status=0
  urb.transaction_flags=0
  urb.buffer_off=varptr(buffer)
  urb.buffer_seg=varseg(buffer)
  urb.buffer_length=64
  urb.actual_length=64
  urb.setup_buffer_off=0
  urb.setup_buffer_seg=0
  urb.start_frame=0
  urb.nr_of_packets=0
  urb.int_interval=0
  urb.error_count=0
  urb.timeout=0
  urb.next_urb_off=0
  urb.next_urb_seg=0

'now call DosUHCI
reg 8,varseg(urb)
reg 4,varptr(urb)
call interrupt &H65

print
print "CSW:" left$(buffer,urb.actual_length)

end

do_read:  'needs lbanumber%
'set up bulk read command incl. cbw
read_command_request.signature=&H43425355
read_command_request.tag=&H82A36008
read_command_request.tlength=&h200 '512 byte
read_command_request.flags=&h80
read_command_request.cbwlun=0 '1
read_command_request.clength=&h0A
'now command fields
read_command_request.operation_code=&h28
read_command_request.lun=0 '32 '=1
read_command_request.lba=lbanumber% '0
rotate right read_command_request.lba,8 'works up to lba FFh - big endian
'print "LBA:" hex$(read_command_request.lba) " ";
read_command_request.reserved=0
read_command_request.blocks=&H01 '00 'big endian
rotate right read_command_request.blocks,8
'print "Blocks:" hex$(read_command_request.blocks)
read_command_request.controls=0
read_command_request.padding1=0
read_command_request.padding2=0
read_command_request.padding3=0

mid$(buffer,1,64)=read_command_request

'set up out request
  urb.transaction_token=&HE1
  urb.chain_end_flag=0
  urb.dev_add=devadd%
  urb.end_point=out_endpoint%
  urb.error_code=0
  urb.status=0
  urb.transaction_flags=0
  urb.buffer_off=varptr(buffer)
  urb.buffer_seg=varseg(buffer)
  urb.buffer_length=31
  urb.actual_length=64
  urb.setup_buffer_off=0
  urb.setup_buffer_seg=0
  urb.start_frame=0
  urb.nr_of_packets=0
  urb.int_interval=0
  urb.error_count=0
  urb.timeout=0
  urb.next_urb_off=0
  urb.next_urb_seg=0

'now call DosUHCI
reg 8,varseg(urb)
reg 4,varptr(urb)
call interrupt &H65

buffer=repeat$(64,chr$(0)) 'return data here

i=0
while i<8 'leave if 8 ( 8*64=512 )

'set up in request
  urb.transaction_token=&H69
  urb.chain_end_flag=0
  urb.dev_add=devadd%
  urb.end_point=in_endpoint%
  urb.error_code=0
  urb.status=0
  urb.transaction_flags=0
  urb.buffer_off=varptr(buffer)
  urb.buffer_seg=varseg(buffer)
  urb.buffer_length=64
  urb.actual_length=64
  urb.setup_buffer_off=0
  urb.setup_buffer_seg=0
  urb.start_frame=0
  urb.nr_of_packets=0
  urb.int_interval=0
  urb.error_count=0
  urb.timeout=0
  urb.next_urb_off=0
  urb.next_urb_seg=0

'now call DosUHCI
reg 8,varseg(urb)
reg 4,varptr(urb)
call interrupt &H65

if urb.status=0 then
	incr i
        midpos=1+(i-1)*64
        mid$(sbuffer,midpos)=buffer
elseif urb.status<>88 then
	exit loop
end if
'do not incr if 88

wend

return

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品久久久久久久久久久久包黑料 | 免费看欧美女人艹b| 色8久久精品久久久久久蜜| 日本一区二区三区电影| 五月天视频一区| 亚洲欧洲三级电影| 国产精品538一区二区在线| 日韩亚洲欧美一区| 884aa四虎影成人精品一区| 777xxx欧美| 色综合天天做天天爱| 91久久一区二区| 91亚洲国产成人精品一区二三| 精品欧美久久久| 国产丝袜欧美中文另类| 精品久久国产字幕高潮| 日韩黄色片在线观看| 亚洲乱码国产乱码精品精小说| 亚洲成a人v欧美综合天堂下载| 欧美日韩高清影院| 久久久高清一区二区三区| 精品一区二区三区蜜桃| 91一区在线观看| 99久久综合精品| 亚洲国产精品影院| 九九国产精品视频| 欧美剧情片在线观看| av电影在线观看不卡| 欧美日本视频在线| 在线精品视频免费播放| 色一区在线观看| 成人h版在线观看| 在线观看成人小视频| 欧美日韩电影一区| 欧美区在线观看| 欧美精品亚洲二区| 日韩欧美一区在线| 日韩电影在线免费| 亚洲欧美电影院| 欧美老女人第四色| 中文字幕日韩一区二区| 不卡av免费在线观看| 蜜臀va亚洲va欧美va天堂| 99r国产精品| 色偷偷久久人人79超碰人人澡| 亚洲乱码一区二区三区在线观看| 国内久久婷婷综合| 一区二区不卡在线视频 午夜欧美不卡在 | 9191久久久久久久久久久| 激情欧美一区二区三区在线观看| 国产成人日日夜夜| 91在线视频免费91| 亚洲国产日日夜夜| 欧美一区二区三区在| 国产精品久久久久久一区二区三区 | 国产乱码精品1区2区3区| 在线免费观看一区| 国产夫妻精品视频| 不卡影院免费观看| 日产精品久久久久久久性色| 国产精品久久久久久福利一牛影视 | 美女视频免费一区| 久久不见久久见免费视频7| 成人av免费在线观看| 国产成人免费视频一区| 1024亚洲合集| 中文字幕免费不卡| 免费在线看成人av| 国内精品免费**视频| 精品日韩99亚洲| 国产一区二区精品久久| 色综合一个色综合亚洲| 97久久精品人人爽人人爽蜜臀| 69堂成人精品免费视频| 色婷婷综合激情| 亚洲欧美怡红院| 日韩av成人高清| 国产精品免费视频一区| 欧美刺激脚交jootjob| 欧美人与z0zoxxxx视频| 日韩视频永久免费| 午夜电影网亚洲视频| 欧美激情一区在线| 欧美日韩精品高清| 国产亚洲欧洲997久久综合| 热久久久久久久| 成人欧美一区二区三区黑人麻豆| 91色在线porny| 日韩国产欧美视频| 国产精品免费久久久久| 日韩欧美二区三区| 午夜亚洲国产au精品一区二区| 亚洲欧美日韩国产一区二区三区| 欧美天堂一区二区三区| 久久久久国产精品厨房| 欧美变态凌虐bdsm| 国产精品伦理一区二区| 欧美一区二区三区小说| 欧美在线高清视频| 精品国产1区二区| 欧美视频在线不卡| 韩国毛片一区二区三区| 亚洲一区二区三区不卡国产欧美| 亚洲日本电影在线| 亚洲国产精品久久不卡毛片| 精品一区二区在线看| 欧美精品少妇一区二区三区| 91丝袜国产在线播放| 国产在线精品免费av| 日韩高清一区在线| 亚洲男同1069视频| 亚洲品质自拍视频| 欧美三级中文字幕| 日韩欧美国产一区二区三区 | 91精品国产乱| 国产99久久久久久免费看农村| 伊人夜夜躁av伊人久久| 欧美三级日韩三级| 国精品**一区二区三区在线蜜桃| 成人三级伦理片| 91福利在线导航| 成人在线综合网| 精品在线播放午夜| 韩国av一区二区三区四区 | 制服丝袜在线91| 欧美一区二区三区免费在线看| 99久久免费国产| 91精品国产日韩91久久久久久| 国产女人18水真多18精品一级做| 欧美一区二区福利在线| 久久久www成人免费毛片麻豆| 一区二区三区四区在线免费观看 | 国产欧美一区二区精品仙草咪| 国产伦精一区二区三区| 午夜精品久久久久久| 精品制服美女丁香| 91官网在线免费观看| 国产亚洲人成网站| 欧美一级日韩不卡播放免费| 2019国产精品| 国产精品久久久久桃色tv| 亚洲图片欧美综合| 精品国产制服丝袜高跟| 亚洲欧美日韩国产手机在线| 国产一区在线精品| 日本麻豆一区二区三区视频| 美腿丝袜亚洲三区| 色综合天天狠狠| 国产视频不卡一区| 免费的国产精品| 欧美精品久久天天躁| 中文字幕一区二区三区四区不卡 | 欧美经典三级视频一区二区三区| 亚洲电影第三页| 在线日韩av片| 精品在线你懂的| 蜜桃视频第一区免费观看| 99re成人精品视频| 亚洲精品免费在线观看| 粉嫩av亚洲一区二区图片| 9191精品国产综合久久久久久| 亚洲精品欧美激情| 91久久精品日日躁夜夜躁欧美| 久久九九全国免费| 亚洲男同性恋视频| 成人h精品动漫一区二区三区| 亚洲不卡一区二区三区| 欧美日韩国产a| 久草在线在线精品观看| 精品一区二区在线播放| 韩日欧美一区二区三区| 国内精品不卡在线| 久久人人超碰精品| 一区二区三区精品| 亚洲精品高清在线| 国产成人啪免费观看软件| 日韩理论片在线| 欧美日本不卡视频| 91在线观看地址| 成人中文字幕在线| 精品写真视频在线观看| 欧美日韩亚洲综合在线| 午夜伦欧美伦电影理论片| 国产精品少妇自拍| 欧美成人video| 51久久夜色精品国产麻豆| 成人精品小蝌蚪| 国产日产欧美一区二区视频| 欧美日韩免费一区二区三区| 欧美国产一区二区| 91麻豆精品国产91久久久更新时间| 中文av一区特黄| 亚洲在线免费播放| 蜜桃视频一区二区| 亚洲综合视频网| 亚洲不卡在线观看| 国产精品亚洲专一区二区三区| 欧美日韩国产首页在线观看| 欧美aaa在线| 国产欧美日本一区视频|