Of those two remotes, do you have the small black one or the larger silver one ? Are there any buttons that are not currently in use that you could dedicated for the context menu - for example the windows logo button ? Or one of the coloured buttons ?
Do you know whether that remote/receiver presents itself as a keyboard device (all button presses are interpreted as keyboard keys) or as a media remote control ? (buttons send special media events in windows, like play/pause etc) Knowing how the remote presents itself is important because you need to know whether XBMC will be seeing it as a remote, a keyboard, a mouse or a combination of the three.
The best way to find what the remote is sending to XBMC is to turn on debugging mode, monitor the xbmc log and then press buttons to see what it gets logged as.
I'm not too familiar with OpenElec (I use Raspbmc, which locates files in different locations) but the first thing you want to do is enable debugging mode in XBMC - you'll find this under Settings->System->Debugging.
Next you'll want to log in remotely using SSH, I'm assuming you already know how to do this. When logged in you want to "tail" the log file so you can see it update in real time as you press buttons.
Two possible ways are to use tail or less - I'm not sure which ones are available on OpenElec.
According to a forum post I read OpenElec stores its xbmc log file here: /storage/.xbmc/temp/xbmc.log
So you want to either:
Code:
tail -f /storage/.xbmc/temp/xbmc.log
OR
Code:
less /storage/.xbmc/temp/xbmc.log
In the case of less press capital F to put it in follow mode.
Once you've done that press the buttons on the remote including the one you'd like to use as a menu button and see how they are being logged. Let us know.
As for remote.xml - you won't find one unless you create it as it doesn't exit by default. It looks like on OpenElec you should place a remote.xml here:
/storage/.xbmc/userdata/keymaps/
As I don't use OpenElec myself I'm not 100% sure of the locations. If the device presents itself as a remote control you want a remote.xml file, however if it presents itself as a keyboard you need a keyboard.xml file.
There's some extensive information of keymaps/remote maps here, but it's pretty heavy going:
http://wiki.xbmc.org/index.php?title=Keyboard.xml
If you can report what your buttons are being logged as someone can probably give you suggestions of the best way to map it - key/button mappings in xbmc are infinitely customisable if you put the time into figuring out how it works.
One final option you have if you just can't get your amazon remote working to your satisfaction, is to enable CEC support on your TV (assuming it has it) and use the CEC function of your TV's remote to control XBMC - you can then learn the buttons from your TV remote on your Harmony.
I use the TV remote with CEC on my Raspberry Pi, and by using a remote.xml file I've customised the function of the four coloured buttons and a few others to my liking. Most of the basic functions like play/pause/stop etc work as is, I was only missing the context menu and info functions before creating a custom remote.xml to map them to two of the coloured buttons.