diff options
author | Sascha Hlusiak <mail@saschahlusiak.de> | 2012-09-14 23:35:39 +0200 |
---|---|---|
committer | Sascha Hlusiak <mail@saschahlusiak.de> | 2012-09-14 23:35:39 +0200 |
commit | 34525a6d31d592b84b471a00fc7cd7ed30aa37a4 (patch) | |
tree | 61188ac3b5af7b6fdb9fb6c3762626cc9be9f3ba | |
parent | 3afab91b78d8d41f1814ea5963552870b7df3485 (diff) |
introduction and basics, added header slide and logo images
-rw-r--r-- | introduction.tex | 31 | ||||
-rw-r--r-- | pics/X_Org_Logo.png | bin | 0 -> 70852 bytes | |||
-rw-r--r-- | pics/logitech_1.png | bin | 0 -> 577615 bytes | |||
-rw-r--r-- | xf86-input-joystick.tex | 142 |
4 files changed, 131 insertions, 42 deletions
diff --git a/introduction.tex b/introduction.tex deleted file mode 100644 index 8903456..0000000 --- a/introduction.tex +++ /dev/null @@ -1,31 +0,0 @@ -\begin{slide}{Slide 1} - \begin{itemize} - \item Item 1 - \item Item 2 - \item Item 3 - \end{itemize} -\end{slide} - - - -\subsection{Subsection 1} -\begin{slide}{Slide 2} - \begin{itemize} - \item Item 1 - \item Item 2 - \item Item 3 - \end{itemize} -\end{slide} - - -\subsection{Subsection 2} -\begin{slide}{Slide 3} - \begin{itemize} - \item Item 1 - \item Item 2 - \item Item 3 - \end{itemize} -\end{slide} - - - diff --git a/pics/X_Org_Logo.png b/pics/X_Org_Logo.png Binary files differnew file mode 100644 index 0000000..59b15d4 --- /dev/null +++ b/pics/X_Org_Logo.png diff --git a/pics/logitech_1.png b/pics/logitech_1.png Binary files differnew file mode 100644 index 0000000..96f428a --- /dev/null +++ b/pics/logitech_1.png diff --git a/xf86-input-joystick.tex b/xf86-input-joystick.tex index 1b82b3f..98473c9 100644 --- a/xf86-input-joystick.tex +++ b/xf86-input-joystick.tex @@ -2,13 +2,18 @@ \usepackage[utf8x]{inputenc} % \usetheme[secheader]{Boadilla} -\usetheme[secheader]{Goettingen} +% \usetheme[secheader]{Goettingen} +\usetheme{Malmoe} +\definecolor{myblue}{RGB}{55,69,104} +\usecolortheme[named=myblue]{structure} +\useinnertheme{circles} \usepackage{hyperref} \usepackage{ngerman} \newenvironment{slide}[1]{\begin{frame}[containsverbatim]{#1}}{\end{frame}} \usepackage{color} \usepackage{listings} +\usepackage{pgfpages} \definecolor{mylightgray}{rgb}{0.91,0.91,0.91} \lstset{ basicstyle=\ttfamily\tiny, @@ -21,7 +26,7 @@ breaklines=false, frame=none, columns=fixed, -% escapechar={�}, +% escapechar={}, % extendedchars=true, commentstyle=\it\color{gray}, directivestyle=\color{green}, @@ -31,32 +36,147 @@ } +\title{xf86-input-joystick} \author{\textbf{Sascha Hlusiak}} -%\institute{Hochschule Ravensburg-Weingarten} -%\date{}%{February 18th, 2009} +\logo{\includegraphics[width=1cm,height=1cm]{pics/X_Org_Logo.png}} +\titlegraphic{\includegraphics[width=4cm,height=4cm]{pics/logitech_1.png}} +%\institute{} +%\date{}%{} + + +%% ABSTRACT + +%The joystick input module was part of the old XFree86 distribution, but the +%driver was in a bad state until 2007, when development was pushed forward. It +%first supported the Linux joystick kernel device only, later on support for +%evdev devices was added, which added support for the driver to be hotplugged +%by hal enabled server. A FreeBSD kernel backend is available as well, but +%like Solaris, this is not a prominent system on workstations. Today the +%joystick driver is well hotpluggable using udev and supports many features +%and configuration possibilities, like generating mouse button events, pointer +%movement or key strokes. Enabling the driver to act as both, a pointer and a +%keyboard device, was particularly challenging. Having a second keyboard +%device with a different keyboard layout was a problem too, but situation +%improved with recent servers and XI2/MPX. Support for properties enable 3rd +%party programs to be written that change the configuration of the device on +%demand. Prominent target platforms are Linux on the PS3 or the XBox. -\title{xf86-input-joystick} \begin{document} \maketitle +\section*{Overview} +\subsection*{Abstract} + \begin{slide}{Abstract} + \structure{xf86-input-joystick?} \begin{itemize} - \item Item 1 - \item Item 2 - \item Item 3 + \item input module for the X.Org server to handle joystick devices + \item can emit cursor movement and key events + \item \textbf{control the cursor with a joystick} \end{itemize} \end{slide} \begin{slide}{Overview} -\tableofcontents + \tableofcontents +\end{slide} + + +\section{Basics} +\begin{slide}{joysticks} + \begin{itemize} + \item easily 6 or more axes, different types + \begin{itemize} + \item directional pad + \item hat switch + \item analog sticks + \end{itemize} + \item bunch of buttons, easily 10 and more + \item sometimes force feedback + \end{itemize} + \begin{center} + \includegraphics[width=4cm,height=4cm]{pics/logitech_1.png} + \end{center} +\end{slide} + + +\begin{slide}{why a joystick input module?} + \begin{itemize} + \item \textbf{xf86-input-evdev} maps directly to mouse/keyboard events + \item evdev only in Linux + \item joysticks send absolute axis data \\ + $ \Rightarrow $ direct mapping useless \\ + $ \Rightarrow $ want smooth, relative cursor movement \\ + \item joystick specific event transformation: + \end{itemize} + \scriptsize \vspace{1cm} +$$ + \underbrace{ + \left ( + \begin{matrix} + \text{absolute axes} \\ + \text{buttons} \\ + \end{matrix} + \right ) + }_{\text{joystick data}} + \Rightarrow + \underbrace{ + px(a_i) = \int_{t} f(a_i) \frac{\mathrm{px}}{\mathrm{s}} + }_{\text{transformation}} + \Rightarrow + \underbrace{ + \left ( + \begin{matrix} + \text{cursor} \\ + \text{buttons} \\ + \text{keys} \\ + \end{matrix} + \right ) + }_{\text{X events}} +$$ + +\end{slide} + + +\begin{slide}{joysticks on kernel level} + \structure{kernel device} + \begin{itemize} + \item usually Plug \& Play (USB) + \item event driven $ \Rightarrow $ no polling + \end{itemize} + + \structure{Linux} + \begin{itemize} + \item \texttt{/dev/input/js0} (joydev) + \item \texttt{/dev/input/event0} (evdev) + \end{itemize} + + \structure{FreeBSD} + \begin{itemize} + \item \texttt{/dev/input/js0} (linux-js) + \item \texttt{/dev/uhid0} (usbhid) + \end{itemize} + + $ \Rightarrow $ supported through lightweight abstraction layer \end{slide} -\section{Section 1} - \input{introduction} + + +\section{Backends} + +\section{Hotplugging} + +\section{Main Features} + +\section{Properties} + +\section{Future} + + + |