Index: kbd/arch/ia64/src/kbd.c
===================================================================
--- kbd/arch/ia64/src/kbd.c	(revision e8d77a4d0bf07634938ef62870d2e5ea4a280f4d)
+++ kbd/arch/ia64/src/kbd.c	(revision b7e9c34c6cc589a80797e98a83b9d9416436acbb)
@@ -78,20 +78,31 @@
 	static unsigned long long buf=0;
 	static int count=0;	
+	static int esc_count=0;
 
 
 	/*
 	* Please preserve this code (it can be used to determine scancodes)
-	*
-	keybuffer_push(keybuffer, to_hex((scan_code>>4)&0xf));
-	keybuffer_push(keybuffer, to_hex(scan_code&0xf));
-	keybuffer_push(keybuffer, ' ');
-	keybuffer_push(keybuffer, ' ');
 	*/
+	//keybuffer_push(keybuffer, to_hex((scan_code>>4)&0xf));
+	//keybuffer_push(keybuffer, to_hex(scan_code&0xf));
+	//keybuffer_push(keybuffer, ' ');
+	//keybuffer_push(keybuffer, ' ');
+	//*/
 	
 	
 	if (scan_code){
 		buf|=(unsigned long long) scan_code<<(8*(count++));
-	}	else {
-			
+	} else {
+		
+
+		if ( buf == 0x1b ) {
+			esc_count++;
+			if ( esc_count == 3 ) {
+			__SYSCALL0(SYS_DEBUG_ENABLE_CONSOLE);
+			}	
+		} else {
+			esc_count=0;
+		}
+	
 		if ( ! ( buf & 0xff00 ))
 			keybuffer_push(keybuffer, buf);
Index: kbd/arch/mips32/src/kbd.c
===================================================================
--- kbd/arch/mips32/src/kbd.c	(revision e8d77a4d0bf07634938ef62870d2e5ea4a280f4d)
+++ kbd/arch/mips32/src/kbd.c	(revision b7e9c34c6cc589a80797e98a83b9d9416436acbb)
@@ -369,8 +369,21 @@
 int kbd_arch_process(keybuffer_t *keybuffer, int scan_code)
 {
-    if(msim) return kbd_arch_process_msim(keybuffer, scan_code);
-    if(gxemul) return kbd_arch_process_gxemul(keybuffer, scan_code);
-
-    return 0;
-}
-
+
+	static int esc_count=0;
+
+	
+	if ( scan_code == 0x1b ) {
+		esc_count++;
+		if ( esc_count == 3 ) {
+			__SYSCALL0(SYS_DEBUG_ENABLE_CONSOLE);
+		}	
+	} else {
+		esc_count=0;
+	}
+
+	if(msim) return kbd_arch_process_msim(keybuffer, scan_code);
+	if(gxemul) return kbd_arch_process_gxemul(keybuffer, scan_code);
+
+	return 0;
+}
+
