[Taranis] EEPROM write from USB massstorage seems working on windows here! Not tested again on Linux

This commit is contained in:
bsongis@gmail.com
2013-04-21 17:24:41 +00:00
parent 38afc96e2c
commit 67a683e6c4
2 changed files with 11 additions and 3 deletions
+1 -1
View File
@@ -383,7 +383,7 @@ void generalDefault()
uint16_t evalChkSum()
{
uint16_t sum=0;
for (int i=0; i<NUM_STICKS+NUM_POTS+5;i++)
for (int i=0; i<NUM_STICKS+NUM_POTS+5; i++)
sum += g_eeGeneral.calibMid[i];
return sum;
}
+10 -2
View File
@@ -663,13 +663,21 @@ int32_t fat12Read( uint8_t *buffer, uint16_t sector, uint16_t count )
//------------------------------------------------------------------------------
int32_t fat12Write(const uint8_t *buffer, uint16_t sector, uint32_t count )
{
static int offset = 0;
while (count) {
if (sector >= 4) {
eeWriteBlockCmp((uint8_t *)buffer, (sector-4)*512, 512);
const EeFs * test = (const EeFs *)buffer;
if (test->version==EEFS_VERS && test->mySize==sizeof(eeFs) && test->bs==BS) {
offset = sector;
}
if (offset && sector >= offset) {
eeWriteBlockCmp((uint8_t *)buffer, (sector-offset)*512, 512);
}
buffer += 512;
sector++;
count--;
if (sector-offset+1==EESIZE/512)
offset = 0;
}
return 0 ;
}