Claims Analysis
Total Claims: 15
Claim 1
Independent Claim
142 words
A method for connecting a first keyboard/mouse interface and a second keyboard/mouse interface to a host computer, the method comprising the steps of: (a) routing data between the first keyboard/mouse interface and a first keyboard controller-to-host interface when the first keyboard controller-to-host interface is active; (b) routing data between the first keyboard/mouse interface and a first shell when a second keyboard controller-to-host interface is active, the first shell providing compatible connection between the first keyboard/mouse interface and the second keyboard controller-to-host interface; (c) routing data between the second keyboard/mouse interface and the second keyboard controller-to-host interface when the second keyboard controller-to-host interface is active; and, (d) routing data between the second keyboard/mouse interface and a second shell when the first keyboard controller-to-host interface is active, the second shell providing compatible connection between the second keyboard/mouse interface and the first keyboard controller-to-host interface.
Claim 2
Independent Claim
142 words
A method for connecting a first keyboard/mouse interface and a second keyboard/mouse interface to a host computer, the method comprising the steps of: (a) routing data between the first keyboard/mouse interface and a first keyboard controller-to-host interface when the first keyboard controller-to-host interface is active; (b) routing data between the first keyboard/mouse interface and a first shell when a second keyboard controller-to-host interface is active, the first shell providing compatible connection between the first keyboard/mouse interface and the second keyboard controller-to-host interface; (c) routing data between the second keyboard/mouse interface and the second keyboard controller-to-host interface when the second keyboard controller-to-host interface is active; and, (d) routing data between the second keyboard/mouse interface and a second shell when the first keyboard controller-to-host interface is active, the second shell providing compatible connection between the second keyboard/mouse interface and the first keyboard controller-to-host interface.
Claim 3
Dependent Claim
53 words
A method as in claim 1 wherein in steps (a) through (d): the first keyboard/mouse interface comprises a universal serial bus serial interface; the second keyboard/mouse interface comprises a PS/2 serial interface; the first keyboard controller-to-host interface comprises a host controller interface; and the second keyboard controller-to-host interface comprises a port 64/60 interface.
Claim 4
Dependent Claim
22 words
A method as in claim 2 wherein in steps (a) through (d): the second keyboard/mouse interface additionally comprises a matrix keyboard interface.
Claim 5
Dependent Claim
102 words
A method as in claim 1 wherein step (d) comprises the following substeps: (d.1) storing serial keyboard data traveling from the second keyboard/mouse interface to the first keyboard controller-to-host interface in a serial keyboard inbound queue; (d.2) storing serial keyboard data traveling from the first keyboard controller-to-host interface to the second keyboard/mouse interface in a serial keyboard outbound queue; (d.3) storing mouse data traveling from the second keyboard/mouse interface to the first keyboard controller-to-host interface in a mouse inbound queue; and, (d.4) storing mouse data traveling from the first keyboard controller-to-host interface to the second keyboard/mouse interface in a mouse outbound queue.
Claim 6
Dependent Claim
61 words
A method as in claim 4 wherein step (d) additionally comprises the following substeps: (d.5) storing matrix keyboard data traveling from the second keyboard/mouse interface to the first keyboard controller-to-host interface in a matrix keyboard inbound queue; and, (d.6) storing matrix keyboard data traveling from the first keyboard controller-to-host interface to the second keyboard/mouse interface in a matrix keyboard outbound queue.
Claim 7
Dependent Claim
62 words
A method as in claim 1 wherein step (b) additionally comprises the following substeps: (b.1) storing serial keyboard data traveling between the first keyboard/mouse interface and second keyboard controller-to-host interface in a first linked list of transfer descriptors; and, (b.2) storing mouse data traveling between the first keyboard/mouse interface and second keyboard controller-to-host interface in a second linked list of transfer descriptors.
Claim 8
Dependent Claim
97 words
A keyboard controller for connecting a first keyboard/mouse interface and a second keyboard/mouse interface to a host computer, the keyboard controller comprising: a first data path for connecting the first keyboard/mouse interface to a first keyboard controller-to-host interface of the host; a second data path for connecting the second keyboard/mouse interface to a second keyboard controller-to-host interface of the host; a first shell for providing compatible connection between the first keyboard/mouse interface and the second keyboard controller-to-host interface; and, a second shell for providing compatible connection between the second keyboard/mouse interface and the first keyboard controller-to-host interface.
Claim 9
Dependent Claim
97 words
A keyboard controller for connecting a first keyboard/mouse interface and a second keyboard/mouse interface to a host computer, the keyboard controller comprising: a first data path for connecting the first keyboard/mouse interface to a first keyboard controller-to-host interface of the host; a second data path for connecting the second keyboard/mouse interface to a second keyboard controller-to-host interface of the host; a first shell for providing compatible connection between the first keyboard/mouse interface and the second keyboard controller-to-host interface; and, a second shell for providing compatible connection between the second keyboard/mouse interface and the first keyboard controller-to-host interface.
Claim 10
Dependent Claim
49 words
A keyboard controller as in claim 7 wherein: the first keyboard/mouse interface comprises a universal serial bus serial interface; the second keyboard/mouse interface comprises a PS/2 serial interface; the first keyboard controller-to-host interface comprises a host controller interface; and the second keyboard controller-to-host interface comprises a port 64/60 interface.
Claim 11
Dependent Claim
18 words
A keyboard controller as in claim 8 wherein the second keyboard/mouse interface additionally comprises a matrix keyboard interface.
Claim 12
Dependent Claim
104 words
A keyboard controller as in claim 7 additionally comprising: a first routing means for routing data between the first keyboard/mouse interface and the first keyboard controller-to-host interface when the first keyboard controller-to-host interface is active and for routing data between the first keyboard/mouse interface and the first shell when the second keyboard controller-to-host interface is active; and, a second routing means for routing data between the second keyboard/mouse interface and the second keyboard controller-to-host interface when the second keyboard controller-to-host interface is active and for routing data between the second keyboard/mouse interface and the second shell when the first keyboard controller-to-host interface is active.
Claim 13
Dependent Claim
38 words
A keyboard controller as in claim 7 wherein the second shell comprises: a virtual serial keyboard; a serial keyboard inbound queue; a serial keyboard outbound queue; a virtual mouse; a mouse inbound queue; and, a mouse outbound queue.
Claim 14
Dependent Claim
28 words
A keyboard controller as in claim 11 wherein the second shell additionally comprises: a virtual matrix keyboard; a matrix keyboard inbound queue; and, a matrix keyboard outbound queue.
Claim 15
Dependent Claim
43 words
A keyboard controller as in claim 7 wherein the first shell comprises: a virtual keyboard; a first linked list of transfer descriptors, which includes an endpoint descriptor; a virtual mouse; and, a second linked list of transfer descriptors, which includes an endpoint descriptor.