;========================================================================== ; MODULE: WaveTest.txt ; AUTHOR: JohnMil ; DATE: 9-10-92 ; ; This is the data file for duplicating the Win 3.1 MCI Test coverage for ; the entire MCIWave test. This data file was gleaned by running the 3.1 test, ; then stripping out all the commands in the order they occurred, then filling ; in expected return values. ; ; There are still some problems with this script. In particular, the path to ; Wave files and the position reported for a file which is playing will ; probably both vary. Errors should be hand-checked. ; ; Rules for construction of this data file can be found in MCI\MCIGen\TestLoop. ; ;========================================================================== ; ; ; ;============================= TestCase TC_CAPS_DEV_WAVE ;============================= ; close all * open %element% 0 1 close all 0 capability %driver% inputs 0 =%CapInputs% capability %driver% outputs 0 =%CapOutputs% open %driver% alias %alias% 0 1 capability %alias% inputs 0 %CapInputs% capability %alias% outputs 0 %CapOutputs% play %alias% MCIERR_UNSUPPORTED_FUNCTION capability %alias% inputs 0 %CapInputs% capability %alias% outputs 0 %CapOutputs% close all 0 ; ;============================= TestCase TC_CAPS_ELEM_WAVE ;============================= ; close all * capability %element% inputs 0 =%CapInputs% capability %element% outputs 0 =%CapOutputs% open %element% alias %alias% 0 * capability %alias% inputs 0 %CapInputs% capability %alias% outputs 0 %CapOutputs% play %alias% 0 capability %alias% inputs 0 %CapInputs% capability %alias% outputs 0 %CapOutputs% close all 0 ; ;============================= TestCase TC_INFO_WAVE_TSTS ;============================= ; close all * info %driver% file MCIERR_UNSUPPORTED_FUNCTION info %driver% input MCIERR_UNSUPPORTED_FUNCTION info %driver% output MCIERR_UNSUPPORTED_FUNCTION open %element% alias %alias% 0 1 info %driver% file MCIERR_UNSUPPORTED_FUNCTION info %driver% input MCIERR_UNSUPPORTED_FUNCTION info %driver% output MCIERR_UNSUPPORTED_FUNCTION play %alias% 0 info %driver% file MCIERR_UNSUPPORTED_FUNCTION info %driver% input MCIERR_UNSUPPORTED_FUNCTION info %driver% output MCIERR_UNSUPPORTED_FUNCTION stop %alias% 0 record %alias% from 1 to 1000 0 info %driver% file MCIERR_UNSUPPORTED_FUNCTION info %alias% input 0 =%AliasInput% info %driver% input MCIERR_UNSUPPORTED_FUNCTION info %alias% output 0 =%AliasOutput% info %driver% output MCIERR_UNSUPPORTED_FUNCTION close all 0 close all 0 ; ;============================= TestCase TC_WAVE_PAUSE_RESUME ;============================= ; close all * resume %element% MCIERR_NONAPPLICABLE_FUNCTION pause %element% MCIERR_NONAPPLICABLE_FUNCTION open %element% 0 1 pause %element% MCIERR_NONAPPLICABLE_FUNCTION play %element% 0 pause %element% 0 resume %element% 0 stop %element% 0 play %element% 0 seek %element% to start 0 pause %element% MCIERR_NONAPPLICABLE_FUNCTION seek %element% to 370 0 pause %element% MCIERR_NONAPPLICABLE_FUNCTION play %element% 0 resume %element% 0 pause %element% 0 record %element% from 1 to 1000 0 pause %element% 0 pause %element% 0 resume %element% 0 close %element% 0 close all 0 ; ;============================= TestCase TC_FT_WAVE_TIME_PLAYS ;============================= ; close all * open %element% 0 1 status %element% time format 0 milliseconds play %element% to 42 wait 0 set %element% time format samples 0 status %element% position 0 463 status %element% position 0 463 play %element% from 455 to 221 MCIERR_OUTOFRANGE status %element% position 0 463 status %element% position 0 463 play %element% to 360 MCIERR_OUTOFRANGE set %element% time format bytes 0 status %element% position 0 463 status %element% position 0 463 play %element% from 75 to 331 0 status %element% position 0 * status %element% position 0 * play %element% to 259 * close all 0 ; ;============================= TestCase TC_WAVE_AUTO_PLAY ;============================= ; close all * play %element% 0 stop %element% 0 sysinfo all quantity open 0 * sysinfo %element% quantity open MCIERR_DEVICE_TYPE_REQUIRED status %element% length 0 =%ElemBytes% play %element% from 401 0 seek %element% to 213 0 sysinfo all quantity open 0 * play %element% 0 close %element% * play %element% from 245 to 261 wait 0 open %element% alias %alias% 0 1 play %alias% 0 stop %alias% 0 seek %alias% to start 0 play %alias% 0 pause %alias% 0 resume %alias% 0 pause %alias% 0 play %alias% 0 status %alias% mode 0 playing play %alias% 0 seek %alias% to start 0 play %alias% 0 record %alias% from 1000 to 2000 0 play %alias% 0 close %alias% 0 play %element% 0 close %alias% MCIERR_INVALID_DEVICE_NAME !Can't open as own name because this conflicts with auto-open. open %element% MCIERR_DEVICE_OPEN seek %element% to end 0 play %element% 0 play %element% 0 close %alias% MCIERR_INVALID_DEVICE_NAME pause %element% * play %element% 0 close %element% * sysinfo %element% quantity open MCIERR_DEVICE_TYPE_REQUIRED sysinfo %element% quantity open MCIERR_DEVICE_TYPE_REQUIRED sysinfo all quantity open 0 * seek %element% to start 0 status %element% position 0 0 info %element% product 0 =%ElemProductName% info %element% product 0 %ElemProductName% record %element% from 1000 to 2000 0 stop %element% 0 sysinfo %element% quantity open MCIERR_DEVICE_TYPE_REQUIRED stop %element% 0 pause %element% MCIERR_NONAPPLICABLE_FUNCTION stop %element% 0 info %element% product 0 %ElemProductName% info %element% product 0 %ElemProductName% status %element% position 0 0 status %element% position 0 0 sysinfo all quantity open 0 * seek %element% to start 0 status %element% position 0 0 status %element% position 0 0 seek %element% to start 0 stop %element% 0 close all * ; ;================================ TestCase TC_RAND_WAVE_POS_TST ;================================ ; close all * status %element% position 0 0 sysinfo %element% quantity open MCIERR_DEVICE_TYPE_REQUIRED sysinfo all quantity open 0 * sysinfo %element% quantity open MCIERR_DEVICE_TYPE_REQUIRED pause %element% MCIERR_NONAPPLICABLE_FUNCTION set %element% time format milliseconds 0 seek %element% to start 0 status %element% position 0 0 info %element% product 0 =%ElemProductName% set %element% time format milliseconds 0 stop %element% 0 pause %element% MCIERR_NONAPPLICABLE_FUNCTION seek %element% to start 0 pause %element% MCIERR_NONAPPLICABLE_FUNCTION set %element% time format milliseconds 0 sysinfo %element% quantity open MCIERR_DEVICE_TYPE_REQUIRED sysinfo %element% quantity open MCIERR_DEVICE_TYPE_REQUIRED open %element% alias %alias% 0 1 set %element% time format samples 0 status %alias% length 0 =%ElemBytes% play %alias% from 343 0 seek %alias% to 397 0 play %alias% from 16 to 366 0 set %element% time format bytes 0 status %alias% length 0 %ElemBytes% play %alias% from 472 0 seek %alias% to 213 0 play %alias% from 494 to 120 MCIERR_OUTOFRANGE close %alias% 0 ; ;================================ TestCase TC_WAVE_REC_STATES ;================================ ; close all * open new type %driver% alias %alias% 0 1 status %alias% length 0 0 record %alias% from 500 to 1500 MCIERR_OUTOFRANGE status %alias% mode 0 stopped pause %alias% MCIERR_NONAPPLICABLE_FUNCTION record %alias% from 328 to 2300 MCIERR_OUTOFRANGE status %alias% length 0 0 stop %alias% 0 status %alias% position 0 0 status %alias% length 0 0 record %alias% to 1000 0 seek %alias% to start 0 play %alias% 0 seek %alias% to start 0 record %alias% insert to 1000 0 record %alias% insert to 1000 0 delete %alias% 0 status %alias% mode 0 stopped seek %alias% to start 0 play %alias% 0 record %alias% overwrite to 1000 0 pause %alias% 0 resume %alias% 0 status %alias% mode 0 recording status %alias% length 0 * stop %alias% 0 save %alias% tstwav1.wav 0 close %alias% 0 open tstwav1.wav alias %alias% 0 1 cue %alias% output 0 status %alias% mode 0 paused record %alias% overwrite to 2000 0 status %alias% mode 0 recording cue %alias% input MCIERR_NONAPPLICABLE_FUNCTION status %alias% mode 0 recording close all 0 open new type %driver% alias %alias% 0 1 status %alias% length 0 0 status %alias% length 0 0 delete %alias% from 0 0 status %alias% length 0 0 status %alias% mode 0 stopped record %alias% overwrite from 50 to 1500 MCIERR_OUTOFRANGE status %alias% length 0 0 delete %alias% from 0 0 status %alias% length 0 0 record %alias% insert from 500 to 2000 MCIERR_OUTOFRANGE status %alias% length 0 0 delete %alias% from 0 0 status %alias% length 0 0 play %alias% from 0 0 status %alias% length 0 0 delete %alias% from 0 0 status %alias% length 0 0 status %alias% mode 0 stopped record %alias% overwrite from 1000 to 2000 MCIERR_OUTOFRANGE status %alias% length 0 0 delete %alias% from 0 0 status %alias% length 0 0 record %alias% insert to 2000 0 status %alias% length 0 0 delete %alias% from 0 0 status %alias% length 0 0 play %alias% from 0 0 status %alias% length 0 0 delete %alias% from 0 0 status %alias% length 0 0 status %alias% mode 0 stopped record %alias% overwrite to 3000 0 status %alias% length 0 0 delete %alias% from 0 0 status %alias% length 0 0 record %alias% insert to 4000 0 status %alias% length 0 0 delete %alias% from 0 0 status %alias% length 0 0 play %alias% from 0 0 close all 0 ; ;================================ TestCase TC_WAVE_REC_DEL_TSTS ;================================ ; close all * open %element% 0 1 status %element% length 0 =%ElemLength% status %element% length 0 %ElemLength% delete %element% from 227 0 status %element% length 0 227 status %element% mode 0 stopped record %element% overwrite from 1000 to 2000 MCIERR_OUTOFRANGE status %element% length 0 227 delete %element% from 227 0 status %element% length 0 227 record %element% insert to 1000 0 status %element% length 0 227 delete %element% from 227 0 status %element% length 0 227 play %element% from 0 0 status %element% length 0 227 delete %element% from 227 0 status %element% length 0 227 status %element% mode 0 stopped record %element% overwrite to 1000 0 status %element% length 0 227 delete %element% from 227 0 status %element% length 0 227 record %element% insert to 3000 0 status %element% length 0 227 delete %element% from 227 0 status %element% length 0 227 play %element% from 0 0 status %element% length 0 227 delete %element% from 227 0 status %element% length 0 227 status %element% mode 0 stopped record %element% overwrite to 1200 0 status %element% length 0 227 delete %element% from 227 0 status %element% length 0 227 record %element% insert to 5000 0 status %element% length 0 227 delete %element% from 227 0 status %element% length 0 227 play %element% from 0 0 close all 0 close all 0 ; ;================================ TestCase TC_WAVE_SET_PARAM ;================================ ; close all * set %element% any input 0 set %element% any output 0 set %element% mapper MCIERR_UNRECOGNIZED_KEYWORD set %element% input 0 0 set %element% input 1 * set %element% input 2 * set %element% output 0 0 set %element% output 1 * set %element% output 2 * set %element% format tag 0 MCIERR_NONAPPLICABLE_FUNCTION set %element% format tag 1 MCIERR_NONAPPLICABLE_FUNCTION set %element% format tag pcm MCIERR_NONAPPLICABLE_FUNCTION set %element% channels 0 MCIERR_NONAPPLICABLE_FUNCTION set %element% channels 1 MCIERR_NONAPPLICABLE_FUNCTION set %element% channels 2 MCIERR_NONAPPLICABLE_FUNCTION set %element% samplespersec 11025 MCIERR_NONAPPLICABLE_FUNCTION set %element% bytespersec 11025 MCIERR_NONAPPLICABLE_FUNCTION set %element% samplespersec 22050 MCIERR_NONAPPLICABLE_FUNCTION set %element% bytespersec 22050 MCIERR_NONAPPLICABLE_FUNCTION set %element% samplespersec 44100 MCIERR_NONAPPLICABLE_FUNCTION set %element% bytespersec 44100 MCIERR_NONAPPLICABLE_FUNCTION set %element% bytespersec 11025 MCIERR_NONAPPLICABLE_FUNCTION set %element% bytespersec 22050 MCIERR_NONAPPLICABLE_FUNCTION set %element% bytespersec 44100 MCIERR_NONAPPLICABLE_FUNCTION set %element% alignment 0 MCIERR_NONAPPLICABLE_FUNCTION set %element% alignment 8 MCIERR_NONAPPLICABLE_FUNCTION set %element% bitspersample 0 MCIERR_NONAPPLICABLE_FUNCTION set %element% bitspersample 8 MCIERR_NONAPPLICABLE_FUNCTION set %element% bitspersample 16 MCIERR_NONAPPLICABLE_FUNCTION open new type %driver% alias %alias% 0 1 set %alias% any input 0 set %alias% any output 0 set %alias% mapper MCIERR_UNRECOGNIZED_KEYWORD set %alias% input 0 0 set %alias% input 1 * set %alias% input 2 * set %alias% output 0 0 set %alias% output 1 * set %alias% output 2 * set %alias% format tag 0 MCIERR_OUTOFRANGE set %alias% format tag 1 0 set %alias% format tag pcm 0 set %alias% channels 0 MCIERR_OUTOFRANGE set %alias% channels 1 0 ;JQ 24/may/95 assume most sound cards will support channel 2. ;change expected result from mcierr_outofrange to 0 set %alias% channels 2 ;MCIERR_OUTOFRANGE 0 set %alias% samplespersec 11025 0 set %alias% bytespersec 11025 0 ;JQ 24/may/95 - assume that most sound cards will support 22050 ;so change expected result from mcierr_outofrange to 0 set %alias% samplespersec 22050 ;MCIERR_OUTOFRANGE 0 ;JQ 24/may/95 - assume that most sound cards will support 22050 ;so change expected result from mcierr_outofrange to 0 set %alias% bytespersec 22050 ;MCIERR_OUTOFRANGE 0 ;JQ 24/may/95 - dont test for 44100 as not all sound cards support it ;set %alias% samplespersec 44100 ;MCIERR_OUTOFRANGE ; ;set %alias% bytespersec 44100 ;MCIERR_OUTOFRANGE ; set %alias% bytespersec 11025 0 ;JQ 24/may/95 - assume that most sound cards will support 22050 ;so change expected result from mcierr_outofrange to 0 set %alias% bytespersec 22050 ;MCIERR_OUTOFRANGE 0 ;JQ 24/may/95 - dont test for 44100 as not all sound cards support it ;set %alias% bytespersec 44100 ;MCIERR_OUTOFRANGE ; set %alias% alignment 0 MCIERR_OUTOFRANGE set %alias% alignment 8 0 set %alias% bitspersample 0 MCIERR_OUTOFRANGE set %alias% bitspersample 8 0 ;JQ 24/may/95 - dont test for 16 bitspersample as not all sound cards support it ;set %alias% bitspersample 16 ;MCIERR_OUTOFRANGE ; close all 0 ; ;================================ TestCase TC_WAVE_BAD_SET_PARAM ;================================ ; close all * open %element% 0 1 play %element% 0 set %element% any input 0 set %element% any output 0 set %element% mapper MCIERR_UNRECOGNIZED_KEYWORD set %element% input 0 0 set %element% input 1 * set %element% input 2 * set %element% output 0 0 set %element% output 1 * set %element% output 2 * set %element% format tag 0 MCIERR_NONAPPLICABLE_FUNCTION set %element% format tag 1 MCIERR_NONAPPLICABLE_FUNCTION set %element% format tag pcm MCIERR_NONAPPLICABLE_FUNCTION set %element% channels 0 MCIERR_NONAPPLICABLE_FUNCTION set %element% channels 1 MCIERR_NONAPPLICABLE_FUNCTION set %element% channels 2 MCIERR_NONAPPLICABLE_FUNCTION set %element% samplespersec 11025 MCIERR_NONAPPLICABLE_FUNCTION set %element% bytespersec 11025 MCIERR_NONAPPLICABLE_FUNCTION set %element% samplespersec 22050 MCIERR_NONAPPLICABLE_FUNCTION set %element% bytespersec 22050 MCIERR_NONAPPLICABLE_FUNCTION set %element% samplespersec 44100 MCIERR_NONAPPLICABLE_FUNCTION set %element% bytespersec 44100 MCIERR_NONAPPLICABLE_FUNCTION set %element% bytespersec 11025 MCIERR_NONAPPLICABLE_FUNCTION set %element% bytespersec 22050 MCIERR_NONAPPLICABLE_FUNCTION set %element% bytespersec 44100 MCIERR_NONAPPLICABLE_FUNCTION set %element% alignment 0 MCIERR_NONAPPLICABLE_FUNCTION set %element% alignment 8 MCIERR_NONAPPLICABLE_FUNCTION set %element% bitspersample 0 MCIERR_NONAPPLICABLE_FUNCTION set %element% bitspersample 8 MCIERR_NONAPPLICABLE_FUNCTION set %element% bitspersample 16 MCIERR_NONAPPLICABLE_FUNCTION close all 0 open %driver% 0 1 set %driver% any input MCIERR_UNSUPPORTED_FUNCTION set %driver% any output MCIERR_UNSUPPORTED_FUNCTION set %driver% mapper MCIERR_UNRECOGNIZED_KEYWORD set %driver% input 0 MCIERR_UNSUPPORTED_FUNCTION set %driver% input 1 MCIERR_UNSUPPORTED_FUNCTION set %driver% input 2 MCIERR_UNSUPPORTED_FUNCTION set %driver% output 0 MCIERR_UNSUPPORTED_FUNCTION set %driver% output 1 MCIERR_UNSUPPORTED_FUNCTION set %driver% output 2 MCIERR_UNSUPPORTED_FUNCTION set %driver% format tag 0 MCIERR_UNSUPPORTED_FUNCTION set %driver% format tag 1 MCIERR_UNSUPPORTED_FUNCTION set %driver% format tag pcm MCIERR_UNSUPPORTED_FUNCTION set %driver% channels 0 MCIERR_UNSUPPORTED_FUNCTION set %driver% channels 1 MCIERR_UNSUPPORTED_FUNCTION set %driver% channels 2 MCIERR_UNSUPPORTED_FUNCTION set %driver% samplespersec 11025 MCIERR_UNSUPPORTED_FUNCTION set %driver% bytespersec 11025 MCIERR_UNSUPPORTED_FUNCTION set %driver% samplespersec 22050 MCIERR_UNSUPPORTED_FUNCTION set %driver% bytespersec 22050 MCIERR_UNSUPPORTED_FUNCTION set %driver% samplespersec 44100 MCIERR_UNSUPPORTED_FUNCTION set %driver% bytespersec 44100 MCIERR_UNSUPPORTED_FUNCTION set %driver% bytespersec 11025 MCIERR_UNSUPPORTED_FUNCTION set %driver% bytespersec 22050 MCIERR_UNSUPPORTED_FUNCTION set %driver% bytespersec 44100 MCIERR_UNSUPPORTED_FUNCTION set %driver% alignment 0 MCIERR_UNSUPPORTED_FUNCTION set %driver% alignment 8 MCIERR_UNSUPPORTED_FUNCTION set %driver% bitspersample 0 MCIERR_UNSUPPORTED_FUNCTION set %driver% bitspersample 8 MCIERR_UNSUPPORTED_FUNCTION set %driver% bitspersample 16 MCIERR_UNSUPPORTED_FUNCTION close all 0 close all 0 set %element% door open MCIERR_UNSUPPORTED_FUNCTION set %element% door closed MCIERR_UNSUPPORTED_FUNCTION open %element% 0 1 play %element% 0 set %element% door open MCIERR_UNSUPPORTED_FUNCTION set %element% door closed MCIERR_UNSUPPORTED_FUNCTION close all 0 open %driver% 0 1 set %driver% door open MCIERR_UNSUPPORTED_FUNCTION set %driver% door closed MCIERR_UNSUPPORTED_FUNCTION close all 0 ; ;================================ TestCase TC_WAVE_STATUS_PARAM ;================================ ; close all * status %element% format tag 0 =%ElemTag% status %element% media present 0 true status %element% channels 0 =%ElemChan% status %element% samplespersec 0 =%ElemSPSec% status %element% bytespersec 0 =%ElemBPSec% status %element% bitspersample 0 =%ElemBPSamp% status %element% alignment 0 =%ElemAlign% status %element% level 0 =%ElemLev% open new type %driver% alias %alias% 0 * status %alias% format tag 0 pcm status %alias% media present 0 true status %alias% channels 0 * status %alias% samplespersec 0 * status %alias% bytespersec 0 * status %alias% bitspersample 0 * status %alias% alignment 0 * status %alias% level 0 * close all 0 open %element% 0 1 play %element% 0 status %element% format tag 0 %ElemTag% status %element% media present 0 true status %element% channels 0 %ElemChan% status %element% samplespersec 0 %ElemSPSec% status %element% bytespersec 0 %ElemBPSec% status %element% bitspersample 0 %ElemBPSamp% status %element% alignment 0 %ElemAlign% status %element% level * close all 0 open %driver% 0 1 status %driver% format tag MCIERR_UNSUPPORTED_FUNCTION status %driver% media present MCIERR_UNSUPPORTED_FUNCTION status %driver% channels MCIERR_UNSUPPORTED_FUNCTION status %driver% samplespersec MCIERR_UNSUPPORTED_FUNCTION status %driver% bytespersec MCIERR_UNSUPPORTED_FUNCTION status %driver% bitspersample MCIERR_UNSUPPORTED_FUNCTION status %driver% alignment MCIERR_UNSUPPORTED_FUNCTION status %driver% level MCIERR_UNSUPPORTED_FUNCTION close all 0 ; ;================================ TestCase TC_WAVE_BAD_STATUS_PARAM ;================================ ; close all * status %element% position track 0 MCIERR_OUTOFRANGE status %element% position track 2 MCIERR_OUTOFRANGE status %element% position track -1 MCIERR_OUTOFRANGE status %element% length track 0 MCIERR_OUTOFRANGE status %element% length track 2 MCIERR_OUTOFRANGE status %element% length track -1 MCIERR_OUTOFRANGE open %element% 0 1 play %element% 0 status %element% position track 0 MCIERR_OUTOFRANGE status %element% position track 2 MCIERR_OUTOFRANGE status %element% position track -1 MCIERR_OUTOFRANGE status %element% length track 0 MCIERR_OUTOFRANGE status %element% length track 2 MCIERR_OUTOFRANGE status %element% length track -1 MCIERR_OUTOFRANGE close all 0 open %driver% 0 1 status %driver% position track 0 MCIERR_UNSUPPORTED_FUNCTION status %driver% position track 2 MCIERR_UNSUPPORTED_FUNCTION status %driver% position track -1 MCIERR_UNSUPPORTED_FUNCTION status %driver% length track 0 MCIERR_UNSUPPORTED_FUNCTION status %driver% length track 2 MCIERR_UNSUPPORTED_FUNCTION status %driver% length track -1 MCIERR_UNSUPPORTED_FUNCTION close all 0 ; ;======================== TestCase TC_WAVE_STOP_TST ;======================== ; close all * stop %element% 0 open %element% alias %alias% 0 1 stop %alias% 0 status %alias% mode 0 stopped play %alias% 0 stop %alias% 0 status %alias% mode 0 stopped play %alias% 0 pause %alias% 0 stop %alias% 0 status %alias% mode 0 stopped seek %alias% to 474 0 stop %alias% 0 status %alias% mode 0 stopped stop %alias% 0 status %alias% mode 0 stopped play %alias% from 0 0 pause %alias% 0 resume %alias% 0 stop %alias% 0 status %alias% mode 0 stopped stop %alias% 0 close %alias% 0Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.