--- examples/atmel_key/StdDefs.c	2012-10-14 01:14:44.000000000 -0400
+++ examples/atmel_key/StdDefs.c	2012-10-14 01:51:12.000000000 -0400
@@ -54,16 +54,6 @@
        sbi(TESTPIN_PORT, TESTPIN_BIT);
    }
 
-// Delay in 1/10's of a millisecond
-void msleep(INT16U ms)
-    { /* This loop does not work with optimization != 0. Therefore we use
-         avr-libc _delay routines K. Schwichtenberg
-	INT16S i,j;
-	for (i = 1; i < ms; i++)
-		for (j = 1; j < ONETENTH_MS; j++); / * to give 1/10 ms*/
-        _delay_ms(ms); // Changed K. Schwichtenberg
-    }
-
 //------------------------------------------------------------
 // void putBCD(INT16S X, CHARU length, CHARU TrailingSpace)
 //
--- examples/atmel_key/main.c	2012-10-14 01:14:44.000000000 -0400
+++ examples/atmel_key/main.c	2012-10-14 01:51:53.000000000 -0400
@@ -5,6 +5,8 @@
 // PS-1 Keyboard interface test program
 
 #include <avr/io.h>
+#include <util/delay.h>
+
 #include <stdlib.h>
 //include <sig-avr.h>
 #include <avr/interrupt.h>
@@ -31,7 +33,7 @@
     {
         key=getchar();
         putchar(key);
-        msleep(10);
+        _delay_ms(10);
     }
     return 1;
 }
