$NetBSD$

--- xstuff.c.orig	1994-06-22 16:24:51.000000000 +0200
+++ xstuff.c
@@ -316,7 +316,7 @@ void flush_X(void)
 }
 
 
-static BYTE scan_table1[] =
+static BYTE scan_table1[256 - 0x20] =
 {
     0x39, 0x02, 
 #ifdef KBUK             /* double quotes, hash symbol */
@@ -360,6 +360,7 @@ static BYTE scan_table1[] =
 #else
     0x29,
 #endif
+    0
 };
 
 
@@ -461,6 +462,16 @@ static unsigned translate(KeySym key)
 }
 
 
+int put_scan_table(BYTE code, unsigned char c)
+{
+	/* interface to overload scan_table1 from .pcemurc */
+	if(c < ' ' || c >= ' ' + sizeof scan_table1)
+		return 1;
+	scan_table1[c - ' '] = code;
+	return 0;
+}
+
+
 void process_Xevents(void)
 {    
 #define KEY_BUFFER_SIZE 100
