plextor-tool 0.5.0, by Georg Huettenegger (February, 2002) Copyright (c) 1999-2002 Preface ~~~~~~~ Most of this document describes the console plextor-tool and not the plextor-tool-applet (which is rather self describing and furthermore has a HTML help page). Nevertheless starting with Preconditions the content of this file is relevant for all packages this file is distributed with. Description ~~~~~~~~~~~ plextor-tool can be used to set the speed settings / spin down time of Plextor/MMC CD-ROM/CD-R(W) drives. The program should work with any of the following plextor cd-rom drives: PX-4[XX], PX-6[XX], PX-8[XX], PX-12[XX], PX-20[XX], PX-32[XX], PX-40[XX]. [XX] means something like TSi/CH/.... Nevertheless I do not make any guarantees at all: USE AT YOUR OWN RISK! The program has been developed on an Intel computer with RedHat 7.2 and a Plextor PX-32TS. I would very much like to hear about any success/failure especially with the untested versions (all except for the Intel/glibc version). Additionally all mmc compatible drives (that provide code page 0x2a and the set speed command) are supported (this includes Plextor CD-R(W) drives). License ~~~~~~~ As of 0.5.0 plextor-tool(-applet) is distributed under the terms of the GPL (see included COPYING). Earlier version were and are distributed as Freeware. Usage ~~~~~ Normal usage is like: "plextor-tool DEVICE [OPTIONS]" device might be something like /dev/sg0 or /dev/sga for Linux or 1 6 for Windows (first the Host adapter number starting with 0 then the SCSI id). -q: For querying the device -q may be used. Setting options are not carried out when in query mode (using -v is silently ignored). -v: With the -v option the verbose level is set giving some messages during the operation of the program. -s x: With this option the speed of the Plextor(r) drive may be set to a multiple of 150KB/sec. -i x: With this option the spin-down time (after which period of inactivity the drive stays in hold track state) -o x[,y]: set volume to x (x or y must be in the range 0..255) if both x and y are given x is the volume of the left channel and y the volume of the right channel. The next three options are only available on Plextor CD-ROM drives (not MMC drives like Plextor CD-R(W)s) -m 0|1:Setting the speed mode bit. If set the drive will not reduce the operation in case of read errors. If this bit is set the disable avoid vibration bit setting will be ignored! (0 default). The next two options are only available for PX-20TS and later. -a 0|1:Setting the disable avoid vibration bit: If set the drive will not speed down to avoid vibration. (0 default). -w 1|0:Setting the waiting for maximum speed bit: If not set the drive will start transferring data before reaching the maximum speed. (1 default). Additionally availabe with the Windows version is the following option: -f: forces waiting for ASPI initialization (it may happen with Windows that ASPI is not fully started when executing the plextor-tool from your Autostart folder; with this option plextor-tool will try forever if ASPI seems not to be initialized fully). -l: For querying the SCSI devices to show all available plextor drives. The only other allowed option is -v for this mode. Further options are simply ignored. -? or -h or --help: A help text describing the functionality of the tool. --version: Displaying the version number alone. What can be given for the device argument: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Linux: Under Linux /dev/sgx with x being a letter or a number are acceptable. Some Linux systems use e.g. /dev/sga,/dev/sgb,... ; some Linux systems use e.g. /dev/sg0,/dev/sg1,... ; RedHat for example uses both. Older versions of plextor-tool would list both names if available, but the newer version first try for the numerical names and if any numerical name is found the check for the alphabetical names is skipped. It is irrelevant which device is used. For further information about the meaning of /dev/sgx read the SCSI-Programming-HOWTO. (According to the Linux Kernel Documentation the sga/... naming scheme is inferior because it limits the number of possible SCSI generic devices to 26. Furthermore the alphabetical naming is deprecated.) Windows: Under Windows the device is described with the number of the Host adapter the drive is connected to (starting with 0) and the SCSI id of the plextor drive. Use "plextor-drive -l" to find the correct values for your drive. Preconditions: ~~~~~~~~~~~~~~ Linux: I assume (according to the SCSI-Programming-HOWTO) that plextor-tool requires at least kernel version 1.1.68 (with the exceptions of 1.1.77 up to 1.1.89 and 1.3.52 up to 1.3.56 due to broken SCSI generic interface). Nevertheless I just tried 2.2.12 and it worked fine (but a small test of mine indicates possible erros with rather old kernels). When a Linux kernel with a SCSI generic interface with a version number higher than 3 is detected plextor-tool partially uses the new interface. Another precondition is that SCSI generic support is available (that means either compiled into the kernel or the sg module is loaded) together with the corresponding special devices (sg0/... and/or sga/...). Windows: Plextor-tool runs on Windows 95/98/NT/2000 using ASPI32 for Windows. Windows 95/98 ship with ASPI but at least Windows 98 uses a version incompatible with plextor-tool. I did not test Windows 95 and therefore cannot say whether the ASPI delivered with Windows 95 will work. I used the ASPI32 version included in the ASPI-SDK from Adaptec with Windows 98/NT and it worked. I did not test any other ASPI version but would like to hear about success/failure. Everybody who has an Adaptec SCSI Controller or some ASPI version from Adaptec can get the newest version from Adaptec with which my tool should work. Furthermore plextor-tool was compiled using the Cygnus gcc which means that cygwin1.dll is needed for execution. I used v 1.3.1 for development and provide the corresponding dll but newer versions should also work. To access the SCSI devices under Windows I used the ASPI-SDK from Adaptec with an additional definition for BOOL necessary in WnASPI32.h. What speed settings are available: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The available speed settings depend on your Plextor(r) drive: 0 always means the maximum speed for the supported Plextor(r) drive. PX-4XCH/4XCS: 1 2 0 (means 4) PX-4XCE: 1 2 0 (means 4.5) PX-6XCS: 1 4 0 (means 6) PX-8XCS: 1 2 4 0 (means 8) PX-12XSx: 1 2 4 8 0 (means 12) PX-20TSx: 1 2 4 8 0 (means 12-20) PX-32XSx: 1 2 4 8 20 (means 8-20) 0 (means 14-32) PX-40TSx: 1 2 4 8 20 (means 10-20) 0 (means 17-40) With MMC drives the printed available settings are just assumptions. Every MMC drive will set the next available lower data rate if the selected one is not available. The maximum data rate on the other hand is reported by the drive. What spin down settings are available: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The available settings are: 125ms 32sec 250ms 1min 500ms 2min 1sec 4min 2sec 8min 4sec 16min 8sec 32min 16sec 0 (means infinite) At least with a Yamaha CDR400c setting the spin down time does not work. I do not exactly know why (according to available SCSI documentation the operation should be exactly as for Plextor CD-ROM drives where the procedure works). I tried my method of setting parameters of SCSI devices also with a ZIP drive and it worked so I assume that changing the spin down setting should normally work as expected. If you have any information regarding this topic please inform me. Installation ~~~~~~~~~~~~ In case you did not install a RPM package see INSTALL for installation instructions. Homepage ~~~~~~~~ http://www.technik.sth.ac.at/plextor-tool Comments (Suggestions/Bug Reports/...) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ georg At ist.org