53 #define PROGRAM_BANK_COUNT 12 56 #define PROGRAM_COUNT 120 59 #define PROGRAMS_PER_BANK (PROGRAM_COUNT / PROGRAM_BANK_COUNT) bool import_bank(const uint8_t number, const char *data)
Imports and stores a program bank given as a hex-string.
Definition: program.c:125
uint8_t number
Program number [0..PROGRAM_COUNT-1].
Definition: program.h:66
Data structure for program information.
Definition: program.h:64
void enter_program(uint8_t number)
Loads and executes the specified program.
Definition: program.c:112
static uint32_t program_initializer
Initialization value for empty programs.
Definition: program.c:47
char * export_bank(const uint8_t number)
Exports a program bank.
Definition: program.c:96
uint32_t read_program_data(uint8_t number)
Reads a program data word from the specified position in memory.
Definition: program.c:160
void write_program(uint8_t number, uint32_t data)
Stores a given program data word in the specified position in memory.
Definition: program.c:190
void wipe_current_program(void)
Reinitializes the currently loaded program.
Definition: program.c:184
void wipe_current_bank(void)
Reinitializes all programs in the current bank.
Definition: program.c:171
uint32_t data
The application specific program data as a 32-bit word.
Definition: program.h:67
void copy_current_bank_to(uint8_t target_bank)
Copies all programs in the current bank to another bank.
Definition: program.c:61
void update_current_program(uint32_t program_data)
Updates and stores the current program.
Definition: program.c:165
void copy_current_program_to(uint8_t target_program)
Copies the current program to the specified position in memory.
Definition: program.c:90
void init_program_module(uint32_t program_initializer, void(*execute_program_callback)(uint32_t program_data))
Initializes the program storage module.
Definition: program.c:151
Definition: switcher.c:45