aboutsummaryrefslogtreecommitdiff
path: root/korean/han/files/patch-aa
diff options
context:
space:
mode:
Diffstat (limited to 'korean/han/files/patch-aa')
-rw-r--r--korean/han/files/patch-aa71
1 files changed, 71 insertions, 0 deletions
diff --git a/korean/han/files/patch-aa b/korean/han/files/patch-aa
new file mode 100644
index 000000000000..e559212d276e
--- /dev/null
+++ b/korean/han/files/patch-aa
@@ -0,0 +1,71 @@
+--- src/vc.c.orig Sat Mar 29 04:35:50 1997
++++ src/vc.c Sun Jul 16 12:44:05 2000
+@@ -310,12 +310,23 @@
+ {
+ struct vt_mode vtm;
+
++#if defined(__FreeBSD__)
++ signal(SIGUSR1, SIG_IGN);
++ signal(SIGUSR2, SIG_IGN);
++#else /* linux */
+ signal(SIGUSR1, SIG_DFL);
+ signal(SIGUSR2, SIG_DFL);
++#endif
+ vtm.mode = VT_AUTO;
+ vtm.waitv = 0;
++#if defined(__FreeBSD__)
++ vtm.relsig = SIGUSR1;
++ vtm.acqsig = SIGUSR2;
++ vtm.frsig = SIGUSR1;
++#else /* linux */
+ vtm.relsig = 0;
+ vtm.acqsig = 0;
++#endif
+ ioctl(0, VT_SETMODE, &vtm);
+ #if defined(__FreeBSD__)
+ ioctl(0, VT_RELDISP, 1);
+@@ -341,6 +352,9 @@
+ vtm.waitv = 0;
+ vtm.relsig = SIGUSR1;
+ vtm.acqsig = SIGUSR2;
++#if defined(__FreeBSD__)
++ vtm.frsig = SIGUSR1;
++#endif
+ ioctl(0, VT_SETMODE, &vtm);
+ vInfo.graph_mode();
+ if (useHardScroll)
+@@ -859,20 +873,31 @@
+
+ static int ConfigBeep(const char *confstr)
+ {
+- beepCount = atoi(confstr) * 10000;
+ #if defined(linux)
+- ioperm(COUNTER_ADDR, 1, TRUE);
++ beepCount = atoi(confstr) * 10000;
++ if (beepCount > 0)
++ ioperm(COUNTER_ADDR, 1, TRUE);
++#endif
++#if defined(__FreeBSD__)
++ beepCount = atoi(confstr) * 10;
+ #endif
+ return SUCCESS;
+ }
+
++#define BELL_PITCH 800
++
+ void Beep(void)
+ {
+- if (!con.active) return;
+ #ifdef linux
++ if (!con.active) return;
+ PortOutb(PortInb(COUNTER_ADDR)|3, COUNTER_ADDR);
+ usleep(beepCount);
+ PortOutb(PortInb(COUNTER_ADDR)&0xFC, COUNTER_ADDR);
++#endif
++#if defined(__FreeBSD__)
++ if(beepCount <= 0) return;
++ ioctl(fileno(stdout), KDMKTONE, (BELL_PITCH & 0xffff) |
++ ((beepCount & 0xffff) << 16));
+ #endif
+ }
+