Page 3 of 4

Posted: Mon Apr 23, 2007 1:08 pm
by Mario79
k@sTIg@r
В Винде стандартный драйвер воспринимает второй скрол так-же как и твой код, т.е. считает оба скроллера одним скроллером.

Posted: Mon Apr 23, 2007 1:29 pm
by k@sTIg@r
Ага, значит это подтверждает мои догадки.
Я подумал возможно при 2 скролах виртуально есть бит, бит четности. Если число четное, значит гор скролл, если нечетное значит вертикальный. Так что без отдельного драйвера не обойтись. Я скачал драйвер для твоей мыши, как будет время погляжу, как именно это реализовано у них.

Posted: Mon Apr 23, 2007 3:48 pm
by Heavyiron
Кстати, в колибри есть очень старый баг с мышкой. Помнится, Mario79 писал, что он появляется в очень редких случаях. А именно: сразу после загрузки ОС первое движение мышкой почему-то интерпретируется как нажатие правой кнопки. В qemu этот глюк есть всегда!

Posted: Mon Apr 23, 2007 4:19 pm
by Mario79
Heavyiron
Я говорил про реальную систему - в ней он проявляется действительно очень редко.
Насчет qemu полностью согласен - баг стабилен. :-)

Posted: Mon Apr 23, 2007 4:55 pm
by diamond
k@sTIg@r wrote:Ланчер запустился? хм..... тогда какого он у меня не пускается???
Чисто для справки: при настройках по умолчанию ядро первым делом запускает vrr_m, а вовсе не launcher. (Это можно изменить при необходимости пунктом про VRR в загрузочном экране.) А vrr_m использует vmode.mdr, который должен быть обновлён вместе с ядром при переходе на плоское ядро (svn.465), а иначе vrr_m будет слетать с исключением, а не грузить остальное.

Posted: Mon Apr 23, 2007 8:24 pm
by DmitrySokolowsky
4D мыши у меня нет, а вот обычное колёсико есть, и хотелось бы, чтобы оно работало.

Posted: Mon Apr 23, 2007 11:45 pm
by Serial
k@sTIg@r, моя мышь на стандартном виндосовском драйвере "PS/2 совместимая мышь" работает следующим образом:
1-ый основной скролл листает N строк
2-ой дополнительный скролл листает N*2 строк

Posted: Fri May 04, 2007 5:06 pm
by k@sTIg@r
Вынес работу ps/2 мыши в отдельный драйвер.
Почти все осталось по прежнему. Данные скролла доступны только активному окну. Получить их можно теперь с помощью функции 37.7. В младшем слове лежит смещение вертикальной прокрутки в старшем горизонтальной (об этом чуть ниже).
Некоторые замечания. Теперь функция, по-муему 19, неэффективна для ps2 мышей(эта та которая выставляет mouse_speed_factor и mouse_delay). А значит и не работает настройка мыши через setup. Все это будет делаться через драйвер. Драйвер сейчас 0-й версии, обрабатывает данные мыши и можно узнать версию драйвера и тип мыши. пока что все. В ближайшее время планируется улучшить его (чувствительность, бинд 4-й и 5-й кнопок и многое другое что придет в голову, кстати жду советов) и написать драйвер-менеджер.
Теперь для тех у кого 2 скролла. Этот драйвер по прежнему не понимает горизонтальный скролл, точнее понимает его как 2 вертикальных. Когда драйвер будет на хорошем уровне займусь драйвером для 2-скролловой мыши. К сожалению нет возможности детектить 2-скролловая мышь или нет. Поэтому обладателям 2-скроловый мыши просто придется заменить драйвер. Пока все.
Если все будет нормально, изменения появятся в транке.
А пока пробуйте(все, у кого даже 2-хскролловые мышки)
http://ifolder.ru/1899420
в файле исходники ядра и mouse.asm. Не пугайтесь, на против mouse type ничего не должно стоять...пока.
В ядре все изменения которые касались фоновой картинки, т.е. необходим обновленный jpegview и остальной сопутствующий софт.

Posted: Mon May 07, 2007 9:50 am
by k@sTIg@r
Я вот покумекал на выходных и подумал. А стоит ли фичи касающиеся MouseHID выносить в ядро.
Наверное все же лучше оставить это в ядре, а драйвер только будет обрабатывать данные железа и передавать ядру, а вот ядро будет само решать что с этими данными делать. Нужно мнение. И поповоду фич. Думаю нужно чувствительность мыши реализовать не через задержку и ускаорение, а одним рычажком, по-крайней мере для пользователя (как в виндах). Или могут быть какие-нибудь грабли с этим? И еще, нужны ли дополнительные приколы? допустим обмен левой и правой кнопки(для левшей) и остальное.

Есть ли у кого-нить время или может кто-нить хочет подтянуть знания в ассемблере и колибривом GUI . Нужно написать менеджер мышки, а у меня времени нет разбираться с GUI. Есть желающие? Я алгоритмами по настройке мыши помогу, мне нужен только гуи. А сам пока буду с MouseHID и драйвером работать (думаю еще драйвер ком-мыши вынести).

Posted: Mon May 07, 2007 11:07 am
by Mario79
k@sTIg@r
Если других желающих не будет, я могу помочь. Мыло есть в моих данных на форуме. В аське очень редко бываю - сразу предупреждаю, чтобы потом вопросов не возникало.

Posted: Mon May 07, 2007 12:17 pm
by Mario79
k@sTIg@r
Все протестировал - работает как часы. Правда первый раз забыл запихнуть драйвер мыши PS2, поэтому пришлось перезагружаться в Винду, потому что RDSAVE не работает без мыши...
OFFTOP
В первый раз я загрузился - мышь не пашет. Ладно, сообразил - скомпилил и закинул драйвер в нужную папку на рамдиске. Надо перезагружаться? Надо! И тут такой облом - RDSAVE без мыши не сохраняет... Хм... подумал я и пошел перезагружаться в Винду. :-)
Есть еще возможности для улучшения системы, ох как много этих возможностей.
/OFFTOP

Posted: Mon May 07, 2007 2:48 pm
by Serge
k@sTIg@r

Обмен кнопок нужен. Где лучше размещать код не знаю. С одной стороны дублирование кода с другой раздувание ядра. Наверное всем этим должен заниматься оконный сервер, которого у нас нет, точнее он встроен в ядро.

Posted: Mon May 07, 2007 5:20 pm
by Leency
Обмен кнопок? Нужен?
Не уверен - вот я левша и юзаю её правой, как и всех кого я видел.

Posted: Tue May 08, 2007 5:48 pm
by k@sTIg@r
мои изменения уже на svn'е.
У меня на реальной тачке и бочсе заработало, пока возникла проблема у Атауальпы (направление вврех-вниз поменялись).
Так что все сливаем и пробуем.
Для теста колесика и 4 и 5 кнопки (если у вас таковые есть) - http://ifolder.ru/1944354.
Щас работаю на драйвером для мышей с 2-мя прокрутками (при текущем драйвере вторая прокрутка работает как двойная первая).

Posted: Wed May 09, 2007 9:56 pm
by Aqwas
обмен нужен... я много левшей видел, кто эту фичу использует, хотя сам предпочитаю стандартный вариант.