Christian Holzberger <molle(at)idontgivemynametoamachine.net> wrote:
> On Fri, 2006-02-03 at 15:28 +0100, Oliver Fromme wrote:
> > Ein int ist auf _allen_ Architekturen, auf denen FreeBSD
> > läuft, 32 Bits groß, somit würden 15 Buttons bequem rein-
> > passen. Du kannst das Limit sogar auf 31 erhöhen, wenn
> > Du magst.
>
> jap
>
> > Selbst _wenn_ ein int auf einer bestimmten Plattform 64
> > Bits umfassen würde, wäre das nicht tragisch. Die oberen
> > Bits blieben dann halt ungenutzt. Übrigens, wenn Du mal
> > in /usr/include/sys/mouse.h reinguckst, wirst Du fest-
> > stellen, daß dort im struct mousestatus die Buttons eben-
> > falls in einem int festgehalten werden.
>
> naja ein u_char wird ja auch nur gewaehlt seien worden um speicher zu
> sparen... hmmm
Das glaube ich eher nicht. Es wird eher Kompatibilitäts-
gründe gehabt haben, da der Button-Status bei einigen an-
deren Treibern (und teilweise auch im Stream der Mauspro-
tokolle) in einem Byte gespeichert wird.
Die drei Bytes im Treiber machen den Kohl echt nicht fett.
Davon abgesehen werden gar keine drei Bytes gespart, son-
dern sie liegen aufgrund des Stack-Alignments brach.
> mal schaun ich denke ich habe heute abend etwas zeit...
Viel Erfolg. Neben der erwähnten Variablen in ums_intr()
habe ich so auf Anhieb keine weiteren Stellen entdecken
können, wo man noch char --> int fixen müßte.
Wie gesagt: Wenn's klappt, kannst Du's ja mal per send-pr
einreichen, damit der nächste, der eine USB-Maus mit mehr
als sieben Buttons verwenden will, nicht auch erst selbst
im Source herumfrickeln muß. ;-)
Gruß
Olli
-- Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing Dienstleistungen mit Schwerpunkt FreeBSD: http://www.secnetix.de/bsd Any opinions expressed in this message may be personal to the author and may not necessarily reflect the opinions of secnetix in any way. "C++ is over-complicated nonsense. And Bjorn Shoestrap's book a danger to public health. I tried reading it once, I was in recovery for months." -- Cliff Sarginson To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org with "unsubscribe de-bsd-questions" in the body of the messageReceived on Fri 03 Feb 2006 - 17:45:01 CET