GB2345986A - Computer mouse/mice driver - Google Patents
Computer mouse/mice driver Download PDFInfo
- Publication number
- GB2345986A GB2345986A GB9901027A GB9901027A GB2345986A GB 2345986 A GB2345986 A GB 2345986A GB 9901027 A GB9901027 A GB 9901027A GB 9901027 A GB9901027 A GB 9901027A GB 2345986 A GB2345986 A GB 2345986A
- Authority
- GB
- United Kingdom
- Prior art keywords
- mouse
- mice
- standard format
- data
- axis
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
- G06F3/0383—Signal control means within the pointing device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/038—Indexing scheme relating to G06F3/038
- G06F2203/0382—Plural input, i.e. interface arrangements in which a plurality of input device of the same type are in communication with a PC
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Position Input By Displaying (AREA)
Abstract
A method for driving a computer mouse or plurality of mice which uses a communication interface to convert the different protocols of different types of mice (e.g. a Microsoft(RTM) mouse or a PS/2(RTM) mouse) into a generic standard format is disclosed. The universal driver permits one or more mice to be connected to, and used by, the computer simultaneously. It also enables one mouse to be replaced by another (hot-swapped) without needing to restart (in order to load new drivers) or re-configure either the computer system or any software that the computer is running.
Description
A METHOD FOR DRIVING COMPUTER MICE
This invention relates to a method for driving computer mice, especially the method can be used to let all models of computer mice be driven by only one driver in order for the computer system capable of driving different computer mice connected thereto simultaneously.
Computer mouse is a very common input device used in personal computers. There are a variety of computer mice in the market, such as
Serial Mouse, PS/2 Mouse and Bus Mouse etc., each model of these mice uses its unique protocol to communicate with personal computer. Now, many mouse drivers are respectively designed for specific models of mice.
Though some drivers has the capability of supporting several models of mice, those drivers are merely combined by different sectional programs each written for specific models of mice supported, of which the defects are too many resources are wasted and two or more mice simultaneously being operated are impossible.
In addition, the generic mouse drivers now available in the market are respectively written for specific communication protocols applied to the related computer mice, the protocols for different models of mice are generally different from each other. In order to support two or more mice, it is necessary to design several drivers respectively in accordance with the specifications of the mice being supported and install said drivers to the personal computer. However, in the aforesaid circumstance, while using the computer, it is impossible for the user to simultaneously operate two or more mice. And, while changing the mouse from one model to another, the user needs to re-start the computer to initialize the specification of said mouse for normal operations. Therefore, the above-mentioned prior used mice have defects summarized as follows :
1. It is necessary to design a specific mouse driver to drive a specific mouse connected with the personal computer;
2. It is impossible for the user to simultaneously operate two or more mice connected with the personal computer;
3. It will cause the user a lot of trouble, but is necessary, to close the applications in running and re-start the computer while changing the mouse from one model to another, and sometimes re-configuration is also required.
A primary aspect of the invention is to provide a method to convert the numerical data formats of all models of computer mice into a standard format by using a protocol conversion interface in order for the computer system capable of driving different computer mice connected thereto simultaneously. Thus, whenever mouse being changed from one model to another, the user doesn't have to renew the mouse driver or to re-start the computer, instead, the user can immediately operate said another mouse normally. Therefore, the resources of the computer will be fully utilized and the operation of the mouse will be more facile to the user.
Another aspect of the invention is to provide a method to let the computer system be simultaneously connected with two or more different models of mice through a universal protocol conversion interface to read the numerical data formats from those different mice. Thus, according to the present invention, the user doesn't need to install or re-configure the drivers with respect to the models of the mice while being changed.
The foregoing and other features and advantages of the present invention will be more clearly understood from the following detailed description and the accompanying drawings, in which,
Table 1 is the standard format of the mice.
Table 2 is the data format of Microsoft mouse.
Table 3 is the data format of PS/2 mouse.
Figure 1 is a flow chart of the method according to the present invention.
The invention is a method for driving computer mice mainly by arranging and summarizing all basic and necessary parameters for operating all kinds of models of mice, including x-axis direction, x-axis distance, y-axis direction, y-axis distance and the operating status of mouse button, into a standard format. And. each of the parameters is written into its specific position on said format, wherein the parameters of distances and directions relating to the same axis can be represented by one numerical data along with the minus/plus value to indicate different directions. Then, comparing the data in said standard format with those in the numerical data formats of different kinds of mice, and saving the data of the relationships there between to the protocol conversion interface of the computer system.
According to an embodiment of the present invention, the standard format is shown as table 1. From this table, it is shown that ByteO comprises 8 bits, wherein the positions of bit 0 and bit 1 in ByteO are used to store the indexes respectively representing the left and right mouse buttons being pressed, the positions of bit 4 and bit 5 are respectively used to store the negative values of x-axis and y-axis (X, Y), and the positions of bit6 and bit7 are respectively used to store the overflows of x-axis and y- axis (X, Y). And, the positions of Bytel and Byte2 are respectively used to store the coordinate values of x-axis and y-axis.
Referring to Figure 1, the method of the invention is to connect a mouse with a personal computer, then initialize the related register in the computer system to activate the mouse and enable the mouse to send interrupt signals back to the computer system wile the mouse being moved.
According to the interrupt signas, the computer system will distinguish the model of mouse, and read the required data through the port connected with the mouse. And, then converting said data received from the mouse into the standard format via the protocol conversion interface, and store them respectively to the correct position in the standard format. After that, the computer system will let the currently executed application program utilize said standard format to communicate with the mouse to detect whether left button of mouse being pressed by the user. If yes, the application program will read the corresponding data from said standard format and execute the actions thereof.
If left button of mouse not being pressed, the computer system will detect whether the mouse being moved upward. If yes, the application program will read the corresponding data from said standard format and execute the actions thereof.
If the mouse not being moved upward, the computer system will then detect whether the mouse being moved downward. If yes, the application program will read the corresponding data from said standard format and execute the actions thereof.
Consequentially, according to the present invention, the computer system can therefore simultaneously control several different models of mice being connected with by utilizing only one mouse driver. It not only saves much resources of the computer system, but also keeps the users free from a lot of troubles in re-installation or re-configuration while the mouse being changed.
Besides, whenever or whatever the specification of mice being changed in the future, it only needs to add an additional protocol conversion to adapt said changes and normalize the operation of mice, but without changing the related upper level program.
In order to let the features and advantages of the present invention be more easily and clearly understood, the following is the detailed description of an embodiment according to the present-invention to simultaneously operate Microsoft serial mouse and PS/2 mouse connected with the computer system:
First to initialize the initial values in the registers of the computer system respectively for Microsoft serial mouse and PS/2 mouse to activate these two mice and enable the mice to send interrupt signals back to the computer system while being moved. According to the interrupt signas, the computer system can distinguish the models of these two mice, and read the required data through the ports connected with the mice.
The data format of Microsoft mouse is shown as table 2 and the data format of PS/2 mouse is shown as table 3.
From these tables, it is shown that ByteO comprises 8 bits, wherein the positions of bit 0 and bit 1 in ByteO are used to store the indexes respectively representing the left and right mouse buttons being pressed, the positions of bit 4 and bit 5 are respectively used to store the negative values of x-axis and y-axis (X, Y), and the positions of bit6 and bit7 are respectively used to store the overflows of x-axis and y-axis (X, Y). And, the positions of Bytel and Byte2 are respectively used to store the coordinate values of x-axis and y-axis.
From the above tables, it shows that the data stored in the positions of bit3 and bit2 in ByteO of the data format of Microsoft mouse will be combined with the data stored in the positions of bitO-bit5 in Byte2. The result will be stored in Byte2 (Y-data) of the standard format designed according to the present invention. Then, the data stored in the positions of bitl and bitO in ByteO of the data format of Microsoft mouse will be combined with the data stored in the positions ofbit0-bit5 in Bytel. The result thereof will be stored in Bytel (X-data) of the standard format designed according to the invention. Because Microsoft protocol doesn't have data overflow, the data converted respective to the data in the positions of bit7 and bit6 in ByteO (Y-data overflow and X-data overflow) will be 0. Data stored in the positions of Y-data bit7 and X-data bit7 in
ByteO of the data format of Microsoft mouse respectively correspond to the converted data of Y-negative and X-negative of the standard format. Data stored in the positions of bit5 (left button pressed) and bit4 (right button pressed) in ByteO of the data format of Microsoft mouse respectively correspond to the converted data of bitO and bitl in ByteO of the standard format.
For PS/2 mouse, data stored in the position of ByteO the format thereof will be directly converted and stored in the position of ByteO of the standard format byteO designed according to the invention. Data stored in the position of Byte2 will be converted and stored in the position of Bytel of the standard format, and data stored in the position of Byte4 will be converted and stored in the position of Byte2 of the standard format.
After the aforesaid conversion, the computer system will then execute the application program through the standard format and protocol conversion interface to control Microsoft and PS/2 mice simultaneously.
The above is merely an embodiment of the conversion from Microsoft and PS/2 mice to standard format, however, similar conversion is also applicable to other models of mice.
Overall, the invention is a method for driving computer mice, which not only can eliminate operation inconvenience caused from incompatibility of mice, but also can save computer resources by using minimal codes to represent each different models of mice. The invention also realizes simultaneous operations of two or more mice. Whenever mouse is changed, the user doesn't have to re-start the computer and/or close and exit the application program in running, or to change any settings or configurations.
It is to be understood that changes may be made to the invention in light of the above detailed description. Accordingly, the invention is not limited by the disclosure, but instead its scope is to be determined entirely by reference to the following claims.
Claims (4)
- CLAIMS A method for driving computer mice, including the following steps: (1) Converting all basic parameters for movement of at least one computer mouse respectively into a standard format, and storing the standard format into a protocol conversion interface in a computer system; (2) Connecting at least one mouse with said computer system, convertina the corresponding data for movement of said at least one mouse into said standard format by using said protocol conversion interface, and then storing the converted data in the appropriate positions of said standard format ; (3) Letting application programs read data stored in said standard format and send said data to said computer system in order for said computer system to drive said at least one mouse to move smoothly by converting settings of said mouse respectively through said protocol conversion interface;
- 2. The method in claim 1, wherein said basic parameters including the parameters relating to x-axis direction, x-axis distance, y-axis direction, yaxis distance of the movement or position of said mouse and actions of mouse button being pressed/clicked.
- 3. The method in claim 1, wherein the data stored in the positions of bitO and bitl in ByteO of said standard format are respectively the data of left-button click and right-button click of said mouse, the data stored in the positions of bit4 and bit5 in ByteO are respectively negative values of x-axis and y-axis of said mouse, and the data stored in the positions of bit6 and bit7 in ByteO are respectively overflows of x-axis and y-axis of said mouse, and, and the data stored in the positions of Byte 1 and Byte 2 are respectively x-value and y-value of said mouse.
- 4. A method for driving computer mice substantially as herein described with reference to and as illustrated in the accompanying drawings and tables.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9901027A GB2345986A (en) | 1999-01-19 | 1999-01-19 | Computer mouse/mice driver |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9901027A GB2345986A (en) | 1999-01-19 | 1999-01-19 | Computer mouse/mice driver |
Publications (2)
Publication Number | Publication Date |
---|---|
GB9901027D0 GB9901027D0 (en) | 1999-03-10 |
GB2345986A true GB2345986A (en) | 2000-07-26 |
Family
ID=10846055
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB9901027A Withdrawn GB2345986A (en) | 1999-01-19 | 1999-01-19 | Computer mouse/mice driver |
Country Status (1)
Country | Link |
---|---|
GB (1) | GB2345986A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2354093A (en) * | 1999-05-10 | 2001-03-14 | Phoenix Tech Ltd | Plural pointing devices |
GB2388682A (en) * | 2002-02-21 | 2003-11-19 | Adder Tech Ltd | An interface for use between an input device and a computer with means for storing data relating to different protocols for different input devices |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1989005496A1 (en) * | 1987-12-02 | 1989-06-15 | Soft Image Systems Limited | Inputs to computer by non-physical link |
EP0419064A2 (en) * | 1989-09-22 | 1991-03-27 | International Business Machines Corporation | Computer system having apparatus for providing pointing device independent support in an operating environment |
EP0506278A2 (en) * | 1991-03-26 | 1992-09-30 | International Business Machines Corporation | Device driver system having generic operating system interface |
US5550562A (en) * | 1993-01-12 | 1996-08-27 | Fujitsu Limited | Data processing device that enables mouse-operated application programs to be operated from an operation pad, and an operation pad for use with the same |
EP0798637A1 (en) * | 1996-03-29 | 1997-10-01 | Sun Microsystems, Inc. | Transparently converting program calls between interfaces |
US5732283A (en) * | 1995-10-24 | 1998-03-24 | International Business Machines Corporation | System and method of providing universal support for multiple pointing devices |
-
1999
- 1999-01-19 GB GB9901027A patent/GB2345986A/en not_active Withdrawn
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1989005496A1 (en) * | 1987-12-02 | 1989-06-15 | Soft Image Systems Limited | Inputs to computer by non-physical link |
EP0419064A2 (en) * | 1989-09-22 | 1991-03-27 | International Business Machines Corporation | Computer system having apparatus for providing pointing device independent support in an operating environment |
EP0506278A2 (en) * | 1991-03-26 | 1992-09-30 | International Business Machines Corporation | Device driver system having generic operating system interface |
US5550562A (en) * | 1993-01-12 | 1996-08-27 | Fujitsu Limited | Data processing device that enables mouse-operated application programs to be operated from an operation pad, and an operation pad for use with the same |
US5732283A (en) * | 1995-10-24 | 1998-03-24 | International Business Machines Corporation | System and method of providing universal support for multiple pointing devices |
EP0798637A1 (en) * | 1996-03-29 | 1997-10-01 | Sun Microsystems, Inc. | Transparently converting program calls between interfaces |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2354093A (en) * | 1999-05-10 | 2001-03-14 | Phoenix Tech Ltd | Plural pointing devices |
GB2354093B (en) * | 1999-05-10 | 2003-08-27 | Phoenix Tech Ltd | System and method for synchronization of pointing devices with different data packet sizes |
GB2388682A (en) * | 2002-02-21 | 2003-11-19 | Adder Tech Ltd | An interface for use between an input device and a computer with means for storing data relating to different protocols for different input devices |
GB2388682B (en) * | 2002-02-21 | 2005-11-02 | Adder Tech Ltd | Interfacing devices |
Also Published As
Publication number | Publication date |
---|---|
GB9901027D0 (en) | 1999-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100287091B1 (en) | Single Pointer / Keyboard for Multiple Computers | |
US6100875A (en) | Keyboard pointing device | |
US5835791A (en) | Versatile connection of a first keyboard/mouse interface and a second keyboard/mouse interface to a host computer | |
US6044428A (en) | Configurable universal serial bus node | |
US6213880B1 (en) | Game pad apparatus and method for navigation on a digital video disk (DVD) system | |
US7420544B2 (en) | Information processing apparatus and information processing method | |
JP3814535B2 (en) | Input device | |
US20070050525A1 (en) | [virtual com port for remote i/o controller] | |
US7333093B2 (en) | Information processing apparatus and information processing method | |
CN106462514B (en) | System and method for unifying device interface and host interface | |
US5608895A (en) | Method for providing mouse functionality using either an internal or external mouse input device | |
CA2533250A1 (en) | Real-time sharing of single user applications among multiple users | |
US6909423B2 (en) | Method for inputting commands in a keypad | |
US20180253155A1 (en) | Private access to human interface devices | |
GB2345986A (en) | Computer mouse/mice driver | |
JP2024056066A5 (en) | Apparatus, teaching device, control device, robot system, and method for setting an operation mode | |
KR101315453B1 (en) | Computer system and control method thereof | |
KR101376603B1 (en) | Computer keyboard device capable of activating application on a computer and method for activating application | |
CN103744355A (en) | Low-cost easily compatible control design method of open type numerical control machine tool | |
CN221261631U (en) | Multi-interface self-adaptive keyboard device | |
CN213210986U (en) | a multifunctional mouse | |
CN1318988C (en) | Method and system for detecting and converting non-universal serial bus devices with a converter | |
CN103744520A (en) | Instrument special keyboard based on single-chip microcomputer and working method thereof | |
JP2001034413A (en) | Pen input system and pen input method | |
CN110303209B (en) | A kind of automatic control method of electric discharge molding machine control process |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WAP | Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1) |