Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 20 Dec 1999 16:24:23 -0600 (CST)
From:      ryan@sasknow.com
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/15594: kscd-1.2.7 in -STABLE ports not playing ATAPI CDs
Message-ID:  <199912202224.QAA31528@sasknow.com>

next in thread | raw e-mail | index | archive | help

>Number:         15594
>Category:       ports
>Synopsis:       kscd-1.2.7 in -STABLE ports not playing ATAPI CDs
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Dec 20 14:30:01 PST 1999
>Closed-Date:
>Last-Modified:
>Originator:     Ryan Thompson
>Release:        
>Organization:
>Environment:

	Nothing special, problem appears to affect more than just myself.
	Using /dev/acd0[a|c]
	See description.

>Description:

	When attempting to play ATAPI CDs, or to advance/rewind/pause/play
	CDs started with cdcontrol, kscd displays an "Ejected" message in
	its window and stops playback.  (But does not eject the disc)

>How-To-Repeat:

	Appears to affect all ATAPI CDROMs that I have tested; try and play
	one.

>Fix:
	
	I've successfully used the following small patches on kscd-1.2.7,
	which have appeared to correct playback on my -STABLE system, without
	any adverse side effects.  These patches were obtained from a KDE
	mailing list archive, and have been around for quite some time.

*** plat_freebsd.c      Mon May 17 14:07:34 1999
***************
*** 248,258 ****
                break;

        case CD_AS_PLAY_COMPLETED:
!               *mode = TRACK_DONE; /* waiting for next track. */
                break;

        case CD_AS_NO_STATUS:
!       case 0:
                *mode = STOPPED;
                break;
        }
--- 248,259 ----
                break;

        case CD_AS_PLAY_COMPLETED:
!               *mode = STOPPED;
!               /* *mode = TRACK_DONE; /* waiting for next track. */
                break;

        case CD_AS_NO_STATUS:
!       case CD_AS_AUDIO_INVALID:
                *mode = STOPPED;
                break;
        }
***************
*** 368,378 ****
        msf.end_s       = (end % (60*75)) / 75;
        msf.end_f       = end % 75;

        if (ioctl(d->fd, CDIOCSTART))
                return (-1);

!       if (ioctl(d->fd, CDIOCPLAYMSF, &msf))
!               return (-2);

        return (0);
  }
--- 369,383 ----
        msf.end_s       = (end % (60*75)) / 75;
        msf.end_f       = end % 75;

+ #if 0
        if (ioctl(d->fd, CDIOCSTART))
                return (-1);
+ #endif

!       if (ioctl(d->fd, CDIOCPLAYMSF, &msf)) {
!         perror("ioctl(CDIOPLAYMSF)");
!         return (-2);
!       }

        return (0);
  }                   


>Release-Note:
>Audit-Trail:
>Unformatted:
 >release:        FreeBSD 3.4-STABLE i386


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199912202224.QAA31528>