summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorray <ray@FreeBSD.org>2014-05-06 13:52:13 +0000
committerray <ray@FreeBSD.org>2014-05-06 13:52:13 +0000
commit39b4e3c4c297cc1ebdd19c6c0e7ecec10bbde74a (patch)
tree6610a556e39b60e9e69dbcd19697cc2cfa744a84
parente5fc359e0ddfe0c461e95a10944a4b31cb6def66 (diff)
downloadFreeBSD-src-39b4e3c4c297cc1ebdd19c6c0e7ecec10bbde74a.zip
FreeBSD-src-39b4e3c4c297cc1ebdd19c6c0e7ecec10bbde74a.tar.gz
Implement KDMKTONE ioctl.
Submitted by: Matthew D.Fuller <fullermd@over-yonder.net> (original version) MFC: 7 days PR: kern/189170 Sponsored by: The FreeBSD Foundation
-rw-r--r--sys/dev/vt/vt_core.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/sys/dev/vt/vt_core.c b/sys/dev/vt/vt_core.c
index 4d2149a..759564a 100644
--- a/sys/dev/vt/vt_core.c
+++ b/sys/dev/vt/vt_core.c
@@ -1732,9 +1732,17 @@ skip_thunk:
td->td_frame->tf_rflags &= ~PSL_IOPL;
#endif
return (0);
- case KDMKTONE: /* sound the bell */
- /* TODO */
+ case KDMKTONE: { /* sound the bell */
+ int freq, period;
+
+ freq = 1193182 / ((*(int*)data) & 0xffff);
+ period = (((*(int*)data)>>16) & 0xffff) * hz / 1000;
+ if(*(int*)data)
+ sysbeep(freq, period);
+ else
+ vtterm_bell(tm);
return (0);
+ }
case KIOCSOUND: /* make tone (*data) hz */
/* TODO */
return (0);
OpenPOWER on IntegriCloud