Instructions for using the Setup and Configuration Utilities for the CMD Ultra DMA IDE drivers for Windows 95 ************************************************************* SETUP.EXE --------- The setup.exe program is a utility that copies the drivers and utilities files from the distribution diskette onto the hard drive and then sets up Windows 95 Plug and Play for the CMD DMA IDE controllers. This program should be in the same directory as the Windows 95 driver files. This utility will remove existing registry entries related to the CMD Ultra DMA IDE controllers if Non-CMD drivers are configured to operate these controllers, but the utility will leave the registry entries intact if CMD drivers are used. A command line switch /o can be used to remove all existing registry entries related to the CMD Ultra DMA IDE controllers. These windows registry entries must be removed for Windows 95 to redetect and install the new drivers on the distribution diskette. ************************************************************* Iniset.exe ---------- The "Iniset" utility configures the Windows 95 registry to set up input parameters for the CMD PCI0646U driver. "Iniset" receives inputs from the file "iniset.ini", which resides on either the CMD PCI0646U setup diskette or the C:\QUICKCMD directory if the driver has already been installed. The input file "iniset.ini" contains two sections: the "Iniset" parameter section and the data section. The "Iniset" parameter section begins with the first line in "iniset.ini" that has "#" as its leftmost character, and ends with the first line that has "*" as its leftmost character, at which point the data section begins. The first line that begins with "#" (the first line of the "Iniset" parameter section) must have the number, in decimal, of PCI0646U controllers installed immediately after the "#" sign (without any spaces or other characters in between the "#" and the number). If no number is specified, it defaults to one controller. If 0 is specified, all other parameters will be ignored except if verbose mode is on, the program will warn about it. All parameters must begin with a "/" and no parameter may cross a line boundary. The format of the "Iniset" parameter section is as follows: ; Comments #[number of chips] [/v] [/r] [/o[chip number [p,s]]] ; Comments #[/dp"description of primary channel"] [/ds"description of secondary channel"] #[/c"the name of the class under which the device is registered"] #[/I"the string to be removed from the win.ini file after Iniset is done"] ; Comments *First line of data section (Note: except for the number of controllers, all options can be placed on any line in the "Iniset" parameter section, in any order.) Below are valid "Iniset" parameters: (Note: These are not parameters for the Windows 95 driver.) /v: Turns on the verbose mode. With the verbose mode turned on, "Iniset" will ask the user to confirm on the setting of each driver parameter line, and will ask the user to confirm on rebooting the system if any driver parameter is set. If the verbose mode is off (/v not specified), the program will make all of the changes specified by the "iniset.ini" file to the registry and reboot the system automatically if any driver parameter is set, without confirmation. However, the program will alert the user of any error that prevents normal execution of the program even if the verbose mode is off. /p: Disables the reboot confirmation prompt. By default (/p not specified), the reboot confirmation prompt will appear. /p will cause the computer to reboot automatically after running iniset. /r: Turns on the replicate mode. This switch is effective only if there are more than one PCI0646U controllers installed in the system. With the replicate mode off (/r not specified), the program will take the first 2*n lines beginning with a "*" (where n is the specified number of 646U controllers) and will match the first two lines to the first controller's driver, the next two lines to the second controller's driver, etc. For each set of lines, the first line is for the primary channel and the second line is for the secondary channel. The controllers are ordered by the PCI slot number in ascending order. With the replicate mode on, the program will take the first 2 lines beginning with "*" and assign the first line to the primary channel of each controller and the second line to the secondary channel of each controller. /o[controller number[p,s]]: Turn on the override switch. By default (/o not specified), "Iniset" will add the driver parameters to the registry only if the registry does not already have the parameters set for the devices. The override switch can force the assignment of the driver parameters. If the /o is used without specifying the controller number, all of the driver parameters will be reset to the parameters specified by the "iniset.ini" file. If the controller number is specified (notice that there is no space in between the "o" and the controller number), but is not followed by p nor s, the override switch will be turned on for both channels of the controller. If p is specified immediately after the chip number (no spaces) the override switch will be turned on for the primary channel; if s is specified, the override switch will be turned on for the secondary channel. It is important to note that 0 is the controller number of the first controller, and the controller are sorted in ascending order according to PCI bus and slot numbers. /d?"Description": Set the description of the device in the registry. The description is a character string in the registry where the value name is "DeviceDesc". The description string specified here must be in quotes. The "?" before the first quotation mark of the Description can be either p or s, specifying primary or secondary channel respectively. Either p or s must be present (not both), and the Description in quotes must also be present. The default description (/d not specified) for the primary channel is "Primary CMD Bus Master IDE controller" and the default description for the secondary channel is "Secondary CMD Bus Master IDE controller". These strings match the description strings in the INF file in the setup disk. /I"string to be removed": This switch is now obsolete. The string to be removed (in quotes) is a character string that is a field in the run= line in win.ini, where windows calls "Iniset" after the driver installation process. The default string (/I not specified) is "c:\quickcmd\iniset". "Iniset" searches and removes this string so that "Iniset" will automatically run only once after the driver installation. This string should match the fifth field in the UPDATEINI section in the INF file on the setup disk. /c"device class": The device class is the class under which the PCI0646U controllers are registered in the registry. It should match the Class= field in the INF file in the setup disk. If not specified, the string "hdc" is used. /s?[o]: Sets the Dual IDE Channel Settings in OEM Service Release 2 of Windows 95. The ? could be `p', `s','b', or `n', where `p' stands for Primary Channel Only, `s' stands for Secondary Channel Only, `b' stands for Both Channels, and `n' is Neither Channel. The `o' after ? specifies that the channel setting shall be overridden by the new settings if it already exists. In OEM Service Release 2 this option determines which channel of the controller is to be turned on. In earlier releases of Windows 95 this switch has no effect. Note: All of the string values specified are case sensitive. Rules for the data section: The data section of the "iniset.ini" file specifies the parameters for the Windows 95 driver. This section begins with the first line that has "*" as its leftmost character. In this part of the file, all data lines (lines containing parameters for the Windows 95 driver) must begin with "*", and they cannot span across two lines. Lines that begin with all other characters are skipped. Examples: The following are two example "iniset.ini" files, one with replicate mode on, the other without: Example file 1, with replication ================================ ; Example file with replicate mode ; Next line is the first line of the "Iniset" parameter section, specifying 3 controllers installed. #3 ; The next line turns on the verbose mode and the replicate mode #/v /r ; The next line specifies that override is on for all three controllers #/o ; The next input line specifies that the description of the secondary channel(s) is "channel 1" ; and the class name of the device is "Fake" #/ds"channel 1" /c"Fake" ; We can put additional comments here ; The next line that begins with "*" marks the beginning of the data section ; and the end of "Iniset" parameter section. It is for all three primary channels due to ; replication mode. */A33 /E ; The next line specifies a blank driver parameter line for all three secondary channels * Example 2: File without replication mode. ========================================== ; Example file without replication mode ; Next line is the first line of the "Iniset" parameter section, specifying 3 chips installed. #3 ; The next line specifies that verbose mode is on, and override is on for controller 1 primary channel #/v /o1p ; The next line specifies that override is on for both channels on controller 0 #/o0 ; All channels not specified by /o are set to the registry only if the driver parameters have never ; been set on those channels. ; The next input line specifies that the description of the primary channel(s) is "First channel" ; and the class name of the device is "Fake" #/dp"First channel" /c"Fake" ; We can put additional comments here ; The next line that begins with "*" marks the beginning of the data section ; and the end of "Iniset" parameter section. It is for the primary channel of controller 0. */A33 /E ; The next line that begins with "*" has only a "*". ; It is meant for the secondary channel of controller 0. It specifies a blank input line. * ; The next two lines are for controller 1, primary and secondary channels, respectively. * */E ;Finally, the last chip */A33 * ; Iniset will not get to this line Command Line Parameters: Beside the "Iniset" parameter section of the "iniset.ini", there are also two command line parameters that can affect the behavior of "Iniset": /v: This command line switch also turns on the verbose mode. /f"new iniset.ini file name": This switch specifies an alternate text file to replace the function of "iniset.ini". The complete file name and path must be specified within the quotes.