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/gfx_light_dark/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/gfx_light_dark/src')
| -rw-r--r-- | frontends/calculator/CEdev/examples/gfx_light_dark/src/main.c | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/frontends/calculator/CEdev/examples/gfx_light_dark/src/main.c b/frontends/calculator/CEdev/examples/gfx_light_dark/src/main.c new file mode 100644 index 0000000..d4c0a06 --- /dev/null +++ b/frontends/calculator/CEdev/examples/gfx_light_dark/src/main.c @@ -0,0 +1,59 @@ +#include <stdbool.h> +#include <stddef.h> +#include <stdint.h> +#include <tice.h> + +#include <math.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +#include <graphx.h> + +#define color gfx_RGBTo1555(34, 55, 89) + +void main(void) { + uint8_t i = 0; + + /* Initialize the 8bpp graphics */ + gfx_Begin(); + + /* For i in 0..255 */ + do { + + /* Fade out to black */ + gfx_palette[0] = gfx_Darken(color, i); + /* Fade in from black */ + gfx_palette[1] = gfx_Darken(color, ~i); + /* Fade in from white */ + gfx_palette[3] = gfx_Lighten(color, ~i); + /* Fade out to white */ + gfx_palette[2] = gfx_Lighten(color, i); + + /* Fade out to black */ + gfx_SetColor(0); + gfx_FillRectangle_NoClip(0, 0, 160, 120); + /* Fade in from black */ + gfx_SetColor(1); + gfx_FillRectangle_NoClip(160, 0, 160, 120); + /* Fade in from white */ + gfx_SetColor(2); + gfx_FillRectangle_NoClip(0, 120, 160, 120); + /* Fade out to white */ + gfx_SetColor(3); + gfx_FillRectangle_NoClip(160, 120, 160, 120); + + /* Wait for a keypress at the start of each quarter of the fade */ + if (!(i & 0x3f)) { + while (!os_GetCSC()); + } + + /* Loop until i is 0 again because of 8 bit range */ + } while (++i); + + /* Wait for a keypress */ + while (!os_GetCSC()); + + /* Usual cleanup */ + gfx_End(); +} |