diff --git a/ChangeLog b/ChangeLog
index 88500cdf..0de226f3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2007-10-29 Joerg Wunsch <j@uriah.heep.sax.de>
+
+	Submitted by <karl.yerkes@gmail.com>:
+	patch #6141: accept binary format immediate values
+	* fileio.c: Detect a 0b prefix, and call strtoul() differently
+	in that case.
+
 2007-10-29 Joerg Wunsch <j@uriah.heep.sax.de>
 
 	bug #21076: -vvvv serial receive prints are empty in Win32 build
diff --git a/fileio.c b/fileio.c
index 97752418..4bad9734 100644
--- a/fileio.c
+++ b/fileio.c
@@ -743,6 +743,10 @@ static int fileio_imm(struct fioparms * fio,
       p = strtok(filename, " ,");
       while (p != NULL && loc < size) {
         b = strtoul(p, &e, 0);
+	/* check for binary formated (0b10101001) strings */
+	b = (strncmp (p, "0b", 2))?
+	    strtoul (p, &e, 0):
+	    strtoul (p + 2, &e, 2);
         if (*e != 0) {
           fprintf(stderr,
                   "%s: invalid byte value (%s) specified for immediate mode\n",