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

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

?? floppy.bas

?? DOS下的USB驅動源碼,包括UHCI
?? BAS
字號:
'This sample reads sector zero of a USB floppy drive using the CBI protocol.
'
defint a-z

cls
print "Reading floppy sector ..."
devadd%=1
in_endpoint%=1
out_endpoint%=2
int_endpoint%=3

'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 '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

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

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

gosub do_inquiry

gosub do_request_sense 'clear attention condition

lbanumber%=0
gosub do_read  'read sector

while mid$(buffer,1,2) <> chr$(0)+chr$(0) 'if not successful
        print "Trying again"
        gosub do_request_sense 'clear attention condition
	gosub do_read 'retry
wend

end

'*************************************************************************
'subroutines start here
'*************************************************************************

check_interrupt:

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

do

'set up in request to read acknowledge
  urb.transaction_token=&H69
  urb.chain_end_flag=0
  urb.dev_add=devadd%
  urb.end_point=int_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=8
  urb.actual_length=8
  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
   if urb.status=&H88 then
   	print "Return code: NAK";
   else
        print "Return code:" hex$(urb.status);
   end if
	incr icounter%
        if icounter% > 4 then exit loop
else
	exit loop
end if

loop

return

exec_command:
'do ADSC
device_request.bmRequestType=&H21
device_request.bRequest=&H00
device_request.wValue=&H0000
device_request.wIndex=&H0000
device_request.wLength=&H000C

'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=0
  urb.buffer_seg=0
  urb.buffer_length=0
  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

'now send command using two out's

'set up out request
  urb.transaction_token=&HE1
  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=8
  urb.actual_length=8
  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

'second out now
mid$(buffer,1,50)=mid$(read_command_request,9,4)

'set up out request
  urb.transaction_token=&HE1
  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=4
  urb.actual_length=8
  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 to read acknowledge
  urb.transaction_token=&H69
  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=8
  urb.actual_length=8
  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

'set up in request - to read data
  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=getbytes% '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 "Data:" left$(buffer,urb.actual_length)
'for ix=1 to 75
' print hex$(ascii(mid$(buffer,ix,1))) " ";
'next ix
print

gosub check_interrupt

return

do_inquiry:
'set up inquiry command
read_command_request.operation_code=&h12
read_command_request.lun=0
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

getbytes%=64
gosub exec_command
return

do_request_sense:
'set up request sense command
read_command_request.operation_code=&H03
read_command_request.lun=0
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

getbytes%=64
gosub exec_command
return

do_mode_sense:
'set up mode sense command
read_command_request.operation_code=&h5A
read_command_request.lun=0
read_command_request.lba=&H3F
read_command_request.reserved=0
read_command_request.blocks=&H4800
read_command_request.controls=0
read_command_request.padding1=0
read_command_request.padding2=0
read_command_request.padding3=0

mid$(buffer,1,16)=read_command_request

getbytes%=64
gosub exec_command
return

do_read_capacity:
'set up read capacity command
read_command_request.operation_code=&h25
read_command_request.lun=0
read_command_request.lba=0
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

getbytes%=64
gosub exec_command
return

do_test_unit:
'set up test unit ready command
read_command_request.operation_code=0
read_command_request.lun=0
read_command_request.lba=0
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

getbytes%=64
gosub exec_command
return

do_read:
'set up read command
read_command_request.operation_code=&h28
read_command_request.lun=0
rotate right lbanumber%,8 'convert to big endian
read_command_request.lba=lbanumber%
'now move to high of dword - assume floppy has max 32.000 sectors (16 MB)
shift left read_command_request.lba,16
read_command_request.reserved=0
read_command_request.blocks=1 '&H0100 'msb/lsb - big endian here
rotate right read_command_request.blocks,8 'convert to big endian
read_command_request.controls=0
read_command_request.padding1=0
read_command_request.padding2=0
read_command_request.padding3=0

buffer=read_command_request

getbytes%=512 'retrieve 512 byte sector
gosub exec_command

