Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #ifndef __VCR_H__
      7 #define __VCR_H__
      8 
      9 #define MCI_VCR_OFFSET 1280
     10 
     11 #define MCI_LIST 0x0878
     12 #define MCI_SETAUDIO 0x0873
     13 #define MCI_SETVIDEO 0x0876
     14 #define MCI_SIGNAL 0x0875
     15 
     16 #define MCI_MARK (MCI_USER_MESSAGES + 0)
     17 #define MCI_INDEX (MCI_USER_MESSAGES + 1)
     18 #define MCI_SETTUNER (MCI_USER_MESSAGES + 2)
     19 #define MCI_SETVCR (MCI_USER_MESSAGES + 3)
     20 #define MCI_SETTIMECODE (MCI_USER_MESSAGES + 4)
     21 
     22 #define MCI_TEST __MSABI_LONG(0x00000020)
     23 
     24 #define MCI_VCR_GETDEVCAPS_CAN_DETECT_LENGTH __MSABI_LONG(0x00004001)
     25 #define MCI_VCR_GETDEVCAPS_SEEK_ACCURACY __MSABI_LONG(0x00004002)
     26 #define MCI_VCR_GETDEVCAPS_HAS_CLOCK __MSABI_LONG(0x00004003)
     27 #define MCI_VCR_GETDEVCAPS_CAN_REVERSE __MSABI_LONG(0x00004004)
     28 #define MCI_VCR_GETDEVCAPS_NUMBER_OF_MARKS __MSABI_LONG(0x00004005)
     29 #define MCI_VCR_GETDEVCAPS_CAN_TEST __MSABI_LONG(0x00004006)
     30 #define MCI_VCR_GETDEVCAPS_CAN_PREROLL __MSABI_LONG(0x00004007)
     31 #define MCI_VCR_GETDEVCAPS_CAN_PREVIEW __MSABI_LONG(0x00004008)
     32 #define MCI_VCR_GETDEVCAPS_CAN_MONITOR_SOURCES __MSABI_LONG(0x00004009)
     33 #define MCI_VCR_GETDEVCAPS_HAS_TIMECODE __MSABI_LONG(0x0000400A)
     34 #define MCI_VCR_GETDEVCAPS_CAN_FREEZE __MSABI_LONG(0x0000401B)
     35 #define MCI_VCR_GETDEVCAPS_CLOCK_INCREMENT_RATE __MSABI_LONG(0x0000401C)
     36 
     37 #define MCI_VCR_INFO_VERSION __MSABI_LONG(0x00010000)
     38 
     39 #define MCI_VCR_PLAY_REVERSE __MSABI_LONG(0x00010000)
     40 #define MCI_VCR_PLAY_AT __MSABI_LONG(0x00020000)
     41 #define MCI_VCR_PLAY_SCAN __MSABI_LONG(0x00040000)
     42 
     43 #define MCI_VCR_RECORD_INITIALIZE __MSABI_LONG(0x00010000)
     44 #define MCI_VCR_RECORD_AT __MSABI_LONG(0x00020000)
     45 #define MCI_VCR_RECORD_PREVIEW __MSABI_LONG(0x00040000)
     46 
     47 #define MCI_VCR_CUE_INPUT __MSABI_LONG(0x00010000)
     48 #define MCI_VCR_CUE_OUTPUT __MSABI_LONG(0x00020000)
     49 #define MCI_VCR_CUE_PREROLL __MSABI_LONG(0x00040000)
     50 #define MCI_VCR_CUE_REVERSE __MSABI_LONG(0x00080000)
     51 
     52 #define MCI_VCR_SEEK_REVERSE __MSABI_LONG(0x00010000)
     53 #define MCI_VCR_SEEK_MARK __MSABI_LONG(0x00020000)
     54 #define MCI_VCR_SEEK_AT __MSABI_LONG(0x00040000)
     55 
     56 #define MCI_VCR_SETTUNER_CHANNEL __MSABI_LONG(0x00010000)
     57 #define MCI_VCR_SETTUNER_CHANNEL_UP __MSABI_LONG(0x00020000)
     58 #define MCI_VCR_SETTUNER_CHANNEL_DOWN __MSABI_LONG(0x00040000)
     59 #define MCI_VCR_SETTUNER_CHANNEL_SEEK_UP __MSABI_LONG(0x00080000)
     60 #define MCI_VCR_SETTUNER_CHANNEL_SEEK_DOWN __MSABI_LONG(0x00100000)
     61 #define MCI_VCR_SETTUNER_NUMBER __MSABI_LONG(0x00200000)
     62 
     63 #define MCI_VCR_SET_TIME_MODE __MSABI_LONG(0x00010000)
     64 #define MCI_VCR_SET_POWER __MSABI_LONG(0x00020000)
     65 #define MCI_VCR_SET_RECORD_FORMAT __MSABI_LONG(0x00040000)
     66 #define MCI_VCR_SET_COUNTER_FORMAT __MSABI_LONG(0x00080000)
     67 #define MCI_VCR_SET_INDEX __MSABI_LONG(0x00100000)
     68 #define MCI_VCR_SET_ASSEMBLE_RECORD __MSABI_LONG(0x00200000)
     69 #define MCI_VCR_SET_TRACKING __MSABI_LONG(0x00400000)
     70 #define MCI_VCR_SET_SPEED __MSABI_LONG(0x00800000)
     71 #define MCI_VCR_SET_TAPE_LENGTH __MSABI_LONG(0x01000000)
     72 #define MCI_VCR_SET_COUNTER_VALUE __MSABI_LONG(0x02000000)
     73 #define MCI_VCR_SET_CLOCK __MSABI_LONG(0x04000000)
     74 #define MCI_VCR_SET_PAUSE_TIMEOUT __MSABI_LONG(0x08000000)
     75 #define MCI_VCR_SET_PREROLL_DURATION __MSABI_LONG(0x10000000)
     76 #define MCI_VCR_SET_POSTROLL_DURATION __MSABI_LONG(0x20000000)
     77 
     78 #define MCI_VCR_SETTIMECODE_RECORD __MSABI_LONG(0x00010000)
     79 
     80 #define MCI_VCR_STATUS_FRAME_RATE __MSABI_LONG(0x00004001)
     81 #define MCI_VCR_STATUS_SPEED __MSABI_LONG(0x00004002)
     82 #define MCI_VCR_STATUS_MEDIA_TYPE __MSABI_LONG(0x00004003)
     83 #define MCI_VCR_STATUS_RECORD_FORMAT __MSABI_LONG(0x00004004)
     84 #define MCI_VCR_STATUS_PLAY_FORMAT __MSABI_LONG(0x00004005)
     85 #define MCI_VCR_STATUS_AUDIO_SOURCE __MSABI_LONG(0x00004006)
     86 #define MCI_VCR_STATUS_AUDIO_SOURCE_NUMBER __MSABI_LONG(0x00004007)
     87 #define MCI_VCR_STATUS_VIDEO_SOURCE __MSABI_LONG(0x00004008)
     88 #define MCI_VCR_STATUS_VIDEO_SOURCE_NUMBER __MSABI_LONG(0x00004009)
     89 #define MCI_VCR_STATUS_AUDIO_MONITOR __MSABI_LONG(0x0000400A)
     90 #define MCI_VCR_STATUS_AUDIO_MONITOR_NUMBER __MSABI_LONG(0x0000400B)
     91 #define MCI_VCR_STATUS_VIDEO_MONITOR __MSABI_LONG(0x0000400C)
     92 #define MCI_VCR_STATUS_VIDEO_MONITOR_NUMBER __MSABI_LONG(0x0000400D)
     93 #define MCI_VCR_STATUS_INDEX_ON __MSABI_LONG(0x0000400E)
     94 #define MCI_VCR_STATUS_INDEX __MSABI_LONG(0x0000400F)
     95 #define MCI_VCR_STATUS_COUNTER_FORMAT __MSABI_LONG(0x00004010)
     96 #define MCI_VCR_STATUS_COUNTER_RESOLUTION __MSABI_LONG(0x00004011)
     97 #define MCI_VCR_STATUS_TIMECODE_TYPE __MSABI_LONG(0x00004012)
     98 #define MCI_VCR_STATUS_COUNTER_VALUE __MSABI_LONG(0x00004013)
     99 #define MCI_VCR_STATUS_TUNER_CHANNEL __MSABI_LONG(0x00004014)
    100 #define MCI_VCR_STATUS_WRITE_PROTECTED __MSABI_LONG(0x00004015)
    101 #define MCI_VCR_STATUS_TIMECODE_RECORD __MSABI_LONG(0x00004016)
    102 #define MCI_VCR_STATUS_VIDEO_RECORD __MSABI_LONG(0x00004017)
    103 #define MCI_VCR_STATUS_AUDIO_RECORD __MSABI_LONG(0x00004018)
    104 #define MCI_VCR_STATUS_TIME_TYPE __MSABI_LONG(0x00004019)
    105 #define MCI_VCR_STATUS_TIME_MODE __MSABI_LONG(0x0000401A)
    106 #define MCI_VCR_STATUS_POWER_ON __MSABI_LONG(0x0000401B)
    107 #define MCI_VCR_STATUS_CLOCK __MSABI_LONG(0x0000401C)
    108 #define MCI_VCR_STATUS_ASSEMBLE_RECORD __MSABI_LONG(0x0000401D)
    109 #define MCI_VCR_STATUS_TIMECODE_PRESENT __MSABI_LONG(0x0000401E)
    110 #define MCI_VCR_STATUS_NUMBER_OF_VIDEO_TRACKS __MSABI_LONG(0x0000401F)
    111 #define MCI_VCR_STATUS_NUMBER_OF_AUDIO_TRACKS __MSABI_LONG(0x00004020)
    112 #define MCI_VCR_STATUS_CLOCK_ID __MSABI_LONG(0x00004021)
    113 #define MCI_VCR_STATUS_PAUSE_TIMEOUT __MSABI_LONG(0x00004022)
    114 #define MCI_VCR_STATUS_PREROLL_DURATION __MSABI_LONG(0x00004023)
    115 #define MCI_VCR_STATUS_POSTROLL_DURATION __MSABI_LONG(0x00004024)
    116 #define MCI_VCR_STATUS_VIDEO __MSABI_LONG(0x00004025)
    117 #define MCI_VCR_STATUS_AUDIO __MSABI_LONG(0x00004026)
    118 
    119 #define MCI_VCR_STATUS_NUMBER __MSABI_LONG(0x00080000)
    120 
    121 #define MCI_VCR_ESCAPE_STRING __MSABI_LONG(0x00000100)
    122 
    123 #define MCI_VCR_LIST_VIDEO_SOURCE __MSABI_LONG(0x00010000)
    124 #define MCI_VCR_LIST_AUDIO_SOURCE __MSABI_LONG(0x00020000)
    125 #define MCI_VCR_LIST_COUNT __MSABI_LONG(0x00040000)
    126 #define MCI_VCR_LIST_NUMBER __MSABI_LONG(0x00080000)
    127 
    128 #define MCI_VCR_MARK_WRITE __MSABI_LONG(0x00010000)
    129 #define MCI_VCR_MARK_ERASE __MSABI_LONG(0x00020000)
    130 
    131 #define MCI_VCR_SETAUDIO_RECORD __MSABI_LONG(0x00010000)
    132 #define MCI_VCR_SETAUDIO_SOURCE __MSABI_LONG(0x00020000)
    133 #define MCI_VCR_SETAUDIO_MONITOR __MSABI_LONG(0x00040000)
    134 #define MCI_VCR_SETAUDIO_TO __MSABI_LONG(0x00200000)
    135 #define MCI_VCR_SETAUDIO_NUMBER __MSABI_LONG(0x00400000)
    136 
    137 #define MCI_VCR_SETVIDEO_RECORD __MSABI_LONG(0x00010000)
    138 #define MCI_VCR_SETVIDEO_SOURCE __MSABI_LONG(0x00020000)
    139 #define MCI_VCR_SETVIDEO_MONITOR __MSABI_LONG(0x00040000)
    140 #define MCI_VCR_SETVIDEO_TO __MSABI_LONG(0x00100000)
    141 #define MCI_VCR_SETVIDEO_NUMBER __MSABI_LONG(0x00200000)
    142 
    143 #define SEND_VCRSIGNAL(dwFlags,dwCallback,hDriver,wDeviceID,dwUser,dwPos) DriverCallback((dwCallback),DCB_WINDOW,(HANDLE)(wDeviceID),MM_MCISIGNAL,hDriver,((dwFlags) & MCI_VCR_SIGNAL_POSITION) ? (dwPos):(dwUser),((dwFlags) & MCI_VCR_SIGNAL_POSITION) ? (dwUser):(dwPos))
    144 
    145 #define MM_MCISIGNAL 0x3CB
    146 
    147 #define MCI_VCR_SIGNAL_AT __MSABI_LONG(0x00010000)
    148 #define MCI_VCR_SIGNAL_EVERY __MSABI_LONG(0x00020000)
    149 #define MCI_VCR_SIGNAL_USERVAL __MSABI_LONG(0x00040000)
    150 #define MCI_VCR_SIGNAL_CANCEL __MSABI_LONG(0x00080000)
    151 #define MCI_VCR_SIGNAL_POSITION __MSABI_LONG(0x00100000)
    152 
    153 #define MCI_VCR_STEP_FRAMES __MSABI_LONG(0x00010000)
    154 #define MCI_VCR_STEP_REVERSE __MSABI_LONG(0x00020000)
    155 
    156 #define MCI_VCR_FREEZE_INPUT __MSABI_LONG(0x00010000)
    157 #define MCI_VCR_FREEZE_OUTPUT __MSABI_LONG(0x00020000)
    158 #define MCI_VCR_FREEZE_FIELD __MSABI_LONG(0x00040000)
    159 #define MCI_VCR_FREEZE_FRAME __MSABI_LONG(0x00080000)
    160 
    161 #define MCI_VCR_UNFREEZE_INPUT __MSABI_LONG(0x00010000)
    162 #define MCI_VCR_UNFREEZE_OUTPUT __MSABI_LONG(0x00020000)
    163 
    164 #define MCI_VCR_MEDIA_8MM (MCI_VCR_OFFSET + 1)
    165 #define MCI_VCR_MEDIA_HI8 (MCI_VCR_OFFSET + 2)
    166 #define MCI_VCR_MEDIA_VHS (MCI_VCR_OFFSET + 3)
    167 #define MCI_VCR_MEDIA_SVHS (MCI_VCR_OFFSET + 4)
    168 #define MCI_VCR_MEDIA_BETA (MCI_VCR_OFFSET + 5)
    169 #define MCI_VCR_MEDIA_EDBETA (MCI_VCR_OFFSET + 6)
    170 #define MCI_VCR_MEDIA_OTHER (MCI_VCR_OFFSET + 7)
    171 
    172 #define MCI_VCR_FORMAT_SP (MCI_VCR_OFFSET + 8)
    173 #define MCI_VCR_FORMAT_LP (MCI_VCR_OFFSET + 9)
    174 #define MCI_VCR_FORMAT_EP (MCI_VCR_OFFSET + 10)
    175 #define MCI_VCR_FORMAT_OTHER (MCI_VCR_OFFSET + 11)
    176 
    177 #define MCI_VCR_TIME_TIMECODE (MCI_VCR_OFFSET + 12)
    178 #define MCI_VCR_TIME_COUNTER (MCI_VCR_OFFSET + 13)
    179 #define MCI_VCR_TIME_DETECT (MCI_VCR_OFFSET + 14)
    180 
    181 #define MCI_VCR_SRC_TYPE_TUNER (MCI_VCR_OFFSET + 15)
    182 #define MCI_VCR_SRC_TYPE_LINE (MCI_VCR_OFFSET + 16)
    183 #define MCI_VCR_SRC_TYPE_SVIDEO (MCI_VCR_OFFSET + 17)
    184 #define MCI_VCR_SRC_TYPE_RGB (MCI_VCR_OFFSET + 18)
    185 #define MCI_VCR_SRC_TYPE_AUX (MCI_VCR_OFFSET + 19)
    186 #define MCI_VCR_SRC_TYPE_GENERIC (MCI_VCR_OFFSET + 20)
    187 #define MCI_VCR_SRC_TYPE_MUTE (MCI_VCR_OFFSET + 21)
    188 #define MCI_VCR_SRC_TYPE_OUTPUT (MCI_VCR_OFFSET + 22)
    189 
    190 #define MCI_VCR_INDEX_TIMECODE (MCI_VCR_OFFSET + 23)
    191 #define MCI_VCR_INDEX_COUNTER (MCI_VCR_OFFSET + 24)
    192 #define MCI_VCR_INDEX_DATE (MCI_VCR_OFFSET + 25)
    193 #define MCI_VCR_INDEX_TIME (MCI_VCR_OFFSET + 26)
    194 
    195 #define MCI_VCR_COUNTER_RES_SECONDS (MCI_VCR_OFFSET + 27)
    196 #define MCI_VCR_COUNTER_RES_FRAMES (MCI_VCR_OFFSET + 28)
    197 
    198 #define MCI_VCR_TIMECODE_TYPE_SMPTE (MCI_VCR_OFFSET + 29)
    199 #define MCI_VCR_TIMECODE_TYPE_SMPTE_DROP (MCI_VCR_OFFSET + 30)
    200 #define MCI_VCR_TIMECODE_TYPE_OTHER (MCI_VCR_OFFSET + 31)
    201 #define MCI_VCR_TIMECODE_TYPE_NONE (MCI_VCR_OFFSET + 32)
    202 
    203 #define MCI_VCR_PLUS (MCI_VCR_OFFSET + 33)
    204 #define MCI_VCR_MINUS (MCI_VCR_OFFSET + 34)
    205 #define MCI_VCR_RESET (MCI_VCR_OFFSET + 35)
    206 
    207 #ifndef RC_INVOKED
    208 
    209 typedef struct tagMCI_VCR_SEEK_PARMS {
    210   DWORD dwCallback;
    211   DWORD dwTo;
    212   DWORD dwMark;
    213   DWORD dwAt;
    214 } MCI_VCR_SEEK_PARMS;
    215 typedef MCI_VCR_SEEK_PARMS *LPMCI_VCR_SEEK_PARMS;
    216 
    217 typedef struct tagMCI_VCR_SET_PARMS {
    218   DWORD dwCallback;
    219   DWORD dwTimeFormat;
    220   DWORD dwAudio;
    221   DWORD dwTimeMode;
    222   DWORD dwRecordFormat;
    223   DWORD dwCounterFormat;
    224   DWORD dwIndex;
    225   DWORD dwTracking;
    226   DWORD dwSpeed;
    227   DWORD dwLength;
    228   DWORD dwCounter;
    229   DWORD dwClock;
    230   DWORD dwPauseTimeout;
    231   DWORD dwPrerollDuration;
    232   DWORD dwPostrollDuration;
    233 } MCI_VCR_SET_PARMS;
    234 typedef MCI_VCR_SET_PARMS *LPMCI_VCR_SET_PARMS;
    235 
    236 typedef struct tagMCI_VCR_SETTUNER_PARMS {
    237   DWORD dwCallback;
    238   DWORD dwChannel;
    239   DWORD dwNumber;
    240 } MCI_VCR_SETTUNER_PARMS;
    241 typedef MCI_VCR_SETTUNER_PARMS *LPMCI_VCR_SETTUNER_PARMS;
    242 
    243 typedef struct tagMCI_VCR_ESCAPE_PARMS {
    244   DWORD dwCallback;
    245   LPCSTR lpstrCommand;
    246 } MCI_VCR_ESCAPE_PARMS;
    247 typedef MCI_VCR_ESCAPE_PARMS *LPMCI_VCR_ESCAPE_PARMS;
    248 
    249 typedef struct tagMCI_VCR_LIST_PARMS {
    250   DWORD dwCallback;
    251   DWORD dwReturn;
    252   DWORD dwNumber;
    253 } MCI_VCR_LIST_PARMS;
    254 typedef MCI_VCR_LIST_PARMS *LPMCI_VCR_LIST_PARMS;
    255 
    256 typedef struct tagMCI_VCR_RECORD_PARMS {
    257   DWORD dwCallback;
    258   DWORD dwFrom;
    259   DWORD dwTo;
    260   DWORD dwAt;
    261 } MCI_VCR_RECORD_PARMS;
    262 typedef MCI_VCR_RECORD_PARMS *LPMCI_VCR_RECORD_PARMS;
    263 
    264 typedef struct tagMCI_VCR_PLAY_PARMS {
    265   DWORD dwCallback;
    266   DWORD dwFrom;
    267   DWORD dwTo;
    268   DWORD dwAt;
    269 } MCI_VCR_PLAY_PARMS;
    270 typedef MCI_VCR_PLAY_PARMS *LPMCI_VCR_PLAY_PARMS;
    271 
    272 typedef struct tagMCI_VCR_SETAUDIO_PARMS {
    273   DWORD dwCallback;
    274   DWORD dwTrack;
    275   DWORD dwTo;
    276   DWORD dwNumber;
    277 } MCI_VCR_SETAUDIO_PARMS;
    278 typedef MCI_VCR_SETAUDIO_PARMS *LPMCI_VCR_SETAUDIO_PARMS;
    279 
    280 typedef struct tagMCI_VCR_SIGNAL_PARMS {
    281   DWORD dwCallback;
    282   DWORD dwPosition;
    283   DWORD dwPeriod;
    284   DWORD dwUserParm;
    285 } MCI_VCR_SIGNAL_PARMS;
    286 typedef MCI_VCR_SIGNAL_PARMS *LPMCI_VCR_SIGNAL_PARMS;
    287 
    288 typedef struct tagMCI_VCR_STATUS_PARMS {
    289   DWORD dwCallback;
    290   DWORD dwReturn;
    291   DWORD dwItem;
    292   DWORD dwTrack;
    293   DWORD dwNumber;
    294 } MCI_VCR_STATUS_PARMS;
    295 typedef MCI_VCR_STATUS_PARMS *LPMCI_VCR_STATUS_PARMS;
    296 
    297 typedef struct tagMCI_VCR_SETVIDEO_PARMS {
    298   DWORD dwCallback;
    299   DWORD dwTrack;
    300   DWORD dwTo;
    301   DWORD dwNumber;
    302 } MCI_VCR_SETVIDEO_PARMS;
    303 typedef MCI_VCR_SETVIDEO_PARMS *LPMCI_VCR_SETVIDEO_PARMS;
    304 
    305 typedef struct tagMCI_VCR_STEP_PARMS {
    306   DWORD dwCallback;
    307   DWORD dwFrames;
    308 } MCI_VCR_STEP_PARMS;
    309 typedef MCI_VCR_STEP_PARMS *LPMCI_VCR_STEP_PARMS;
    310 
    311 typedef struct tagMCI_VCR_CUE_PARMS {
    312   DWORD dwCallback;
    313   DWORD dwFrom;
    314   DWORD dwTo;
    315 } MCI_VCR_CUE_PARMS;
    316 typedef MCI_VCR_CUE_PARMS *LPMCI_VCR_CUE_PARMS;
    317 #endif
    318 
    319 #define MCIERR_VCR_CANNOT_OPEN_COMM (MCIERR_CUSTOM_DRIVER_BASE + 1)
    320 #define MCIERR_VCR_CANNOT_WRITE_COMM (MCIERR_CUSTOM_DRIVER_BASE + 2)
    321 #define MCIERR_VCR_READ_TIMEOUT (MCIERR_CUSTOM_DRIVER_BASE + 3)
    322 #define MCIERR_VCR_COMMAND_BUFFER_FULL (MCIERR_CUSTOM_DRIVER_BASE + 4)
    323 #define MCIERR_VCR_COMMAND_CANCELLED (MCIERR_CUSTOM_DRIVER_BASE + 5)
    324 #define MCIERR_VCR_POWER_OFF (MCIERR_CUSTOM_DRIVER_BASE + 6)
    325 #define MCIERR_VCR_COMMAND_FAILED (MCIERR_CUSTOM_DRIVER_BASE + 7)
    326 #define MCIERR_VCR_SEARCH (MCIERR_CUSTOM_DRIVER_BASE + 8)
    327 #define MCIERR_VCR_CONDITION (MCIERR_CUSTOM_DRIVER_BASE + 9)
    328 #define MCIERR_VCR_CAMERA_MODE (MCIERR_CUSTOM_DRIVER_BASE + 10)
    329 #define MCIERR_VCR_VCR_MODE (MCIERR_CUSTOM_DRIVER_BASE + 11)
    330 #define MCIERR_VCR_COUNTER_TYPE (MCIERR_CUSTOM_DRIVER_BASE + 12)
    331 #define MCIERR_VCR_TUNER (MCIERR_CUSTOM_DRIVER_BASE + 13)
    332 #define MCIERR_VCR_EMERGENCY_STOP (MCIERR_CUSTOM_DRIVER_BASE + 14)
    333 #define MCIERR_VCR_MEDIA_UNMOUNTED (MCIERR_CUSTOM_DRIVER_BASE + 15)
    334 #define MCIERR_VCR_REGISTER (MCIERR_CUSTOM_DRIVER_BASE + 16)
    335 #define MCIERR_VCR_TRACK_FAILURE (MCIERR_CUSTOM_DRIVER_BASE + 17)
    336 #define MCIERR_VCR_CUE_FAILED_FLAGS (MCIERR_CUSTOM_DRIVER_BASE + 18)
    337 #define MCIERR_VCR_ISWRITEPROTECTED (MCIERR_CUSTOM_DRIVER_BASE + 19)
    338 #endif
    339