Basic commands are commands all device types should understand but can modify the parameters. For example, when issuing a PLAY command to a Videodisc Player, it might be desirable to indicate the speed of playback in frames per second. However, a device such as a CD Player might not have the capability to play back at different speeds.
The list of basic commands is shown in the following table. If a device does not use a device-type command, it can return MCIERR_UNSUPPORTED_FUNCTION. If a device supports the command, but not all of the options, it can return the MCIERR_UNSUPPORTED_FLAG for options that are not applicable.
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³Message ³Description ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_CONNECTOR ³Enables, disables, counts the number of,³ ³ ³or queries the status of connectors. ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_LOAD ³Loads a new device element (file name) ³ ³ ³into an open device context. ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_MASTERAUDIO ³Sets the system master audio setting for³ ³ ³all audio devices in the system. ³ ³ ³MCI_MASTERAUDIO is also used as a system³ ³ ³command to query the current audio ³ ³ ³settings when the driver is first ³ ³ ³opened. ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_PAUSE ³Suspends device playback. ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_PLAY ³Starts playing the device. ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_RECORD ³Starts recording data. ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_RESUME ³Resumes playing or recording from a ³ ³ ³paused state. ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_SAVE ³Saves data for the device. ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_SEEK ³Moves to the specified position and ³ ³ ³stops. ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_SET ³Sets the operating state of the device. ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_SETCUEPOINT ³Sets a cuepoint. ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_SETPOSITIONADVISE ³Sets a position change notification for ³ ³ ³the device. ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_STATUS ³Obtains information about the status of ³ ³ ³a media device. ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_STOP ³Stops the device. ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
The basic command messages use the ulParam1 parameter for the flags applicable to the command message. They also use the pParam2 parameter for a pointer to a message-specific data structure. Your MCD might add flags and parameters to create extended commands. When you extend a command message, your MCD must still respond to the basic flags and parameters.
The following table identifies the flags and data structures of the basic command messages. For a complete reference of media control interface commands, refer to the OS/2 Multimedia Programming Reference.
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³Message ³Parameters (ulParam1) ³Data Structure (pParam2) ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_CONNECTOR ³MCI_NOTIFY ³MCI_CONNECTOR_PARMS ³ ³ ³MCI_WAIT ³ ³ ³ ³MCI_ENABLE_CONNECTOR ³ ³ ³ ³MCI_DISABLE_CONNECTOR ³ ³ ³ ³MCI_QUERY_CONNECTOR_STATUS ³ ³ ³ ³MCI_CONNECTOR_TYPE ³ ³ ³ ³MCI_CONNECTOR_INDEX ³ ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_LOAD ³MCI_OPEN_ELEMENT ³MCI_LOAD_PARMS ³ ³ ³MCI_OPEN_MMIO ³ ³ ³ ³MCI_NOTIFY ³ ³ ³ ³MCI_WAIT ³ ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_MASTERAUDIO ³MCI_WAIT ³MCI_MASTERAUDIO_PARMS ³ ³ ³MCI_QUERYCURRENTSETTING ³ ³ ³ ³MCI_QUERYSAVEDSETTING ³ ³ ³ ³MCI_SAVESETTING ³ ³ ³ ³MCI_MASTERVOL ³ ³ ³ ³MCI_SPEAKERS ³ ³ ³ ³MCI_HEADPHONES ³ ³ ³ ³MCI_ON ³ ³ ³ ³MCI_OFF ³ ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_PAUSE ³MCI_NOTIFY ³MCI_GENERIC_PARMS ³ ³ ³MCI_WAIT ³ ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_PLAY ³MCI_NOTIFY ³MCI_PLAY_PARMS ³ ³ ³MCI_WAIT ³ ³ ³ ³MCI_FROM ³ ³ ³ ³MCI_TO ³ ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_RECORD ³MCI_NOTIFY ³MCI_RECORD_PARMS ³ ³ ³MCI_WAIT ³ ³ ³ ³MCI_FROM ³ ³ ³ ³MCI_TO ³ ³ ³ ³MCI_RECORD_INSERT ³ ³ ³ ³MCI_RECORD_OVERWRITE ³ ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_RESUME ³MCI_NOTIFY ³MCI_GENERIC_PARMS ³ ³ ³MCI_WAIT ³ ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_SAVE ³MCI_NOTIFY ³MCI_SAVE_PARMS ³ ³ ³MCI_WAIT ³ ³ ³ ³MCI_SAVE_FILE ³ ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_SEEK ³MCI_NOTIFY ³MCI_SEEK_PARMS ³ ³ ³MCI_WAIT ³ ³ ³ ³MCI_TO ³ ³ ³ ³MCI_TO_START ³ ³ ³ ³MCI_TO_END ³ ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_SET ³MCI_NOTIFY ³MCI_SET_PARMS ³ ³ ³MCI_WAIT ³ ³ ³ ³MCI_SET_AUDIO ³ ³ ³ ³MCI_SET_DOOR_OPEN ³ ³ ³ ³MCI_SET_DOOR_CLOSED ³ ³ ³ ³MCI_SET_DOOR_LOCK ³ ³ ³ ³MCI_SET_DOOR_UNLOCK ³ ³ ³ ³MCI_SET_VOLUME ³ ³ ³ ³MCI_OVER ³ ³ ³ ³MCI_SET_VIDEO ³ ³ ³ ³MCI_SET_ON ³ ³ ³ ³MCI_SET_OFF ³ ³ ³ ³MCI_SET_SPEED_FORMAT ³ ³ ³ ³MCI_SET_TIME_FORMAT ³ ³ ³ ³MCI_SET_ITEM ³ ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_SETCUEPOINT ³MCI_NOTIFY ³MCI_CUEPOINT_PARMS ³ ³ ³MCI_WAIT ³ ³ ³ ³MCI_SET_CUEPOINT_ON ³ ³ ³ ³MCI_SET_CUEPOINT_OFF ³ ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_SETPOSITIONADVISE ³MCI_NOTIFY ³MCI_POSITION_PARMS ³ ³ ³MCI_WAIT ³ ³ ³ ³MCI_SET_POSITION_ADVISE_ON ³ ³ ³ ³MCI_SET_POSITION_ADVISE_OFF ³ ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_STATUS ³MCI_NOTIFY ³MCI_STATUS_PARMS ³ ³ ³MCI_WAIT ³ ³ ³ ³MCI_STATUS_START ³ ³ ³ ³MCI_TRACK ³ ³ ³ ³MCI_STATUS_ITEM ³ ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³MCI_STOP ³MCI_NOTIFY ³MCI_GENERIC_PARMS ³ ³ ³MCI_WAIT ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