From fanf@dotat.at  Wed Sep 12 16:46:51 2001
Return-Path: <fanf@dotat.at>
Received: from hand.dotat.at (host217-35-41-52.in-addr.btopenworld.com [217.35.41.52])
	by hub.freebsd.org (Postfix) with ESMTP id 9F16837B403
	for <FreeBSD-gnats-submit@freebsd.org>; Wed, 12 Sep 2001 16:46:50 -0700 (PDT)
Received: from fanf by hand.dotat.at with local (Exim 3.33 #16)
	id 15hKeI-0001aC-00
	for FreeBSD-gnats-submit@freebsd.org; Thu, 13 Sep 2001 00:46:34 +0000
Message-Id: <E15hKeI-0001aC-00@hand.dotat.at>
Date: Thu, 13 Sep 2001 00:46:34 +0000
From: Tony Finch <dot@dotat.at>
Reply-To: Tony Finch <dot@dotat.at>
To: FreeBSD-gnats-submit@freebsd.org
Cc:
Subject: [PATCH] old pccard beep depends on value of HZ
X-Send-Pr-Version: 3.113
X-GNATS-Notify:

>Number:         30541
>Category:       kern
>Synopsis:       [PATCH] old pccard beep depends on value of HZ
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    imp
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Sep 12 16:50:01 PDT 2001
>Closed-Date:    Sun Sep 29 17:49:53 MDT 2002
>Last-Modified:  Sun Sep 29 17:49:53 MDT 2002
>Originator:     Tony Finch
>Release:        FreeBSD 4.4-RC i386
>Organization:
dotat labs
>Environment:
System: FreeBSD hand.dotat.at 4.4-RC FreeBSD 4.4-RC #4: Sat Sep 1 19:06:27 GMT 2001 fanf@hand.dotat.at:/FreeBSD/obj/FreeBSD/releng4/sys/SHARP i386
>Description:
The timing of pccard event sounds depends on HZ.
>How-To-Repeat:
Change HZ to (say) 1000.
>Fix:

Index: sys/pccard/pccard_beep.c
===================================================================
RCS file: /home/ncvs/src/sys/pccard/pccard_beep.c,v
retrieving revision 1.3.2.3
diff -u -r1.3.2.3 pccard_beep.c
--- sys/pccard/pccard_beep.c	2001/06/05 19:11:34	1.3.2.3
+++ sys/pccard/pccard_beep.c	2001/08/28 22:22:10
@@ -73,8 +73,10 @@
 	melody = (struct tone *)arg;
 
 	if (melody->pitch != 0) {
-		sysbeep(melody->pitch, melody->duration);
-		timeout(pccard_beep_sub, melody + 1, melody->duration);
+		sysbeep(melody->pitch,
+		    melody->duration * hz / 100);
+		timeout(pccard_beep_sub, melody + 1,
+		    melody->duration * hz / 100);
 	} else 
 		allow_beep = BEEP_ON;
 }
@@ -87,8 +89,10 @@
 
 	if (allow_beep == BEEP_ON && melody->pitch != 0) {
 		allow_beep = BEEP_OFF;
-		sysbeep(melody->pitch, melody->duration);
-		timeout(pccard_beep_sub, melody + 1, melody->duration);
+		sysbeep(melody->pitch,
+		    melody->duration * hz / 100);
+		timeout(pccard_beep_sub, melody + 1,
+		    melody->duration * hz / 100);
 	}
 }
 
>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-bugs->imp 
Responsible-Changed-By: dd 
Responsible-Changed-When: Thu Sep 13 04:16:27 PDT 2001 
Responsible-Changed-Why:  
Over to maintainer. 

http://www.FreeBSD.org/cgi/query-pr.cgi?pr=30541 

From: Bruce Evans <bde@zeta.org.au>
To: Tony Finch <dot@dotat.at>
Cc: <FreeBSD-gnats-submit@FreeBSD.ORG>
Subject: Re: kern/30541: [PATCH] old pccard beep depends on value of HZ
Date: Fri, 14 Sep 2001 09:24:40 +1000 (EST)

 On Thu, 13 Sep 2001, Tony Finch wrote:
 
 > >Description:
 > The timing of pccard event sounds depends on HZ.
 > >How-To-Repeat:
 > Change HZ to (say) 1000.
 >
 > Index: sys/pccard/pccard_beep.c
 > ===================================================================
 > RCS file: /home/ncvs/src/sys/pccard/pccard_beep.c,v
 > retrieving revision 1.3.2.3
 > diff -u -r1.3.2.3 pccard_beep.c
 > --- sys/pccard/pccard_beep.c	2001/06/05 19:11:34	1.3.2.3
 > +++ sys/pccard/pccard_beep.c	2001/08/28 22:22:10
 > @@ -73,8 +73,10 @@
 >  	melody = (struct tone *)arg;
 >
 >  	if (melody->pitch != 0) {
 > -		sysbeep(melody->pitch, melody->duration);
 > -		timeout(pccard_beep_sub, melody + 1, melody->duration);
 > +		sysbeep(melody->pitch,
 > +		    melody->duration * hz / 100);
 > +		timeout(pccard_beep_sub, melody + 1,
 > +		    melody->duration * hz / 100);
 >  	} else
 >  		allow_beep = BEEP_ON;
 >  }
 
 pccard_beep() also suffers from, or at least adds to the confusion about
 the pitch of the beep.  sysbeep()'s "pitch" arg is not actually a pitch;
 it is a period in i8254 timer cycles.  The "pitches" in the tone data
 appear to already by inverted to compensate for this.
 
 Bruce
 
State-Changed-From-To: open->closed 
State-Changed-By: imp 
State-Changed-When: Sun Sep 29 17:48:57 MDT 2002 
State-Changed-Why:  
Ooops, this is a duplicate of a bug that was submitted a long time ago. 
It has been fixed.  Sorry I didn't include it in the commit message. 


http://www.freebsd.org/cgi/query-pr.cgi?pr=30541 
>Unformatted:
