mirror of
https://github.com/Next-Flip/Momentum-Firmware.git
synced 2026-05-15 00:28:36 -07:00
Move setting files to sd card
This commit is contained in:
@@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
#define CALIBRATION_DATA_VER (1)
|
#define CALIBRATION_DATA_VER (1)
|
||||||
#define CALIBRATION_DATA_FILE_NAME ".calibration.data"
|
#define CALIBRATION_DATA_FILE_NAME ".calibration.data"
|
||||||
#define CALIBRATION_DATA_PATH INT_PATH(CALIBRATION_DATA_FILE_NAME)
|
#define CALIBRATION_DATA_PATH EXT_PATH(CALIBRATION_DATA_FILE_NAME)
|
||||||
#define CALIBRATION_DATA_MAGIC (0x23)
|
#define CALIBRATION_DATA_MAGIC (0x23)
|
||||||
|
|
||||||
#define CALIBRATION_DATA_SAVE(x) \
|
#define CALIBRATION_DATA_SAVE(x) \
|
||||||
|
|||||||
@@ -126,6 +126,10 @@ Bt* bt_alloc() {
|
|||||||
bt_settings_save(&bt->bt_settings);
|
bt_settings_save(&bt->bt_settings);
|
||||||
}
|
}
|
||||||
// Keys storage
|
// Keys storage
|
||||||
|
Storage* storage = furi_record_open(RECORD_STORAGE);
|
||||||
|
storage_common_copy(storage, BT_KEYS_STORAGE_OLD_PATH, BT_KEYS_STORAGE_PATH);
|
||||||
|
storage_common_remove(storage, BT_KEYS_STORAGE_OLD_PATH);
|
||||||
|
furi_record_close(RECORD_STORAGE);
|
||||||
bt->keys_storage = bt_keys_storage_alloc(BT_KEYS_STORAGE_PATH);
|
bt->keys_storage = bt_keys_storage_alloc(BT_KEYS_STORAGE_PATH);
|
||||||
// Alloc queue
|
// Alloc queue
|
||||||
bt->message_queue = furi_message_queue_alloc(8, sizeof(BtMessage));
|
bt->message_queue = furi_message_queue_alloc(8, sizeof(BtMessage));
|
||||||
|
|||||||
@@ -20,7 +20,8 @@
|
|||||||
|
|
||||||
#include "bt_keys_filename.h"
|
#include "bt_keys_filename.h"
|
||||||
|
|
||||||
#define BT_KEYS_STORAGE_PATH INT_PATH(BT_KEYS_STORAGE_FILE_NAME)
|
#define BT_KEYS_STORAGE_OLD_PATH INT_PATH(BT_KEYS_STORAGE_FILE_NAME)
|
||||||
|
#define BT_KEYS_STORAGE_PATH EXT_PATH(BT_KEYS_STORAGE_FILE_NAME)
|
||||||
|
|
||||||
#define BT_API_UNLOCK_EVENT (1UL << 0)
|
#define BT_API_UNLOCK_EVENT (1UL << 0)
|
||||||
|
|
||||||
|
|||||||
@@ -4,15 +4,27 @@
|
|||||||
#include <lib/toolbox/saved_struct.h>
|
#include <lib/toolbox/saved_struct.h>
|
||||||
#include <storage/storage.h>
|
#include <storage/storage.h>
|
||||||
|
|
||||||
#define BT_SETTINGS_PATH INT_PATH(BT_SETTINGS_FILE_NAME)
|
#define BT_SETTINGS_OLD_PATH INT_PATH(BT_SETTINGS_FILE_NAME)
|
||||||
|
#define BT_SETTINGS_PATH EXT_PATH(BT_SETTINGS_FILE_NAME)
|
||||||
#define BT_SETTINGS_VERSION (0)
|
#define BT_SETTINGS_VERSION (0)
|
||||||
#define BT_SETTINGS_MAGIC (0x19)
|
#define BT_SETTINGS_MAGIC (0x19)
|
||||||
|
|
||||||
bool bt_settings_load(BtSettings* bt_settings) {
|
bool bt_settings_load(BtSettings* bt_settings) {
|
||||||
furi_assert(bt_settings);
|
furi_assert(bt_settings);
|
||||||
|
|
||||||
return saved_struct_load(
|
bool ret = saved_struct_load(
|
||||||
BT_SETTINGS_PATH, bt_settings, sizeof(BtSettings), BT_SETTINGS_MAGIC, BT_SETTINGS_VERSION);
|
BT_SETTINGS_PATH, bt_settings, sizeof(BtSettings), BT_SETTINGS_MAGIC, BT_SETTINGS_VERSION);
|
||||||
|
|
||||||
|
if(!ret) {
|
||||||
|
Storage* storage = furi_record_open(RECORD_STORAGE);
|
||||||
|
storage_common_copy(storage, BT_SETTINGS_OLD_PATH, BT_SETTINGS_PATH);
|
||||||
|
storage_common_remove(storage, BT_SETTINGS_OLD_PATH);
|
||||||
|
furi_record_close(RECORD_STORAGE);
|
||||||
|
ret = saved_struct_load(
|
||||||
|
BT_SETTINGS_PATH, bt_settings, sizeof(BtSettings), BT_SETTINGS_MAGIC, BT_SETTINGS_VERSION);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool bt_settings_save(BtSettings* bt_settings) {
|
bool bt_settings_save(BtSettings* bt_settings) {
|
||||||
|
|||||||
22
applications/services/desktop/desktop_settings.c
Normal file
22
applications/services/desktop/desktop_settings.c
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
#include "desktop_settings.h"
|
||||||
|
|
||||||
|
bool DESKTOP_SETTINGS_SAVE(DesktopSettings* x) {
|
||||||
|
return saved_struct_save(
|
||||||
|
DESKTOP_SETTINGS_PATH, x, sizeof(DesktopSettings), DESKTOP_SETTINGS_MAGIC, DESKTOP_SETTINGS_VER);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool DESKTOP_SETTINGS_LOAD(DesktopSettings* x) {
|
||||||
|
bool ret = saved_struct_load(
|
||||||
|
DESKTOP_SETTINGS_PATH, x, sizeof(DesktopSettings), DESKTOP_SETTINGS_MAGIC, DESKTOP_SETTINGS_VER);
|
||||||
|
|
||||||
|
if(!ret) {
|
||||||
|
Storage* storage = furi_record_open(RECORD_STORAGE);
|
||||||
|
storage_common_copy(storage, DESKTOP_SETTINGS_OLD_PATH, DESKTOP_SETTINGS_PATH);
|
||||||
|
storage_common_remove(storage, DESKTOP_SETTINGS_OLD_PATH);
|
||||||
|
furi_record_close(RECORD_STORAGE);
|
||||||
|
ret = saved_struct_load(
|
||||||
|
DESKTOP_SETTINGS_PATH, x, sizeof(DesktopSettings), DESKTOP_SETTINGS_MAGIC, DESKTOP_SETTINGS_VER);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
@@ -11,28 +11,13 @@
|
|||||||
|
|
||||||
#define DESKTOP_SETTINGS_VER (7)
|
#define DESKTOP_SETTINGS_VER (7)
|
||||||
|
|
||||||
#define DESKTOP_SETTINGS_PATH INT_PATH(DESKTOP_SETTINGS_FILE_NAME)
|
#define DESKTOP_SETTINGS_OLD_PATH INT_PATH(DESKTOP_SETTINGS_FILE_NAME)
|
||||||
|
#define DESKTOP_SETTINGS_PATH EXT_PATH(DESKTOP_SETTINGS_FILE_NAME)
|
||||||
#define DESKTOP_SETTINGS_MAGIC (0x17)
|
#define DESKTOP_SETTINGS_MAGIC (0x17)
|
||||||
#define PIN_MAX_LENGTH 12
|
#define PIN_MAX_LENGTH 12
|
||||||
|
|
||||||
#define DESKTOP_SETTINGS_RUN_PIN_SETUP_ARG "run_pin_setup"
|
#define DESKTOP_SETTINGS_RUN_PIN_SETUP_ARG "run_pin_setup"
|
||||||
|
|
||||||
#define DESKTOP_SETTINGS_SAVE(x) \
|
|
||||||
saved_struct_save( \
|
|
||||||
DESKTOP_SETTINGS_PATH, \
|
|
||||||
(x), \
|
|
||||||
sizeof(DesktopSettings), \
|
|
||||||
DESKTOP_SETTINGS_MAGIC, \
|
|
||||||
DESKTOP_SETTINGS_VER)
|
|
||||||
|
|
||||||
#define DESKTOP_SETTINGS_LOAD(x) \
|
|
||||||
saved_struct_load( \
|
|
||||||
DESKTOP_SETTINGS_PATH, \
|
|
||||||
(x), \
|
|
||||||
sizeof(DesktopSettings), \
|
|
||||||
DESKTOP_SETTINGS_MAGIC, \
|
|
||||||
DESKTOP_SETTINGS_VER)
|
|
||||||
|
|
||||||
#define MAX_PIN_SIZE 10
|
#define MAX_PIN_SIZE 10
|
||||||
#define MIN_PIN_SIZE 4
|
#define MIN_PIN_SIZE 4
|
||||||
#define MAX_APP_LENGTH 128
|
#define MAX_APP_LENGTH 128
|
||||||
@@ -55,3 +40,7 @@ typedef struct {
|
|||||||
uint32_t auto_lock_delay_ms;
|
uint32_t auto_lock_delay_ms;
|
||||||
bool auto_lock_with_pin;
|
bool auto_lock_with_pin;
|
||||||
} DesktopSettings;
|
} DesktopSettings;
|
||||||
|
|
||||||
|
bool DESKTOP_SETTINGS_SAVE(DesktopSettings* x);
|
||||||
|
|
||||||
|
bool DESKTOP_SETTINGS_LOAD(DesktopSettings* x);
|
||||||
|
|||||||
@@ -11,7 +11,8 @@
|
|||||||
|
|
||||||
#define TAG "DolphinState"
|
#define TAG "DolphinState"
|
||||||
|
|
||||||
#define DOLPHIN_STATE_PATH INT_PATH(DOLPHIN_STATE_FILE_NAME)
|
#define DOLPHIN_STATE_OLD_PATH INT_PATH(DOLPHIN_STATE_FILE_NAME)
|
||||||
|
#define DOLPHIN_STATE_PATH EXT_PATH(DOLPHIN_STATE_FILE_NAME)
|
||||||
#define DOLPHIN_STATE_HEADER_MAGIC 0xD0
|
#define DOLPHIN_STATE_HEADER_MAGIC 0xD0
|
||||||
#define DOLPHIN_STATE_HEADER_VERSION 0x01
|
#define DOLPHIN_STATE_HEADER_VERSION 0x01
|
||||||
|
|
||||||
@@ -61,6 +62,19 @@ bool dolphin_state_load(DolphinState* dolphin_state) {
|
|||||||
DOLPHIN_STATE_HEADER_MAGIC,
|
DOLPHIN_STATE_HEADER_MAGIC,
|
||||||
DOLPHIN_STATE_HEADER_VERSION);
|
DOLPHIN_STATE_HEADER_VERSION);
|
||||||
|
|
||||||
|
if(!success) {
|
||||||
|
Storage* storage = furi_record_open(RECORD_STORAGE);
|
||||||
|
storage_common_copy(storage, DOLPHIN_STATE_OLD_PATH, DOLPHIN_STATE_PATH);
|
||||||
|
storage_common_remove(storage, DOLPHIN_STATE_OLD_PATH);
|
||||||
|
furi_record_close(RECORD_STORAGE);
|
||||||
|
success = saved_struct_load(
|
||||||
|
DOLPHIN_STATE_PATH,
|
||||||
|
&dolphin_state->data,
|
||||||
|
sizeof(DolphinStoreData),
|
||||||
|
DOLPHIN_STATE_HEADER_MAGIC,
|
||||||
|
DOLPHIN_STATE_HEADER_VERSION);
|
||||||
|
}
|
||||||
|
|
||||||
if(success) {
|
if(success) {
|
||||||
if((dolphin_state->data.butthurt > BUTTHURT_MAX) ||
|
if((dolphin_state->data.butthurt > BUTTHURT_MAX) ||
|
||||||
(dolphin_state->data.butthurt < BUTTHURT_MIN)) {
|
(dolphin_state->data.butthurt < BUTTHURT_MIN)) {
|
||||||
|
|||||||
22
applications/services/power/power_settings.c
Normal file
22
applications/services/power/power_settings.c
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
#include "power_settings.h"
|
||||||
|
|
||||||
|
bool SAVE_POWER_SETTINGS(uint32_t* x) {
|
||||||
|
return saved_struct_save(
|
||||||
|
POWER_SETTINGS_PATH, x, sizeof(uint32_t), POWER_SETTINGS_MAGIC, POWER_SETTINGS_VER);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool LOAD_POWER_SETTINGS(uint32_t* x) {
|
||||||
|
bool ret = saved_struct_load(
|
||||||
|
POWER_SETTINGS_PATH, x, sizeof(uint32_t), POWER_SETTINGS_MAGIC, POWER_SETTINGS_VER);
|
||||||
|
|
||||||
|
if(!ret) {
|
||||||
|
Storage* storage = furi_record_open(RECORD_STORAGE);
|
||||||
|
storage_common_copy(storage, POWER_SETTINGS_OLD_PATH, POWER_SETTINGS_PATH);
|
||||||
|
storage_common_remove(storage, POWER_SETTINGS_OLD_PATH);
|
||||||
|
furi_record_close(RECORD_STORAGE);
|
||||||
|
ret = saved_struct_load(
|
||||||
|
POWER_SETTINGS_PATH, x, sizeof(uint32_t), POWER_SETTINGS_MAGIC, POWER_SETTINGS_VER);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
@@ -4,13 +4,10 @@
|
|||||||
|
|
||||||
#define POWER_SETTINGS_VER (1)
|
#define POWER_SETTINGS_VER (1)
|
||||||
|
|
||||||
#define POWER_SETTINGS_PATH INT_PATH(POWER_SETTINGS_FILE_NAME)
|
#define POWER_SETTINGS_OLD_PATH INT_PATH(POWER_SETTINGS_FILE_NAME)
|
||||||
|
#define POWER_SETTINGS_PATH EXT_PATH(POWER_SETTINGS_FILE_NAME)
|
||||||
#define POWER_SETTINGS_MAGIC (0x21)
|
#define POWER_SETTINGS_MAGIC (0x21)
|
||||||
|
|
||||||
#define SAVE_POWER_SETTINGS(x) \
|
bool SAVE_POWER_SETTINGS(uint32_t* x);
|
||||||
saved_struct_save( \
|
|
||||||
POWER_SETTINGS_PATH, (x), sizeof(uint32_t), POWER_SETTINGS_MAGIC, POWER_SETTINGS_VER)
|
|
||||||
|
|
||||||
#define LOAD_POWER_SETTINGS(x) \
|
bool LOAD_POWER_SETTINGS(uint32_t* x);
|
||||||
saved_struct_load( \
|
|
||||||
POWER_SETTINGS_PATH, (x), sizeof(uint32_t), POWER_SETTINGS_MAGIC, POWER_SETTINGS_VER)
|
|
||||||
|
|||||||
Reference in New Issue
Block a user