diff options
| author | 2019-04-10 15:14:00 -0400 | |
|---|---|---|
| committer | 2019-04-10 15:14:00 -0400 | |
| commit | 60699af63f92f43cc4b4b9e3050fcdd2a8468281 (patch) | |
| tree | 20a18af2774daa43ae7f4352dd032a24f7e06075 /frontends/calculator/CEdev/examples/keypad_arrows/src | |
| parent | 4527bc20241068731c62101d0467d416119ec0c4 (diff) | |
| download | cetris-60699af63f92f43cc4b4b9e3050fcdd2a8468281.tar.gz cetris-60699af63f92f43cc4b4b9e3050fcdd2a8468281.tar.bz2 cetris-60699af63f92f43cc4b4b9e3050fcdd2a8468281.zip | |
add opengl fronend, remove sdl frontend, refactor build system
Diffstat (limited to 'frontends/calculator/CEdev/examples/keypad_arrows/src')
| -rw-r--r-- | frontends/calculator/CEdev/examples/keypad_arrows/src/main.c | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/frontends/calculator/CEdev/examples/keypad_arrows/src/main.c b/frontends/calculator/CEdev/examples/keypad_arrows/src/main.c new file mode 100644 index 0000000..c4f7adf --- /dev/null +++ b/frontends/calculator/CEdev/examples/keypad_arrows/src/main.c @@ -0,0 +1,49 @@ +#include <stdbool.h> +#include <stddef.h> +#include <stdint.h> +#include <tice.h> + +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +#include <keypadc.h> + +/* Function Prototypes */ +void fill_screen(uint8_t color); + +void main(void) { + /* Key variable */ + kb_key_t key; + + /* Loop until 2nd is pressed */ + do { + /* Update kb_Data */ + kb_Scan(); + + /* Load group 7 registers */ + key = kb_Data[7]; + + switch (key) { + case kb_Down: /* Change screen color to black */ + fill_screen(0x00); + break; + case kb_Right: /* Change screen color to red */ + fill_screen(0xE0); + break; + case kb_Up: /* Change screen color to white */ + fill_screen(0xFF); + break; + case kb_Left: /* Change screen color to a different red */ + fill_screen(0xC0); + break; + default: + break; + } + } while (kb_Data[1] != kb_2nd); +} + +/* Simple way to fill the screen with a given color */ +void fill_screen(uint8_t color) { + memset(lcd_Ram, color, LCD_SIZE); +} |