You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #include <stdint.h>
  2. #include <stdbool.h>
  3. #include <avr/eeprom.h>
  4. #include "eeconfig.h"
  5. #include "keymap_ex.h"
  6. void eeconfig_init(void)
  7. {
  8. eeprom_write_word(EECONFIG_MAGIC, EECONFIG_MAGIC_NUMBER);
  9. eeprom_write_byte(EECONFIG_DEBUG, 0);
  10. eeprom_write_byte(EECONFIG_DEFAULT_LAYER, 0);
  11. eeprom_write_byte(EECONFIG_KEYMAP, 0);
  12. eeprom_write_byte(EECONFIG_MOUSEKEY_ACCEL, 0);
  13. #ifdef BACKLIGHT_ENABLE
  14. eeprom_write_byte(EECONFIG_BACKLIGHT, 0);
  15. #endif
  16. #ifdef KEYMAP_EX_ENABLE
  17. keymap_ex_init();
  18. #endif
  19. }
  20. void eeconfig_enable(void)
  21. {
  22. eeprom_write_word(EECONFIG_MAGIC, EECONFIG_MAGIC_NUMBER);
  23. }
  24. void eeconfig_disable(void)
  25. {
  26. #ifdef KEYMAP_EX_ENABLE
  27. keymap_ex_disable();
  28. #endif
  29. eeprom_write_word(EECONFIG_MAGIC, 0xFFFF);
  30. }
  31. bool eeconfig_is_enabled(void)
  32. {
  33. return (eeprom_read_word(EECONFIG_MAGIC) == EECONFIG_MAGIC_NUMBER);
  34. }
  35. uint8_t eeconfig_read_debug(void) { return eeprom_read_byte(EECONFIG_DEBUG); }
  36. void eeconfig_write_debug(uint8_t val) { eeprom_write_byte(EECONFIG_DEBUG, val); }
  37. uint8_t eeconfig_read_default_layer(void) { return eeprom_read_byte(EECONFIG_DEFAULT_LAYER); }
  38. void eeconfig_write_default_layer(uint8_t val) { eeprom_write_byte(EECONFIG_DEFAULT_LAYER, val); }
  39. uint8_t eeconfig_read_keymap(void) { return eeprom_read_byte(EECONFIG_KEYMAP); }
  40. void eeconfig_write_keymap(uint8_t val) { eeprom_write_byte(EECONFIG_KEYMAP, val); }
  41. #ifdef BACKLIGHT_ENABLE
  42. uint8_t eeconfig_read_backlight(void) { return eeprom_read_byte(EECONFIG_BACKLIGHT); }
  43. void eeconfig_write_backlight(uint8_t val) { eeprom_write_byte(EECONFIG_BACKLIGHT, val); }
  44. #endif