2003-10-29, 02:04
after making the discovery this morning that the xbox accepts remote button codes other than the 27 or so buttons on the ms remote, i think that implementing an xml sheet that can be used to map buttons (both on the remote and controller) to actions is something that should be looked at.
my current thinking is to have a bunch of actions defined and the config file then basically lists the actions and the buttons associated with that action.
this will require a well defined set of actions and modes in order to implement well. my current thoughts are that there should be a set of default or global actions that apply throughout, which can possibly be overridden, or reassigned in the different gui modes. things such as the arrow keys (move left, move right, select) etc. could be defined in the global or default section, and are then not needed to be defined in all of the various modes.
the modes i can think of straight off are:
gui
movie
music visualisation
others may include (for instance)
playlist
dvd menu
etc. etc.
the file might perhaps look something like:
we could allow multiple <contoller> or <remote> tags for each action. the <remotecode> tags simply allow the user to define a specific remote obc code for the action (86 is the obc code for left on a remote with the rc5 protocol)
i'd be interested in what other devs think, as well as what other users think. perhaps between us we can define a comprehensive + forward looking set of actions and modes so that this can be implemented in the best ways possible.
imo all this is a setup once type of thing, so an xml file would be best, but there is nothing to stop having this alterable from within the gui - other than the possibility of the user stuffing something up and not being able to change it back due to the select key no longer being functional!
cheers,
jonathan
my current thinking is to have a bunch of actions defined and the config file then basically lists the actions and the buttons associated with that action.
this will require a well defined set of actions and modes in order to implement well. my current thoughts are that there should be a set of default or global actions that apply throughout, which can possibly be overridden, or reassigned in the different gui modes. things such as the arrow keys (move left, move right, select) etc. could be defined in the global or default section, and are then not needed to be defined in all of the various modes.
the modes i can think of straight off are:
gui
movie
music visualisation
others may include (for instance)
playlist
dvd menu
etc. etc.
the file might perhaps look something like:
Quote:<global>
<action>
<description>moveleft</discription>
<id>0</id>
<controller>dpad_left</controller>
<remote>left</remote>
<remotecode>86</remotecode>
</action>
...
</global>
<mode>
<description>gui</description>
other actions associated only with the gui mode
</mode>
other modes go here
we could allow multiple <contoller> or <remote> tags for each action. the <remotecode> tags simply allow the user to define a specific remote obc code for the action (86 is the obc code for left on a remote with the rc5 protocol)
i'd be interested in what other devs think, as well as what other users think. perhaps between us we can define a comprehensive + forward looking set of actions and modes so that this can be implemented in the best ways possible.
imo all this is a setup once type of thing, so an xml file would be best, but there is nothing to stop having this alterable from within the gui - other than the possibility of the user stuffing something up and not being able to change it back due to the select key no longer being functional!
cheers,
jonathan