Option UNITS=IMPERIAL added

SD card archive function continued (doesn't delete the model until function finished)
Alternate view for outputs in Main Views (Bars and Numbers)
GPS speed was badly displayed (ap instead of bp)
This commit is contained in:
bsongis
2012-04-19 17:03:51 +00:00
parent 35f60e9899
commit 3967d82a28
18 changed files with 207 additions and 82 deletions
+27 -14
View File
@@ -531,34 +531,47 @@ const pm_char * eeArchiveModel(uint8_t i_fileSrc)
{
char *buf = reusableBuffer.model_name;
FIL archiveFile;
UINT written;
FRESULT result = f_mount(0, &g_FATFS_Obj);
if (result != FR_OK) {
return PSTR("SDCARD F/S ERROR"); // TODO ...
return SDCARD_ERROR(result);
}
strcpy_P(buf, PSTR(LOG_PATH "/Twister.bin")); // TODO Not PSTR everywhere ...
/* eeLoadModelName(i_fileSrc, &buf[sizeof(LOG_PATH)+1]);
uint8_t i = sizeof(LOG_PATH)+1;
while (i<sizeof(LOG_PATH)+11 && buf[i]) {
buf[i] = idx2char(buf[i]);
i++;
strcpy_P(buf, PSTR(MODELS_PATH "/")); // TODO Not PSTR everywhere ...
eeLoadModelName(i_fileSrc, &buf[sizeof(MODELS_PATH)]);
buf[sizeof(MODELS_PATH)+sizeof(g_model.name)] = '\0';
uint8_t i = sizeof(MODELS_PATH)+sizeof(g_model.name)-1;
uint8_t len = 0;
while (i>sizeof(MODELS_PATH)-1) {
if (!len && buf[i])
len = i+1;
if (len)
buf[i] = idx2char(buf[i]);
i--;
}
strcpy_P(&buf[i], PSTR(".bin")); // TODO Not PSTR everywhere ...
*/
strcpy_P(&buf[len], PSTR(".bin")); // TODO Not PSTR everywhere ...
result = f_open(&archiveFile, buf, FA_OPEN_ALWAYS | FA_WRITE);
if (result != FR_OK) {
return SDCARD_ERROR(result);
}
result = f_write(&archiveFile, &g_eeGeneral.myVers, 1, &written);
if (result != FR_OK) {
return SDCARD_ERROR(result);
}
EFile theFile2;
theFile2.openRd(FILE_MODEL(i_fileSrc));
uint8_t len;
while ((len=theFile2.read((uint8_t *)buf, 15)))
{
for (uint8_t i=0; i<len; i++)
f_putc(buf[i], &g_oLogFile);
while ((len=theFile2.read((uint8_t *)buf, 15))) {
result = f_write(&archiveFile, (uint8_t *)buf, len, &written);
if (result != FR_OK) {
return SDCARD_ERROR(result);
}
}
f_close(&archiveFile);