Examples of discrete codes are separate on/off commands and direct input selection as Ken mentioned. They come in handy with advanced programmable remotes that have macro capability. A macro enables you to push one button and turn on your projector, your receiver (or preamp), your video source (satellite, DVD etc.) and switch inputs on your projector. If all you have is a single Power button or a scrolling input button, it is difficult to program a macro that will work properly no matter what state any of the devices are in. If the discrete commands are not on your original remote you have to obtain them from a different source. This is true with virtually any universal remote.
I find that people are so used to remotes with code databases that they are not aware of the benefits of learning the commands to a remote like the MX-500. A preprogrammed code might give you most of your commands quickly, but it may also leave out many and place others on keys where they're not convenient. With the MX-500, you can plan out all your LCD-labeled buttons in advance, then in less than 5 minutes, learn all the commands from your original remote. Also, most remotes that use preprogrammed codes have limited learning ability (without using additional add-on devices that I wont get into here). While the MX-500 has preprogrammed codes, the MX-500 has the capacity to learn the commands from all of your remotes very quickly.
For discrete commands, you need to learn them from another remote that has them, or use the IRClone addition (
www.irclone.com ) to program them to the MX-500.