@@ -0,0 +1,53 @@
+diff -ur memtest86+-1.70.orig/config.h memtest86+-1.70/config.h
+--- memtest86+-1.70.orig/config.h 2006-12-27 02:33:06.000000000 +0100
++++ memtest86+-1.70/config.h 2007-01-25 16:34:01.000000000 +0100
+@@ -13,7 +13,7 @@
+ /* SERIAL_CONSOLE_DEFAULT - The default state of the serial console. */
+ /* This is normally off since it slows down testing. Change to a 1 */
+ /* to enable. */
+-#define SERIAL_CONSOLE_DEFAULT 0
++#define SERIAL_CONSOLE_DEFAULT 1
+
+ /* SERIAL_BAUD_RATE - Baud rate for the serial console */
+ #define SERIAL_BAUD_RATE 9600
+diff -ur memtest86+-1.70.orig/init.c memtest86+-1.70/init.c
+--- memtest86+-1.70.orig/init.c 2007-01-04 08:19:43.000000000 +0100
++++ memtest86+-1.70/init.c 2007-01-25 16:34:31.000000000 +0100
+@@ -29,6 +29,7 @@
+ static void cpu_type(void);
+ static void cacheable(void);
+ static int cpuspeed(void);
++extern short serial_cons;
+
+ static void display_init(void)
+ {
+@@ -65,6 +66,9 @@
+ }
+
+ serial_echo_print("\x1B[0m");
++
++ if (!serial_cons && SERIAL_CONSOLE_DEFAULT)
++ cprint (23, 0, "Timout on serial console: disabled");
+ }
+
+ /*
+diff -ur memtest86+-1.70.orig/serial.h memtest86+-1.70/serial.h
+--- memtest86+-1.70.orig/serial.h 2006-12-27 02:33:06.000000000 +0100
++++ memtest86+-1.70/serial.h 2007-01-25 16:34:31.000000000 +0100
+@@ -140,10 +140,12 @@
+ #define serial_echo_inb(a) inb((a)+0x3f8)
+ #define BOTH_EMPTY (UART_LSR_TEMT | UART_LSR_THRE)
+ /* Wait for transmitter & holding register to empty */
+-#define WAIT_FOR_XMITR \
+- do { \
+- lsr = serial_echo_inb(UART_LSR); \
+- } while ((lsr & BOTH_EMPTY) != BOTH_EMPTY)
++#define WAIT_FOR_XMITR \
++ int _i = 1<<15; \
++ do { \
++ lsr = serial_echo_inb(UART_LSR); \
++ } while ((lsr & BOTH_EMPTY) != BOTH_EMPTY && --_i); \
++ if (!_i) serial_cons = 0
+
+ #if 0
+ static inline void serial_echo(int ch)
|