diff --git a/olive.c b/olive.c index c452afc..76ccb5a 100644 --- a/olive.c +++ b/olive.c @@ -95,7 +95,14 @@ static char olivec_default_glyphs[128][OLIVEC_DEFAULT_FONT_HEIGHT][OLIVEC_DEFAUL {0, 1, 0, 0, 0}, {0, 1, 0, 0, 0}, }, - ['g'] = {0}, + ['g'] = { + {0, 1, 1, 1, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {0, 1, 1, 1, 1}, + {0, 0, 0, 0, 1}, + {1, 1, 1, 1, 0}, + }, ['h'] = { {1, 0, 0, 0, 0}, {1, 1, 1, 0, 0}, @@ -112,7 +119,14 @@ static char olivec_default_glyphs[128][OLIVEC_DEFAULT_FONT_HEIGHT][OLIVEC_DEFAUL {0, 0, 1, 0, 0}, {0, 0, 1, 0, 0}, }, - ['j'] = {0}, + ['j'] = { + {0, 0, 0, 1, 0}, + {0, 0, 0, 0, 0}, + {0, 0, 0, 1, 0}, + {0, 0, 0, 1, 0}, + {1, 0, 0, 1, 0}, + {0, 1, 1, 0, 0}, + }, ['k'] = { {0, 1, 0, 0, 0}, {0, 1, 0, 0, 0}, @@ -129,8 +143,22 @@ static char olivec_default_glyphs[128][OLIVEC_DEFAULT_FONT_HEIGHT][OLIVEC_DEFAUL {0, 0, 1, 0, 0}, {0, 1, 1, 1, 0}, }, - ['m'] = {0}, - ['n'] = {0}, + ['m'] = { + {1, 1, 0, 1, 0}, + {1, 0, 1, 0, 1}, + {1, 0, 1, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + }, + ['n'] = { + {1, 1, 1, 1, 0}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + }, ['o'] = { {0, 0, 0, 0, 0}, {0, 1, 1, 0, 0}, @@ -147,7 +175,14 @@ static char olivec_default_glyphs[128][OLIVEC_DEFAULT_FONT_HEIGHT][OLIVEC_DEFAUL {1, 0, 0, 0, 0}, {1, 0, 0, 0, 0}, }, - ['q'] = {0}, + ['q'] = { + {0, 1, 1, 0, 1}, + {1, 0, 0, 1, 1}, + {1, 0, 0, 0, 1}, + {0, 1, 1, 1, 1}, + {0, 0, 0, 0, 1}, + {0, 0, 0, 0, 1}, + }, ['r'] = { {0, 0, 0, 0, 0}, {1, 0, 1, 1, 0}, @@ -156,10 +191,38 @@ static char olivec_default_glyphs[128][OLIVEC_DEFAULT_FONT_HEIGHT][OLIVEC_DEFAUL {1, 0, 0, 0, 0}, {1, 0, 0, 0, 0}, }, - ['s'] = {0}, - ['t'] = {0}, - ['u'] = {0}, - ['v'] = {0}, + ['s'] = { + {0, 0, 0, 0, 0}, + {0, 1, 1, 1, 1}, + {1, 0, 0, 0, 0}, + {0, 1, 1, 1, 0}, + {0, 0, 0, 0, 1}, + {1, 1, 1, 1, 0}, + }, + ['t'] = { + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 1, 1, 1, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 1, 0}, + }, + ['u'] = { + {0, 0, 0, 0, 0}, + {0, 1, 0, 0, 1}, + {0, 1, 0, 0, 1}, + {0, 1, 0, 0, 1}, + {0, 1, 0, 0, 1}, + {0, 0, 1, 1, 1}, + }, + ['v'] = { + {0, 0, 0, 0, 0}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {0, 1, 0, 1, 0}, + {0, 0, 1, 0, 0}, + }, ['w'] = { {0, 0, 0, 0, 0}, {1, 0, 0, 0, 1}, @@ -168,36 +231,240 @@ static char olivec_default_glyphs[128][OLIVEC_DEFAULT_FONT_HEIGHT][OLIVEC_DEFAUL {1, 0, 1, 0, 1}, {0, 1, 1, 1, 1}, }, - ['x'] = {0}, - ['y'] = {0}, - ['z'] = {0}, - - ['A'] = {0}, - ['B'] = {0}, - ['C'] = {0}, - ['D'] = {0}, - ['E'] = {0}, - ['F'] = {0}, - ['G'] = {0}, - ['H'] = {0}, - ['I'] = {0}, - ['J'] = {0}, - ['K'] = {0}, - ['L'] = {0}, - ['M'] = {0}, - ['N'] = {0}, - ['O'] = {0}, - ['P'] = {0}, - ['Q'] = {0}, - ['R'] = {0}, - ['S'] = {0}, - ['T'] = {0}, - ['U'] = {0}, - ['V'] = {0}, - ['W'] = {0}, - ['X'] = {0}, - ['Y'] = {0}, - ['Z'] = {0}, + ['x'] = { + {0, 0, 0, 0, 0}, + {1, 0, 0, 0, 1}, + {0, 1, 0, 1, 0}, + {0, 0, 1, 0, 0}, + {0, 1, 0, 1, 0}, + {1, 0, 0, 0, 1}, + }, + ['y'] = { + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {0, 1, 1, 1, 1}, + {0, 0, 0, 0, 1}, + {1, 1, 1, 1, 0}, + }, + ['z'] = { + {0, 0, 0, 0, 0}, + {1, 1, 1, 1, 1}, + {0, 0, 0, 1, 0}, + {0, 0, 1, 0, 0}, + {0, 1, 0, 0, 0}, + {1, 1, 1, 1, 1}, + }, + + + ['A'] = { + {0, 1, 1, 1, 0}, + {1, 0, 0, 0, 1}, + {1, 1, 1, 1, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + }, + ['B'] = { + {1, 1, 1, 1, 0}, + {1, 0, 0, 0, 1}, + {1, 1, 1, 1, 0}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 1, 1, 1, 0}, + }, + ['C'] = { + {0, 1, 1, 1, 0}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 1}, + {0, 1, 1, 1, 0}, + }, + ['D'] = { + {1, 1, 1, 1, 0}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 1, 1, 1, 0}, + }, + ['E'] = { + {1, 1, 1, 1, 1}, + {1, 0, 0, 0, 0}, + {1, 1, 1, 1, 0}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {1, 1, 1, 1, 1}, + }, + ['F'] = { + {1, 1, 1, 1, 1}, + {1, 0, 0, 0, 0}, + {1, 1, 1, 1, 0}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + }, + ['G'] = { + {0, 1, 1, 1, 1}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 1, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {0, 1, 1, 1, 0}, + }, + ['H'] = { + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 1, 1, 1, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + }, + ['I'] = { + {0, 1, 1, 1, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 1, 1, 1, 0}, + }, + ['J'] = { + {0, 0, 0, 1, 0}, + {0, 0, 0, 1, 0}, + {0, 0, 0, 1, 0}, + {0, 0, 0, 1, 0}, + {1, 0, 0, 1, 0}, + {0, 1, 1, 0, 0}, + }, + ['K'] = { + {1, 0, 0, 0, 1}, + {1, 0, 0, 1, 0}, + {1, 1, 1, 0, 0}, + {1, 0, 0, 1, 0}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + }, + ['L'] = { + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {1, 1, 1, 1, 0}, + }, + ['M'] = { + {1, 0, 0, 0, 1}, + {1, 1, 0, 1, 1}, + {1, 0, 1, 0, 1}, + {1, 0, 1, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + }, + ['N'] = { + {1, 0, 0, 0, 1}, + {1, 1, 0, 0, 1}, + {1, 0, 1, 0, 1}, + {1, 0, 0, 1, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + }, + ['O'] = { + {0, 1, 1, 1, 0}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {0, 1, 1, 1, 0}, + }, + ['P'] = { + {1, 1, 1, 1, 0}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 1, 1, 1, 0}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + }, + ['Q'] = { + {0, 1, 1, 1, 0}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 1, 0, 1}, + {1, 0, 0, 1, 0}, + {0, 1, 1, 0, 1}, + }, + ['R'] = { + {1, 1, 1, 1, 0}, + {1, 0, 0, 0, 1}, + {1, 1, 1, 1, 0}, + {1, 0, 1, 0, 0}, + {1, 0, 0, 1, 0}, + {1, 0, 0, 0, 1}, + }, + ['S'] = { + {0, 1, 1, 1, 1}, + {1, 0, 0, 0, 0}, + {0, 1, 1, 1, 0}, + {0, 0, 0, 0, 1}, + {0, 0, 0, 0, 1}, + {1, 1, 1, 1, 0}, + }, + ['T'] = { + {1, 1, 1, 1, 1}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + }, + ['U'] = { + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {0, 1, 1, 1, 0}, + }, + ['V'] = { + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {0, 1, 0, 1, 0}, + {0, 1, 0, 1, 0}, + {0, 0, 1, 0, 0}, + }, + ['W'] = { + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 1, 0, 1}, + {1, 0, 1, 0, 1}, + {0, 1, 0, 1, 0}, + }, + ['X'] = { + {1, 0, 0, 0, 1}, + {0, 1, 0, 1, 0}, + {0, 0, 1, 0, 0}, + {0, 1, 0, 1, 0}, + {1, 0, 0, 0, 1}, + {1, 0, 0, 0, 1}, + }, + ['Y'] = { + {1, 0, 0, 0, 1}, + {0, 1, 0, 1, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + }, + ['Z'] = { + {1, 1, 1, 1, 1}, + {0, 0, 0, 0, 1}, + {0, 0, 0, 1, 0}, + {0, 0, 1, 0, 0}, + {0, 1, 0, 0, 0}, + {1, 1, 1, 1, 1}, + }, ['0'] = { {0, 1, 1, 0, 0}, @@ -289,7 +556,6 @@ static char olivec_default_glyphs[128][OLIVEC_DEFAULT_FONT_HEIGHT][OLIVEC_DEFAUL {0, 0, 0, 1, 0}, {0, 0, 1, 0, 0}, }, - ['.'] = { {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, @@ -306,6 +572,151 @@ static char olivec_default_glyphs[128][OLIVEC_DEFAULT_FONT_HEIGHT][OLIVEC_DEFAUL {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, }, + [':'] = { + {0, 0, 0, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 0, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + }, + [';'] = { + {0, 0, 0, 0, 0}, + {0, 0, 0, 1, 0}, + {0, 0, 0, 1, 0}, + {0, 0, 0, 0, 0}, + {0, 0, 0, 1, 0}, + {0, 0, 1, 0, 0}, + }, + ['['] = { + {1, 1, 1, 0, 0}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {1, 1, 1, 0, 0}, + }, + [']'] = { + {0, 0, 1, 1, 1}, + {0, 0, 0, 0, 1}, + {0, 0, 0, 0, 1}, + {0, 0, 0, 0, 1}, + {0, 0, 0, 0, 1}, + {0, 0, 1, 1, 1}, + }, + ['('] = { + {0, 1, 1, 0, 0}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {0, 1, 1, 0, 0}, + }, + [')'] = { + {0, 0, 1, 1, 0}, + {0, 0, 0, 0, 1}, + {0, 0, 0, 0, 1}, + {0, 0, 0, 0, 1}, + {0, 0, 0, 0, 1}, + {0, 0, 1, 1, 0}, + }, + ['{'] = { + {0, 1, 1, 0, 0}, + {0, 1, 0, 0, 0}, + {0, 1, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {0, 1, 0, 0, 0}, + {0, 1, 1, 0, 0}, + }, + ['}'] = { + {0, 0, 1, 1, 0}, + {0, 0, 0, 1, 0}, + {0, 0, 0, 1, 0}, + {0, 0, 0, 0, 1}, + {0, 0, 0, 1, 0}, + {0, 0, 1, 1, 0}, + }, + ['$'] = { + {0, 0, 1, 0, 0}, + {1, 1, 1, 1, 1}, + {0, 1, 0, 0, 0}, + {0, 0, 1, 0, 0}, + {1, 1, 1, 1, 1}, + {0, 0, 1, 0, 0}, + }, + ['#'] = { + {0, 0, 0, 0, 0}, + {0, 1, 0, 1, 0}, + {1, 1, 1, 1, 1}, + {0, 1, 0, 1, 0}, + {1, 1, 1, 1, 1}, + {0, 1, 0, 1, 0}, + }, + ['@'] = { + {1, 1, 1, 1, 1}, + {1, 0, 0, 0, 1}, + {1, 0, 1, 1, 1}, + {1, 0, 1, 1, 1}, + {1, 0, 0, 0, 0}, + {1, 1, 1, 1, 0}, + }, + ['!'] = { + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 0, 0, 0}, + {0, 0, 1, 0, 0}, + }, + ['?'] = { + {0, 1, 1, 1, 0}, + {0, 1, 0, 1, 0}, + {0, 0, 0, 1, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 0, 0, 0}, + {0, 0, 1, 0, 0}, + }, + ['%'] = { + {0, 0, 0, 0, 0}, + {1, 0, 0, 0, 1}, + {0, 0, 0, 1, 0}, + {0, 0, 1, 0, 0}, + {0, 1, 0, 0, 0}, + {1, 0, 0, 0, 1}, + }, + ['"'] = { + {0, 1, 0, 0, 1}, + {0, 1, 0, 0, 1}, + {1, 0, 0, 1, 0}, + {0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0}, + }, + ['\''] = { + {0, 0, 0, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0}, + {0, 0, 0, 0, 0}, + }, + ['/'] = { + {0, 0, 0, 0, 0}, + {0, 0, 0, 0, 1}, + {0, 0, 0, 1, 0}, + {0, 0, 1, 0, 0}, + {0, 1, 0, 0, 0}, + {1, 0, 0, 0, 0}, + }, + ['\\'] = { + {0, 0, 0, 0, 0}, + {1, 0, 0, 0, 0}, + {0, 1, 0, 0, 0}, + {0, 0, 1, 0, 0}, + {0, 0, 0, 1, 0}, + {0, 0, 0, 0, 1}, + }, + }; static Olivec_Font olivec_default_font = {