Add game reset

This commit is contained in:
hkz 2025-07-16 22:09:03 +02:00
commit 1e66023db8
3 changed files with 14 additions and 0 deletions

View file

@ -19,6 +19,16 @@ void swap_grids(void) {
back_grid = temp;
}
void reset_game(void) {
// Clear the back and front grid
memset(back_grid, 0, GRID_SIDE * GRID_SIDE);
memset(front_grid, 0, GRID_SIDE * GRID_SIDE);
// Then add two random tiles
add_random_tile();
add_random_tile();
}
uint8_t *get_front_grid(void) {
return front_grid;
}

View file

@ -12,6 +12,7 @@ typedef enum {
RIGHT
} step_direction;
void reset_game(void);
uint8_t *get_front_grid(void);
uint8_t *step_game(step_direction dir);
uint8_t add_random_tile(void);

View file

@ -7,6 +7,7 @@
#include "mem_registers.h"
#include "mem_map.h"
#include "input.h"
#include "game_logic.h"
void __low_level_init(void);
@ -26,6 +27,8 @@ void __low_level_init(void) {
__task int main(void) {
key k;
reset_game();
while(1){
lfsr_update();
k = read_kb();