zpomalení CDROM
Petr Klima
xklima08 na fest.stud.fee.vutbr.cz
Středa Listopad 7 10:32:32 CET 2001
"Petr Kinšt" wrote:
>
> Někde jsem četl, že existuje příkaz, který umožňuje zpomalit CDROM mechaniku
> (snížení hlučnosti). Nevíte o jaký příkaz jde?
>
> --
> S pozdravem
>
> Petr Kinšt
> Vyberte si nový OPERAČNÍ SYSTÉM http://www.volny.cz/salim/os/index.html
> petr.kinst na seznam.cz
Zdravim,
pokud vam to nefunguje, zkuste si zkompilovat nasledujici programek:
#include <stdio.h> /* Standard librares */
#include <unistd.h>
#include <stdlib.h>
#include <sys/ioctl.h> /* The magic ioctl function */
#include <sys/types.h> /* For open(3) */
#include <sys/stat.h>
#include <fcntl.h>
#include <linux/cdrom.h> /* Human-readable cdrom ioctls */
#ifndef CDROM_SELECT_SPEED
#define CDROM_SELECT_SPEED 0x5322 /* Set CD-ROM speed */
#endif
#ifndef CDC_SELECT_SPEED
#define CDC_SELECT_SPEED 0x8 /* programmable speed */
#endif
int main (int argc, char *argv[])
{
int cdrom, speed, ret = 0, i;
FILE *cdrom_proc;
int chr;
fprintf (stdout,
"CD-ROM drive speed setting utility v0.0.1, Petr Klíma
<klima.petr na post.cz>\n");
cdrom = open ("/dev/cdrom", O_RDONLY | O_NONBLOCK);
if (cdrom == -1)
{
fprintf (stderr, "\nUnable to find CD-ROM drive. Create symbolic
link to drive.\n"
"Example: \"ln -s /dev/hdb /dev/cdrom\"\n");
return 1;
}
if (argc == 1)
{
fprintf (stderr, "Usage: cdspd <relative speed>\n"
"Example: cdspd 4 sets reading speed to 4x
(600kB/s)\n\n");
close (cdrom);
return 1;
}
else
{
speed = atoi (argv[1]);
if (speed <= 0) fprintf(stdout, "Trying to set highest speed\n");
else {
fprintf(stdout, "Trying to set speed %dx (%dkB/s)\n", speed,
speed * 150);
}
ret = ioctl (cdrom, CDROM_SELECT_SPEED, speed);
if (ret < 0)
{
fprintf (stderr, "Error setting new drive speed\n");
close (cdrom);
return 2;
}
close (cdrom);
return 0;
}
}
Nestrilejte po pianistovi, dela co umi. Tento programek jsem vypotil
kdysi davno a velmi rychle, takze nerucim za to, ze je dobre udelan,
natoz
ze je oprosten od vsech chyb. Taky bohuzel nejsem schopen zarucit, ze
Vam bude fungovat.
Petr Klima
Další informace o konferenci Linux