Добрый день, задали найти драйвер для любого внешнего устройства ПК в виде команд асемблера, в нете нашел только для динамиков. можете помочь с поиском?
TermoSINteZ мой первый дравер был для подставки на принтер ты сбрось, а то человек еще подумает, что стебуцо над ним
нет, тоже занят ) еще варианты есть? я так и подумал, правда причина не ясна, наверное что-то не то ляпнул
jora Устройство, для которого пишется драйвер может быть любым Не обязательно реально существующим Драйвер для коврика мышки на самом деле принципиально ничем не отличается от того же драйвера для самой мышки. Написание драйвера для коврика мышки рассматривается тут, в статьях. Ты внимательнее ищи FOUR-F написал прекрасный цикл статей
Magnum Представляю глаза училки когда буду ей обьяснять, что писал курсач по драйверу для коврика о_О Мне желательно драйвер для существующего устройства. Нашел цикл статей "Драйверы режима ядра" автора FOUR-F, но это не совсем то, да и самих драйверов я там не увидел(
jora Плохо искал. Там есть целая статья http://www.wasm.ru/article.php?article=drvw2k05 А так для сущствующиего - ну скачай например с сайта нвидии дрова. думаешь для коврика нет дров? ты ошибаешься .
n0name не особо хочется "изобретать колесо" мне бы готовое TermoSINteZ на сайте нвидии они с открытым кодом идут?
там собирать дело 5 минут. берется LPT порт, как простой интерфейс для параллельной передачи бит, берутся штук 5 светодиодов, подсоединяются к LPT порту, например, к битам двунаправленной передачи (регистр DATA). пишется драйвер, который создает девайс типа \Device\Kovrik. Единственный тип IRP, что он будет обрабатывать (помимо create/close), это будет, допустим, IRP_MJ_DEVICE_CONTROL, через который можно будет устанавливать состояние отдельных светодиодов. Если нужно включить, допустим, 3й светодиод, нужно лишь установить соответствующий бит в регистре DATA, подключенном к определенному порту ввода-вывода сситемы. Если мне не изменяет память, кажется, это порт 888. Соответственно, можно описать функцию, вызываемую из обработчика IRP_MJ_DEVICE_CONTROL: Код (Text): VOID SetLed(UCHAR nLed, LOGICAL state) { __asm { mov cl, state mov al, nLed shl al, cl mov dx, 888 in ah,dx or ah, al out dx,ah } } Ну примерно так.
offtop: не понимаю такие учебные заведения, в которых задают курсовые непонятно по какой теме, и учеников которые потом не понимая вообще про что речь идет пытаются это реализовать...
agent007 чесно говоря я тоже этого не понимаю, как сказала нам училка "вы не политех, так что пойдем по ускоренному курсу" и мы пол года изучали lea и mov реализовывать нам ничего не надо(уровень не наш), надо принести текст драйвера внешнего устройства и обьяснить построково что там происходит Magnum так, но только в том случае если есть на это время, а если нет, то - финансовая помощь кафедре Great класс, завтра спрошу подойдет ли училке такое