Add function to check if the device is in the bootloader
diff --git a/rmidevice/rmidevice.cpp b/rmidevice/rmidevice.cpp
index 11665a1..0b85b55 100644
--- a/rmidevice/rmidevice.cpp
+++ b/rmidevice/rmidevice.cpp
@@ -292,6 +292,22 @@
 	return 0;
 }
 
+bool RMIDevice::InBootloader()
+{
+	RMIFunction f01;
+	if (GetFunction(f01, 0x01)) {
+		int rc;
+		unsigned char status;
+
+		rc = Read(f01.GetDataBase(), &status, 1);
+		if (rc < 0)
+			return true;
+
+		return !!(status & 0x40);
+	}
+	return true;
+}
+
 long long diff_time(struct timespec *start, struct timespec *end)
 {
 	long long diff;