GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  JOY (4)

NAME

joy - joystick device driver

CONTENTS

Synopsis
Description
     One line perl example:
Technical Specifications
Files
History
Authors

SYNOPSIS

To compile this driver into the kernel, place the following lines in your kernel configuration file:


.Cd device joy

Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5):

joy_load="YES"

In /boot/device.hints:
.Cd hint.joy.0.at= isa
.Cd hint.joy.0.port= 0x201
.Cd hint.joy.1.at= isa
.Cd hint.joy.1.port= 0x201


.In sys/joystick.h

DESCRIPTION

The joystick device driver allows applications to read the status of the PC joystick.

This device may be opened by only one process at a time.

The joystick status is read from a structure via a read() call. The structure is defined in the header file as follows:

        struct joystick {
                int x;         /* x position */
                int y;         /* y position */
                int b1;        /* button 1 status */
                int b2;        /* button 2 status */
        };

Positions are typically in the range 0-2000.

    One line perl example:

perl -e ’open(JOY,"/dev/joy0")||die;while(1)
{sysread(JOY,$x,16);@j=unpack("iiii",$x);print "@j\n";sleep(1);}’

    ioctl calls

Several ioctl() calls are also available. They take an argument of type int *
JOY_SETTIMEOUT int *limit
  Set the time limit (in microseconds) for reading the joystick status. Setting a value too small may prevent to get correct values for the positions (which are then set to -2147483648), however this can be useful if one is only interested by the buttons status.
JOY_GETTIMEOUT int *limit
  Get the time limit (in microseconds) used for reading the joystick status.
JOY_SET_X_OFFSET int *offset
  Set the value to be added to the X position when reading the joystick status.
JOY_SET_Y_OFFSET int *offset
  Set the value to be added to the Y position when reading the joystick status.
JOY_GET_X_OFFSET int *offset
  Get the value which is added to the X position when reading the joystick status.
JOY_GET_Y_OFFSET int *offset
  Get the value which is added to the Y position when reading the joystick status.

TECHNICAL SPECIFICATIONS

The pinout of the DB-15 connector is as follow:
  1  XY1 (+5v)
  2  Switch 1
  3  X1 (potentiometer #1)
  4  Switch 1 (GND)
  5  Switch 2 (GND)
  6  Y1 (potentiometer #2)
  7  Switch 2
  8  N.C.
  9  XY2 (+5v)
 10  Switch 4
 11  X2 (potentiometer #3)
 12  Switch 3&4 (GND)
 13  Y2 (potentiometer #4)
 14  Switch 3
 15  N.C.

Pots are normally 0-150k variable resistors (0-100k sometimes), and according to the IBM technical reference, the time is given by Time = 24.2e-6s + 0.011e-6s * R/Ohms

FILES

/dev/joy?
  joystick device files

HISTORY

The joy driver appeared in
.Fx 2.0.5 .

AUTHORS


.An Jean-Marc Zucconi Aq jmz@cabri.obs-besancon.fr
Search for    or go to Top of page |  Section 4 |  Main Index


Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.