1460909915-0cca8b4a-d546-429f-988f-0a24a1ffb915

1. A method comprising:
determining in an application matching program, for an application program, whether a control element event is used to carry out an action that is specific to the application program,
wherein the application matching program is configured to execute independently of the application program.
2. The method of claim 1 and further comprising detecting the application program.
3. The method of claim 2 wherein detecting the application program comprises identifying a foreground window.
4. The method of claim 1 and further comprising utilizing a default action for the control element event if the control element event is not used to carry out an action that is specific to the application program.
5. The method of claim 1 and further comprising determining whether the control element event is re-mapped independently of the application program and, if the control element event is not re-mapped, determining in the application matching program, for the application program, whether the control element event is used to carry out an action that is specific to the application program.
6. The method of claim 5 and further comprising, if the control element event is re-mapped to a command that is specific to one of an executable file name and identifying metadata, executing the command.
7. The method of claim 5 and further comprising, if the control element event is re-mapped through user configuration information, executing a corresponding command for the control element event in the user configuration information.
8. The method of claim 1 and further comprising determining whether the application program has application-specific behavior for at least one control element event and, if the application program has application-specific behavior for at least one control element event, determining in the application matching program, for the application program, whether the control element event is used to carry out an action that is specific to the application program.
9. The method of claim 8 and further comprising utilizing a default action for the control element event if the application program does not have application-specific behavior for the control element event.
10. The method of claim 1 and further comprising determining whether the control element event is to be handled natively and, if the control element event is not handled natively, determining in the application matching program, for the application program, whether the control element event is used to carry out an action that is specific to the application program.
11. The method of claim 10 and further comprising processing the control element event independently of the application matching program if it is to be handled natively.
12. The method of claim 1 wherein determining in an application matching program, for an application program, whether a control element event is used to carry out an action that is specific to the application program comprises determining in the application program, for the application program, whether an interface exposed by the application program corresponds with an interface identifier associated with the control element.
13. The method of claim 12 and further comprising, if the interface exposed by the application program corresponds with the interface identifier associated with the control element, carrying out an action, associated with the control element event, that is specific to the application program.
14. A computing system comprising:
an input device having at least one control element; and
a computer having a memory that is configured to store application programs, an application matching program, and actions corresponding to a control element event for the control element,
wherein the application matching program is configured to execute independently of the application programs, and
wherein the application matching program is configured to determine, for at least one application program, whether the control element event is used to carry out an action that is specific to the at least one application program.
15. The system of claim 14 wherein the input device is a mouse and the control element is a specialized button of the mouse.
16. A method comprising:
developing a function in an application program that is capable of exposing the function; and
associating the developed function with a control element event.
17. The method of claim 16 and further comprising providing an application matching program that is capable of linking the exposed function with the control element event using an interface that is exposed by the application program.
18. The method of claim 17 wherein the application matching program is configured to execute independently of the application program.
19. The method of claim 16 wherein the application program exposes functionality through COM (Component Object Model).
20. A computing system configured to implement the method of claim 16.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

What is claimed is:

1. A reception method including generating a complex four-phase pseudo-random sequence having I and Q portions comprising:
(a) providing a register having a plurality of bits initially set to zero;
(b) having a predetermined value comprising a plurality of bits;
(c) combining said predetermined value with said plurality of bits within said register to produce a bit combination;
(d) replacing the contents of the register with the bit combination;
(e) utilizing the bit from a first predetermined location within said shift register to generate said I portion;
(f) utilizing the bit from a second predetermined location within said shift register to generate said Q portion;
(g) repeating steps (c), (d), (e) and (f).
2. The reception method of claim 1, whereby said predetermined value is a quotient of a parameter M divided by a parameter N, wherein M and N are integers and M is relatively prime to N.
3. The reception method of claim 2, whereby said combining step is performed by adding the quotient of MN and the contents of the register.
4. A method for despreading voice or data signals for reception of a code division multiple access (CDMA) communication including generating four-phase pseudo-random sequences, the method comprising:
(a) selecting a parameter M and a processing gain N wherein M and N are integers and M is relatively prime to N;
(b) dividing the parameter M by the processing gain N to provide a quotient;
(c) mixing the quotient with an arithmetic progression of values and an incremental value of said arithmetic progression of values to provide a result;
(d) extracting first and second bits from the result;
(e) generating I and Q data from the extracted first and second bits respectively;
(f) using the I and Q data to despread said voice or data signals; and
(g) repeating steps (c) through (f).
5. A reception method for generating complex four-phase code division multiple access (CDMA) codes utilized for despreading a spread voice or data signals comprising:
(a) providing a register having a plurality of bits;
(b) selecting a first parameter M and a second parameter N, wherein M and N are integers and M is relatively prime to N;
(c) creating a quotient MN;
(d) combining the quotient MN with the contents of the register to produce a bit combination,
(e) replacing the contents of the register with the bit combination;
(f) extracting first and second bits from the register;
(g) generating I and Q codes from the first and second extracted bits;
(h) outputting the I and Q codes for reception; and
(I) repeating steps (d) through (h).
6. The transmission method of claim 5 wherein the register has sixteen bits of progressively more significance.
7. The transmission method of claim 5, wherein said combining is performed by adding the quotient of MN and the content of the register.
8. The transmission method of claim 5, further comprising outputting said I and Q codes to a despreader to despread said spread voice or data signals.
9. A reception method for generating four-phase code division multiple access (CDMA) codes used for despreading spread voice or data signals, the reception method comprising:
(a) receiving spread voice or data signals;
(b) selecting a parameter M and a processing gain N wherein M and N are integers and M is relatively prime to N;
(c) dividing M by N to provide a quotient;
(d) mixing the quotient with a series of values and an incremental value of said series of values to provide a result;
(e) extracting first and second bits from the result;
(f) generating I and Q data from the extracted first and second bits, respectively;
(g) outputting the I and Q data to a spreader; and
(h) despreading said voice or data signals.
10. The reception method of claim 9, wherein said series of values comprises an arithmetic progression.
11. A reception method for receiving an RF signal having a spread voice or data signal, the reception method including generating complex four-phase pseudo-random sequences and using said sequences to despread said spread voice or data signal subsequent to RF downconversion the reception method comprising:
(a) providing a register having a plurality of bits initially set to zero;
(b) selecting a first parameter M and a second parameter N to create a quotient MN, wherein M and N are integers and M is relatively prime to N;
(c) combining the quotient MN with the content of the register to produce a bit combination;
(d) replacing the content of the register with the bit combination; and
(e) repeating steps (c) and (d).
12. The reception method of claim 11 wherein the register has progressively more significance, and further including the step of extracting several bits from the combination.
13. The reception method as in claim 11, wherein the step of combining is performed by adding.
14. A wireless reception method for generating four-phase pseudo-random sequences, and utilizing the sequences for despreading spread voice or data signals comprising:
(a) receiving spread voice or data signals;
(b) selecting a parameter M and a processing gain N, wherein M and N are integers and M is relatively prime to N;
(c) dividing the parameter M by the processing gain N to provide a quotient;
(d) mixing the quotient with an arithmetic progression of values and an incremental value of said arithmetic progression of values to provide a result;
(e) extracting first and second bits from the result;
(f) generating I and Q data from the extracted first and second bits;
(g) outputting the I and Q data to a despreader;
(h) despreading said voice or data signals with said I and Q data;
(I) repeating steps (d) through (h).
15. The reception method of claim 14, wherein the first bit is the fifth least significant bit in said result, and wherein the second bit is the sixth least significant bit in said result.