return

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲不卡一区二区三区| 宅男噜噜噜66一区二区66| 国产乱人伦精品一区二区在线观看| 日韩精品乱码av一区二区| 99热99精品| 精品一区在线看| 青青青伊人色综合久久| 丝袜a∨在线一区二区三区不卡| 亚州成人在线电影| 午夜视频久久久久久| 欧美aaaaaa午夜精品| 久久国产精品免费| 国产精品白丝jk白祙喷水网站| 国产成人av一区二区三区在线 | 成人毛片视频在线观看| 粉嫩aⅴ一区二区三区四区| 国产成人免费xxxxxxxx| 99久久精品情趣| 91国产成人在线| 欧美日韩另类一区| 日韩久久免费av| 久久久www成人免费无遮挡大片 | 午夜精品久久久久久久久久久| 亚洲成人激情社区| 日韩av在线发布| 国产盗摄精品一区二区三区在线 | 在线不卡a资源高清| 欧美挠脚心视频网站| 日韩一二三区不卡| 久久综合狠狠综合| 国产精品毛片高清在线完整版 | 成人久久视频在线观看| 99久久久久久99| 欧美日韩国产一级| 亚洲精品一区二区三区四区高清| 国产视频一区在线播放| 亚洲综合一区二区精品导航| 日韩中文字幕亚洲一区二区va在线| 蜜桃av一区二区三区电影| 高清免费成人av| 欧美日韩一区二区三区在线| 久久精品一区蜜桃臀影院| 一区二区三区电影在线播| 美女精品自拍一二三四| 成人av网站在线观看| 欧美日韩激情一区二区| 日本一区二区综合亚洲| 亚洲一区二区三区四区五区黄 | 久久天天做天天爱综合色| 亚洲欧洲无码一区二区三区| 日韩福利视频网| 99riav一区二区三区| 9191成人精品久久| 国产精品国产自产拍高清av| 肉色丝袜一区二区| 成人丝袜视频网| 欧美一区二区三区在线| 国产精品超碰97尤物18| 麻豆91在线观看| 欧洲国内综合视频| 国产精品你懂的在线| 免费人成精品欧美精品| 欧美亚洲精品一区| 国产精品乱人伦中文| 老司机午夜精品99久久| 欧美中文字幕一区| 国产精品久久久久aaaa| 国产一区二区三区av电影| 制服丝袜亚洲播放| 夜夜爽夜夜爽精品视频| eeuss鲁一区二区三区| 日韩三级视频中文字幕| 亚洲高清视频的网址| 成人av电影在线观看| 欧美不卡激情三级在线观看| 亚洲国产一区二区视频| 97精品电影院| 国产日产精品1区| 久久99日本精品| 这里是久久伊人| 亚洲大片在线观看| 91麻豆自制传媒国产之光| 久久久精品国产免大香伊| 美女视频黄久久| 欧美美女bb生活片| 一区二区免费视频| 色素色在线综合| 亚洲素人一区二区| 成人av免费在线| 国产精品系列在线| 成人中文字幕电影| 亚洲国产成人自拍| 国产精品白丝av| 久久久午夜电影| 韩国精品免费视频| 精品国产三级电影在线观看| 青青草视频一区| 欧美精品色综合| 亚洲成av人片一区二区梦乃| 欧美亚洲综合久久| 亚洲成人午夜电影| 欧美日韩成人在线一区| 亚洲成a人片综合在线| 欧美另类z0zxhd电影| 依依成人综合视频| 91久久精品日日躁夜夜躁欧美| 亚洲图片激情小说| 色哟哟国产精品免费观看| 亚洲女人****多毛耸耸8| 色偷偷一区二区三区| 一区二区三区欧美| 欧美伦理电影网| 美腿丝袜在线亚洲一区| 久久综合久色欧美综合狠狠| 国产成人综合视频| 国产精品久久久久久久久久免费看| 不卡一区中文字幕| 一区二区三区中文字幕电影 | 色婷婷激情久久| 亚洲靠逼com| 欧美亚洲动漫精品| 日韩精品乱码av一区二区| 日韩欧美国产电影| 国产精品123| 亚洲欧美经典视频| 欧美挠脚心视频网站| 久久国产精品99精品国产| 久久久99久久| 色一情一伦一子一伦一区| 亚洲成人黄色影院| 久久综合久久综合久久| 91小视频在线观看| 香蕉加勒比综合久久| 久久奇米777| 成人av网站在线观看| 亚洲大尺度视频在线观看| 日韩欧美国产1| 99精品久久只有精品| 日本视频一区二区三区| 国产日韩欧美不卡在线| 欧美亚洲国产一区二区三区va| 麻豆极品一区二区三区| 国产精品福利av| 欧美一区二区三区成人| 成人h动漫精品一区二区| 天天色天天爱天天射综合| 日本一区二区三区高清不卡| 91福利资源站| 国产精品77777竹菊影视小说| 一区二区成人在线视频| 久久综合视频网| 在线视频一区二区三区| 国产精品99久久久久久似苏梦涵 | 国内成+人亚洲+欧美+综合在线| 国产精品久久久久一区二区三区共| 色综合天天综合色综合av| 免费看欧美美女黄的网站| 欧美国产在线观看| 欧美一级久久久久久久大片| 成人免费毛片aaaaa**| 日本色综合中文字幕| 亚洲视频图片小说| 2欧美一区二区三区在线观看视频| 色噜噜狠狠一区二区三区果冻| 狠狠色丁香久久婷婷综合_中| 亚洲综合激情另类小说区| 久久天天做天天爱综合色| 成人高清视频免费观看| 老司机精品视频线观看86| 亚洲午夜在线视频| 国产精品国产三级国产aⅴ入口 | 亚洲一区二区三区四区五区黄| 国产欧美日韩不卡| 日韩一区二区三区电影在线观看| 色琪琪一区二区三区亚洲区| 国产精品一区专区| 欧美aaa在线| 亚洲成va人在线观看| 国产精品久久久久一区二区三区| 日韩精品一区二区三区视频播放| 在线观看区一区二| 成年人网站91| 国产高清亚洲一区| 狠狠久久亚洲欧美| 日韩影院在线观看| 亚洲乱码国产乱码精品精98午夜| 国产三级一区二区三区| 26uuu色噜噜精品一区| 日韩欧美在线观看一区二区三区| 欧美三区在线视频| 欧美偷拍一区二区| 亚洲欧洲www| 国产精品久久久久影院老司| 久久免费午夜影院| 精品国产91亚洲一区二区三区婷婷| 91精品国产综合久久久久久久 | 1024亚洲合集| 日韩美女主播在线视频一区二区三区 | 婷婷亚洲久悠悠色悠在线播放 | 91丨九色丨蝌蚪富婆spa|