summaryrefslogtreecommitdiffstats
path: root/firmware/export
diff options
context:
space:
mode:
authorBarry Wardell <rockbox@barrywardell.net>2007-03-16 14:28:00 +0000
committerBarry Wardell <rockbox@barrywardell.net>2007-03-16 14:28:00 +0000
commit14ed3ca8d88a8f792e45b5453c9f089ffd8a975a (patch)
tree3a08677ad987d3af59c6744c0d69596aea61e4d2 /firmware/export
parent114641849427b8b2df6630d6b841d4c7058fd317 (diff)
downloadrockbox-14ed3ca8d88a8f792e45b5453c9f089ffd8a975a.tar.gz
rockbox-14ed3ca8d88a8f792e45b5453c9f089ffd8a975a.zip
In preparation for use with sansapatcher, change portalplayer bootloaders to read firmwares in mi4 format.
When loading the OF: 1) first try to load from a hidden disk partition 2) try loading /System/OF.mi4 3) finally fall back to loading /System/OF.bin which is what the old bootloader used. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12802 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export')
-rw-r--r--firmware/export/config-e200.h12
-rw-r--r--firmware/export/config-h10.h12
-rw-r--r--firmware/export/config-h10_5gb.h12
-rw-r--r--firmware/export/disk.h1
4 files changed, 28 insertions, 9 deletions
diff --git a/firmware/export/config-e200.h b/firmware/export/config-e200.h
index 304c7062e5..0126cdf739 100644
--- a/firmware/export/config-e200.h
+++ b/firmware/export/config-e200.h
@@ -108,13 +108,19 @@
#define CONFIG_LCD LCD_X5
/* Offset ( in the firmware file's header ) to the file length */
-#define FIRMWARE_OFFSET_FILE_LENGTH 0
+#define FIRMWARE_OFFSET_FILE_LENGTH 0x8
/* Offset ( in the firmware file's header ) to the file CRC */
-#define FIRMWARE_OFFSET_FILE_CRC 0
+#define FIRMWARE_OFFSET_FILE_CRC 0x0c
+
+/* Offset ( in the firmware file's header ) to the file type */
+#define FIRMWARE_OFFSET_FILE_TYPE 0x1f8
+
+/* Offset ( in the firmware file's header ) to the file model id */
+#define FIRMWARE_OFFSET_FILE_MODEL 0x1fc
/* Offset ( in the firmware file's header ) to the real data */
-#define FIRMWARE_OFFSET_FILE_DATA 8
+#define FIRMWARE_OFFSET_FILE_DATA 0x200
/* #define USB_IPODSTYLE */
diff --git a/firmware/export/config-h10.h b/firmware/export/config-h10.h
index a66a387f02..ec6f83fecb 100644
--- a/firmware/export/config-h10.h
+++ b/firmware/export/config-h10.h
@@ -138,13 +138,19 @@
#define HAVE_ATA_POWER_OFF
/* Offset ( in the firmware file's header ) to the file length */
-#define FIRMWARE_OFFSET_FILE_LENGTH 0
+#define FIRMWARE_OFFSET_FILE_LENGTH 0x8
/* Offset ( in the firmware file's header ) to the file CRC */
-#define FIRMWARE_OFFSET_FILE_CRC 0
+#define FIRMWARE_OFFSET_FILE_CRC 0x0c
+
+/* Offset ( in the firmware file's header ) to the file type */
+#define FIRMWARE_OFFSET_FILE_TYPE 0x1f8
+
+/* Offset ( in the firmware file's header ) to the file model id */
+#define FIRMWARE_OFFSET_FILE_MODEL 0x1fc
/* Offset ( in the firmware file's header ) to the real data */
-#define FIRMWARE_OFFSET_FILE_DATA 8
+#define FIRMWARE_OFFSET_FILE_DATA 0x200
/* #define USB_IPODSTYLE */
diff --git a/firmware/export/config-h10_5gb.h b/firmware/export/config-h10_5gb.h
index fa643b01b9..b809f3471c 100644
--- a/firmware/export/config-h10_5gb.h
+++ b/firmware/export/config-h10_5gb.h
@@ -118,13 +118,19 @@
#define HAVE_ATA_POWER_OFF
/* Offset ( in the firmware file's header ) to the file length */
-#define FIRMWARE_OFFSET_FILE_LENGTH 0
+#define FIRMWARE_OFFSET_FILE_LENGTH 0x8
/* Offset ( in the firmware file's header ) to the file CRC */
-#define FIRMWARE_OFFSET_FILE_CRC 0
+#define FIRMWARE_OFFSET_FILE_CRC 0x0c
+
+/* Offset ( in the firmware file's header ) to the file type */
+#define FIRMWARE_OFFSET_FILE_TYPE 0x1f8
+
+/* Offset ( in the firmware file's header ) to the file model id */
+#define FIRMWARE_OFFSET_FILE_MODEL 0x1fc
/* Offset ( in the firmware file's header ) to the real data */
-#define FIRMWARE_OFFSET_FILE_DATA 8
+#define FIRMWARE_OFFSET_FILE_DATA 0x200
/* #define USB_IPODSTYLE */
diff --git a/firmware/export/disk.h b/firmware/export/disk.h
index e10fe9e7dc..b9619be983 100644
--- a/firmware/export/disk.h
+++ b/firmware/export/disk.h
@@ -30,6 +30,7 @@ struct partinfo {
#define PARTITION_TYPE_FAT32 0x0b
#define PARTITION_TYPE_FAT32_LBA 0x0c
#define PARTITION_TYPE_FAT16 0x06
+#define PARTITION_TYPE_HIDDEN 0x84
/* returns a pointer to an array of 8 partinfo structs */
struct partinfo* disk_init(IF_MV_NONVOID(int volume));