1460730498-f9ab7c44-728c-4b1f-924f-5b38be140839

1. A method of updating a settop box (STB) programmed to execute established functionality according to instructions associated with a core STB system, the method comprising:
loading the STB with a plurality of filters that include instructions for implementing functionality updates; and
immediately implementing the functionality updates.
2. The method of claim 1 wherein a first application that is already in use is different from a second application that implements the functionality updates.
3. The method of claim 2 wherein the second application implements the functionality updates without requiring the first application to be restarted.
4. The method of claim 1 wherein a first application that is already in use is the same application that implements the functionality updates.
5. The method of claim 4 wherein the first application implements the functionality updates without restarting.
6. A method of updating a settop box (STB), the STB including established functionality and operating conditions, the method comprising:
loading the STB with at least one filter, the at least one filter specifying a functionality update for the STB and STB operating conditions necessary to implement the functionality update;
operating the STB according to the established functionality and periodically checking if the established STB operating conditions match the filter specified STB operating conditions; and
if the specified functionality update and operating conditions match the current STB operating conditions, immediately implementing the functionality update.
7. The method of claim 6 wherein implementing the functionality update includes operating the STB according to instructions specified in one of the filters instead of according to instructions associated with the established functionality.
8. The method of claim 7 wherein the instructions associated with the established functionality are stored within a core STB system.
9. The method of claim 6 wherein implementing the functionality update includes operating the STB to execute an operation according to the functionality update that would otherwise be processed according to the established functionality
10. The method of claim 6 further comprising checking for functionality updates upon receipt of an incoming message and processing the incoming message according to the functionality updates if one of the loaded filters corresponds to the incoming message, otherwise processing the incoming message according to established functionality.
11. The method of claim 10 further comprising storing the filters that are applicable to the incoming message within an internal message filter holding area of the STB.
12. The method of claim 6 further comprising checking for functionality updates prior to transmitting an outgoing message and transmitting the outgoing message according to the functionality updates if one of the loaded filters corresponds to the outgoing message, otherwise transmitting the outgoing message according to established functionality.
13. The method of claim 12 further comprising storing the filters that are applicable to the outgoing message within an outgoing message filter holding area of the STB.
14. The method of claim 6 further comprising checking for functionality updates upon occurrence of an event internal to the STB and implementing functionality updates if one of the loaded filters corresponds to the event, otherwise continuing STB processing according to established functionality.
15. A settop box (STB) configured to output signals to a display comprising:
a core STB system having a plurality of applications that support operations of the STB; and
at least one filter that includes instructions for updating functionality to one or more of the plurality of applications, wherein the filters add the functionality update to the one or more applications without interrupting the one or more applications that are running at a time when the functionality update is implemented.
16. The STB of claim 15 wherein the filters add the functionality update without requiring the one or more applications that are already running to be restarted.
17. The STB of claim 15 wherein the filters are comprised of non-compiling code.
18. The STB of claim 15 wherein the STB checks for the functionality update upon receipt of an incoming message and processes the incoming message according to the functionality update if one of the filters corresponds to the incoming message, otherwise the STB processes the incoming message according to established functionality associated with the core STB system.
19. The STB of claim 15 wherein the STB checks for the functionality update prior to transmitting an outgoing message and transmits the outgoing message according to the functionality update if one of the filters is applicable, otherwise the STB transmits the outgoing message according to established functionality associated with the core STB system.
20. The STB of claim 15 wherein the STB checks for the functionality update upon occurrence of an event internal to the STB and implements the functionality update if one of the filters is applicable to the event, otherwise the STB continues processing according to established functionality associated with the core STB system.

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

