From df38713c24f2b7f23d5032235af3f959e695ac8f Mon Sep 17 00:00:00 2001 From: Bill Fumerola Date: Thu, 30 Mar 2000 22:39:48 +0000 Subject: [PATCH] Avoid dividing by zero when beeping with a zero pitch. This was bad. PR: alpha/17637 Submitted by: Bosko Milekic Reported by: Dennis Lindroos --- sys/alpha/alpha/clock.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sys/alpha/alpha/clock.c b/sys/alpha/alpha/clock.c index e320abac3f0..ececbebbb78 100644 --- a/sys/alpha/alpha/clock.c +++ b/sys/alpha/alpha/clock.c @@ -496,12 +496,14 @@ sysbeep(int pitch, int period) splx(x); return (-1); /* XXX Should be EBUSY, but nobody cares anyway. */ } - pitch = TIMER_DIV(pitch); + + if (pitch) pitch = TIMER_DIV(pitch); + outb(TIMER_CNTR2, pitch); outb(TIMER_CNTR2, (pitch>>8)); if (!beeping) { /* enable counter2 output to speaker */ - outb(IO_PPI, inb(IO_PPI) | 3); + if (pitch) outb(IO_PPI, inb(IO_PPI) | 3); beeping = period; timeout(sysbeepstop, (void *)NULL, period); } -- 2.45.2