The mse driver provides support for the bus mouse and the InPort mouse, which are often collectively called bus mice, as these mice are sold with an interface card which needs to be installed in an expansion bus slot. The interface circuit may come on an integrated I/O card or as an option on video cards.
The bus and InPort mice have two or three buttons, and a D-sub 9-pin male connector or a round DIN 9-pin male connector.
The primary port address of the bus and InPort mouse interface cards is usually 0x23c. Some cards may also be set to use the secondary port address at 0x238. The interface cards require a single IRQ, which may be 2, 3, 4 or 5. Some cards may offer additional IRQs. The port number and the IRQ number are configured by jumpers on the cards or by software provided with the card.
Frequency, or report rate, at which the device sends movement and button state reports to the host system, may also be configurable on some interface cards. It may be 15, 30, 60 or 120Hz.
The difference between the two types of the mice is not in mouse devices (in fact they are exactly the same). But in the circuit on the interface cards. This means that the device from a bus mouse package can be connected to the interface card from an InPort mouse package, or vice versa, provided that their connectors match.
The mse driver has two levels of operation. The current operation level can be set via an ioctl call.
At the level zero the basic support is provided; the device driver will report horizontal and vertical movement of the attached device and state of up to three buttons in the format described below. It is a subset of the MouseSystems protocol.