summaryrefslogtreecommitdiff
path: root/firmware/drivers/fat.c
diff options
context:
space:
mode:
authorMichael Sparmann <theseven@rockbox.org>2011-01-02 22:28:22 +0000
committerMichael Sparmann <theseven@rockbox.org>2011-01-02 22:28:22 +0000
commit7fea1369034f4c10b22365e34493d4151e793fac (patch)
treede734cc78103dea6c873113c166e8cddd59f36d9 /firmware/drivers/fat.c
parent886e97221bc6105057116a6a7303b15710c9e06f (diff)
downloadrockbox-7fea1369034f4c10b22365e34493d4151e793fac.zip
rockbox-7fea1369034f4c10b22365e34493d4151e793fac.tar.gz
rockbox-7fea1369034f4c10b22365e34493d4151e793fac.tar.bz2
rockbox-7fea1369034f4c10b22365e34493d4151e793fac.tar.xz
Autodetect sector size on superfloppy volumes based on the FAT32 BPB (kudos to Frank Gevaerts)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28946 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/drivers/fat.c')
-rw-r--r--firmware/drivers/fat.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/firmware/drivers/fat.c b/firmware/drivers/fat.c
index a99341d..f055f4b 100644
--- a/firmware/drivers/fat.c
+++ b/firmware/drivers/fat.c
@@ -448,6 +448,19 @@ static int fat_mount_internal(IF_MV2(int volume,) IF_MD2(int drive,) long starts
return 0;
}
+#ifdef MAX_LOG_SECTOR_SIZE
+int fat_get_bytes_per_sector(IF_MV_NONVOID(int volume))
+{
+#ifdef HAVE_MULTIVOLUME
+ if(!fat_bpbs[volume].mounted)
+ return 0;
+ return fat_bpbs[volume].bpb_bytspersec;
+#else
+ return fat_bpbs[0].bpb_bytspersec;
+#endif
+}
+#endif
+
int fat_mount(IF_MV2(int volume,) IF_MD2(int drive,) long startsector)
{
#ifndef HAVE_MULTIVOLUME