1. A method for providing a networked session of a rhythm action game on a game console, the method comprising:
identifying at least one local input device configured to participate in the networked session of the rhythm action game corresponding to a band template, wherein the band template includes a plurality of slots, each slot is associated with a particular type of simulated musical instrument, and wherein each of the at least one local input device is i) a game controller coupled to the game console, ii) associated with a particular simulated musical instrument controller type, and iii) configured to be associated with one of the plurality of slots;
for each of the at least one local input device, determining an associated one of the plurality of slots based on the simulated musical instrument controller type of the at least one local input device;
determining that a first slot of the plurality of slots is not associated with any of the at least one local input device configured to participate in the networked session of the rhythm action game;
determining a first simulated musical instrument controller type associated with the first slot;
providing information to search for and identify a remote input device associated with the first simulated musical instrument controller type, wherein the remote input device is coupled to a remote game console in communication with the game console over a network; and
providing the networked session of the rhythm action game with the at least one local input device and the remote input device.
2. The method of claim 1, further comprising identifying an additional local input device, coupled to the game console, after identifying the remote input device.
3. The method of claim 2, wherein the additional local input device is coupled to the game console after identifying the remote input device.
4. The method of claim 1, wherein each of the plurality of slots is associated with one of a guitar, a drum set, and a microphone.
5. The method of claim 1, wherein the band template includes four slots, two of which are associated with guitars, one of which is associated with a microphone, and one of which is associated with a drum set.
6. The method of claim 1, further comprising displaying an option to identify candidate input devices for the first slot.
7. The method of claim 1, further comprising displaying an option to allow the remote input device to join.
8. The method of claim 1, further comprising displaying an option to invite a specific input device, coupled to the remote game console, to the networked session of the rhythm action game.
9. The method of claim 1, further comprising:
determining a second slot of the plurality of slots is not associated with any of the at least one local input device configured to participate in the networked session of the rhythm action game;
determining a second simulated musical instrument controller type associated with the second slot; and
searching for a second remote input device associated with the second simulated musical instrument controller type.
10. The method of claim 1, further comprising identifying an additional remote input device that is coupled to the remote game console.
11. The method of claim 1, wherein identifying the remote input device includes receiving an identification of the remote input device over the network.
12. A non-transitory computer readable media comprising machine-readable executable code for providing a networked session of a rhythm-action game on a game console, the computer readable media comprising:
executable code for identifying at least one local input device configured to participate in the networked session of the rhythm action game corresponding to a band template, wherein the band template includes a plurality of slots, each slot is associated with a particular type of simulated musical instrument, and wherein each of the at least one local input device is i) a game controller coupled to the game console, ii) associated with a particular simulated musical instrument controller type, and iii) configured to be associated with one of the plurality of slots;
executable code for determining, for each of the at least one local input device, an associated one of the plurality of slots based on the simulated musical instrument controller type of the at least one local input device;
executable code for determining that a first slot of the plurality of slots is not associated with any of the at least one local input device configured to participate in the networked session of the rhythm action game;
executable code for determining a first simulated musical instrument controller type associated with the first slot;
executable code for providing information to search for and identify a remote input device associated with the first simulated musical instrument controller type, wherein the remote input device is coupled to a remote game console in communication with the game console over a network; and
executable code for providing the networked session of the rhythm action game with the at least one local input device and the remote input device.
13. The non-transitory computer readable media of claim 12, further comprising executable code for identifying an additional local input device, coupled to the game console, after identifying the remote input device coupled to the remote game console.
14. The non-transitory computer readable media of claim 12, wherein each of the plurality of slots is associated with one of a guitar, a drum set, and a microphone.
15. The non-transitory computer readable media of claim 12, wherein the band template includes four slots, two of which are associated with guitars, one of which is associated with a microphone, and one of which is associated with a drum set.
16. The non-transitory computer readable media of claim 12, further comprising executable code for displaying an option to identify candidate input devices for the first slot.
17. The non-transitory computer readable media of claim 12, further comprising executable code for displaying an option to allow the remote input device to join.
18. The non-transitory computer readable media of claim 12, further comprising executable code for displaying an option to invite a specific input device, coupled to the remote game console, to the networked session of the rhythm action game.
19. The non-transitory computer readable media of claim 12, further comprising:
executable code for determining a second slot of the plurality of slots is not associated with any of the at least one local input device;
executable code for determining a second simulated musical instrument controller type associated with the second slot; and
searching for a second remote input device associated with the second simulated musical instrument controller type.
20. The non-transitory computer readable media of claim 12, further comprising executable code for identifying an additional remote input device that is coupled to the remote game console.
21. The non-transitory computer readable media of claim 12, wherein the executable code for identifying the remote input device associated with the first type of a simulated musical instrument includes executable code for receiving an identification of the remote input device over the network.