
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[216.73.216.52] |
![]() |
|
Страницы: (51) « Первая ... 14 15 [16] 17 18 ... 50 51 ( Перейти к последнему сообщению ) |
Сообщ.
#226
,
|
|
|
Нет, с файлами не работает... Примеров и я не нашёл... Почитать описание функций можно тут: http://www.ctyme.com/intr/int-2f.htm Называется Network Redirector. Только посмотрел я что малой кровью всё равно не отделаться. Это гораздо больше драйвер FS, чем драйвер блочного устройства. Т.е. там команды типа создать папку, удалить папку, открыть файл, записать в файл и т.д... Т.е. в драйвер флэшки прийдётся встраивать поддержку FS. Если надумаеш - здесь в теме выше были ссылки на opensource драйвера FAT 12/16/32. К своему проекту можно достаточно легко прикрутить. |
Сообщ.
#227
,
|
|
|
Цитата Почитать описание функций можно тут: http://www.ctyme.com/intr/int-2f.htm что-то не могу достучатся может у тебя есть тогда может выложишь на форуме Цитата Это гораздо больше драйвер FS, чем драйвер блочного устройства. Т.е. там команды типа создать папку, удалить папку, открыть файл, записать в файл и т.д... это я уже понял как залез поглубже. Мало того прийдется поддерживать еще USB- жесткие диски а там вообще темный лес. ведь диск может быть разбит на несколько логических да еще и с разными типами FS. т.е прийдется сначала как-то определить эти диски. Попробую реализовать отдельный драйвер FAT32. Так проще. И видимо прийдется что-то дизассемблировать -информации практически 0 примеров очень мало. Вот такая фигня ![]() Цитата Если надумаеш - здесь в теме выше были ссылки на opensource драйвера FAT 12/16/32. К своему проекту можно достаточно легко прикрутить. Я посмотрел библиотеки. Проблема в том, что во-первых они линуксовые ну да это ладно можно переделать, а во- вторых я уже настролся все писать на asm а они на С -прийдется много переделывать. Может ты знаешь где можно взять готовый драйвер на asm -было бы вообще здорово. |
Сообщ.
#228
,
|
|
|
Цитата uchtinka @ что-то не могу достучатся может у тебя есть тогда может выложишь на форуме Ещё есть тут: http://www.delorie.com/djgpp/doc/rbinter/ix/2F/11.html http://poli.cs.vsb.cz/misc/rbint/ix/2F/11.html Цитата uchtinka @ Я посмотрел библиотеки. Проблема в том, что во-первых они линуксовые ну да это ладно можно переделать, а во- вторых я уже настролся все писать на asm а они на С -прийдется много переделывать. Может ты знаешь где можно взять готовый драйвер на asm -было бы вообще здорово. На ASM не знаю таких библиотек. Можно компилятором сгенерировать ассеблерный исходник из сишного и поправаить немного... |
Сообщ.
#229
,
|
|
|
Цитата Ещё есть тут: http://www.delorie.com/djgpp/doc/rbinter/ix/2F/11.html http://poli.cs.vsb.cz/misc/rbint/ix/2F/11.html Да... Посмотрел и ахнул чтобы все это реализовать нужно как минимум месяцев 5-6 чтобы что-то задышало. А мне уже к новому году нужен первый результат ![]() Я понял еще одну вещь -попытался я декомпилировать драйвер di1000dd.sys -тот что идет с usbaspi и обнаружил интересную вещь: оказывается этот драйвер просто монтирует логический диск по той схеме которую я описывал т.е. использует 52h функцию 21 прерывания. При запуске он обращается по IOCTL к драйверу usbaspi и получает от него список подключенных устройств. пока правда непонятно как он перенаправляет вывод. Только непонятно почему они не сделали тогда горячего подключения? вообще пока еще много неопределенности во всем этом вопросе. Добавлено Цитата Ещё есть тут: http://www.delorie.com/djgpp/doc/rbinter/ix/2F/11.html http://poli.cs.vsb.cz/misc/rbint/ix/2F/11.html кстати а есть ли подобные ресурсы на русском? Добавлено кстати кто-нибудь слышал что-нибудь про IFS -драйвера ? |
Сообщ.
#230
,
|
|
|
Цитата uchtinka @ кстати кто-нибудь слышал что-нибудь про IFS -драйвера ? Насколько я знаю (могу ошибаться) - IFS это как раз и есть драйвер сетевого устройства. Т.е. он должен реализовывать те функции, на описание которых я ссылку давал... Кстати, если уже потянуло на декомпиляцию - найди в сети XMSDSK.EXE Это драйвер RAM-диска, небольшой, использует XMS. Но самое интересное - есть версия в виде драйвера (sys) и есть в виде exe. Причём диск создаётся динамически - как размер так и буква указываются в командной строке. Может чем-то поможет... |
Сообщ.
#231
,
|
|
|
Честно говоря cppasm ты оказался прав
![]() |
Сообщ.
#232
,
|
|
|
Цитата найди в сети XMSDSK.EXE Нашел толко другой похожий srdisk там схема такая же как в vdisk исходники которой где-то в книжке в какой-то |
Сообщ.
#233
,
|
|
|
Хотел задать вопрос, надеюсь что по теме... Есть USB MassStorageDevice собранный на LPC2148, связь уже установлена, в устройстве реализованна FAT16, данные корректно считываются, так вот необходимо кошерно запретить Винде записывать или изменять любые данные, это касается и заголовка FAT и файлов... хотел на уровне протокола SCSI запретить, ну типа корректный ответ на команду записи, но что-то не получается... может есть у кого идеи?
|
Сообщ.
#234
,
|
|
|
Возвращай в CSW в поле bCSWStatus 01h - Command Failure
![]() bCSWStatus:bCSWStatus indicates the success or failure of the command. The device shall set this byte to zero if the command completed successfully. A non-zero value shall indicate a failure during command execution according to the following table: ![]() Добавлено Если что, это цитата из этого документа http://www.usb.org/developers/devclass_docs/usbmassbulk_10.pdf |
Сообщ.
#235
,
|
|
|
Цитата cppasm @ Возвращай в CSW в поле bCSWStatus 01h - Command Failure да конечно, так сразу и сделал, но к сожалению данные визуально удаляются,хотя естественно запись не прошла и появляется ошибка отложеной записи... |
Сообщ.
#236
,
|
|||||||||||||||||||||||||||||||||||
|
Цитата Vortexx @ да конечно, так сразу и сделал, но к сожалению данные визуально удаляются,хотя естественно запись не прошла и появляется ошибка отложеной записи... Тогда надо посмотреть любым USB монитором какие запросы драйвер ОС посылает флэшке. По памяти (не 100%, сейчас не могу проверить) после отказа драйвер выполнит REQUEST SENSE. И вот там надо вернуть SENSE-KEY=7h (DATA PROTECT)
|
Сообщ.
#237
,
|
|
|
Цитата cppasm @ И вот там надо вернуть SENSE-KEY=7h (DATA PROTECT) сразу показалось что это то что доктор прописал ![]() ![]() |
Сообщ.
#238
,
|
|
|
Фиг его знает, это Explorer получается у себя из кеша удаляет...
Надо как-то дать понять что устройство ReadOnly, только вот как? В Inquiry таких полей нет... А ты пробовал логи USB траффика смотреть? Какие команды драйвер флэшке шлёт? Хоть проще было бы искать где можно ответить что мы ReadOnly... Только странно это как-то - есть в принципе флэшки с переключателем, и защиту от записи можно включить уже после подключения. Правда я не знаю как себя Explorer ведёт при удалении файлов с таких устройств... |
Сообщ.
#239
,
|
|
|
Всем доброго времени суток!
Помогите!!! Программирую ikey 2032 под ДОС. Все USB пакеты проходят нормально и Setup и Setup c IN и OUT. Но есть там такие поганые команды APDU, которые пересылаются с помощью протокола T=1 этому токену. А их он не хочет принимать. Точнее, вроде бы как он их видит, но ответа я не получаю. Там еще непонятная загвоздка с WTX - Wait Time Extention- запрос на дополнительное время для выполнения внутренней команды, причём написано, что запрос этот посылается токеном в начале после ресета. Так как на него отвечать? И вообще что это такое, WTX, BTX??? В стандарте ISO-7816 про это нормально не написано. Где нормально описаны все варианты PCB байта протокола T=1??? ПОМОГИТЕ!!! Кто-нибудь программировал эту белиберду??? |
Сообщ.
#240
,
|
|
|
ЛЮДИ!!! ЧЕЛОВЕКИ!!!
Где можно подробнеее почитать про то, как работать по протоколу T=1??? Про байт PCB в заголовке??? Может кто вкратце напишет что, куда и в какой последовательности посылается??? |